Oracle® Application Integration Architecture Agile Product Lifecycle Management Integration Pack for Oracle E-Business Suite: Design to Release Implementation Guide Release 11.3 E40004-02 |
|
|
PDF · Mobi · ePub |
This chapter provides an overview of the process integration for variant management and discusses solution assumptions and constraints, interfaces, core Oracle Application Integration Architecture (Oracle AIA) components, and integration services.
This chapter includes the following sections:
Product variants are defined very early in the development process. In most cases, the decision that a product should come in multiple variants (and which ones) is already made even before designers start with their work.
That said, the development and the engineering team (possibly in collaboration with a product manager) would further specify the characteristics of the product and its variants. This includes the definition that which product components (parts, assemblies) are optional and which components can be picked from various options. The engineering team will also define technical configuration rules (constraints), reflecting their knowledge of the product components that cannot be combined (or the other way round: they always have to be used in combination).
As the product development process moves forward, the quality team will be involved. Together with the engineering team, they define reference configurations (individual product variants that cover, for example, the extreme combinations and the most expected combination of product components). These reference configurations are used for validation, using simulations (virtual tests) and physical tests. Only when these tests verify that the overall design is acceptable, the product will reach the corresponding approvals.
Following the approval, the product data (represented by a Super-BOM ideally with technical constraints captured by the engineering team) is passed to Oracle E-Business Suite and downstream processes. These processes include the definition of detailed configuration rules and the production planning.
The process integration for variant management integrates Agile PLM with Oracle E-Business Oracle Configurator (CZ) and enables Agile PLM users, by using Oracle Configurator, to view different User Interfaces (UIs), created for the same Bills of Material (BOM) model, based on the user login or profile. Oracle Configurator Developer (OCD) responsibility helps the user to define rules, customize the UI, and then publish the UI based on different parameters such as application, usages, and effective dates.
Figure 9-1illustrates the cross-application integration process for the Variant Management solution:
The variant management process integration consists of the following flows:
Agile PLM to Oracle PIM:
New Part Request (Model, Option Class, and Standard)
Transfer pre-release prototype items (model, option class, and standard)
Release or transfer (Prototype) super BOM through ECO
Release super BOM through ECO
Oracle PIM to Agile PLM:
Oracle change order implementation information to Agile PLM (Event based and batch)
Oracle item operational attributes to Agile PLM (Batch)
Agile PLM to Oracle Configurator:
Generate instance BOM using Option Picker
This chapter focuses on the Agile PLM to Oracle Configurator integration flow. Other flows are discussed in the previous chapters. It also discusses the additional attributes needed for variant management in the other integration flows.
For more information about Oracle Generic Configurator User Interface, see Oracle Configurator Implementation Guide.
The following high-level process steps illustrate how a typical variant management process spans multiple applications and how it is supported by this process integration:
Model, option class, and standard items are defined in Agile PLM
In order to support the variant management process integration, the new part request (NPR) and the item synchronization process integrations described previously, include model and option class item types.
The Super-Bills of Material (BOM) is defined in Agile PLM
A pre-release version of the Super-BOM is passed to Oracle E-Business PIM, through this process integration, for the initial creation of the corresponding Model/Option (M/O) BOM.
In Agile PLM, a change order is created for the Model Option BOM. The change order release process supports Agile PLM items and the Variant Management sub-items model and option class, and their attributes: Minimum, Maximum, Optional, and Mutually Exclusive.
After releasing the BOM model into Oracle E-Business Suite, the change order must be implemented in Oracle E-Business Suite before importing into CZ. The released change order status is set to Implemented in Oracle E-Business Suite. The Oracle Generic Configurator User Interface can display only those BOM items that are set to Implemented.
The Oracle Configurator Option Picker servlet from Agile PLM, providing required parameters for the Configurator to retrieve the appropriate M/O BOM from PIM, is launched.
User logs in to OptionPicker if called the first time during this Agile PLM session.
The Configurator pulls the latest version of M/O BOM (including implicit BOM rules) from PIM into its own cache
The BOM model is imported into Oracle Configurator Developer in Oracle E-Business Suite using the Populate Configuration Models concurrent program.
User selects the desired options and enters quantities in the Option Picker.
Once the BOM Model is imported into Oracle Configurator Repository, the user can define the rules on the model and its components, create a UI using the seeded templates or custom templates, and publish the created UI to Agile PLM.
While publishing the UI to Agile PLM, the user must select the custom application from the list of available applications and set the publication look up mode and usage as required. During a UI launch from Agile PLM, the values in profiles 'CZ: Publication Lookup Mode' and 'CZ: Publication Usage' decide which UI to launch, if multiple UIs are published to Agile PLM with different publication lookup modes and usages.
The options picked by the user are populated in Agile PLM as an Instance BOM.
After the user completes the configuration of the Instance BOM and clicks Finish, a termination message (containing the configuration data) is returned from Oracle E-Business Suite to a servlet in AIA.
The Configurator passes the picked items to Agile PLM through this process integration to create an Instance-BOM configuration in Agile PLM
The servlet in the Enterprise Business Service (EBS) Application Business Connector Service (ABCS) transforms the termination message to SyncBillOfMaterialsConfigurationListABM.
SyncBillOfMaterialsConfigurationListABM is then transformed into SyncBillOfMaterialsConfigurationListEBM.
The enterprise service routes the configuration as SyncBillOfMaterialsConfigurationListEBM to SyncBillOfMaterialsConfigurationListAgileProvABCSImpl.
SyncBillOfMaterialsConfigurationListAgileProvABCSImpl converts SyncBillOfMaterialsConfigurationListEBM to ABM and sends to the Agile PLM Configurator Termination Web service.
A notification is sent to the user in Agile PLM when an instance BOM is derived from the Configurator or if an error occurs. To receive this notification, users need to modify the settings in the Agile PLM Java client.
For more information about the termination message, see Oracle Configurator Developer's User Guide.
For more information, see Oracle Configurator Developer's User Guide.
Note:
The Agile PLM termination Web service can derive an instance BOM only for BOM items, which are transferred through the Design to Release Process. The instance BOM cannot be derived for BOM items that have not been transferred from Agile PLM.
The Instance BOM is tested and processed for cost and compliance validation and further modifications
A new version of the Super-BOM is generated and synchronized with the corresponding M/O BOM in PIM.
Steps 3-9 are repeated iteratively until a production revision of the Super-BOM is created and released.
Figure 9-2 illustrates the Launch Generic Configurator User Interface and Configure Model Option BOM with Generic Configurator User Interface.
The following exception condition creates error messages for this integration process:
An error message will be provided when the user clicks Launch Configurator button from Agile PLM (before CZ is actually launched). In this case, the error will be displayed in Agile PLM.
Figure 9-3 and Figure 9-4 illustrate the variant management option picker integration services orchestration:
Table 9-1 lists the activities involved in the variant management integration services orchestration related to the option picker and Oracle Configurator:
Table 9-1 Activities in Variant Management Integration Service
Step | Activity | Remarks |
---|---|---|
1. |
Invoke GetConfiguratorURLAgileReqABCSImpl process. |
Launch the Oracle Configurator Option Picker servlet from Agile PLM. It invokes the process to obtain the Configurator URL. |
2. |
GetConfiguratorURLAgileReqABCSImpl invokes GetConfiguratorURLEbizProvABCSImpl. |
An invoke activity in GetConfiguratorURLAgileReqABCSImpl transforms AgileGetConfiguratorURLABM into GetConfiguratorURLEBM. It also invokes GetConfiguratorURLEbizProvABCSImpl. |
3 |
GetConfiguratorURLEbizProvABCSImpl process forms initial message. |
GetConfiguratorURLEbizProvABCImpl transforms GetConfiguratorURLEBM and forms the initial message needed to launch the Configurator UI. It determines the Configurator URL from the Oracle E-Business Suite Profile option. |
4 |
GetConfiguratorURLEbizProvABCSImpl sends the response to GetConfiguratorURLAgileReqABCSImpl. |
GetConfiguratorURLAgileReqABCSImpl transforms the message into AgileGetConfiguratorURLRespABM with the Configurator URL and the Configurator UI is displayed. |
5 |
User selects the options in the Configurator screen until the configuration process is complete. |
|
6 |
· Selecting Finish in the Configurator UI invokes SyncBillOfMaterialsConfigurationEbizJMSProducer. |
This will send a termination message through the integration to the JMS Queue. |
7 |
JMS Queue invokes SyncBillOfMaterialsConfigurationEbizJMSConsumer. |
When the message is received in the queue, the process invokes the JMS Consumer and sends SyncBillOfMaterialsConfigurationListABM. |
8 |
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl invokes SyncBillOfMaterialsConfigurationListAgileProvABCSImpl. |
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl receives SyncBillOfMaterialsConfigurationListABM and transforms it to SyncBillOfMaterialsConfigurationListEBM. SyncBillOfMaterialsConfiguationListEBM transforms the ABM and returns the Super BOM and selected option information to Agile PLM through SyncBillOfMaterialsConfigurationListAgileProvABCSImpl. Note: The SyncBillOfMaterialsConfigurationListAgileProvABCSImpl composite uses the oracle/wss_http_token_client_policy client security policy while calling ConfiguratorTerminationService 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. |
The process integration for Variant management flow includes a list of services and two transaction boundaries.
Launch the Oracle Configurator Option Picker servlet from Agile PLM. It invokes the process to obtain the Configurator URL.
The following table describes the transactions, database operations involved and solutions in case of any errors for the following services:
GetConfiguratorURLAgileReqABCSImpl
GetConfiguratorURLEbizProvABCSImplProcess
GetConfiguratorURLEbizAdapter
Table 9-2 Transaction Boundaries and Recovery details
S.No. | Transaction | DB Operations | In Case of Error | Recovery |
---|---|---|---|---|
1 |
Launch of Oracle Configurator Option Picker servlet from Agile PLM invokes GetConfiguratorURLAgileReqABCSImpl process. GetConfiguratorURLAgileReqABCSImpl transforms AgileGetConfiguratorURLABM into GetConfiguratorURLEBM and send the GetConfiguratorURLEBM message as input into GetConfiguratorURLEbizProvABCSImpl. |
None |
Configurator UI will not be Launched. |
Launch Configurator UI from Agile |
GetConfiguratorURLEbizProvABCImpl transforms GetConfiguratorURLEBM and forms the initial message needed to launch the Configurator UI. It determines the Configurator URL from the Oracle E-Business Suite Profile option. GetConfiguratorURLEbizProvABCImpl invokes GetConfiguratorURLEbizAdapter GetConfiguratorURLEbizProvABCImpl sends the response to GetConfiguratorURLAgileReqABCSImpl. |
The following table describes the transactions, database operations involved and solutions in case of any errors for the following services:
SyncBillOfMaterialsConfigurationEbizJMSproducer
SyncBillOfMaterialsConfigurationEbizJMSConsumer
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl
SyncBillOfMaterialsConfigurationListAgileProvABCSImpl
Table 9-3 Transaction Boundaries and Recovery details
S.No. | Transaction | DB Operations | In Case of Error | Recovery |
---|---|---|---|---|
1 |
Selecting Finish in the Configurator UI invokes SyncBillOfMaterialsConfigurationEbizJMSProducer. When the message is received in the queue, the process invokes the JMS Consumer and sends SyncBillOfMaterialsConfigurationListABM to SyncBillOfMaterialsConfigurationEbizJMSConsumer. SyncBillOfMaterialsConfigurationEbizJMSConsumer invokes SyncBillOfMaterialsConfigurationListEbizReqABCSImpl SyncBillOfMaterialsConfigurationListEbizReqABCSImpl receives SyncBillOfMaterialsConfigurationListABM and transforms it to SyncBillOfMaterialsConfigurationListEBM. |
None |
Super BOM will not be updated. |
Select Finish in the Configurator UI again. |
2 |
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl returns the Super BOM and selected option information to Agile PLM through SyncBillOfMaterialsConfigurationListAgileProvABCSImpl. |
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".
PIM and the Configurator have existing capabilities in the context, which are effectively leveraged that is the management of the Model/Option BOM in PIM and Oracle E-Business Suite and the OptionPicker in the Configurator.
The user will ensure successful transfer of the Super-BOM to PIM before attempting to access that version of the BOM in OptionPicker; Launch parameters will ensure the retrieval of the appropriate Model/option BOM from PIM,
Reconfigurations, copy, and delete will not be supported.
Table 9-4 lists the Agile PLM Web Services Definition Language (WSDL) files:
Table 9-4 Agile PLM Web Services Definition Language (WSDL) files
Interface | Description |
---|---|
GetConfiguratorURLAgileReqABCSImpl |
|
GetConfiguratorURLAgileReqABCSImplExtensionConcreteWSDL.wsdl |
Used to service GetConfiguratorURLAgileReqABCSImpl |
GetConfiguratorURLAgileReqABCSImpl.wsdl |
Used to service GetConfiguratorURLAgileReqABCSImpl |
SyncBillOfMaterialsConfigurationListAgileProvABCSImpl |
|
ConfiguratorTerminationService.wsdl |
Used as the AIA WSDL for Agile PLM VM ConfiguratorTerminationService |
SyncBillOfMaterialsConfigurationListAgileProvABCSImplExtensionConcreteWSDL.wsdl |
Used to service SyncBillOfMaterialsConfigurationListAgileProvABCSImpl |
Table 9-5 lists the Agile PLM XML Schema Definition (XSD) files:
Table 9-5 Agile PLM XML Schema Definition (XSD) files
Interface | Description |
---|---|
GetConfiguratorURLAgileReqABCSImpl |
|
ConfiguratorABM.xsd |
Contains the ABM definitions for Agile PLM VM |
ConfiguratorABO.xsd |
Contains the ABO definitions for Agile PLM VM |
SyncBillOfMaterialsConfigurationListAgileProvABCSImpl |
|
ConfiguratorABM.xsd |
Contains the ABM definitions for Agile PLM VM |
ConfiguratorABO.xsd |
Contains the ABO definitions for Agile PLM VM |
ConfiguratorTerminationServiceTypes.xsd |
Contains the local copy of the type definition for the Agile PLM VM ConfiguratorTerminationService |
Table 9-6 lists the Oracle E-Business Suite WSDL files:
Table 9-6 Oracle E-Business Suite WSDL files
Interface | Description |
---|---|
GetConfiguratorURLEbizProvABCSImpl |
|
GetConfiguratorURLEbizAdapter.wsdl |
Used to service GetConfiguratorURLEbizProvABCSImpl |
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl |
|
SyncBillOfMaterialsConfigurationEbizJMSProducer.wsdl |
Used to service SyncBillOfMaterialsConfigurationListEbizReqABCSImpl |
SyncBillOfMaterialsConfigurationEbizJMSConsumer.wsdl |
Used to service SyncBillOfMaterialsConfigurationListEbizReqABCSImpl |
Table 9-7 lists the core AIA components for this process integration:
Component | Name |
---|---|
EBOs |
BillOfMaterialsConfigurationEBO |
EBMs |
GetConfiguratorURLEBM SyncBillOfMaterialsConfigurationListEBM |
Table 9-8 lists the core components locations:
Table 9-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.
EBOs can be extended, for instance, to add new data elements. These extensions are protected and will remain integral 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."
Table 9-9 lists the Oracle E-Business Suite and Agile PLM components for change order update:
Table 9-9 Oracle E-Business Suite and Agile PLM components for change order update
Services | Oracle E-Business Suite | Agile PLM |
---|---|---|
ABMs |
SyncBillOfMaterialsConfigurationListABM |
AgileGetConfiguratorURLABM AgileGetConfiguratorURLRespABM |
ABCS |
GetConfiguratorURLEbizProvABCSImpl SyncBillOfMaterialsConfigurationListEbizReqABCSImpl |
GetConfiguratorURLAgileReqABCSImpl SyncBillOfMaterialsConfigurationListAgileProvABCSImpl |
Table 9-10 lists the core components locations:
Table 9-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 |
The integration services for the variant management process integration are:
GetConfiguratorURLAgileReqABCSImpl
GetConfiguratorURLEbizProvABCSImpl
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl
SyncBillOfMaterialsConfigurationListAgileProvABCSImpl
This ABC service requests the Oracle Configurator URL from Oracle E-Business Suite. It can be used in Agile PLM to select the option information.
The requester ABCS transforms AgileGetConfiguratorURLABM into GetConfiguratorURLEBM to obtain the Oracle Configurator URL.
This service receives the response from GetConfiguratorURLEbizProvABCSImpl with Oracle Configurator URL.
This ABC service forms the initial message needed to launch Oracle Configurator UI and determines the Configurator URL from the Oracle E-Business Profile Option BOM: Configurator URL of UI Manager.
GetConfiguratorURLEbizProvABCSImpl transforms GetConfiguratorURLEBM into Oracle E-Business ABM.
GetConfiguratorURLEbizProvABCSImpl sends a response to GetConfiguratorURLAgileReqABCSImpl.
This ABC service sends the terminate Oracle Configurator message.
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl receives SyncBillOfMaterialsConfigurationListABM.
SyncBillOfMaterialsConfigurationListEbizReqABCSImpl transforms SyncBillOfMaterialsConfigurationListABM into the SyncBillOfMaterialsConfigurationListEBM.
In case of an error in the SyncBillOfMaterialsConfigurationListEbizReqABCSImpl service, the Web Logic Server (WLS) Java Message Service (JMS) store based resubmission lets you use the message resubmission utility to resubmit a faulted message.
The queue used by SyncBillOfMaterialsConfigurationListEbizReqABCSImpl service is a WLS JMS base queue. For more information resubmission, see "Using the Message Resubmission Utility/ WLS JMS based Resubmission "in Oracle® Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack.
To use the resubmission utility, you must configure the ResubmissionParams.properties file. This properties file can be found in the following location: $AIA_HOME/util/AIAMessageResubmissionUtil. To configure the properties file for the queue used by this service, perform the following steps:
The AIAResubmissionUtility is available under $AIA_HOME/util, so browse to AIA_HOME/util/AIAResubmissionUtility. Set all the required values in ResubmissionParams.properties file.
Note:
Since it is WLS JMS based resubmission, jms.aq property in the properties file should be set to false in the properties file. The message ID should be in the format ID: < >
Example of ResubmissionParams.properties for WLS JMS based Resubmission
jms.app.hostName=sdc60005sems.example.com jms.app.admin.port=7085 jms.app.soa.port=8085 jms.app.userName=weblogic @ jms.app.password=weblogic#1 jms.aq=false jms.moduleName=AIAJMSModule #Resource Connection Factory jndi name jms.resourceCFJndi=jms/aia/AIAEbizCF #Error Resource Connection Factory jndi name jms.errorResourceCFJndi=jms/aia/aiaErrorQueueCF #QUEUE/TOPIC/RESEQUENCER - 1/2/3 resourceType=1 #queueName/topicName/routingServiceName resourceName=AIA_EbizBillOfMaterialsConfigurationJMSQueue #messageID/groupID messageID=ID:<130020.1335815439684.0> #queueTableName/topicTableName #aq.resourceTableName=AIASamples #aq.db.driverName=oracle.jdbc.driver.OracleDriver #aq.db.jdbcURL=jdbc:oracle:thin:@localhost:1521:XE #aq.db.userName=aia @ #aq.db.password=aia
For Windows, execute $AIA_INSTANCE\bin\aiaenv.bat.
For Linux, source $AIA_INSTANCE/bin/aiaenv.sh.
Navigate to $AIA_HOME/util/AIAMessageResubmissionUtil and execute the following: ant -f MessageResubmit.xml -logfile $AIA_HOME/util/AIAResubmissionUtil/MessageResubmit.log
The MessageResubmit.xml script references the edited ResubmissionParams.properties file. Once run, the script resets the message status back to a ready state so that the transaction can resume its flow.