Oracle Interface - Oracle EBS R12 End To End Interface Process For Item Import
Oracle Interface - Oracle EBS R12 End To End Interface Process For Item Import
Types of Interfaces
There are two major types of Interfaces:
Inbound Interface : These interfaces are used to transfer data from external systems to Oracle Applications.
Outbound Interface : These interfaces are used to transfer data from Oracle Applications to external systems.
Two other distinctions of Interfaces:
Open Interface: If the interface logic is provided by Oracle Applications, it is called an Open Interface.
Custom Interface: If the interface logic needs to be developed by the implementation team, it is called a
Custom Interface.
Interface Components
First the data from the source application is loaded into a database table (called Interface table).
Then the provided validation program logic validates the records whether they are correct or not .
If the validation fails, the errors are transferred into another table (called Error Table).
If the validation succeeds, the correct records are transferred through a process into the destination application table.
Components of an Interface
a] Source Application:
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
You obtain data from a source application to pass on to a destination application for further processing and/or
storage.
c] Destination Application:
You send data to a destination application so that the application can perform further processing and/or storage.
d] Interface Table:
For inbound interfaces, the interface table is the intermediary table where the data from your source application
temporarily resides until it is validated and processed into the destination application.
e] Identifier columns:
Uniquely identify rows in the interface table provide foreign key reference to both the source and destination
applications.
f] Control Columns:
Control columns track the status of each row in the interface table, as it is inserted, validated, rejected,
processed, and ultimately deleted.
WHO columns are also control columns.
g] Data Columns:
Stores the data that is being converted.
Required columns store the minimum information needed by the destination application to successfully
process the interface row.
h] Derived Columns:
Derived columns are created by the destination application from information in the required columns.
i] Optional Columns:
Optional columns are not necessarily required by the destination application, but can be used by the destination
application for additional value-added functionality beyond the basics.
j] Error Table:
For inbound interfaces, the errors table stores all errors found by the validation and processing functions.
In some cases, the errors table is a child of the interface table. This allows each row in the interface table to
have many errors, so that you can easily manage multiple errors at once.
In other cases, the errors are stored in a column within the interface table, which requires you to fix each error
independently.
Developing an Interface
1] Identification:
Find out if there exists an Open Interface to carry out the functionality.
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
ABOUT INTERFACES:
In Oracle Apps Interfaces are generally tables, which act as a medium to transfer the data from one module to another
module or to transfer the data from legacy system into Oracle Applications. There are 352 tables provided by the
Oracle Package. Each module has its own Interface Tables.
A typical path to transfer the data from Legacy System to Oracle Apps:
What is Interfacing?
It is the process of converting the records from one format to another format. The main components of this interfacing
are
• Transfer Program
• Interface Table and
• Import Program
A] Transfer Program:
If the source modules data are implemented in Oracle Applications then the Transfer Programs are integrated with the
Package. If the source modules are implemented in external system (i.e. other than Oracle Applications) then we have
to develop our own Transfer Programs. Generally these Transfer Programs are developed using PL/SQL, JAVA or
SQL Loader.
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
B] Interface Tables:
The Interface tables basically have 4 types of columns.
1. Mandatory Columns.
2. Conditionally Required Columns.
3. Optional Columns.
4. Internal Processing Columns.
Mandatory Columns:
These are the main columns which are required in the destination tables (i.e. Oracle Application Module Tables). With
the help of mandatory columns only the Import Program will converts the records from source to destination.
Optional Columns:
These are used when a client wanted to transfer some additional information from source to destination. These are
based on client’s requirement.
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Interface Program
- It is an inbuilt program in most of the modules to pull up the data from the interface table Under validations sends
data to base tables, if validation fails Displays data to Error a error message
AP INTERFACE TABLES
AP_INTERFACE_CONTROLS TABLE
AP_INTERFACE_REJECTIONS TABLE
AP_INVOICES_INTERFACE TABLE
AP_INVOICE_LINES_INTERFACE TABLE
AR INTERFACE TABLES
AR_PAYMENTS_INTERFACE_ALL TABLE
AR_TAX_INTERFACE TABLE
HZ_DQM_SYNC_INTERFACE TABLE
HZ_PARTY_INTERFACE TABLE
HZ_PARTY_INTERFACE_ERRORS TABLE
RA_CUSTOMERS_INTERFACE_ALL TABLE
RA_INTERFACE_DISTRIBUTIONS_ALL TABLE
RA_INTERFACE_ERRORS_ALL TABLE
RA_INTERFACE_LINES_ALL TABLE
RA_INTERFACE_SALESCREDITS_ALL TABLE
FA INTERFACE TABLES
FA_BUDGET_INTERFACE TABLE
FA_INV_INTERFACE TABLE
FA_PRODUCTION_INTERFACE TABLE
FA_TAX_INTERFACE TABLE
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
MTL_INTERFACE_PROC_CONTROLS TABLE
MTL_ITEM_CATEGORIES_INTERFACE TABLE
MTL_ITEM_CHILD_INFO_INTERFACE TABLE
MTL_ITEM_REVISIONS_INTERFACE TABLE
MTL_ITEM_SUB_INVS_INTERFACE TABLE
MTL_OBJECT_GENEALOGY_INTERFACE TABLE
MTL_RELATED_ITEMS_INTERFACE TABLE
MTL_RESERVATIONS_INTERFACE TABLE
MTL_RTG_ITEM_REVS_INTERFACE TABLE
MTL_SECONDARY_LOCS_INTERFACE TABLE
MTL_SERIAL_NUMBERS_INTERFACE TABLE
MTL_SO_RMA_INTERFACE TABLE
MTL_SYSTEM_ITEMS_INTERFACE TABLE
MTL_TRANSACTIONS_INTERFACE TABLE
MTL_TRANSACTION_LOTS_INTERFACE TABLE
MTL_TXN_COST_DET_INTERFACE TABLE
PO INTERFACE TABLES
PO_DISTRIBUTIONS_INTERFACE TABLE
PO_HEADERS_INTERFACE TABLE
PO_INTERFACE_ERRORS TABLE
PO_LINES_INTERFACE TABLE
PO_REQUISITIONS_INTERFACE_ALL TABLE
PO_REQ_DIST_INTERFACE_ALL TABLE
PO_RESCHEDULE_INTERFACE TABLE
RCV_HEADERS_INTERFACE TABLE
RCV_LOTS_INTERFACE TABLE
RCV_SERIALS_INTERFACE TABLE
RCV_TRANSACTIONS_INTERFACE TABLE
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Submit the XXAA Inventory Item Load Interface Program Concurrent Program
Verify record status in Staging table
Verify the loaded records in interface table
Submit the XXAA Inventory Item Load Interface Report Concurrent Program
Verify the staging table record status
Verify the log report
Verify the Output report
Verify the loaded record from application
Verify the records in base table
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
select user_id
from fnd_user
where user_name = 'OPERATIONS'
and user_id = 1318
Along with the specific columns, we need to pass the following columns
1.process_flag = '1' (in process)
2.transaction_type = 'CREATE' (in case of creation)
'UPDATE' (in case of updating existing record)
3.set_process_id: used when multiple item open interface processes are run in parallel.
4.standard who columns like created_by, last_updated_by = user_id
and creation_date, last_update_date = sysdate.
COMMIT;
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
ln -s $FND_TOP/bin/fndcpesr XXAA_INV_ITEM_LOAD
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Field Value
Executable XXAA_INV_ITEM_LOAD_FILE
Short Name XXAA_INV_ITEM_LOAD_FILE
Application Custom Development
Description XXAA Inventory Item Load File Program
Execution Method Host
Execution File Name XXAA_INV_ITEM_LOAD
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Field Value
Program XXAA Inventory Item Load File Program
Short Name XXAA_INV_ITEM_LOAD_FILE
Application Custom Development
Description
Executable name XXAA_INV_ITEM_LOAD_FILE
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
FND_FILE.PUT_LINE (FND_FILE.LOG,'+-----------------------------------------+');
FND_FILE.PUT_LINE (FND_FILE.LOG, 'Starting VALIDATE Procedure ');
VALIDATE;
FND_FILE.PUT_LINE (FND_FILE.LOG,'+-----------------------------------------+');
FND_FILE.PUT_LINE (FND_FILE.LOG, 'Starting LOAD Procedure ');
LOAD;
END;
/* **-------------------------------------------------
** Procedure Name: MAP
** Purpose :Procedure to map the staging table fields.
**------------------------------------------------- */
PROCEDURE map
IS
BEGIN
/*===================================================
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
/*===================================================
Default Organization Code to V1
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG
SET ls_organization_code = 'V1';
COMMIT;
/*===================================================
Update Status of the Duplicate Records (Records given in data file and already
present in Oracle)
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG a
SET status_stg = 'ME',
ERROR_CODE = ERROR_CODE ||
'Duplicate Combination of Item and Organization;'
WHERE ls_item_number IN (SELECT segment1
FROM mtl_system_items_b m
WHERE m.segment1 = a.ls_item_number
AND m.organization_id IN
(SELECT organization_id
FROM mtl_parameters p
WHERE p.organization_code IN ('V1')));
COMMIT;
/*===================================================
Default Cost of Sales Account
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG
SET ls_cos_account = '01-600-5110-0000-000';
COMMIT;
/*===================================================
Default Expense Account
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG
SET ls_expense_account = '01-000-2440-0000-000';
COMMIT;
/*===================================================
Default Sales Account
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG
SET ls_sales_account = '01-110-9110-0000-000';
COMMIT;
/*===================================================
Default Template Name to 'Finish Good' if it is NULL
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG
SET ls_template_name = 'Finished Good'
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
COMMIT;
/*===================================================
Default Primary Unit Of Measure
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG
SET ls_pr_unit_of_measure = 'Each'
WHERE ls_pr_unit_of_measure IS NULL;
COMMIT;
/*===================================================
Update Status of Records that are successfully mapped
===================================================*/
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'M'
WHERE 1 = 1
AND status_stg = 'N';
COMMIT;
END map;
/* **-------------------------------------------------
** Procedure Name: VALIDATE
** Purpose :Procedure to validate the staging table fields.
**------------------------------------------------- */
PROCEDURE VALIDATE
IS
l_organization_id NUMBER;
l_template_id NUMBER;
l_planner_code VARCHAR2 (50);
l_buyer_id NUMBER;
l_subinv_name VARCHAR2 (100);
l_sa_id NUMBER;
l_cogs_id NUMBER;
l_primary_uom mtl_units_of_measure.uom_code%TYPE;
l_buyer_name po_agents_name_v.full_name%TYPE;
l_buyer_id po_agents_name_v.buyer_id%TYPE;
l_planner_code mtl_planners.planner_code%TYPE;
l_cos_account_id NUMBER;
l_expense_account_id NUMBER;
l_sales_account_id NUMBER;
CURSOR cur_org_code
IS
SELECT DISTINCT ls_organization_code
FROM XXAA_INV_ITEM_LOAD_STG
WHERE ls_organization_code IS NOT NULL;
CURSOR cur_uom_code
IS
SELECT DISTINCT ls_pr_unit_of_measure
FROM XXAA_INV_ITEM_LOAD_STG;
CURSOR cur_item_template
IS
SELECT DISTINCT ls_template_name
FROM XXAA_INV_ITEM_LOAD_STG
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
CURSOR cur_item_cos_account
IS
SELECT DISTINCT ls_cos_account
FROM XXAA_INV_ITEM_LOAD_STG
WHERE 1 = 1;
CURSOR cur_item_expense_account
IS
SELECT DISTINCT ls_expense_account
FROM XXAA_INV_ITEM_LOAD_STG
WHERE 1 = 1;
CURSOR cur_item_sales_account
IS
SELECT DISTINCT ls_sales_account
FROM XXAA_INV_ITEM_LOAD_STG
WHERE 1 = 1;
BEGIN
/*===================================================
Validation for Organization if it is null
===================================================*/
BEGIN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Organization Code Cannot Be NULL;;'
WHERE ls_organization_code IS NULL;
EXCEPTION
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Organization Code Cannot Be NULL;;'
WHERE ls_organization_code IS NULL;
END;
COMMIT;
/*===================================================
Validation for Organization id
===================================================*/
FOR org_code_rec IN cur_org_code
LOOP
BEGIN
SELECT organization_id
INTO l_organization_id
FROM mtl_parameters
WHERE organization_code = org_code_rec.ls_organization_code;
UPDATE XXAA_INV_ITEM_LOAD_STG
SET organization_id = l_organization_id
WHERE ls_organization_code = org_code_rec.ls_organization_code;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE ||
'Organization Code does not exist in Oracle;;'
WHERE ls_organization_code = org_code_rec.ls_organization_code;
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE ||
'Organization Code does not exist in Oracle;;'
WHERE ls_organization_code = org_code_rec.ls_organization_code;
END;
END LOOP;
COMMIT;
/*===================================================
Validation for Primary UOM Code
===================================================*/
FOR uom_code_rec IN cur_uom_code
LOOP
BEGIN
SELECT uom_code
INTO l_primary_uom
FROM mtl_units_of_measure
WHERE NVL (disable_date, SYSDATE + 1) > SYSDATE
AND unit_of_measure = LTRIM(RTRIM(uom_code_rec.ls_pr_unit_of_measure));
UPDATE XXAA_INV_ITEM_LOAD_STG
SET pr_uom_code = l_primary_uom
WHERE ls_pr_unit_of_measure = uom_code_rec.ls_pr_unit_of_measure;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Primary UOM Code;;'
WHERE ls_pr_unit_of_measure = uom_code_rec.ls_pr_unit_of_measure;
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Primary UOM Code;;'
WHERE ls_pr_unit_of_measure = uom_code_rec.ls_pr_unit_of_measure;
END;
END LOOP;
COMMIT;
/*===================================================
Validation for Template id
===================================================*/
FOR item_template_rec IN cur_item_template
LOOP
BEGIN
SELECT template_id
INTO l_template_id
FROM mtl_item_templates
WHERE template_name = item_template_rec.ls_template_name;
UPDATE XXAA_INV_ITEM_LOAD_STG
SET template_id = l_template_id
WHERE ls_template_name = item_template_rec.ls_template_name;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Template id;;'
WHERE ls_template_name = item_template_rec.ls_template_name;
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Template id;;'
WHERE ls_template_name = item_template_rec.ls_template_name;
END;
END LOOP;
COMMIT;
/*===================================================
Validation for COS Account
===================================================*/
FOR item_cos_account_rec IN cur_item_cos_account
LOOP
IF item_cos_account_rec.ls_cos_account IS NOT NULL
THEN
BEGIN
SELECT code_combination_id
INTO l_cos_account_id
FROM gl_code_combinations_kfv
WHERE 1 = 1
AND chart_of_accounts_id = 101
AND concatenated_segments = item_cos_account_rec.ls_cos_account
AND enabled_flag = 'Y';
UPDATE XXAA_INV_ITEM_LOAD_STG
SET cos_account_id = l_cos_account_id
WHERE ls_cos_account = item_cos_account_rec.ls_cos_account;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid COS Account;;'
WHERE ls_cos_account = item_cos_account_rec.ls_cos_account;
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid COS Account;;'
WHERE ls_cos_account = item_cos_account_rec.ls_cos_account;
END;
END IF;
END LOOP;
COMMIT;
/*===================================================
Validation for Expense Account
===================================================*/
FOR item_expense_account_rec IN cur_item_expense_account
LOOP
IF item_expense_account_rec.ls_expense_account IS NOT NULL
THEN
BEGIN
SELECT code_combination_id
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
INTO l_expense_account_id
FROM gl_code_combinations_kfv
WHERE 1 = 1
AND chart_of_accounts_id = 101
AND concatenated_segments =
item_expense_account_rec.ls_expense_account
AND enabled_flag = 'Y';
UPDATE XXAA_INV_ITEM_LOAD_STG
SET expense_account_id = l_expense_account_id
WHERE ls_expense_account =
item_expense_account_rec.ls_expense_account;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Expense Account;;'
WHERE ls_expense_account =
item_expense_account_rec.ls_expense_account;
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Expense Account;;'
WHERE ls_expense_account =
item_expense_account_rec.ls_expense_account;
END;
END IF;
END LOOP;
COMMIT;
/*===================================================
Validation for Sales Account
===================================================*/
FOR item_sales_account_rec IN cur_item_sales_account
LOOP
BEGIN
SELECT code_combination_id
INTO l_sales_account_id
FROM gl_code_combinations_kfv
WHERE enabled_flag = 'Y'
AND concatenated_segments = item_sales_account_rec.ls_sales_account;
UPDATE XXAA_INV_ITEM_LOAD_STG
SET sales_account_id = l_sales_account_id
WHERE ls_sales_account = item_sales_account_rec.ls_sales_account;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Sales Account;;'
WHERE ls_sales_account = item_sales_account_rec.ls_sales_account;
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'VE',
ERROR_CODE = ERROR_CODE || 'Invalid Sales Account;;'
WHERE ls_sales_account = item_sales_account_rec.ls_sales_account;
END;
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
END LOOP;
COMMIT;
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'V'
WHERE status_stg = 'M';
COMMIT;
END VALIDATE;
/* **-------------------------------------------------
** Procedure Name: LOAD
** Purpose : Procedure to write the errored data into the errors table.
** ------------------------------------------------ */
PROCEDURE LOAD
IS
l_transaction_type VARCHAR2 (10) := 'CREATE';
l_process_flag NUMBER := 1;
l_user_id NUMBER;
l_creation_date DATE := SYSDATE;
l_last_update_date DATE := SYSDATE;
l_organization_id NUMBER;
CURSOR cur_items
IS
SELECT *
FROM XXAA_INV_ITEM_LOAD_STG
WHERE status_stg = 'V';
BEGIN
BEGIN
SELECT user_id
INTO l_user_id
FROM fnd_user
WHERE user_name = 'OPERATIONS';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
l_user_id := 0;
END;
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
)
VALUES (SYSDATE,
l_user_id,
items_rec.ls_item_number,
items_rec.ls_description,
items_rec.organization_id,
items_rec.pr_uom_code,
items_rec.template_id,
items_rec.cos_account_id,
items_rec.expense_account_id,
items_rec.sales_account_id,
l_last_update_date,
l_user_id,
l_process_flag,
112,
--MOD (items_rec.transaction_id_stg, 5),
l_transaction_type,
items_rec.transaction_id_stg
);
EXCEPTION
WHEN OTHERS
THEN
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'LE'
WHERE status_stg = 'V'
AND transaction_id_stg = items_rec.transaction_id_stg;
COMMIT;
DBMS_OUTPUT.put_line (SQLERRM);
END;
END LOOP;
UPDATE XXAA_INV_ITEM_LOAD_STG
SET status_stg = 'L'
WHERE status_stg = 'V';
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
FND_FILE.PUT_LINE (FND_FILE.LOG, 'Unexpected error occurred in load procedure ->');
END LOAD;
END XXAA_INV_ITEM_LOAD_PKG;
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Field Value
Executable XXAA_INV_ITEM_LOAD
Short Name XXAA_INV_ITEM_LOAD
Application Custom Development
Description XXAA Inventory Item Load Interface Program
Execution Method PL/SQL Stored Procedure
Execution File Name XXAA_INV_ITEM_LOAD_PKG.MAIN
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Field Value
Program XXAA Inventory Item Load Interface Program
Short Name XXAA_INV_ITEM_LOAD
Application Custom Development
Description
Executable name XXAA_INV_ITEM_LOAD
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
CURSOR update_cur
IS
SELECT *
FROM xxaa_inv_item_load_stg
WHERE 1 = 1
-- AND organization_id = fnd_global.org_id
-- AND TRUNC(creation_date) = TRUNC(SYSDATE)
AND status_stg = 'L'
ORDER BY ls_item_number;
CURSOR main_cursor
IS
SELECT status_stg, decode(status_stg, 'D', 'Successfully Loaded', 'LE', 'Load
Error', 'Validation Error') as status, ls_item_number, ls_organization_code,
error_code
FROM xxaa_inv_item_load_stg
WHERE 1 = 1
AND status_stg in ('N', 'VE', 'LE', 'D')
-- AND TRUNC(stg.creation_date) = TRUNC(SYSDATE)
UNION
SELECT status_stg, 'Interface Error' as status, ls_item_number,
ls_organization_code, intr.error_message as error_code
FROM xxaa_inv_item_load_stg stg,
mtl_system_items_interface inti,
mtl_interface_errors intr
WHERE 1 = 1
AND stg.transaction_id_stg = inti.attribute14
AND inti.transaction_id = intr.transaction_id
AND stg.status_stg = 'FI'
-- AND TRUNC(stg.creation_date) = TRUNC(SYSDATE)
ORDER BY 2 desc, 1, 3;
BEGIN
out_chr_retcode := 0;
out_chr_errbuf := '';
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
l_cur_row_count := NULL;
-- To Find the Concurrent Program Name
BEGIN
SELECT user_concurrent_program_name
INTO l_chr_program_name
FROM apps.fnd_concurrent_programs_tl
WHERE concurrent_program_id = fnd_global.conc_program_id
and language= USERENV('LANG');
EXCEPTION
WHEN OTHERS
THEN l_chr_program_name := NULL;
END;
--> Updatingt the staging table with Oracle loaded record status
FOR update_rec IN update_cur LOOP
BEGIN
SELECT inventory_item_id
INTO l_inventory_item_id
FROM mtl_system_items_b
WHERE segment1 = update_rec.ls_item_number
AND organization_id = update_rec.organization_id
AND attribute14 = update_rec.transaction_id_stg;
UPDATE xxaa_inv_item_load_stg
SET status_stg = 'D'
,inventory_item_id = l_inventory_item_id
WHERE status_stg = 'L'
AND transaction_id_stg = update_rec.transaction_id_stg;
EXCEPTION
WHEN OTHERS THEN
UPDATE xxaa_inv_item_load_stg stg
SET status_stg = 'FI',
error_code = (select intr.error_message
from mtl_system_items_interface inti,
mtl_interface_errors intr
where inti.attribute14 = stg.transaction_id_stg
AND inti.transaction_id = intr.transaction_id
)
WHERE status_stg = 'L'
AND transaction_id_stg = update_rec.transaction_id_stg;
END;
END LOOP;
COMMIT;
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
END IF;
END LOOP;
COMMIT;
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Field Value
Executable XXAA_INV_ITEM_LOAD_REP
Short Name XXAA_INV_ITEM_LOAD_REP
Application Custom Development
Description XXAA Inventory Item Load File Report
Execution Method PL/SQL Stored Procedure
Execution File Name XXAA_INV_ITEM_LOAD_REP_PROC
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Field Value
Program XXAA Inventory Item Load File Report
Short Name XXAA_INV_ITEM_LOAD_REP
Application Custom Development
Description
Executable name XXAA_INV_ITEM_LOAD_REP
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Search with request group name and enter new record and select the concurrent programs and save it
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Submit the XXAA Inventory Item Load File Program Concurrent Program
Program will process the below steps
Connect to 3rd party system using FTP credentials
Download the data files from 3rd party system into oracle location (File name start with RAJ_INV)
Run the control command to load the data into staging table
Send the log and bad files to user with email
Once the file processed then move the file into Archive folder
Select the program and enter the parameter values and click on Submit
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Submit the XXAA Inventory Item Load Interface Program Concurrent Program
Program will process the below steps
Map : Assign the default values
Validate : Validate the records and derive the id into staging table
Load : Load the validated records into interface table
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Submit the XXAA Inventory Item Load Interface Report Concurrent Program
Program will process the below steps
Update the staging table record status for the loaded and failed in interface records
Display the report with details
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
Click on Submit
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA
Oracle Interface – Oracle EBS R12 End to End Interface Process for Item Import OracleApps88
RAJU CHINTHAPATLA