Data360 Update for Salesforce - Data360_Analyze - Latest

Data360 Analyze Server Help

Product type
Software
Portfolio
Verify
Product family
Data360
Product
Data360 Analyze
Version
Latest
Language
English
Product name
Data360 Analyze
Title
Data360 Analyze Server Help
Copyright
2024
First publish date
2016
Last updated
2024-11-28
Published on
2024-11-28T15:26:57.181000

The Data360 Update for Salesforce node enables easy and fast access to salesforce.com via the salesforce.com REST API, and can insert, update, upsert or delete records from salesforce.com objects.

Note: This node uses the Salesforce Bulk API 2.0 and requires you to have API version 41.0 or later. For more information, see https://developer.salesforce.com/docs/atlas.en-us.api_bulk_v2.meta/api_bulk_v2/introduction_bulk_api_2.htm

The request URL is created from the ObjectName property. The base REST URL used in the request is retrieved from the response to the salesforce.com login request. The node then appends the ObjectName to the base URL to create the appropriate URLs for each call.

Inputs

A maximum of three input pins are permitted:

  • The first input pin must contain the data with which you want to update salesforce.com. This includes the Id of the salesforce.com object if you are using the from field variant of the IdField property.
  • The second and third input pins can be either control data or session data. The control data input pin is where you specify the names of the fields in the first input pin to be used for the property definition. For example:

    ObjectName,DataFields,IDFieldName Account,Name,Id

Outputs

The Data360 Update for Salesforce node has three output pins:

  • Records - Contains details of the ID, the Method used (Insert, Update, Upsert or Delete) and the status.
  • sessionData - Contains data about the session such as the ID and URL. The [%=GeneralPlatform%] Get for Salesforce node, [%=GeneralPlatform%] Metadata for Salesforce node and Data360 Update for Salesforce nodes output session data on the sessionData pin as provided by the salesforce.com REST API. To optimize performance, you can connect the sessionData pin to another instance of the Salesforce nodes to enable the node to re-use the previously created session.
  • Errors - Contains details of any failed transactions.

Using a proxy server

The ProxyUrl property can be used to provide the URL of a proxy server with any corresponding authentication details in the ProxyUsername and ProxyPassword properties. The node does not support system proxy detection, therefore if a proxy server is used to access Salesforce, the ProxyUrl property must be specified.

Properties

ObjectName

Specify the salesforce.com object that this call will affect. This string is identical to the SObject type that would be put into a standard request URL. For example, to update an Account object, the ObjectName property should have the value "Account". This would correspond to a URL suffix such as the following:

<version>/sobjects/Account/<id>

In this example, the "Account" string fills in for the SObject type.

Choose the (from Field) variant of this property to specify the name of the field on the control input that contains the name of the object.

A value is required for this property.

IdField

Specify the name of the field in the data input that contains the value of the ID.

If the selected Method is Insert this property is ignored.

This property must be set if the selected Method is Update, Upsert or Delete.

Choose the (from Field) variant of this property to specify the name of a field on the control input, where the value of the specified field references a field on the data input.

The default value is Id.

Method

Specify the HTTP Method type for this salesforce.com call. If this node is making calls of only a single type, then a literal value should be used. If the call type will differ for each call, then a field value should be used. Choose from:

  • Insert
  • Update
  • Upsert
  • Delete

Choose the (from Field) variant of this property to specify the name of a field on the control input containing the operation to use.

A value is required for this property.

DataFields

Optionally specify a list of comma separated fields from the data input that will be sent to salesforce.com in the body of the REST call.

These fields will be sent as name-value pairs where the value of each field is associated with its name. Therefore, to update a field named "E_mail_Address" in salesforce.com, the input field must also be named "E_mail_Address".

Choose the (from Field) variant of this property to specify the name of a single field on the control input, where the value of the specified field references a comma separated list of field names on the data input.

If you do not specify any value, the fields will be taken from the headers.

ServerUrl

Optionally specify the URL of the Salesforce server hosting the Salesforce instance (e.g. https://test.salesforce.com). The URL must be correctly formatted, or the node will fail.

By default the URL is https://login.salesforce.com

SfdcUsername

Specify the username under which to make all this node's calls.

A value is required for this property.

SfdcPassword

Specify the user's password.

A value is required for this property.

SfdcSecurityToken

When the Data360 Analyze server is on a machine with an IP address that salesforce.com trusts, then the password alone can enable the user to login. However, if the server is not on a machine with a trusted IP address, then the salesforce.com Security Token must also be provided in order to log in.

This token is used for all calls from this node.

ExternalIdName

Optionally specify the name of the external ID field in the salesforce.com object.

Choose the (from Field) variant of this property to look up the value from an input field with the name specified.

This property must be set if the selected Method is Upsert.

SfdcVersion

The salesforce.com API version that is used for all calls from this node. The string provided is placed directly into the request URL as shown below:

v<version>/sobjects/<SObjName>

Notice that the "v" that precedes the version number is not included in this property as it is prepended to the value in this property by the node.

The default value is 46.0.

ConnectionTimeout

Optionally specify the maximum period (in seconds) to wait before the connection times out. By default, a connection timeout of 60 seconds is applied.

PassThroughFields

Optionally specify which input fields will "pass through" the node unchanged from the input to the output, assuming that the input exists. The input fields specified will appear on those output records which were produced as a result of the input fields. Choose from:

  • All - Passes through all the input data fields to the output.
  • None - Passes none of the input data fields to the output; as such, only the fields created by the node appear on the output.
  • Used - Passes through all the fields that the node used to create the output. A field is considered to be "used" if it is directly referenced in a (from Field) property. For example, there are four fields on the main input, A, B, C and D. The DataFields property is set to A,B,C. In this case, none of these fields are "used" from the point of view of the PassThroughFields property. A second, control input, has one field "E", and the (from Field) variant is selected on the DataFields property with a value of "E". The value in the "E" field on the control input is "A,B,C". In this case, "E" on the control input is considered "used", but "A", "B" and "C" fields on the main input are not considered "used".
  • Unused - Passes through all the fields that the node did not use to create the output.

The default value is Used.

UseActiveAssignmentRules

Optionally specify whether or not active assignment rules are to be applied.

For more information, see https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/headers_autoassign.htm

If not specified, no Auto-Assign header information is provided to Salesforce and the default is used as defined in the Salesforce documentation.

ProxyUrl

Optionally specify the URL specifying the proxy server to use for the HTTP requests. The URL should contain the protocol (http or https), the host, and the port. All other parts of the URL will be ignored. The URL should be in a format similar to the following:

  • HTTP proxy: http://proxy.example.com:1234
  • HTTPS proxy: https://proxy.example.com:443

The node supports automatic detection of system proxy settings. If the proxy URL is specified, the system proxy is not used.

ProxyUsername

Optionally specify the proxy username, where the proxy requires authentication.

This property should be left blank if ProxyUrl is not set.

ProxyPassword

Optionally specify the proxy password, where the proxy requires authentication.

This property should be left blank if ProxyUsername is not set.

If a naming conflict exists between a pass-through field and an explicitly named output field, an error will occur.

ErrorBehavior

Optionally specify the behavior of the node when it encounters a malformed record. Choose from:

  • Error - Fail if any errors are detected.
  • Log - Generate a warning if any errors are detected.
  • Ignore - Ignore any errors that are detected.

The default value is Error.

StopAtFirstFailure

Optionally specify if the node should terminate execution on the first failure it encounters.

The default value is False.

Note: This node uses the Salesforce Bulk API 2.0 to process data in batches. If the ErrorBehavior property is set to Error and the StopAtFirstFailure property is set to True, the node will fail if a batch fails. If the ErrorBehavior property is set to Error and the StopAtFirstFailure property is set to False, the node will fail if there is an error once all batches have been processed.

Inputs and outputs

Inputs: data, 2 optional.

Outputs: Records, sessionData, Errors.