On this Page
Table of Contents | ||||
---|---|---|---|---|
|
Overview
This Snap enables you to delete objects in Microsoft Dynamics 365 for Sales databases.
Input and Output
- Expected upstream Snaps: Any Snap, such as CSV Parser or Mapper Snap, that produces documents in the output view. These documents are expected to contain the object ID, which varies between objects; for example: accountid, contactid.
- Expected downstream Snaps: Any Snap, such as a Mapper or Filter Snap, that accepts documents in the input view.
- Expected input: The name of the object type and ID that must be deleted.
- Expected output: The file name and the deletion status of the file.
Prerequisites
You must have a Dynamics 365 OAuth2 for Online account, data to query, and access to the objects concerned.
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 at most 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 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 deleting more than one object in batches, the Batch Size ranges from 1 to 1000. This is a limitation set by Microsoft Dynamics 365.
- Microsoft Dynamics 365 limits the number of API calls to 60,000 per minute, per user org. This should be considered when configuring the size of any batch process.
- The Object Type suggestions are limited to the Object Types available within the Microsoft 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. The MS Dynamics 365 for Sales object type. You can either enter the name of the object type in this field, or you can select it from the drop-down list displayed when you click the Suggest button. Example: account. Default Value: account | ||||||||||||
ID | Required. The GUID of the MS Dynamics 365 for Sales Object. You can either enter the ID in this field, or you can select it from the drop-down list displayed when you click the Suggest button. When processing a Batch of documents, it is required that each document contains the object ID, which varies between objects; for example: accountid, contactid. The GUID from the object ID field in each document will be used to delete that object. | ||||||||||||
Batch size | The number of records processed in each request. Batch size range is from 1 to 1000. Default Value: 200 Batch processing results can contain both successful and unsuccessful results. Successful results will be written to the output view. Unsuccessful results, along with intuitive error information will be written to the error view; therefore, it is recommended to activate the error view within the Snap. A single unsuccessful batch processing document will not halt the batch processing, unless there is a configuration problem; in this special case, the Snap would fail with intuitive error information. | ||||||||||||
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 all operations (Create, Upsert, Update, Delete), the default read timeout is 10 mins. |
Troubleshooting
For troubleshooting purpose, try performing a similar operation directly on the MS Dynamics 365 console 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 Delete Snap to Delete an Object
Using the Snap to delete an object.
Expand | ||
---|---|---|
| ||
The following pipeline demonstrates a basic use case of the Dynamics 365 for Sales Delete Snap, where the Snap logs in and deletes an object: Select the object type of the object you want to delete, and then the Object ID of the object. Save your changes and exit. Add a CSV Formatter and File Writer Snap, so you can save the output of the Delete Snap. Execute the pipeline. For a successful run, the File Writer Snap should create a CSV document containing a confirmation of the deletion: |
Using the Dynamics 365 for Sales Delete Snap with Pipeline Parameters
Using the Snap with pipeline parameters.
Expand | ||
---|---|---|
| ||
You can also use the Dynamics 365 for Sales Snap with pipeline parameters. This enables you to declare variables at the pipeline level and calling them from within the Delete Snap. This example shows how you can do so. We start off by specifying the object ID of the MS Dynamics 365 for Sales object that you want to delete. In the previous example, we had specified this detail in the Delete Snap itself. However, you can also use pipeline parameters to provide this information. This enables you to use the same pipeline to delete different objects by changing only the value of the object ID variable at the pipeline level. You use the variable 'id' to refer to the account id that you want to delete: Once you have captured this information at the pipeline level, you are ready to configure the Delete Snap to use this information to delete objects in the target DB. You configure the Delete Snap as follows: You specify the Object type and then, in the ID field, you enter the pipeline parameter variable value, with an '_' preceding it. Click the = button to signify that you are using variables using either the pipeline parameters or other functions and variables available to you within the application. Save your changes, exit the Snap Settings popup, and run the pipeline. If the pipeline executes successfully, you should see a message indicating that the object was deleted successfully, as shown above. |
Using the Dynamics 365 for Sales Delete Snap with Upstream Snaps
Using a Mapper Snap to supply the object ID of the object that must be deleted.
Expand | ||
---|---|---|
| ||
The Dynamics 365 for Sales Snap can also be used with upstream Snaps. In this example, we shall use a Mapper Snap to supply the Delete Snap with the object ID of the object that must be deleted. We configure the Mapper Snap to label and supply the object ID that must be deleted, as $id: We then append the Delete Snap to the Mapper and configure it to receive the value in $id as input: The Delete Snap receives the object ID reference from the Mapper Snap and deletes the object associated with the specified object ID. In this pipeline, we have saved the confirmation output in a CSV file: |
Using the Dynamics 365 for Sales Snap with Expressions from Upstream Snaps
Using CSV data from upstream Snaps to create objects and deleting these objects using the Snap with a Mapper upstream.
Excerpt | |||||
---|---|---|---|---|---|
|
Transferring to–and Deleting Data from–PostgreSQL to Dynamics 365 for Sales
Retrieving data from PostgreSQL and inserting it into Dynamics 365 for Sales before deleting it.
Expand | ||
---|---|---|
| ||
In this example, we retrieve data from a PostgreSQL DB and insert it into the MS Dynamics 365 for Sales DB. Here's how this pipeline works:
|
Downloads
Multiexcerpt include macro name download_instructions page OpenAPI
Attachments patterns *.slp, *.zip
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|