Dynamics 365 for Sales Delete

On this Page

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.
OutputThis Snap has exactly one document output view.
ErrorThis Snap has at most one document error view.

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.

Support

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


LabelRequired. 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

IDRequired. 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.

HTTP header

Additional HTTP headers to pass when sending requests to the Dynamics 365 for Sales instance.

Example:

Key

 Value
Prefer odata.include-annotations="*"

Default value: No default value

Snap Execution

Select one of the three modes in which the Snap executes. Available options are:

  • Validate & Execute: Performs limited execution of the Snap, and generates a data preview during Pipeline validation. Subsequently, performs full execution of the Snap (unlimited records) during Pipeline runtime.
  • Execute only: Performs full execution of the Snap during Pipeline execution without generating preview data.
  • Disabled: Disables the Snap and all Snaps that are downstream from it.

For all operations (Create, Upsert, Update, Delete), the default read timeout is 10 mins.

Examples


Using the Dynamics 365 for Sales Delete Snap to Delete an Object

Using the Snap to delete an object.

 Using the Dynamics 365 for Sales Delete Snap to Delete an Object

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:

Download the sample pipeline

Using the Dynamics 365 for Sales Delete Snap with Pipeline Parameters

Using the Snap with pipeline parameters.

 Using the Dynamics 365 for Sales Delete Snap with Pipeline Parameters

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.

Download the sample pipeline

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.

 Using the Dynamics 365 for Sales Delete Snap with Upstream Snaps

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:

Download the sample pipeline

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.

 Using the Dynamics 365 for Sales Snap with Expressions from Upstream Snaps

In this example, we shall create objects in MS Dynamics 365 for Sales using object IDs retrieved from a CSV file. We shall then delete these objects using the Dynamics 365 for Sales Delete Snap.


We start by uploading object data from a CSV file:

You can see in the screenshot above that we have modified five account numbers (with attribute label 'id') by appending '_test'. These are the test accounts that we shall add to MS Dynamics 365 for Sales. To do so, however, we will need to identify the precise rows of data and then map them to the attribute headers in the target DB.

We use a CSV Parser Snap to reliably interpret the CSV data, and then we use a Head Snap to ensure that we select only the first five rows for insertion into the target DB:

We are now ready to insert the new accounts into the MS Dynamics 365 for Sales DB. We start off by using a Mapper Snap to map the account ID headers in our CSV file to the corresponding headers in the target DB:

We have now mapped the 'id' attribute header in the input CSV data to the 'name' header in the target DB. We can now create the data in MS Dynamics 365 for Sales:

We can see that the new data is drawn from the values in our input file. We can now use the Delete Snap to return the DB to its initial state. To do so, we will need to supply account IDs that need to be deleted, to the Delete Snap. We do this using another Mapper Snap:

Because we are mapping account IDs in the MS Dynamics 365 for Sales to attributes in the same DB, we use the same attributes in both the Expression and Target path fields.

Once the mapping succeeds, we can run the Delete Snap using configurations as shown below:

Download the sample pipeline

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.

 Dynamics 365 for Sales Delete: Advanced Use Case

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:

  1. PostgreSQL - Select: Retrieves customer data from the PostgreSQL DB.
  2. Head: Selects the first five records retrieved.
  3. Mapper: Maps attribute headers in the PostgreSQL data to the corresponding attribute headers in MS Dynamics 365 for Sales DB.
  4. Dynamics 365 For Sales Create: Adds the mapped data to the Dynamics 365 For Sales DB.
  5. Mapper1: Maps the attribute heads in the Dynamics 365 For Sales DB with the existing ones in the same DB to facilitate targeted deletion.
  6. Dynamics 365 For Sales Delete: Deletes the recently added data from the Dynamics 365 For Sales DB.

Download the sample pipeline

Downloads

  File Modified

File MSD_365_Sales_Delete.slp

Jul 27, 2018 by Rakesh Chaudhary

File MSD_365_Sales_Delete_Upstream.slp

Jul 27, 2018 by Rakesh Chaudhary

File MSD365_Delete_with_Parameters.slp

Jul 27, 2018 by Rakesh Chaudhary

File MSD_365_Sales_Delete_Expressions_Upstream.slp

Jul 27, 2018 by Rakesh Chaudhary

File MSD_365_Sales_Delete_Advanced_Example.slp

Jul 27, 2018 by Rakesh Chaudhary

Snap Pack History

 Click to view/expand
ReleaseSnap Pack VersionDateTypeUpdates
4.27main12833 StableUpgraded with the latest SnapLogic Platform release.
4.26main11181 StableUpgraded with the latest SnapLogic Platform release.
4.25 Patch425patches10303 LatestFixed an error in Dynamics 365 for Sales Create Snap where the Snap does not send the original documents to the error view in the output when the batch size property is set to greater than 1.
4.25main9554
 
StableUpgraded with the latest SnapLogic Platform release.
4.24main8556
StableUpgraded with the latest SnapLogic Platform release.
4.23main7430
 
StableUpgraded with the latest SnapLogic Platform release.
4.22main6403
 
StableUpgraded with the latest SnapLogic Platform release.
4.21 Patch dynamics365forsales8856 Latest

Fixes Pipeline validation error that occurs when writing data from Dynamics 365 for Sales Update Snap to output documents.

4.21snapsmrc542

 

StableUpgraded with the latest SnapLogic Platform release.
4.20snapsmrc535
 
StableUpgraded with the latest SnapLogic Platform release.
4.19 Patchexpensify8335 Latest

Fixed the broken doc link for the Expensify Export Report Snap.

4.19snaprsmrc528
 
StableUpgraded with the latest SnapLogic Platform release.
4.18 Patch dynamics365forsales7957 Latest
  • Fixed a NullPointerException issue with the Dynamics 365 for Sales Delete Snap wherein the Object ID is invalid.
  • Fixed a concurrency issue with multiple Dynamics 365 for Sales Snaps when running in parallel.
4.18 Patch dynamics365forsales7952 Latest

Added support for lookup type in the input document to be formatted per MS Dynamics 365 for Sales syntax.

4.18snapsmrc523
 
StableUpgraded with the latest SnapLogic Platform release.
4.17ALL7402
 
Latest

Pushed automatic rebuild of the latest version of each Snap Pack to SnapLogic UAT and Elastic servers.

4.17snapsmrc515
 
Latest

Added the Snap Execution field to all Standard-mode Snaps. In some Snaps, this field replaces the existing Execute during preview check box.

4.16 Patch dynamics365forsales7232 Latest

Dynamics 365 for Sales Read Snap now supports custom object types. 

4.16snapsmrc508
 
StableUpgraded with the latest SnapLogic Platform release.
4.15snapsmrc500
 
StableUpgraded with the latest SnapLogic Platform release.
4.14snapsmrc490
 
Stable
  • New Snap Pack: MS Dynamics 365 for Sales Snap Pack introduced in this release with the following Snaps:
    • Create
    • Delete
    • Execute
    • Read
    • Search
    • Update
    • Upsert