Understanding XML Transaction

This chapter discusses:

Click to jump to parent topicXML Transaction

XML Transaction is XML-based interoperability that runs as a JD Edwards EnterpriseOne kernel process. You also can use XML Transaction with a messaging adapter. XML Transaction interacts with interface tables (Z tables) to update the database or to retrieve data. You can create one XML document that includes both updates to and retrieval of data from JD Edwards EnterpriseOne.

Click to jump to parent topicXML Transaction Update Process

To insert data into JD Edwards EnterpriseOne, you use a formatted XML document. The XML document includes a predefined transaction type, such as JDEOPIN. The XML document identifies one or more JD Edwards EnterpriseOne interface tables and lists all of the data (data type and actual data values) to be updated.

This illustration shows the XML Transaction update process.

XML Transaction data update process flow

In summary:

Click to jump to parent topicXML Transaction Data Request

To request data from JD Edwards EnterpriseOne, you use a formatted XML document. The XML document contains a transaction type, such as JDESOUT, and an index that identifies the data to be retrieved from the interface tables. You supply a template to retrieve the specific data.

This illustration shows the XML Transaction data request and response process:

XML Transaction data request process flow

In summary:

Click to jump to parent topicXML Transaction jde.ini File Configuration

The XML Transaction kernel must be defined in the jde.ini file.

[JDENET_KERNEL_DEF15]

These settings re for a Microsoft Windows platform:

krnlName=XML TRANSACTION KERNEL dispatchDLLName=XMLTransactions.dll dispatchDLLFunction=_XMLTransactionDispatch@28 maxNumberOfProcesses=1 numberOfAutoStartProcesses=1

This table provides the different .dll extensions for other platforms:

Platform

dispatchDLLName

dispatchDLLFunction

iSeries

XMLTRANS

XMLTransactionDispatch

HP9000

libxmltransactions.sl

XMLTransactionDispatch

SUN or RS6000

libxmltransactions.so

XMLTransactionDispatch

Example: Outbound Order Status XML Request & Response Format

The XML transaction data request is created by the outbound function and sent to the XML transaction API. These code samples illustrate a sales order request and response.

The format in this XML Transaction request code sample returns all columns for the sales order header and detail lines:

<?xml version='1.0' ?> <jdeRequest type='trans' user='user' pwd='password' environment='environment' role='*ALL' session='' sessionidle='300' <transaction action='transactionInfo' type='JDESOOUT'> <key> <column name='EdiUserId'>value</column> <column name='EdiBatchNumber'>value</column> <column name='EdiTransactNumber'>value</column> </key> </transaction> </jdeRequest>

This code sample shows the XML Transaction response:

<?xml version='1.0' encoding='utf-8' ?> <jdeResponse type='trans' user='user' role='*ALL' session='session1' environment='env'> <transaction type='JDESOOUT' action='transactionInfo'> <returnCode code='0'>XML Request OK</returnCode> <key> <column name='EdiUserId'></column> <column name='EdiBatchNumber'></column> <column name='EdiTransactNumber'></column> </key> <table name='F4201Z1' type='header'> <column name='EdiUserId'></column> <column name='EdiBatchNumber'></column> </table> <table name='F4211Z1' type='detail'> <column name='EdiUserId'></column> <column name='EdiBatchNumber'></column> </table> <table name='F49211Z1' type='additionalHeader'> <WARNING>No record found</WARNING> </table> </transaction> </jdeResponse>