Although the CRM 4.0 SDK is generally pretty comprehensive, I find it doesn't contain as much information as I'd like about the information passed to plugins for each of the messages.
The following table lists the main parameters passed to plugins on the most common messages. If the message you want isn't listed here, post a comment and I'll update the table.
Message | Parameter | Direction | Type | Comments |
Assign | Assignee | Input | SecurityPrincipal | |
Assign | Target | Input | Moniker | |
Close | *ActivityClose | Input | DynamicEntity | |
Close | Status | Input | Int32 | |
Create | id | Output | Guid | Only available on the Post Stage |
Create | Target | Input | DynamicEntity | |
Delete | Target | Input | Moniker | |
Execute | FetchXml | Input | String | |
Execute | FetchXmlResult | Output | String | |
Lose | *ActivityClose | Input | DynamicEntity | |
Lose | Status | Input | Int32 | |
Retrieve | BusinessEntity | Output | DynamicEntity | |
Retrieve | ColumnSet | Input | ColumnSetBase | |
Retrieve | Target | Input | Moniker | |
RetrieveExchangeRate | ExchangeRate | Output | Decimal | |
RetrieveExchangeRate | TransactionCurrencyId | Input | Guid | |
RetrieveMultiple | BusinessEntityCollection | Output | BusinessEntityCollection | |
RetrieveMultiple | Query | Input | QueryExpression | |
RetrieveMultiple | ReturnDynamicEntities | Input | Boolean | |
RetrievePrincipalAccess | AccessRights | Output | AccessRights | |
RetrievePrincipalAccess | Principal | Input | SecurityPrincipal | |
RetrievePrincipalAccess | Target | Input | Moniker | |
Route | EndpointId | Input | Guid | |
Route | RouteType | Input | RouteType | |
Route | SourceQueueId | Input | Guid | |
Route | Target | Input | Moniker | |
Send | EmailId | Input | Guid | |
Send | IssueSend | Input | Boolean | |
Send | Subject | Output | String | This is the subject after the tracking token has been added |
Send | TrackingToken | Input | String | |
SetStateDynamicEntity | EntityMoniker | Input | Moniker | |
SetStateDynamicEntity | State | Input | String | |
SetStateDynamicEntity | Status | Input | Int32 | |
Update | Target | Input | DynamicEntity | To get the Primary Key, find the KeyProperty within the DynamicEntity |
Win | *ActivityClose | Input | DynamicEntity | |
Win | QuoteClose | Input | DynamicEntity | |
Win | Status | Input | Int32 |
Notes:
*ActivityClose. For the Win, Lose and Close messages, one of the parameters is an activity type whose name depends on the primary entity - e.g. the Win message could have a QuoteClose or OpportunityClose entity passed to it
To gather this information I used the plugin tools described on the MSCRM Team blog. The source code for these tools can be found here:
Bulk Registration Tool
Plugin Logger
Other Links:
Plugin Development
Plugin Messages
No comments:
Post a Comment