Share via


CRMActivity.Route Method

The Route method routes an activity. This moves the activity to the private or public queue of the user or does auto-routing.

Syntax

[Visual Basic .NET]
Public Sub Route(
  ByVal Caller As CUserAuth,
  ByVal EntityId As String,
  ByVal SourceQueueId As String,
  ByVal RouteTypeCode As ROUTE_TYPE_CODE,
  ByVal EndPointId As String
)

[C#]
public void Route(
  CUserAuth  Caller,
  string  EntityId,
  string  SourceQueueId,
  ROUTE_TYPE_CODE  RouteTypeCode,
  string  EndPointId
);

[C++]
public: void Route(
  CUserAuth*  Caller,
  String*  EntityId,
  String*  SourceQueueId,
  ROUTE_TYPE_CODE  RouteTypeCode,
  String*  EndPointId
);

Parameters

Caller

Specifies the identity of the caller. The caller must have the prvWriteActivity privilege to perform this action. See CUserAuth.

EntityId

[in]  Specifies the ID of the object.

SourceQueueId

[in]  Specifies the ID of the source queue.

ROUTE_TYPE_CODE

[in]  Specifies the route type code. See ROUTE_TYPE_CODE. See Remarks.

EndPointId

[in]  Specifies the ID of the end point. See Remarks.

Return Value

No return value.

Remarks

If the ROUTE_TYPE_CODE is RTC_QUEUE, then EndPointID should be the ID of a queue.

If the ROUTE_TYPE_CODE is RTC_USER, then EndPointID should be the ID of a user.

If the ROUTE_TYPE_CODE is RTC_AUTO, then EndPointID is ignored.

If there is an error, SOAP throws an exception and the error message is reported in System.Web.Services.Protocols.SoapException.Detail.OuterXml.

All IDs passed to the platform are GUIDs wrapped in braces. For example: {6522D89A-A752-4455-A2B0-51494C6957C3}

Example

[C#]
// strServer should be set with the name of the platform Web server
string strServer = "myservername";

// virtualDirectory should be set with the name of the Microsoft CRM
// virtual directory on the platform Web server
string virtualDirectory = "mscrmservices";
string strDir = "https://" + strServer + "/" + virtualDirectory + "/";

// BizUser proxy object
Microsoft.CRM.Proxy.BizUser bizUser = new Microsoft.CRM.Proxy.BizUser ();
bizUser.Credentials = System.Net.CredentialCache.DefaultCredentials;
bizUser.Url = strDir + "BizUser.srf";

// CRMActivity proxy object
Microsoft.CRM.Proxy.CRMActivity activity = new Microsoft.CRM.Proxy.CRMActivity ();
activity.Credentials = System.Net.CredentialCache.DefaultCredentials;
activity.Url = strDir + "CRMActivity.srf";

string strErrorMsg;
string strActivityId = "{33A081D8-ABFF-4103-9E9B-DB0A4B1FD48E}";
string strQueueId = "{JKDED4LL-GH90-43ED-73A9-0B33D205F9N8}";
try
{
   Microsoft.CRM.Proxy.CUserAuth userAuth = bizUser.WhoAmI();

   // Route the activity
   activity.Route(userAuth, strActivityId, strQueueId, Microsoft.CRM.Proxy.ROUTE_TYPE_CODE.RTC_USER, strQueueId);
}
catch (System.Web.Services.Protocols.SoapException err)
{
   // Process the platform error here
   strErrorMsg = ("ErrorMessage: " + err.Message + " " + err.Detail.OuterXml + " Source: " + err.Source );
}
catch (Exception err)
{
   // Process other errors here
   strErrorMsg = ("ErrorMessage: " + err.Message );
}

Requirements

Namespace: Microsoft.CRM.Proxy

Assembly: microsoft.crm.proxy.dll

See Also

© 2003 Microsoft Corporation. All rights reserved.