Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this article

Table of Contents
maxLevel2
excludeOlder Versions|Additional Resources|Related Links|Related Information

Overview

This Snap enables you to update an existing record or insert a new record in MS Dynamics 365 for Sales based on the input document field values that match the MS Dynamics 365 for Sales object schema field names.

Input & Output

  • Expected upstream Snaps: Any Snap, such as the Mapper Snap, that offers a document view as output.
  • Expected downstream Snaps: None
  • Input: Fields of the MS Dynamics 365 for Sales object to be updated or created. It is optional to provide either the ID of the object or to use a query. If an ID or query is provided, then the corresponding record is updated; else new record(s) are created. The typical configuration is to have an upstream Snap that contains the mandatory fields for updating the existing MS Dynamics 365 for Sales object. Mapper Snap is a preferred upstream Snap as it populates the input schema for the selected MS Dynamics 365 for Sales object type.

  • Output: A document with the result set. If the update is successful, then the output document contains the GUID of the updated or inserted MS Dynamics 365 for Sales object.

Prerequisites

You must have a Dynamics 365 OAuth2 for an 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 purposes, try performing a similar operation directly on the MS Dynamics 365 for Sales 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.

Limitations and Known Issues

  • When deleting more than one object in batches, the Batch Size range is from 1 to 1000. This is a limitation by Microsoft Dynamics 365 for Sales.
  • MS Dynamics 365 for Sales 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 MS Dynamics 365 for Sales v8.2 and v9.0. There is no current ability to suggest custom object types.
  • This Snap cannot create relationships using collection-valued navigation properties, such as contact_customer_accounts, due to current WebAPI limitations; however, it works correctly with single-valued navigation properties, such as primarycontactid.

Modes

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. MS Dynamics 365 for Sales object type. For example, account.

Example: account.

Default Value: account

IDOptional. GUID of the MS Dynamics 365 for Sales object. This field is suggestible.
Alternate KeysUse this field set to configure columns to use as the alternate key for entities.
Key Columns

Specify a name for the column to use in an alternate key.

Default Value: N/A
Example: CompanNameCompanyName, EmailAddress

Info
Use the column’s actual name (instead of the Display name).You must look up for the actual column name in Power Apps menu and select Columns from the table menu.

Learn more about Configuring Alternate Keys in MS Dynamics 365 For Sales (Power Apps) .

Related object type

The object type of the related object.

Default Value: None

Related object relationship

Relationship between the MS Dynamics 365 for Sales object to be created with the related object.

Note

This Snap cannot create relationships using collection-valued navigation properties, such as contact_customer_accounts, due to current WebAPI limitations. However, it works correctly with single-valued navigation properties, such as primarycontactid.

Default Value: None

Upsert Multiple ObjectsWhen enabled, the Snap updates multiple records per object type if the query returns more than one MS Dynamics 365 for Sales record.
Upsert Query FieldsQuery fields to use to upsert the corresponding MS Dynamics 365 for Sales records.
Batch size

A number of records processed in each request. The batch size can range from 1 to 1000.

Info

This Snap does not guarantee Batch Size to function when one or more Upsert Query Fields are configured in the Snap settings. Hence, one input document can result in more than one output document due to the records in Dynamics 365 that match the Upsert Query Fields of the current input document.

Default Value: 200

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

Multiexcerpt include macro
nameSnap Execution
pageSOAP Execute


Multiexcerpt include macro
nameExecution_Detail_Write
pageSOAP Execute


Note

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


Examples

Updating customer details using Dynamics 365 for Sales Upsert Snap

Following is a detailed example that uses Upsert Query. The following Pipeline uses Snaps like Dynamics 365 for Sales Create, Dynamics 365 for Sales Read and Dynamics 365 for Sales Delete Snaps to create customer details from the sales report, read them, upsert them, whenever required, and delete them if required. 

First, in this Pipeline, using the Mapper Snap, the details of the customer like Account ID, Batch size, and Page number are given as inputs.

SettingsOutput

Create these details from the Mapper Snap with the help of Dynamics 365 for Sales Create Snap.

SettingsOutput

Next, another Mapper Snap to add more details to the list of customer details:

SettingsOutput

Update these details using Dynamics 365 for Sales for Upsert Snap. 

SettingsOutput

These results are copied and routed into two outputs. One output is to get these details and save them for further use and another output is used to delete the details using Dynamics 365 for Sales Delete Snap. 

SettingsOutput


Updating the Attributes of an Object

Basic use case, using the Dynamics 365 for Sales Upsert Snap with a Mapper

Expand
titleUpdating the Object Type of an Object

In this pipeline, the Dynamics 365 for Sales Upsert Snap updates the 'address1_city' attribute of an account object.

  1. We first update the pipeline's parameters to specify the city to which we want the 'address1_city' attribute to be updated:
  2. We now add a Mapper Snap, so we can map the pipeline parameter to the address1_city attribute:


  3. We've now established a connection between the pipeline parameter we defined with an actual attribute in the target object model. We now need to choose the required object and object ID whose values we want to update.


  4. Once these settings are in place, execute the pipeline. Upon successful execution, you should see a confirmation message in your output as displayed below:

Download the sample pipeline


Downloads

Multiexcerpt include macro
namedownload_instructions
pageOpenAPI

Attachments
patterns*.slp, *.zip


Insert excerpt
MS Dynamics 365 for Sales Snap Pack
MS Dynamics 365 for Sales Snap Pack
nopaneltrue