On this Page
Table of Contents | ||||
---|---|---|---|---|
|
Overview
This Snap enables you to read records from Microsoft Dynamics 365 for Sales.
ETL Transformations & Data Flow
The Dynamics 365 for Sales Read Snap enables the following ETL operations/flows:
- Extract data either directly from the Snap configuration or from the upstream snap containing the data for reading the MS Dynamics 365 for Sales object(s).
- Transform the input document into a SnapLogic friendly JSON Document if using an upstream snap.
- Load the data into the Dynamics 365 for Sales Read snap in order to read the MS Dynamics 365 for Sales objects.
Input and Output
- Expected upstream Snaps: None
- Expected downstream Snaps: None
- Input: The ID of the MS Dynamics 365 for Sales object to be read. The information can either be provided directly in the Snap or in the upstream snaps when expressions are used in the Read snap
- Output: A document with the result set. If the Read is successful, then the output document will contain all the fields of the provided MS Dynamics 365 for Sales object(s).
Prerequisites
None.
Configuring Accounts
This Snap uses account references created on the Accounts page of SnapLogic Manager to handle access to this endpoint. See Configuring Dynamics 365 for Sales Accounts for information on setting up this type of account.
Configuring Views
Input | This Snap has exactly one document input view. |
---|---|
Output | This Snap has exactly one document output view. |
Error | This Snap has at most one document error view. |
Support
- Works in Ultra Task Pipelines.
Limitations
The following limitations are due to the API limitations from the Microsoft Dynamics 365 for Sales application:
The Snap fails with an error, when the number of requests exceeds 6000 within 300 seconds. We recommend that you limit the number of requests you make within 300 seconds (5 minutes). You can gradually increase the requests that reduce the retry-after duration, optimize your throughput, and minimize resource spikes on the server.
The Snap fails with an error, when the combined execution time of incoming requests exceeds the limit of 1,200,000 milliseconds within the window of 300 seconds. We recommend that you reduce the number of concurrent requests or reduce the duration of requests and try later.
The Snap fails with an error, when the number of concurrent requests exceed the limit of 52. We recommend that you reduce the number of concurrent requests.
Known Issues
- When reading multiple MS Dynamics 365 for Sales objects in batches, the Batch Size ranges from 1 to 1000. This is a limitation by MS Dynamics 365 for Sales.
- The object type suggestions are limited to the object types available within MS Dynamics 365 for Sales v8.2 and v9.0. There is no current ability to suggest custom object types.
Snap Settings
Label | Required. The name for the Snap. Modify this to be more specific, especially if there are more than one of the same Snap in the pipeline. | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Object type | Required. MS Dynamics 365 for Sales object type. Example: account Default Value: account | ||||||||||||
ID | GUID of the MS Dynamics 365 for Sales object. This field is suggestible. | ||||||||||||
Page Size | Use the Page Size feature to make paging in an application faster for large datasets. Default Value: 1000 Max Value: 5000 | ||||||||||||
Start Page Number | Starts loading the records from the specified page until end of records or Max Page Number, if specified (if empty default value used) Default Value: 1 | ||||||||||||
Max Page Number | The snap will stop loading when the specified page number is reached or when no more records available. Leave the value in this field at 0 to load all pages. If this field is left empty, it is interpreted as 0, and all pages are loaded. Default Value: 0 | ||||||||||||
Read Query Fields | Use this field to specify the query fields that you want read. If you provide any query fields here, the Object ID property in the Snap will be ignored in favor of these fields. It is expected that upstream documents will contain the fields specified. The values of those fields will be used to query MS 365 records.
| ||||||||||||
Number of Retries | Specify the maximum number of attempts to be made to receive a response. The request is terminated if the attempts do not result in a response. Default Value: 0 | ||||||||||||
Retry Intervals (seconds) | Specify the time interval between two successive retry requests. A retry happens only when the previous attempt resulted in an exception.
Default Value: 1 | ||||||||||||
HTTP header | Additional HTTP headers to pass when sending requests to the Dynamics 365 for Sales instance. Example:
Default value: No default value | ||||||||||||
|
|
Note |
---|
For performing operations (Create, Upsert, Update, Delete), the default read time out is 10 mins. |
Troubleshooting
For troubleshooting purpose, try performing a similar operation directly on the Microsoft Dynamics 365 for Sales user interface and collect the necessary data. Compare the data used in the User Interface with the SnapLogic pipelines to see if there are any inconsistencies.
Error | Reason | Resolution |
---|---|---|
| The execution time of all the incoming requests exceeded the limit of 1,200,000 milliseconds within the window of 300 seconds. | Reduce the number of concurrent requests or reduce the duration of requests (20 minutes (1200 seconds) within the window of 5 minutes) and try later. |
| The number of requests exceeded the limit of 6000 within 300 seconds. | Limit the number of requests to 6000 you make within the window of 300 seconds (5 minutes). |
| The number of concurrent requests exceeded the limit of 52. | Limit the number of concurrent requests. |
Too many Requests - 429 | There are too many requests sent to Dynamics 365 For Sales endpoint. | The Microsoft Dynamics 365 For Sales related Snaps, include retry-after with <number of seconds> in the response header and automatically retries when they encounter status 429 error. Therefore, wait for the retry to succeed. |
Examples
Using the Dynamics 365 for Sales Snap to Read an Object
Basic use case: Using the Snap to read an object.
Expand | ||
---|---|---|
| ||
The following pipeline demonstrates a basic use case of the Dynamics 365 for Sales Read Snap, where the Snap logs in and reads from an object: Select the Object Type of the object that you want to read. You can also enter the ID of the object that you want to read and specify the query field you want to read. Save your changes and execute the pipeline. Once the pipeline completes execution, you should see object details in the output, as shown below: |
Using Upstream Snaps with the Dynamics 365 Read Snap
Basic use case: Using a Mapper Snap to supply the object ID of the object that must be read.
Expand | ||
---|---|---|
| ||
The Dynamics 365 Read Snap can also be used with upstream Snaps. In this example, we shall use a Mapper Snap to supply the Read Snap with the object ID of the object that we want it to read. We configure the Mapper Snap to label and supply the object ID that must be read, as '$id': We add a Dynamics 365 for Sales Read Snap downstream to the Mapper and configure it to use the object ID label we configured in the Mapper Snap, as follows: Save your settings and execute the pipeline. If your settings are valid, the pipeline should execute to display a single row of data related to the object ID indicated by the label you provided in the Mapper Snap: |
Downloads
Multiexcerpt include macro | ||||
---|---|---|---|---|
|
Attachments | ||
---|---|---|
|
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|