Skip to end of metadata
Go to start of metadata

Introduction

A ServiceMax Upsert activity interacts with a ServiceMax connection to both update existing data and insert new data as a target in an operation. After configuring a ServiceMax connection, you can configure as many ServiceMax activities as you like for each ServiceMax connection.

The Upsert activity requires the use of an external ID field to (1) insert records if they do not already exist and (2) update records if they already exist. For information on creating an external ID field in ServiceMax, see Creating a ServiceMax Custom Field / External ID for Jitterbit in ServiceMaxIf instead you want to insert new records only, or if you want to update existing records based on the ID of the object in ServiceMax, use a ServiceMax Insert or Update activity.

Creating a ServiceMax Activity

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

Within the Endpoints filter, click the ServiceMax connection block to display activities that are available to be used with a ServiceMax connection:

To create an activity that can be configured, the activity must first be added to an operation on the design canvas. To add an activity to an operation, 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.

Accessing Menu Actions

After a ServiceMax activity has been added to an operation, menu actions for that activity are accessible from the project pane in both the Workflows and Components tabs, and from the design canvas:

  • Project Pane: In the Workflows or Components tab of the project pane, hover over an activity name and click the actions menu icon  to open the actions menu.

  • Design Canvas: Within the operation, click an existing activity block to open the actions menu.

Each of these menu actions is available:

  • View/Edit: This opens the activity configuration screen for you to configure the activity. For details, see Configuring a ServiceMax Upsert Activity later on this page.
  • Delete: This is used to permanently delete the activity (see Component Dependencies, Deletion, and Removal).
  • Rename: This positions the cursor on the activity name in the project pane for you to make edits.
  • View Dependencies: This changes the view in the project pane to display any other parts of the project that the activity is dependent on (see Component Dependencies, Deletion, and Removal).
  • Remove: Available only from the actions menu on the design canvas, this removes the activity as a step in the operation without deleting it from the project. When you remove an activity that is adjacent to a transformation, if schemas are provided within that activity, they will no longer be referenced by the transformation. Removed components can be accessed or permanently deleted from the project pane (see Component Dependencies, Deletion, and Removal).
  • Deploy: This deploys the activity and any components it is dependent on (see Component Deployment).
  • Configurable Deploy: This opens the deployment screen, where you can select project components to deploy (see Component Deployment).
  • Add to group: This opens a prompt to create a new custom group or to add the component to an existing group. Custom groups are an organizational tool to help organize a project (see Component Groups).
  • Duplicate: This creates a copy of the activity as a new, unreferenced component. Upon creating the component copy, the cursor is positioned on the component name within the project pane for you to rename the component.

Configuring a ServiceMax Upsert Activity

Follow these steps to configure a ServiceMax Upsert activity:

Step 1 – Enter Basic Information and Select Object

  • Name: Enter a name to use to identify the ServiceMax Upsert activity. The name must be unique for each ServiceMax Upsert activity and must not contain forward slashes (/) or colons (:).
  • Select the Object Reference: Use the dropdown to select a ServiceMax standard or custom object to upsert. 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 ServiceMax 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 and fields from the ServiceMax endpoint. This may be useful if you have recently added objects or fields to the ServiceMax instance.

  • 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 will not be 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 Discard Changes to close the configuration without saving changes made to any step. A message will ask you to confirm that you want to discard changes.

Step 2 – Select External ID

  • External ID: Use the dropdown to select the existing ServiceMax field that you want Jitterbit Harmony to use as the external ID to associate records. For information on creating an external ID field in ServiceMax, see Creating a ServiceMax Custom Field / External ID for Jitterbit in ServiceMax

    WARNING: The field used as the external ID should have a unique value for each record. If you have multiple records with the same external ID value, an error response from ServiceMax will be returned and the upsert will fail for the records with duplicate IDs.
  • Back: Click to temporarily store the configuration for this step and return to the previous step.
  • 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 Discard Changes to close the configuration without saving changes made to any step. A message will ask you to confirm that you want to discard changes.

Step 3 – Review Data Schema

  • Data Schema: The request and response data schemas are displayed. If the operation uses a transformation, the data schemas will be 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.

    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 Discard Changes to close the configuration without saving changes made to any step. A message will ask you to confirm that you want to discard changes.

Next Steps

After configuring a ServiceMax Upsert activity, you can use it within an operation as described below. In addition, if you are running into record limits imposed by the API, you may want to use chunking.

Completing the Operation

After configuring a ServiceMax Upsert activity, complete the configuration of the operation by adding and configuring other activitiestransformations, or scripts as operation steps (see Operation Creation and Configuration). 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 (see Operation Settings).

ServiceMax Upsert activities can be used as a target with these operation patterns:

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

A ServiceMax 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 ServiceMax activity to use elsewhere (see Component Reuse).

Other patterns are not valid using ServiceMax Upsert activities. See the validation patterns on the Operation Validity page.

This example setup depicts one common operation setup using a ServiceMax Upsert activity:

Within a transformation, if using the option to mirror a schema provided by a non-bulk ServiceMax 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 Nodes and Fields).

Operations that use ServiceMax activities can also have operation actions configured to trigger upon 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 upon SOAP fault, refer to Operation Actions.

When ready, deploy and run the operation (see Operation Deployment and Execution) and validate behavior by checking the operation logs (see Operation Logs).

Using Chunking

Many web service APIs have size limitations. If you are running into record limits imposed by the API, you may want to use chunking to split the source data into multiple chunks. The transformation is then performed on each chunk separately, with each source chunk producing one target chunk. The resulting target chunks combine to produce the final target.

For example, a ServiceMax upsert accepts only 200 records for each call. With sufficient memory, you could configure the operation to use a chunk size of 200. The source would be split into chunks of 200 records each, and each transformation would call the web service once with a 200-record chunk. This would be repeated until all records have been processed. The resulting target files would then be combined.

For instructions and best practices on using chunking, see Operation Options.

On This Page

Last updated:  Jul 29, 2020

  • No labels