F Creating Orchestrations with the Orchestrator Studio (Release 9.2.0.2)

Important:

This appendix describes how to use Orchestrator Studio 1.0, the first version that was available for download along with EnterpriseOne Tools 9.2.0.2.

To use Orchestrator Studio 7.0.x.0, the latest version available with EnterpriseOne Tools 9.2.3, see:

This appendix contains the following topics:

F.1 Understanding the Orchestrator Studio and Orchestrations

The Orchestrator Studio is a web-based application for creating orchestrations and the components that comprise an orchestration. All orchestrations and orchestration components that you create in the Orchestrator Studio are saved as separate files in an orchestration directory on the AIS Server. The Orchestrator uses the following components to process a single orchestration instance on the AIS Server:

  • Orchestration. The master process that provides a unique name for the orchestration process and invokes the other components in this list to enable the transfer of data from disparate devices to EnterpriseOne.

  • Service Request. Contains a sequence of actions to perform a particular process in EnterpriseOne. The Orchestrator uses the service request as an invocation of a JD Edwards EnterpriseOne interactive application or a Java application via a REST service call to the EnterpriseOne Application Interface Services (AIS) Server.

  • Rule. A set of conditions against which the input from devices is evaluated to produce a true or false state. Rules can be nested to produce complex evaluations. With rules, a false outcome or true outcome can invoke further orchestration steps. You can also use custom Java to define rules.

  • Cross Reference. A set of data relationships that map third-party values to EnterpriseOne values. For example, a device's serial number can be cross-referenced to a JD Edwards EnterpriseOne Equipment Number for use in service requests.

  • White List. An inclusive list of values permitted in the orchestration and terminates the orchestration process if the data is not recognized.

In the Orchestrator Studio, you create and name the orchestration and then add each orchestration component as a "step" in the orchestration. Figure F-1 shows the drop-down list of steps. Each step in an orchestration is simply a reference to a service request, rule, cross reference, or white list component.

Figure F-1 Orchestration Steps in the Orchestrator Studio

Description of Figure F-1 follows
Description of ''Figure F-1 Orchestration Steps in the Orchestrator Studio''

When you add a step to an orchestration, the Orchestrator Studio displays a design panel in which you can create the component for that step. For example, when you add a Rule step to an orchestration, the Orchestrator Studio displays a design panel in which you can create the rule; when you add a ServiceRequest step to the orchestration, the Orchestrator Studio displays a design panel in which you can create the service request, and so forth.

Each area in the Orchestrator Studio contains a raised tab with directional arrows for collapsing or expanding the component area. This enables you to utilize the space in the Orchestrator Studio when editing any particular component.

Figure F-2 shows the design panel for creating a white list.

Figure F-2 Creating a White List in the Orchestrator Studio

Description of Figure F-2 follows
Description of ''Figure F-2 Creating a White List in the Orchestrator Studio''

F.1.1 Reusing or Copying Orchestration Components

Orchestration components are reusable. A component such as a white list or cross reference created for one orchestration can be used in other orchestrations. When you add a step to an orchestration, the Orchestrator Studio gives you the option to create a new component for the step or select from a list of existing components.

If you reuse a component, you must make sure to not modify the component in any way that would break the functionality of other orchestrations that use the same component.

Important:

Because you can use the same components in multiple orchestrations, Oracle highly recommends that you keep a record of all orchestration components and where they are used.

The Orchestrator Studio also provides a copy feature that enables you to create a new component from a copy of an existing component. The existing component can serve as a template for creating the new component. Because you are using a copy, you do not have to worry about breaking existing orchestrations where the original component is used.

F.2 Accessing the Orchestrator Studio

You access the Orchestrator Studio by entering a URL in a web browser. Ask your system administrator for the URL.

Important:

Because the Orchestrator Studio saves orchestrations to a directory on the AIS Server, an administrator must define the path to the AIS Server before you access the Orchestrator Studio. For identifying the URL to the Orchestrator Studio and setting the path to the AIS Server, refer to the Setting Up the Orchestrator Studio section in this guide.

To access the Orchestrator Studio:

  1. In a Web browser, enter the URL to access the Orchestrator Studio:

    http://<adf_server>:<port>/OrchestratorStudio/faces/index.jsf

  2. On the Orchestrator Studio Sign In screen, enter your EnterpriseOne User credentials, environment, and role.

    It is highly recommended that you enter an EnterpriseOne environment used for testing, not a production environment.

  3. Click the Login button.

Before you begin using the Orchestrator Studio, click the drop-down menu in the upper-right corner to see the path to the AIS Server directory where orchestrations created in the Studio are saved. Figure F-3 shows the drop-down menu, which in addition to the path to the AIS Server directory, contains a Reload Files button, a Logout button, and a link to the Orchestrator Client, a web-based application for testing the orchestrations that you create in the Orchestrator Studio. See Chapter 10, "Testing Orchestrations in the EnterpriseOne Orchestrator Client" for more information.

Figure F-3 Orchestrator Studio Drop-down Menu

This image is described in surrounding text.

F.3 Creating Orchestrations

This section contains the following topics:

F.3.1 Understanding Orchestrations

Creating an orchestration in the Orchestrator Studio involves:

  • Naming the orchestration and specifying the input format for the orchestration.

    The name of an orchestration cannot include spaces. The input format can be JDE Standard, Oracle Cloud IoT, or Generic. See Supported Input Message Formats for more information about which input format to use.

  • Adding inputs to the orchestration.

    The inputs define the data passed from the device to the orchestration. This may include an ID which identifies the device as well as other data that the orchestration will receive from a device, such as temperature, date, or any other data you want to capture. Each input has a name and a type which can be string, numeric, or various date formats.

  • Adding steps to the orchestration.

    Each step is a component of the orchestration: a service request, rule, cross reference, or white list.

F.3.2 Creating an Orchestration

To create an orchestration:

  1. Click the New Orchestration button next to the Orchestration field.

  2. In the Orchestration pop-up field, enter a unique name for the orchestration.

    Do NOT use spaces when naming the orchestration.

  3. Click the Ok (plus symbol) button.

  4. Click the Input Format drop-down menu and select the appropriate format:

    • JDE Standard. (default)

    • Oracle Cloud IoT.

    • Generic.

    See Supported Input Message Formats for more information about which input format to use.

  5. At this point, you can click Save All before defining inputs or steps for the orchestration.

    The Orchestrator Studio saves the orchestration. Next, add inputs to the orchestration as described in the Adding Inputs to an Orchestration section.

You can also create a new orchestration by copying an existing one and renaming it.

To create a new orchestration by copying another orchestration:

  1. Click the Copy button.

  2. In the pop-up, select an orchestration from the "Orchestration to Copy" drop-down menu.

  3. In the New Orchestration field, enter a name for the new orchestration.

  4. Click Save.

    Caution:

    If you make a copy of an orchestration, only the orchestration is copied. The Orchestrator Studio does NOT make a copy of the components that are associated with the orchestration's steps. That is, both the original orchestration and the new orchestration use the same components that comprise the orchestration. Therefore, in the new orchestration, do NOT modify the components in any way that would break other orchestrations that use the same components.

F.3.3 Adding Inputs to an Orchestration

Orchestration inputs identify the data the orchestration consumes from external devices. In the orchestration, you enter the names of the inputs. For example you can enter "SensorID" to pass a sensor ID value to an orchestration and you can enter "TemperatureReading" to pass a temperature value to the orchestration.

Note:

If a device input does not match an EnterpriseOne value, such as a column or field name, you can use a cross reference to map the input to the appropriate EnterpriseOne value. See Creating Cross References for more information.

If the orchestration requires a rule, you use the inputs defined in the orchestration to configure the rule. See Creating Rules for more information.

You enter inputs directly in the Input and Value Type columns in the grid in the orchestration design panel.

To add the orchestration inputs:

  1. In the first empty row, enter the name of the input in the Input column.

    Note:

    When you click in this column, the "Drag to Mapped Value" hover message appears. This message applies to when you use the inputs to configure a service request, rule, or cross reference as described later in this chapter.
  2. In the Value Type column, select the input value type. Valid values are:

    • String

    • Numeric

    Or you can use any of the following date formats:

    • dd/MM/yyyy

    • dd/MM/yy

    • yyyy/MM/dd

    • MM/dd/yyyy

    • MM/dd/yy

    • yy/MM/dd

    You can also use the following date formats, which create additional inputs derived from the passed value:

    • Milliseconds

    • yyyy-MM-dd'T'HH:mm:ss.SSSZ

  3. Click Save All to save your changes.

F.3.4 Adding Steps to an Orchestration

At a minimum, an orchestration requires only a service request step to run. You can add a rule step to provide true or false conditions that control the orchestration flow, such as whether the incoming data meets the condition to invoke the service request. You can add a cross reference step if an orchestration requires a cross reference to map data from the device to EnterpriseOne data. You can also add a white list step that contains a list of data permitted in the orchestration to provide an initial pass/fail check for the orchestration.

The Orchestrator Studio provides "Insert Step Before" and "Insert Step After" buttons so you can add a step before or after another step in the orchestration. Thus, you do not have to determine whether or not you need to add a particular step, such as a white list, to an orchestration before you add other steps.

Figure F-4 shows the steps in the AddConditionBasedAlert sample orchestration in the Orchestrator Studio which contains two cross references, two rules, and a service request:

Figure F-4 Steps in the AddConditionBased Alert Sample Orchestration in the Orchestrator Studio

This image is described in surrounding text.

The preceding figure shows how the Orchestrator Studio displays the steps. The Type and Name columns in the Orchestration grid area show the type of step and the name that you give each step or component. The "True" or "False" values in the Action column are used after configuring the rule and service request components as described in the Creating an Orchestration section.

To add steps to an orchestration:

  1. To add the initial step to an orchestration, click the Add Step button (+ icon).

  2. In the "Enter Type of Step" pop-up field, select one of the following steps to add to the orchestration, and then click the Ok button.

    • CrossReference

    • Rule

    • ServiceRequest

    • Whitelist

    The Orchestrator Studio displays the first step in the grid. After you add a step, if you click the step in the grid, the Orchestrator Studio displays the design panel in which you can create the component for that step. See the other sections in this chapter for instructions on how to configure each component.

  3. To add additional steps to an orchestration:

    1. Select a step in the grid, and then click either the Insert Step Before or Insert Step After button to add an additional step before or after the selected step.

    2. In the "Enter Type of Step" pop-up, select the step that you want to add.

    3. Click the Ok button.

To remove a step from an orchestration:

Caution:

Before you delete a step, make sure the step is not used by any other component in the orchestration.
  1. Select the step that you want to remove.

  2. Above the grid with the steps, click the Remove Step button (the X button).

If you make a mistake when updating an orchestration, you can restore the orchestration to its last saved version which erases any changes made since the last save.

To restore an orchestration, click the Restore All button, which is the last button to the right of the other Orchestration buttons.

F.3.5 Completing an Orchestration

The Orchestration design panel contains an "Action" column for defining the relationship between a rule and service request in an orchestration. After you add a rule with conditions for invoking a service request, you need to define the action the orchestration takes if the condition in the rule is met. For example, if a rule contains a condition that when met should invoke a service request, then you need to set the "Action" to True in the Orchestration design panel to direct the orchestration to invoke the service request. You can also define a False action when a condition in the initial rule is NOT met, to direct the orchestration to another rule in the orchestration. If the condition in the second rule is met, then you select a True action to direct the orchestration to invoke another service request, and so forth.

Figure F-5 shows an example of an orchestration with two rules and two service requests, with the following defined actions:

  • For the first ServiceRequest, the action is set to True to instruct the orchestration to invoke this service request when the condition in the first Rule is met.

  • The action for the second (nested) Rule is set to False to instruct the orchestration to invoke this rule when the condition in the first Rule is NOT met.

  • The action for the second ServiceRequest step is set to True to instruct the orchestration to invoke this service request when the condition in the second Rule is met.

Figure F-5 Defining Orchestration Actions

Description of Figure F-5 follows
Description of ''Figure F-5 Defining Orchestration Actions''

To set the Action column to True or False:

  1. In the Orchestration design panel, in the appropriate Rule or ServiceRequest step row, click in the Action column.

  2. Select either True or False as appropriate.

  3. Click the Save button.

    After completing the orchestration, Oracle recommends that you use the Orchestrator Client to test the orchestration in a test environment. You can access the Orchestrator Client from the drop-down menu in the upper-right corner of the Orchestrator Studio. See Chapter 10, "Testing Orchestrations in the EnterpriseOne Orchestrator Client".

F.4 Creating Service Requests

This section contains the following topics:

F.4.1 Understanding Service Requests

At a minimum, an orchestration requires orchestration inputs and a single service request component to run. The service request provides the instructions that the Orchestrator uses to invoke and perform a particular task in EnterpriseOne. Before you create a service request, you must first identify the EnterpriseOne task or business process that you want the service request to perform. See Identifying the Service Request Information for the Orchestration section in this guide for more information.

Use the Service Request design panel in the Orchestrator Studio to define a service request, which involves:

  • Specifying the EnterpriseOne buttons, fields, columns, menu items, and so forth that are involved in performing a task in EnterpriseOne.

    In the Service Request design panel, you can search on an EnterpriseOne application form and view all of the controls and fields for a form.

  • Mapping the orchestration inputs defined in the orchestration to the appropriate fields in EnterpriseOne.

  • Determining the order or execution in which the controls and fields are used to perform the desired task in EnterpriseOne.

Note:

You can also use custom Java to execute a custom process or to route data into another database. See Chapter 8, "Creating Custom Java for Orchestrations".

F.4.1.1 Understanding the Application Stack Option

The Application Stack option in the Service Request design panel enables you to create a service request that establishes a session for a specific application and maintains that session across calls. With application stack processing, the service request can invoke multiple forms in different applications to complete a business process. Without the application stack processing, each form in the service request is opened independently.

If you use the Application Stack option, the service request must include instructions for navigating between forms. Without the navigation, additional forms will not be called.

F.4.2 Understanding the Service Request Design Panel

The Service Request design panel contains two areas: the "Order of Execution" area and the "Available Actions" area. The "Order of Execution" area is where you define the sequence of actions to perform the desired task in EnterpriseOne. The "Available Actions" area serves as the workspace for finding and configuring all of the EnterpriseOne controls and fields that make up the sequence of actions in the "Order of Execution" area. You locate and configure the controls and fields in the "Available Actions" area, and then move each item to the "Order of Execution" and place them in the proper sequence.

Available Actions Area

In the Available Actions area, you can search on an EnterpriseOne form to load all of the available controls (menu items, buttons, check boxes, and so forth) and fields for that form. If the service request needs to invoke more than one application to complete the task, you can load the controls and fields of additional application forms as needed. You can select the Application Stack check box to enable application stack processing as described in the Understanding the Application Stack Option section.

Figure F-6 shows the results of loading an EnterpriseOne application form in the Available Actions grid.

Figure F-6 Available Actions Area in the Service Request Design Panel

Description of Figure F-6 follows
Description of ''Figure F-6 Available Actions Area in the Service Request Design Panel''

The columns in the Available Actions grid provide interactive features for configuring the controls and fields before you add them to the "Order of Execution" area. The following list describes how to use each column:

  • Description.

    This column displays the controls and fields for each form in a collapsible/expandible parent node named after the EnterpriseOne form. Child nodes categorize other items, and include a Buttons and Exits node, a node for displaying the available Query by Example (QBE) fields in a grid (if applicable), and a node for displaying all of the available columns in a grid.

    Note:

    The separate nodes for QBE fields and Grid columns are available with the IoT_Orchestrator_Components_2.0.1 download. See Downloading and Installing Orchestrator Studio in this guide.
  • Mapped Value.

    Use this column to map orchestration inputs to an EnterpriseOne field. You can only map inputs to a field if 1) the EnterpriseOne field is an editable field and 2) you defined the inputs in the orchestration as described in Adding Inputs to an Orchestration.

  • Default Value.

    Enter a default, hard-coded value if there is no mapped value. You can also add a hard-coded value to use if the mapped value returns a null.

  • "Text substitution" check box column.

    This check box enables you to add text substitution for an input. Text substitution enables you to combine input values into a text string for input into an EnterpriseOne field.

  • ID.

    This column displays the ID of the control or field in EnterpriseOne. This is for informational purposes only.

  • Return.

    You can specify any values that you want returned in the orchestration response after EnterpriseOne actions are invoked. If you do not specify any return values, all values on the form will be returned. Return values may be used by customized third-party gateway programs or devices to do further processing based on the values returned from EnterpriseOne applications.

Additional actions available in the grid are "Select First Row" and "Row Number for Update." You can use "Select First Row" if the service request tasks involves selecting the first row in the grid. If the service request task requires updating an existing row in an input capable grid, you can use the "Row Number for Update" row to map an orchestration input to a particular row in the grid. "Row Number for Update" is available with the IoT_Orchestrator_Components_2.0.1 download. See Downloading and Installing Orchestrator Studio in this guide.

After you configure each applicable control or field in the Available Actions area, you click the Add Action button in the last column to add each item as an action in the Order of Execution area at the top of the design panel.

Order of Execution Area

When actions are added to the Order of Execution grid, you can reorder them using the up and down arrow buttons to the right of each row. You can also delete any actions using the Delete (X) button. Figure F-7 shows the "Order of Execution" area.

Figure F-7 Order of Execution in the Service Request Design Panel

Description of Figure F-7 follows
Description of ''Figure F-7 Order of Execution in the Service Request Design Panel''

F.4.3 Creating a Service Request

To create a service request for an orchestration:

  1. After adding a ServiceRequest step to an orchestration, click the ServiceRequest step row.

    The Orchestrator Studio displays the Service Request design panel.

  2. In the Service Request design panel, click the New Service Request button.

  3. In the Service Request pop-up field, enter a name for the service request and then click the Ok button (plus symbol).

    Do NOT include any spaces in the service request name.

    As an alternative, you can create a new service request by copying an existing service request. To do so:

    1. Click the Copy Service Request button.

    2. In the pop-up window, select a service request from the "Service Request to Copy" drop-down menu.

    3. In the New Service Request field, enter a name for the service request.

  4. Click the Save All button to save the orchestration and the new service request component.

F.4.4 Configuring the Actions in the Service Request

In the Service Request design panel, use the Available Actions area to define actions that you want the service request to perform. After you define the actions, you can place the actions in the proper order in the Order of Execution area as described in Defining the Order of Execution in the Service Request.

To define the actions for the service request:

  1. In the Available Actions area, complete the following fields to specify the EnterpriseOne form that contains the controls you want to load:

    • Application. Enter the ID of the EnterpriseOne application.

    • Form. Enter the form ID.

    • Version. Enter the version of the EnterpriseOne application.

    • Form Mode. (Available with Release 9.2.0.3) Click the drop-down menu and select the appropriate form mode: Add, Update, or Inquiry.

      The form mode determines the controls that are displayed for the form. At runtime, the controls that appear on an EnterpriseOne form are dependent on the form mode as specified in Form Design Aid (FDA). This ensures that you can see all of the form controls in the Orchestrator Studio that are available in the form at runtime.

    • Application Stack. Click this check box if you want to use application stack processing. See Understanding the Application Stack Option for more information.

  2. Click the Load Form button.

    The Orchestrator Studio loads the controls and fields for the form in the grid.

    If the action involves more than one form, you can search on another form and the Orchestrator Studio will load the controls for the form in a collapsible node at the end of the grid.

  3. To map the inputs to fields:

    1. Select the row with the field to be mapped.

    2. Click the drop-down menu in the Mapped Value column and select the input to map to the field. You can also click and drag inputs defined in the Orchestration design panel to the field in the Mapped Value column.

      If you have not already done so, you must first add orchestration inputs, or if necessary add cross references for the inputs, before you can map them. See Adding Inputs to an Orchestration for more information.

  4. If the service request task involves selecting the first grid row in the EnterpriseOne form, in the "Select First Row" row, click the Add Action button to move it to the "Order of Execution" area.

  5. If the service request task requires updating a particular row in an input capable grid, then map the appropriate input value containing the row number to the "Row Number for Update" row, or specify the row number in the Default Value column.

  6. In the Default Value column, you can perform the following actions to configure the default values for the controls:

    1. If the control is a check box or a radio button, you can select it to include it. If there are multiple radio buttons on a form, select only one. If you select more than one, only the last radio button in the Order of Execution list will be used.

    2. If the control is a combo box (a list of items in a drop-down menu), then the Studio displays a drop-down menu in the Default Value column in which you can select the appropriate item from the list.

    3. If the field is editable, you can enter a hard-coded value to map for the input. You can also enter a value to be used if the mapped value returns a null.

    Fields that are grayed out in this column are not editable.

  7. Select the Return check box next to the fields that contain values that you want returned in the orchestration response. If you do not specify any return values, all values on the form will be returned.

    Important:

    If using the Application Stack option:
    • Only values from the last form in the application stack can be returned; return controls specified for any form except the last form are ignored.

    • If you use a form to add or update a value that upon saving, exits to another form (such as a Find/Browse form), the return values will come from the last form that appears after the save. In this scenario, you need to add the last form to the application stack and select the return controls from the last form.

  8. To use text substitution, in the field that you want to substitute the input with text, click the Add Text Substitution button (plus symbol) and perform the following steps in the pop-up window:

    Text substitution enables you to combine input values into a text string for input into an EnterpriseOne field. For example, you might have a string with "Temp was {0} at {1}" that contains a temperature input value and a time input value.

    1. In the Text Substitution field, enter the following variable to use for the first input:

      {0}

    2. Below the variable, select the drop-down menu to select an input for the variable.

    3. Click the Add button (plus symbol) to add the variable for the text substitution.

    4. Add the next variable, {1}, and then select the input for this variable, and click the Add button to add it to the text substitution.

      If you add a variable by mistake, click the Remove Variable button.

    5. Click the OK button to save the variables for the text substitution.

      The following image shows an example of variables added for a temperature input value and a date input value:

      Description of text_sub.png follows
      Description of the illustration ''text_sub.png''

  9. As you finish configuring the applicable rows in the Available Actions area, in the right-most column, click the Add Action button to move the configured rows to the "Order of Execution" area.

    Next, order the actions as appropriate as described in Defining the Order of Execution in the Service Request.

F.4.5 Defining the Order of Execution in the Service Request

After you move the actions from the "Available Actions" area to the "Order of Execution" area, you arrange the actions in the order required to perform the task in EnterpriseOne.

To define the order of execution:

  1. Click the action that you want to move up or down in the order.

  2. Click the "up arrow" or "down arrow" buttons at the end of the row with the action until the action is in the proper order.

  3. Continue until the order of the actions reflects how the task is performed in EnterpriseOne.

  4. If you added an action that is not needed, click the Delete (X) button at the end of the row to delete the action.

  5. Click the Save All button next to the Orchestration drop-down menu to save the orchestration with the service request.

  6. If you make a mistake when modifying a service request, click the Restore Service Request button to restore the service request to its last saved version.

If you add a rule component with conditions for invoking the service request, after creating the service request and rule, you must define the actions for the rule and service request in the orchestration design panel. See Completing an Orchestration in this guide for more information.

F.4.6 Adding an Existing Service Request to an Orchestration

If an existing service request provides the tasks that you want to use in a new orchestration, you can reuse the service request in the new orchestration.

However, make sure that you do not modify the service request in any way that would break other orchestrations where the service request is used.

To add an existing service request to an orchestration:

  1. After adding the ServiceRequest step to the orchestration, click the ServiceRequest row.

  2. In the Service Request drop-down menu, select an existing service request.

  3. Click the Save All button.

    The Orchestrator Studio saves the service request component and saves the orchestration with the service request as the orchestration step.

F.4.7 Adding a Custom Java Service Request

You can create custom Java for a service request, which is referred to as a custom Java service request. Before you can add a custom Java service request to an orchestration, you must create the custom Java as described in Chapter 8, "Creating Custom Java for Orchestrations".

To add a custom Java service request, you can add a new custom Java service request or copy an existing custom Java service request.

To add a new custom Java service request:

  1. After adding the ServiceRequest step to the orchestration, click the ServiceRequest step row.

  2. In the Service Request area, click the New Custom Java button.

  3. In the Custom Java pop-up field, enter a name for the custom Java service request.

    Do NOT include spaces in the name.

  4. Click the Ok button.

  5. In the Class field, enter the Java class.

    This is the custom Java class that you created to use for the service request. See Chapter 8, "Creating Custom Java for Orchestrations".

  6. Complete the following fields:

    • Attribute. Enter the name of the field in the class.

    • Input Value. Click the drop-down menu and select the input value. If the attribute is a boolean and you pass in "true", then you could use a default value.

    • Default Value. Enter a default, hard-coded value if there is no mapped value. You can also add a hard-coded value to use if the mapped value returns a null.

  7. Click the Save button.

    The Orchestrator Studio saves the custom Java request and saves the orchestration with the newly added ServiceRequest step.

  8. If you modify any fields and make a mistake, you can click the Restore Custom Java button which refreshes the custom Java rule to its last saved state.

To add a new custom Java service request by copying an existing custom Java service request:

  1. Click the Copy Java button.

  2. In the pop-up fields, click the Custom Java to Copy drop-down menu and select a custom Java service request to copy.

  3. In the New field, enter a name for the new custom Java service request.

  4. Modify the custom Java service request values as necessary.

  5. Click the Save button.

F.5 Creating Rules

This section contains the following topics:

F.5.1 Understanding Rules

A rule contains conditional logic that the Orchestrator uses to evaluate conditions, such as true or false conditions that determine how the orchestration processes the incoming data. You can define a rule with a list of conditions or you can define a more complex rule using a custom Java class. For more information about using a custom Java class for rules, see Chapter 8, "Creating Custom Java for Orchestrations".

An orchestration rule functions similar to an EnterpriseOne query in that each rule has:

  • A "Match Any" or "Match All" setting.

  • One or more conditions defined, each being a binary operation on two values.

After creating a rule, you must use the Action column in the Orchestration design panel to determine the course of action for any orchestration steps that are dependent on the rule. See Completing an Orchestration for more information.

F.5.1.1 Understanding Nested Rules (and Nested Service Requests)

If the input to an orchestration does not meet the "true" condition defined in the orchestration Rule, then it is "false." Typically at this point, the orchestration stops and no further action is taken. However, you can add a "false" condition to the original rule that you can use to invoke another rule, referred to as a nested rule. The nested rule can have an additional condition that when met, invokes a different service request.

Figure F-8 shows an orchestration with a nested rule and nested ServiceRequest. The action in the first ServiceRequest is set to "True" because it is invoked when the true condition of the parent rule is met. The action in the first nested Rule is "False" because it is invoked when the false condition of the parent rule is met. The nested Rule then contains a true condition that invokes another ServiceRequest (to perform a task in an EnterpriseOne form), therefore the action in the nested ServiceRequest is "True." You can repeat the nesting of rules and service requests as required by the design of your orchestration.

Figure F-8 Nested Rules and Service Requests in an Orchestration

Description of Figure F-8 follows
Description of ''Figure F-8 Nested Rules and Service Requests in an Orchestration''

F.5.2 Creating a Rule

Create a rule component to define the conditions for the orchestration.

To create a rule:

  1. After adding a Rule step to an orchestration, click the Rule step row.

    The Orchestrator Studio displays the Rule design panel.

  2. In the Rule design panel, click the New Rule button.

  3. In the Rule pop-up field, enter a name for the rule and click the Ok button.

    Do not include any spaces in a rule name.

    As an alternative, you can create a new rule by copying an existing rule. To do so:

    1. Click the Copy Rule button.

    2. In the pop-up window, select a rule from the Rule to Copy drop-down menu.

    3. In the New Rule field, enter a name for the rule.

  4. Select the Match Value drop-down menu and select one of the following values:

    • Match All. Select this option if all conditions in the rule must be met.

    • Match Any. Select this option if any conditions in the rule can be met.

  5. Add a row with a condition by completing the following columns:

    • Rule Type. In the drop-down menu, select either string, numeric, or date depending on the format of the input.

    • Value 1. The drop-down menu contains a list of the inputs defined for the orchestration. You can select the value here, or you can click and drag the input from the orchestration design panel and drag it to this field.

    • Operator. In the drop-down menu, select from the list of operands which include: >, <, >=, <=, =, !=, startsWith, endWith, contains, between, inList.

    • Literal. Click this check box to indicate a literal value.

    • Value 2. If you selected the Literal check box, manually enter a value. If not, select the value from the list of inputs.

    • Literal Value Type. If you selected the Literal check box, click the drop-down menu and select the format of the literal value: string, numeric, data.

  6. Add additional rules as necessary.

  7. Click the Save All button to save the orchestration and the new rule component.

    After adding a rule and a service request to an orchestration, you must define the actions for the rule and service request in the orchestration design panel. See Completing an Orchestration for more information.

F.5.3 Adding an Existing Rule to an Orchestration

You can reuse orchestration components, including rule components. If an existing rule contains the conditions that you want to use for another orchestration, you can reuse the existing rule.

Make sure that you do not modify the rule in any way that would break other orchestrations where the rule is used.

To add an existing rule to an orchestration:

  1. After adding the Rule step to the orchestration, click the Rule step row.

  2. Click the Rule drop-down menu and select an existing rule.

  3. Click the Save All button.

    The Orchestrator Studio saves the rule and saves the orchestration with the rule as the orchestration step.

F.5.4 Adding a Custom Java Rule

You can create custom Java for a rule and then add it to the orchestration as a rule, which is referred to as a custom Java rule. Before you can add a custom Java rule to an orchestration, you must create the custom Java as described in Chapter 8, "Creating Custom Java for Orchestrations".

You can add a new custom Java rule or copy an existing custom Java rule.

To add a new custom Java rule:

  1. After adding the Rule step to the orchestration, click the Rule step row.

  2. In the Rule design panel, click the New Custom Java button.

  3. In the Custom Java pop-up field, enter a name for the custom Java rule.

    Do NOT include spaces in the custom Java name.

  4. Click the Ok button.

  5. In the Class field, enter the path to the Java class, which includes the name of the Java path, for example:

    This is the custom Java class that you created to use for the rule. See Chapter 8, "Creating Custom Java for Orchestrations".

  6. Complete the following fields:

    • Attribute. Enter the name of the field in the class.

    • Input Value. Click the drop-down menu and select the input value. If the attribute is a boolean and you pass in "true", then you could use a default value.

    • Default Value. Enter a default, hard-coded value if there is no mapped value. You can also add a hard-coded value to use if the mapped value returns a null.

  7. If you make a mistake while configuring any of the fields, you can click the Restore Custom Java button which refreshes the custom Java rule to its last saved state.

  8. Click the Save All button.

    The Orchestrator Studio saves the custom Java rule and saves the orchestration with the newly added step.

To add a new custom Java rule by copying an existing custom Java rule:

  1. Click the Copy Java button.

  2. In the pop-up fields, click the Custom Java to Copy drop-down menu and select a custom Java rule to copy.

  3. Enter a name for the new custom Java rule.

  4. Modify the custom Java rule values as necessary.

  5. Click the Save All button.

F.6 Creating Cross References

This section contains the following topics:

F.6.1 Understanding Cross References

The Orchestrator uses a cross reference component of an orchestration to map third-party data to an EnterpriseOne value. The EnterpriseOne value identified in the cross reference is considered the output of the cross reference. The output from the cross reference becomes the input to the service request when you configure the service request.

Each cross reference that you define in the Orchestrator Studio must also be defined in P952000 in EnterpriseOne. In P952000, you must use the "AIS" cross reference type when defining cross references for orchestrations. See Chapter 5, "Setting Up Cross References and White Lists in EnterpriseOne (P952000)" for instructions on how to set up cross references in P952000.

If a cross reference lookup fails in an orchestration, the orchestration is terminated.

F.6.2 Creating a Cross Reference

You must define the orchestration inputs before you can create a cross reference. See Adding Inputs to an Orchestration for more information.

To create a cross reference:

  1. After adding a CrossReference step to an orchestration, click the CrossReference step row.

    The Orchestrator Studio displays the Cross Reference design panel.

  2. In the Cross Reference design panel, click the New Cross Reference button.

  3. In the Cross Reference pop-up field, enter a name for the cross reference.

    Do NOT include spaces in the cross reference name.

  4. In the Object Type field, enter a name for the object type.

    This is the object type used to categorize the orchestration cross references in EnterpriseOne. See "Adding Orchestration Cross References" in the JD Edwards EnterpriseOne Tools Interoperability Guide for more information.

    The Orchestrator Studio displays a grid with an Input Key column and Output Key column, which you use to map the input name to the name of the EnterpriseOne field (output).

  5. Click the Input Key drop-down menu and select an input.

    The inputs can be one or many values. The inputs must correspond to the value or pipe (|) delimited values in the Third Party Value column in P952000. See "Chapter 5, "Setting Up Cross References and White Lists in EnterpriseOne (P952000)" for more information.

    If the drop-down menu does not contain any values, this means that you have not defined the inputs for the orchestration, which you must complete before creating the cross reference. See Adding Inputs to an Orchestration for more information.

  6. Click in the Output column to define the names of the output values.

    The outputs can be one or many values. The outputs must correspond to the value or pipe (|) delimited values in the EOne Value column in P952000. See "Chapter 5, "Setting Up Cross References and White Lists in EnterpriseOne (P952000)" for more information.

  7. If you enter any values in error, you can click the X button next to the field to remove it.

  8. Click the Save All button.

    The Orchestrator Studio saves the new cross reference component and saves the orchestration with the cross reference step.

    The output values in the cross reference are now available for mapping in subsequent orchestration steps.

You can also create a new cross reference by copying an existing cross reference. To do so:

  1. After adding the CrossReference step to the orchestration, click the CrossReference step in the grid.

  2. Click the Copy Cross Reference button.

  3. In the pop-up window, click the Cross Reference to Copy drop-down menu and select an existing cross reference.

  4. In the New Cross Reference field, enter a name for the new cross reference.

    Do not include spaces when naming orchestration components.

  5. Click the Save button.

F.6.3 Adding an Existing Cross Reference to an Orchestration

You can reuse orchestration components, including cross references. If an existing cross reference used by another orchestration contains mappings that you want to use for a new orchestration, you can add the existing cross reference to the new orchestration.

Make sure that you do not modify the cross reference in any way that would break other orchestrations that use the same cross reference.

To add an existing cross reference to an orchestration:

  1. After adding the CrossReference step to the orchestration, click the CrossReference row.

  2. In the Cross Reference drop-down menu, select an existing cross reference.

  3. Click the Save All button.

    The Orchestrator Studio saves the cross reference and saves the orchestration with the cross reference as the orchestration step.

F.7 Creating White Lists

This section contains the following topics:

F.7.1 Understanding White Lists

A white list contains a list of IDs permitted in the Orchestrator. By adding a white list to an orchestration, only inputs with IDs listed in the white list are permitted for processing by the Orchestrator. You add a white list component as a step in the orchestration.

In addition to specifying the permitted IDs in the white list, you must also specify the white list IDs in P952000 in EnterpriseOne. This is the same application that you use to set up and store orchestration cross references. As with cross references, use the "AIS" cross reference type in P952000 for a white list. In P952000, the Third Party App ID should have a value of WHITELIST. The EnterpriseOne value is not used for white lists and will default to NA.

If a white list lookup fails in an orchestration, the orchestration is terminated.

F.7.2 Creating a White List

Before you can create a white list, you must define the inputs for the orchestration as described in Adding Inputs to an Orchestration. When you create a white list, you select the input IDs that you want to add from the list of available inputs in the orchestration.

To create a white list:

  1. After adding the WhiteList step to the orchestration, click the WhiteList step in the grid.

  2. In the White List design panel, click the New White List button.

  3. In the White List pop-up field, enter a name for the white list.

    Do NOT include spaces in the white list name.

  4. In the Object Type field, enter a name for the object type.

    The value you enter in the Object Type field must match a cross-reference object type in the EnterpriseOne Business Services Cross Reference application (P952000).

    The cross-reference object type is a named group of records in P952000. For example, you may have thousands of records in P952000; those thousands of records can be grouped by cross-reference object type names such as "Equipment" or "Alert_Notification_Recipients." See Chapter 5, "Setting Up Cross References and White Lists in EnterpriseOne (P952000)" for more information.

  5. In the Input Key column, click the drop-down menu and select input that you want to add as a permitted input.

  6. Click the Save All button.

    The Orchestrator Studio saves the new white list component and saves the orchestration with the newly added white list step.

You can also create a new white list by copying an existing white list. To do so:

  1. After adding the WhiteList step to the orchestration, click the WhiteList step in the grid.

  2. Click the Copy White List button.

  3. In the pop-up window, click the White List to Copy drop-down menu and select a white list.

  4. In the New White List field, enter a name for the new white list.

    Do NOT include spaces in the white list name.

  5. Click the Save button.

F.7.3 Adding an Existing White List to an Orchestration

As mentioned previously, you can reuse orchestration components. If an existing white list contains the IDs that you want to use for another orchestration, you can reuse the existing white list.

To add an existing white list to an orchestration:

  1. After adding the WhiteList step to the orchestration, click the WhiteList step in the grid.

  2. In the White List drop-down menu, select an existing white list.

  3. Click the Save All button.

    The Orchestrator Studio saves the white list and saves the orchestration with the white list as the orchestration step.

F.8 Reloading Orchestrations and Orchestration Components

In the Orchestrator Studio, the Reload All Files feature enables you to reload orchestrations and orchestration components to the state in which they were last saved. Use the Reload All Files feature if you do not want to save any modifications that you made.

To reload all files, click the drop-down menu in the upper-right corner of the Orchestrator Studio and then click the Reload All Files link.

Each individual orchestration component panel also contains a Restore button that you can use to restore an individual component.