xml gateway: inbound purchase orders to oracle order management – a technical overview jason...
TRANSCRIPT
XML Gateway: Inbound Purchase Orders to Oracle Order Management – A Technical
OverviewJason MorrillNCOAUG Training DayFebruary, 2008
NCOAUG Training Day - Feb, 2008
NCOAUG Training Day - Feb, 20082
Jason Morrill Background
Oracle Technical consultant with O2Works 12 years experience extending, enhancing
and customizing Oracle Applications. Contact information:
– [email protected]– 414-559-8944
NCOAUG Training Day - Feb, 20083
Agenda
What is XML Gateway? Why use XML Gateway? Components of XML Gateway Overview of XML Gateway Architecture Overview of Oracle’s XML Message Designer Walk through the setups for XML Gateway Overview of XML Gateway Execution Engine
NCOAUG Training Day - Feb, 20084
What is XML Gateway?
Oracle XML Gateway is the XML message enabler for the Oracle E-Business Suite.
XML Gateway provides an generic framework to send information as an outbound transaction or to receive the information as an inbound transaction between Trading Partners and the Oracle e-Business Suite.
Oracle XML Gateway uses the message propagation feature of Oracle Advanced Queuing to integrate with the Oracle Transport Agent to deliver messages to and receive messages from business partners.
NCOAUG Training Day - Feb, 20085
Why use XML Gateway?
XML Gateway is Event Based, Real-Time. Messages tend to be based on a single transaction. Oracle XML Gateway supports all DTD (Document Type
Definition) based XML standards. Flexible enough to accommodate all your Trading
Partners. Oracle XML Gateway creates or consumes standards
compliant XML messages without the use of a 3rd Party translator.
NCOAUG Training Day - Feb, 20086
Components of XML Gateway
• Message Designer• A wizard-guided, repository-based tool used to create XML message maps• The Message Designer can support map creation for any business document as long as the document conforms to a Document Type Definition (DTD).
• Modify the Oracle prebuilt message maps• Create your own message maps based on a (DTD)
• XML Gateway Execution Engine• Picks up messages (orders) from the inbound queue• Validates message as well-formed XML per the DTD• Executes the message map• Sends business event to predefined workflow process
NCOAUG Training Day - Feb, 20087
Components cont…
• XML Gateway Setups• Steps consist of setting Profile Options and performing setups using the admin forms within the XML Gateway Responsibility.
• Other Products Interfacing with Execution Engine• Oracle Transport Agent for message delivery.• Oracle Advanced Queuing for message propagation, and queue management.• Oracle Workflow Business Event System to publish and subscribe to business events.
NCOAUG Training Day - Feb, 20088
XML Gateway – Architecture
Transport Agent API delivers message to inbound queue Advanced Queuing Processes Message to Execution Engine. Workflow Business Event System calls Order Import to process order that has been placed in Order Import Interface tables by the Execution Engine and message map.
NCOAUG Training Day - Feb, 20089
Message Designer – Step 1
NCOAUG Training Day - Feb, 200810
Build Message Map – Step 2
NCOAUG Training Day - Feb, 200811
Build Message Map – Step 3
NCOAUG Training Day - Feb, 200812
Build Message Map – Step 4
NCOAUG Training Day - Feb, 200813
Build Message Map – Step 5
NCOAUG Training Day - Feb, 200814
Build Message Map – Step 6
NCOAUG Training Day - Feb, 200815
Build Message Map – Step 7
NCOAUG Training Day - Feb, 200816
Build Message Map – Step 8
NCOAUG Training Day - Feb, 200817
Build Message Map – Step 9
NCOAUG Training Day - Feb, 200818
Build Message Map – Step 10
NCOAUG Training Day - Feb, 200819
Finished! You are now ready to modify your attributes.
NCOAUG Training Day - Feb, 200820
Source Definition
NCOAUG Training Day - Feb, 200821
Target Definition
NCOAUG Training Day - Feb, 200822
Level Mapping
NCOAUG Training Day - Feb, 200823
Element Mapping
NCOAUG Training Day - Feb, 200824
Map Action Editor
• Pre-Process - A preprocess action is executed before the message is created or consumed. The Create Global Variable action is an example of a preprocess action. The variable must be defined before you can use it.• In-process – The action is executed during message creation or consumption. The Math and String Functions are examples of in-process actions used to perform a computation or to manipulate a value.• Post Process - A post process action is executed after the message is created or consumed. The Insert into Database Table action is an example of a post process action. The row cannot be inserted into the database until all the data for the row has been processed.
NCOAUG Training Day - Feb, 200825
Loading Map and DTD to Database
Object Name Object Type
Command
Order.dtd DTD java oracle.apps.ecx.loader.LoadDTDToClob \apps apps_password \auohsmwac27.oracleoutsourcing.com:10710:DMWACI \Order \$XBOL_TOP/xml/xCBL35/Order.dtd
map_name.xgm MAP java oracle.apps.ecx.loader.LoadMap \apps apps_password \auohsmwac27.oracleoutsourcing.com:10710:DMWACI \$XBOL_TOP/xml/map_name.xgm
NCOAUG Training Day - Feb, 200826
Define System Profile Options
NCOAUG Training Day - Feb, 200827
Profile Options – Con’t…
• ECX: Log File Path - Log File Path where the XML messages and runtime log are stored (Required)• ECX: Maximum XML Size - Specifies the maximum size of an outbound XML document (Not Required)• ECX: Server Time Zone – The time zone in which the database server is running (Required)• ECX: System Administrator Email Address – XML Gateway System Administrator e-mail address (Required)• ECX: XML Suppress Empty Tags – Suppresses Empty Tags in XML file • ECX: XML Validate Flag - Specifies whether an outbound document should continue to be parsed by the engine after the ECX: Maximum XML Size has been met.• ECX: XSLT File Path – Set to the same as the ECX: Log File Path
NCOAUG Training Day - Feb, 200828
Define Transaction – Purchase Order Inbound
NCOAUG Training Day - Feb, 200829
Define Transaction – Con’t…
The ONT/POI transaction is a seeded within Oracle XML Gateway and requires no additional setup. Values are as follows…
• Party – Customer• Transaction Type – ONT• Transaction SubType – POI• Transaction Description – Purchase Order Inbound• Standard Code – OAG• Direction – In• External Transaction Type – PO• External Transaction Subtype – Process• Queue – APPS.ECX_IN_OAG_Q
NCOAUG Training Day - Feb, 200830
Trading Partner Setup
NCOAUG Training Day - Feb, 200831
Trading Partner Setup – Con’t…
NCOAUG Training Day - Feb, 200832
Trading Partner Setup – Con’t…
The Trading Partner Setup is the component that will enable a message to be processed through the XML Gateway engine. The Trading Partner setup form is used to…
• Enable messages for the trading partner by identifying the internal and external transaction and transaction subtype codes, and the XML standard associated with the message.• Access the Trading Partner User setup form (Security)• Access the Trading Partner Code Conversion form• Select a Message Map for the trading partner• Define Source Trading Partner Location Code. This is your trading partner’s location code (PARTY_SITE_ID) because they are the source of the XML message.
NCOAUG Training Day - Feb, 200833
Trading Partner Setup – Con’t…
• Set your level of document confirmation. Document Confirmation is the indicator for the confirmation level that this Trading Partner would like to send or receive a confirmation.
NCOAUG Training Day - Feb, 200834
Trading Partner Setup – Con’t…
Code Conversion - The Oracle XML Gateway code conversion function provides a method to cross-reference the codes defined in Oracle E-Business Suite to codes used by your trading partners.
NCOAUG Training Day - Feb, 200835
XML Gateway Execution Engine
The XML Gateway Execution Engine can process messages properly after the following.
• Message maps are created and loaded into the repository along with their associated DTDs• Trading Partners are defined.• Code Conversions are defined.• Transactions are defined.• Oracle Workflow Business Event System events are published by the Oracle E-Business Suite and
subscriptions to those events are defined. (Already done with seeded Transaction Types)• Engine and listeners are started.
(The XML Gateway listeners are actively polling for interested events. The ExecutionEngine will begin processing once Oracle Workflow Business Event System detects an outbound transaction to be processed, or that an inbound message has arrived on the queue)
NCOAUG Training Day - Feb, 200836
What does the Execution Engine Do?
During processing the XML Gateway Execution Engine performs the following tasks.
• Dequeue message from inbound queue.• Uses the XML Parser to validate the inbound message to determine if it is
well-formed and valid based on the DTD stored in the DTD directory.• Gets the message map from the repository that is defined for the
transaction type.• Executes the message map.• Applies Actions and Code Conversions.• Detects and reports processing errors.
NCOAUG Training Day - Feb, 200837
XML Message Process Flow
NCOAUG Training Day - Feb, 200838
Summary
Oracle XML Gateway has a number of valuable features that allow you to:
• Employ a common, standards-based approach for XML integration between the Oracle E-Business Suite and third party applications, both inside and outside of your enterprise.
• Develop custom maps using the Message Designer for message processing.
• Employ a variety of transaction types and subtypes to facilitate inbound and outbound messaging.
THANK YOUTHANK YOUQuestions and Answers
Presenter: Jason [email protected]
Contact: 414-559-8944
O2Works LLCDallas – Chicago - Denver
NCOAUG Training Day - Feb, 2008
NCOAUG Training Day - Feb, 200840
Sources
• XML Gateway User’s Guide, Release 11i Part No. B10665-03
• Oracle XML Gateway 11i Datasheet.• Understanding the Oracle Transport Agent Messaging
Protocol, An Oracle White Paper