Versions Compared

Key

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

...

On this Page

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

Overview

...

You can use this Snap to add new records for objects (entities in Microsoft terminology) based on the input document field values that match the MS Dynamics object schema field names.

Image Removed

Prerequisites

None.

...

Snap Type

Dynamics 365 for Sales Create Snap is a Write-type Snap that adds new records to Microsoft Dynamics 365.

Prerequisites

None.

Support for Ultra Pipelines

Works in Ultra Task Pipelines.

Limitations

Multiexcerpt macro
nameAPI Limitations from MS Dynamics 365 for Sales

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

This Snap cannot create relationships using collection-valued navigation properties, such as contact_customer_accounts, because of current WebAPI limitations; however, it works correctly with single-valued navigation properties, such as primary contact id.

Snap Views

Type

Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input

Document

Min:

...

0
Max: 1

 Mapper Snap

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

Output

Document

Min: 1
Max: 1

None

A document with the result set. If the creation is successful, then the output document contains the Guid of the created 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.

Support

Works in Ultra Task Pipelines.

Known Issues

This Snap cannot create relationships using collection-valued navigation properties, such as contact_customer_accounts, because of current WebAPI limitations; however, it works correctly with single-valued navigation properties, such as primary contact id.

Snap Settings

...

Snap Settings

Info
  • Asterisk (*): Indicates a mandatory field.

  • Suggestion icon ((blue star)): Indicates a list that is dynamically populated based on the configuration.

  • Expression icon ((blue star)): Indicates whether the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.

  • Add icon ((blue star)): Indicates that you can add fields in the field set.

  • Remove icon ((blue star)): Indicates that you can remove fields from the field set.

Field Name

Field Type

Description

Label*


Default Value: Dynamics 365 For Sales Delete
Example: Dynamics 365 For Sales Delete

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


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: 12AB3456-C7D8-E711-F11D-C1234BCDC789

String/Expression

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


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.

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

Default Value: 0
Example1

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 Intervals (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. 

Default Value: 1
Example
: 5

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

HTTP Header

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

Key

Default Value: N/A
Example:

...

Key

...

 Value

...

 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

...

Multiexcerpt include macro
nameSnap Execution
pageSOAP Execute

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: Execute only
Example: Validate & Execute

Dropdown list

Multiexcerpt include macro
nameExecution_Detail_Write
pageSOAP Execute

...

Info

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

Troubleshooting

...

Multiexcerpt macro
hiddenfalse
nameTroubleshooting for MS Dynamisc 365 for Sales Snaps
fallbackfalse

Error code

Reason

Resolution

-2147015902

The number of requests exceeded the limit of 6000 within 300 seconds.

Ensure that you do not exceed 6000 requests within a 300-second window (5 minutes).

-2147015903

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.

-2147015898

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 the 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 the 429 error. Therefore, wait for the retry to succeed.

Examples

Create a Record in

...

Microsoft Dynamics for Sales and Perform a Bulk Delete

In this example, we shall create a new set of entities in an

...

Microsoft Dynamics 365 Sales DB table, view the output preview, and delete the data using a Dynamics 365 For Sales Delete Snap.

Expand
titleCreate a Record in MS Dynamics for Sales and Perform a Bulk Delete

In this example, we shall create a new set of records in an MS Dynamics 365 Sales DB table, view the output preview, and delete the data using a Dynamics 365 For Sales Delete Snap. This way, we can see each of these Snaps in action and learn how to work with them, while leaving the sample pipeline ready for reuse.

Step 1: Prepare Records for Upload

In this example, we are using the JSON Generator Snap to create and store records to be uploaded to the

...

Microsoft Dynamics 365 Sales DB table. You can also use a Mapper Snap to send in the data needed to create the records.

Image Modified

Step 2: Create Records in the MS Dynamics 365 Sales DB Table

Connect a Dynamics 365 For Sales Create Snap to the JSON Generator Snap and configure it to add new records into

...

as follows:

Image Modified

Step 3: Map '$accountid' in Created Records to '$guid' to simplify identification

We intend to delete the records we just created. To simplify isolating these records, we map the '$accountid' attribute in these records to '$guid', so we can search for these records by '$guid' and delete them later in the pipeline.

Image Modified

Step 4: Delete all Account Records with Attribute '$guid'

Now that we have replaced the attribute '$accountid' with '$guid', we can perform a simple delete operation, removing all records that contain the '$guid' attribute:

Image Modified

Download the sample pipeline

Downloads

...

Info

Important Steps to Successfully Reuse Pipelines

  1. Download and import the Pipeline into SnapLogic.

  2. Configure Snap accounts as applicable.

  3. Provide Pipeline parameters as applicable.

Attachments
uploadfalse
oldfalse
patterns*.slp,*.zip

Snap Pack History

Expand

Insert excerpt

...

Microsoft Dynamics 365 for Sales Snap Pack

...

Microsoft Dynamics 365 for Sales Snap Pack
nameMS Dynamics 365 for Sales_SPH
nopaneltrue

...

Related Content