Skip Headers
Oracle® Application Integration Architecture Oracle Design to Release Integration Pack for Agile PLM Product Lifecycle Management and JD Edwards EnterpriseOne Implementation Guide
Release 11.1

Part Number E22282-03
Go to Documentation Home
Go to Book List
Book List
Go to Table of Contents
Go to Feedback page
Contact Us

Go to previous page
Go to next page
PDF · Mobi · ePub

6 Process Integration Flow for ECO Implementation

This chapter provides an overview of the process integration for Engineering Change Order (ECO) implementation and discusses:

6.1 Overview

After synchronizing an ECO to JD Edwards EnterpriseOne, any changes you make to the ECO in JD Edwards EnterpriseOne must also be made in Agile PLM. If the status of an ECO changes and moves to an implemented state in JD Edwards EnterpriseOne, then you must notify Agile PLM. This case has restrictions in a multi-organization environment because the interface changes from centralized (Agile PLM) to decentralized (JD Edwards EnterpriseOne).

ECO is implemented completely in JD Edwards EnterpriseOne. You can complete this step manually or set the scheduler to update the ECO in Agile PLM. Because an ECO may be created in multiple branch/plants in JD Edwards EnterpriseOne and can have a different status in each branch/plant, carry out this operation only when the ECO is completely implemented in all the branch/plants for which it was created in JD Edwards EnterpriseOne.

To transfer change order status information from JD Edwards EnterpriseOne to Agile PLM, you run an extract program (R3013D) in JD Edwards EnterpriseOne. This program generates an XML file that contains the data to be uploaded into Agile PLM.

The R3013D program retrieves ECOs that have changed since the last successful run (the last successful run date and time are stored in an IntegrationTimeStamp table - F0095 for this Universal Batch Engine [UBE]) or the As of Date specified in the processing option.

The system writes this file to a folder on the JD Edwards EnterpriseOne Enterprise server. The location of this folder is specified in the processing options of the extract program. The details of the extract programs and files are discussed in later sections of this chapter.

After creating the XML files, you can use one of two methods to pass that data to Agile PLM:

If you use the FTP method, you must configure an FTP adapter to monitor the JD Edwards EnterpriseOne Enterprise Server folders for newly created extract files. When the FTP adapter locates a new file, the appropriate Mediator process debatches the files into separate instances. You use debatching to split large XML files into several smaller XML files.

Alternatively, you can move the XML files to the JD Edwards EnterpriseOne JDEE1In folder on the Weblogic Server. If you use this method, the appropriate Mediator process detects the file and debatches it into separate instances.

After the XML files are debatched, routing services route each XML file to UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl.

The UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl performs the following actions:

The Agile ABCS provides a call back response to EngineeringChangeOrderResponseEBS. UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl receives this response, which updates the IntegrationTimeStamp table with the last successful run date and time.


If you use the FTP method, you should configure an FTP server on the JD Edwards EnterpriseOne Enterprise server. Configure the FTP adapter to use the FTP connection that is set up on the JD Edwards EnterpriseOne server.

6.2 ECO Implementation Process Integration

This section discusses:

6.2.1 Updating ECO Flow

The Update ECO process flow includes these steps:

  1. he requester ABCS, defined as an asynchronous process, receives a list of ABMs from the JD Edwards EnterpriseOne UBE batch extracts.

    The list of ABMs is those that have update_date greater than the last_successful_run_date of the batch program.

  2. The requester BPEL process filters the list of ABMs based on the ID to a list of ABMs those IDs are present in the XREF tables in the Fusion Middleware (FMW) layer.

    This filtering provides a list of change orders that were actually from Agile PLM alone. The original list of ABMs may be from non-Agile PLM sources as well.

  3. The BPEL process then makes a Mediator call out for endpoint virtualization.

  4. The ABM is transformed to an EBM.

  5. An asynchronous request-delayed response call is made to the EngineeringChangeOrderEBS with the EngineeringChangeOrderListEBM.

  6. The BPEL instance is invoked when the asynchronous call gets back from the provider and provides the status of the transaction back to the caller.

    Performance is not affected because the call is scheduled and invoked by a server not by a user.

  7. The concurrent program logs the status of this call.

Figure 6-1 illustrates the update ECO flow from JD Edwards EnterpriseOne to Agile PLM:

Figure 6-1 Update ECO flow from JD Edwards EnterpriseOne to Agile PLM

This image is described in surrounding text

6.2.2 Changing Status Operation

When there is a change of status in JD Edwards EnterpriseOne, the status of the workflow in Agile PLM is updated through the update ECO flow.

The update ECO provider service in Agile PLM does the following:

  1. Whenever a change occurs to the status change of any ECO in JD Edwards EnterpriseOne, JD Edwards EnterpriseOne sends the ECO status to Agile PLM.

  2. UpdateEngineeringChangeOrderListAgileProvABCSImpl service checks the status of the ECO sent by JD Edwards EnterpriseOne and updates the status field in the ECO in Agile PLM.

  3. If the ECO that comes in from JD Edwards EnterpriseOne has the Implemented status, the system pushes the change in Agile PLM for the ECO to the Implemented status in addition to updating the status field in ECO in Agile PLM.

    For this, the entry in the CHANGE_STATUS table is used.

    If no entry corresponds to the event change implementation and the change type is the same as the change type of the ECO in Agile PLM, such as ECO or Site change Order (SCO), only then is the change moved to the next status; otherwise, the change is not moved forward to the next status at all.

  4. The CHANGE_STATUS table is located in the AIA Schema created on the Service Oriented Architecture (SOA) server.

    The default user ID is plmpip. The password is the same password that the customer has setup for the FP AIA database. This value is the same as the property fp.db.aia.password, which can be found in the AIAInstallProperties.xml file. The DB details, such as URL, port, server ID, and so on can be found in the AIAInstallProperties.xml file at <AIA_INSTANCE>/config/AIAInstallProperties.xml.


Table 6-1 Change Status Sample Data






Change Implemented



Default Change Orders


  • The EVENT column key is Change Implemented, and the OUTCOME column key is SUCCESS.

  • In the SUBCLASS column, set up the change order subclass as ECO or SCO.

  • In the WORKFLOW column, set up the workflows.

    For example, if you are using Default Change Order workflow for ECO, enter Default Change Order (the values can be picked up from Agile Java client).

  • In the NEXT_STATUS column, enter the status of the workflow you want it to move to when the conditions are met.

Sample Use Case

  1. Release an ECO, C0001, from Agile PLM to JD Edwards EnterpriseOne.

  2. In JD Edwards EnterpriseOne, create this ECO in three branch/plants, BP10, BP20, and BP30, using the new part and product release process.

  3. Change the status of this ECO in 10 to Implemented in JD Edwards EnterpriseOne.

  4. JD Edwards EnterpriseOne sends this implemented ECO status to Agile PLM.

  5. When it is received on the Agile PLM side, the ECO data is updated and workflow status of ECO is changed.

    The change of workflow status is based on the rule: When the status of ECO is implemented in any of the branch plants in JD Edwards EnterpriseOne, move the ECO in Agile PLM to the Implemented status.

    The status field in Agile PLM is also updated with the Implemented status.

  6. If an entry in the CHANGE_STATUS table corresponds to the event Change Implemented and SubClass ECO, and to workflow mentioned on ECO C0001 in Agile PLM, read the next status and send it to the next status mentioned.

  7. If the data mentioned has no entry in the table, the system does not attempt to send ECO C0001 to the next status.

6.2.3 Updating ECO Orchestration

Table 6-2 lists the activities involved in ECO Update orchestration:

Table 6-2 Activities involved in ECO update orchestration

Step Activity Remarks


Run R3013D to export ECOs

This activity occurs when ECO-related information is updated in JD Edwards EnterpriseOne


EngineeringChangeOrderListExtractJDEE1FTPConsumer or EngineeringChangeOrderListExtractJDEE1FileConsumer reads and debatches the file

EngineeringChangeOrderListExtractJDEE1Consumer is triggered


Invoke the UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl process

UpdateEngineeringChangeOrderListEBM is created inside UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl


UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl invokes the EngineeringChangeOrderEBS with UpdateEngineeringChangeOrderList operation

An invoke activity in UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl invokes the UpdateEngineeringChangeOrderList operation on EngineeringChangeOrderEBS with UpdateEngineeringChangeOrderListEBM as the input


EngineeringChangeOrderEBS routes UpdateEngineeringChangeOrderListEBM to UpdateEngineeringChangeOrderListAgileProvABCSImpl

EngineeringChangeOrderEBS routes UpdateEngineeringChangeOrderListEBM to UpdateEngineeringChangeOrderListAgileProvABCSImpl


UpdateEngineeringChangeOrderListAgileProvABCSImpl does the transformation

UpdateEngineeringChangeOrderListAgileProvABCSImpl transforms UpdateEngineeringChangeOrderListEBM into AgileUpdateEngineeringChangeOrderListABM


UpdateEngineeringChangeOrderListAgileProvABCSImpl invokes Agile web services

Agile web services are invoked with AgileUpdateEngineeringChangeOrderListABM as input. The status of ECO is updated in Agile PLM. AgileUpdateEngineeringChangeOrderListResponseABM is sent back to UpdateEngineeringChangeOrderListAgileProvABCSImpl.

Note: The UpdateEngineeringChangeOrderListAgileProvABCSImpl composite uses the oracle/wss_http_token_client_policy client security policy while calling ChangeABS and MergeABS services hosted on the Agile server. The security credentials for this are stored in the csf-key AgileWebServicesKey on Fusion Middleware (FMW). The Agile username and password must be setup correctly so that the Agile service is invoked successfully from the AIA composite in the FMW layer.

6.3 Solution Assumptions and Constraints

This design assumes that the following statements are true:

  1. The ECO update flow is only from JD Edwards EnterpriseOne to Agile PLM.

  2. This integration does not support updates to ECOs in Agile PLM.

  3. This integration does not support sending ECO parts list and related items information from JD Edwards EnterpriseOne.

  4. The JD Edwards EnterpriseOne IntegrationTimeStampManager business service updates the last batch extract date and time to the JD Edwards EnterpriseOne server date and time.

  5. If you change an ECO status in JD Edwards EnterpriseOne, the system updates Agile PLM.

  6. When Agile PLM is configured for multiple sites (and when multiple sites are attached to an ECO), a single ECO in Agile PLM creates multiple pre-approved ECOs in JD Edwards EnterpriseOne.

    In this integration, all the pre-approved ECOs go into an implemented state when the scheduled batch, R30510 (BOM Creation batch), is run. In case of any failures, such as if an ECO is not implemented, the user should ensure that the failed ECO is implemented before the update ECO flow is triggered; Agile PLM considers the ECO to be implemented if any one of the corresponding ECOs at the JD Edwards EnterpriseOne end goes to an implemented state. Alternatively, if users want to send the failure status to Agile PLM, they must manually configure the status on P48020 to reflect the failure. To do this, create a new status user-defined code item for the error and configure the ECO_STATUS_CODE DVM, and then you can send the changes during the subsequent run of the update ECO flow. The failure status appears only in the Page 2 Status Flex field (you must configure this), while the workflow status for the ECO may still appear as Implemented.

  7. The system does not send any effectivity date changes in JD Edwards EnterpriseOne back to Agile PLM.

6.4 Agile PLM Interfaces

Table 6-3 lists the Agile PLM Web Services Definition Language (WSDL) files:

Table 6-3 WSDL files

Interface Description




Used to update change order information in Agile PLM.

Table 6-4 lists the Agile PLM XML Schema Definition (XSD) files:

Table 6-4 XSD files

Interface Description




Contains UpdateEngineeringChangeOrderListABM and UpdateEngineeringChangeOrderListResponseABM

6.5 JD Edwards EnterpriseOne Interfaces

Table 6-5 lists the JD Edwards EnterpriseOne WSDL files:

Table 6-5 JD Edwards EnterpriseOne WSDL files

Interface Description




Table 6-6 lists the JD Edwards EnterpriseOne XSD files:

Table 6-6 JD Edwards EnterpriseOne XSD files

Interface Description



Contains the Update ECO Request ABM

6.6 Core AIA Components

Table 6-7 lists the industry components for process integration for updating ECO flow:

Table 6-7 Industry Components for Updating ECO flow

Component Name








Table 6-8 lists the locations of components:

Table 6-8 Location of components



EBO and EBM XSD files


WSDL files


For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in Oracle Enterprise Repository.

For more information about using the Oracle Enterprise Repository and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack 11g Release 1, "Configuring and Using Oracle Enterprise Repository as the Oracle AIA SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected, and remains intact after a patch or an upgrade.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack 11g Release 1.

6.7 Agile PLM and JD Edwards EnterpriseOne Components for Update ECO

Table 6-9 lists the Agile PLM and JD Edwards EnterpriseOne components for Update ECO:

Table 6-9 Agile PLM and JD Edwards EnterpriseOne components for Update ECO

Service JD Edwards EnterpriseOne (Requester) Agile PLM (Provider)



AgileUpdateEngineeringChangeOrderListABM AgileUpdateEngineeringChangeOrderListResponseABM







Table 6-10 lists the locations of the core components:

Table 6-10 Location of components

Component Location

WSDL files

$AIA_HOME/AIAMetaData/AIAComponents/ ApplicationObjectLibrary/Agile/V1/wsdls

$AIA_HOME/AIAMetaData/AIAComponents/ ApplicationObjectLibrary/JDEE1/V1/wsdls

Application Business Objects, ABM, and Common XSD files



6.8 Integration Services

The process integration for ECO implementation from JD Edwards EnterpriseOne to Agile PLM uses these industry components:

6.8.1 EngineeringChangeOrderEBS

EngineeringChangeOrderEBS is an EBS, which exposes the operations related to the EngineeringChangeOrder Integration on the EngineeringChangeOrder EBO. The routing rules are:

  • EngineeringChangeOrderEBS

    UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl: Route UpdateEngineeringChangeOrderListEBM to UpdateEngineeringChangeOrderListAgileProvABCSImpl

  • EngineeringChangeOrderResponseEBS

    UpdateEngineeringChangeOrderListAgileProvABCSImpl: Route UpdateEngineeringChangeOrderListResponseEBM to UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl

6.8.2 UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl

UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl transforms the JD Edwards EnterpriseOne message (UpdateEngineeringChangeOrderABM) into UpdateEngineeringChangeOrderListEBM, calls the routing service to update ECO, and gets the UpdateEngineeringChangeOrderListResponseEBM response from Agile PLM. It then invokes the integration time stamp manager service to update the integration time stamp table with the last runtime and date.

Process flow:

  1. Picks up the xml file based on the properties set up in file/ftp consumer

  2. Receives UpdateEngineeringChangeOrderABM from file/ftp consumer

  3. Transforms JD Edwards EnterpriseOne-specific UpdateEngineeringChangeOrderABM into UpdateEngineeringChangeOrderListEBM

  4. Populates the EBM header

  5. Calls the EngineeringChangeOrderEBS service to send message UpdateEngineeringChangeOrderListEBM to UpdateEngineeringChangeOrderAgileProvABCSImpl

  6. Receives UpdateEngineeringChangeOrderListResponseEBM from EngineeringChangeOrderResponseEBS

  7. Calls the Integration Time Stamp Manager service to update the integration time stamp table with the last runtime and date

  8. Transforms UpdateEngineeringChangeOrderListJDEE1ReqABCSImpl as follows


6.8.3 UpdateEngineeringChangeOrderListAgileProvABCSImpl

The UpdateEngineeringChangeOrderListAgileProvABCSImpl updates an ECO in Agile PLM. In this integration, UpdateEngineeringChangeOrderListAgileProvABCSImpl updates the status-related fields. It is implemented as an asynchronous process.

Process flow:

  1. EngineeringChangeOrderEBS with UpdateEngineeringChangeOrderListReqMsg, which contains UpdateEngineeringChangeOrderListEBM as input, invokes UpdateEngineeringChangeOrderListAgileProvABCSImpl

  2. The system calls the transform operation to convert the UpdateEngineeringChangeOrderListEBM into AgileUpdateEngineeringChangeOrderListABM

  3. The system passes AgileUpdateEngineeringChangeOrderListABM as input to the web service operation, which carries out the following functions for this integration:

    Update Status-related attributes on ECO (for Agile PLM to JD Edwards EnterpriseOne flow)

  4. After Coarse Grained API UpdateChange successfully executes, AgileUpdateEngineeringChangeOrderListResponseABM is received

  5. If the UpdateChange service operation fails on the Agile PLM side, a new fault is generated and sent across with an appropriate error message