Interface Tables
Interface Tables
Oracle provides flexible and flexible tools in the form of Interface programs to import
the master and transactional data like Customers, Invoices, and Sales Orders etc from
external systems into Oracle Applications. This article briefs you about some of the
major interface programs.
Conversion/Interface Strategy:
1. Data Mapping
During the data mapping process, list of all the data sets and data elements that will
need to be moved into the Oracle tables as part of conversion are identified. Data
mapping tables are prepared as part of this activity that show what are the data elements
that are needed by the target system to meet the business requirements and from where
they will be extracted in the old system.
2. Download Programs
After the conversion data mapping is complete, download programs are developed that
are used to extract the identified conversion data elements from the current systems in
the form of an ASCII flat file. The structure of the flat file must match the structure of
the Oracle standard interface tables. These flat files generated may be in text form or a
comma or space delimited, variable or fixed format data file.
3. Upload Program
Once the data has been extracted to a flat file, it is then moved to the target file system
and the data from the file is loaded into user defined staging tables in the target
database using SQL Loader or UTL_FILE utilities. Then programs are written and run
which validate the data in the staging tables and insert the same into the Oracle
provided standard Interface tables.
4. Interface Program
Once the interface tables are populated, the respective interface program (each
data element interface has a specific interface program to run) is submitted. The
interface programs validate the data, derive and assign the default values and ultimately
populate the production base tables.
validations that need to be performed after inserting the details into the interface
tables and required columns that need to be populated in the interface table are
• Customer conversion
• AR Receipts
• Lockbox Interface
• AP Invoices
• Vendor
• Purchase Orders
• Requisition
• Receiving
• Journal import
• Budget import
Order Import enables you to import Sales Orders into Oracle Applications instead of
Pre-requisites:
Order Type
Line Type
Items
Customers
Ship Method/ Freight Carrier
Sales Person
Sales Territories
Customer Order Holds
Sub Inventory/ Locations
On hand Quantity
Interface tables:
OE_HEADERS_IFACE_ALL
OE_LINES_IFACE_ALL
OE_ACTIONS_IFACE_ALL
OE_ORDER_CUST_IFACE_ALL
OE_PRICE_ADJS_IFACE_ALL
OE_PRICE_ATTS_IFACE_ALL
Base tables:
OE_ORDER_HEADERS_ALL
OE_ORDER_LINES_ALL
Concurrent Program:
Order Import
Validations:
Notes:
OE_HEADERS_IFACE_ALL:
ORIG_SYS_DOCUMENT_REF
ORDER_SOURCE
CONVERSION_RATE
ORG_ID
ORDER_TYPE_ID
PRICE_LIST
SOLD_FROM_ORG_ID
SOLD_TO_ORG_ID
SHIP_TO_ORG_ID
SHIP_FROM_ORG_ID
CUSTOMER_NAME
INVOICE_TO_ORG_ID
OPERATION_CODE
OE_LINES_IFACE_ALL
ORDER_SOURCE_ID
ORIG_SYS_DOCUMENT_REF
ORIG_SYS_LINE_REF
ORIG_SYS_SHIPMENT_REF
INVENTORY_ITEM_ID
LINK_TO_LINE_REF
REQUEST_DATE
DELIVERY_LEAD_TIME
DELIVERY_ID
ORDERED_QUANTITY
ORDER_QUANTITY_UOM
SHIPPING_QUANTITY
PRICING_QUANTITY
PRICING_QUANTITY_UOM
SOLD_FROM_ORG_ID
SOLD_TO_ORG_ID
INVOICE_TO_ ORG_ID
SHIP_TO_ORG_ID
PRICE_LIST_ID
PAYMENT_TERM_ID
The Item Interface lets you import items into Oracle Inventory.
Pre-requisites:
Creating an Organization
Code Combinations
Templates
Interface tables:
MTL_SYSTEM_ITEMS_INTERFACE
Concurrent Program:
Item import
In the item import parameters form, for the parameter 'set process id', specify the
parameter 'Create or Update' can have any value. Through the import process, we
can only create item category assignment(s). Updating or Deletion of item category
Base Tables:
MTL_SYSTEM_ITEMS_B
MTL_ITEM_REVISIONS_B
MTL_CATEGORIES_B
MTL_CATEGORY_SETS_B
MTL_ITEM_STATUS
MTL_ITEM_TEMPLATES
Validations:
Check for valid template id. (Attributes are already set for items, default
Check for unique item type. Discard the item, if part has non-unique item
type.
MTL_SYSTEM_ITEMS_INTERFACE:
succeeded)
ORGANIZATION_ID
DESCRIPTION
MATERIAL_COST
REVISION
TEMPLATE_ID
SUMMARY_FLAG
ENABLED_FLAG
PURCHASING_ITEM_FLAG
MTL_PARAMETERS.SALES_ACCOUNT)
MTL_PARAMETERS.COST_OF_SALES_ACCOUNT)
MTL_ITEM_CATEGORIES_INTERFACE:
INVENTORY_ITEM_ID or ITEM_NUMBER.
Import).
PROCESS_FLAG = 1
SET_PROCESS_ID (The item and category interface records should have the same
MTL_ITEM_REVISIONS_INTERFACE:
REVISION
CHANGE_NOTICE
ECN_INITIATION_DATE
IMPLEMENTATION_DATE
IMPLEMENTED_SERIAL_NUMBER
EFFECTIVITY_DATE
ATTRIBUTE_CATEGORY
ATTRIBUTEn
REVISED_ITEM_SEQUENCE_ID
DESCRIPTION
PROCESS_FLAG = 1
TRANSACTION_TYPE = 'CREATE'
SET_PROCESS_ID = 1
Each row in the mtl_item_revisions_interface table must have the REVISION and
This interface lets you import the on hand inventory into Oracle.
Interface tables:
MTL_TRANSACTIONS_INTERFACE
Concurrent Program:
Launch the Transaction Manager through Interface Manager or explicitly call the
The Transaction Manager picks up the rows to process based on the LOCK_FLAG,
process completely, then PROCESS_FLAG will be set to '3' and ERROR_CODE and
Base Tables:
MTL_ON_HAND_QUANTITIES
MTL_LOT_NUMBERS
MTL_SERIAL_NUMBERS
Validations:
Validate organization_id
Validate disposition_id
Check if the item for the org is lot controlled before inserting into the Lots interface
table.
Check if the item for the org is serial controlled before inserting into Serial interface
table.
Check if inventory already exists for that item in that org and for a lot.
MTL_TRANSACTIONS_INTERFACE:
TRANSACTION_HEADER_ID (MTL_MATERIAL_TRANSACTIONS_S.NEXTVAL)
TRANSACTION_INTERFACE_ID (MTL_MATERIAL_TRANSACTIONS_S.NEXTVAL – If
TRANSACTION_DATE,
TRANSACTION_TYPE_ID,
transaction manager polling process and assigned to transaction worker. These will
SOURCE_CODE,
SOURCE_HEADER_ID,
SOURCE_LINE_ID (Details about the source like Order Entry etc for tracking
purposes)
TRANSACTION_SOURCE_ID
ITEM_SEGMENT1 TO 20,
TRANSACTION_QTY,
TRANSACTION_UOM,
SUBINVENTORY_CODE,
ORGANIZATION_ID,
LOC_SEGMENT1 TO 20.
MTL_TRANSACTION_LOTS_INTERFACE:
TRANSACTION_INTERFACE_ID,
LOT_NUMBER,
LOT_EXPIRATION_DATE,
TRANSACTION_QUANTITY,
TRANSACTION_INTERFACE_ID,
FM_SERIAL_NUMBER,
TO_SERIAL_NUMBER,
VENDOR_SERIAL_NUMBER
Customer conversion
Interface tables:
RA_CUSTOMERS_INTERFACE_ALL
RA_CUSTOMER_PROFILES_INT_ALL
RA_CONTACT_PHONES_INT_ALL
RA_CUSTOMER_BANKS_INT_ALL
RA_CUST_PAY_METHOD_INT_ALL
Base tables:
RA_CUSTOMERS
RA_ADDRESSES_ALL
RA_CUSTOMER_RELATIONSHIPS_ALL
RA_SITE_USES_ALL
Concurrent program:
Customer Interface
Validations:
Check if the location already exists in HZ_LOCATIONS. If does not exist, create
new location.
RA_CUSTOMERS_INTERFACE_ALL:
ORIG_SYSTEM_CUSTOMER_REF
SITE_USE_CODE
ORIG_SYSTEM_ADDRESS_REF
INSERT_UPDATE_FLAG (I = Insert, U = Update)
CUSTOMER_NAME
CUSTOMER_NUMBER
CUSTOMER_STATUS
PRIMARY_SITE_USE_FLAG
LOCATION
ADDRESS1
ADDRESS2
ADDRESS3
ADDRESS4
CITY
STATE
PROVINCE
COUNTY
POSTAL_CODE
COUNTRY
CUSTOMER_ATTRIBUTE1
CUSTOMER_ATTRIBUTE2
CUSTOMER_ATTRIBUTE3
CUSTOMER_ATTRIBUTE4
CUSTOMER_ATTRIBUTE5
LAST_UPDATED_BY
LAST_UPDATE_DATE
CREATED_BY
CREATION_DATE
ORG_ID
CUSTOMER_NAME_PHONETIC
RA_CUSTOMER_PROFILES_INT_ALL:
INSERT_UPDATE_FLAG
ORIG_SYSTEM_CUSTOMER_REF
ORIG_SYSTEM_ADDRESS_REF
CUSTOMER_PROFILE_CLASS_NAME
CREDIT_HOLD
LAST_UPDATED_BY
LAST_UPDATE_DATE
CREATION_DATE
CREATED_BY
ORG_ID
RA_CONTACT_PHONES_INT_ALL:
ORIG_SYSTEM_CONTACT_REF
ORIG_SYSTEM_TELEPHONE_REF
ORIG_SYSTEM_CUSTOMER_REF
ORIG_SYSTEM_ADDRESS_REF
INSERT_UPDATE_FLAG
CONTACT_FIRST_NAME
CONTACT_LAST_NAME
CONTACT_TITLE
CONTACT_JOB_TITLE
TELEPHONE
TELEPHONE_EXTENSION
TELEPHONE_TYPE
TELEPHONE_AREA_CODE
LAST_UPDATE_DATE
LAST_UPDATED_BY
LAST_UPDATE_LOGIN
CREATION_DATE
CREATED_BY
EMAIL_ADDRESS
ORG_ID
Customer API
support complex trading communities. These APIs utilize the new TCA model,
API Details:
Exec dbms_application_info.set_client_info(‘204’);
HZ_CUST_ACCOUNT_V2PUB.CREATE_CUST_ACCOUNT()
HZ_CUST_ACCOUNT_V2PUB.CUST_ACCOUNT_REC_TYPE
HZ_PARTY_V2PUB.ORGANIZATION_REC_TYPE
HZ_CUSTOMER_PROFILE_V2PUB.CUSTOMER_PROFILE_REC_TYPE
HZ_LOCATION_V2PUB.CREATE_LOCATION()
HZ_LOCATION_V2PUB.LOCATION_REC_TYPE
4. Create a party site using party_id you get from step 2 and location_id from
step 3.
HZ_PARTY_SITE_V2PUB.CREATE_PARTY_SITE()
HZ_PARTY_SITE_V2PUB.PARTY_SITE_REC_TYPE
5. Create an account site using account_id you get from step 2 and party_site_id
from step 4.
HZ_CUST_ACCOUNT_SITE_V2PUB.CREATE_CUST_ACCT_SITE()
HZ_CUST_ACCOUNT_SITE_V2PUB.CUST_ACCT_SITE_REC_TYPE
6. Create an account site use using cust_acct_site_id you get from step 5 ans
site_use_code = ‘BILL_TO’.
HZ_CUST_ACCOUNT_SITE_V2PUB.CREATE_CUST_SITE_USE()
HZ_CUST_ACCOUNT_SITE_V2PUB.CUST_SITE_USE_REC_TYPE
HZ_CUSTOMER_PROFILE_V2PUB.CUSTOMER_PROFILE_REC_TYPE
Base table:
HZ_PARTIES
HZ_PARTY_SITES
HZ_LOCATIONS
HZ_CUST_ACCOUNTS
HZ_CUST_SITE_USES_ALL
HZ_CUST_ACCT_SITES_ALL
HZ_PARTY_SITE_USES
Validations:
Check if the location already exists in HZ_LOCATIONS. If does not exist, create
new location.
http://www.erpschools.com/Apps/oracle-
applications/articles/financials/Receivables/Customer-TCA-Architecture-and-
API/index.aspx
On Account credits.
Pre-requisites:
Set of Books
Code combinations
Items
Sales representatives
Customers
Payment Terms
Transaction Types
Freight Carriers
FOB
Batch Sources
Accounting Rules
Interface tables:
RA_INTERFACE_LINES_ALL
RA_INTERFACE_SALESCREDITS
RA_INTERFACE_DISTRIBUTIONS
Base tables:
RA_BATCHES
RA_CUSTOMER_TRX_ALL
RA_CUSTOMER_TRX_LINES_ALL
AR_PAYMENT_SCHEDULES_ALL
RA_CUSTOMER_TRX_LINE_SALESREPS
RA_CUST_TRX_GL_DIST_ALL
RA_CUSTOMER_TRX_TYPES_ALL
Concurrent Program:
Validations:
type.
AGREEMENT_ID
COMMENTS
CONVERSION_DATE
CONVERSION_RATE
CONVERSION_TYPE
CREDIT_METHOD_FOR_ACCT_RULE
CREDIT_METHOD_FOR_INSTALLMENTS
CURRENCY_CODE
CUSTOMER_BANK_ACCOUNT_ID
CUST_TRX_TYPE_ID
DOCUMENT_NUMBER
DOCUMENT_NUMBER_SEQUENCE_ID
GL_DATE
HEADER_ATTRIBUTE1–15
HEADER_ATTRIBUTE_CATEGORY
INITIAL_CUSTOMER_TRX_ID
INTERNAL_NOTES
INVOICING_RULE_ID
ORIG_SYSTEM_BILL_ADDRESS_ID
ORIG_SYSTEM_BILL_CONTACT_ID
ORIG_SYSTEM_BILL_CUSTOMER_ID
ORIG_SYSTEM_SHIP_ADDRESS_ID
ORIG_SYSTEM_SHIP_CONTACT_ID
ORIG_SYSTEM_SHIP_CUSTOMER_ID
ORIG_SYSTEM_SOLD_CUSTOMER_ID
ORIG_SYSTEM_BATCH_NAME
PAYMENT_SERVER_ORDER_ID
PREVIOUS_CUSTOMER_TRX_ID
PRIMARY_SALESREP_ID
PRINTING_OPTION
PURCHASE_ORDER
PURCHASE_ORDER_DATE
PURCHASE_ORDER_REVISION
REASON_CODE
RECEIPT_METHOD_ID
RELATED_CUSTOMER_TRX_ID
SET_OF_BOOKS_ID
TERM_ID
TERRITORY_ID
TRX_DATE
TRX_NUMBER
Receipt API
To bring in Unapplied Receipts and Conversion Receipts for Open Debit items
Pre-requisites:
Set of Books
Code combinations
Items
Quick Codes
Sales representatives
Customers
API:
AR_RECEIPT_API_PUB.CREATE_CASH
AR_RECEIPT_API_PUB.CREATE_AND_APPLY
Base tables:
AR_CASH_RECEIPTS
Validations:
Check the currency and the exchange rate type to assign the exchange rate.
Lockbox interface
1. Import: During this step, Lockbox reads and formats the data from your bank
file
script.
2. Validation: The validation program checks data in this interface table for
compatibility with Receivables. Once validated, the data is transferred into
AR_INTERIM_CASH_RCPT_LINES_ALL).
3. Post QuickCash: This step applies the receipts and updates your customer’s
balances.
Pre-Requisites:
Banks
Receipt Class
Payment Method
Receipt Source
Lockbox
Transmission format
Interface tables:
AR_INTERIM_CASH_RECEIPTS_ALL
AR_CASH_RECEIPTS
AR_RECEIVABLES_APPLICATIONS
AR_ADJUSTMENTS
AR_DISTRIBUTIONS_ALL
AR_PAYMENT_SCHEDULES_ALL
Concurrent program:
Lockbox
Validations:
AR_PAYMENTS_INTERFACE_ALL:
STATUS
RECORD_TYPE
LOCKBOX_NUMBER
BATCH_NAME
TRANSIT_ROUTING_NUMBER
ACCOUNT
CHECK_NUMBER
REMITTANCE_AMOUNT
DEPOSIT_DATE
ITEM_NUMBER
CURRENCY_CODE
DEPOSIT_TIME
AP invoice interface
This interface helps us to import vendor invoices into Oracle applications from
Pre-requisites:
Set of Books
Code combinations
Employees
Lookups
Interface tables:
AP_INVOICES_INTERFACE
AP_INVOICE_LINES_INTERFACE
Base tables:
Concurrent program:
Validations:
AP_INVOICES_INTERFACE:
INVOICE_ID
INVOICE_NUM
INVOICE_DATE
VENDOR_NUM
VENDOR_SITE_ID
INVOICE_AMOUNT
INVOICE_CURRENCY_CODE
EXCHANGE_RATE
EXCHANGE_RATE_TYPE
EXCHANGE_DATE
DESCRIPTION
SOURCE
PO_NUMBER
PAYMENT_METHOD_LOOKUP_CODE
PAY_GROUP_LOOKUP_CODE
ATTRIBUTE1 TO 15
ORG_ID
AP_INVOICE_LINES_INTERFACE:
INVOICE_ID
INVOICE_LINE_ID
LINE_TYPE_LOOKUP_CODE
AMOUNT
DESCRIPTION
TAX_CODE
PO_NUMBER
PO_LINE_NUMBER
PO_SHIPMENT_NUM
PO_DISTRIBUTION_NUM
PO_UNIT_OF_MEASURE
QUANTITY_INVOICED
DIST_CODE_CONCATENATED
DIST_CODE_COMBINATION_ID
ATTRIBUTE1
ATTRIBUTE2
ATTRIBUTE3
ATTRIBUTE4
ATTRIBUTE5
ORG_ID
Vendor conversion/interface
This interface is used to import suppliers, supplier sites and site contacts into
Oracle applications.
Pre-requisites setup’s required:
Payment terms
Pay Groups
CCID
Supplier classifications
Bank Accounts
Interface tables:
AP_SUPPLIERS_INT
AP_SUPPLIER_SITES_INT
AP_SUP_SITE_CONTACT_INT
Base Tables:
PO_VENDORS
PO_VENDOR_SITES_ALL
PO_VENDOR_CONTACTS
Interface programs:
Validations:
AP_SUPPLIERS_INT :
AP_SUPPLIER_SITES_INT:
AP_SUP_SITE_CONTACTS_INT:
EMAIL, ORG_ID
new concurrent programs Import Price Catalogs and Import Standard Purchase
Pre-requisites:
Buyers
Line Types
Items
PO
Interface Tables:
PO_HEADERS_INTERFACE
PO_LINES_INTERFACE
PO_DISTRIBUTIONS_INTERFACE
PO_INTERFACE_ERRORS (Fallouts)
Interface Program:
Import Standard Purchase Orders.
Base Tables:
PO_HEADERS_ALL
PO_LINES_ALL
PO_DISTRIBUTIONS_ALL
PO_LINE_LOCATIONS_ALL
Validations:
Header:
Lines :
PO_HEADERS_INTERFACE :
PO_LINES_INTERFACE :
PO_DISTRIBUTIONS_INTERFACE :
Interface Tables:
PO_HEADERS_INTERFACE
PO_LINES_INTERFACE
Interface program:
Base tables:
PO_HEADERS_ALL
PO_LINES_ALL
PO_LINE_LOCATIONS_ALL
Example:
Suppose you want to create a blanket with one line and two price breaks and the
'31-JUN-2006'
'01-JAN-2007'
To create the above the BPA, you would create ONE record in
LINE1: It will have only the line information. LINE NUM would be 1.
LINE2: For the first Price Break details, LINE NUM will be the same as above i.e. 1.
All the line-level records above must have the same INTERFACE_HEADER_ID.
http://www.erpschools.com/Apps/oracle-
applications/articles/financials/Purchasing/Import-Blanket-Purchase-
Agreements/index.aspx
Requisition import
You can automatically import requisitions into Oracle Applications using the
Pre-requisites:
Set of Books
Code combinations
Employees
Items
Interface tables:
PO_REQUISITIONS_INTERFACE_ALL
PO_REQ_DIST_INTERFACE_ALL
Base tables:
PO_REQUISITIONS_HEADERS_ALL
PO_REQUISITION_LINES_ALL
PO_REQ_DISTRIBUTIONS_ALL
Concurrent program:
REQUISITION IMPORT
Validations:
type.
PO_REQUISITIONS_INTERFACE_ALL :
DESTINATION_TYPE_CODE
AUTHORIZATION_STATUS
PREPARER_ID or PREPARER_NAME
QUANTITY
CHARGE_ACCOUNT_ID or charge account segment values
DESTINATION_ORGANIZATION_ID or DESTINATION_ORGANIZATION_CODE
DELIVER_TO_LOCATION_ID or DELIVER_TO_LOCATION_CODE
DELIVER_TO_REQUESTOR_ID or DELIVER_TO_REQUESTOR_NAME
ORG_ID
DESTINATION_TYPE_CODE is 'INVENTORY')
PO_REQ_DIST_INTERFACE_ALL :
DISTRIBUTION_NUMBER
DESTINATION_ORGANIZATION_ID
DESTINATION_TYPE_CODE
INTERFACE_SOURCE_CODE
ORG_ID
PO Receipts Interface
The Receiving Open Interface is used for processing and validating receipt data that
Pre-requisites:
Set of Books
Code combinations
Employees
Items
Interface tables:
RCV_HEADERS_INTERFACE
RCV_TRANSACTIONS_INTERFACE
PO_INTERFACE_ERRORS
Concurrent program:
Base tables:
RCV_SHIPMENT_HEADERS
RCV_SHIPMENT_LINES
RCV_TRANSACTIONS
Validations:
RCV_HEADERS_INTERFACE:
HEADER_INTERFACE_ID
GROUP_ID
PROCESSING_STATUS_
CODE
RECEIPT_SOURCE_CODE
TRANSACTION_TYPE
SHIPMENT_NUM
RECEIPT_NUM
VENDOR_NAME
SHIP_TO_
ORGANIZATION_CODE
SHIPPED_DATE
INVOICE_NUM
INVOICE_DATE
TOTAL_INVOICE_
AMOUNT
PAYMENT_TERMS_ID
EMPLOYEE_NAME
RCV_TRANSACTIONS_INTERFACE:
INTERFACE_TRANSACTION_ID
GROUP_ID
TRANSACTION_DATE
PROCESSING_STATUS_CODE =’PENDING’
CATEGORY_ID
QUANTITY
UNIT_OF_MEASURE
ITEM_DESCRIPTION
ITEM_REVISION
EMPLOYEE_ID
AUTO_TRANSACT_CODE
SHIP_TO_LOCATION_ID
RECEIPT_SOURCE_CODE
TO_ORGANIZATION_CODE
SOURCE_DOCUMENT_CODE
PO_HEADER_ID
PO_RELEASE_ID
PO_LINE_ID
PO_LINE_LOCATION_ID
PO_DISTRIBUTION_ID
SUBINVENTORY
HEADER_INTERFACE_ID
DELIVER_TO_PERSON_NAME
DELIVER_TO_LOCATION_CODE
VALIDATION_FLAG
ITEM_NUM
VENDOR_ITEM_NUM
VENDOR_ID
VENDOR_SITE_ID
ITEM_ID
ITEM_DESCRIPTION
SHIP_TO_LOCATION_ID
GL Journal interface
This interface lets you import journals from other applications like Receivables,
Pre-requisites:
Set of Books
Code Combinations
Currencies
Categories
Journal Sources
Interface tables:
GL_INTERFACE
Base tables:
GL_JE_HEADERS
GL_JE_LINES
GL_JE_BACTHES
Concurrent Program:
Journal Import
Validations:
Validate SOB, journal source name, journal category name, actual flag
A – Actual amounts
B – Budget amounts
E – Encumbrance amount
If you enter E in the interface table, then enter appropriate encumbrance ID, if B
Check if accounting date or GL date based period name is valid (i.e., not closed).
STATUS
SET_OF_BOOKS_ID
ACCOUNTING_DATE
CURRENCY_CODE
DATE_CREATED
CREATED_BY
ACTUAL_FLAG
USER_JE_CATEGORY_NAME
USER_JE_SOURCE_NAME
CURRENCY_CONVERSION_DATE
ENCUMBRANCE_TYPE_ID
BUDGET_VERSION_ID
USER_CURRENCY_CONVERSION_TYPE
CURRENCY_CONVERSION_RATE
SEGMENT1 to
ENTERED_DR
ENTERED_CR
ACCOUNTED_DR
ACCOUNTED_CR
TRANSACTION_DATE
PERIOD_NAME
JE_LINE_NUM
CHART_OF_ACCOUNTS_ID
FUNCTIONAL_CURRENCY_CODE
CODE_COMBINATION_ID
DATE_CREATED_IN_GL
GROUP_ID
GL budget interface
Budget interface lets you load budget data from external sources into Oracle
Applications.
Pre-requisites:
Set of Books
Code Combinations
Interface tables:
GL_BUDGET_INTERFACE
Base tables:
GL_BUDGETS
GL_BUDGET_ASSIGNMENTS
GL_BUDGET_TYPES
Concurrent program:
Budget Upload
Validations:
GL_BUDGET_INTERFACE:
BUDGET_NAME NOT
BUDGET_ENTITY_NAME
CURRENCY_CODE
FISCAL_YEAR
UPDATE_LOGIC_TYPE
BUDGET_ENTITY_ID
SET_OF_BOOKS_ID
CODE_COMBINATION_ID
BUDGET_VERSION_ID
PERIOD_TYPE
DR_FLAG
STATUS
ACCOUNT_TYPE
This interface lets you load the rates automatically into General Ledger.
Pre-requisites:
Currencies
Interface tables:
GL_DAILY_RATES_INTERFACE
Base tables:
GL_DAILY_RATES
GL_DAILY_CONVERSION_TYPES
Concurrent Program:
You do not need to run any import programs. The insert, update, or deletion of
Validations:
GL_DAILY_RATES_INTERFACE :
FROM_CURRENCY
TO_CURRENCY
FROM_CONVERSION_DATE
TO_CONVERSION_DATE
USER_CONVERSION_TYPE
CONVERSION_RATE
You can also get the On-hand quantities from the table mtl_onhand_quantities
DECLARE
v_item_id NUMBER;
v_org_id NUMBER;
v_qoh NUMBER;
v_rqoh NUMBER;
v_atr NUMBER;
v_att NUMBER;
v_qr NUMBER;
v_qs NUMBER;
v_lot_control_code BOOLEAN;
v_serial_control_code BOOLEAN;
BEGIN
v_item_id := '6566';
v_org_id := 61;
v_qoh := NULL;
v_rqoh := NULL;
v_atr := NULL;
v_lot_control_code := FALSE;
v_serial_control_code := FALSE;
fnd_client_info.set_org_context (1);
-- Call API
inv_quantity_tree_pub.query_quantities
-- or 3
-- is_lot_control,
p_onhand_source => 3,
);
In this Document
Purpose
Scope and Application
Item Open Interface (INCOIN/IOI) Setup and How-To
1. Setup
2. How-To
2.1 Create Mode
2.2 Update Mode
2.3. Functionality
2.4 To populate material costs from IOI
3. Not Supported Issues
* Updating Item Attributes to NULL
4. Importing Master and Child Records
5. Importing Categories
6. Revisions
7. Error Checking
8. Template Use
References
Applies to:
Oracle Inventory Management
Purpose
Document the setup and usage of the Item Open Interface (IOI) process for the import of items.
This document will walk the user through the setup and execution of the Item
Open Interface (IOI) and provide examples for creating and updating items,
setting attributes to NULL, importing master and child records, importing
revisions and using templates.
1. Setup
Follow this checklist before attempting to load items via the Item Open
Interface:
a) If any IOI patches have been applied, verify that there are no invalid
packages. To find invalid objects, run the following:
b) Ensure that INCOIN has been relinked if any IOI patches were applied.
adrelink sample command lines to relink aiap:
Example results from Release 11.0.3 would include the following indexes:
MTL_SYSTEM_ITEMS_INTERFACE_N1
MTL_SYSTEM_ITEMS_INTERFACE_N2
MTL_SYSTEM_ITEMS_INTERFACE_U1
MTL_SYSTEM_ITEMS_N1
MTL_SYSTEM_ITEMS_N2
MTL_SYSTEM_ITEMS_N3
MTL_SYSTEM_ITEMS_N4
MTL_SYSTEM_ITEMS_N5
MTL_SYSTEM_ITEMS_N6
Example results from Release 11i (11.5.x) would include the following indexes:
MTL_SYSTEM_ITEMS_INTERFACE_N1
MTL_SYSTEM_ITEMS_INTERFACE_N2
MTL_SYSTEM_ITEMS_INTERFACE_N3
MTL_SYSTEM_ITEMS_INTERFACE_U1
MTL_SYSTEM_ITEMS_B_N1
MTL_SYSTEM_ITEMS_B_N2
MTL_SYSTEM_ITEMS_B_N3
MTL_SYSTEM_ITEMS_B_N4
MTL_SYSTEM_ITEMS_B_N5
MTL_SYSTEM_ITEMS_B_N6
MTL_SYSTEM_ITEMS_B_N7
MTL_SYSTEM_ITEMS_B_U1
MTL_SYSTEM_ITEMS_INTERFACE_N1
MTL_SYSTEM_ITEMS_INTERFACE_N2
MTL_SYSTEM_ITEMS_INTERFACE_N3
MTL_SYSTEM_ITEMS_INTERFACE_N4
MTL_SYSTEM_ITEMS_INTERFACE_N5
MTL_SYSTEM_ITEMS_INTERFACE_N6
MTL_SYSTEM_ITEMS_INTERFACE_U2
MTL_SYSTEM_ITEMS_B_N1
MTL_SYSTEM_ITEMS_B_N10
MTL_SYSTEM_ITEMS_B_N11
MTL_SYSTEM_ITEMS_B_N12
MTL_SYSTEM_ITEMS_B_N13
MTL_SYSTEM_ITEMS_B_N14
MTL_SYSTEM_ITEMS_B_N2
MTL_SYSTEM_ITEMS_B_N3
MTL_SYSTEM_ITEMS_B_N4
MTL_SYSTEM_ITEMS_B_N5
MTL_SYSTEM_ITEMS_B_N6
MTL_SYSTEM_ITEMS_B_N7
MTL_SYSTEM_ITEMS_B_N8
MTL_SYSTEM_ITEMS_B_N9
MTL_SYSTEM_ITEMS_B_U1
MTL_SYSTEM_ITEMS_N8
d) Check if the internal and standard concurrent managers are up and running before loading items
(system admin resp/concurrent/manager/administer) Check the actual and target processes, the numbers
should be the same for each.
e) Define an item through the Define Item form. If this does not work, then it is unlikely that items will load
through the interface. ex. inventory responsibility/items/master items Enter item name, description and
attributes needed and save the item.
f) Truncate all Item Import tables before loading MTL_SYSTEM_ITEMS_INTERFACE. For example:
Note: If Purchasing is fully installed but Inventory is only a shared product, users should be able to run the
IOI. You should, however, be aware that the IOI code is not shipped with standalone Purchasing. You will
have to obtain the code by downloading the latest IOI megapatches.
2. How-To
PROCESS_FLAG = 1
TRANSACTION_TYPE = 'CREATE'
SET_PROCESS_ID = 1
ORGANIZATION_ID = Master Org id
DESCRIPTION = 'Description of the item'
ITEM_NUMBER [and/or SEGMENT(n)]
Note: Creating and updating items in a single run of the Item Open Interface is not supported functionality.
For best performance, use inventory_item_id when updating items.
2.3. Functionality
Every attribute updateable from the Item form is updateable through the interface, and all required
validations are performed to enforce:
Templates can be applied to existing Items. For best results, use template_id and template_name. The
Item status can be changed for existing Items, and the proper attributes are Defaulted / Set accordingly.
The Status change is recorded in MTL_PENDING_ITEM_STATUS.
Master level controlled attributes are correctly propagated to the Child records when the Master Item
record is updated. When launching items into the Master Item Org, the Child records are copied into
MTL_SYSTEM_ITEMS_INTERFACE for validation, and are identified with a transaction_type of
'AUTO_CHILD'. These records are deleted if the parameter 'Delete Processed Rows' has been passed as
'Yes', and remain for diagnostic purposes if the parameter is passed as 'No'.
When the defining attribute for a Functional area is enabled, the proper default category set and category
is assigned to the Item. For example: If an Inventory item is selected, and the default category set for
Inventory items is "inv.items", with a default category of "misc.misc", this is the category set and category
that will be assigned during the IOI process.
• Item Costs cannot be UPDATED (using "UPDATE" transaction_type) through the interface.
• New Item revisions cannot be added to existing Items.
• Current functionality does not support updates to a PTO MODEL ITEM through the IOI update
feature. See note: Note 1076412.6.
Master level controlled attributes are correctly propagated to the Child records when the Master Item
record is updated. When launching items into the Master Item Org, the Child records are copied into
MTL_SYSTEM_ITEMS_INTERFACE for validation, and are identified with a transaction_type of
'AUTO_CHILD'.
5. Importing Categories
Apply Patch 1644995 for R11.0. This functionality is not available in R11i until 11.5.5.
With this enhancement, the user will have the flexiblity to import multiple item category
assignment as part of the item import process. The user procedures are as follows:
1. Populate the item interface tables (MTL_SYSTEM_ITEMS_INTERFACE). This step is necessary if you
are creating items and categories in the same run. For importing item category assignments for already
existing items, you do not need to populate item interface table. For details regarding populating the item
interface table, please refer to Open Interface Manual.
2. Poplate the item categories interface table (MTL_ITEM_CATEGORIES_INTERFACE). This table has
the following columns :
INVENTORY_ITEM_ID NUMBER
CATEGORY_SET_ID NUMBER
CATEGORY_ID NUMBER
LAST_UPDATE_DATE DATE
LAST_UPDATED_BY NUMBER
CREATION_DATE DATE
CREATED_BY NUMBER
LAST_UPDATE_LOGIN NUMBER
REQUEST_ID NUMBER
PROGRAM_APPLICATION_ID NUMBER
PROGRAM_ID NUMBER
PROGRAM_UPDATE_DATE DATE
ORGANIZATION_ID NUMBER
TRANSACTION_ID NUMBER
PROCESS_FLAG NUMBER
CATEGORY_SET_NAME VARCHAR2(30)
CATEGORY_NAME VARCHAR2(81)
ORGANIZATION_CODE VARCHAR2(3)
ITEM_NUMBER VARCHAR2(81)
TRANSACTION_TYPE VARCHAR2(10)
SET_PROCESS_ID NOT NULL NUMBER
The user needs to populate the following mandatory columns in item categories interface table:
A. Either inventory_item_id or item_number. When item and category are being imported together,then
user can only specify the item_number, since item id will be generated by
the import process.
B. Either organization_id or organization_code or both.
C. The transaction_type column should be 'CREATE'. We do not support 'UPDATE' or 'DELETE' for item
category assignment.
D. Either category_set_id or category_set_name or both.
E. Either category_id or category_name or both.
F. Process_flag column as 1.
G. Populate the set_process_id column. The item and category interface records should have the same
set_process_id, if you are importing item and category assignment together.
3. After populating the item and category interface tables, launch the Item Import process from the
applications. In the item import parameters form, for the parameter 'set process id', specify the
'set process id' value given in the mtl_item_categories_interface table. The parameter 'Create or Update'
can have have any value. Through the import process, we can only create item category assignment(s).
Updation or Deletion of item category assignment is not supported.
4. Once the concurrent process completes, check the MTL_INTERFACE_ERRORS table for any error(s)
during the item and category import. Correct those error conditions in the interface tables and run the item
import again. If the process_flag is 7, that means the item category interface
records were successfully imported.
6. Revisions
Note: Using the ITEM_NUMBER column in the MTL_SYSTEM_ITEMS_INTERFACE table is required if
you are populating revision data into the MTL_ITEM_REVISIONS_INTERFACE table. The value of the
ITEM_NUMBER must equal the concatenated segments(n) of the item being imported, plus the segment
separator. If you are not importing revision history you can populate either ITEM_NUMBER or the
SEGMENT(n) column(s) or both.
For historical item revision data, do NOT populate the REVISION column in the
MTL_SYSTEM_ITEMS_INTERFACE table. This column is used only if the current revision of the item is
being imported. Populate these columns in the mtl_item_revisions_interface table:
PROCESS_FLAG = 1
TRANSACTION_TYPE = 'CREATE'
SET_PROCESS_ID = 1
ORGANIZATION_ID = Master Org ID.
REVISION
EFFECTIVITY_DATE
IMPLEMENTATION_DATE
ITEM_NUMBER = (Must match the item_number in MTL_SYSTEM_ITEMS_INTERFACE
table.)
Each row in the mtl_item_revisions_interface table must have the REVISION and EFFECTIVITY_DATE in
alphabetical (ASCII sort) and chronological order. The revision format must match the starting revision in
the Organization Parameters. For example, if the starting revision is '00A' then the REVISION column in
mtl_item_revisions_interface must match this format (00A,00B, etc.). The starting revision is sometimes
referred to as the default revision.
Under Inventory responsibility navigate to: Setup/Organizations/Parameters to verify the Starting Revision
in the "Revision, Lot, Serial" alternate region.
Run the IOI process. Navigate --> Inventory: Items: Import Items. There are 6 parameters to enter to
begin the process:
1. Specify one or all organizations.
2. Validate items, yes or no.
3. Process items, yes or no.
4. Delete processed rows, yes or no.
5. Process set (null for all)
6. Create or update items (1 for create, 2 for update)
Note: If you are importing Master and Child records, insert them into the
MTL_SYSTEM_ITEMS_INTERFACE and MTL_ITEM_REVISIONS_INTERFACE tables, and run them at
the same time by setting the 'All Organizations' parameter to 'Yes'. If you do not do this, then the Child
revision records will not be imported. What happens is, after the Master records are imported, the IOI
process sets the process_flag = 3 for the remaining records in the
mtl_item_revisions_interface table. There is a bug/patch for this issue: 1216978, available in the next
minipack.
7. Error Checking
When importing multiple revisions, if one record for an item fails validation, all revisions for that item fail.
Resolve failed rows by checking the mtl_interface_errors table.
Master/org## errors - These show in the column_name instead of the error_message. They indicate
master and child item attributes do not match.
The following PL/SQL packages define the columns in MTL_SYSTEM_ITEMS_INTERFACE for the
master/org# error. These packages are located in $INV_TOP/admin/sql.
INVPVM1B.pls: 'master/org1a'
INVPVM1B.pls: 'master/org2'
'master/org3'
INVPVM2B.pls: 'master/org4'
'master/org5'
'master/org6'
INVPVM3B.pls: 'master/org7a'
'master/org7b'
'master/org7c'
master/org1a: SUMMARY_FLAG thru ATTRIBUTE1
master/org2: ATTRIBUTE2 thru ITEM_CATALOG_GROUP_ID
master/org3: CATALOG_STATUS_FLAG thru AUTO_LOT_ALPHA_PREFIX
master/org4: START_AUTO_LOT_NUMBER thru ACCEPTABLE_RATE_DECREASE
master/org5: CUMULATIVE_TOTAL_LEAD_TIME thru CARRYING_COST
master/org6: POSTPROCESSING_LEAD_TIME thru ATO_FORECAST_CONTROL
master/org7a, 7b, & 7c: ENGINEERING_DATE thru VEHICLE_ITEM_FLAG
(overlaps with master/org6. Check PL/SQL package for exact attributes.)
8. Template Use
Item attributes populated in MTL_SYSTEM_ITEMS_INTERFACE take precedence (hold their value) even
if a template is also specified in MSII. However, a status controlled attribute, meaning one that can derive
its value from the 'item status' that is being assigned to the item, such as purchasing_enabled_flag, may
in turn override the value populated in MSII.
So, first check the value of 'Item status' attribute in the template applied. Then go to /setup/items/status
codes form, and query on this code, to see the value of purchasing_enabled_flag. If it is 'Y', then that is
the reason the value after import is 'Y'.
References
NOTE:103869.1 - Item Attribute vs Template Attributes Using IOI
NOTE:106812.1 - Instructions for Running Item Open Import (IOI) Including Historical Revision Data
NOTE:109628.1 - FAQ for Item Import
NOTE:268968.1 - Understanding Item Import and Debugging Problems with Item Import
NOTE:458544.1 - Inventory Item Open Interface ITAR Template
NOTE:52746.1 - A Guideline to IOI Error Messages and Solutions
You are importing items into Inventory via the Item Open Interface(IOI).
You manually enter various item attributes into the IOI and you also
specify
a template to be used to load attributes into the IOI.
Solution Description
--------------------
Explanation
-----------
Per Bug 1251197, user entered item attributes take precedence over template
values unless it can derive its value from the 'item status'(status
controlled attribute)
that is being assigned to the item.