1[JD] Edwards EnterpriseOne Tools Orchestrator Guide Release 9.2.x F21531-02
January 2020 Describes how to use the JD Edwards EnterpriseOne Orchestrator to support EnterpriseOne business process automation and support various integrations including integrations to Cloud services, third-party applications, custom programs, and many more. JD Edwards EnterpriseOne Tools Orchestrator Guide, Release 9.2.x F21531-02 Copyright © 2019, 2020, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government. This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners. Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group. This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle. Contents
Preface ...... ix Audience...... ix Documentation Accessibility...... ix Related Information ...... ix Conventions ...... x
1 Understanding the JD Edwards EnterpriseOne Orchestrator 1.1 JD Edwards EnterpriseOne Orchestrator Overview ...... 1-1 1.1.1 Invoking Orchestrations and Notifications from an EnterpriseOne Interactive Application Using Form Extensibility ...... 1-3 1.1.2 Invoking Orchestrations and Notifications from an EnterpriseOne Interactive or Batch Application ...... 1-3 1.2 How It Works ...... 1-3 1.3 EnterpriseOne Architecture for Orchestrator ...... 1-5
2 Getting Started 2.1 Certifications (Formerly Known as Minimum Technical Requirements) ...... 2-1 2.2 Prerequisites...... 2-1 2.3 Before You Begin...... 2-3 2.4 Accessing the Orchestrator Studio ...... 2-3 2.5 Set Up a Temporary Directory on the AIS Server for File Transfers...... 2-3
3 Designing an Orchestration 3.1 Understanding the Orchestration Design Process ...... 3-1 3.2 Identifying the Problem and Solution...... 3-2 3.3 Identifying the Data for the Orchestration...... 3-2 3.4 Identifying the Rules for the Orchestration ...... 3-3 3.5 Identifying the Cross Reference and White List Information for the Orchestration...... 3-3 3.6 Identifying the Service Request Information for the Orchestration ...... 3-4
4 Configuring Orchestration Components using Orchestrator Studio 9.2.4 4.1 Understanding the Orchestrator Studio and Orchestrations ...... 4-1 4.1.1 Invoking an Orchestration...... 4-3 4.1.2 Reusable Orchestration Components ...... 4-3
iii 4.1.3 Orchestrations as User Defined Objects ...... 4-3 4.2 Navigating the Orchestrator Studio...... 4-4 4.2.1 Orchestrator Studio Features ...... 4-4 4.2.2 User Defined Object (UDO) Features in the Orchestrator Studio ...... 4-6 4.2.3 Working with the Graphical Representation of an Orchestration...... 4-7 4.3 Creating Service Requests...... 4-10 4.3.1 Understanding Service Requests...... 4-10 4.3.2 Creating a Component...... 4-11 4.4 Working with Orchestrator Categories (Release 9.2.4.2)...... 4-12 4.4.1 Working with Categories...... 4-13 4.5 Configuring a Form Request in the Orchestrator Studio...... 4-14 4.5.1 Loading EnterpriseOne Application Form Fields and Controls ...... 4-14 4.5.2 Configuring Form Request Actions ...... 4-16 4.5.3 Configuring the Order of Execution ...... 4-17 4.5.4 Populating Multiple Grids with Repeating Inputs (Optional)...... 4-18 4.5.5 Creating a Form Request with the JD Edwards EnterpriseOne Orchestrator Process Recorder...... 4-18 4.5.5.1 Rules for Creating a Form Request in the Process Recorder...... 4-19 4.5.5.2 Prerequisites ...... 4-19 4.5.5.3 Using the Process Recorder to Create a Form Request...... 4-20 4.6 Configuring a Data Request ...... 4-20 4.6.1 Understanding Data Request...... 4-21 4.6.2 Configuring a Data Request to Return Field Data...... 4-21 4.6.3 Configuring a Data Request with Data Aggregation ...... 4-23 4.6.4 Viewing and Copying JSON Code of a Data Request...... 4-24 4.6.5 Configuring Form Request and Data Request Processing...... 4-25 4.6.5.1 Page Size Considerations...... 4-25 4.6.5.2 Processing Settings ...... 4-25 4.7 Configuring a Report Service Request ...... 4-27 4.8 Configuring a Watchlist Service Request ...... 4-28 4.9 Configuring a Message Request ...... 4-29 4.10 Configuring a Connector Service Request ...... 4-31 4.10.1 Understanding Connector Service Requests ...... 4-32 4.10.2 Before You Begin...... 4-32 4.10.3 Configuring a Connector Service Request to Invoke an Orchestration or Notification.... 4-32 4.10.4 Configuring an Open API Connector to Invoke a REST Service...... 4-33 4.10.5 Configuring a REST Connector to Invoke a REST Service ...... 4-34 4.10.6 Configuring a REST Connector to Invoke REST Services from a Local AIS Server 4-36 4.10.7 Configuring a REST Connector to Transfer Files to a REST Service ...... 4-36 4.10.8 Configuring a Database Connector ...... 4-37 4.10.9 Configuring a Connector to Transfer Files Using File Transfer Protocol (FTP) ..... 4-38 4.10.9.1 Configure an FTP Connector to Transfer the Output of a Report Service Request.... 4-38 4.10.9.2 Configure an FTP Connector to Transfer a File from an FTP Server to the AIS Server ...... 4-39 4.10.9.3 Configure an FTP Connector to Transfer a File from the AIS Server to an External Server...... 4-39 iv 4.10.9.4 Configuring an FTP Connector to Import Data from a CSV File ...... 4-40 4.11 Configuring a Custom Service Request...... 4-41 4.11.1 Configuring a Custom Service Request with Java (Advanced)...... 4-41 4.11.2 Configuring a Custom Service Request with Groovy (Advanced) ...... 4-42 4.12 Creating Connection Soft Coding Records for Connector Service Requests ...... 4-43 4.12.1 Understanding Connection Soft Coding Records...... 4-43 4.12.2 Creating a Soft Coding Record for an Orchestrator Connection ...... 4-44 4.12.3 Creating an Open API Connection ...... 4-45 4.12.4 Creating a Soft Coding Record for a REST Connection ...... 4-46 4.12.5 Creating a Soft Coding Record for a Database Connection...... 4-47 4.12.6 Creating a Soft Coding Record for an FTP Server Connection ...... 4-48 4.13 Creating Rules ...... 4-49 4.13.1 Understanding Rules...... 4-49 4.13.2 Creating a Rule...... 4-49 4.13.3 Creating a Custom Rule with Java (Advanced) ...... 4-50 4.13.4 Creating a Custom Rule with Groovy (Advanced) ...... 4-51 4.14 Creating Cross References ...... 4-51 4.14.1 Understanding Cross References ...... 4-51 4.14.2 Creating a Cross Reference...... 4-51 4.15 Creating White Lists ...... 4-52 4.15.1 Understanding White Lists ...... 4-52 4.15.2 Creating a White List...... 4-52
5 Creating Orchestrations with Orchestrator Studio 9.2.4 5.1 Creating Orchestrations ...... 5-1 5.1.1 Understanding Orchestrations ...... 5-1 5.1.2 Creating an Orchestration ...... 5-2 5.1.3 Adding Steps to an Orchestration ...... 5-3 5.1.3.1 Adding the Initial Step to an Orchestration...... 5-3 5.1.3.2 Adding Additional Steps to an Orchestration...... 5-5 5.1.3.3 Removing a Step from an Orchestration...... 5-5 5.1.3.4 Moving a Component in the Orchestration...... 5-6 5.1.3.5 Defining the Actions Between a Rule and Dependent Components...... 5-6 5.1.3.6 Defining Error Handling for Orchestration Steps ...... 5-7 5.1.4 Adding Inputs to an Orchestration...... 5-8 5.1.5 Mapping Orchestration Inputs ...... 5-11 5.1.6 Retrieving and Passing Data Sets in an Orchestration...... 5-12 5.1.6.1 Configuring a Data Request to Retrieve a Data Set...... 5-12 5.1.6.2 Configuring a Form Request to Retrieve a Data Set...... 5-13 5.1.6.3 Passing a Data Set to a Subsequent Orchestration Step...... 5-13 5.1.7 Working with Orchestration Output ...... 5-13 5.2 Creating Schedules for Orchestrations ...... 5-14 5.2.1 Understanding Schedules...... 5-14 5.2.2 Creating a Schedule...... 5-15 5.2.3 Adding a Schedule to an Orchestration ...... 5-15 5.3 Working with Scheduler ...... 5-16 5.3.1 Understanding Scheduler ...... 5-16
v 5.3.2 Prerequisites ...... 5-17 5.3.3 Accessing the Scheduler ...... 5-17 5.3.4 Scheduler User Interface Features...... 5-18 5.3.5 Working with Scheduler...... 5-19 5.3.6 Starting and Stopping Jobs using Scheduler...... 5-23 5.4 Updating to Version 3 Orchestrations ...... 5-24 5.5 Restoring Orchestrations and Orchestration Components...... 5-25 5.6 Supported Input Message Formats ...... 5-25 5.6.1 Additional Supported Input Message Formats for the Generic Input Format...... 5-26 5.6.2 Differences Between Input Message Formats...... 5-26 5.7 Orchestration Security Considerations...... 5-27 5.7.1 Restricting Access to Exposed Orchestrations...... 5-27 5.7.2 How to Maintain a Single Session for Multiple Calls to an Orchestration...... 5-28 5.8 Exporting Orchestration Components from the Orchestrator Studio...... 5-28 5.8.1 Exporting by Category (Release 9.2.4.2)...... 5-28 5.9 Importing Orchestration Files in the Orchestrator Studio...... 5-29
6 Setting Up Cross References and White Lists in EnterpriseOne (P952000)
7 Orchestrator Health and Exception Monitoring 7.1 Understanding the EnterpriseOne Orchestrator Monitor ...... 7-1 7.2 Prerequisites...... 7-2 7.3 Accessing the Orchestrator Monitor ...... 7-2 7.4 Monitoring UDOs Based on Different EnterpriseOne User, Environment, or Role ...... 7-2 7.5 Refreshing the Data Displayed in the Orchestrator Monitor ...... 7-2 7.6 Resetting the Data Displayed in the Orchestrator Monitor...... 7-3 7.7 Monitoring Orchestrator Health ...... 7-3 7.7.1 Filtering the UDOs Displayed in the Health Tab...... 7-3 7.7.2 Understanding Orchestrator Health Data ...... 7-3 7.8 Monitoring Orchestrator Exceptions...... 7-5 7.8.1 Possible Causes of Orchestrator Exceptions ...... 7-5 7.8.2 Viewing and Changing Exceptions Displayed in the List View...... 7-5 7.8.3 Reviewing General Exception Information in the List View...... 7-6 7.8.4 Reviewing Detailed Exception Information in the List View ...... 7-7 7.8.5 Understanding Orchestration Step Trace Details ...... 7-8 7.8.6 Viewing Exceptions in the Chart View...... 7-8 7.8.7 Changing How Exceptions Are Displayed in the Chart View...... 7-9 7.8.8 Accessing Detailed Information from the Chart ...... 7-9 7.9 Managing Orchestrator Health and Exception Records in EnterpriseOne ...... 7-9 7.9.1 Managing Health Records in EnterpriseOne...... 7-10 7.9.2 Managing Exception Records in EnterpriseOne ...... 7-10
8 Creating Orchestrations for System Administration with Orchestrator Studio 8.1 Understanding the Orchestrations for System Administration...... 8-1 8.1.1 Creating a Connection to the Server Manager ...... 8-2 8.1.2 Creating the Connector Service Request ...... 8-2
vi 8.1.3 Adding the Service Request to an Orchestration ...... 8-2
9 Creating Custom Java for Orchestrations 9.1 Understanding Custom Java for Orchestrations...... 9-1 9.2 Creating Custom Java...... 9-1 9.2.1 Using Custom Java for the Orchestration Service Request ...... 9-2 9.2.2 Using Custom Java for the Orchestration Rule ...... 9-2 9.3 Deploying Custom Java ...... 9-2 9.3.1 Deploying Custom Java on AIS Server on Oracle WebLogic Server ...... 9-2 9.3.2 Deploying Custom Java on AIS Server on IBM WebSphere Application Server...... 9-3
10 Using Apache Groovy for Custom Service Requests, Rules, and Manipulating Output 10.1 Understanding Groovy for Orchestration Components ...... 10-1 10.2 Groovy Template for a Custom Service Request ...... 10-1 10.3 Groovy Template for a Custom Rule ...... 10-2 10.4 Groovy Template for Manipulating Output from a REST Connector Response ...... 10-3 10.5 Groovy Template for Manipulating Output from an Orchestration Response...... 10-4 10.6 Additional Attributes and Methods Available in the Groovy Script Templates ...... 10-5
11 Testing Orchestrations 11.1 Understanding Run Orchestrations ...... 11-1 11.1.1 Using cURL to Simulate Testing from a Third-Party Application or IoT Device ... 11-2 11.2 Testing an Orchestration ...... 11-2
12 Administering the Orchestrator Studio and Orchestrations 12.1 Understanding Orchestration Life Cycle Management ...... 12-1 12.2 Managing Orchestrator Studio Security ...... 12-2 12.3 Setting Up UDO Security for Orchestrator Studio Users ...... 12-3 12.3.1 UDO Feature Security for the Orchestrator Studio ...... 12-3 12.3.2 UDO Action Security for Orchestrator Studio Users...... 12-3 12.3.3 UDO View Security for Orchestrator Studio Users ...... 12-4 12.4 Clearing Orchestration Cache on the AIS Server ...... 12-4 12.4.1 Activating the AIS Administration Service...... 12-5 12.4.2 Using the AIS Administration Service to Clear Cache...... 12-5 12.5 Setting Up Orchestrator Health and Exception Monitoring ...... 12-6 12.5.1 Downloading and Installing the Orchestrator Monitor...... 12-6 12.5.2 Enabling Orchestrator Health and Exception Tracking in Server Manager ...... 12-6 12.5.3 Set Up User Access to the Orchestrator Monitor and Orchestrator Health and Exceptions Program...... 12-7 12.5.4 Enable UDO View Security to Monitor Orchestrations, Notifications, and Schedules..... 12-8
vii 13 Understanding the AIS Server Discovery Service
14 Open Standards for Orchestrations 14.1 Understanding Open Standards for Orchestrations...... 14-1 14.2 Discovering Orchestrations Using Open Standards...... 14-1 14.2.1 XML Inputs and Outputs ...... 14-2
viii Preface
Welcome to the JD Edwards EnterpriseOne Tools Orchestrator Guide. The main chapters in this guide contain instructions for Orchestrator Studio 9.2.4, the latest version of the Orchestrator Studio supported with a minimum release of EnterpriseOne Tools 9.2.4. This guide has been updated for JD Edwards EnterpriseOne Tools release 9.2.4.2. For instructions for prior releases of the Orchestrator Studio, see the JD Edwards EnterpriseOne Orchestrator Guide for Studio Version 8 and Prior. The Orchestrator functionality supports various integrations including integrations to Cloud services, third-party applications, custom programs, IoT configuration and many more. You can use the Orchestrator functionality for all your REST-based integrations to EnterpriseOne. You can also use it for integrating JD Edwards EnterpriseOne with IoT devices.
Audience This guide is intended for business analysts or project managers responsible for configuring orchestrations for data integration with JD Edwards EnterpriseOne. It is also intended for an administrator responsible for setting up the Orchestrator and Orchestrator Studio as described in Getting Started chapter in this guide.
Documentation Accessibility For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.
Access to Oracle Support Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.
Related Information For additional information about JD Edwards EnterpriseOne applications, features, content, and training, visit the JD Edwards EnterpriseOne pages on the JD Edwards Resource Library located at: http://learnjde.com
ix This guide references related information in the following guides:
■ JD Edwards EnterpriseOne Tools Server Manager Guide
■ JD Edwards EnterpriseOne Application Interface Services Server Reference Guide
■ JD Edwards EnterpriseOne Application Interface Services Client Java API Developer's Guide
■ JD Edwards EnterpriseOne Tools System Overview Guide
■ JD Edwards EnterpriseOne Tools Interoperability Guide
Conventions The following text conventions are used in this document:
Convention Meaning boldface Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary. italic Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values. monospace Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter. > Tutorial Indicates a link to a recording of the described feature. These recordings are in MP4 format so ensure that you have an appropriate player installed. Access to these recordings requires a valid Oracle account.
x 1
Understanding1 the JD Edwards EnterpriseOne Orchestrator
This chapter contains the following topics:
■ Section 1.1, "JD Edwards EnterpriseOne Orchestrator Overview"
■ Section 1.2, "How It Works"
■ Section 1.3, "EnterpriseOne Architecture for Orchestrator"
1.1 JD Edwards EnterpriseOne Orchestrator Overview The JD Edwards EnterpriseOne Orchestrator is a key component of your JD Edwards digital platform. It can transform the EnterpriseOne system from a transaction-based system of records into a system that provides a dynamic reflection of your real-time business operations. Orchestrations provide access to your EnterpriseOne data and applications as services-technically, industry-standard REST services-which you can easily create using the Orchestrator Studio. Internet-connected devices, third-party applications, Cloud services, mobile devices, and even EnterpriseOne itself, can invoke these services and take advantage of the business data and EnterpriseOne application functionality in your system. It all happens within the framework of user-defined objects, not custom-developed objects that need to be built into packages, deployed, and retrofitted during upgrades. All orchestrations are subject to EnterpriseOne application, data, and user-defined object security. The basic framework of orchestrations as REST services enables a wide variety of usage patterns that provide secure access to your EnterpriseOne business data and applications. For example:
■ Internet of Things. Devices such as equipment, sensors, or meters can invoke orchestrations that, in turn, run EnterpriseOne applications. For example, an Internet-connected meter could send readings directly to the EnterpriseOne Meter Reading application.
■ Integrations. Third-party systems and Cloud services can invoke orchestrations as REST-based services, allowing for easy and lightweight integrations. For example, a sales order could be created in a third-party CRM system, which could then invoke an orchestration to create a matching sales order in EnterpriseOne. Conversely, orchestrations can also make outbound calls to other REST services. For example, an orchestration could use the information in a sales order to call out to a third-party transportation system to get a shipping quote.
■ Mobile Applications, Chatbots, and Alternative User Interfaces. Orchestrations can be used as services to send and receive data between user interfaces and EnterpriseOne. You can use your preferred development framework to build the
Understanding the JD Edwards EnterpriseOne Orchestrator 1-1 JD Edwards EnterpriseOne Orchestrator Overview
user interface itself and let orchestrations do the work of exchanging data with EnterpriseOne.
■ Process Automation and Simplification. Some business processes in EnterpriseOne comprise many steps. In some cases, those steps are connected and sequentially ordered to form a continuous flow across applications; in other cases, the steps are not connected. In such cases, the end user must know which applications to use and in which order. Using form extensions you can also invoke orchestrations directly from EnterpriseOne application forms, thus extending the functionality of the applications without custom modifications.
■ Notifications. As an extension of the Orchestrator framework, notifications can assess your EnterpriseOne data, and also any REST-enabled external service, to detect conditions or events that need attention. Messages are then sent out to subscribers who need to know that an event has occurred that requires attention. The messages can contain action links to help the recipients act quickly with an appropriate response.
■ Scheduled Orchestrations. The Orchestrator includes a built-in Scheduler that allows you to automate when the orchestrations run. For example, orchestrations can continually check your EnterpriseOne system for events such as credit limit violations, late shipments, large sales orders, or any other condition that impacts your business.
■ System Administration. Because the Orchestrator can make outbound calls to REST services, and the JD Edwards Server Manger is enabled with REST services, the two can be combined to automate a wide variety of monitoring and administrative activities. The Orchestrator Studio is a web-based application that business analysts and technical developers alike will use to create, test, and deploy orchestrations and notifications. The Orchestrator Studio provides an intuitive and easy-to-use graphical interface that enables you to develop and deploy orchestrations without the need for programming or system administration skills, or development. You can even build services by turning on the Process Recorder in EnterpriseOne and then using the applications as you normally would. The Process Recorder captures your steps enabling you to turn those steps into an orchestration using the Orchestrator Studio, all without programming or technical skills. With the Orchestrator Studio, you can create orchestrations that enable the transformation of data from disparate devices into actionable business processes in JD Edwards EnterpriseOne. For example, you can create orchestrations that enable EnterpriseOne to:
■ Alert users when the inventory is low.
■ Alert users when an equipment is down.
■ Send an alert when a customer has reached the credit limit.
■ Automatically create sales orders.
■ Onboard employee records into the system.
■ Check on the health of an instance of a server. Using the Orchestrator you can now transform how you use your EnterpriseOne system to:
■ Collect, filter, analyze, and act on real-time data as it is being transmitted by various sources such as a machine, a mobile app, a Cloud service, and any third-party applications and devices.
1-2 JD Edwards EnterpriseOne Tools Orchestrator Guide How It Works
■ Eliminate costly and error-prone manual processes, by reacting to-or avoiding-business disruptions in real time, and by analyzing historical data for continuous process improvement.
■ Integrate with external systems and Cloud services, enabling your EnterpriseOne system to send and receive data for integrated business processes.
■ Free your EnterpriseOne users from tedious tasks by transforming manual EnterpriseOne business processes into automated operations that meet your specific business needs.
■ Empower your EnterpriseOne system to run orchestrations automatically on schedule.
1.1.1 Invoking Orchestrations and Notifications from an EnterpriseOne Interactive Application Using Form Extensibility You can use the form extensibility framework to invoke orchestrations from an interactive application by associating orchestrations with the events on an EnterpriseOne form. You can also associate notifications with the events on a form, invoke orchestrations in the synchronous mode, and map orchestration outputs to the form controls if any output has been defined for the orchestration. For more information, see "Extending EnterpriseOne Forms by Associating Orchestrations with Events (Release 9.2.3.3)" in the JD Edwards EnterpriseOne Tools Using and Approving User Defined Objects Guide.
1.1.2 Invoking Orchestrations and Notifications from an EnterpriseOne Interactive or Batch Application EnterpriseOne provides the B98ORCH business function for invoking an orchestration or notification from an event in EnterpriseOne. This capability enables developers to configure EnterpriseOne to automatically launch an orchestration or notification from one of the following events:
■ An event on a form, such as a button or a field
■ A report (UBE)
■ A table trigger
■ Anywhere you would invoke a business function With the B98ORCH business function, you can extend EnterpriseOne applications beyond transactional boundaries by linking disparate ERP tasks into a single automated business process. Alternatively, you can enable an EnterpriseOne application to automatically pass data to a REST-enabled third-party application through an orchestration or automatically send notifications to a group of users. For more information, see "Configuring the B98ORCH Business Function to Invoke an Orchestration or Notification" in the JD Edwards EnterpriseOne Tools APIs and Business Functions Guide.
1.2 How It Works When you create and save an orchestration in the Orchestrator Studio, it automatically becomes a published REST service. The name of an orchestration is used to define an endpoint on the AIS Server. The endpoint URL is http://
Understanding the JD Edwards EnterpriseOne Orchestrator 1-3 How It Works
To invoke an orchestration, calling applications or devices use a post operation to this URL, where
Figure 1–1 EnterpriseOne Orchestration Processing
An external client, which might be a third-party application, a Cloud service, an IoT device, a mobile application, the Scheduler, or anything that is capable of sending a REST request, will invoke the orchestration by its endpoint address and provide the necessary inputs in the body of the REST request. You can use the following Orchestrator components as building blocks in any order and in any combination to create orchestrations that are as simple or complex as your service requires.
■ Orchestration. An orchestration is the high-level object that defines the name of the orchestration (the REST endpoint), the inputs, the outputs (REST response), and the order and structure of the other components listed below.
■ Service request. A service request is a general term for an orchestration component that provides some actual service or "work." As such, service requests are the essential components of an orchestration. The types of service requests are listed below. – Form request: A form request invokes one or more EnterpriseOne application forms. You use this type of request to automate EnterpriseOne applications. You can create a form request in the Orchestrator Studio, or you can use the Process Recorder to record your actions in EnterpriseOne and then edit the resulting form request in the Orchestrator Studio. Form requests can use EnterpriseOne applications to read data and also to write data back to EnterpriseOne tables just as a human user would. – Data request: A data request reads data from any EnterpriseOne table or business view. You can provide inputs into a data request so that it performs certain steps, for example to filter data, and return back data sets (arrays) or aggregations such as sums or averages. Data requests are read-only components. – Report: A report request will run any EnterpriseOne report (UBE). You can specify inputs, for example, the report version, data selection, and data sequencing. The report will execute as if a human user had submitted the report in EnterpriseOne. The report request can return the server and job number of the report for use in subsequent orchestration steps.
1-4 JD Edwards EnterpriseOne Tools Orchestrator Guide EnterpriseOne Architecture for Orchestrator
– Watchlist: A Watchlist request will return all the information that is available about a Watchlist, including the number of rows (that is, the number that is shown in the badge of a Watchlist), whether that number has triggered a warning or critical threshold, and other Watchlist parameters. – Connector: Orchestrations can invoke other orchestrations or notifications. A connector request is used as the step within a main orchestration to invoke another orchestrations or notifications. Connector requests are also used to invoke external REST services, external databases, and File Transfer Protocol (FTP) sites for sending and receiving documents. – Custom request: A custom request enables you to use the Groovy scripting language or Java to create an orchestration step that performs any service that you can conceive and develop. – Message: A message request allows you to send an e-mail message to one or more recipients. You can create the subject and body of the message, including text substitution variables that are populated from previous orchestration steps. The message can include links to EnterpriseOne applications, links to external URLs, links that launch other orchestrations or notifications, and attachments.
■ Rule. A rule contains a set of conditions against which the orchestration input or values from orchestration steps are evaluated to produce a true or false state. Rules can be nested to produce complex evaluations. Rules determine how the orchestration is processed at runtime. You can also build custom rules using Groovy or Java that enable you to define complex rules..
■ Cross reference. A cross-reference is a set of data relationships defined by the designer of the orchestration that enriches the minimal input from devices. For example, the serial number of a device can be cross-referenced to an EnterpriseOne equipment number for use in service requests.
■ White list. A white list is an initial rudimentary pass or fail check of the incoming message's device signature of the incoming message against a predefined list of signatures. A white list provides an additional layer of security to the Orchestrator security..
■ Schedule. A schedule is a definition of the frequency at which an orchestration or notification will automatically run. A schedule is its own user defined object, enabling you to reuse common schedules, such as "once per day" or "once per hour." The Orchestrator Studio enables you to define simple schedules easily. You can also use the CRON syntax to define more complex schedules, such as "every Monday at 8:00 am."
1.3 EnterpriseOne Architecture for Orchestrator The Orchestrator uses the JD Edwards EnterpriseOne Application Interface Services (AIS) Server as its foundation. The AIS Server is a REST services server that when configured with the EnterpriseOne HTML Server, enables access to EnterpriseOne forms and data. The Orchestrator processes orchestrations saved to the AIS Server to transfer data between EnterpriseOne and third-party applications and devices. For an illustration of the AIS Server architecture, see "AIS Server Architecture" in the JD Edwards EnterpriseOne Tools System Overview Guide.
Understanding the JD Edwards EnterpriseOne Orchestrator 1-5 EnterpriseOne Architecture for Orchestrator
1-6 JD Edwards EnterpriseOne Tools Orchestrator Guide 2
Getting2 Started
This chapter describes how to access and get started with the Orchestrator Studio 9.2.4. It contains the following topics:
■ Section 2.1, "Certifications (Formerly Known as Minimum Technical Requirements)"
■ Section 2.2, "Prerequisites"
■ Section 2.3, "Before You Begin"
■ Section 2.4, "Accessing the Orchestrator Studio"
■ Section 2.5, "Set Up a Temporary Directory on the AIS Server for File Transfers"
2.1 Certifications (Formerly Known as Minimum Technical Requirements) Customers must install the supported platforms for the release, which can be found in the Certifications tab on My Oracle Support: https://support.oracle.com. For the EnterpriseOne Orchestrator Studio 9.2.4, refer to the certifications for the JD Edwards EnterpriseOne AIS Server product. For more information about JD Edwards EnterpriseOne minimum technical requirements, see this document on My Oracle Support: JD Edwards EnterpriseOne Minimum Technical Requirements Reference (Doc ID 745831.1). The document is available here: https://support.oracle.com/rs?type=doc&id=745831.1
Note: Orchestrator Studio 9.2.4 is not supported on Internet Explorer (IE).
2.2 Prerequisites Complete the following prerequisites:
■ You must be running a minimum of EnterpriseOne Tools Release 9.2.4. Always apply the latest EnterpriseOne Tools software update to use the latest available features.
■ Deploy the Application Interface Services (AIS) Server 9.2.4.0. The Orchestrator Studio 9.2.4 is deployed along with the AIS Server 9.2.4.0 and can be accessed by using the AIS Server URL. Therefore, the Orchestrator Studio 9.2.4 does not require any other set-up or installation steps. The JD Edwards EnterpriseOne Orchestrator Studio 9.2.4 is installed on AIS Server instance.
Getting Started 2-1 Prerequisites
You can use an existing AIS Server or deploy a new AIS Server 9.2.4.0 instance through the Server Manager for running the orchestrations. It is recommended that you set up two AIS Server instances for an Orchestrator configuration, one for testing orchestrations and one for production. See "Create an Application Interface Services (AIS) Server as a New Managed Instance" in the JD Edwards EnterpriseOne Tools Server Manager Guide. Make sure that the AIS Server is configured with your EnterpriseOne system. You should set up an additional HTML Server instance for processing AIS Server requests only. This is recommended so that the performance of the EnterpriseOne HTML Server that is used by EnterpriseOne web client users is not impacted by AIS Server requests. For more information, see "Additional EnterpriseOne HTML Server Instance for Processing AIS Requests" in the JD Edwards EnterpriseOne Application Interface Services Server Reference Guide.
Note: You will not be able to login to the Orchestrator Studio 7.3 or previous versions with the Application Interface Services (AIS) Server 9.2.4.0 instance. You will be able to login to the Orchestrator Studio 8.0 with AIS 9.2.4.0, but you will be able to create only V2 orchestrations. Orchestrator Studio 8.0 is intended only for maintenance and migration.
■ Ensure that the Orchestration feature is enabled and that all related UDO security is set up properly. For more information, see: – "Managing UDO Feature Security" in the JD Edwards EnterpriseOne Tools Security Administration Guide – "Define Allowed Actions for UDO Types" in the JD Edwards EnterpriseOne Tools Security Administration Guide – Managing Orchestrator Studio Securityin this guide
■ Ensure that the EnterpriseOne HTML Server and AIS Server keystores are set so that both are using either the demo keystore or the same certificate. If you want to configure your own keystore, see "Configuring EnterpriseOne HTML Server for JSON Web Token (JWT) (9.2.3.2)" or "Configuring EnterpriseOne HTML Server for JSON Web Token (JWT) (9.2.0.5)" in the JD Edwards EnterpriseOne Tools Security Administration Guide.
■ Ensure that the HTML Server is configured as a trusted node for the Security Server. See "Setting Up JD Edwards EnterpriseOne Single Sign-On" in the JD Edwards EnterpriseOne Tools Security Administration Guide.
Note: Orchestrator Studio 9.2.4 is the latest version which requires a minimum of EnterpriseOne Tools 9.2.4. For instructions about implementing the prior versions of the Orchestrator Studio, see Chapter 2, "Implementing the Orchestrator Studio" in the JD Edwards EnterpriseOne Orchestrator Guide for Studio Version 8 and Prior.
2-2 JD Edwards EnterpriseOne Tools Orchestrator Guide Set Up a Temporary Directory on the AIS Server for File Transfers
2.3 Before You Begin Orchestrator Studio 9.2.4 access requires a separate sign-in with a valid EnterpriseOne user ID and password. Before users can sign in to Orchestrator Studio 9.2.4, an administrator must add each EnterpriseOne user as an allowed user in Work With User/Role Security. See Managing Orchestrator Studio Security in this guide. Also, orchestrations and orchestration components created in the Orchestrator Studio are saved and managed as user defined objects (UDOs) in EnterpriseOne. Therefore, an administrator must set up Orchestrator Studio users with the proper UDO security to access and use the Orchestrator Studio.
2.4 Accessing the Orchestrator Studio To access the Orchestrator Studio 9.2.4: 1. In a web browser, enter the URL to the Orchestrator Studio: http://
Note: Orchestrator Studio 9.2.4 is not supported on Internet Explorer (IE).
2. On the Orchestrator Studio Sign In screen, enter your EnterpriseOne user credentials, environment, and role.
Note: It is highly recommended that you enter an EnterpriseOne environment that is used for testing, not a production environment.
3. Click the Login button.
2.5 Set Up a Temporary Directory on the AIS Server for File Transfers In the Orchestrator Studio, you can create a connector service request to transfer files in and out of EnterpriseOne. When the Orchestrator executes this type of service request, as part of the process, files are saved to a temporary directory on the AIS Server. You must use Server Manager to set up this directory. In Server Manager, access the basic configuration settings for the AIS Server, and use the Temporary Directory setting to establish this directory.
See Also:
■ Configuring a REST Connector to Invoke a REST Service
■ Configuring a REST Connector to Transfer Files to a REST Service
Getting Started 2-3 Set Up a Temporary Directory on the AIS Server for File Transfers
2-4 JD Edwards EnterpriseOne Tools Orchestrator Guide 3
Designing3 an Orchestration
This chapter contains the following topics:
■ Section 3.1, "Understanding the Orchestration Design Process"
■ Section 3.2, "Identifying the Problem and Solution"
■ Section 3.3, "Identifying the Data for the Orchestration"
■ Section 3.4, "Identifying the Rules for the Orchestration"
■ Section 3.5, "Identifying the Cross Reference and White List Information for the Orchestration"
■ Section 3.6, "Identifying the Service Request Information for the Orchestration"
3.1 Understanding the Orchestration Design Process You might already have a business process in EnterpriseOne that involves manually entering data into EnterpriseOne from a device that collects data. Or you might use a non-EnterpriseOne system to record data from various devices. Or you might not yet understand how data from these devices can be used by JD Edwards EnterpriseOne applications. Because the Orchestrator can accept data from any source that can send a REST call, it does not matter if the data is coming from an IoT device, an external system, or even from another EnterpriseOne application. This chapter uses an IoT device as an example, but regardless of where the input is coming from, your design process is the same. Before you can create an orchestration, you need to perform an analysis to:
■ Identify the problem and the solution.
■ Identify the data that you want to collect.
■ Define the rules and conditions that determine how to process the data.
■ Identify the EnterpriseOne application inputs (fields and grid columns).
■ Identify additional applications in which to work with the data, such as a custom Java application to perform a specific business process or a process for storing the data in another database. You can use a simple worksheet for your analysis or you could use a storyboard, flow chart, or a combination of methods depending on the complexity of your orchestration. Use the information captured from your analysis to configure orchestrations in the Orchestrator Studio as described in .
Designing an Orchestration 3-1 Identifying the Problem and Solution
Example: Company A's Orchestration Design Process Company A used a storyboard as part of their orchestration design process to illustrate the design of a simple orchestration. Figure 3–1 shows an illustration of the overall result of Company A's design process. The remaining sections in this chapter contain additional details about each part of the design process and examples of how Company A identified the information required for the orchestration.
Figure 3–1 Example of an Orchestration Design Process
3.2 Identifying the Problem and Solution Begin the analysis by identifying the problem or the data gap, and then identify how you want to use the data in EnterpriseOne, or in other words, determine which EnterpriseOne business process or transaction you want to invoke.
Example: Company A's Problem and Solution Problem Company A currently uses sensors to detect issues in certain assets to prevent potential breakdowns. Specifically, the company uses vibration and temperature sensors on various pieces of equipment. The data read from the sensors is not tied into their EnterpriseOne system; instead, it is integrated with a third-party software program that an operations manager has to access several times a day to monitor equipment. It would be ideal if the company could eliminate the need to use a disparate software program to manually oversee the performance of its equipment. Solution Company A wants to design a process that uses the EnterpriseOne Condition-Based Maintenance program for monitoring. With the Orchestrator Studio, Company A can create an orchestration with rules and conditions that:
■ Invoke a transaction in EnterpriseOne Condition-Based Maintenance that sends a warning message if vibration or temperature levels are within a certain range above normal operating levels.
■ Invoke a transaction in EnterpriseOne Condition-Based Maintenance that sends an alarm message if vibration or temperature levels exceed a certain level.
3.3 Identifying the Data for the Orchestration After you identify the problem and determine the EnterpriseOne applications or processes that you want to invoke, you need to identify the device data or payload to
3-2 JD Edwards EnterpriseOne Tools Orchestrator Guide Identifying the Cross Reference and White List Information for the Orchestration
use in the orchestration. For example, a reading from a sensor might include a vibration measurement, a temperature measurement, and the date and time of the readings.
Example: Company A's Data Analysis The "Input - Data" area in Figure 3–1 highlights the data that Company A identified for their orchestration.
3.4 Identifying the Rules for the Orchestration Next, identify the rules and conditions to determine how to process data from the sensors. You will use the information from this part of the analysis to create a rule for the orchestration as described in the Creating a Rule section in this guide.
Example: Company A's Rules Analysis In this part of the analysis, Company A identified the following conditions:
■ A vibration reading greater than or equal to 90 and a temperature greater than or equal to 250 will trigger an alarm message.
■ A vibration reading greater than or equal to 30 and a temperature greater than or equal to 520 will trigger an alarm message.
■ A vibration reading greater than or equal to 60 will trigger a warning message.
■ A temperature reading greater than or equal to 350 will trigger a warning message. The "Rules" area in Figure 3–1 shows the rules and conditions that Company A is using to determine which data should be processed by the orchestration.
3.5 Identifying the Cross Reference and White List Information for the Orchestration Identifying cross references involves identifying and mapping each piece of data to a value or data item in an EnterpriseOne form field or grid column. Use the information from this part of the analysis to configure cross references for an orchestration as described in the Creating a Cross Reference section in this guide. Also, in this phase you can decide if you want to incorporate a white list. A white list provides an additional security layer for the orchestration by allowing data from only the devices defined in the white list. See the Creating White Lists section on how to set up a white list.
Example: Company A's Cross Reference Analysis Company A used this phase of the analysis to map the following inputs to EnterpriseOne fields:
Input EnterpriseOne Field sensor ID equipment number|measurement location equipment number warning recipient|alarm recipient
Designing an Orchestration 3-3 Identifying the Service Request Information for the Orchestration
The "Cross Reference" area in Figure 3–1 highlights the cross references Company A is using in the orchestration.
3.6 Identifying the Service Request Information for the Orchestration Next, you need to identify how the data is used to invoke a business process or transaction in EnterpriseOne. This involves identifying the EnterpriseOne applications and inputs including the control IDs for EnterpriseOne buttons, fields, and so forth. You can also determine if you want to use custom Java to execute a custom process or to route data into another database. Use the information gathered from this phase of the analysis to design the service request for the orchestration as described in the Creating a Component section in this guide.
Example: Company A's Service Request Analysis The "Service Request" area in Figure 3–1 highlights the data Company A is using for the service request.
3-4 JD Edwards EnterpriseOne Tools Orchestrator Guide 4
Configuring4 Orchestration Components using Orchestrator Studio 9.2.4
Important: Orchestrator Studio 9.2.4 is the latest version which requires a minimum of EnterpriseOne Tools 9.2.4. If you have not installed Orchestrator Studio 9.2.4, see Getting Started chapter in this guide. For instructions for using prior versions of the Orchestrator Studio, see the JD Edwards EnterpriseOne Orchestrator Guide for Studio Version 8 and Prior.
This chapter describes how to take your orchestration design from analysis to implementation. It contains the following topics:
■ Section 4.1, "Understanding the Orchestrator Studio and Orchestrations"
■ Section 4.2, "Navigating the Orchestrator Studio"
■ Section 4.3, "Creating Service Requests"
■ Section 4.4, "Working with Orchestrator Categories (Release 9.2.4.2)"
■ Section 4.5, "Configuring a Form Request in the Orchestrator Studio"
■ Section 4.6, "Configuring a Data Request"
■ Section 4.7, "Configuring a Report Service Request"
■ Section 4.8, "Configuring a Watchlist Service Request"
■ Section 4.9, "Configuring a Message Request"
■ Section 4.10, "Configuring a Connector Service Request"
■ Section 4.11, "Configuring a Custom Service Request"
■ Section 4.12, "Creating Connection Soft Coding Records for Connector Service Requests"
■ Section 4.13, "Creating Rules"
■ Section 4.14, "Creating Cross References"
■ Section 4.15, "Creating White Lists"
4.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. The JD Edwards EnterpriseOne
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-1 Understanding the Orchestrator Studio and Orchestrations
Orchestrator processes these components when executing an orchestration instance on the AIS Server. Use the Orchestrator Studio to create the following components:
■ Orchestrations. An orchestration is the master component that provides a unique name for an orchestration process. The orchestration is where you define the inputs or the expected incoming data for the orchestration. It also includes orchestration steps, which are invocations to the other components that are described in this list. When the Orchestrator invokes an orchestration, it processes the steps that are defined in the orchestration.
■ Notifications. A notification is a process that can run independent of an orchestration. It enables the system to notify users of business events in real time. The notification can contain boilerplate text and a shortcut to an EnterpriseOne application and can be configured to execute a Watchlist or an orchestration.
■ Form Requests. A service request to perform a business transaction or query data in EnterpriseOne.
■ Data Requests. A service request to retrieve values from an EnterpriseOne table or business view.
■ Reports. A service request to invoke an EnterpriseOne report.
■ Watchlists. A service request to retrieve Watchlist data from EnterpriseOne.
■ Connectors. A service request to invoke a REST service, database, a notification, or another orchestration.
■ Connections. A connector service requests to provide a secure access to external resources, such as a REST service, database, or an orchestration or notification on another EnterpriseOne system
■ Custom Requests. A custom service request to execute a custom process using custom Java or Groovy.
■ Messages. A request to send a message about a transaction to EnterpriseOne users or external users.
■ Rules. A set of conditions against which the input to the orchestration is evaluated to produce a true or false state. A false outcome or a true outcome for a rule can invoke further orchestration steps. You can also nest rules, a process through which an outcome of one rule can invoke a different rule, to produce complex evaluations. You can also use custom Java to define rules.
■ Cross References. A set of data relationships that map third-party values to EnterpriseOne values. For example, a serial number of a device can be cross-referenced to a JD Edwards EnterpriseOne Equipment Number when the device is used in service requests.
■ White Lists. A white list contains an inclusive list of values that are permitted in the orchestration and terminates the orchestration process if the data is not recognized.
■ Schedules. A schedule defines how often the system executes an orchestration or a notification. You can define a schedule by using minutes, hours, days, or a Cron string (for example, every Tuesday at 2:00 pm). You can attach the same schedule to multiple components. Figure 4–1 shows the list of the steps you can add to an orchestration. Each step in an orchestration represents one of the components listed above.
4-2 JD Edwards EnterpriseOne Tools Orchestrator Guide Understanding the Orchestrator Studio and Orchestrations
Figure 4–1 Orchestration Steps in the Orchestrator Studio
4.1.1 Invoking an Orchestration When a new orchestration is saved in the Orchestrator Studio, the name of the orchestration is used to define an endpoint on the AIS Server. The endpoint URL is: http://
4.1.2 Reusable Orchestration Components Orchestration components are reusable. You can include the same component, such as a service request or cross reference, in more than one orchestration. If a component is used as a step in more than one orchestration, you should evaluate how it is used in the other orchestrations before modifying it. To determine if a component is used by other orchestrations, open the design page of the component, and then click About from the Manage drop-down list. A pop-up dialog box is displayed listing the orchestrations where the component is used. When in doubt, use the Save As button to create a new component from an existing one. This functionality enables you to give the component a new name and modify it as necessary, and eliminates the risk of breaking other orchestrations where the component is used.
4.1.3 Orchestrations as User Defined Objects All orchestration components that are created in the Orchestrator Studio are stored as user defined objects (UDOs) in EnterpriseOne. The Orchestrator Studio includes UDO features for creating, sharing, and modifying orchestration components as UDOs. See User Defined Object (UDO) Features in the Orchestrator Studio for a description of the UDO features.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-3 Navigating the Orchestrator Studio
4.2 Navigating the Orchestrator Studio The Orchestrator Studio Home page displays the icons for creating orchestrations and the components that comprise an orchestration. You can hover your mouse over the components and click the info icon to view a description of the component. The orchestration component icons on the Orchestrator Studio Home page take you to the design pages for creating and modifying each orchestration component.
Figure 4–2 Orchestrator Studio Home
The icons at the bottom of the Orchestrator Studio Home page provide links for testing orchestrations, accessing the JD Edwards EnterpriseOne web client, the Scheduler page, Orchestrator Monitor, and importing and exporting orchestration files. When you are in the orchestration or component design pages, you can access these links from the Tools drop-down menu.
■ Testing an Orchestration
■ Importing Orchestration Files in the Orchestrator Studio
■ Exporting Orchestration Components from the Orchestrator Studio
■ Orchestrator Health and Exception Monitoring
■ Working with Scheduler
4.2.1 Orchestrator Studio Features When you click any of the components icons on the Orchestrator Studio Home page, the corresponding component side panel is displayed. Locator link on the top-left of the Orchestrator Studio enables you to keep track of the components you have used to navigate to your current component. You can click the Home page link in the locator
4-4 JD Edwards EnterpriseOne Tools Orchestrator Guide Navigating the Orchestrator Studio link to return to the Orchestrator Studio Home page. When you click on any component in the locator link, the associated design page is displayed. The Orchestrations side panel contain the following features:
■ New button. Create a new component.
■ Restore. Updates the component list so that the changes to component information is reflected. When using the Restore button, value in the Search field value and drop-down selections are preserved.
■ Sort drop-down list. Enables you to sort the components in the component list by name, product code, date, and category. For Connectors, you can also sort by the type of connectors such as Rest, Orchestration, Open API connectors, and so on.
■ Sort Order button. Enables you to sort the components in ascending or descending order.
■ Group toggle. Enables you to group and view the components in the component list by UDO status.
■ Group filter drop-down list. Enables you to view components in the component list by UDO status: Personal, Pending Approval, Rework, Reserved, Shared, or All.
■ Search field. Search for an existing component in the list.
■ Category filter drop-down list. Enables you to search for an existing component with the category label that you have selected. (Release 9.2.4.2) The Category drop-down list displays only the categories that you have assigned to orchestrations or orchestration components. This could be the ones that you selected from the list of category values and the ones that you entered in the Category field on the component design page. (Release 9.2.4.2)
■ Close. Exit the side panel to access the design page.
■ Component list. Displays a list of existing components. For each of the components, the list displays the component name, category, product code, date and time the component was created, and description. The date and time are displayed based on the user's date and time zone settings.
Note: If a component has a product code of 55, the product code value "55" is not displayed in the component list. (Release 9.2.4.2)
The Orchestrations design page contain the following features:
■ Show List. Click to display the component side panel.
■ Name. Name of the component.
■ Description. Description of the component.
■ Long Description. Click the button to provide more detail about the component.
■ Product Code. Select a product code to associate with the component.
■ Version. All orchestrations created in Orchestrator Studio 9.2.4 are saved as version 3 orchestrations. You cannot change this value.
■ Category. Select a category to categorize the orchestration or the orchestration component. You can choose from the available category values or enter a new value in the Category field. (Release 9.2.4.2)
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-5 Navigating the Orchestrator Studio
Category is useful because you can sort, filter, group, and export orchestrations by the category label. Even if you do not have the ability to share the category values, you can still enter a new category and assign it to orchestrations or orchestration components. The category values that you have entered and not shared, do not appear in the Category drop-down list.
Note: The Category drop-down list displays only those categories that have the Category Type Code value selected as "ORCH" in the Category Manager.
■ Share. Click the button if you want to save your category for reuse by others. (Release 9.2.4.2)
Note: You cannot share an existing category.
■ Save. Saves the orchestration component to a status of "Personal."
■ Delete. Deletes a "Personal" UDO.
■ Manage. – Export File. Export the component file to your local machine, which you should use only to inspect the XML of the component. See Exporting Orchestration Components from the Orchestrator Studio in this guide for more information. – Restore. Restore the component to its original state if you made a mistake and do not want to save your changes. – About. Takes you to the About page which provides the type, name, description, group, product code, and object name of the selected component. It also displays a list of the orchestrations along with the object name (UDO ID) where the component is used.
■ Canvas. Provides a graphical representation of an orchestration with all its components. See Working with the Graphical Representation of an Orchestration
4.2.2 User Defined Object (UDO) Features in the Orchestrator Studio Orchestration components are saved and managed as UDOs in EnterpriseOne. The Orchestrator Studio includes UDO options in the Manage drop-down menu that enable you to create orchestration components for your personal use, publish or share orchestration components, and modify shared orchestration components that are created by other users.
Note: The actions that you are allowed to perform in the Orchestrator Studio depend on the UDO security permissions that are granted to you by a system administrator. See Setting Up UDO Security for Orchestrator Studio Users in this guide for more information.
Orchestration components as UDOs enables administrators to use EnterpriseOne administration tools to manage the life cycle of orchestration components. For more
4-6 JD Edwards EnterpriseOne Tools Orchestrator Guide Navigating the Orchestrator Studio
information about the life cycle management of UDOs, see "UDO Life Cycle and Statuses" in the JD Edwards EnterpriseOne Tools Using and Approving User Defined Objects Guide. The following table describes the UDO options in the Manage drop-down list of the Orchestrator Studio design pages and the life cycle status enacted by each UDO action.
Table 4–1 Description of UDO Features in Orchestrator Studio Design Pages UDO Options Description Save As Saves the orchestration component to a status of "Personal." Components with a status of "Personal" are components that are being developed and have not been shared for publishing to the AIS Server. Request to Publish Sends the orchestration component for approval for sharing. An administrator or approver must approve the component so that it can be shared. The component status changes to "Pending Approval" in the component list and then changes to "Shared" when the component is approved. If rejected, the status changes to "Rework." At that point, you can edit the component and then use the Request to Publish button to send it for approval again. Reserve Reserves a shared UDO so that you can modify it. When reserved, no other users can make changes to a UDO. The component status changes to "Reserved." Unreserve Cancels the reserved component. This action changes the status of the component back to "Shared." Notes Available when the component is in the "Pending Approval" status, this option enables you to add an additional note to send to the approver of the UDO. The Notes option is active only if a note was added the first time the UDO was sent for approval using the "Request to Publish" option. This feature enables you to add an addendum to the original note.
4.2.3 Working with the Graphical Representation of an Orchestration The following figure provides a graphical representation of an orchestration with all its components. The orchestration is represented in a flowchart enabling you to easily understand the orchestration flow. Each component in the orchestration is represented by a unique icon.
Figure 4–3 Orchestrations Page
The canvas includes the following features:
■ Zoom to Fit
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-7 Navigating the Orchestrator Studio
The Zoom to Fit icon in the upper-left corner of the canvas enables you to view the entire graphical representation in the window. This functionality helps users to view complex orchestrations that contain multiple components. Alternatively, you can double-click the canvas to fit the entire orchestration flow within the graphic area. This option positions the orchestration flow in the center of the canvas.
■ Zoom in or Zoom out The Zoom in or Zoom out icons in the canvas enable you to zoom in to get a close-up view of the orchestration or zoom out to view the orchestration in reduced size.
■ Start and End Steps Start and End are the pseudo steps that are not part of the orchestration but enable you to add components in between them. When you click the Start node in the orchestration flow, action control icons are displayed at the top of the Start node. The following figure shows the action control items that are displayed when you click the Start node.
Figure 4–4 Start Node
– Run Orchestration. Takes you to the Run Orchestrations page to test only the current orchestration. You can click the Run Orchestrations icon on the Orchestrator Studio Home page to test all the other personal or shared orchestrations. – Inputs and Values. Opens Inputs and Values dialog box to add inputs that the orchestration consumes from a calling custom program, a third-party application, or a Cloud service. – Schedule. Takes you to the Schedule page to assign a schedule to the orchestration. In the figure below, a Schedule icon on the Start node indicates that the orchestration has an attached schedule.
Figure 4–5 Schedule
When you click the End icon in the orchestration flow, the following action control icon is displayed at the top of the End node: – Orchestration Outputs. Takes you to the Orchestration Output page to validate the fields that contain the data you want returned in the orchestration output for output mapping.
4-8 JD Edwards EnterpriseOne Tools Orchestrator Guide Navigating the Orchestrator Studio
The following figure shows the action control item that are displayed when you click the End node.
Figure 4–6 End Node
■ Informational hover help Hover your mouse over a component in the graphical area to view information about the component. You can find the type of component, component name, description, and product code. Depending on the type of component, you can view other details such as match criteria for a rule and subject and body details for a message.
■ Action control items When you click a box that represents a component, the action control icons are displayed at the top of the box. You can use these action control icons to map a step, edit component, configure transformation, and define error handling. The following figure shows the action control items that are displayed when you click the any box representing a component in an orchestration.
Figure 4–7 Action Control Icons
– Choose Step. Takes you to the component side panel dialog box to choose the component that you want to add to the orchestration flow. The component side panel dialog box displays only those items that are related to the component that you have chosen to include. You can also create a new component item from this dialog box. Broken mapping is indicated by icon on the component box. – Edit. Takes you to the design page for modifying a particular component. Alternatively, you can double-click the box representing a component to access the design page for editing the component. – Transformations. Map orchestration inputs to inputs that are defined in each orchestration component. The following example shows the Iterate Over icon on the box that represents a component in the orchestration. The Iterate Over icon indicates that you want to pass a data set that is retrieved from a form request or data request to a subsequent orchestration step. See Passing a Data Set to a Subsequent Orchestration Step for more information.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-9 Creating Service Requests
Figure 4–8 Iterate
– Error Handling. Set up error handling for each orchestration component. Broken mapping is indicated by icon on the component box. A broken mapping can exist in Transformations and Error Handling. When you open the Transformations and the Error Handling dialog boxes, the Broken Mapping icon is displayed against the rows where the break exists.
■ Design Mode – Add icon. Click the Design Mode button to add components to the orchestration by clicking the plus sign (+) in the orchestration path.
Figure 4–9 Design Mode
Alternatively, you can double-click the arrow in the orchestration path to add a component to the orchestration. – Remove Step. Removes the component from the orchestration. – Cut Element. Move component within an orchestration. You can paste the component at any location within the orchestration by clicking the Paste Element icon displayed in the orchestration path.
4.3 Creating Service Requests This section contains the following topics:
■ Understanding Service Requests
■ Creating a Component
4.3.1 Understanding Service Requests A service request provides the instructions that enable an orchestration to carry out a particular task. You can create the following types of service requests in the Orchestrator Studio:
■ Form Request A form request contains the instructions for the orchestration to perform a particular business transaction in EnterpriseOne.
■ Data Request Use a data request in an orchestration to query and retrieve values from an EnterpriseOne table or business view. You can also configure a data request to perform an aggregation on data to return aggregate amounts.
4-10 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Service Requests
■ Message Use a message request if you want an orchestration to send a message to an external email address (requires an SMTP server) or to EnterpriseOne users through the EnterpriseOne Work Center.
■ Connector Use a connector request to invoke an orchestration, a notification, a REST service or a database. A connector can invoke a local orchestration or an orchestration on another AIS Server, such as an AIS Server on another EnterpriseOne system in a multisite operation. Also, you can configure a connector to use FTP or a REST call to transfer report output or other files to an external server.
■ Custom Request Use custom Java or Groovy to execute a custom process.
■ Watchlist Use a Watchlist service request to use the information from Watchlists, such as critical or warning states, threshold levels, and number of records, within an orchestration.
■ Report Use a report request to invoke a batch version of a report 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 for more information.
4.3.2 Creating a Component You can use the Orchestrator Studio to create service requests such as form requests, data requests, connectors, and so on along with other components such as connections, white list, rules. 1. On the Orchestrator Studio Home page, click the icon for the type of component that you want to create: Form Requests Data Requests Reports Watchlists Connectors Connections Custom Requests Messages Rules Cross References White Lists Schedules The Orchestrator Studio displays the component side panel.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-11 Creating Service Requests
2. On the component side panel, click New. Alternatively, access the Orchestration in design mode and click the plus icon(+) to add a component to an orchestration. Select the component type that you want to create from the New Step Type list and then click the New button. 3. On the component design page, complete these fields: 1. Name. Enter a name for the component. Do not include special characters in the name. 2. Short description field. Enter a description with a maximum of 200 characters. This description will appear below the component name in the component list. 3. (Optional) Click Long Description to provide additional details about the purpose of the components. 4. Product Code. Click the Product Code drop-down list to select a product code to associate with the component. Adding a product code enables the administrator to manage UDO security for orchestration components by product code. 4. With Release 9.2.4.2, you can enter a category for the orchestrations or the orchestration components. The Category drop-down list displays the orchestrator categories if any exist. You can choose from the available categories or enter a new value in the Category field. Using the Category feature, you can sort, filter, group, and export orchestrations by a category label.
Important: To obtain the Category feature, you must download the Tools 9.2.3.3 electronic software update (ESU).
Notes:
■ - The Orchestrator Studio supports only those categories that have the Category Type Code value as "ORCH" in the Category Manager.
■ - As Connections are not user defined objects, you cannot add Categories for Orchestrator Connections.
5. Click the Share button if you want to save your orchestrator category for reuse by others. After you click the Share button, a record is created in the Category Manager with the Category Type Code value as "ORCH".
Note: The Share button is available only if an administrator has given you the permission to add values in the Category Manager application (P980058). If you cannot access the Share button, you can only use the existing orchestrator categories. For more information on Category Manager, see Working with Categories in this guide.
6. Click Save.
4-12 JD Edwards EnterpriseOne Tools Orchestrator Guide Working with Orchestrator Categories (Release 9.2.4.2)
A new component is saved, for the first time as a "Personal" UDO. After configuring the component, you can use the UDO options that are described in the User Defined Object (UDO) Features in the Orchestrator Studio section to move the component to the appropriate status.
4.4 Working with Orchestrator Categories (Release 9.2.4.2) The Category Manager (P980058) application enables you to view, add, edit, and delete orchestrator categories. You can attach these categories to orchestrations and the orchestration components to group orchestrations with a common purpose or business goal. Orchestrator categories are those records that have the Category Type Code value selected as "ORCH" in the Category Manager. The orchestrator categories created in Category Manager appear in a drop-down list in the orchestration component design page and are available for use. In the component design page, you can also create orchestrator categories on the fly and share them for reuse by other users. The Category drop-down list displays only those categories that have Category Type Code as "ORCH". For more information on adding categories in the component design page, see Creating a Component.
Note: Use action security to disable a user's ability to add categories in both the Category Manager and the orchestration component design page. If you disable the ability to add categories in Category Manager, the Share button will not appear in the component design page.
4.4.1 Working with Categories Use Category Manager to view, add, update, or delete orchestrator categories. Category Manager can be accessed from the navigator menu by selecting EnterpriseOne menus, EnterpriseOne Life Cycle Tools, and then Orchestrator Management.
Note: Categories will be available only if you have downloaded the Tools 9.2.3.3 ESU, and table and application are available.
Adding a Category To add a category: 1. In Category Manager, select Add. 2. In the grid, provide values for the following columns in the first row:
■ Category. Required. Enter a description of the category. This field is case-sensitive.
■ Category Type. Required. For orchestrations and its components, use ORCH.
■ Language Code. This is an optional field. Repeat these steps to add multiple categories. 3. Click OK.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-13 Configuring a Form Request in the Orchestrator Studio
Updating a Category To update a category: 1. In Category Manager, use the header fields or QBE line to find the category you want to update. 2. Select Find. 3. Place a checkmark in the row header of the category that you want to update and click Select. 4. Make the updates and click OK.
Deleting a Category To delete a category: 1. In Category Manager, use the header fields or QBE line to find the category you want to update. 2. Select Find. 3. Select the row for the category that you want to delete. 4. Select Delete and click OK to confirm that you want to delete the selected item.
4.5 Configuring a Form Request in the Orchestrator Studio A form request contains the instructions for the orchestration to perform a particular business process or transaction in EnterpriseOne. Create the form request as described in Creating a Component, and then perform these tasks:
■ Loading EnterpriseOne Application Form Fields and Controls
■ Configuring Form Request Actions
■ Configuring the Order of Execution
■ Populating Multiple Grids with Repeating Inputs (Optional)
■ Creating a Form Request with the JD Edwards EnterpriseOne Orchestrator Process Recorder
Recommended: Instead of using the Orchestrator Studio to create a form request, use the JD Edwards EnterpriseOne Orchestrator Process Recorder. You can access the Process Recorder in EnterpriseOne and record each step or action that you want the form request to perform, which the Process Recorder then saves as a form request. See Creating a Form Request with the JD Edwards EnterpriseOne Orchestrator Process Recorder.
4.5.1 Loading EnterpriseOne Application Form Fields and Controls 1. Click the First button and then complete the following fields in the pop-up window:
■ Application. Enter the application ID.
■ Form. Click the drop-down list to select the form.
■ Version. Enter the version ID.
4-14 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Form Request in the Orchestrator Studio
If you leave the Version field blank, the Orchestrator will use the default version while executing the form request. Leaving the version field blank with the Application Stack option selected enables you to pass in the version from an orchestration input. This enables you to configure an orchestration that includes rules with conditions so that clients can call different versions dynamically. You can define a version in the form request and still override the version. When adding a form request to an orchestration, you can select the version variable that is available in the list of transformations. This is applicable to form requests with the Application Stack option selected. When you add the form request to an orchestration, click the Add Inputs to Orchestration button to add the variable that represents the version to the Orchestration Inputs area. The variable is displayed with the application ID followed by _Version, for example P03013_Version.
■ Form Mode. Click the Form Mode drop-down list and select the appropriate form mode: Add, Update,orInquiry. At runtime, the controls that appear on an EnterpriseOne form may be dependent on the form mode as specified in the Form Design Aid (FDA). The form mode ensures that you can see all of the form controls in the Orchestrator Studio that are available in the form at runtime.
■ Bypass Form Processing in Studio. This option enables the form request to ignore event rules when loading the form fields and controls in the Available Actions grid. For example, some forms have event rules to perform a find action on entry or to hide certain fields. These actions can cause the load to fail or prevent certain fields from loading in the Available Actions grid.
■ Query Name. From this drop-down list, you can select a predefined query to use for the filtering criteria. You can use a query instead of or in combination with the filtering criteria that are defined in a form request. The queries that you can see in this list are based on UDO security permissions.
■ Stop on Warning. Enable this option if you want the processing to stop if the invoked EnterpriseOne form generates a "Warning" message. Keep this option disabled if you want processing to continue after a warning message.
■ Run Form Service Request Event This option enables you to configure whether the Form Service Request Event runs when the form is executed from an orchestration. Form Service Request Event is an form design aid (FDA) event that is executed only when an application is run through a form service request from the AIS server.
■ Turbo Mode. Use this option to reduce processing time of form requests. See "Using Turbo Mode" in the JD Edwards EnterpriseOne Application Interface Services Client Java API Developer's Guide for more information. 2. Click the Save and Load button. The Orchestrator Studio loads the controls and the fields in the grid. The name of the form is displayed above the Order of Execution grid. 3. Click the Form Request Options button and select the following options as appropriate:
■ Application Stack. Application stack processing enables the form request to establish a session for a specific application and maintain the session across calls. With application stack processing, the form request can invoke multiple
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-15 Configuring a Form Request in the Orchestrator Studio
forms in different applications to complete a business process. Without application stack processing, each form in the form request is opened independently. If you use the Application Stack option, you must configure the form request with the actions to navigate between forms. Without this navigation, additional forms will not be called. The other considerations when selecting values to be returned from forms in an Application Stack are described in Configuring Form Request Actions.
■ Return Data From All Forms. Enabled by default. This option specifies whether to return data from all the forms or just the last form.
■ Run Synchronously. Enabled by default, this ensures that the form request completes all actions before the Orchestrator executes the next step in the orchestration. This option also ensures that the events in the EnterpriseOne application are run synchronously. This option is recommended if there are steps that follow the form request in the orchestration or if you configure the form request to return a response.
Caution: If the form request involves invoking a control that launches an asynchronous report or any long running process, it is possible that the Orchestrator could time out if Run Synchronously is enabled.
You can access more options for configuration. You can configure settings that control how the AIS Server processes a form request in an orchestration at runtime. These options determine how the form request will be processed. See Configuring Form Request and Data Request Processingfor more information. The Orchestrator Studio loads the controls and the fields in the Available Actions grid. The name of the form is displayed above the Order of Execution grid. If a form request needs to invoke more than one application to complete the desired task, you can load controls and fields for additional application forms. You can use the Add Form controls such as First, Before, After, and Last to place the additional application forms according your requirement. You can remove the form by clicking the Delete Form icon (X sign).
4.5.2 Configuring Form Request Actions The Available Actions area is where you specify the EnterpriseOne fields and controls that are used to perform the desired business transaction in EnterpriseOne. Use the following features to configure the actions in the form request. After configuring each action, click the Add Action button at the end of each row to add the action to the Order of Execution area.
■ Description (informational only) This column displays the controls and the fields for each form in a collapsible or expandable parent that is 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 available columns in a grid.
■ ID (informational only)
4-16 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Form Request in the Orchestrator Studio
This column displays the ID of the control or the field in EnterpriseOne.
■ Return Enable Return for 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. Return values may be used by customized third-party gateway programs or devices to perform further processing based on the values that are returned from EnterpriseOne applications. When you select a value to be returned, a Return Form Data action is added to the order of execution. Ensure that this action follows the steps that are needed to populate the returned fields in the form, and make sure that this action occurs before an action that clears the data or moves to another page. Only one Return action is allowed per form when configuring a form request in the Orchestrator Studio. If you need the orchestration to return more than one value at different times on the same form, add the same form twice to the form request, configuring the additional return values in the second form. In this scenario, it is recommended to use the Process Recorder, where you can select multiple values to return from any form in the process.
■ Variable In each row, the Variable column is editable only if Return is enabled. Use this column to enter a variable name for the return value. When you add the form request to an orchestration, the variable name appears in the orchestration inputs grid. As a result, the returned value is available for mapping to the subsequent steps in the orchestration. You can also use this field to retrieve a data set from an application grid. See Retrieving and Passing Data Sets in an Orchestration for more information.
■ Select All Rows (row) Add this action to select all rows in a grid. Use this action if the form has a button to perform an action on all the selected grid grows. For example, if you want to update the PO status for all rows in a grid, add this action to the Order of Execution area and then configure the next action to update the PO status.
■ Select Row (row) Add this action if the form requires selecting a row in a grid to perform a particular action. In the Order of Execution table, you can enter a variable in the Input column of this row. This action enables you to map an orchestration input to this variable. Alternatively, you can enter a value in the Default Value column to select a specific row. To select the first row in the grid, add Select Row and leave these columns blank or set the Default Value to 1 when adding this action to the Order of Execution.
■ Row Number for Update (row) If the task requires updating a particular row in an editable grid, then map the appropriate input value that contains the row number to the Row Number for Update row, or specify the row number in the Default Value column. Do not use this action if the transaction involves adding rows to a grid.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-17 Configuring a Form Request in the Orchestrator Studio
4.5.3 Configuring the Order of Execution After actions are added to the Order of Execution grid, you can reorder them by dragging and dropping the rows. You can also delete actions using the Delete (X) button. You can enter or modify values in the Input and Default Value columns in the Order of Execution area. Use the following features to configure the order in which the actions have to be executed.
■ Input This is an editable column for identifying the inputs to the form request. For each field to which you want to map an orchestration input, enter a variable name in the Input column. When you add this form request to an orchestration, you map the orchestration input to this variable. Instead of a mapped variable, you can enter a literal value in the Default Value column. You can also combine input values into a text string for an input into an EnterpriseOne field. For example, you can create a text string such as "Temp was ${0} at ${1}" that contains input values for temperature and time. You can also use this column to populate multiple rows in multiple grids. See Populating Multiple Grids with Repeating Inputs (Optional) for more information.
■ Default Value For an editable field to which you want to map an input, use this column to enter a default value. You can also add a default value to use if the mapped value returns a null. For a check box or a radio button, you can enable (slide the button to right) it to include it. If there are multiple radio buttons grouped together 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. For a check box and radio button, you can set an input variable in addition to the default value. For a combo box control (a list of items in a drop-down menu), the Orchestrator Studio displays a drop-down menu in the Default Value column in which you can select the appropriate item from the menu.
■ Edit Returns (left arrow icon in the Action column) Use this feature to view and edit all the return values. You can also use this feature to retrieve data from "hidden" fields or grid columns that are not displayed in the Available Actions area. Hidden fields appear only after a particular action in a form. In the EnterpriseOne web client, use the field-level help (Item Help or F1 key) to identify the control IDs for the hidden fields and the grid columns. The control ID (AIS Id) is displayed in the Advanced Options section in the help pop-up window. To edit the existing return values and retrieve a hidden field: 1. In the Order of Execution area, in the Return Form Data row, click the left arrow in the Action column. A dialog box appears displaying the control IDs, description, and associated variable names of any return field that is already selected in the Available Actions area. You can add a variable name in the Value column for an existing retuned value and also remove a retuned value.
4-18 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Form Request in the Orchestrator Studio
2. Enter the control ID of the hidden field in the ID field. Optionally, you can enter a variable name to represent the return value in the associated Variable field. For multiple controls, use the Add button to add more controls, making sure that the order of the values matches in each field. You must enter a variable name for the return value if you want the return value to appear in the orchestration inputs list in the orchestration. 3. Click OK.
4.5.4 Populating Multiple Grids with Repeating Inputs (Optional) You can configure a form request to map repeating inputs into one or more grids. When you add mappings to a grid to the Form Request, a grid level grouping is created with a default value of GridData in Input column of the Order of Execution table. This value is the array name that can be used to associate a set of repeating inputs to the grid. If you need to populate more than one grid in an orchestration, change this value for each grid to distinguish the grids.
4.5.5 Creating a Form Request with the JD Edwards EnterpriseOne Orchestrator Process Recorder The JD Edwards EnterpriseOne Orchestrator Process Recorder enables you to record a series of actions in EnterpriseOne and save those actions as a new form request. This simplified method to create a form request is an alternative to manually creating a form request in the Orchestrator Studio. After launching and starting the Process Recorder in EnterpriseOne, you access an application and perform each of the steps to complete the business process or transaction that you want the form request to perform. The Process Recorder automatically adds inputs to the form request for each field in which you enter data during the recording. The input is the name of the field, and the data you enter becomes the default value. For example, if you click a field called Customer Number and enter 1001, the Process Recorder records an input called Customer Number with a default value of 1001. You can delete, change, or replace the value with a variable by editing the form request in Orchestrator Studio. Starting with EnterpriseOne Tool 9.2.4, if an application contains versions, the Process Recorder saves the versions and displays it against the form in a Form Request. When finished, on the last form, you can select any of the controls or grid columns on the form that contain values that you want the form request to return. You can select return values from any form while recording the form request. After you save the form request in the Process Recorder, you can open the form request in the Orchestrator Studio, modify it as necessary, and add it to an orchestration. If you have an open Orchestrator Studio session, you can click the Refresh Cache button on the Run Orchestrations page to access the form requests.
4.5.5.1 Rules for Creating a Form Request in the Process Recorder When using the Process Recorder to create a form request, follow these rules:
■ Start the recording and then launch the first application from the carousel, Favorites, a link on an EnterpriseOne page, or Fast Path. Or you can open an
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-19 Configuring a Form Request in the Orchestrator Studio
application and then start the recording before performing the first action in a form. You cannot start recording after performing an action in an EnterpriseOne application.
■ If the process involves adding multiple records, perform only the steps to add a single record. Later, when you add the form request to an orchestration, you can use the Iterate Over feature in the Orchestrator Studio to configure the form request to add multiple records.
■ Some business processes entail using forms in more than one application. You can record this as long as you access the other forms from a Form or Row menu. However, you cannot return to the EnterpriseOne home page and launch another application. If the business process requires launching a second application from the EnterpriseOne home page, then record it as a separate form request.
■ When recording a process in the Process Recorder, each transaction is saved in EnterpriseOne just as it would be if you were not using the Process Recorder. To ensure that you do not sully production data, it is highly recommended that you use the Process Recorder in an EnterpriseOne test environment. If recording in a production environment, delete any transactions that were created while using the Process Recorder.
4.5.5.2 Prerequisites The Process Recorder is disabled by default. To make it available in EnterpriseOne, a system administrator must enable both of the following security types:
■ UDO feature security. A system administrator must enable the RECORDER feature in UDO feature security. See "Managing UDO Feature Security" in the JD Edwards EnterpriseOne Tools Security Administration Guide.
■ UDO action security. A form request is a type of service request, and service requests are saved and managed as a user defined objects (UDOs) in EnterpriseOne. Therefore, users must be authorized to create service requests through UDO action security before they can access and use the Process Recorder to create a form request. See "Managing UDO Action Security" in the JD Edwards EnterpriseOne Tools Security Administration Guide.
4.5.5.3 Using the Process Recorder to Create a Form Request 1. On the EnterpriseOne home page, click the user drop-down menu in the upper right corner and select Record a Process. 2. In the Process Recorder pop-up box, click Start to start the recording. 3. Access the first application from the carousel, Favorites, a link on an EnterpriseOne page, or Fast Path. EnterpriseOne highlights the application title bar and application tab in the carousel (if enabled) of the application that is being recorded. 4. Perform each of the steps to complete the business process or transaction that you want the form request to perform. When you enter a value in a field, the Process Recorder automatically records the field name as an input and the data that you enter as a default value. Later, you can change the name of the input and delete or change the default value by editing the form request in Orchestrator Studio.
4-20 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Data Request
Important: If you return to the EnterpriseOne home page or try launching a separate application from the Carousel while recording, the Process Recorder pauses the recording and will not record those steps. To resume the recording, click the Paused button and the Process Recorder will resume recording, returning you to the point in the process in which you initially paused the recording.
5. If you want the form request to return values from the form that you are on: a. Click Return Values. b. Click the controls and columns that contain values you want returned. If you add a control or column by mistake, click it again to remove it from the list. c. Click Resume to continue recording the next steps in the process. When you access the last form in the process and want the form request to return values from all controls and columns on the last form, leave the Return Controls and Return Columns field blank. 6. After performing the final step, click Stop. If you stopped the recording prematurely, click Cancel, and then continue to record the remaining actions. To discard the process and start over, click Discard. 7. To complete the recording, enter a name, product code, and description for the form request. 8. Click Save. If you need to modify the form request, see Configuring a Form Request in the Orchestrator Studio. To add it to an orchestration, see Adding Steps to an Orchestration.
4.6 Configuring a Data Request This section contains the following topics:
■ Understanding Data Request
■ Configuring a Data Request to Return Field Data
■ Configuring a Data Request with Data Aggregation
■ Viewing and Copying JSON Code of a Data Request
■ Configuring Form Request and Data Request Processing
4.6.1 Understanding Data Request You can configure a data request to:
■ Query and return data from an EnterpriseOne table or business view.
■ Perform an aggregation of data from a table or a business view and return aggregate amounts. In a standard data request that returns data directly from a table or business view, you can use define variables for one or more of the return fields. In a data request that performs an aggregation, you can use define variables for the "group by" fields and the returned aggregate amounts.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-21 Configuring a Data Request
When you add a data request to an orchestration, all the defined fields are automatically added to the orchestration as inputs. As a result, you can map the returned data to subsequent steps in an orchestration.
Important: Variables are only supported in the first row of a response. If a query contains multiple rows, only the values from the first row will be available as variables.
4.6.2 Configuring a Data Request to Return Field Data A data request includes filtering criteria and indicates the fields that contain data that you want returned. For example, a business analyst wants to add a data request to an orchestration that returns a customer's credit limit amount. The orchestration has "Customer Number" defined as an input. To configure the data request, the business analyst:
■ Sets up filter criteria with a condition that filters on Address Number.
■ Selects the Credit Limit and Alpha Name fields for the return data.
■ Adds the data request to the orchestration, mapping the Customer Number input in the orchestration to the Address Number in the data request. When the data request is added to the orchestration, the Credit Limit and Alpha Name fields automatically become additional inputs to the orchestration, and the business analyst can then map these inputs to the subsequent orchestration steps.
■ In order to have the returned values be available in subsequent steps of an orchestration, the Variable column for each of the return value in the Return Fields and Variable Names grid must be populated. Otherwise, the return value is just available for mapping in the orchestration outputs, but not available as an input. To configure a data request to return field data: 1. On the Orchestrator Studio Home page, click the Data Requests icon. 2. Create a data request as described in Creating a Component. 3. On the Data Request design page, in the Table/View Name field, enter the name of the table or the business view. If you do not know the table or business view name, but you know the application that uses the table or business view, click the Get View from Form button. In the dialog box that is displayed, enter the application ID and select the form. The associated business view is then retrieved and displayed in the Table/View Name grid. 4. Click the Load button. The Orchestrator Studio loads all the fields from the table or business view into the grid.
Note: You can use the Data Set Variable Name field to configure the data request to return a data set. See Retrieving and Passing Data Sets in an Orchestration for more information.
5. Define the filtering criteria for the data request: a. In the grid on the left, click the Filter icon next to the field or fields that contain data on which you want to filter on.
4-22 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Data Request
The Orchestrator Studio displays each field in the Filter Criteria area on the right. b. In the Filter Criteria section, for each field in the Operator box, select the appropriate operand and in the adjacent field, enter a literal value or a variable. 1. A variable appears in the field by default. If you modify the variable name, make sure that the syntax includes the $ sign and braces, for example: ${Address Number 1} If you do not enter a variable using ${}, the literal value that you enter will be used directly in the filter criteria. 2. If the field is a date, you can use the drop-down arrow at the end of the row to set a special value, such as today plus or minus the number of days, months, or years that you specify. If you want to add multiple values for date, select the "is in list" operator and click the List button in the Values column. Then click Add and set the value. c. Select the Match All or Match Any option to determine how the conditions are applied. You can also click the Options button, and from the Query Name drop-down list, select a predefined query to use for the filtering criteria. You can use a query instead of or in combination with the filtering criteria that are defined in a data request. The queries that you can see in this list are based on UDO security permissions. 6. Specify the data you want returned: a. In the grid on the left, click the Return icon next to each field for which you want data to be returned. The Orchestrator Studio adds each field to the Return Fields and Variable Names section on the right. b. (Optional) You can use a variable for the return by entering a name for the variable in the adjacent blank field.
Note: Return variables do not need the ${} notation. This notation is only necessary for input variables to distinguish between a variable and a literal value.
When you add a data request to an orchestration, these variables are automatically added to the orchestration as inputs, which you can use to map return data to subsequent orchestration steps. 7. For the return data, determine the order by which you want the data returned: a. In the grid on the left, select the Order By icon next to any field that was selected for the return data. The Orchestrator Studio adds the field name to the Order By area on the right. b. In the drop-down list next to the field name, select Ascending or Descending. You can use the Options button to configure settings that control how the AIS Server processes a data request at runtime. See Configuring Form Request and Data Request Processing.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-23 Configuring a Data Request
4.6.3 Configuring a Data Request with Data Aggregation To configure a data request to return aggregate amounts: 1. On the Orchestrator Studio Home page, click the Data Requests icon. 2. Create a data request as described in Creating a Component 3. On the Data Request design page, in the Table/View Name field, enter the name of the table or business view. If you do not know the table or business view name, click the Get View from Form button and enter the application and form ID to load all the fields from the primary business view that is associated with the form. 4. Click the Load button. The Orchestrator Studio loads all the fields from the table or the business view into the grid. 5. Slide the Aggregation toggle to the right. This step enables the aggregation features in the grid to the left.
Note: You can use the Data Set Variable Name field to configure the data request to return a data set. See Retrieving and Passing Data Sets in an Orchestration for more information.
6. Click the Filter icon next to the fields that contain the data on which you want to filter on. The Orchestrator Studio displays each field in the Filter Criteria area on the right. 7. Set up conditions for filtering data: 1. For each field in the Filter Criteria area, select the appropriate operand and in the adjacent field, enter a literal value or a variable. A variable appears in the field by default. You can modify the variable name, but you must use the $ sign and braces in the syntax, for example: ${Address Number 1} If the field is a date, you can use the drop-down arrow to set a special value, such as today plus or minus the number of days, months, or years that you specify. 2. Select the Match All or Match Any option to determine how the conditions are applied. You can also select the Options button, and from the Query Name drop-down list, select a predefined query to use for the filtering criteria. You can use a query instead of or in combination with the filtering criteria that are defined in a data request. The queries that you can see in this list are based on UDO security permissions. 8. Click the Aggregate icon next to the fields that contain the data for the aggregation. 9. In the pop-up window, select the type of aggregation that you want to perform. The aggregation options that are displayed depend on whether the field contains a numeric value or a string.
4-24 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Data Request
10. (Optional) In the Aggregations section, slide the toggle button to right if you want the response to include a count of the records that are returned. To use the returned count in a subsequent orchestration step, enter a variable name in the adjacent field. 11. (Optional) Use the following features in the grid to the left to further define the data aggregation:
■ Having icon. Click this icon next to a field for which you want to provide additional filtering criteria on an aggregation. The Orchestrator Studio displays the field in the Having section on the right. a. Click the drop-down list next to the field and select the operand. b. In the adjacent field, enter a default value or variable.
■ Group By icon. Click this icon next to any field that you want the aggregate results grouped by. In the "Group By and Variable Name" section on the right, you can enter a variable name. Using the Group By option may result in multiple rows being returned, one for each unique combination of a group. For example, you might want the system to return the total orders for an entire year for customers, and group the results by customer. In this case, the data request response will return a unique row for each customer with the customer's total orders for the year.
Note: When Data Set Variable Name is not used, the variables are only supported in the first row of a response. If Data Set Variable Name is populated, these variables are used to reference the individual columns within the array If a query contains multiple rows, only the values from the first row will be available as variables.
■ Order By icon. For any field that is used for aggregation of return data or for group by action on return data, click this icon to arrange return data in ascending or descending order. You can use the Options button to configure the settings that control how the AIS Server processes a data request at runtime. See Configuring Form Request and Data Request Processing.
4.6.4 Viewing and Copying JSON Code of a Data Request After configuring a data request, you can click the Preview button to view and copy the JSON code for a data request. Developers can use this code to develop AIS client applications that can make data request calls directly to the AIS Server rather than through an orchestration. See the JD Edwards EnterpriseOne Application Interface Services Client Java API Developer's Guide for more information.
4.6.5 Configuring Form Request and Data Request Processing In the Orchestrator Studio, you can configure settings that control how the AIS Server processes a form request or a data request in an orchestration at runtime. For form requests, these settings are available from the Form Request Options button on the Form Requests design page.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-25 Configuring a Data Request
For data requests, these settings are available from the Options button on the Data Requests design page.
4.6.5.1 Page Size Considerations You can use page size for data services and form services (application stack) to indicate the number of records that the AIS Server fetches at a time through the HTML Server. Using this functionality may help when the data or form request expects a large data set. The data request or the form request, instead of requesting all of the records in a single operation, can request a chunk at a time, store (buffer) the record on the AIS Server, and then return the complete set of records in the response to the caller. For a form service, it is important to consider where to place the "Return Form Data" action when you want the orchestration to return grid data. If your application stack contains multiple forms with grids, and you want to use the paging option to return all the data for a grid, you must place the "Return Form Data" action after the Find action.
Note: It is unnecessary to use the paging setting if you do not expect to get large numbers of records or have not had any issues in getting large record sets. While this setting helps with the large data sets, it may slow down requests for smaller data sets. A request that works fine to return 1000 records in one response would run much slower if the page size is set to 100. The slowdown is because the request would be executing ten times the number of AIS to HTML server communications.
4.6.5.2 Processing Settings The settings include:
■ Application Stack. Application stack processing enables the form request to establish a session for a specific application and maintain the session across calls. With application stack processing, the form request can invoke multiple forms in different applications to complete a business process. Without application stack processing, each form in the form request is opened independently. If you use the Application Stack option, you must configure the form request with the actions to navigate between forms. Without this navigation, additional forms will not be called. The other considerations when selecting values to return from forms in an Application Stack, are described in Configuring Form Request Actions.
■ Return Data From All Forms. Enabled by default if Application Stack is not enabled. This option specifies whether to return data from all forms or just the last form.
■ Run Synchronously. Enabled by default, this option ensures that the form request completes all actions before the Orchestrator executes the next step in the orchestration. This option also ensures that the events in the EnterpriseOne application are run synchronously. This option is recommended if there are steps that follow the form request in the orchestration or if you configure the form request to return a response.
Important: If the form request involves invoking a control that launches an asynchronous report or any long running process, the Orchestrator could time out if Run Synchronously is enabled.
4-26 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Data Request
■ Maximum Records. 0 is for All Records.
■ Page Size. 0 is for Disabled. For a form request, page size is only available if the form request is defined as an application stack. The page size value works directly with the max records value:
Table 4–2 Max Records Page Size Behavior 0 - All records 0 - Paging is off System will attempt to get all records in one request. 0 - All records >0 - Size of page System will attempt to get records in defined sections for the defined page size until it gets all records. >0 - Set number of 0 - Paging is off System will attempt to get the max records number of records defined in one request. >0 - Set number of >0 - Size of page System will attempt to get records in records defined sections for the defined page size until it gets to the maximum number of records defined.
■ Query Name. From this drop-down list, you can select a predefined query to use for the filtering criteria. You can use a query instead of or in combination with the filtering criteria that are defined in a data request. The queries that you can see in this list are based on UDO security permissions.
■ Output Type. Select one of the following format types for the format of the JSON response. Formats include: – Default. The default format is version 2 output type for version 1 orchestrations. The default format is Grid Data output type for version 2 orchestrations. – Grid Data. Returns grid data in simplified name-value pairs. – Version 2. Returns cell-specific information for each grid row as well as information about each column such as column ID, whether it is visible, editable, and so forth.
■ Stop on Warning check box (form requests only). Select this check box if you want the processing to stop if the invoked EnterpriseOne form generates a "Warning" message. Do not select this check box clear if you want processing to continue after a warning message.
■ Turbo Mode (form requests only). Use this option to reduce processing time of form requests. See "Using Turbo Mode" in the JD Edwards EnterpriseOne Application Interface Services Client Java API Developer's Guide for more information.
■ Caching: Allow. Select this check box to enable caching of the service request response. If the Enable Caching by Default option is enabled in the Server Manager, this parameter is ignored and all responses for Read operations is cached.
■ Caching: Force Update. Select this check box to force the system to fetch the data from the database for the service request. If the Enable Caching by Default setting is enabled in the Server Manager, then this parameter for the individual service request is ignored.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-27 Configuring a Report Service Request
■ Caching: Time Stored - Milliseconds. Enter the time in milliseconds for the service request to use the cache for the response. This setting overrides the value in the Default Read Cache Time To Live setting in the Server Manager.
4.7 Configuring a Report Service Request Use a report service request to invoke a batch version of an EnterpriseOne report from an orchestration. You can configure a report service request to use the settings that are defined for the report in the Batch Versions program. Alternatively, you can configure a report service request to override the processing options, data selection, and data sequencing of a report. You can also create a report service request to invoke an embedded BI Publisher report, and configure report service request to use the default settings or override the settings. A report service request can launch EnterpriseOne reports that are designed with report interconnects. Report interconnects are inputs that are added to a report at design time. These inputs enable a report to run automatically without user interaction. Typically, report interconnects are used to launch a report from a button or exit on an EnterpriseOne form. In the Report design page, the Fire and Forget toggle enables the report to run asynchronously. When the Orchestrator executes the orchestration, this option enables the orchestration to continue to the next action or step without waiting for the report to complete. At runtime, when the Orchestrator processes the report service request, it respects the EnterpriseOne authorization security for the report. The user initiating the orchestration must be authorized to run the batch version of the report as defined by an administrator in the Security Workbench. If the report service request includes data selection or processing option overrides, the user who is initiating the orchestration must be authorized in the Security Workbench to perform these overrides as well. To configure a report service request: 1. On the Orchestrator Studio Home page, click the Reports icon. 2. Create and name the report service request as described in Creating a Component. 3. On the Reports design page, in the Report Name field, enter the ID of the report that you want the report service request to invoke. The Orchestrator Studio loads all the versions that are associated with the report in the Report Version drop-down list. 4. Click the Report Version drop-down list and select a version of the report. The Orchestrator Studio loads any settings defined for the version in EnterpriseOne, including data selection, data sequencing, processing options, and output options. 5. Enable Fire and Forget if you want the report to run asynchronously. If you do not enable this setting in an orchestration that has steps following the report service request, the remaining steps will not execute until the report finishes. Set the Fire and Forget toggle to Off if you want the report to run synchronously. When a report runs synchronously, the orchestration will wait until the report is done before continuing to the next step. There are two AIS configuration settings
4-28 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Watchlist Service Request
to control how long the orchestrator will wait and how often it will check during the wait time for the report to complete.
■ Check Status Interval (milliseconds) - Default Value 3000 (3 seconds)
■ Launch Report Maximum Synchronous Wait Time (milliseconds) - Default Value 1800000 (30 minutes) You have to consider these settings especially when running a lengthy report synchronously. 6. Select one of the following options to determine how to run the report:
■ Blind Execution. Select this option if you want the report service request to invoke the batch version by using the settings that are defined in EnterpriseOne for the report version. You can review the settings that are defined for the version by expanding the Data Selection, Data Sequencing, and Processing Options sections.
■ Report Interconnects. If a report is defined with report interconnects, select this option and enter the values you want to pass in the available fields in the report. This option is disabled if no report interconnects were defined for the report.
■ Override Version. Select this option to override the settings in EnterpriseOne for a version of the report, and then perform these steps: a. Expand Data Selection and Data Sequencing sections to modify existing criteria, or click the Add button to define new criteria. b. Expand the Processing Options section and change the settings as desired. 7. Click the Queue Name drop-down list and select the queue to which the reported is submitted. If you leave this field blank, when this report is invoked, the system uses the default queue that is defined in the Enterprise Server configuration settings. 8. To modify the print properties that are defined for the report, click Output Options and complete the fields as appropriate. For more information about report output options, see "Report Output" in the JD Edwards EnterpriseOne Tools Report Printing Administration Technologies Guide. 9. To enable logging for the report, click Output Options and then enable the JDE Log toggle. Enter a value from 0-6 in the Logging Level field to indicate the level of detail to be captured in the logs. Any value greater than 0 will force the system to write both the JDE and JDEDEBUG logs. When you select a higher value for receiving information, you also receive all the information for the lower values. For example, when you enter a value of 3 (object level messages), you also receive information for 2 (section level messages), 1 (informative messages), and 0 (error messages).
4.8 Configuring a Watchlist Service Request Use a Watchlist service request to use the information from Watchlists, such as critical or warning states, threshold levels, and number of records, within an orchestration. For more information about the data you can retrieve from a Watchlist, see the JD Edwards EnterpriseOne Applications One View Watchlists Implementation Guide. 1. On the Orchestrator Studio Home page, click the Watchlists icon.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-29 Configuring a Message Request
2. Create and name the Watchlist service request as described in Creating a Component. On clicking the New button, the grid displays all the Watchlists that you have been authorized to access through UDO security in EnterpriseOne. If you need a Watchlist not available in this list, ask your EnterpriseOne administrator to grant you access to the Watchlist. 3. Search and select the Watchlist that you want this service request to access. On the Watchlists design page, the Watchlist Information grid displays information about the Watchlist. To select a different Watchlist, click the Select Watchlist buttontoreturntothelistofWatchlists. 4. In the Outputs section, select the Watchlist data that you want returned. 5. In the Advanced Outputs section, select any additional details about the Watchlist that you want returned. 6. Click the Force Watchlist To Update check box if you want the service request to refresh the Watchlist data in EnterpriseOne before returning the Watchlist data. (Recommended)
4.9 Configuring a Message Request You can add a message request to an orchestration to send emails to external email systems or the EnterpriseOne Work Center email system. The following features are supported in a message request:
■ Workflow distribution lists that can be used to send messages to a predefined group of EnterpriseOne users.
■ Message templates from the data dictionary that contain boilerplate text and values related to a particular business process.
■ Links to EnterpriseOne applications.
■ Links to EnterpriseOne reports and BI Publisher reports.
■ Links to URLs.
■ Links to notifications and orchestrations. For more information about these workflow features, see the JD Edwards EnterpriseOne Tools Workflow Tools Guide. In a message request, you can include variables to pass data from an orchestration input to a message request. You can include variables in the recipient fields, the subject and body fields, a message template, and in links. To configure a message request: 1. On the Orchestrator Studio Home page, click the Message icon. 2. Create and name the message request as described in Creating a Component. 3. On the Message design page, to enter recipients (To, Cc, or Bcc), select a recipient type:
■ Select Address Book to send a message to a single EnterpriseOne user. Enter the address book number of the EnterpriseOne user. The corresponding address book description is displayed next to the Address Book field.
4-30 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Message Request
■ Select Contact to send a message to an individual in a user's contact list. Enter the address book number of the user and then the number of the contact. When you enter a valid address book number of the user and the contact number, the corresponding description of the contact is displayed next to the Contact Number field.
■ Select Distribution List to send a message to the members of an EnterpriseOne distribution list. Enter the address book number of the list in the Parent Address Number field and select the structure type of the distribution list. Depending on the parent address number that you enter, the customized structure type variables: ${tovariable}, ${ccvariable}, or ${bccvariable} are available for selection in the Struct Type drop-down list. For more information about structure types, see "Structure Types" in the JD Edwards EnterpriseOne Tools Workflow Tools Guide.
■ Select Email to enter an email address for the recipient.
■ Select Logged in User to send a message to the user who is currently logged in. 4. In the Subject and Body fields, enter text, variables, or a combination of both. To insert variables, see step 8. 5. To include boilerplate text from a message template in the data dictionary: a. Expand the Data Dictionary section. b. If the message template contains variables, use the grid in the right to replace the variables with a default value or a variable. For each variable used in the message template, a row is added to the adjacent grid. In the grid, slide the Literal toggle to right to replace the variable in the template with a literal value. Slide the Literal toggle to left to select an existing notification, orchestration, or a watchlist input variable from the drop-down list. 6. To include a link to an application: a. In the Application Links section, click Add and expand the section. b. Complete the Application, Form, and Version fields to specify the form that you want the application link to launch. c. If needed, you can define a personal form, query, or watchlist to be used when the application opens. If the user receiving the message does not have view access to that particular personal form, query, or watchlist, the application will open without it. d. Use the Pre Text, Link Text, and Post Text fields to define the text that appears before, as, and after the link, respectively, in the message. e. In the grid, you can use variables to pass data to the application when the application is launched from the shortcut. f. Click the Add button in the Application Links section and repeat these steps to include multiple application links in a message. g. Click the Remove button (X) at the end of the New Shortcut section header to delete the application link that is added.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-31 Configuring a Message Request
7. To include other links (for example, to launch an orchestration or notification): a. In the Other Links section, click Add and expand the section. b. Select the type of link you would like to add from the Type drop-down menu. Valid values are Orchestration, Notification, or URL. c. Depending on the type you have selected, either select the orchestration name, notification name, or enter the URL. d. In the Link Text field, enter the text you would like to appear as link in the message. This link text appears in the notification message. e. In the Pre Text and Post Text fields, enter the text you want to appear before and after the link text. f. Use the grid to work with orchestration input, notification input, or a key for the URL, depending on which type of link you are using. In the Value column, you can enter either a variable or a default value as the input. g. Click the Add button in the Other Links section and repeat these steps to include multiple links in a message. Click the Remove button (X) at the end of the GroupBy section header to delete the links that were added. 8. To include report output as an attachment: a. In the Attachments section, click Add and expand the section. b. In the grid, enter Link Text, Job Number, Server, and File Type for the report output that you want to attach. The report output can be generated at this stage by an orchestration or it can be previously generated outside of any orchestrations or notifications. Either standard EnterpriseOne reports or BI Publisher reports can be attachments. You can define the Link Text, Job Number, and Execution Server as variables. c. Enable the Send As Link toggle to attach the reports as links in the message. By default, the toggle turned off. Therefore the attachments are sent as files in the message. d. Click the Add button in the Attachments section and repeat these steps to include multiple attachments in a message. Click the Remove button (X) at the end of the each row in the grid to delete the reports that were added. 9. To include variables in the recipient types, subject, body, message template text, or shortcut: a. Type ${var name} where var name is the name of the variable that you want to include. Ensure the syntax includes the $ sign and braces, for example: ${creditmanager} 10. Click the Preview button to preview the message. The preview dialog displays the subject and body of the message including the data dictionary boilerplate text, links to applications, URLs, orchestrations, notifications, and reports. 11. Click Save to save your changes.
4-32 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Connector Service Request
Note: The Message service requests created in Orchestrator Studio 9.2.4 can be loaded and used in the previous version of the Orchestrator Studio.
4.10 Configuring a Connector Service Request This section contains the following topics:
■ Understanding Connector Service Requests
■ Before You BeginConfiguring a Connector Service Request to Invoke an Orchestration or Notification
■ Configuring an Open API Connector to Invoke a REST Service
■ Configuring a REST Connector to Transfer Files to a REST Service
■ Configuring a Database Connector
■ Configuring a Connector to Transfer Files Using File Transfer Protocol (FTP)
4.10.1 Understanding Connector Service Requests In the Orchestrator Studio, you can create a connector service request to enable an orchestration to:
■ Invoke another orchestration or invoke a notification either on your local system or on an AIS Server on another EnterpriseOne system in a multisite operation.
■ Invoke a REST service. Referred to as a REST connector, this connector enables outbound REST calls to external systems through an orchestration step. For example, an orchestration could make a REST call to a Cloud service and use the data in the response in subsequent orchestration steps. You can also configure a REST connector to invoke REST services from your local AIS server. By using the Local AIS Call connection, you can run a REST service on the current AIS server by using the existing session established to run the calling orchestration
■ Connect to a database. Referred to as a database connector, this connector enables orchestrations to read from and write to non-JD Edwards databases using standard SQL protocol. The database must support JDBC. A database connector enables external databases to be the source of input for orchestrations. It also enables data that is not appropriate for transaction tables to be stored for analysis, archiving, or integration.
■ Retrieve a file from or send a file to a known location using either the File Transfer Protocol (FTP) or the Secure File Transfer Protocol (SFTP). This connector is referred to as an FTP connector. You can also use an FTP connector to retrieve data from a CSV file.
■ Send a file to a known location using a REST protocol.
■ List all the REST services that can be performed on Server Manager using the Open API connector.
■ Invoke REST services from your local AIS server. The session that is already established to execute the orchestration is reused for the current AIS REST call.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-33 Configuring a Connector Service Request
4.10.2 Before You Begin A connector service request requires a connection soft coding record, which provides the connection that the connector uses to access resources on an external system. Ask your system administrator to create a connection. See Creating Connection Soft Coding Records for Connector Service Requests for details.
4.10.3 Configuring a Connector Service Request to Invoke an Orchestration or Notification 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select Orchestration. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, select an connection to the AIS server from the Orchestration drop-down list. After you select an connection, the Orchestrator Studio displays the URL of the AIS server next to the Orchestration field. 5. In the Orchestration/Notification drop-down list, select the appropriate option depending on whether you want to invoke an orchestration or a notification. Depending on your selection, a pop-up dialog box is displayed with a list of orchestrations or notifications. 6. Search for and select the orchestration or notification that you want to invoke. You can click the Search button to reopen the pop-up dialog box that displays the notifications or orchestrations list. The Search dialog box lists the available orchestrations or notifications, depending on your selection in the previous step. The list is categorized by these UDO status: Personal, Pending Approval, Reserved, and Shared. Any inputs defined in the called orchestration or notification appear in the Orchestration Inputs column, with variable names automatically generated in the adjacent Input column. 7. Enable the Allow Input JSON Object toggle if you want to map a JSON object to the orchestration connector. This action enables you to pass arrays to an orchestration that is called through a connector. You can view the format of the JSON object to be passed to this variable by navigating to the Run Orchestrations page and then viewing the sample input for the selected orchestration. 8. Enable the Fire and Forget toggle if you want the orchestration to execute without waiting for a response. If Fire and Forget is enabled, the called orchestration will run asynchronously. The Output grid is hidden because the REST service response is not processed. 9. In the Input column, you can modify the variable names as you want or map a default value by entering a value (without the ${} notation). 10. For an orchestration connector, use the Output grid to specify the values you want to be returned from the called orchestration. For a version 3 orchestrations, the Orchestration Connector outputs are used for variables only. Enter a variable for the value to make it an orchestration input,
4-34 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Connector Service Request
which gives you the option to map the value to a subsequent step in an calling orchestration. You have to populate the Variable Name column and that name will be available for mapping in the orchestration.
4.10.4 Configuring an Open API Connector to Invoke a REST Service You can configure an Open API connector to invoke a REST service. In the Open API connector, when you specify the API call and set the HTTP methods that are populated in the system according to the allowed API call, the Pathing and Parameter fields are automatically filled with values as required for the REST service.
Note: The Open API connectors only support OpenAPI 2.0 standard (Swagger 2.0), and not the OpenAPI 3.0 standard version.
You can test the connector and view the JSON response body of the REST service. You can also use Groovy scripting to refine the data in the connector output. To configure an Open API connector to invoke a REST service: 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select Open API. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the Open API field and select a connection. The URL to the REST service for the Open API connection is displayed. 5. Click the API drop-down list and select the API from the list of all the available APIs as defined in the Open API documentation. The HTTP methods will be populated as applicable to the selected API call. 6. Click the HTTP Method drop-down list and select the method as required. After you select the HTTP Method value, if available in the documentation, the corresponding values for the selected API are displayed in the API Description and API Summary fields. Also, the Pathing and Parameters sections are automatically filled with the appropriate values. 7. Enable the Fire and Forget toggle if you want the orchestration to execute without waiting for a response. If Fire and Forget is enabled, the Output section is hidden because the REST service response is not processed. 8. In the Output section, use the following sections to identify the outputs:
Note: The outputs are based on the JSON response of the REST service call. You can see the response after running a successful test of the REST service using the Test button.
■ Manipulate Output (advanced). Use Groovy scripting to modify the output of the REST call. For example, if you only need certain data in the output, you can use Groovy scripting to refine the data that is displayed in the output. See Groovy Template for Manipulating Output from a REST Connector Response
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-35 Configuring a Connector Service Request
for more information.Click the Show Shortcut Command icon (?) to view the commands to edit the script.
■ Output grid. If the value you want is nested in JSON objects, you can get to the value by separating each JSON object name by a period (.). If the value you want is in an array, you can access it by adding the proper index of the array inside brackets ([]). 9. To test the connector: 1. Click the Test button. 2. If the connector includes parameters, enter values for the parameters in the pop-up box. Clicking Execute displays the REST service response. 3. Click the Show Output button that is displayed at the end of the response to view the modified output.
Note: The Pathing, Parameter, Header, and Body sections are prefilled with optional values. You can remove the optional values per your requirement and save the connector.
4.10.5 Configuring a REST Connector to Invoke a REST Service Configure a REST connector to invoke a REST service. In the REST connector, you specify an HTTP method and then provide the following additional details required for the connector to complete the request:
■ The path to a particular endpoint in the REST service.
■ Parameters, if required by the endpoint.
■ Key-value pairs for the HTTP header. In the Orchestrator Studio, you can test the connector and view the JSON response of the REST service call. You can also use Groovy scripting to refine the data in the connector output. For example, you can configure a Groovy script to refine the contents of the REST service response so that the connector output contains only the data required by the consuming device or program. To configure a connector to invoke a REST service: 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select REST. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the REST field and select a connection. 5. Click the HTTP Method drop-down list and select the appropriate method. 6. Slide the Fire and Forget toggle to the right if you want the orchestration to execute without waiting for a response. If Fire and Forget is enabled, the Output section is hidden because the REST service response is not processed. 7. Expand the Pathing section and use the Value grid to build the path to a REST service endpoint.
4-36 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Connector Service Request
Each value you enter in the Value grid is appended to the path, separated by a slash (/). You can use variables in the path by adding a value inside ${}. Click the Delete button at the end of a row to delete any values from the path. 8. If the REST service takes parameters, use the Parameters section to append parameters to the endpoint. Parameters are appended to the endpoint after a question mark (?) and are separated by an ampersand (&). You can include variables by specifying a value inside ${}. 9. In the Headers section, enter key-value pairs for the header in the Key and Value columns. You can also choose any known values from the drop-down menu in each column. 10. In the Body section (which is not used or displayed if the HTTP method is GET or TRACE), if required by the HTTP method, specify a payload to send to the REST service. 11. In the Output section, use the following sections to identify the outputs:
Note: The outputs are based on the JSON response of the REST service call. You can see the response after running a successful test of the REST service using the Test button.
■ Manipulate Output (advanced). Use Groovy scripting to manipulate the output of the REST call. For example, if you only need certain data in the output, you can use Groovy scripting to refine the data displayed in the output. SeeGroovy Template for Manipulating Output from a REST Connector Response for more information.
■ Output grid. If the value you want is nested in JSON objects, you can get to the value by separating each JSON object name by a period (.). If the value you want is in an array, you can access the value by adding the proper index of the array inside brackets ([]). 12. To test the connector: a. Click the Test button. b. If the connector includes variables, enter values for the variables. If test is successful, the Orchestrator Studio displays the response. c. Click the Show Output button that is displayed at the end of the response to apply the instructions that are defined in the Output section, including the Groovy script if specified. Use the results to validate the path to the output values that are specified in the Output section.
4.10.6 Configuring a REST Connector to Invoke REST Services from a Local AIS Server You can configure a REST connector to invoke REST services from your local AIS server. By using the Local AIS Call connection, the session that is already established to execute the orchestration, is reused for the current AIS REST call. So, a new session is not created. The need to set up a connection to connect to your local AIS server is eliminated by using the Local AIS Call connection. 1. Click the Connectors icon on the Orchestrator Studio Home page.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-37 Configuring a Connector Service Request
2. On the Connectors side panel, click the New drop-down menu and select REST. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the REST field and select Local AIS Call. For details regarding the HTTP Method field and the Pathing, Parameter, Headers, Body, and Output sections, see Configuring a REST Connector to Invoke a REST Service. 5. Click Save.
4.10.7 Configuring a REST Connector to Transfer Files to a REST Service You can configure a REST connector to transfer files to a REST service. When added to an orchestration that includes a report service request, a REST connector can transfer the output of the report service request to an external system. Also, if an orchestration includes a custom service request that uses a Groovy script to generate and save a file to the AIS Server, you can create a REST connector to transfer the generated file to an external system. 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select REST. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the REST field and select a connection 5. Click the HTTP Method drop-down list and select POST. 6. Enable the Fire and Forget toggle if you want the orchestration to execute without waiting for a response. If Fire and Forget is enabled, the Output section is hidden because the REST service response is not processed. 7. In the File section of the request, enter the File Part Name, which you can find in the documentation for the REST API you are calling. 8. Select the Report or File option to specify the type of file you are sending, and then complete the following fields accordingly: For Report, complete these fields:
■ Job Number. Enter ${variablename} to use a variable for the job number. When you add this connector to an orchestration, you can map the job number of a report that is returned from a report service request to this variable. Alternatively, instead of a variable, you can enter an actual job number.
■ Execution Server. Enter the server where the report was generated. Enter ${variablename} to use a variable for the server name. When you add this connector to an orchestration, you can map the name of this server from the report service request, which returns the name of this server. Alternatively, instead of variable, you can enter the server name.
■ File Type. Select the file type of the output. For File, complete these fields:
■ Source File Name. Enter the name of the file that was created in the custom Groovy service request.
4-38 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Connector Service Request
■ Remove File. This option is enabled by default, and removes the file from the temporary directory on the AIS Server after the file is transferred.
■ Click the Use Temporary File Location check box to save the file to the temporary directory on the AIS Server. 9. If the REST API that is being called requires additional information, you can use the table at the bottom of the File section to include additional details.
4.10.8 Configuring a Database Connector You must have knowledge of Groovy scripting language to create a database connector to route data to a database. The database must support JDBC. The Connector design page provides a Groovy template that you can use as a basis for creating a Groovy script for a database connector. 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select Database. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the Database field and select a connection. The Orchestrator Studio displays an edit area that contains a Groovy script template. Click the Show Shortcut Command icon (?) to view the commands to work with the script. 5. In the Input grid, enter the inputs that you want to pass to the database. You can enter default values or include variables using the ${} notation, where you enter the variable name within the braces. 6. In the Output column, list the fields added to the returnMap in the Groovy script to make those outputs available to the orchestration. Optionally, enter a variable name in the Variable column if you want to make the values available for mapping to a subsequent step in an orchestration. 7. If you intend to return a set of records, enter a name for the data set in the Data Set Variable Name field. You have to then define the column names (fields) for the records you want to return (such as name, location, and so on). Member Names - Variable Name grid is applicable only used if you enter a value in the Data Set Variable Name field. 8. The Member Name column correspond to the field in the table in the database. The Variable Name column is the name that you would use to refer to the corresponding field when passing it to the other orchestration steps. 9. Click Save.
4.10.9 Configuring a Connector to Transfer Files Using File Transfer Protocol (FTP) You can configure a connector to transfer files using FTP or secure file transfer protocol (SFTP). With this type of connector, referred to as an FTP connector, you can:
■ Transfer the output of a report service request to an FTP server.
■ The connector can transfer the output of a standard EnterpriseOne report or an embedded Oracle BI Publisher report.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-39 Configuring a Connector Service Request
■ Transfer other types of files from an FTP server to a temporary directory on the AIS Server. Using the temporary directory on the AIS server is optional. You can also enter a fully qualified path to any directory on the server that the FTP server has access to. This applies to send and receive file. An administrator must define the temporary directory in the basic configuration settings for the AIS Server. For more information, see Set Up a Temporary Directory on the AIS Server for File Transfers.
■ Transfer files in the temporary directory on the AIS Server to an FTP server.
■ Retrieve data from a CSV file. The data is imported as an array. As a result, you can map the data in the array to a subsequent orchestration step.
Note: You can also use a REST connector to transfer a report or file to an external location. See Configuring a REST Connector to Transfer Files to a REST Service
An FTP connector uses a secure connection created through a soft coding record to receive and send a file from an FTP server. An FTP connector can transfer only one file at a time.
4.10.9.1 Configure an FTP Connector to Transfer the Output of a Report Service Request 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select FTP. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the FTP field and select a connection. If no connections are available for an FTP connector, ask your system administrator to create one. See Creating a Soft Coding Record for an FTP Server Connection 5. Click the Report option and complete these fields: 6. Execution Server. Enter the server where the report was generated. By default, this field contains a variable. When you add this connector to an orchestration, you can map the name of this server from the report service request, which returns the name of this server. You can modify the variable name if you want. Alternatively, you can delete the variable (including the special characters) and replace it with a server name.
■ Job Number. By default, this field contains a variable. When you add this connector to an orchestration, you can map the job number of a report that is returned from a report service request to this variable. You can modify the variable name if you want. Alternatively, you can delete the variable (including the special characters) and replace it with an actual job number.
■ File Type. Select the type of file that the FTP connector will transfer. The default is PDF for standard EnterpriseOne reports. If you are transferring an embedded BI Publisher report, select one of the BI Publisher file types.
4-40 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Connector Service Request
■ Path Extension. Enter the name of the subdirectory on the third-party FTP server where you want the report output to be sent. The FTP Connection already contains information for the base folder. 7. Click Save.
4.10.9.2 Configure an FTP Connector to Transfer a File from an FTP Server to the AIS Server 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select FTP. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the FTP field and select a connection to the server from which you want to transfer a file. If no connections are available for an FTP connector, ask your system administrator to create one. See Creating a Soft Coding Record for an FTP Server Connection 5. Select the File option. 6. Click the Type drop-down list and select Receive. 7. In the Source File Name field, enter the name of the file that you want to retrieve. 8. In the Target File Name field, enter the name of the target file, if you want it to be saved to the temporary directory on the AIS Server, with a name that is different from the name of the source file. 9. Click the Use Temporary File Location check box to save the file to the temporary directory on the AIS Server. 10. In the Path Extension field, enter the name of the subdirectory on the third-party FTP server from where you want to retrieve the file. Since Receive was selected in the Type field, the Path Extension field applies to the file that you want to retrieve. 11. Enable or disable the Remove Source File toggle. This toggle is enabled by default, and applies to the source file. It removes the file that you retrieved from the FTP server after it is transferred. 12. Click Save.
4.10.9.3 Configure an FTP Connector to Transfer a File from the AIS Server to an External Server 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select FTP. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the FTP field and select a connection to the server from which you want to transfer a file. If no connections are available for an FTP connector, ask your system administrator to create one. See Creating a Soft Coding Record for an FTP Server Connection
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-41 Configuring a Connector Service Request
5. Select the File option. 6. Click the Type drop-down list and select Send. 7. In the Source File Name field, enter the name of the file that you want to transfer. 8. Click the Use Temporary File Location check box if the file you want to send is in the temporary directory on the AIS Server. Since Send was selected in the Type field, the Use Temporary File field applies to the file that you want to send. 9. In the Target File Name field, enter the name of the target file that will be created on the FTP server. 10. In the Path Extension field, enter the name of the subdirectory on the third-party FTP server where you want the file output to be sent. 11. Enable or disable the Remove Source File toggle. This toggle is enabled by default, and removes the file from the temporary location on the AIS Server after the file is transferred to an external server. 12. Click Save.
4.10.9.4 Configuring an FTP Connector to Import Data from a CSV File Use an FTP connector to retrieve data from a CSV file on an FTP server. The data is imported as an array. As a result, you can map the data set in the array to a subsequent orchestration step. See Passing a Data Set to a Subsequent Orchestration Step for more information. 1. Click the Connectors icon on the Orchestrator Studio Home page. 2. On the Connectors side panel, click the New drop-down menu and select FTP. 3. Create and name the connector service request as described in Creating a Component. 4. On the Connectors design page, click the FTP field and select a connection to the server from which you want to transfer a file. If no connections are available for an FTP connector, ask your system administrator to create one. See Creating a Soft Coding Record for an FTP Server Connection 5. Select the File option. 6. Click the Type drop-down list and select Receive. 7. Click the Import CSV as Array check box, The Orchestrator Studio displays additional fields to configure the importing of data from a CSV file. 8. If the CSV file has a header row, click the CSV Has Headers check box to exclude the header row. This action ensures that at runtime, the Orchestrator will not import the column headers as data in the array. 9. Complete the following fields:
■ Delimiter. Enter the delimiter used in the CSV file to separate values.
■ Source File Name. Enter the name of the CSV file.
4-42 JD Edwards EnterpriseOne Tools Orchestrator Guide Configuring a Custom Service Request
■ Path Extension. Enter the name of the sub-directory on the third-party FTP server that contains the CSV file. The FTP connection already contains information for the base folder.
■ Remove Source File. Enable or disable the Remove Source File toggle. This toggle is enabled by default. When enabled, this toggle removes the file from the temporary location on the AIS Server after the data is imported.
■ Data Set Variable Name. Enter a name to refer to the array created from the CSV data. Later, you can use this data set variable name as a reference to map data in the data set to a subsequent orchestration step. 10. Click the File button to select a model CSV file for defing the columns in the CSV file that you want to import. You can use a CSV file that is a copy of the CSV file from which the FTP connector will import data, or you can use a different CSV file if it has the same column names. If the CSV Has Headers check box is selected, the grid displays the column names from the CSV file in the Member Name and Variable Name columns. Otherwise, the grid displays column 1, column 2, and so forth. In the grid, you can change the member names or variable names, and you can use the X button at the end of the rows to remove any columns from the import. The variable names are used to represent the values that are imported into the array. If you map these values to a subsequent orchestration step, you will select these variable names for the mappings.
Caution: When importing the CSV data into an array, the order of the columns, not the names of the columns, is respected. If the CSV has 10 columns and you only specify eight in this grid, the array will contain the first eight columns from the CSV. If column headers are present, the third column in the CSV file will be mapped to the third row of this table, regardless if the column and member names match.
11. Click Save.
4.11 Configuring a Custom Service Request This section contains the following topics:
■ Configuring a Custom Service Request with Java (Advanced)
■ Configuring a Custom Service Request with Groovy (Advanced)
4.11.1 Configuring a Custom Service Request with Java (Advanced) You can create a service request that uses custom Java to execute a custom process or to route data into another database. Before you can create a custom Java service request, you must create the custom Java as described inCreating Custom Java for Orchestrations 1. Click the Custom Requests icon on the Orchestrator Studio Home page. 2. On the Custom Requests side panel, click the New drop-down menu and select Java.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-43 Configuring a Custom Service Request
3. Create and name the custom request as described inCreating a Component. 4. On the Custom Requests design page, in the Fully Qualified Class field, enter the Java class. This is the custom Java class that you created for the service request. 5. In the grid, complete the following fields:
■ Input. Enter the name of the field in the custom Java class.
■ Value. Enter the input variable name. If the input variable name has a Boolean attribute and you pass in "true", then you could use a default value.
■ Default Value. Enter a default value if there is no mapped value. You can also add a default value to use if the mapped value returns a null value. 6. (Optional) In the second grid, enter a variable name for an output if you want to use the output value in subsequent steps in the orchestration or to another orchestration. 7. If you make a mistake while configuring any of the fields, you can click Restore from the Manage drop-down menu to return to the last saved state of the custom Java. 8. Click the Save button. The Orchestrator Studio saves the custom Java request. You can then access the orchestration in the Orchestration design page and add this custom Java service request as a step in the orchestration.
4.11.2 Configuring a Custom Service Request with Groovy (Advanced) You can create a service request that uses Groovy scripting to execute a custom process or to route data into another database. To use Groovy for a service request, the Orchestrator Studio provides an edit area that contains a sample Groovy script with instructions on how to modify the script. You can click the Show Shortcut Command icon located above the edit area to view the commands to work with the script. Chapter 9, "Using Apache Groovy for Custom Service Requests, Rules, and Manipulating Output" provides information on how to work with the sample Groovy script. To configure a customer service request with Groovy: 1. Click the Custom Requests icon on the Orchestrator Studio Home page. 2. On the Custom Requests side panel, click the New drop-down menu and select Groovy. 3. Create and name the custom request as described inCreating a Component. 4. On the Custom Requests design page, configure the script to perform the desired action. 5. In the Input grid, enter the names of the inputs. The inputs will be placed in the inputMap of the main function and can be retrieved in the script by using the commented out example code. 6. Click the Load Outputs button. This action reads the script and adds any values that are added to the returnMap in the script to the Output grid.
4-44 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Connection Soft Coding Records for Connector Service Requests
7. (Optional) In the Output grid, enter a variable name for an output if you want to use the output value in a subsequent orchestration step. When you add this service request to an orchestration, this service request name appears in the orchestration inputs grid. As a result, the returned value is available for mapping to subsequent steps in the orchestration.
Note: Even if no variables are used, all defined outputs are available for mapping using the Orchestration Output feature. See Working with Orchestration Output for more information.
8. To test the script: a. Enter a value in the Test Value column for one or more inputs. If there is any syntax error in the script, details of the error will be displayed in a pop-up window. b. Click the Test button. The Orchestrator Studio executes the script using the inputs you entered. If the execution is successful, the system populates the results in the Test Output column of the Output grid. If you included orchAttr.writeWarn or orchAttr.writeDebug statements in the script, a Logging dialog box is displayed after execution. If you see the warning log, but not the debug log, it indicates that the logging level is set-up to the error level and not the debug level. At runtime, log statements are included in the AIS Server log. These statements can be used for debugging script issues. 9. Click the Save button. The Orchestrator Studio saves the custom Groovy service request. You can then access the orchestration in the Orchestrations design page and add this custom Groovy service request as a step in the orchestration.
4.12 Creating Connection Soft Coding Records for Connector Service Requests This section contains the following topics:
■ Understanding Connection Soft Coding Records
■ Creating a Soft Coding Record for an Orchestrator Connection
■ Creating an Open API Connection
■ Creating a Soft Coding Record for a REST Connection
■ Creating a Soft Coding Record for a Database Connection
■ Creating a Soft Coding Record for an FTP Server Connection
4.12.1 Understanding Connection Soft Coding Records Connector creates soft coding records to provide a secure access to external resources, such as a REST service, a database, or an orchestration or a notification on another EnterpriseOne system. A system administrator can set up a soft coding record for a single connection, and a business analyst can create one or more connectors that use this connection to access resources on an external system.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-45 Creating Connection Soft Coding Records for Connector Service Requests
You can create soft coding records for the following connections:
■ Orchestrator connection. A connection to an AIS Server Orchestrator where orchestrations or notifications reside.
■ Open API Endpoint. A connection to an external system where the documentation of external REST services (Open API - 2.0) reside. Open API connectors only support the OpenAPI 2.0 standard.
■ REST connection. A connection to an external system where a REST service resides. A REST connection supports Oauth 2.0 authorization which allows orchestrations to exchange REST calls and data with Oracle Cloud services and other third-party systems. REST connections also support the transfer of files to an external REST service.
■ Database connection. A connection to an external database using a JDBC driver. For a database connection, the JDBC driver for the database must be in the AIS Server classpath.
■ FTP. A connection to an external server for transferring files through FTP/SFTP. Note that you can also use a REST connection to transfer a connector to an external system through a REST connector or a connector that uses FTP or SFTP. When you create a connection soft coding record, you associate it with an EnterpriseOne user, role, or *PUBLIC. This association enables the Orchestrator Studio user who is creating a connector service request to see the REST service, database, or orchestrations that are available through the connection. The user must be authorized to run the originating orchestration, which is the orchestration on the local system that will call the external orchestration, REST service, or database. A soft coding record also includes the credentials of the user who is authorized to invoke the external resource, such as an orchestration, REST service, database, or directory on the external system.
4.12.2 Creating a Soft Coding Record for an Orchestrator Connection 1. On the Orchestrator Studio Home page, click the Connections icon. 2. On the Connections side panel, click the New button and select Orchestration from the drop-down list. 3. On the Connection design page, complete these fields:
■ Name. Enter a unique name for the Orchestrator connection.
■ Description. Enter a description to identify the connection. For example, if you are creating more than one soft coding record to connect to different locations, you should include the respective location in the description of each of the soft coding records The Type of connection is displayed next to the Description field.
■ User/Role. Enter the user who is authorized to run the originating orchestration, which is the orchestration on the local system that will call the external orchestration. The user can be an EnterpriseOne user, role, or *PUBLIC.
■ Environment. Enter the environment where the local orchestrations reside. 4. On the Service Information tab, in the Endpoint field, enter the URL of the Orchestrator directory on the AIS Server where orchestrations are stored, for example:
4-46 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Connection Soft Coding Records for Connector Service Requests
https://
IMPORTANT: Oracle strongly recommends that all external calls use the SSL protocol (https) with a certificate from a reputable certificate authority.
5. On the Security tab, enter the credentials for accessing the external system.
■ Security Policy Select the authentication type that is used by the external AIS Server: Basic Authorization or User/Password Authorization.
■ User
■ Password
■ Override Environment. Use this field and the Override Role field to override the existing environment and role that are configured for the external AIS Server. For example, if you enter JDV920C1 and ADMIN in these fields for the soft coding record, when the external orchestration call is made (during the execution of an orchestration), the system will sign on to the external AIS Server with the environment JDV920C1 and the role ADMIN.
■ Override Role 6. If the connection is being made to an external server, on the Proxy tab, specify a proxy server for accessing the external server:
■ Proxy Host. Enter the URL of the proxy server.
■ Proxy Port. Enter the port number of the proxy server.
■ Use Proxy. Slid the toggle to the right to enable the proxy. 7. Click Save.
4.12.3 Creating an Open API Connection 1. On the Orchestrator Studio Home page, click the Connections icon. 2. On the Connections side panel, click the New button and select Open API from the drop-down list. 3. On the Connection design page, complete these fields:
■ Name. Enter a unique name for the Open API connection.
■ Description. Enter a description to identify the connection. For example, if you are creating more than one soft coding record to connect to different locations, you should include the location in the description. The Type of connection is displayed next to the Description field.
■ User/Role. Enter the user who is authorized to access the connection. The user can be an EnterpriseOne user, role, or *PUBLIC.
■ Environment. Enter the environment where the connections reside. 4. On the Service Information tab, in the Endpoint field, enter the URL for accessing the Open API - 2.0 documentation through which you can access the Server Manager REST services.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-47 Creating Connection Soft Coding Records for Connector Service Requests
For example: https://
Note: Open API connectors only support the OpenAPI 2.0 standard (Swagger 2.0).
5. On the Security tab, enter the credentials for accessing the external REST services.
■ Security Policy Select the authentication type as Basic Authorization for accessing the Server Manager Console.
■ User
■ Password 6. When a proxy server is present, connection is made through that server. On the Proxy tab, specify a proxy server for accessing the external server:
■ Proxy Host. Enter the URL of the proxy server.
■ Proxy Port. Enter the port number of the proxy server.
■ Use Proxy. Slide the toggle to the right to enable the proxy. 7. Click Save.
Notes:
■ Server Manager REST services can be hosted on the same server on which the Server Manager Console is hosted or on a different server.
■ The credentials that are used for accessing the REST services and the Open API documentation are same as mentioned in the Security section.
4.12.4 Creating a Soft Coding Record for a REST Connection 1. On the Orchestrator Studio Home page, click the Connections icon. 2. On the Connections side panel, click the New button and select REST from the drop-down list. 3. On the Connection design page, complete these fields:
■ Name. Enter a unique name for the REST connection.
■ Description. Enter a description to identify the connection. For example, if you are creating more than one soft coding record to connect to different locations, you should include the respective location in the description of each of the soft coding record. The Type of connection is displayed next to the Description field.
■ User/Role. Enter the user who is authorized to run the originating orchestration, which is the orchestration on the local system that will call the external REST service. The user can be an EnterpriseOne user, role, or *PUBLIC.
■ Environment. Enter the environment where the local orchestrations reside.
4-48 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Connection Soft Coding Records for Connector Service Requests
4. On the Service Information tab, enter the URL for accessing the REST services in the Endpoint field.
IMPORTANT: Oracle strongly recommends that all external calls use the SSL protocol (https) with a certificate from a reputable certificate authority.
5. Click the Security tab and from the Security Policy drop-down list, select the type of security you want to use and then follow the appropriate steps:
■ For Basic Authorization, complete these fields: User "Password
■ For OAuth 2.0 Client Credential: This type of security allows orchestrations to exchange REST calls and data with Oracle Cloud services and other third-party systems. 1. In the Token Endpoint URL field, enter the address of the server that will provide the OAuth token. 2. In the OAUTH Client ID field, enter ID of the client. 3. In the OAUTH Secret field, enter the value for client secret you have received after registering the application. 4. If the client requires additional header parameters, in the OAUTH Parameters area, click Add. The system adds a new row in the OAUTH Parameters table. 5. Enter a name and value for the parameter in the table. 6. If the connection is being made to an external server, on the Proxy tab, specify a proxy server for accessing the external server:
■ Proxy Host. Enter the URL of the proxy server.
■ Proxy Port. Enter the port number of the proxy server.
■ Use Proxy. Slide the toggle to the right to enable the proxy. 7. On the HTTP Headers tab, perform the following steps to add a header record that will be used in the HTTP request to execute the external REST service: a. Click the Add button. b. In the pop-up box, complete these fields: Name. Value. c. Slide the Encrypt toggle to the right to enable encryption. d. Click Add. The Orchestrator Studio adds a row to the grid in the HTTP Headers tab. e. Add additional header records as necessary. 8. Click Save.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-49 Creating Connection Soft Coding Records for Connector Service Requests
4.12.5 Creating a Soft Coding Record for a Database Connection
Important: For a database connection to work, the JDBC driver for the database must be accessible in the AIS Server class path.
1. On the Orchestrator Studio Home page, click the Connections icon. 2. On the Connections side panel, click the New button and select Database from the drop-down list. 3. On the Connection design page, complete these fields:
■ Name. Enter a unique name for the database connection.
■ Description. Enter a description to identify the connection. For example, if you are creating more than one soft coding record to connect to different locations, you should include the respective location in the description of each of the soft coding records. The Type of connection is displayed next to the Description field.
■ User/Role. Enter the user who is authorized to run the originating orchestration, which is the orchestration on the local system that will call the external database. The user can be an EnterpriseOne user, role, or *PUBLIC.
■ Environment. Enter the environment where the local orchestrations reside. 4. In the Database Connection area, complete these fields:
■ Connection. Enter the URL to the database.
IMPORTANT: Oracle strongly recommends that all external calls use the SSL protocol (https) with a certificate from a reputable certificate authority.
■ User. Enter the database user.
■ Password. Enter the database user password.
■ Driver. Enter the driver for the type of database you are accessing. You need to make sure that the driver is specified on the AIS Server class path. 5. Click Save.
4.12.6 Creating a Soft Coding Record for an FTP Server Connection Create a soft coding record for a connection to a server that supports FTP or SFTP. This enables a business administrator to create connector service requests for transferring files to an FTP server. 1. On the Orchestrator Studio Home page, click the Connections icon. 2. On the Connections side panel, click the New button and select FTP from the drop-down list. 3. On the Connection design page, complete these fields:
■ Name. Enter a unique name for the FTP connection.
■ Description. Enter a description to identify the connection. For example, if you are creating more than one soft coding record to connect to different locations,
4-50 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Rules
you should include the respective location in the description of each of the soft coding records. The type of connection is displayed next to the Description field.
■ User/Role. Enter the user who is authorized to run the originating orchestration, which is the orchestration on the local system that will use the FTP connection. The user can be an EnterpriseOne user, role, or *PUBLIC.
■ Environment. Enter the environment where the local orchestrations reside. 4. In the FTP Connection area, complete the following fields:
■ FTP Host. Enter the URL of the FTP server.
■ FTP Port. Enter the port number of the FTP host server.
■ Connection Type. Choose the connection type. Valid values are Anonymous, Username/Password, and SSH Key.
■ User. Enter the user who is authorized to access the directory on the FTP server.
■ Password. Enter the password of the user who is authorized to access the directory on the FTP server.
■ Use Secure FTP (SFTP). Enable this toggle if the server uses secure FTP.
■ oFTP File Path. Enter the path to the directory on the FTP server where you want the file transferred.
■ Passphrase. If you chose SSH Key as the connection type, this field appears. If the associated .ppk file requires a passphrase, enter the passphrase here.
■ SSH File. If you chose SSH Key as the connection type, this field appears. You can drop a .ppk file in OpenSSH format into the box to upload the file. 5. Click Save.
4.13 Creating Rules This section contains the following topics:
■ Section 4.13.1, "Understanding Rules"
■ Section 4.13.2, "Creating a Rule"
■ Section 4.13.3, "Creating a Custom Rule with Java (Advanced)"
■ Section 4.13.4, "Creating a Custom Rule with Groovy (Advanced)"
4.13.1 Understanding Rules A rule contains conditional logic that the Orchestrator uses to evaluate conditions, and determine whether the conditions are true or false. These conditions determine how the orchestration processes the incoming data. You can define a simple rule with a list of conditions or you can define a more complex rule using Groovy or a custom Java class. An orchestration rule with conditions 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.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-51 Creating Rules
After creating a rule and adding it to an orchestration, you use the True or False nodes in the orchestration path to determine the orchestration step that is invoked when the conditions in the rule are met. See Defining the Actions Between a Rule and Dependent Components for more information.
4.13.2 Creating a Rule Create a rule to define conditions for an orchestration. To create a rule: 1. On the Orchestrator Studio Home page, click the Rules icon. 2. On the Rules side panel, click the New drop-down menu and select Standard. 3. Create and name the rule as described in Creating a Component. 4. On the Rules design page, enter a name for the rule in the Rule field. Do not include special characters in the name. 5. In the Match Type drop-down menu, select one of the following values:
■ Match All. Select this option if all the conditions in the rule must be met.
■ Match Any. Select this option if any of the conditions in the rule can be met. 6. In the first row in the grid, complete the following columns to add a condition:
■ Rule Type. Click the drop-down menu and select String, Numeric, Boolean, or Date depending on the format of the input.
■ Value 1. Enter a variable for the input name.
■ Operator. In the drop-down menu, select from the list of operands which include: >, <, >=, <=, =, !=, starts with, ends with, contains, is between, is in list. The "is in list" operator must be a string of values delimited by the pipe character(|).Example values: v1|v2|v3.
■ Literal. Slide the toggle to the right to indicate a literal value.
■ Value 2. If you have enabled the Literal toggle, manually enter a value.
■ Literal Value Type. If you have enabled the Literal toggle, click the drop-down menu and select the format of the literal value: string, numeric, or date. 7. Add additional conditions to the rule as needed. If you add a condition by mistake, you can delete it by clicking the Remove button at the end of the row with the condition. 8. Click the Save button. A new rule is saved for the first time as a "Personal" UDO. Thereafter, you can use the UDO links described in the User Defined Object (UDO) Features in the Orchestrator Studio section to move the rule to the appropriate status. After adding a rule and a service request to an orchestration, in the Orchestration design page, you must define the action for the rule to invoke the service request. See Defining the Actions Between a Rule and Dependent Components for more information.
4.13.3 Creating a Custom Rule with Java (Advanced) You can create a complex rule using custom Java. Before you add a custom Java rule in the Orchestrator Studio, you must create a custom Java class to use for the rule as described in Creating Custom Java.
4-52 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Rules
To create a custom Java rule: 1. On the Orchestrator Studio Home page, click the Rules icon. 2. On the Rules side panel, click the New drop-down menu and select Java. 3. Create and name the rule as described in Creating a Component. 4. On the Rules design page, in the Fully Qualified Class field, enter the fully qualified path to the Java class, which includes the name of the Java class. This is the custom Java class that you created to use for the rule. 5. Complete the following fields in the grid:
■ Input. Enter the name of the field in the class.
■ Value. Enter a variable for the input name. If the attribute is a boolean and you pass in "true", then you could enter a default value.
■ Default Value. Enter a default value if there is no mapped value. You can also add a default value to use if the mapped value returns a null. 6. If you make a mistake while configuring any of the fields, you can click Restore from the Manage drop-down menu to retrieve the last saved state of the custom Java rule. 7. Click the Save button.
4.13.4 Creating a Custom Rule with Groovy (Advanced) Use Groovy to create a custom rule when conditions in a standard rule will not suffice. To create a custom rule with Groovy: 1. On the Orchestrator Studio Home page, click the Rules icon. 2. On the Rules side panel, click the New drop-down menu and select Groovy. 3. Create and name the rule as described in Creating a Component. 4. On the Rules design page, configure the script to perform the desired action. The Orchestrator Studio displays an edit area that contains a sample groovy script with instructions on how to work with the script. See Using Apache Groovy for Custom Service Requests, Rules, and Manipulating Output for more information about the sample Groovy script. Click the Show Shortcut Command icon (?)to view the commands to edit the script. 5. In the Input grid, enter the names of the inputs. 6. To test the script: a. Enter a value in the Test Value column for one or more inputs. b. Click the Test button. If you included orchAttr.writeWarn or orchAttr.writeDebug statements in the script, a Logging pop-up is displayed after execution. At runtime, log statements are included in the AIS Server log. These log statements can be used for debugging script issues. 7. Click the Save button.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-53 Creating Cross References
4.14 Creating Cross References This section contains the following topics:
■ Section 4.14.1, "Understanding Cross References"
■ Section 4.14.2, "Creating a Cross Reference"
4.14.1 Understanding Cross References The Orchestrator uses a cross-reference component to map incoming data (third-party data) to an EnterpriseOne value. The EnterpriseOne value that is identified in the cross-reference is considered the output of the cross reference. The output from the cross reference becomes the data that is passed to another orchestration step. For each cross reference that you create in the Orchestrator Studio, you have to create a cross reference record in P952000 in EnterpriseOne. When defining cross reference records for orchestrations in P952000, you must use the "AIS" cross reference type. For more information on how to create these cross reference records in P952000, see Chapter, Setting Up Cross References and White Lists in EnterpriseOne (P952000) in this guide.
Note: If a cross reference lookup fails in an orchestration, the orchestration is terminated.
4.14.2 Creating a Cross Reference To create a cross reference: 1. On the Orchestrator Studio Home page, click the Cross References icon. 2. On the Cross References side panel, click the New button. 3. Create and name the cross reference as described in Creating a Component. 4. On the Cross References design page, in the Object Type drop-down list, select a cross-reference object type. This is the object type that is used to categorize the orchestration cross references in EnterpriseOne. See "Adding Orchestration Cross References" in the JD Edwards EnterpriseOne Tools Interoperability Guide 5. Complete the Input Key and Output Key columns to map the inputs to EnterpriseOne fields:
■ Input Key. The inputs can be one or many values. The inputs must correspond to the values or pipe (|) delimited values in the Third Party Value column in P952000. See Setting Up Cross References and White Lists in EnterpriseOne (P952000) for more information.
■ Output Key. The outputs can be one or many values. The outputs must correspond to the values or pipe (|) delimited values in the EOne Value column in P952000. See Setting Up Cross References and White Lists in EnterpriseOne (P952000) for more information. 6. If you enter any value by mistake, you can click the Remove (X) button to delete the entry. 7. Click the Save button, which saves the cross reference as a "Personal" UDO. The first time a new cross reference is saved, it is saved as a "Personal" UDO. Thereafter, you can use the UDO buttons that are described in the User Defined
4-54 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating White Lists
Object (UDO) Features in the Orchestrator Studio section to move the cross-reference to the appropriate status. The output values in the cross reference are now available for mapping in subsequent orchestration steps.
4.15 Creating White Lists This section contains the following topics:
■ Section 4.15.1, "Understanding White Lists"
■ Section 4.15, "Creating White Lists"
4.15.1 Understanding White Lists A white list contains a list of IDs that are permitted in the Orchestrator. When a white list is added to an orchestration, only inputs with IDs that are 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 field should have the value 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.
4.15.2 Creating a White List 1. On the Orchestrator Studio Home page, click the White Lists icon. 2. On the White Lists side panel, click the New button. 3. Create and name the white list as described in Creating a Component. 4. On the White Lists design page, in the Object Type field, select the object type from the drop-down list. The value you select 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, which is stored in P952000, is a group of records to which a name is assigned. You may have thousands of records in P952000. You can use cross-reference object types, for example "Equipment" or "Alert_Notification_ Recipients" to group cross-reference records into manageable categories. You define the cross-reference object types as needed. See Setting Up Cross References and White Lists in EnterpriseOne (P952000) for more information. 5. In the Input Key column, enter the input that you want to add as a permitted input. 6. Click the Save button. The first time a new white list is saved, it is saved as a "Personal" UDO. Thereafter, you can use the UDO buttons that are described in the User Defined Object (UDO) Features in the Orchestrator Studio section to move the white list to the appropriate status.
Configuring Orchestration Components using Orchestrator Studio 9.2.4 4-55 Creating White Lists
4-56 JD Edwards EnterpriseOne Tools Orchestrator Guide 5
Creating5 Orchestrations with Orchestrator Studio 9.2.4
This chapter contains the following topics:
■ Section 5.1, "Creating Orchestrations"
■ Section 5.2, "Creating Schedules for Orchestrations"
■ Section 5.3, "Working with Scheduler"
■ Section 5.4, "Updating to Version 3 Orchestrations"
■ Section 5.5, "Restoring Orchestrations and Orchestration Components"
■ Section 5.6, "Supported Input Message Formats"
■ Section 5.7, "Orchestration Security Considerations"
■ Section 5.8, "Exporting Orchestration Components from the Orchestrator Studio"
■ Section 5.9, "Importing Orchestration Files in the Orchestrator Studio"
5.1 Creating Orchestrations This section contains the following topics:
■ Understanding Orchestrations
■ Creating an Orchestration
■ Adding Steps to an Orchestration
■ Adding Inputs to an Orchestration
■ Mapping Orchestration Inputs
■ Retrieving and Passing Data Sets in an Orchestration
■ Working with Orchestration Output
5.1.1 Understanding Orchestrations Creating an orchestration in the Orchestrator Studio involves:
■ Naming the orchestration and specifying the input format for the orchestration.
■ Adding inputs to the orchestration. The inputs define the data that is passed to the orchestration from a device, third-party application, custom program, or Cloud service. For example, an orchestration that is designed to receive input from a sensor, will receive an input
Creating Orchestrations with Orchestrator Studio 9.2.4 5-1 Creating Orchestrations
that may include an ID that identifies the sensor, and data such as temperature, date, or any other data you want to capture from the sensor.
■ Adding steps to the orchestration. Each step is a component of the orchestration. A step can be a service request, rule, cross reference, or white list. At a minimum, an orchestration requires a service request step, which provides the actions or the instructions to perform a particular task in EnterpriseOne.
■ Configuring transformations. You use transformations to map orchestration inputs to inputs that are defined in each orchestration step, such as inputs in a rule, cross reference, white list, or service request component.
Important: Remember that when you are ready to "request to publish" an orchestration, you need to make sure that you also request to publish all the components that are associated with the orchestration. The request to publish the components ensures that an administrator saves all the required components to the proper directory on the AIS Server for processing by the Orchestrator. If a component is missing, the orchestration process will end in an error.
5.1.2 Creating an Orchestration To create an orchestration: 1. On the Orchestrator Studio Home page, click the Orchestrations icon. 2. On the Orchestrations side panel, click the New button. 3. On the Orchestrations design page, enter a unique name for the orchestration in the Name field. Do not include special characters in the name. All orchestrations that are created in Orchestrator Studio 9.2.4 or later are saved as version 3 orchestrations. You cannot change this value. If you want to update a version 3 orchestration that was created in a previous version of the Orchestrator Studio, see Updating to Version 3 Orchestrations.
Note: When you save an orchestration, the orchestration name is used to define an endpoint on the AIS Server. The endpoint URL is: http://
4. Click the Product Code drop-down list to select a product code to associate with the orchestration. This enables an administrator to manage UDO security for orchestration components by product code. 5. In the Description field, enter a short description with a maximum of 200 characters. This description appears along with the orchestration name in the component list. 6. Click the Long Description button to provide more detail about the component.
5-2 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Orchestrations
Use this field to describe the purpose of the orchestration and any details that differentiate the orchestration from other orchestrations that you create. At this point, the design mode is enabled for the orchestration and the canvas displays the Start and End nodes of the orchestration as shown in the following figure:
7. Enter a Category for the orchestrations or the orchestration components. The Category drop-down list displays the orchestrator categories if any exist. You can choose from the available categories or enter a new value in the Category field. 8. Click Save before defining inputs or adding steps for the orchestration. The Orchestrator Studio saves the orchestration as a "Personal" UDO. Next, add inputs to the orchestration as described in Adding Inputs to an Orchestration. You can also use the Save As button and rename an existing orchestration to create a new one.
Caution: If you use Save As to create a copy of an orchestration, only the orchestration is copied. The Orchestrator Studio does not create a copy of the components that are associated with the steps of the orchestration. That is, both the original orchestration and the new orchestration use the same components that are included in 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.
5.1.3 Adding Steps to an Orchestration Each component (data request, form request, rule, cross reference, white list, and so on) that you add to an orchestration is an orchestration step.
5.1.3.1 Adding the Initial Step to an Orchestration 1. In an Orchestration, click the Design Mode button at the bottom-left corner of the canvas area. A plus sign (+) appears in the orchestration path between the Start and End nodes. 2. Click the Add Step button (+). Alternatively, double-click the path in between the Start and End nodes in the orchestration. 3. In the New Step Type drop-down list, select one of the component types to add to the orchestration. The following figure shows the New Step Type drop-down list.
Creating Orchestrations with Orchestrator Studio 9.2.4 5-3 Creating Orchestrations
4. The Orchestrator Studio displays a list of objects for the corresponding component type. 5. Define the component for the step: a. To use an existing component for the new step, search and select a component from component list. b. To create a new component for the step, click the New button to access the design page for creating the new component. After creating the component, when you return to the orchestration, the component is added a new step to the orchestration. The Orchestrator Studio adds the component as a step to the orchestration as shown in the following figure:
5-4 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Orchestrations
5.1.3.2 Adding Additional Steps to an Orchestration 1. In the Design Mode of the orchestration, select the location in the orchestration path where you want to add step. 2. Click the Add Step button. Alternatively, double-click the path at the location where you want to insert a step in the orchestration and select the component type from the New Step Type drop-down list. For example, you can add a white list to an existing orchestration, as a step before the other steps or in any other location in the orchestration. 3. In the New Step Type drop-down list, select the component type that you want to add. 4. In the component list that is displayed, search and select the component that you want to add. The Orchestrator Studio adds the new component as an additional step to an orchestration. The following figure shows an orchestration that contains a rule and form service requests steps:
Each box in the orchestration canvas represents a step in the orchestration. For information about the other features of the canvas, see Working with the Graphical Representation of an Orchestration.
■ Name. Displays the name of the component.
■ Type. Each component type is displayed in a unique icon: Rule, Form Request, Cross Reference, White List, and so on.
■ Action (True or False). Define which subsequent component is invoked based on the criteria in the preceding rule. See Defining the Actions Between a Rule and Dependent Components for details. As the next task, add and map the orchestration inputs to inputs in the orchestration steps. See, Adding Inputs to an Orchestration and Mapping Orchestration Inputs.
5.1.3.3 Removing 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.
Creating Orchestrations with Orchestrator Studio 9.2.4 5-5 Creating Orchestrations
1. In the Design Mode of the orchestration, select the component box that you want to remove. The action control icons are displayed for the component. 2. Click the Remove Step icon to remove the component from the orchestration. If you make a mistake when updating an orchestration, select the Restore option from the Manage drop-down menu to restore the orchestration to its last saved version. This action erases any changes made since the last save.
5.1.3.4 Moving a Component in the Orchestration You can use the Cut Element and Paste Element options to move a component within an orchestration. You can move a component within an orchestration, but not across different orchestrations. To move component in an orchestration: 1. Open an orchestration in the design mode. 2. Select the component in the orchestration that you want to move. The action control icons for the component are displayed. 3. To move or cut a component, click the Cut Element icon. When you use the Cut Element option, the selected component is copied to the clipboard. At this point, the Paste Element icons appear in the orchestration path. 4. Click the Paste Element icon at the location in the orchestration where you want to place the component. 5. Save the orchestration.
5.1.3.5 Defining the Actions Between a Rule and Dependent Components TThe Orchestration design page enables you to define the actions between a rule component and other components in an orchestration. After you create a rule with conditions and add the rule as a step to an orchestration, you need to define the action the orchestration takes if the condition in the rule is met. For example, if the orchestration needs to invoke a service request when the condition of a rule is met, then in the path for True, you have to add the service request. You can also define a False action to invoke a different orchestration component when a condition in a rule is not met. A False action can invoke a different service request or another rule that contains additional conditions for which the incoming data is evaluated. Thus, you can design an orchestration with as many rules and service requests as your business requirements necessitate. The following figure shows an example of an orchestration with two rules and two service requests, with the following defined actions:
■ When the condition in the first rule step is met (True), the action is set to instruct the orchestration to invoke a form request step.
■ When the condition in the first rule step is NOT met (False), the action is set to instruct the orchestration to invoke a second rule.
■ When the condition in the second rule is met (True), the action is set to instruct the orchestration to invoke a second form request.
5-6 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Orchestrations
Figure 5–1 Defining the Rule Actions
To set the steps for True or False conditions of a Rule: 1. In the Orchestration design mode, add a Rule component to an orchestration. 2. In the orchestration path for True, click the Add Step button (+) to add a step for the true condition. 3. Similarly, in the orchestration path for False,clicktheAdd Step button (+) to add a step for the false condition according to your requirement. 4. Click the Save button. After completing the orchestration, you can use the Run Orchestrations page to test the orchestration in a test environment. You can access the Run Orchestrations page from the Tools drop-down menu in the upper-right corner of the Orchestrator Studio. See Chapter "Testing Orchestrations" for more information.
5.1.3.6 Defining Error Handling for Orchestration Steps You can set up error handling for individual orchestration steps. In an orchestration step, you can determine how the Orchestrator handles an error. You can determine whether the Orchestrator:
■ Continues processing the orchestration after the error occurs, effectively ignoring the error.
■ Cancels the orchestration.
■ Cancels the orchestration and invokes an alternate orchestration or notification. For example, the orchestration might call a notification to alert subscribers if an orchestration is canceled. Or run an orchestration to clean up work already performed by the orchestration before it was canceled. You have the option to either include additional text in the error, or to include a variable to pass a value into the error text. Regardless of the option you choose, the system still generates an exception when it encounters an error with an orchestration step. For more information on how to monitor exceptions, see Orchestrator Health and Exception Monitoring. To define error handling for an orchestration step: 1. In the orchestration design page, click the component step. The action control icons are displayed for the component.
Creating Orchestrations with Orchestrator Studio 9.2.4 5-7 Creating Orchestrations
2. Click the Error Handling icon. The Error Handling dialog box displays the type and name of the step, as shown in the following figure: 3. In the User Defined Error Text field, you can enter additional details about the error to display in the exception details. You can insert variables in the error text using the ${} notation, where you enter the variable name between the braces. If you configure the step to continue on error, this error text will appear in the response in a new array: "Continued on Error." If you configure the step to abort on error, this text will appear in the returned exception: userDefinedErrorText. The error text is also added to the AIS Server log. 4. For On Error, select one of the following options:
■ Abort
■ Continue 5. (Optional) If you choose to Abort on error, you can configure the orchestration step to invoke another orchestration or notification: a. Click the Assign Orchestration/Notification button and select an orchestration or notification to invoke after an error. b. Map the inputs as appropriate.
5.1.4 Adding Inputs to an Orchestration Orchestration inputs identify the data an orchestration consumes from a calling custom program, a third-party application, a mobile application, an equipment meter, an IoT device, or a Cloud service. For example, you could have an orchestration that consumes data from an equipment manufacturer, with an "EquipmentID" input to pass the meter reading of the equipment to the orchestration. For each input, you specify an input type, which can be a string, a numeric value, or various date formats. You can add four types of inputs to an orchestration:
■ Orchestration Inputs. You can manually enter orchestration inputs, including arrays and objects, to identify the data an orchestration consumes from third-party applications or devices. After adding a component as a step in the orchestration, you can use the Add Inputs to Orchestration button in the Transformation dialog box to automatically add inputs that are defined in a component as inputs to the orchestration. You can
5-8 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Orchestrations
remove any of the inputs as needed, and then map the orchestration inputs to the appropriate inputs in the orchestration steps.
■ Variables. You can enter variables that are available as inputs to other steps or that can be used to return data. To change the variable value in a step, you must define the variable value in the output of the step. When the step runs, the variable will change and will be available in future steps. This gives you the ability to declare variables at the beginning of an orchestration without having to specify them as orchestration inputs. As the orchestration progresses through its steps, it can use and redefine the values of these variables, and these values are available to the subsequent steps in the orchestration.
■ System Values. New orchestrations include the following default inputs: User Address Book Number, User Name, System Date, and Orchestration Input. These inputs represent the originator of the orchestration when executed at runtime. This gives you the option to map these inputs to an orchestration step.
■ Value from Steps. When you add a form request, data request, or cross reference that is configured to return values from EnterpriseOne, the variables that are defined to represent the return values appear as additional orchestration inputs. Therefore you can map the data returned from one component to a subsequent component in an orchestration. Also, if you add a service request step that generates output, the Orchestrator Studio automatically adds a
■ JDE Standard
■ Generic See Supported Input Message Formats for more information about which input format to use. 4. In the Orchestration Inputs tab of the Inputs and Values dialog box, enter the name of the input in the Input column. 5. In the Value Type column, select the input value type. Valid values are:
Creating Orchestrations with Orchestrator Studio 9.2.4 5-9 Creating Orchestrations
■ Array
Note: Array is not a valid value type if you are adding a variable input.
If you add an array for an input, the grid expands so you can define the inputs in the array. As shown in the following example, a user added an array named GridData. And then entered the inputs "Update Row" and "Quantity" for the array in the subsequent rows.
■ String
■ Numeric
■ Boolean
■ Object This input type allows you to pass a JSON object into an orchestration. You can use this input type to pass nested arrays of data by defining arrays of objects. If the input is a date, 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 that create additional inputs derived from the passed value:
■ Milliseconds
■ yyyy-MM-dd'T'HH:mm:ss.SSSZ 6. Optionally, use the Default Value column to enter a default value that you want to pass through the orchestration input. 7. Click Save to save your changes. To generate orchestration inputs from an orchestration component:
5-10 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Orchestrations
1. In the orchestration design page, click the component from which you want to generate the inputs. The action control icons are displayed for the component. 2. Click the Transformations icon. 3. In the Transformations dialog box, click the Add Inputs to Orchestration button. 4. Click the Start node and then select Inputs and Values icon from the action control icons. In the Inputs and Values dialog box, the inputs that are defined in the component appear as inputs to the orchestration. 5. Use the X button at the end of each row to remove any unnecessary inputs. 6. Modify the Value Type and Default Value columns as needed. 7. Click on the canvas to close the Inputs and Values dialog box and then click Save. See Mapping Orchestration Inputs to map these inputs to the appropriate component inputs.
5.1.5 Mapping Orchestration Inputs On the Orchestration design page, access the Transformations dialog box to map orchestration inputs to the inputs that are defined in an orchestration step, such as inputs in a rule, cross reference, white list, or any other component. The Transformations dialog box includes an Auto Map button for automatically mapping any matching inputs in the orchestration and the orchestration step. If an orchestration and an orchestration component use different input names to identify the same data, you can use the grid in the Transformations dialog box to map the inputs. This facilitates the reuse of components, and eliminates the need to create a new component to match the input names (from a third-party application or device) in a new orchestration. To better understand how to map inputs, see the example depicted in Figure. In this example, the orchestration inputs have the same name as the inputs in the service request. These inputs were automatically mapped using the Auto Map button.
Figure 5–2 Transformations Example
Initially, when you have a small number of orchestrations in your system, it is recommended to keep all the input names consistent among the orchestration and all the components (orchestration steps) used by the orchestration. But as your library of orchestrations and orchestration components increases, instead of creating new components with input names that match the names of the orchestration inputs, you can use transformations to map the orchestration inputs to an existing component. To map inputs:
Creating Orchestrations with Orchestrator Studio 9.2.4 5-11 Creating Orchestrations
1. In the orchestration design page, click the component to which you want to map orchestration inputs. The action control icons are displayed for the component. 2. Click the Transformations icon. 3. In the Transformations dialog box, click the Auto Map button to map matching inputs. The Studio automatically maps inputs with the same name, and the matching orchestration inputs appear in the Available Values column next to the matching input in the Input column. 4. To map an orchestration input to an orchestration step input that does not have the same name: a. In the grid, click the drop-down menu in the Available Values column. b. Select the orchestration input to map to the orchestration step input. 5. You can map a literal value to the orchestration step input by entering a value in the Default Value column. 6. If you are mapping values from an array, you can configure the orchestration to iterate over the orchestration step so that the step is called once for each row in the array: a. After defining the array in the Inputs and Values dialog box, click the Iterate Over drop-down list in the Transformations dialog box and select the name of the array input. b. Map the orchestration inputs for the array to the inputs that are defined in the orchestration step.
5.1.6 Retrieving and Passing Data Sets in an Orchestration You can configure a form request or a data request to return a data set. You can also configure an orchestration to pass a data set that is returned from a form request or a data request to another step in the orchestration. At runtime, the orchestration executes the form request or data request once per row in the data set. The following figure shows an example of a data request that is configured with a data set named "Employees" and will retrieve the address book number and tax ID of all employee records in EnterpriseOne.
5-12 JD Edwards EnterpriseOne Tools Orchestrator Guide Creating Orchestrations
Figure 5–3 Data Request Configured to Retrieve a Data Set
5.1.6.1 Configuring a Data Request to Retrieve a Data Set 1. On the Data Requests design page, enter a name for the data set in the Data Set Variable Name field. 2. Define the filtering criteria for the data set. 3. In the grid, click the Return icon ( ) next to the fields that you want the data request to return in a data set. 4. In the Return Fields and Variable Names section, enter a variable name for each return field. When you add this data request to an orchestration, you can use these variables to map the data in the data set to a subsequent orchestration step. For more information about configuring a data request, see Configuring a Data Request.
5.1.6.2 Configuring a Form Request to Retrieve a Data Set
Note: Data sets from grids on a power form are not supported.
1. In the Form Requests design page, locate the row