Versions Compared

Key

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

On this Page

...

Dynamics 365 for Sales Update Snap is a Write-type Snap that updates records from Microsoft Dynamics 365.

ETL Transformations and Data Flow

This Snap enables the following ETL operations/flows:

  1. Extract data from the upstream Snap containing the data for updating Microsoft Dynamics 365 for Sales object(s).

  2. Transform the input document into a SnapLogic friendly JSON Document.

  3. Load the data into Dynamics 365 for Sales Update Snap to update Microsoft Dynamics 365 for Sales object(s).

...

  • 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 exceeds the limit of 52. We recommend that you reduce the number of concurrent requests.

  • When deleting more than one object in batches, the Batch Size range is from 1 to 1000. This is a limitation of 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 the 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.

Known Issues

None.

Snap Views

Type

View

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input

Document

Min: 1
Max: 1

Mapper Snap

Needs to have an upstream Snap that contains the mandatory fields for updating the existing Microsoft Dynamics 365 for Sales object. Mapper Snap is a preferred upstream Snap as it populates the input schema for the selected Microsoft Dynamics 365 for Sales Object Type.

Output

Document

Min: 1
Max: 1

None.

A document with the result set. If the update is successful, then the output document will contains the GUID of the updated Microsoft Dynamics 365 for Sales object.

Error

Error handling is a generic way to handle errors without losing data or failing the Snap execution. You can handle the errors that the Snap might encounter while running the Pipeline by choosing one of the following options from the When errors occur list under the Views tab. The available options are:

  • Stop Pipeline Execution: Stops the current pipeline execution when the Snap encounters an error.

  • Discard Error Data and Continue: Ignores the error, discards that record, and continues with the rest of the records.

  • Route Error Data to Error View: Routes the error data to an error view without stopping the Snap execution.

Learn more about Error handling in Pipelines.

...

Field Name

Field Type

Description

Label*

Default ValueDynamics 365 for Sales Update
ExampleDynamics 365 for Sales Update

String

Specify the name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your Pipeline.

Object Type*

Default Value: account
Example: account

String/Expression

Specify the Microsoft Dynamics 365 for Sales object type.

ID*

 

Default Value: N/A
Example: 5D5F5B6A-CE6D-EA11-A812-000D3A86D7B6

String/Expression

Specify the GUID of the Microsoft Dynamics 365 for Sales object. You can either enter the ID in this field, or you can select it from the dropdown list displayed when you click the Suggest icon. 

Alternate Key

Use this field set to configure columns to use as the alternate key for entities.

Key Columns

Default Value: N/A
Example: CompanyName, EmailAddress

String/Expression

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

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

  • If you frequently access data using a combination of columns other than the Primary ID, then we recommend that you use Alternate Keys for better performance.

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

Related Object Type

Default Value: N/A
Example: contact

String/Expression

Specify the Microsoft Dynamics 365 Sales object type of the object to which it must be related.

Related Object Relationship

Default Value: N/A
Example: primarycontactID

String/Expression

Specify the Relationship Schema between the Microsoft Dynamics 365 Sales object to be created with the related object.

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.

Related Object ID

Default Value: N/A
Example: fi3rn3tDHGJK 9abc9def-1234-abcd-9def-012345678abc

String/Expression

Specify the GUID of the related Microsoft Dynamics 365 Sales object.

Update Multiple Objects

Default Value: Deselected

Checkbox

Select this to update multiple records per object type if the query returns more than one CRM record.

Upsert Query Fields

Use this field set to include the query fields.

Upsert Query Field

Default Value: None
Example: clientname

String

Specify the query fields to use to upsert the corresponding CRM records.

Batch Size

Default Value: 200
Example: 100

Integer/Expression

Specify the number of records processed in each request. Batch size range is from 1 to 1000.

The lookup field does not update a null value when the Batch size is more than 1.

To update a null value for a lookup field when the Batch size is more than 1, you can use either of the following methods:

  1. If you're using the odata.bind syntax, the null value is not updated with the batch API:

  • Code Block
    {
      "parentcontactid@odata.bind": null
    }
    
  1. If you're NOT using the

odata.bind syntax, the null value is updated with both the batch API and the normal API. We recommend you use the following approach to update the null value to the lookup field:

  • Code Block
    {
      "parentcontactid": null
    }

Number of Retries

Default Value: 0
Example: 1

Integer

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.

Retry Interval (seconds)

Default Value: 1
Example: 5

Integer

Specify the time interval between two successive retry requests. A retry happens only when the previous attempt resulted in an exception. 

When the Snap encounters 429 error, the response includes the retry-after with <number of seconds> in the header and the Snap automatically retries after the specified <number of seconds>.

HTTP Header

Use this field set to add additional HTTP headers to pass when sending requests to the Dynamics 365 for Sales instance.

Key

Default Value: N/A
Example: Prefer

String/Expression

Specify an HTTP header key.

Value

Default Value: N/A
Example: odata.include-annotations="*"

String/Expression

Specify an HTTP header value.

Enable continue on error

Default Value: Deselected

Checkbox

Select this checkbox to enable the service to continue processing the remaining requests in a batch when an error occurs. The code continues to execute until all requests are processed. It then returns the response to the output view.

When this checkbox is deselected, the batch process errors out immediately on the first failed request. It then returns a response in the error view that includes the error message.

Snap Execution

Default Value: Validate & Execute
Exdample: Execute only

Dropdown list

Multiexcerpt include macro
nameExecution_Detail_Write
pageSOAP Execute

...