6 Process Integration for Change Order Validation

This chapter provides an overview of the process integration for change order validation and discusses solution assumptions and constraints, interfaces, core Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

6.1 Overview

The process integration for change order validation facilitates validating a change order whether it will be implemented successfully in Oracle E-Business Suite, before the change order is routed for approval in Agile PLM. This process integration is similar to the process integration for change order release. However, the difference is that the change order release process applies only to the changes in the released state of workflow, but the change order validation is applicable to all other workflow status prior to the released state.

This process can be implemented as many times as possible and in any workflow state other than the released state before the change order is released in Agile PLM. The preferred workflow state for change order validation is submitted. After validation, the change order can be re-submitted for validation or can be released to be synchronized with Oracle E-Business Suite.

6.2 Change Order Validation Process Integration

This process includes the following steps:

  1. In Agile PLM, a change order is created and an aXML file of the change order is generated through an Automated Transfer Order (ATO).

    An ATO is a routable object that triggers and tracks automated transfer of product content information from Agile to XML through Agile PLM Content Service (ACS).

  2. If the workflow status of this change order is other than released, the integration determines that the change order is being submitted for validation.

  3. The change order's aXML file is not queued, and is not subject to dependency checks.

    However, it appears in the integration Queue Monitor user interface in a separate section called Validate ECO. In this section, only the following information is displayed as read only:

    • ECO Number

    • aXML file number

    • Release Audit Status (Pending Processing, In Process, Failed, Passed, Warning). The Warning status indicates that the audit status process could not be completed because of some error (such as unable to connect to Oracle DB)

    • Log file

  4. The change orders queued for validations are processed concurrently unlike the change orders queued for synchronization, which are processed sequentially.

    If validation of a change order fails, the next change order in the queue is picked up for processing automatically.

  5. The integration carries out the process of posting data to Oracle E-Business Suite.

    However, after processing the whole change order, it does not commit the data. In an event of a failure, the error messages are sent back to Agile PLM. This is followed by a rollback of the transaction. If the process is successful, the status is updated as Validated in Agile PLM's Transfer Status attribute (change order Agile PLM P2 or P3 defined attribute for the Change.TransferStatusAttribute property.

    If the process fails, the status is updated as Validation Failed in Agile PLM's Transfer Status attribute (change order Agile PLM P2 or P3 defined attribute for the Change.TransferStatusAttribute property). Also, detailed error message is set in an P2/P3 attribute (defined in Change.TransferStatusDetailedMessageAttribute property). In addition, an email notification is sent to the AIAIntegrationAdmin user, which is configured in the WebLogic console under Security Realms.

    For more information, see Section 11.1.1.8, "Set Up Agile Item Quantity Attributes".

    Note:

    In case of an ECO validation failure, a detailed error message is updated in the Agile PLM Transfer Status Detailed Error Message attribute (change order Agile PLM P2 or P3 defined attribute for the Change.TransferStatusDetailedMessageAttribute property). To use Change.TransferStatusDetailedMessageAttribute property, Change.TransferStatusAttribute property must be included in the AIAConfigurationProperties.xml AIAConfig file.

    From Agile PLM 9.3.2 onwards, you are provided with a new Action Items tab that corresponds to each ATO. If ECO processing fails in the AIA layer, a corresponding error details is displayed in the Action Items tab in Agile PLM.

    To track business or system errors, a business user does not have to use the Queue Monitoring UI. The actions taken by the Change Analyst are as follows:

    • For business errors, modifies the CO and resubmits. This creates a new ATO.

    • For system errors, resubmits the same ATO back into AIA, either from AIA Queue UI or from Agile ATO Actions tab. To avoid inconsistency in the Action Items tabs data, it is recommended that you either use "Re-submit from AIA Queue UI" or "Re-process from Agile ATO Actions Tab". However, you must not use both these options in combination. Only one option must be used at a time.

    Note:

    The common error scenarios and their resolutions encountered during Oracle internal testing is documented in Appendix G, "Error Handling". This can be used as a Wiki resource for business users to take appropriate actions if a CO processing fails in the AIA Layer.

    For more information about configuration settings, see:

  6. Errors are logged or displayed in the Queue Monitoring UI and also stored in the database on the middle tier for future reference if needed (Similar to current ECO release processing)

Figure 6-1, Figure 6-2, Figure 6-3, and Figure 6-4 illustrate change order validation integration sequence:

Figure 6-1 Change order validation integration diagram (1 of 4)

This image is described in surrounding text

Figure 6-2 Change order validation integration diagram (2 of 4)

This image is described in surrounding text

Figure 6-3 Change order validation integration diagram (3 of 4)

This image is described in surrounding text

Figure 6-4 Change order validation integration diagram (4 of 4)

This image is described in surrounding text

6.2.1 Exceptions

The following exception conditions create error messages for this integration process:

  • Failure to update the queue status

  • Errors raised during the transformations

  • Failure to connect to an Oracle DB

6.2.2 Change Order Validation Integration Services Orchestration

Figure 6-5 illustrates the change order validation integration services orchestration:

Figure 6-5 Change order validation integration services orchestration

This image is described in surrounding text

Table 6-1 lists the activities involved in the orchestration:

Table 6-1 Activities Involved in Orchestration

Step Activity Remarks

1

Agile PLM ACS transmits Agile PLM ECO data in a predefined XML format known as aXML. This file will be queued up for further processing

Agile PLM ACS acts as a trigger for ECO use case.

2

The QueueController Framework reads the highest-priority Queue Message and transforms the payload (aXML) to AgileValidateEngineeringChangeOrderListABM.

QueueController processes the payload.

3

QueueController invokes ValidateEngineeringChangeOrderListAgileReqABCSImpl with AgileValidateEngineeringChangeOrderListABM as input.

 

4

AgileValidateEngineeringChangeOrderListABM is transformed into ValidateEngineeringChangeOrderListEBM.

Enterprise Business Message (EBM) is generated.

5

ValidateEngineeringChangeOrderListAgileReqABCSImpl invokes ValidateEngineeringChangeOrderListEbizProvABCSImpl with ValidateEngineeringChangeOrderListEBM as input.

 

6

ValidateEngineeringChangeOrderListEbizProvABCSImpl transforms ValidateEngineeringChangeOrderListEBM into the input of Oracle E-Business Suite Service and calls that service.

The Application Business Connector Service (ABCS) validates the ECO creation by creating the ECO, related items, and Bill of Material (BOM) in Oracle E-Business Suite to check for any errors.

In the event of failure, the error messages are sent to Agile PLM.

In the event of either Success or Failure, the transaction is rolled back.

7

ValidateEngineeringChangeOrderListEbizProvABCSImpl invokes ValidateEngineeringChangeOrderListAgileReqABCSImpl with ValidateEngineeringChangeOrderListResponseEBM as input.

 

8

ValidateEngineeringChangeOrderListAgileReqABCSImpl sends the status to the Queue Controller to update the queue.

This status is updated against the Queue message in the database by the QueueController

9

ValidateEngineeringChangeOrderListAgileReqABCSImpl transforms ValidateEngineeringChangeOrderListResponseEBM into AgileValidateEngineeringChangeOrderListResponseABM.

AgileValidateEngineeringChangeOrderListResponseABM is sent as an input to the Agile PLM Web service.

AgileValidateEngineeringChangeOrderListResponseABM is sent to ValidateEngineeringChangeOrderListAgileReqABCSImpl.

The Web services update the transfer status on the change order in Agile PLM, which will be predefined P2 or P3 attributes on ECO object in Agile PLM.

In an error scenario, error message is set in an P2 or P3 attribute. From Agile PLM 9.3.2 onwards, you are provided with a new Action Items tab that corresponds to each ATO. A previously errored ATO is re-sent through a re-process action in ATO Action Item tab.

   

In case of failure, the notification email will be sent to the email ID of the user mentioned for the NotifyPerson property in AIAConfigurationProperties.xml file.

Note: The ValidateEngineeringChangeOrderListAgileReqABCSImpl composite uses the oracle/wss_http_token_client_policy client security policy while calling the ChangeABS service 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 need to be setup correctly so that the Agile service is invoked successfully from the AIA composite in the FMW layer.


6.2.3 Defining Transaction Boundaries and Recovery Details

The process integration for change order validation flow includes a list of services and four transaction boundaries. This flow includes the following services:

  • QueueProcessorService

  • QueueProcessorServiceImpl

  • ValidateEngineeringChangeOrderListAgileReqABCSImpl

  • ValidateEngineeringChangeOrderListEbizProvABCSImpl

  • ValidateEngineeringChangeOrderListEbizAdapter

  • ValidateEngineeringChangeOrderListEbizProvABCSImpl

The following table describes the transactions, database operations involved and solutions in case of any errors.

Table 6-2 Transaction Boundaries and Recovery details

S.No Transaction DB Operations In Case of Error Recovery

1

QueueProcessorServiceImpl with AgileValidateEngineeringChangeOrderListABM as input invokes ValidateEngineeringChangeOrderListAgileReqABCSImpl service

None

 

Submit the ECO again from Agile or re-submit Validate ECO from QueueUI

2

ValidateEngineeringChangeOrderListAgileReqABCSImpl service transforms AgileValidateEngineeringChangeOrderListABM into ValidateEngineeringChangeOrderListEBM and invokes ValidateEngineeringChangeOrderListEbizProvABCSImpl service with input as ValidateEngineeringChangeOrderListEBM

AIA cross-referenceentries

RollBack Cross-Reference Entries

Submit the ECO again from Agile or re-submit Validate ECO from QueueUI

3

ValidateEngineeringChangeOrderListEbizProvABCSImpl transforms ValidateEngineeringChangeOrderListEBM into the input of Oracle E-Business Suite Service and calls that service.

ValidateEngineeringChangeOrderListEbizProvABCSImpl invokes ValidateEngineeringChangeOrderListEbizAdapter which sends the response back to ValidateEngineeringChangeOrderListAgileReqABCSImpl

None

 

Submit the ECO again from Agile or re-submit Validate ECO from QueueUI

4

After Receiving response ValidateEngineeringChangeOrderListAgileReqABCSImpl invokes QueueProcessorServiceImpl CallbackUtility to update status using QueueProcessorServiceImpl

None

 

Submit the ECO again from Agile or re-submit Validate ECO from QueueUI


For more information about rollback procedures, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring Oracle AIA Processes for Error Handling and Trace Logging", "Configuring Fault Policies to Not Issue Rollback Messages".

6.3 Solution Assumptions and Constraints

  • If the customer uses Agile PLM multisites, the administrator can assign organization names to sites to indicate the destination Oracle E-Business organization that is set for an item.

  • ATOs will be used to carry the data across.

  • The change order validation process can be initiated as many times as per need.

  • The change order validation processes will not be managed through queuing currently in use for the ECO release processing.

    It will be displayed in the Queue Monitoring UI in a different tab named validate ECO.

  • The change order validate processes are processed concurrently unlike the ECO Release processes, which are processed sequentially.

6.4 Agile PLM Interfaces

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

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

Interface Description

ValidateEngineeringChangeOrderListAgileReqABCSImpl

ChangeABS.wsdl

Used to validate an EngineeringChangeOrder in Oracle E-Business Suite


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

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

Interface Description

ValidateEngineeringChangeOrderAgileListReqABCSImpl

EngineeringChangeOrderABM.xsd

EngineeringChangeOrderABO.xsd

Contains AgileValidateEngineeringChangeOrderListABM and AgileValidateEngineeringChangeOrderListResponseABM


6.5 Oracle E-Business Suite Interfaces

Table 6-5 lists the Oracle E-Business Suite WSDL files:

Table 6-5 Oracle E-Business Suite WSDL files

Interface Description

ValidateEngineeringChangeOrderListEbizProvABCSImpl

ValidateEngineeringChangeOrderListEbizAdapter.wsdl

Used for the OA adapter INV_EBI_CHANGE_ORDER_PUB/VALIDATE_CHANGE_ORDER_LIST PL/SQL function call


Table 6-6 lists the Oracle E-Business Suite XSD files:

Table 6-6 Oracle E-Business Suite XSD files

Interface Description

ValidateEngineeringChangeOrderListEbizProvABCSImpl

APPS_INV_EBI_CHANGE_ORDER_PUB_VALIDATE_CHANGE_ORDER_LIST.xsd

Defines the input and output ABM of the PL/SQL API call

The package used is INV_EBI_CHANGE_ORDER _PUB/ VALIDATE_CHANGE_ORDER_LIST API call.


6.6 Core AIA Components

Table 6-7 lists the industry components used in validate integration ECO and Part/Product Release (PREL):

Table 6-7 Industry components used in validate integration ECO and PREL

Component Name

Enterprise Business Objects (EBOs)

EngineeringChangeOrderEBO

EBMs

ValidateEngineeringChangeOrderListEBM

ValidateEngineeringChangeOrderListResponseEBM


Table 6-8 lists the core components locations:

Table 6-8 Core components locations

Component Location

EBO and EBM XSD files

$AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Core/EBO/

$AIA_HOME/AIAMetaData/AIAComponents/ ApplicationObjectLibrary /Ebiz/Release1/Core

WSDL files

$AIA_HOME/AIAMetaData/AIAComponents/ EnterpriseBusinessServiceLibrary/Core/EBO/

$AIA_HOME/AIAMetaData/AIAComponents/ ExtensionServiceLibrary/Ebiz

$AIA_HOME/AIAMetaData/AIAComponents/ApplicationConnectorServiceLibrary/Ebiz/V1


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 will remain intact after a patch or an upgrade.

For more information, see Oracle Fusion Middleware Concepts and Technologies Guide for Oracle Application Integration Architecture Foundation Pack 11g Release 1, "Understanding Extensibility."

6.6.1 Agile PLM and Oracle E-Business Suite Components for Change Order Validation

Table 6-9 Agile PLM and Oracle E-Business Suite components for change order validation:

Table 6-9 Agile PLM and Oracle E-Business Suite components

Services Agile PLM (Requester) Oracle E-Business Suite (Provider)

Application Business Message (ABM)

AgileValidateEngineeringChangeOrderListABM

AgileValidateEngineeringChangeOrderListResponseABM

ValidateECOABM

ValidateECOResponseABM

Application Business Connector Service (ABCS)

ValidateEngineeringChangeOrderListAgileReqABCSImpl

ValidateEngineeringChangeOrderListEbizProvABCSImpl

Business Process Execution Language (BPEL)

CreateQueueService

QueueProcessorServiceImpl

---

Adapter service

ACSAXMLJMSConsumer

CreateQueueControlService

QueueProcessorService

EngineeringChangeOrderService

ValidateEngineeringChangeOrderListEbizAdapter


Table 6-10 lists the core components locations:

Table 6-10 Core components locations

Component Location

Application Business Objects, ABM, and Common XSD files

$AIA_HOME/AIAMetaData/AIAComponents/ ApplicationObjectLibrary/Agile PLM/V1/schemas

$AIA_HOME/AIAMetaData/AIAComponents/ ApplicationObjectLibrary/Ebiz/V1/schemas

$AIA_HOME/AIAMetaData/AIAComponents/ ApplicationObjectLibrary /Ebiz/Release1/Core

WSDL files

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

$AIA_HOME/AIAMetaData/AIAComponents/ ApplicationObjectLibrary/Ebiz/wsdls

$AIA_HOME/AIAMetaData/AIAComponents/ ExtensionServiceLibrary/Ebiz

$AIA_HOME/AIAMetaData/AIAComponents/ApplicationConnectorServiceLibrary/Ebiz/V1


6.7 Integration Services

The process integration for change order validation consists of the following services:

  • ValidateEngineeringChangeOrderListAgileReqABCSImpl

  • ValidateEngineeringChangeOrderListEbizProvABCSImpl

6.7.1 ValidateEngineeringChangeOrderListAgileReqABCSImpl

This service is implemented as an asynchronous BPEL process. ValidateEngineeringChangeOrderListAgileReqABCSImpl is used for transforming the AgileValidateEngineeringChangeOrderListABM into the ValidateEngineeringChangeOrderListEBM. This service invokes the initiate operation on the ValidateEngineeringChangeOrderListEbizProvABCSImpl with the ValidateEngineeringChangeOrderListEBM as input for the validation of an ECO in Oracle E-Business Suite.

The ValidateEngineeringChangeOrderListResponseEBM is received from the ValidateEngineeringChangeOrderListEbizProvABCSImpl and, based on the status of the ECO validation in Oracle E-Business Suite; the QueueController is invoked to update the status of the queue message. In addition, the transfer status attribute in the change order is updated by this service.

  1. The QueueController creates the AgileValidateEngineeringChangeOrderListABM and invokes the ValidateEngineeringChangeOrderListAgileReqABCSImpl.

  2. The ValidateEngineeringChangeOrderListAgileReqABCSImpl transforms the ValidateEngineeringChangeOrderListResponseEBM into the AgileValidateEngineeringChangeOrderListResponseABM, which is sent as an input to the Agile PLM Web service.

  3. The ECO validation status is updated and sent back to Agile PLM. AgileValidateEngineeringChangeOrderListResponseABM is sent back to the ValidateEngineeringChangeOrderListAgileReqABCSImpl.

6.7.2 ValidateEngineeringChangeOrderListEbizProvABCSImpl

This service is implemented as an asynchronous BPEL process.

This is a single operation service. This accepts an ECO containing item and a BOM information message as a request and returns a response.

In the Agile PLM to Oracle E-Business Suite flow, ValidateEngineeringChangeOrderListEbizProvABCSImpl is used for transforming ValidateEngineeringChangeOrderListEBM into ValidateECOABM, which invokes the ValidateEngineeringChangeOrderList operation in Oracle E-Business Suite.

In the return flow, the Oracle E-Business Suite adapter service sends ValidateECOResponseABM, which is transformed by ValidateEngineeringChangeOrderListEbizProvABCSImpl into ValidateEngineeringChangeOrderListResponseEBM.