Skip to end of metadata
Go to start of metadata

Introduction

A Salesforce Insert activity inserts new data in a Salesforce endpoint, while a Salesforce Update activity updates existing data in a Salesforce endpoint. Both are intended to be used as a target to consume data in an operation. After configuring a Salesforce connection, you can configure as many Salesforce activities as you like for each Salesforce connection.

The Insert activity is used to create new records, while the Update activity is used to update records that already exist based on the ID of the object in Salesforce. If instead you want to use an external ID field to (1) insert records if they do not already exist, as well as (2) update records if they already exist, use a Salesforce Upsert activity.

During the processing of records for an Insert or Update activity, if any record fails, no additional changes are processed and all previously processed changes are rolled back. If you want processing to continue when one record fails, consider using a Salesforce Bulk Insert or Bulk Update activity.

Creating a Salesforce Activity

From the design canvas, open the Connectivity tab of the design component palette:

Use the Show dropdown to filter on Endpoints, and then click the Salesforce connection block to display activities that are available to be used with a Salesforce connection:

To create an activity that can be configured, drag the activity block from the palette to the operation.

For more information about the parts of an operation and adding activities to operations, see Operation Creation and Configuration.

Configuring a Salesforce Insert or Update Activity

The steps to configure a Salesforce Insert or Update activity are the same. Follow these steps to configure either of these activities:

Step 1: Enter a Name, Select an Object, and Specify Settings

In this step, you provide a name for the activity and select an object to be used when inserting or updating data. 

  • Name: Enter a name to use to identify the Salesforce Insert or Update activity. The name must be unique for each Salesforce Query activity and must not contain forward slashes (/) or colons (:).
  • Select the Object Reference: Use the dropdown to select a Salesforce standard or custom object to insert or update data. Enter any part of the object name into the search box to filter the list of objects. The search is not case-sensitive.

    TIP: If the dropdown does not populate with available objects, the Salesforce connection may not be successful. Ensure you are connected by reopening the connection and retesting the credentials.
  • Refresh: Click the refresh icon  to reload objects from the Salesforce endpoint. This may be useful if you have recently added objects to Salesforce.
  • Optional Settings: Click to expand additional optional settings:

    • Operation Options: These options apply to an operation that a Salesforce Insert or Update activity is used within.

      TIP: Additional options can be set in an operation's operation options.
      • Insert Null Values: Select the checkbox to allow null values to be inserted or updated. If this option is not selected, if a value being mapped has a null value or is blank (has an empty string), it is not processed.

  • Save & Exit: If enabled, click to save the configuration for this step and close the activity configuration.
  • Next: Click to temporarily store the configuration for this step and continue to the next step. The configuration will not be saved until you click the Finished button on the last step.
  • Discard Changes: After making changes, click to close the configuration without saving changes made to any step. A message asks you to confirm that you want to discard changes.

Step 2: Review the Data Schemas

In this step, any request or response schemas generated from the endpoint are displayed:

  • Data Schema: The request and response data schemas are displayed. If the operation uses a transformation, the data schemas are displayed again later during the transformation mapping process, where you can map to target fields using source objects, scripts, variables, custom values, and more.

    The version of Salesforce REST API that is used depends on the Harmony Agent version you are using. See Prerequisites and Supported API Versions for links to documentation on the schema fields.

    WARNING: For a Salesforce Insert activity only, the Salesforce record ID cannot contain a mapping.
    NOTE: To refresh a data schema in an existing activity, you must advance through each activity configuration step again, making at least one change (such as adding and removing a character from the end of the name of the activity) to force a refresh of the schema.
  • Back: Click to temporarily store the configuration for this step and return to the previous step.
  • Finished: Click to save the configuration for all steps and close the activity configuration.
  • Discard Changes: After making changes, click to close the configuration without saving changes made to any step. A message asks you to confirm that you want to discard changes.

Next Steps

After configuring a Salesforce Insert or Update activity, complete the configuration of the operation by adding and configuring other activities, transformations, or scripts as operation steps. You can also configure an operation's operation settings, which include the ability to chain operations together that are in the same or different workflows.

Once a Salesforce Insert or Update activity has been created, menu actions for that activity are accessible from the project pane in either the Workflows or the Components tabs, and from the design canvas. See Activity Actions Menu for details.

Salesforce Insert or Update activities can be used as a target with these operation patterns:

Operations that contain a Salesforce activity can have only one Salesforce activity and cannot also contain any other application activities.

A Salesforce activity can be used as an operation step in only a single operation. That is, you cannot reference the same activity multiple times within other operations. Instead, you can make a copy of a Salesforce activity to use elsewhere (see Component Reuse).

Other patterns are not valid using Salesforce Insert or Update activities. See the validation patterns on the Operation Validity page.

A typical use case is to use a Salesforce Insert activity in the Two-Transformation Pattern. In this example, the first transformation (Insert Request) creates a request structure that is passed to the Salesforce Insert activity (Insert). The second transformation (Insert Response) receives the response structure, which is then written to a variable by a Variable Write activity (Write Insert Response) and a message is then logged by the Write to Operation Log script:

Within a transformation, if using the option to mirror a schema provided by a non-bulk Salesforce activity, then the resulting mirrored schema will automatically be created with an additional root node called records with the child node(s) mirroring the schema. When fields within the child node(s) are mapped to, the node becomes a loop node to allow all records to be looped through (see Loop Nodes under Data Structures).

Operations that use Salesforce activities can also have operation actions configured to trigger on a SOAP fault — an error resulting from an incorrect message format, header processing, or incompatibility. Operation actions can be configured to run an operation or send an email after a SOAP fault occurs. For instructions on triggering an action on SOAP fault, refer to Operation Actions.

To use the activity with scripting functions, write the data to a temporary location and then use that temporary location in the scripting function.

When ready, deploy and run the operation and validate behavior by checking the operation logs.

  • No labels