SetRelated Message (CrmService)

banner art

[Applies to: Microsoft Dynamics CRM 4.0]

Find the latest SDK documentation: CRM 2015 SDK

Works for all deployment types Works online and offline

Creates a relationship between two entity instances as defined by the target classes listed below. For example, an account can be related to a lead.

The relevant classes are specified in the following table.

Type Class
Request SetRelatedRequest
Response SetRelatedResponse
Target TargetRelated
Entity See the following table.

The following table shows the entities and target classes for this message.

Entity Target Class
invoice TargetRelatedInvoiceToContact
lead TargetRelatedLeadToAccount

TargetRelatedLeadToContact

opportunity TargetRelatedOpportunityToAccount

TargetRelatedOpportunityToCompetitor

TargetRelatedOpportunityToContact

product TargetRelatedProductToCompetitor

TargetRelatedProductToLead

quote TargetRelatedQuoteToContact
salesliterature TargetRelatedSalesLiteratureToCompetitor

TargetRelatedSalesLiteratureToProduct

salesorder TargetRelatedSalesOrderToContact

Remarks

To use this message, pass an instance of the request class as the request parameter in the Execute method.

To perform this action, the caller must have access rights on the entity instance specified in the request class. For a list of required privileges, see SetRelated Privileges.

Executing this message when the relationship already exists will result in the following error message: "Operation failed due to a SQL integrity violation."

Example

The following code example shows how to use the SetRelated message.

[C#]
// Set up the CRM Service.
CrmAuthenticationToken token = new CrmAuthenticationToken();
// You can use enums.cs from the SDK\Helpers folder to get the enumeration for Active Directory authentication.
token.AuthenticationType = 0; 
token.OrganizationName = "AdventureWorksCycle";
 
CrmService service = new CrmService();
service.Url = "http://<servername>:<port>/mscrmservices/2007/crmservice.asmx";
service.CrmAuthenticationTokenValue = token;
service.Credentials = System.Net.CredentialCache.DefaultCredentials;

// Create the target object for the request.
TargetRelatedLeadToAccount target = new TargetRelatedLeadToAccount();

// AccountId is the GUID of the account to be related to the lead.
target.AccountId = new Guid("D3652E9C-D328-4CA1-B284-1215C441AD94");

// LeadId is the GUID of the lead to be related to the account.
target.LeadId = new Guid("9DAEE309-A3D6-470C-80E2-DDC657BAFC16");

// Create the request object.
SetRelatedRequest setRelated = new SetRelatedRequest();

// Set the properties of the request object.
setRelated.Target = target;

// Execute the request.
SetRelatedResponse related = (SetRelatedResponse)service.Execute(setRelated);

[Visual Basic .NET]
' Set up the CRM Service.
Dim token As New CrmAuthenticationToken()
' You can use enums.cs from the SDK\Helpers folder to get the enumeration for Active Directory authentication.
token.AuthenticationType = 0
token.OrganizationName = "AdventureWorksCycle";
 
Dim service As New CrmService()
service.Url = "http://<servername>:<port>/mscrmservices/2007/crmservice.asmx";
service.CrmAuthenticationTokenValue = token;
service.Credentials = System.Net.CredentialCache.DefaultCredentials

' Create the target object for the request.
Dim target As New TargetRelatedLeadToAccount()

' AccountId is the GUID of the account to be related to the lead.
target.AccountId = New Guid("D3652E9C-D328-4CA1-B284-1215C441AD94");

' LeadId is the GUID of the lead to be related to the account.
target.LeadId = New Guid("9DAEE309-A3D6-470C-80E2-DDC657BAFC16");

' Create the request object.
Dim setRelated As New SetRelatedRequest()

' Set the properties of the request object.
setRelated.Target = target

' Execute the request.
Dim related As SetRelatedResponse = CType(service.Execute(setRelated), SetRelatedResponse)

See Also

Concepts

Reference

© 2010 Microsoft Corporation. All rights reserved.