This documentation is archived and is not being maintained.

Route Message (CrmService)

Forefront
banner art

[Applies to: Microsoft Dynamics CRM 4.0]

Find the latest SDK documentation: CRM 2015 SDK

Works for all deployment typesWorks online and offline

Moves an entity instance from one queue to another.

The relevant classes are specified in the following table.

TypeClass
RequestRouteRequest
ResponseRouteResponse
TargetTargetQueued
EntitySee the following table.

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

EntityTarget Class
appointmentTargetQueuedAppointment
campaignactivityTargetQueuedCampaignActivity
campaignresponseTargetQueuedCampaignResponse
emailTargetQueuedEmail
faxTargetQueuedFax
incidentTargetQueuedIncident
letterTargetQueuedLetter
phonecallTargetQueuedPhoneCall
serviceappointmentTargetQueuedServiceAppointment
taskTargetQueuedTask

Remarks

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

There are three types of routing behavior as shown in the following table.

Route typeDescription
UserRoutes the entity instance to the queue belonging to a user. The field EndpointId must be the ID of a user.
QueueRoutes the entity instance to a specific queue. The field EndpointId must be the ID of a queue.
AutoPerforms automatic routing using workflow. The field EndpointId is ignored. The field SourceQueueId specifies the ID of the queue that contains the entity instance specified in the Target field.

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 Route Privileges.

Example

The following code example shows how to use the Route 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.
TargetQueuedAppointment target = new TargetQueuedAppointment();
// EntityId is the GUID of the appointment being routed.
target.EntityId = new Guid("7E91958D-C8A1-404C-AC2C-9C474FB2427B");

// Create the request object.
RouteRequest route = new RouteRequest();

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

// EndPointId is the GUID of the queue or user the appointment is being routed to.
// The queue cannot be a work in progress queue.
route.EndPointId = new Guid("44E05740-607B-47AA-ABD6-13A007E2DD85");

// RouteType indicates the EntityType of the endpoint.
route.RouteType = RouteType.Queue;

// SourceQueueId is the GUID of the queue that the appointment is coming from.
route.SourceQueueId = new Guid("BD0C1BDD-3310-4ECA-B2B1-131C2F5ED1B2");

// Execute the request.
RouteResponse routed = (RouteResponse)service.Execute(route);
[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 TargetQueuedAppointment()
' EntityId is the GUID of the appointment being routed.
target.EntityId = New Guid("7E91958D-C8A1-404C-AC2C-9C474FB2427B")

' Create the request object.
Dim route As New RouteRequest()

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

' EndPointId is the GUID of the queue or user the appointment is being routed to.
' The queue cannot be a work in progress queue.
route.EndPointId = New Guid("44E05740-607B-47AA-ABD6-13A007E2DD85")

' RouteType indicates the EntityType of the endpoint.
route.RouteType = RouteType.Queue

' SourceQueueId is the GUID of the queue the appointment is coming from.
route.SourceQueueId = New Guid("BD0C1BDD-3310-4ECA-B2B1-131C2F5ED1B2")
' Execute the Request
Dim routed As RouteResponse = CType(service.Execute(route), RouteResponse)

See Also

Concepts

Reference

Tasks


© 2010 Microsoft Corporation. All rights reserved.


Show: