2 Understanding Interoperability

This chapter contains the following topics:

2.1 Interoperability

Interoperability is most often associated with software as a way to enable disparate software applications to work together. For example, interoperability makes it possible for a company to use applications from different vendors as if they were from a single vendor. Seamless sharing of function and information becomes possible.

Interoperability reduces or eliminates the problems of islands of automation. It enables business processes to flow from one application to another. Interoperability enables one system to work with another, in near real-time fashion, to share critical business information. Interoperability options become the glue between systems and applications.

2.2 Interoperability Features

Full interoperability among systems makes the flow of data among the systems seamless to the user. Oracle's JD Edwards EnterpriseOne provides a framework to mask the complexity of interoperability with external systems, and to simplify interfacing with third-party packages.

The interoperability solution for JD Edwards EnterpriseOne meets these three important business objectives:

  • Flexibility, Options, and Choice

    JD Edwards provides EnterpriseOne-legacy, best-of-breed, customer management, reporting tools, and many other types of applications and information. The developer can make the right choice for the particular environment and needs.

  • Investment Preservation

    JD Edwards EnterpriseOne can interface with the existing applications or applications you plan to use in the future. You can use industry standard methods if the existing or new technologies support them, or you can use JD Edwards EnterpriseOne business logic to create this interoperability. Also, you will benefit from our ongoing upgrades and improvements to that architecture.

  • Manageability

    JD Edwards EnterpriseOne is designed to make the interoperability process easily manageable.

2.2.1 Benefits

Interoperability offers these benefits:

  • Businesses can bring together applications and systems across an enterprise, irrespective of vendors.

  • Collaborations can occur between trading partners to lower the cost of doing business or to increase competitiveness.

  • Multiple systems can be linked together to share information in a real-time manner, delivering time-sensitive information to those who need it.

  • Disparate solutions as the result of mergers or acquisitions can be quickly incorporated into the enterprise's information technology solution.

The JD Edwards EnterpriseOne interoperability strategy includes a wide range of models and capabilities.

2.3 Interoperability Models and Capabilities

The JD Edwards EnterpriseOne Interoperability matrix provides an overview of interoperability models that are supported by JD Edwards EnterpriseOne. A model is a way for third parties to connect to or access JD Edwards EnterpriseOne. The matrix shows the models, which are further divided into types and into the capabilities that can be used with each model type. The model and model types are listed in the left-hand column. Capabilities, which are ways to send information into or retrieve information from JD Edwards EnterpriseOne, are columns in the matrix. For each model type, you can read across the table to see what capabilities can be used with that model type. JD Edwards provides both interactive and batch capabilities. The capabilities are grouped by inbound, outbound, and batch. An inbound capability is a request for data or a transaction initiated outside of JD Edwards EnterpriseOne. An outbound capability originates inside of JD Edwards EnterpriseOne.

2.3.1 Auditing for Interoperability Transactions

An interoperability transaction can affect a column in a JD Edwards EnterpriseOne table that has been enabled for auditing. When this occurs, JD Edwards EnterpriseOne creates an audit record for the transaction, but the system records only a portion of the audit information, such as the audited column, before and after values, and recorded columns. The audit information will not include a GUID, application ID, workstation name, or IP address, unless you configure the interoperability model to pass this data to the audit record.

See "Configuring Auditing for Interoperability Transactions" in the JD Edwards EnterpriseOne Tools Auditing Administration Including 21 CFR Part 11 Administration Guide.

2.3.2 JD Edwards EnterpriseOne Interoperability

This matrix identifies the JD Edwards EnterpriseOne models and the capabilities that each model supports:

Table 2-1 JD Edwards EnterpriseOne Interoperability Models and Capabilities

Model Model Type BSFN Calls (In) XML CallObj, XML List, XML Trans. (In) Z Trans. (In) Flat Files(In) Real- Time and XAPI Events (Out) Web Services Callout Generate XML Output (Out) Flat Files (Out) Batch (Out)

* CO, List, and Trans indicate XML CallObj., XML List, XML Trans. from the column heading. These capabilities are XML Call Object, XML List, and XML Transaction. Each of these are discussed in detail in this document.

Business Services Server

Web Services

Y

N

N

N

RTE

Y

Y

N

N

JMS Queue & JMS Topic

J2EE Connectivity

N

N

N

N

RTE Z Events

N

Y

N

N

Web Services Gateway (WSG)

EOne WSG

Y

List*

N

Y

RTE XAPI Z Event

N

Y

Y

N

Connectors

Dynamic Java Connector (Java Connector)

Y

CO, Trans, List*

N

N

RTE XAPI Z Event

N

Y

N

N

Connectors

JCA Resource Adapter

Y

CO, Trans, List*

N

N

N

N

N

N

N

Connectors

COM Connector

Y

CO, Trans, List*

N

N

RTE XAPI Z Event

N

Y

N

N

EOne Messaging Adapters

Adapter for MQ WebSphere

Y

CO, Trans*

Y

N

RTE XAPI Z Event

N

Y

N

Y

EOne Messaging Adapters

Adapter for MSMQ

Y

CO, Trans*

Y

N

RTE XAPI Z Event

N

Y

N

Y

Batch Interfaces

Interface Tables

Y

N

Y

Y

N

N

N

N

Y

Batch Interfaces

EOne EDI

Y

N

Y

Y

N

N

N

Y

Y

Batch Interfaces

Table Conversions

Y

N

Y

Y

N

N

N

Y

Y

Batch Interfaces

OSA (UBE)

N

N

N

N

N

N

Y

N

Y

APAg/ Integration

APAg/ Integration

N

N

Y

N

RTE

N

Y

N

Y

Open Data Access

Open Data Access (Supports business view and table inquiries)

N/A

N

N

N/A

N/A

N/A

N/A

N/A

N/A


See XML CallObject.

See XML Transaction.

See XML List.

2.3.3 Interoperability Capabilities

A capability is a way to transfer information into JD Edwards EnterpriseOne or to retrieve information from JD Edwards EnterpriseOne. The interoperability matrix shows inbound and outbound capabilities and identifies capabilities that are appropriate for batch processing. Inbound capabilities enable you to inquire about data and update (add, change, or delete) data. With inquiry capabilities, you retrieve data for information purposes only. For example, you might want to see prices or availability of an item. You can perform update capabilities on an individual transaction basis or in a batch process, which consists of groups of transactions. An individual transaction update involves updating a single record (for example, adding a purchase order or creating an invoice). Batch processes, which are groups of transactions that typically involve updating multiple records, are usually scheduled to occur at a specific time and are non-interactive. For example, you can upload 10,000 orders to the database at the end of the day or obtain all of the pricing information that has changed and send that information to a web site at the end of the day.

The capabilities available for transferring information into and retrieving information from JD Edwards EnterpriseOne are described briefly in this chapter. Each capability is discussed in further detail in other chapters within this guide.

2.3.3.1 Web Services

Web services provide standardized ways to interoperate between disparate systems. JD Edwards EnterpriseOne provides and consumes web services. As a web service provider, JD Edwards EnterpriseOne exposes web services for consumption by an external system. As a consumer, JD Edwards EnterpriseOne calls an external web service from within the JD Edwards EnterpriseOne business logic layer.

See "JD Edwards EnterpriseOne as a Web Service Provider" in the JD Edwards EnterpriseOne Tools Business Services Development Guide.

See "JD Edwards EnterpriseOne as a Web Service Consumer" in the JD Edwards EnterpriseOne Tools Business Services Development Guide.

2.3.3.2 J2EE Connectivity

Java 2 Platform, Enterprise Edition (J2EE) provides a distributed, standards-based architecture for implementing highly scalable, reliable, and available e-business applications. JD Edwards EnterpriseOne business services use J2EE connectivity for standards-based messaging, such as JMS Queue and JMS Topic.

2.3.3.3 Business Function Calls

Business function calls are core to JD Edwards EnterpriseOne interoperability. Business functions encapsulate transaction logic to perform specific tasks, such as journal entry transactions, depreciation calculations, and sales order transactions.

JD Edwards EnterpriseOne uses regular business functions and master business functions. A regular business function performs simple tasks, such as tax calculation or account number validation. A master business function (MBF) performs complex tasks and can call several regular business functions to perform those tasks.

See "Understanding Business Functions" in the JD Edwards EnterpriseOne Tools Development Tools: APIs and Business Functions Guide.

2.3.3.4 XML

XML provides a flexible, standards-based way of sharing information and moving data among systems. XML enables you to extend enterprise applications and collaborate with business partners and customers. You can use XML CallObject and XML Transaction to update or retrieve JD Edwards EnterpriseOne data. You can use XML List to create an XML data file in the JD Edwards EnterpriseOne system repository and then retrieve the data in small chunks to avoid network traffic. JD Edwards EnterpriseOne output is an XML document.

2.3.3.5 Z Transactions

Z transactions provide inbound capability to JD Edwards EnterpriseOne that enables you to update JD Edwards EnterpriseOne data. JD Edwards EnterpriseOne provides interface tables (Z tables) that support Z transaction capability. You also can create interface tables.

2.3.3.6 Flat Files

Flat files (also known as user-defined formats) are text files that are usually stored on the workstation or server. Flat files do not have relationships defined for them and typically use the Unicode character set. Data in a flat file usually is stored as one continuous string of information. You can use flat files to import or export data from applications that have no other means of interaction. For example, you might want to share information between JD Edwards EnterpriseOne and another system.

2.3.3.7 Events

Events are notifications to third-party applications or end-users that a JD Edwards EnterpriseOne business transaction has occurred. JD Edwards EnterpriseOne supports three kinds of events: Z events, real-time events, and XAPI events. Event data is represented as an XML document.

Z events use interface tables and a batch process to retrieve transaction information and use a Z event generator and the data export subsystem to manage the flow of the outbound data.

Real-time events can be generated from a server or a client. System calls (from a server) and client business function calls (from a client) retrieve transaction information. The transaction information is distributed to subscribers.

XAPI events are real-time events that require a response. A XAPI event is created in the same manner as a real-time event, with additional data structure information for invoking a business function when the response XML document is received.

Event notifications can be sent as web services, using JMS Queue or JMS Topic.

2.3.4 Interoperability Models

JD Edwards EnterpriseOne supports these basic interoperability models:

  • Business Services Server

  • JMS Queue and JMS Topic

  • Connectors

  • Messaging Adapters

  • Batch Interfaces

These models can be further categorized by type. Each model type supports one or more of the capabilities for sending information into or retrieving information from the JD Edwards EnterpriseOne database. The Interoperability Models and Capabilities matrix identifies the model types and the capabilities that each model type supports.

2.3.4.1 Business Services Server

Business services enable JD Edwards EnterpriseOne to use web services to exchange information with external systems. JD Edwards EnterpriseOne is a web service provider and a web service consumer. The business services server provides a business services development client for developing and testing business services as both a web service provider and a web service consumer.

Some benefits of using business services include:

  • Flexibility to interoperate with any web service enabled external system.

  • Reduce dependency on embedded third-party products.

  • Standards-based integration offerings.

  • Simplified integration architecture.

  • Increased overall superior ownership experience.

See "Understanding the Business Services Server" in the JD Edwards EnterpriseOne Tools Business Services Development Guide.

2.3.4.2 JMS Queue and JMS Topic

JD Edwards EnterpriseOne provides a transaction server that uses Java Message Service (JMS) queues and topics to guarantee event delivery. When an event occurs in JD Edwards EnterpriseOne, the transaction server retrieves the event information and routes it to subscriber JMS queues and topics for each subscriber that has established an active subscription for the event.

Some benefits of using JMS Queue and JMS Topic include:

  • Standards-based way of sending messages.

  • Guaranteed delivery of events.

  • Publish subscribe model supported.

  • Point-to-point model supported.

2.3.4.3 Connectors

Connectors are point-to-point, component-based models that enable third-party applications and JD Edwards EnterpriseOne to share logic and data. JD Edwards EnterpriseOne connector architecture includes Java and COM connectors. The connectors accept inbound XML requests and expose business functions for reuse. Output from the connectors is in the form of an XML document. The connectors include:

  • Java

    The JD Edwards EnterpriseOne dynamic Java and Java connectors support real-time event processing. Java is a portable language, so you can easily tie JD Edwards EnterpriseOne functionality to Java applications.

  • COM

    The JD Edwards EnterpriseOne COM connector solution is fully compliant with the Microsoft component object model. You can easily tie JD Edwards EnterpriseOne functionality to Visual Basic and VC++ applications. The COM connector also supports real-time event processing.

Some benefits of using connectors include:

  • Scalability

  • Multi-threaded capability

  • Concurrent users

See "Getting Started with JD Edwards EnterpriseOne Tools Connectors" in the JD Edwards EnterpriseOne Tools Connectors Guide.

2.3.4.4 Messaging Adapters

JD Edwards EnterpriseOne provides messaging support for IBM WebSphere MQ and Microsoft Message Queuing (MSMQ). WebSphere MQ and MSMQ handle message queuing, message delivery, and transaction monitoring. JD Edwards EnterpriseOne uses these messaging systems to handle and pass requests for logic and data between JD Edwards EnterpriseOne and third-party systems.

Some of the benefits of using messaging adapters include:

2.3.4.5 Batch Interfaces

Batch implies processing multiple transactions at the same time and usually involves movement of bulk information. Batch processing is often scheduled and is non-interactive. JD Edwards EnterpriseOne provides several model types for batch processing, and each model type has one or more capabilities that enable you to access JD Edwards EnterpriseOne data. The model types include:

  • Interface tables

  • Electronic Data Exchange

  • Table conversions

  • Output Stream Access

  • APAg/Integration

  • Open Data Access

2.3.4.6 Interface Tables

Interface tables provide point-to-point interoperability solutions for importing and exporting data. Interface tables are also called Z tables. Interface tables are working files into which you place transaction information to be processed into or out of JD Edwards EnterpriseOne. In addition to the interface tables provided by JD Edwards EnterpriseOne, you can build interface tables. If you use interfaces tables to update JD Edwards EnterpriseOne data, the format of the data must be presented in the format defined by JD Edwards EnterpriseOne. If you use interface tables to retrieve JD Edwards EnterpriseOne data, you use a batch process that extracts the data from the applications tables.

Some of the benefits of using interface tables include:

  • Defined data structure

  • Identifiable fields

  • Customizable interface tables

2.3.4.7 EDI

Electronic Data Interchange (EDI) provides a point-to-point interoperability solution for importing and exporting data. EDI is the paperless computer-to-computer exchange of business transactions, such as purchase orders and invoices, in a standard format with standard content. As such, it is an important part of an electronic commerce strategy.

When computers exchange data using EDI, the data is transmitted in EDI standard format so it is recognizable by other systems using the same EDI standard format. Companies that use EDI must have translator software to convert the data from the EDI standard format to the format of their computer system.

The JD Edwards EnterpriseOne Data Interface for Electronic Data Interchange system acts as an interface between the JD Edwards EnterpriseOne system data and the translator software. In addition to exchanging EDI data, this data interface also can be used for general interoperability and electronic commerce needs where a file-based interface meets the business requirements.

Some benefits of using the Data Interface for Electronic Data Interchange system include:

  • Shorter fulfillment cycle.

  • Increased information integrity through reduced manual data entry.

  • Reduced manual clerical work.

EDI is particularly effective at sending information to multiple applications simultaneously.

See JD Edwards EnterpriseOne Data Interface for Electronic Data Interchange 9.0 Implementation Guide.

2.3.4.8 Table Conversion

Table conversion provides a point-to-point interoperability solution for importing and exporting data. Table conversion is a special form of Universal Batch Engine (UBE) that enables you to do high-speed manipulation of data in tables. JD Edwards EnterpriseOne has a table conversion utility that you can use to gather, format, import, and export data. The table conversion tool enables you to transfer and copy data. You can also delete records from tables. Table conversion enables you to use a non-JD Edwards EnterpriseOne table to process, call direct business functions, and give an output. For example, you might want to run a UBE that reads from a JD Edwards EnterpriseOne master file to populate a non-JD Edwards EnterpriseOne table.

The table conversion utility can make use of any JD Edwards EnterpriseOne table, business view, and text file, or any table that is not a JD Edwards EnterpriseOne table but resides in a database that is supported by JD Edwards EnterpriseOne, such as Oracle, Access, IBM i, or SQL Server. These non-JD Edwards EnterpriseOne tables are commonly referred to as foreign tables.

See "Understanding Table Conversion" in the JD Edwards EnterpriseOne Tools Development Tools: Data Access Tools Guide.

2.3.4.9 OSA

OSA (Output Stream Access) provides a point-to-point interoperability solution for exporting data from UBEs. OSA enables you to set up an interface for JD Edwards EnterpriseOne to pass data to another software package, such as Microsoft Excel, for processing.

The benefits for using OSA include:

2.3.4.10 APAg/Integration

The JD Edwards EnterpriseOne Advanced Planning Agent (APAg) is a tool for batch extraction, transforming, and loading enterprise data. APAg supports access to data sources in the form of relational databases, flat file format, and other data or message encoding such as XML. APAg also moves data from one place to another and initiates tasks related to the movement of the data.

Benefits of using the APAg tool include:

  • Ability to copy massive amounts of table data.

  • Ability to efficiently and effectively handle initial data loads.

See "JD Edwards Supply Chain Planning" in the Advanced Planning Agent Guide.

2.3.4.11 ODA

ODA (Open Data Access) provides the capability for you to extract JD Edwards EnterpriseOne data (using SQL statements) so that you can summarize information and generate reports. You can use ODA with any of these desktop applications:

  • Microsoft Query

  • Microsoft Access

  • Microsoft Excel

  • ODBCTEST

  • Crystal Reports

  • Microsoft Analysis Service

ODA sits between the front-end query and reporting applications and the JD Edwards EnterpriseOne-configured ODBC drivers.

The JD Edwards EnterpriseOne database contains object and column names, specific data types, and security rules that must be converted or applied so that the data is presented correctly. The specific data types and rules include decimal shifting, Julian date, currency, media object, security, and user defined codes. In some instances, ODA modifies the SQL SELECT statement, as well as the data, so that it appears correctly within the selected application.

Some of the benefits of using ODA include:

  • Read-only access to all JD Edwards EnterpriseOne data, including the entire data dictionary.

  • Use of the same security rules that you established for JD Edwards EnterpriseOne.

  • Ability to extract JD Edwards EnterpriseOne data easily.

    See Understanding Open Data Access.

2.4 Interoperability Model Selection

Select an interoperability model based on the business needs. This matrix can help you determine which interoperability model best supports the interoperability requirements.

Model Model Type Platforms (Windows, UNIX, IBM i) Integration Model Best Fit Programming Languages Critical Technical Skills for Creating Inbound Transaction Critical Technical Skills for Creating Outbound Transactions
Business Services Server Web Services Oracle Application Server or WebSphere Application Server Web Services Java Java, Web Services, Database Ops, Business Functions, XML Java, Web Services, XML
JMS Queue / JMS Topic J2EE Connectivity Oracle Application Server or WebSphere Application Server Web Services Java Java, Web Services, Database Ops, Business Functions, XML Java, Web Services, Database Ops, Business Functions, XML
Web Services Gateway (WSG) EnterpriseOne WSG SUN, AIX, Windows Broker Java WSG Toolset WSG Toolset, Real-Time Events, XAPI Events
Connectors Java Connector All Point-to-Point Java Java APIs, GenJava Real-Time Events, XAPI Events
Connectors COM Connector Windows Point-to-Point C/C++/VB COM, GenCOM Real-Time Events, XAPI Events
Messaging Adapters Adapter for MQ WebSphere All Integration Server HTML, C/C++, Java MQ WebSphere, XML Real-time Events, Z-Tables, Subsystem Processing (includes R00460, Data Export Controls, and so on)
Messaging Adapters Adapter for MSMQ Windows Integration Server C/C++ MSMQ, XML Real-Time Events, Z-Tables, Subsystem Processing (includes R00460, Data Export Controls, and so on)
Batch Interfaces Interface Tables All Point-to-Point Any Z-Tables, UBEs Custom Code
Batch Interfaces EnterpriseOne EDI All Point-to-Point Any, Flat Files Z-Tables, UBEs Custom Code
Batch Interfaces Table Conversions All Point-to-Point TC Table Conversions Table Conversion Director/RDA
Batch Interfaces OSA (UBE) All Point-to-Point HTML, C/C++ NA RDA, Custom Code
APAg/ Integration APAg/ Integration UNIX, Windows Point-to-Point Own Language APAg Tool, Z Tables APAg Tool, Z-Tables
Open Data Access Open Data Access All Point-to-Point VB Custom code or third-party application (queries only) Custom code or third-party application (queries only)

2.5 Other Industry Standard Support

JD Edwards EnterpriseOne has a media object function that supports other industry standard functions, such as:

  • Object Linking and Embedding (OLE) for the exchange of different data types.

  • Dynamic Data Exchange (DDE) for static and dynamic links across applications.

  • Binary Large Object (BLOB) for media object attachments within applications.

  • Extended Messaging API (MAPI) for message exchange across differing mail and groupware applications.