Oracle® Application Server Integration Adapter for J.D. Edwards OneWorld XE User's Guide 10g (9.0.4) Part Number B10302-01 |
|
This chapter explains the limitations and workarounds when connecting to J.D. Edwards OneWorld XE. The following topics are discussed:
When using J.D. Edwards OneWorld XE PurchaseOrder or SalesOrder, you must create three Oracle Application Server ProcessConnect interactions to accomplish one business function completion in J.D. Edwards OneWorld XE. BeginDoc, EditDoc, and EndDoc are three Business Functions related to PurchaseOrder or SalesOrder.
The Business Functions related to Purchase Order are:
Not all J.D. Edwards OneWorld XE transactions require BeginDoc, EditDoc and EndDoc, for example, in the case of Address.
This function is a part of Edit Object (API) for Purchase Order creation. When a new order is being created this is the first business function to run/call.
The purpose of this business function is to edit Purchase Order Detail lines and to optionally update a Purchase Order, with records. This function needs to be called for each order entry item that needs to be added to the purchase order.
This function is a part of Edit Object (API) for Purchase Order Creation and Modification. This function uses edited transactions from the Purchase Order header and detail work files and creates or updates Purchase Orders. All the related files are updated with the Purchase Order information when the Purchase Order line is created.
The J.D. Edwards communication architecture is a single-message, single-reply architecture. You cannot return a list of messages or an array. The underlying code is C++, which calls with a pointer to a single structure, makes changes in the structure, and exits.
You cannot query and retrieve lists of records based on search criteria using the Oracle Application Server Integration Adapter for J.D. Edwards OneWorld XE due to a limitation with the J.D. Edwards Business Function architecture.
In J.D. Edwards OneWorld XE, database connectivity is provided by using a set of proprietary (and complex) internal function calls. These calls mask the underlying database version by requiring very explicit and low-level calls to create lists of columns to retrieve or update, and create specialized structures for sorting or selection. The sets of APIs are not exposed through the Java (or any other) connectivity method; therefore, record sets cannot be handled through Business Functions.
The J.D. Edwards database access APIs are not usable through the Java connector; therefore, managing lists of items (such as customers) can be challenging. It is relatively easy to create Business Functions in J.D. Edwards OneWorld XE that handle a single record, or operate on a group of records, if all of the work is performed within the bounds of the J.D. Edwards OneWorld XE toolset. However, accessing lists of items outside the J.D. Edwards OneWorld XE tools is more difficult.
To work around this limitation, you can create a custom Business Function in J.D. Edwards OneWorld XE that returns a list of record keys based on a query. You must segment the lists because JDENET (J.D. Edwards OneWorld XE' internal proprietary messaging API) has a limitation on the message buffer size for managing large or effectively unbounded result sets. The client code must iterate (loop) through successive calls to the Business Function, until an indicator is returned stating that the list is complete.
All calls to J.D. Edwards OneWorld XE Business Functions are stateless; therefore, the Business Function cannot maintain an open cursor and return more rows on request. Positioning information must be passed to the J.D. Edwards OneWorld XE Business Function on each call.
The following is a list of techniques for controlling iteration:
AN8
field (short address number) and is visible in the return buffer. This number can then be written to a reference field on the original customer record, or stored into a custom cross-reference table.
|
![]() Copyright © 2003 Oracle Corporation. All Rights Reserved. |
|