Query REST Entities
The Query REST Entities activity supports querying list items across different Microsoft Dynamics CRM lists and websites in a specific site collection. This activity supports two modes: FetchXML and OData to query for entities.
General
On the General tab, you can establish a connection to the Microsoft Dynamics CRM server, and specify the type of entity records you want to retrieve.
The following table lists the configurations on the General tab of the Query REST Entities activity:
Field | Module Property? | Description |
---|---|---|
Name | No | Specify the name of the activity in the process definition. |
Dynamics CRM REST Connection | Yes | Specify a shared connection resource.
Click the
|
Mode | No | Specify the retrieve mode. Select
OData or
FetchXML.
|
Dynamics CRM Entity | No | Specify the type of the entity record(s) you want to retrieve.
Click Fetch Entity to open the Entity Selection Dialog that contains all the available entities. Select an entity from the list and click OK. The selected entity is automatically specified in this field. Note: This field is visible when:
|
Select | No | Specify the attributes of the entity that you want to be returned.
After selecting the entity, click Select Attributes to open the Attributes Selection Dialog that contains all the available attributes associated with the entity. Select the attributes that you want and click OK. The selected attributes are displayed on the Output tab. Note: This field is shown only when you select OData mode.
|
Use DynamicFetchXML | No |
Specify the type of the entity record(s) you want to retrieve. Note:
|
FetchXML | No |
Specify the FetchXML query. Note: This field is shown only when the mode is
FetchXML and Use DynamicFetchXML checkbox is not selected.
You can use different FetchXML Query types such as:
After you provide the FetchXML query, the Build Schema button is enabled. Click the Build Schema button to open the Build Schema dialog that contains a list of base and linked entities retrieved from the FetchXML input. Select the entities from the list and click Refresh to refresh the schema. Click OK to build the output schema. When the mode is
FetchXML, you can pass values for the “value” attribute of the FetchXML query's <filter> conditions dynamically to return a specific set of records based on these conditions. '?' is the placeholder for the value attribute of the FetchXML query's <filter> conditions.
You can specify a non-nested filter or a nested filter in a FetchXML query. Example: nonnested filter
Example: nested filter For a nested filter, if you have parameters for values within the filter conditions, an input schema is generated that allows you to specify or map values for these parameters in the input of the Query REST activity.
You can filter based on the attributes of a base entity and a linked entity. Example: filter of a base entity and a linked entity
|
Description
On the Description tab, enter a short description for the Query REST Entities activity.
Query
You can specify the criteria on this tab to query the entities or expand on the associated entities.
The following table lists the configurations on the Query tab of the Query REST Entities activity:
Field | Module Property? | Description |
---|---|---|
Filter | Yes | Specify Search operator and attribute names to get the entity records. |
Order By | Yes |
Specify the order in which you want the entity records to be returned. |
Entity to Expand | No | Specify the entity or entities to be associated with the base entity.
Click Select Entity to open the Entity Selection Dialog that contains all the available entities. Select an entity or multiple entities from the list and click OK. Click Clear Entity to clear the field. |
Expand Query | No | Displays the query based on the output attributes selected for an expanded entity or entities. This is a read-only field.
To have the query displayed in this field, click Build Multiple Entities Schema to open the Attributes Selection Dialog.
|
Restriction Option | No | Select the option from the drop-down based on which you want to restrict the output.
Note: By default,
None is selected.
|
Top Restriction | Yes | Specify the number of entity records to be returned on the
Output tab.
Note: This field is enabled if you select
Top from
Restriction Option drop-down.
|
PageSize | Yes | Specify the number of entity records to be displayed in a page.
Note: This field is enabled if you select
PageSize from
Restriction Option drop-down.
|
Input
The input of this activity varies depending on the selected entity when configuring the General tab.
The following table lists the possible input elements on the Input tab of the Query REST Entities activity:
Input Item | Data Type | Description |
---|---|---|
The following field is displayed in FetchXML mode when Use DynamicFetchXML is not selected and filter condition has to be passed as dynamic values of a FetchXML query. | ||
Filter<n> | Complex |
Specify or map values for parameters within the filter conditions in a FetchXML query. This input field is displayed only when the FetchXML query contains one or more filter expressions with parameterized "value" attributes, indicated by a '?' in the query entered on the General tab of the activity. The structure of the Filter<n> complex element is very similar to the structure of the <filter> expressions in the FetchXML query. Each parameterized "value" attribute in the FetchXML query is represented by a value<n> input field where you must map the dynamic value for it. The value<n> input field is present under a Condition<n> field that may in-turn be present under a SubFilter<n> field, in case the parameterized "value" attribute occurs in a nested filter expression. The 'n' in value<n>, Condition<n>, SubFilter<n> and Filter<n> represents the order in which parameterized "value" attributes occur in the FetchXML query rather than its actual position in the FetchXML query. |
The following field is displayed in FetchXML mode when Use DynamicFetchXML is selected. The dynamic FetchXML query has to be passed to the FetchXML input node. | ||
FetchXML | String |
Specify the retrieve criteria in XML format. Note:
|
The following fields are displayed in OData mode. | ||
FilterQuery | String | Specify the attribute names and Search operators to get the entity records. |
OrderbyQuery | String | Specify the order in which you want the entity records to be returned. |
NextPageLink | String | Specify the URL that the activity uses to get next bunch of data while querying data.
Note: This parameter is displayed on the
Input tab when you select
PageSize or from the
Restriction Option drop-down.
|
Top | String | Specify the number of entity records to be returned.
Note: This parameter is displayed on the
Input tab when you select
Top from the
Restriction Option drop-down.
|
Output
If you select the Odata mode on the General tab, the output schema is built based on input provided on the General, Query, and Input tabs.
If you select FetchXml mode on the General tab, output schema is built based on the XML provided in the FetchXML field on the General tab or FetchXML query provided in Input tab.
The following table lists the possible output elements on the Output tab of the Query REST Entities activity:
Output Item | Data Type | Description |
---|---|---|
The following fields are displayed along with the entity attributes in FetchXML mode. | ||
nextPageNumber | String | The next page number. |
pagingcookie | String | The value of paging cookie. |
The following fields are displayed along with the entity attributes in OData mode. | ||
If the Query configuration contains expanding on a single-valued navigation property with Use Ref to expand? checkbox selected, only the following two items are displayed as child elements of an output element. The name of the output element is the attribute name of a single-valued navigation property association. Note: If
Use Ref to expand? checkbox is not selected, instead of the following two output items, all the output attributes that were selected in the
Attributes Selection dialog for that association are displayed as child elements of an output element. The name of the output element is the attribute name of a single valued navigation property association.
|
||
entitylogicname | String | The attribute names of the associated entity.
Note: This field is displayed when you select
Use Ref to expand? checkbox.
|
odataid | String | The OData ID of the associated entity is displayed.
Note: This field is displayed when you select
Use Ref to expand? checkbox. This parameter is not displayed if the schema name is collection valued.
|
nextPageLink | String | If you select PageSize from the Restriction Option drop-down, the URL is displayed in this field for pagination. |
Fault
The error code and error message of the Query REST Entities activity are displayed on the Fault tab. See Error Codes for a more detailed explanation of errors.
The following table lists error schema elements on the Fault tab of the Query REST Entities activity:
Error Schema Element | Data Type | Description |
---|---|---|
message | String | The error message returned by the plug-in. |
messageCode | String | The error code returned by the plug-in. |