«  main

Main

Integration Repository Customization

Oracle E-Business Suite Integrated SOA Gateway supports customization of Integration Repository.

Oracle Integration Repository, an integral part of Oracle E-Business Suite release R12, is the centralized repository of all public interfaces exposed by applications within the E-Business Suite. These interfaces can be used for integration with the E-Business Suite.

What is customization of Integration Repository?

The term Customization of Integration Repository means option to add custom interfaces( or customer's interfaces) into Integration Repository. The term interface stands for all types of programs and technologies in Integration Repository, eg. plsql, java, business events, xml gateway etc.

In R12.0, Integration Repository contains interfaces shipped by Oracle. Customers cannot add their own contents. From R12.1(R12.1.1), customers can add their own interfaces in the Integration Repository.


Is customization supported for all interfaces ?
Customers can customize following interfaces:

  • PLSQL
  • Java
  • XMLGateway
  • Concurrent Program
  • Business Service Objects (BSO)
  • Business Events

Following interfaces are not customizable:

  • Open Interface Table
  • Open Interface View
  • EDI

Are there any configuration or install steps for Customization of Integration Repository ?

Configuration and Install steps to enable customization of Integration Repository can be found at "Metalink Note: 946192.1, Oracle E-Business Suite Integrated SOA Gateway Implementation Guide, Chapter 5, section Setting Up and Using Integration Repository Parser"


How to add custom interface into Integration Repository ?

1. Customers need to write their custom interface, compile and make sure there are no issues with the interface. Addition of a custom interface is explained with a example of a custom plsql api in Purchasing.

Eg. XYZ_SALES_ORDER.UPDATE_ORDER updates ordered quantity of a particular line id of a Sales Order. Following is the specification of XYZ_SALES_ORDER.

create or replace package XYZ_SALES_ORDER as

function UPDATE_ORDER (LINE_ID varchar2, ORDERED_QUANTITY varchar2) return number;

end XYZ_SALES_ORDER;

2. Customers need to add Integration Repository annotations in their custom interface. Integration Repository Annotation guidelines can be found in "Metalink Note: 946192.1, Oracle E-Business Suite Integrated SOA Gateway Developer's Guide Appendix A". Make sure that you strictly follow the guidelines and refer to samples, in case of any doubts.

Eg. Integration Repository annotations are added in the XYZ_SALES_ORDER package specification.
create or replace package XYZ_SALES_ORDER as

/*#
* This package updates a Sales Order in Order Management.
* @rep:scope public
* @rep:product po
* @rep:displayname XYZ SALES ORDER
* @rep:lifecycle active
* @rep:compatibility S
* @rep:category BUSINESS_ENTITY ONT_SALES_ORDER
*/

/*#
* Returns Updated Ordered Quantity
* @param LINE_ID varchar2 Line ID
* @param ORDERED_QUANTITY varchar2 Ordered Quantity
* @return Updated Ordered Quantity
* @rep:scope public
* @rep:lifecycle active
* @rep:displayname Update Sales Order
*/
function UPDATE_ORDER (LINE_ID varchar2, ORDERED_QUANTITY varchar2) return number;

end XYZ_SALES_ORDER;

3. Run Integration Repository Parser on your interface to generate metadata(ildt) file for your interface. Details on Integration Repository Parser (irep_parser.pl) usage can be found in "Metalink Note: 946192.1, Oracle E-Business Suite Integrated SOA Gateway Implementation Guide, Chapter 5, section Integration Repository Parser (irep_parser.pl) Usage Details"

Eg. To run Integration Repository Parser on XYZ_SALES_ORDER, run following command
$IAS_ORACLE_HOME/perl/bin/perl $FND_TOP/bin/irep_parser.pl -g -v
-username=sysadmin po:patch/115/sql:XYZ_SALES_ORDER.pls:12.0=/tmp/XYZ_SALES_ORDER.pls

In this command, 'sysadmin' is the Oracle Applications (fnd) user running this command. 'po' is the product short name. 'patch/115/sql' is the relative path from $PO_TOP. 'XYZ_SALES_ORDER.pls' is the file name as it appears on Integration Repository UI. '12.0′ is the file version of XYZ_SALES_ORDER.pls. '/tmp/XYZ_SALES_ORDER.pls' is the physical location of XYZ_SALES_ORDER.pls file on server.

This command should generate file XYZ_SALES_ORDER_pls.ildt in /tmp directory.

Check for any errors reported by the parser. Most of the time, the errors would be due to incorrect annotations. See the samples in the documentation to identify errors.

If there are no errors, a ildt file is created in the directory which has the source file.

4. The metadata or the loader file (ildt), which is kind of ldt file, is generated by parser which needs to be loaded into Oracle Applications. FNDLOAD utility is used to load any ldt file in Oracle Applications. Use FNDLOAD to upload generated ildt file into Oracle Applications.

Eg. To run fndload utility on XYZ_SALES_ORDER_pls.ildt, run following command
$FND_TOP/bin/FNDLOAD apps/<apps password>@db_sid 0 Y UPLOAD $FND_TOP/patch/115/import/wfirep.lct XYZ_SALES_ORDER_pls.ildt

Check in the generated log file for any errors.

5. Log in to Oracle Applications and search for your custom interface.

Screen shot of Integration Repository Search Page:

Search.JPG


















Screen shot of Interface Detail Page for XYZ_SALES_ORDER :


Details.JPG






About This Entry

This page contains a single entry from the blog posted on November 3, 2009 7:24 AM.

Many more can be found on the main index page or by looking through the archives.

Top Tags

Powered by
Movable Type and Oracle