Creating an Orchestration with the Orchestrator Studio


Options



Before You Begin

Purpose

This OBE provides an example of how to use the JD Edwards EnterpriseOne Orchestrator Studio to create a simple orchestration that will pass data from a simulated Internet of Things (IoT) device into an EnterpriseOne application in an IoT environment. The instructions include steps on how to test running the orchestration in the Orchestrator Client.

Time to Complete

60 minutes

Background

The JD Edwards EnterpriseOne Internet of Things (IoT) Orchestrator provides the critical processing capability for JD Edwards EnterpriseOne applications to consume and process data from devices attached to things in an IoT environment. Essential to this process are orchestrations, which contain the instructions that the IoT Orchestrator uses to determine how the data is passed to EnterpriseOne. The Orchestrator Studio enables a business analyst to create and test orchestrations in an intuitive graphical user interface that hides the complexity of the underlying code required for processing orchestrations.

Scenario

Currently, your company has to manually enter meter readings into the EnterpriseOne Speed Meter Readings (P12120U) application. To automate this process, you want to use the Orchestrator Studio to create an orchestration that consumes data from an IoT device attached to the meter and passes the data into P12120U in EnterpriseOne.

Before you go live in a production environment, you want to use the Orchestrator Client in an EnterpriseOne test environment to test running the orchestration by simulating inputs from an IoT device.

Finally, you want to verify that the simulated IoT data was added to EnterpriseOne.

What Do You Need?

Important: The steps in this OBE are written for Orchestrator Studio 3.0 and will not work with earlier versions of the Orchestrator Studio.

You must have the following prerequisites before performing the steps in this OBE:

  • EnterpriseOne running in a test environment with a minimum of EnterpriseOne Tools 9.2.1.

  • An EnterpriseOne IoT configuration, which requires an EnterpriseOne Application Interface Services (AIS) Server configuration for running the EnterpriseOne Orchestrator Client and an ADF Server for running the EnterpriseOne Orchestrator Studio 3.0. 

  • Access to the Orchestrator Studio features, which is controlled through EnterpriseOne UDO feature security.

  • This OBE uses the EnterpriseOne Speed Meter Readings (P12120U) application. 

Important! The tasks in this Oracle by Example (OBE) use equipment number 1001 which should be available in EnterpriseOne pristine data. Before you proceed, access Equipment Master (Fast Path: 1701) in EnterpriseOne and verify that equipment number 1001 is available. If the 1001 equipment number record is not in EnterpriseOne, you can use any other valid equipment number. If you use another equipment number, make sure to write it down because you will use this value throughout this OBE to test your orchestration. This value represents the equipment number to which your orchestration will send fuel and hour meter readings.

See “Getting Started” in the JD Edwards EnterpriseOne Internet of Things Orchestrator Guide for instructions on how to implement these prerequisites.

Create an Orchestration in the Orchestrator Studio

Create an orchestration that performs the process of sending fuel and hour (runtime) meter readings into the EnterpriseOne Speed Meter Readings (P12120U) application. The orchestration must include:

  • Three inputs:
  • EquipmentNumber. This identifies the meter sending the data.
  • NewFuelMeterReading. This is the fuel meter reading amount.
  • NewHourMeterReading. This is the time the reading was taken.
  • A service request, which provides the instructions to invoke the Speed Meter Readings (P12120U) program and add a meter reading record.

To do this, you will:

  • Create an orchestration and add inputs.
  • Create a service request.
  • Add the service request to your orchestration.
  • Test your orchestration in the Orchestrator Client.

Create an Orchestration and Add Inputs

  1. Access the Orchestrator Studio.
  2. On the Orchestrator Studio Home page, click the Orchestrations icon.
  3. On the Orchestration page, click the New Orchestration button.
  4. On the Orchestration design page, enter a unique name for the orchestration in the Orchestration field.
  5. Do not use spaces when naming the orchestration.
  6. In the space provided, enter a short description with a maximum of 200 characters.
  7. Optionally, click the Edit Long Description button (pencil icon) and enter a long description, such as "This orchestration automatically updates P12120U with fuel meter readings."
  8. Click the Input Format drop-down menu and select JDE Standard.
  9. In the Orchestration grid, enter the inputs as described in the following table:
  10. Input Value Type
    EquipmentNumeber String
    NewFuelMeterReading Numeric
    NewHourMeterReading Numeric

    You will use these inputs when you configure the service request.

  11. Click Save.

Create a Service Request

The Service Request design page in the Orchestrator Studio enables you to specify and configure each control that is used to perform a particular task in EnterpriseOne. You arrange these controls or “actions” in the sequence they are used to perform the task in EnterpriseOne.

  1. Click the icon at the top of the page until you access the side panel menu.
  2. Click the New Service Request icon.
  3. On Service Requests, click the New Service Request button.
  4. On the Service Request design page, enter a name for the service request in the Service Request field.
  5. Do not use spaces in the name.

  6. Enter a short description in the space provided, such as "Update Fuel Meter and Hour Meter readings in P12120U."
  7. Optionally, you can click the Edit Long Description button and enter a long description.
  8. Click Save.
  9. In the Available Actions area, complete the following fields to search for the controls and fields available in the Speed Meter Readings (P12120U) program:
    Application = P12120U
    Form = W12120UA
    Version = ZJDE0001
  10. Click the Load Form button.
    The Orchestrator Studio loads the controls and fields for the form in the grid. Be patient. This might take a few moments to load. If nothing happens, make sure that you entered the preceding IDs correctly, and then click the Load Form button again.

  11. Expand the Speed Meter Readings node and the Buttons and Exits node in the grid, if they are not already expanded.

  12. Configure the controls as described in the following table:
  13. Control/Action Do this:
    OK (under the Buttons and Exits node)
    1. Click the Add Action button at the end of this row to add the control to the Order of Execution area.
    Hour Meter
    1. In the Default Value column, click the check box. 
    2. Click the Add Action button.
    Fuel Meter
    1. In the Default Value column, click the check box.
    2. Click the Add Action button.
    Fuel Meter New Reading (under the Speed Meter Readings-Grid node)
    1. In the Mapped Value column, select NewFuelMeterReading from the drop-down list.
    2. Click the Add Action button.
    3. This maps the input that you entered in the orchestration to this field in the EnterpriseOne form.

    Hour Meter New Reading (under the Speed Meter Readings-Grid node)
    1. In the Mapped Value column, select NewHourMeterReading from the drop-down list.
    2. Click the Add Action button.
    3. This maps the input that you entered in the orchestration to this field in the EnterpriseOne form.

    Equipment Number (under Speed Meter Readings-Grid node)
    1. In the Mapped Value column, select EquipmentNumber from the drop-down list.
    2. Click the Add Action button.
    3. This maps the input that you entered in the orchestration to this field in the EnterpriseOne form.

  14. In the Order of Execution area, use the buttons at the end of the rows to move the controls/actions in the proper order as shown in the following screenshot:
    Order of Execution
    Control Configuration
    The order must reflect the order in which the actions are performed in the application: first the selection of check boxes and field entries, followed by clicking the OK button.
  15. Click Save.

Add the Service Request to Your Orchestration

  1. Return to the Orchestrations page and select the orchestration that you created.
  2. Click the Edit Orchestration button.
  3. Click the Add Step button (+ symbol next to "Orchestration Steps").
  4. From the Enter Type of Step drop-down list, select Service Request, and then click OK.
  5. Select the row with the Service Request step and then click the Add Step button (down arrow) at the end of the row.
  6. In the pop-up box, select the service request that you just created.
  7. Click Save.

Test Your Orchestration in the Orchestrator Client

Access the Orchestrator Client to test your orchestration by simulating fuel meter inputs from an IoT device.

  1. In the Orchestrator Studio, click the Tools link in the upper right corner.
  2. On the Orchestrator Studio Tools page, click the Orchestrator Client icon, and then use your EnterpriseOne credentials to sign in.
  3. In the Orchestrator Client, before you test your orchestration, click the XML Cache Refresh button.
  4. Select your orchestration from the Orchestration Name drop-down list.
  5. Enter the following values for the inputs:
    EquipmentNumber = 1001 (or another valid equipment number)
    NewFuelMeterReading = Any numeric value.
    NewHourMeterReading = Any numeric value.
  6. Click the Run button.
  7. If successful, a green check mark or a yellow caution symbol appears at the top right of the Output pane. Scroll to the bottom of the Output pane to see any messages about the process.

    Also, if you want to verify that the transaction completed in EnterpriseOne, access P12120 and search on your equipment number. Remember to select the Fuel Meter and the Hour Meter check boxes to see both values in the grid.

Add a Rule to the Orchestration

In this exercise, you will:

  • Create a rule.
  • Add the rule to your orchestration.
  • Configure the rule to invoke the service request.
  • Test the orchestration in the Orchestrator Client.

Scenario: If a malfunctioning Fuel Meter has a negative value, the orchestration that you just created could potentially add a record in EnterpriseOne with a negative amount for the Fuel Meter Reading. To prevent the orchestration from adding a negative value to the Fuel Meter Reading column, you can create a rule with the following condition:

If Fuel Meter Reading is greater than (>) zero, then run the orchestration.

Before You Begin

In a simple orchestration with a rule and service request, you must add a Rule step before you add a Service Request step to the orchestration. So for the purposes of this exercise, you need to remove the Service Request step from your orchestration before adding the Rule step. This does not delete the service request component that you added in the previous section. After you add the rule step, you can simply re-add your service request to the orchestration, which is described later in this OBE.

To remove the service request step:

  1. Access the Orchestrations page, select your orchestration, and click the Edit Orchestration button.
  2. On the Orchestration design page, click the row with the Service Request step and click the Remove Step button (X icon).
  3. Click Save.

Create a Rule

  1. Access the Orchestrator Studio Home page and click the Rules icon.
  2. On the Rules design page, click the Rules button.
  3. Enter a name for the rule in the Rule field.
  4. Do not use spaces when naming the rule.

  5. Enter a short description in the space provide, such as, "Allow only fuel meter readings greater than zero."
  6. Click the Save button.
  7. Click the Match Value drop-down menu and select Match All.
  8. In the first row, add a condition with the following values to the rule:
  9. Column/Field
    Value
    Rule Type Numeric
    Value 1 NewFuelMeterReading
    Operator >(greater than)
    Literal Click this check box.
    Value 2 0 (zero)
    Literal Value Type Numeric
  10. In the next row in the grid, add another condition with the following values:
  11. Column/Field
    Value
    Rule Type Numeric
    Value 1 NewHourMeterReading
    Operator >(greater than)
    Literal Click this check box.
    Value 2 0 (zero)
    Literal Value Type Numeric

    The condition should look like this when complete:

    Conditions
    Description of this image
  12. Click Save.

Add the Rule to Your Orchestration

  1. Return to the Orchestrations page and select your orchestration.
  2. Click the Edit Orchestration button.
  3. At this point, the orchestration should not have any steps.

  4. Click the Add Step button (+ symbol).
  5. In the Enter Type of Step pop-up field, select Rule and click OK.
  6. At the end of the row with the Rule step, click the Add Step drop-down button (down arrow) and then select the rule that you just created for this orchestration.
  7. Click Save.

Configure the Rule to Invoke the Service Request

Configure the orchestration so that the rule invokes the service request that you created previously in this OBE. In the orchestration steps, you need to re-add this service request as a nested step of the rule. To do so:

  1. In the orchestration grid, click the row with the Rule, and then click the Insert Step After button.
  2. In the "Enter Type of Step" pop-up field, select Service Request and then click the OK button.
  3. Notice that the Service Request step is “nested” under the Rule step.
  4. At the end of the row with the Service Request step, click the Add Step drop-down button and then select the service request that you created previously.
  5. The Action column in the Service Request row should contain “True” by default, but if not, click in the Action column and select True.
  6. This instructs the orchestration that when the condition in the rule is met, or is “true,” to invoke the service request.

    Your orchestration should look like this:

    Conditions
    Orchestration
  7. Click Save.

Test the Orchestration in the Orchestrator Client

  1. In the Orchestrator Client, click the Clear button and XML Cache Refresh button.
  2. Select your orchestration, and then enter the following inputs:
    • EquipmentNumber = 1001 (or another valid equipment number)
    • NewFuelMeterReading = A value less than zero.
    • NewHourMeterReading = Any numeric value.
  3. Click the Run button to test the orchestration.
Notice the green check mark, which means that the IoT Orchestrator processed the orchestration. However, the orchestration produced no output because the input did not meet the condition defined in the rule that you added to the orchestration.

Optional Test: Perform another test by adding a value greater than zero to both meter reading inputs to ensure that the orchestration runs as expected.

Also, if you want to verify that the transaction completed in EnterpriseOne, access P12120 and search on your equipment number.

Add a Cross Reference to the Orchestration

In this exercise, you will:

  • Create a cross reference.
  • Add the cross reference to your orchestration.
  • Add a cross reference record in EnterpriseOne.
  • Test your orchestration in the Orchestrator Client.

The orchestration accepts EquipmentNumber as one of its inputs. Essentially this means that the orchestration expects the IoT device itself to have an actual “Equipment Number” identifier that matches Equipment Number in JD Edwards EnterpriseOne. However, in a real-world scenario it is more likely that the device will send some other identifying information, such as a serial number, which must then be cross-referenced to Equipment Number in EnterpriseOne.

In this exercise, you will modify the orchestration by adding a cross reference in order to map a device’s serial number identifier to Equipment Number in EnterpriseOne. In addition, you will need to add a cross reference to the Business Service Cross References (P952000) application in EnterpriseOne that identifies the actual serial number that the orchestration will accept.

Before You Begin

Before you add the cross reference, change the input in the orchestration from EquipmentNumber to SerialNumber to reflect the preceding scenario.

  1. Open the orchestration in the Orchestration design page.
  2. In the inputs grid, change EquipmentNumber to SerialNumber. Leave String as the value.

Create a Cross Reference

  1. Access the Orchestrator Studio Home page and click the Cross References icon.
  2. On the Cross Reference design page, click the New Cross Reference button.
  3. Enter a name for the cross reference in the Cross Reference field.
  4. Do not use spaces when naming the rule.
  5. Enter a short description in the space provided.
  6. In the Object Type field, enter equipment (case-sensitive, use all capitals) for the object type.
  7. In the grid, use the Input Key column and Output Key column to map the input name to the name of the EnterpriseOne field (output):
    1. Enter SerialNumber in the Input Key column.
    2. Enter EquipmentNumber in the Output Key column. This output of the orchestration is the input in EnterpriseOne.
    3. For this cross reference to work, the values entered here for Object Type (in step 5), Input Key, and Output Key must correspond to the values in a cross reference record in EnterpriseOne, which you will add as described in the “Add a Cross Reference Record in EnterpriseOne” section in this OBE.

  8. Click Save.

Add the Cross Reference to Your Orchestration

  1. Click the icon at the top of the page until you access the side panel menu. 
  2. Select the Orchestrations icon.
  3. Select the orchestration that you created and click the Edit Orchestration button.
  4. On the Orchestration design panel, select the Rule step in the grid and click the Insert Step Before button.
  5. In the "Enter Type of Step" pop-up field, select Cross Reference and then click Ok.
  6. Click the down-down button at the end of the row with the Cross Reference step, and select the cross reference that you created for this orchestration.
  7. Click Save.

Add a Cross Reference Record in EnterpriseOne

  1. Access EnterpriseOne. If your session timed out, you will need to sign in again.
  2. Open the Business Services Cross Reference application (Fast Path: P952000).
  3. On Work with Business Service Cross References, click Add in the menu bar to add a new record.
  4. In the first row in the grid, enter the following values for the columns:
    • Cross Reference Type = AIS
    • Cross Reference Object Type = equipment (case-sensitive, use all capitals)
    • Third Party App ID = 1 (This field requires a value, which is another custom value of your choosing that you can use to categorize third party devices. We’ll just use “1” for this exercise.)
    • Third Party Value = For this exercise, come up with a unique serial number, such as serial303. Write down this serial number. You will use it to test the orchestration.
    • EOne Value = 1001 (or another valid equipment number in EnterpriseOne)
    • Conditions
      Add Business Service Cross Reference
  5. Click OK to add the record. And then click Cancel to close the form.

Test Your Orchestration in the Orchestrator Client

  1. In the Orchestrator Client, click the Clear button and XML Cache Refresh button.
  2. Select your orchestration, and then enter the following inputs:
    • SerialNumber = Enter the serial number, for example serial303, you entered in EnterpriseOne for the cross reference.
    • NewFuelMeterReading = A value greater than zero.
    • NewHourMeterReading = A value greater than zero.
  3. Click the Run button to test it.

Look for the green check mark or a yellow caution symbol to see if the IoT Orchestrator successfully processed the orchestration. Also, you can access P12120 in EnterpriseOne again to verify the values were added for your equipment number.

Optional test: Perform another test by entering a value for NewFuelMeterReading that is less than zero, and check your results. In this case, you should receive a message that the orchestration did not produce any output.

Summary

In this OBE, you created an orchestration to pass data from an IoT device into P12120U in EnterpriseOne. The orchestration included inputs, a rule, a service request, and a cross reference. After you added each component to the orchestration, you used the Orchestrator Client to test running the orchestration by simulating inputs from the meter reading device. Finally, you verified that the IoT data was added to EnterpriseOne.

Want to Learn More?