Using a dynamic data source or destination in workflow
For several action types, instead of hard-coding a source or destination form when you create the workflow (at design time), you can configure the workflow to use a form determined when the workflow runs (at runtime). For active links, you can also configure the workflow to determine the server where the form resides at runtime. To do this, use the SAMPLE DATA data source or data destination when you create the workflow.
To identify the form and server to use at runtime, you use fields in the form associated with the workflow or keywords. In the workflow object, these are called runtime values. To map fields and values in the workflow object, you use a sample form and server.
The following actions can use a dynamic data source or destination:
Action | SAMPLE DATA data type |
---|---|
Call Guide | Source |
Open Window | Source |
Push Fields | Destination |
Service | Source |
Set Fields | Source |
Configuring a dynamic data source
Variables that identify a runtime server and form. When you select the SAMPLE DATA data source in the workflow editor, the fields in the editor change to enable you to specify a sample server and form. The following figure shows an example of a Set Fields action being configured to use SAMPLE DATA.
A Set Fields action with SAMPLE DATA as the data source
For information about configuring a dynamic data destination, see Defining-Push-Fields-active-link-filter-or-escalation-actions.
To configure a SAMPLE DATA data source in a workflow action
- Right-click the If Actions or Else Actions panel header.
- Select Add Action >actionType.
- In the Data Source list, select SAMPLE DATA.
- (Active links only) In the Runtime Server Value field, click the ellipsis button.
- In the Field/Keyword selector dialog box, select one of these items:
- The field on the primary form that will supply the source server name, for example, $WorkflowServer$.
- If the source server is to be the user's current server, the $SERVER$ keyword.
- Click OK.
- In the Runtime Form Value field, click the ellipsis button.
- In the Field/Keyword selector dialog box, select one of these items:
- The field on the primary form that will supply the source form name, for example, $WorkflowForm$.
- A keyword to supply the source form name, such as $SCHEMA$ or $SCHEMA-ALIAS$.
Click OK.
- (Active links only) In the Sample Server Name field, select the server that has the sample form to use at design time.
- In the Sample Form Name field, select the sample form that contains the fields to map in the field mapping table.
- Continue designing the workflow by completing the remaining fields in the workflow editor.
For workflow that uses a Run If Qualification, you can use fields from both the primary form and the sample form in the qualification. The field types and field IDs on the sample form and the corresponding runtime form must match.
When mapping fields to values in the field mapping table, the fields you can select in the Values column come from the form identified in the Sample Form Name field. If fields with the same IDs on the sample and runtime forms have different data types, the general conversion rules apply. For server-side table field implementation issues, see Creating-a-filter-guide-that-loops-through-a-server-side-table-field.
Example of using workflow with a dynamic data source
An example of using workflow with a dynamic data source is a Set Fields action in an active link that uses the SAMPLE DATA data source. The SetFldTarget form is the form associated with the active link. It contains two fields, RunTimeServer and RunTimeForm. The values in these fields, entered by the user or set by workflow, determine at runtime which server and form are used as sources in the Set Fields action. (When these values are set by workflow, these fields can be hidden or read-only.)
In this example, a record exists in the SourceFormA form on the Calbro1 server. The Item Description field in this form contains the value Test Data. When a user clicks a button on the SetFldTarget form that triggers the active link, the active link determines that the source server is Calbro1 and the source form is SourceFormA. Based on the field mappings in the active link, the workflow obtains the value Test Data from the Item Description field in the appropriate record in SourceFormA on Calbro1 and sets that value into the Short Description field on the SetFldTarget form.