The following lines contain the word 'select', 'insert', 'update' or 'delete':
G_UPDATE CONSTANT VARCHAR2(10) := 'UPDATE';
SELECT VALUE
FROM V$PARAMETER
WHERE NAME = 'utl_file_dir';
PROCEDURE delete_records_from_MSII (p_set_process_id IN NUMBER) IS
TYPE char_tbl_type IS TABLE OF VARCHAR2(240);
SELECT COLUMN_NAME
BULK COLLECT INTO l_column_name
FROM SYS.ALL_TAB_COLUMNS WHERE TABLE_NAME = 'MTL_SYSTEM_ITEMS_INTERFACE'
AND COLUMN_NAME NOT IN ('SET_PROCESS_ID',
'TRANSACTION_ID',
'REQUEST_ID',
'PROGRAM_APPLICATION_ID',
'PROGRAM_ID',
'TRANSACTION_TYPE',
'ITEM_NUMBER',
'ORGANIZATION_CODE',
'PROCESS_FLAG',
'SOURCE_SYSTEM_ID',
'SOURCE_SYSTEM_REFERENCE',
'ITEM_CATALOG_GROUP_ID',
'INTERFACE_TABLE_UNIQUE_ID',
'INVENTORY_ITEM_ID',
'ORGANIZATION_ID',
'LAST_UPDATE_DATE',
'LAST_UPDATED_BY',
'CREATION_DATE',
'CREATED_BY',
'LAST_UPDATE_LOGIN')
AND COLUMN_NAME NOT LIKE 'SEGMENT%'
AND COLUMN_NAME NOT LIKE 'GLOBAL_ATTRIBUTE%'
AND COLUMN_NAME NOT LIKE 'ATTRIBUTE%';
l_dyn_sql := l_dyn_sql || ' DELETE MTL_SYSTEM_ITEMS_INTERFACE MSII ' ;
l_dyn_sql := l_dyn_sql || ' EXISTS ( '; -- there exists a row where item is being Created or updated in the same request
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug(' DELETE MSII sql: '||l_dyn_sql);
Write_Debug('delete_records_from_MSII : NEW Deleted redundant / unnecessary rows from MSII');
END delete_records_from_MSII;
PROCEDURE Insert_Mtl_Intf_Err( p_transaction_id IN VARCHAR2
, p_bo_identifier IN VARCHAR2
, p_error_entity_code IN VARCHAR2
, p_error_table_name IN VARCHAR2
, p_error_msg IN VARCHAR2
) IS
PRAGMA AUTONOMOUS_TRANSACTION;
INSERT INTO MTL_INTERFACE_ERRORS
( ORGANIZATION_ID
, UNIQUE_ID
, LAST_UPDATE_DATE
, LAST_UPDATED_BY
, CREATION_DATE
, CREATED_BY
, LAST_UPDATE_LOGIN
, TABLE_NAME
, MESSAGE_NAME
, COLUMN_NAME
, REQUEST_ID
, PROGRAM_APPLICATION_ID
, PROGRAM_ID
, PROGRAM_UPDATE_DATE
, ERROR_MESSAGE
, TRANSACTION_ID
, ENTITY_IDENTIFIER
, BO_IDENTIFIER)
VALUES
( NULL
, NULL
, SYSDATE
, G_USER_ID
, SYSDATE
, G_USER_ID
, G_LOGIN_ID
, p_error_table_name
, NULL
, NULL
, G_REQUEST_ID
, G_PROG_APPID
, G_PROG_ID
, SYSDATE
, p_error_msg
, p_transaction_id
, p_error_entity_code
, p_bo_identifier
);
END Insert_Mtl_Intf_Err;
' SELECT '|| p_item_num_colname
|| ' FROM EGO_BULKLOAD_INTF '
|| ' WHERE RESULTFMT_USAGE_ID = :RESULTFMT_USAGE_ID';
, position => 1 -- select position --
, c_tab => l_item_num_table -- table of chars --
, cnt => 10000 -- rows requested --
, lower_bound => 1 -- start at --
);
' SELECT SEGMENT1 , TRANSACTION_ID '
|| ' FROM MTL_SYSTEM_ITEMS_INTERFACE '
|| ' WHERE REQUEST_ID = '||REQUEST_ID
|| ' AND PROCESS_FLAG = '||G_INTF_STATUS_SUCCESS
|| ' AND TRANSACTION_TYPE = '''||G_CREATE||'''';
' SELECT '
|| ' INSTANCE_PK2_VALUE '
|| ' FROM EGO_BULKLOAD_INTF '
|| ' WHERE RESULTFMT_USAGE_ID = :RESULTFMT_USAGE_ID'
|| ' AND '|| p_item_num_colname ||' IS NULL '
|| ' AND PROCESS_STATUS = 1';
, position => 1 -- select position --
, c_tab => l_org_id_table -- table of chars --
, cnt => 10000 -- rows requested --
, lower_bound => 1 -- start at --
);
SELECT attr_group_disp_name
FROM ego_attr_groups_v
WHERE attr_group_id = p_attr_group_id;
SELECT attr_display_name
FROM ego_attrs_v
WHERE attr_id = p_attr_id;
DELETE EGO_BULKLOAD_INTF
WHERE RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND PROCESS_STATUS <> 1;
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF EBI';
SELECT source_system_id into l_source_system_id
FROM EGO_IMPORT_BATCHES_B
WHERE batch_id = G_MSII_SET_PROCESS_ID;
SELECT ITEM_DESC_GEN_METHOD, ITEM_CATALOG_GROUP_ID, LEVEL
FROM MTL_ITEM_CATALOG_GROUPS_B
WHERE LEVEL > 1
CONNECT BY PRIOR PARENT_CATALOG_GROUP_ID = ITEM_CATALOG_GROUP_ID
START WITH ITEM_CATALOG_GROUP_ID = c_catalog_group_id
ORDER BY LEVEL;
SELECT ITEM_DESC_GEN_METHOD into l_desc_gen_method
FROM MTL_ITEM_CATALOG_GROUPS_B
WHERE ITEM_CATALOG_GROUP_ID = p_catalog_group_id;
SELECT attribute_code, intf_column_name
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND attribute_code NOT LIKE '%$$%'
AND attribute_code <> 'APPROVAL_STATUS' -- bug: 3433942
AND attribute_code NOT IN ('SUPPLIER_NAME','SUPPLIER_SITE','SUPPLIER_PRIMARY','SUPPLIER_STATUS','SUPPLIERSITE_STATUS'
,'SUPPLIERSITE_PRIMARY','SUPPLIERSITE_STORE_STATUS','SUPPLIER_NUMBER')
AND attribute_code NOT IN --Segregating Item Base Attributes using this clause
(
select LOOKUP_CODE CODE
from FND_LOOKUP_VALUES
where LOOKUP_TYPE = 'EGO_ITEM_REV_HDR_ATTR_GRP'
AND LANGUAGE = USERENV('LANG')
AND ENABLED_FLAG = 'Y'
)
AND attribute_code <> G_REV_EFF_DATE_ATTR_CODE --Bug 6139409
ORDER BY intf_column_name;-- Bug: 3340808
SELECT 'x'
FROM bom_component_columns
WHERE attribute_code = c_attribute_code
AND parent_entity = 'ITEM';
SELECT 'x'
FROM mtl_system_items_interface
WHERE set_process_id = c_set_process_id;
l_cursor_select INTEGER;
UPDATE ego_bulkload_intf
--The Transaction ID sequence that is used in INVPOPIF package to
--auto-populate Transaction ID in MSII.
SET transaction_id = MTL_SYSTEM_ITEMS_INTERFACE_S.NEXTVAL
WHERE resultfmt_usage_id = p_resultfmt_usage_id;
SELECT BOM_INTF_COLUMN_NAME INTO l_bom_prod_col_name
FROM BOM_COMPONENT_COLUMNS
WHERE Attribute_Code = l_prod_col_name AND Parent_Entity = 'ITEM';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
Write_Debug('Updated EBI with Value-to-ID Conversion Cols');
l_dyn_sql := 'UPDATE EGO_BULKLOAD_INTF EBI';
l_dyn_sql := l_dyn_sql || ' SELECT ORGANIZATION_ID ';
l_dyn_sql := 'SELECT ';
l_cursor_select := DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(l_cursor_select, l_dyn_sql, DBMS_SQL.NATIVE);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 1,l_org_id_table,2500, l_temp);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 2,l_item_number_table,2500, l_temp);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 3,l_trans_type_table,2500, l_temp);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 4,l_trans_id_table,2500, l_temp);
DBMS_SQL.BIND_VARIABLE(l_cursor_select,':RESULTFMT_USAGE_ID', p_resultfmt_usage_id);
l_cursor_execute := DBMS_SQL.EXECUTE(l_cursor_select);
l_count := DBMS_SQL.FETCH_ROWS(l_cursor_select);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 1, l_org_id_table);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 2, l_item_number_table);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 3, l_trans_type_table);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 4, l_trans_id_table);
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF EBI';
l_dyn_sql := l_dyn_sql || ' SELECT TO_CHAR(MICG.ITEM_CATALOG_GROUP_ID) ';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
l_org_id_table.DELETE;
l_item_number_table.DELETE;
l_trans_type_table.DELETE;
l_trans_id_table.DELETE;
DBMS_SQL.CLOSE_CURSOR(l_cursor_select);
l_dyn_sql := ' UPDATE ego_bulkload_intf ebi' ||
' SET '||l_item_number_col||' = ''$$FG-''||TO_CHAR(transaction_id)'||
' ,c_fix_column12 = TO_CHAR(transaction_id)'||
' WHERE resultfmt_usage_id = :RESULTFMT_USAGE_ID'||
' AND '||G_ITEM_CATALOG_EBI_COL||' IS NOT NULL'||
' AND process_status = 1'||
' AND 10 < '||
' ( SELECT LENGTH ( MIN ('||
' CASE WHEN ITEM_NUM_GEN_METHOD = ''F'' '||
' AND (PRIOR ITEM_NUM_GEN_METHOD IS NULL OR PRIOR ITEM_NUM_GEN_METHOD = ''I'') ' ||
' THEN LPAD(LEVEL, 8, ''0'')||''XX''||TO_CHAR(item_num_action_id) '||
' WHEN item_num_gen_method IN (''U'', ''S'') '||
' THEN LPAD(LEVEL, 8, ''0'')||''XX'' '||
' ELSE NULL ' ||
' END )'||
' )'||
' FROM MTL_ITEM_CATALOG_GROUPS_B '||
' CONNECT BY PRIOR PARENT_CATALOG_GROUP_ID = ITEM_CATALOG_GROUP_ID ';
l_dyn_sql := ' UPDATE ego_bulkload_intf ebi' ||
' SET '||l_item_number_col||' = NVL( '||l_item_number_col||', ''$$FG-''||TO_CHAR(transaction_id) )'||
' ,c_fix_column12 = TO_CHAR(transaction_id)'||
' WHERE resultfmt_usage_id = :RESULTFMT_USAGE_ID'||
' AND '||G_ITEM_CATALOG_EBI_COL||' IS NOT NULL'||
' AND UPPER(ebi.transaction_type) IN (''CREATE'',''SYNC'') '||
' AND process_status = 1'||
' AND ''F'' = '||
' ( SELECT item_num_gen_method'||
' FROM mtl_item_catalog_groups_b '||
' WHERE NVL(item_num_gen_method,''I'') IN (''U'',''S'', ''F'') '||
' AND ROWNUM = 1 '||
' CONNECT BY PRIOR PARENT_CATALOG_GROUP_ID = ITEM_CATALOG_GROUP_ID';
l_dyn_sql := ' UPDATE ego_bulkload_intf ebi' ||
' SET '||l_item_number_col||' = NVL( '||l_item_number_col||', ''$$SG-''||TO_CHAR(transaction_id) )'||
' ,c_fix_column12 = TO_CHAR(transaction_id)'||
' WHERE resultfmt_usage_id = :RESULTFMT_USAGE_ID'||
' AND '||G_ITEM_CATALOG_EBI_COL||' IS NOT NULL'||
' AND UPPER(ebi.transaction_type) IN (''CREATE'',''SYNC'') '||
' AND process_status = 1'||
' AND ''S'' = '||
' ( SELECT item_num_gen_method'||
' FROM mtl_item_catalog_groups_b '||
' WHERE NVL(item_num_gen_method,''I'') IN (''U'',''S'', ''F'') '||
' AND ROWNUM = 1 '||
' CONNECT BY PRIOR PARENT_CATALOG_GROUP_ID = ITEM_CATALOG_GROUP_ID';
SELECT mtl_system_items_intf_sets_s.NEXTVAL
INTO l_msii_set_process_id
FROM dual;
l_dyn_sql := 'INSERT INTO MTL_SYSTEM_ITEMS_INTERFACE MSII';
l_dyn_sql := l_dyn_sql || ' SELECT ';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT MUOM.UOM_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Primary UOMs.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the User Item Types.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the BOM Item Types.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.INTERNAL_NAME ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Trade Item Descriptor.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Eng Item Flags.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Conversions.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Conversions.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Conversions.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT MUOM.UOM_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Conversions.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Conversions.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.INVENTORY_ITEM_STATUS_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Item Status.*');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT SUBSTR(EBI.'||l_intf_col_name_tbl(i)|| ',1,30)';
l_dyn_sql := l_dyn_sql || ' SELECT LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT EBI.'||l_intf_col_name_tbl(i);
l_dyn_sql := l_dyn_sql || ' SELECT EBI.TRANSACTION_ID ';
Write_Debug('MSII: Updated the '||l_prod_col_name_tbl(i)||' column values.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT NULL ';
EXECUTE IMMEDIATE l_dyn_sql USING p_resultfmt_usage_id, 'F', 'UPDATE', 'SYNC';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT LC.PROJ_ELEMENT_ID ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Lifecycle IDs.');
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT LCP.PROJ_ELEMENT_ID ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MSII: Updated the Lifecycle Phase IDs.');
UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII
SET start_date_active = DECODE(start_date_active,G_EXCEL_NULL_DATE,EGO_ITEM_PUB.G_INTF_NULL_DATE,start_date_active),
end_date_active = DECODE(end_date_active,G_EXCEL_NULL_DATE,EGO_ITEM_PUB.G_INTF_NULL_DATE,end_date_active),
engineering_date = DECODE(engineering_date,G_EXCEL_NULL_DATE,EGO_ITEM_PUB.G_INTF_NULL_DATE,engineering_date)
WHERE MSII.SET_PROCESS_ID = l_msii_set_process_id
AND MSII.PROCESS_FLAG = G_PROCESS_STATUS
AND (MSII.start_date_active IS NOT NULL
OR
MSII.end_date_active IS NOT NULL
OR
MSII.engineering_date IS NOT NULL
)
AND EXISTS
( SELECT 'X'
FROM EGO_BULKLOAD_INTF EBI
WHERE EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND EBI.TRANSACTION_ID = MSII.TRANSACTION_ID
AND EBI.PROCESS_STATUS = 1
);
l_dyn_sql := l_dyn_sql || 'INSERT INTO MTL_INTERFACE_ERRORS ';
l_dyn_sql := l_dyn_sql || ', LAST_UPDATE_DATE ';
l_dyn_sql := l_dyn_sql || ', LAST_UPDATED_BY ';
l_dyn_sql := l_dyn_sql || ', LAST_UPDATE_LOGIN ';
l_dyn_sql := l_dyn_sql || ', PROGRAM_UPDATE_DATE ';
l_dyn_sql := l_dyn_sql || 'SELECT ';
Write_Debug('MIERR: Inserted Pre-processed error messages in MTL_INTERFACE_ERRORS');
UPDATE MTL_SYSTEM_ITEMS_INTERFACE MSII
SET MSII.PROCESS_FLAG = G_INTF_STATUS_ERROR
WHERE MSII.SET_PROCESS_ID = p_set_process_id
AND MSII.PROCESS_FLAG IN
(
G_ITEM_CATALOG_NAME_ERR_STS
, G_PRIMARY_UOM_ERR_STS
, G_LIFECYCLE_ERR_STS
, G_LIFECYCLE_PHASE_ERR_STS
, G_USER_ITEM_TYPE_ERR_STS
, G_BOM_ITEM_TYPE_ERR_STS
, G_ENG_ITEM_FLAG_ERR_STS
, G_DESCRIPTION_ERR_STS -- Bug: 3804572
, G_CONVERSIONS_ERR_STS --Bug: 3969593 Begin
, G_SECONDARY_DEF_IND_ERR_STS
, G_ONT_PRICING_QTY_SRC_ERR_STS
, G_SECONDARY_UOM_CODE_ERR_STS
, G_TRACKING_QTY_IND_ERR_STS --Bug: 3969593 End
, G_INV_ITEM_STATUS_ERR_STS--Rathna MLS Status
)
AND MSII.TRANSACTION_ID IN
(
SELECT TRANSACTION_ID
FROM EGO_BULKLOAD_INTF
WHERE RESULTFMT_USAGE_ID = p_resultfmt_usage_id
);
Write_Debug('MSII: Updated all the line statuses to Error for Pre-processing validation errors');
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS =
(
SELECT MSII.PROCESS_FLAG
FROM MTL_SYSTEM_ITEMS_INTERFACE MSII
WHERE MSII.TRANSACTION_ID = EBI.TRANSACTION_ID
)
WHERE EXISTS
(
SELECT 'X'
FROM MTL_SYSTEM_ITEMS_INTERFACE MSII
WHERE MSII.TRANSACTION_ID = EBI.TRANSACTION_ID
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS = G_INTF_STATUS_SUCCESS
WHERE EBI.PROCESS_STATUS = G_INTF_STATUS_TOBE_PROCESS
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.INSTANCE_PK1_VALUE =
(
SELECT MSII.INVENTORY_ITEM_ID
FROM MTL_SYSTEM_ITEMS_INTERFACE MSII
WHERE MSII.TRANSACTION_ID = EBI.TRANSACTION_ID
)
WHERE EXISTS
(
SELECT 'X'
FROM MTL_SYSTEM_ITEMS_INTERFACE MSII
WHERE MSII.TRANSACTION_ID = EBI.TRANSACTION_ID
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND EBI.PROCESS_STATUS = G_INTF_STATUS_SUCCESS;
Write_Debug('EBI: Updated the Process_Status to Indicate Succssful/Unsucessful completion.');
SELECT attribute_code, intf_column_name
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND attribute_code NOT LIKE '%$$%'
---------------------------------------------------------------------------
-- Added NOT LIKE 'GTIN_%' to filter out Dummy Attrs for Attr Group: "GTIN"
---------------------------------------------------------------------------
AND attribute_code NOT LIKE 'GTIN_%'
AND p_data_level = G_ITEM_REV_DATA_LEVEL
UNION
-------------------
--Item Data Level
-------------------
SELECT attribute_code, intf_column_name
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND attribute_code NOT LIKE '%$$%'
---------------------------------------------------------------------------
-- Added NOT LIKE 'GTIN_%' to filter out Dummy Attrs for Attr Group: "GTIN"
---------------------------------------------------------------------------
AND attribute_code NOT LIKE 'GTIN_%'
AND p_data_level = G_ITEM_DATA_LEVEL
AND (
attribute_code IN -- Segregating Item Revision Base Attributes using this clause
(
select LOOKUP_CODE CODE
from FND_LOOKUP_VALUES
where LOOKUP_TYPE = 'EGO_ITEM_REV_HDR_ATTR_GRP'
AND LANGUAGE = USERENV('LANG')
AND ENABLED_FLAG = 'Y'
and LOOKUP_CODE not in ('REVISION_CREATION_DATE', 'REVISION_CREATED_BY')
)
OR
attribute_code = G_REV_EFF_DATE_ATTR_CODE
-- Bug 6186037
--accomodate for revision effective date which doest exist in EGO_ITEM_REV_HDR_ATTR_GRP and cannot be included
);
SELECT 'x'
FROM mtl_system_items_interface
WHERE set_process_id = c_set_process_id;
l_cursor_select INTEGER;
UPDATE ego_bulkload_intf
SET transaction_id = MTL_SYSTEM_ITEMS_INTERFACE_S.NEXTVAL
WHERE resultfmt_usage_id = p_resultfmt_usage_id;
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF EBI ';
l_dyn_sql := l_dyn_sql || ' SELECT ORGANIZATION_ID ';
Write_Debug('Selecting Org IDs, Item Numbers');
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
Write_Debug('Updated EBI with Catalog Group Name for Item Revisions');
l_dyn_sql := ' SELECT INSTANCE_PK2_VALUE, '||l_item_number_col || ', ';
l_cursor_select := DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(l_cursor_select, l_dyn_sql, DBMS_SQL.NATIVE);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 1,l_org_id_table,2500, l_temp);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 2,l_item_number_table,2500, l_temp);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 3,l_trans_id_table,2500, l_temp);
DBMS_SQL.BIND_VARIABLE(l_cursor_select,':RESULTFMT_USAGE_ID', p_resultfmt_usage_id);
l_cursor_execute := DBMS_SQL.EXECUTE(l_cursor_select);
l_count := DBMS_SQL.FETCH_ROWS(l_cursor_select);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 1, l_org_id_table);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 2, l_item_number_table);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 3, l_trans_id_table);
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF EBI';
l_dyn_sql := l_dyn_sql || ' SELECT TO_CHAR(MICG.ITEM_CATALOG_GROUP_ID) ';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
l_org_id_table.DELETE;
l_item_number_table.DELETE;
END LOOP; --l_count := DBMS_SQL.FETCH_ROWS(l_cursor_select);
DBMS_SQL.CLOSE_CURSOR(l_cursor_select);
SELECT mtl_system_items_intf_sets_s.NEXTVAL
INTO l_msii_set_process_id
FROM dual;
l_dyn_sql := 'INSERT INTO MTL_ITEM_REVISIONS_INTERFACE ';
l_dyn_sql := l_dyn_sql || 'SELECT ';
l_dyn_sql := ' UPDATE EGO_BULKLOAD_INTF ';
l_dyn_sql := l_dyn_sql || 'UPDATE MTL_ITEM_REVISIONS_INTERFACE MIRI ';
l_dyn_sql := l_dyn_sql || ' SELECT IT.LOOKUP_CODE ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MIRI: Updated the Revision Reason Codes.');
l_dyn_sql := l_dyn_sql || 'UPDATE MTL_ITEM_REVISIONS_INTERFACE MIRI ';
l_dyn_sql := l_dyn_sql || ' SELECT EBI.'||l_intf_col_name_tbl(i);
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MIRI: Updated the '||l_prod_col_name_tbl(i)||' column values.');
l_dyn_sql := l_dyn_sql || 'UPDATE MTL_ITEM_REVISIONS_INTERFACE MIRI ';
l_dyn_sql := l_dyn_sql || ' SELECT LC.PROJ_ELEMENT_ID ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MIRI: Updated the Lifecycle IDs.');
l_dyn_sql := l_dyn_sql || 'UPDATE MTL_ITEM_REVISIONS_INTERFACE MIRI ';
l_dyn_sql := l_dyn_sql || ' SELECT MSI.LIFECYCLE_ID ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MIRI: Updated the Lifecycle IDs from MTL_SYSTEM_ITEMS_B.');
l_dyn_sql := l_dyn_sql || 'UPDATE MTL_ITEM_REVISIONS_INTERFACE MIRI ';
l_dyn_sql := l_dyn_sql || ' SELECT LCP.PROJ_ELEMENT_ID ';
l_dyn_sql := l_dyn_sql || ' SELECT ''X'' ';
Write_Debug('MIRI: Updated the Lifecycle Phase IDs.');
/* Bug 7578350. Moving this DELETE statement to the function process_item_interface_lines(), after the function call
load_itm_or_rev_usrattr_intf() that updates UDAs, so that we delete the rows from MTL_ITEM_REVISIONS_INTERFACE
only if there are no Revision Level Attributes provided.
DELETE MTL_ITEM_REVISIONS_INTERFACE MIRI
WHERE revision IS NULL
AND revision_id IS NULL
AND implementation_date IS NULL
AND effectivity_date IS NULL
AND description IS NULL
AND revision_label IS NULL
AND revision_reason IS NULL
AND current_phase_id IS NULL
AND EXISTS (SELECT 'X'
FROM EGO_BULKLOAD_INTF EBI
WHERE EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND EBI.TRANSACTION_ID = MIRI.TRANSACTION_ID
AND EBI.PROCESS_STATUS = 1
); */
UPDATE MTL_ITEM_REVISIONS_INTERFACE MIRI
SET ecn_initiation_date = DECODE(ecn_initiation_date,G_EXCEL_NULL_DATE,EGO_ITEM_PUB.G_INTF_NULL_DATE,ecn_initiation_date),
implementation_date = DECODE(implementation_date,G_EXCEL_NULL_DATE,EGO_ITEM_PUB.G_INTF_NULL_DATE,implementation_date),
effectivity_date = DECODE(effectivity_date,G_EXCEL_NULL_DATE,EGO_ITEM_PUB.G_INTF_NULL_DATE,effectivity_date)
WHERE MIRI.TRANSACTION_ID IN
( SELECT EBI.TRANSACTION_ID
FROM EGO_BULKLOAD_INTF EBI
WHERE EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND EBI.PROCESS_STATUS = 1
)
AND (MIRI.ecn_initiation_date IS NOT NULL
OR
MIRI.implementation_date IS NOT NULL
OR
MIRI.effectivity_date IS NOT NULL
);
DELETE MTL_ITEM_REVISIONS_INTERFACE
WHERE
(
(
ITEM_NUMBER IS NOT NULL OR
INVENTORY_ITEM_ID IS NOT NULL
)
AND
(
ORGANIZATION_CODE IS NOT NULL OR
ORGANIZATION_ID IS NOT NULL
)
AND
(
REVISION IS NOT NULL OR
REVISION_ID IS NOT NULL
)
)
AND
(
DESCRIPTION IS NULL AND
LIFECYCLE_ID IS NULL AND
CURRENT_PHASE_ID IS NULL AND
REVISION_LABEL IS NULL AND
REVISION_REASON IS NULL AND
LIFECYCLE_ID IS NULL AND
CURRENT_PHASE_ID IS NULL AND
EFFECTIVITY_DATE IS NULL
)
AND SET_PROCESS_ID = p_set_process_id;
Write_Debug('Preprocess_ItemRev_Interface : Deleted redundant / unnecessary rows from MIRI');
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS =
(
SELECT MIRI.PROCESS_FLAG
FROM MTL_ITEM_REVISIONS_INTERFACE MIRI
WHERE MIRI.TRANSACTION_ID = EBI.TRANSACTION_ID
)
WHERE EXISTS
(
SELECT 'X'
FROM MTL_ITEM_REVISIONS_INTERFACE MIRI
WHERE MIRI.TRANSACTION_ID = EBI.TRANSACTION_ID
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS = G_INTF_STATUS_ERROR
WHERE EXISTS
(
SELECT 'X'
FROM MTL_ITEM_REVISIONS_INTERFACE MIRI
WHERE MIRI.TRANSACTION_ID = EBI.TRANSACTION_ID
AND MIRI.PROCESS_FLAG = G_INTF_STATUS_SUCCESS
AND MIRI.REVISION_ID IS NULL
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS = G_INTF_STATUS_SUCCESS
WHERE EBI.PROCESS_STATUS = G_INTF_STATUS_TOBE_PROCESS
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.INSTANCE_PK1_VALUE =
(
SELECT MSII.INVENTORY_ITEM_ID
FROM MTL_SYSTEM_ITEMS_INTERFACE MSII
WHERE MSII.TRANSACTION_ID = EBI.TRANSACTION_ID
)
WHERE EXISTS
(
SELECT 'X'
FROM MTL_SYSTEM_ITEMS_INTERFACE MSII
WHERE MSII.TRANSACTION_ID = EBI.TRANSACTION_ID
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND EBI.PROCESS_STATUS = G_INTF_STATUS_SUCCESS;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.INSTANCE_PK3_VALUE =
(
SELECT MIRI.REVISION_ID
FROM MTL_ITEM_REVISIONS_INTERFACE MIRI
WHERE MIRI.TRANSACTION_ID = EBI.TRANSACTION_ID
)
WHERE EXISTS
(
SELECT 'X'
FROM MTL_ITEM_REVISIONS_INTERFACE MIRI
WHERE MIRI.TRANSACTION_ID = EBI.transaction_id
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND EBI.PROCESS_STATUS = G_INTF_STATUS_SUCCESS;
Write_Debug('EBI: Updated the Process_Status to Indicate Succssful/Unsucessful completion.');
SELECT DISTINCT To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, '$$') - 1)) attr_group_id
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND attribute_code LIKE '%$$%'
AND To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, '$$') - 1)) IN --attr_group_id
------------------------------------------------------------------------------
-- Fixed in 11.5.10. Ensuring only the Item User-Defined Attrs are processed.
------------------------------------------------------------------------------
(
SELECT attr_group_id
FROM ego_attr_groups_v
WHERE attr_group_type in (G_IUD_ATTR_GROUP_TYPE, G_GTN_SNG_ATTR_GROUP_TYPE, G_GTN_MUL_ATTR_GROUP_TYPE)
AND application_id = G_APPLICATION_ID
)
;
SELECT attr_group_name, attr_name, attr_group_type,
DECODE(data_type_code,'A','C'
,'X','D'
,'Y','D'
,data_type_code) data_type_code,
uom_class -- R12C UOM Change
FROM ego_attrs_v
WHERE attr_id = p_attr_id
AND attr_group_type in (G_IUD_ATTR_GROUP_TYPE, G_GTN_SNG_ATTR_GROUP_TYPE, G_GTN_MUL_ATTR_GROUP_TYPE)
AND application_id = G_APPLICATION_ID;
l_cursor_select INTEGER;
SELECT NVL(MAX(ROW_IDENTIFIER),0)
INTO L_ATTR_GRP_ROW_IDENT
FROM EGO_ITM_USR_ATTR_INTRFC
WHERE DATA_SET_ID = p_data_set_id;
SELECT INTF_COLUMN_NAME
INTO l_supplier_name_col
FROM EGO_RESULTS_FMT_USAGES
WHERE RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND ATTRIBUTE_CODE NOT LIKE '%$$%'
AND CUSTOMIZATION_APPLICATION_ID = 431
AND REGION_APPLICATION_ID = 431
AND ATTRIBUTE_CODE = 'SUPPLIER_NAME';
SELECT INTF_COLUMN_NAME
INTO l_supplier_number_col
FROM EGO_RESULTS_FMT_USAGES
WHERE RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND ATTRIBUTE_CODE NOT LIKE '%$$%'
AND CUSTOMIZATION_APPLICATION_ID = 431
AND REGION_APPLICATION_ID = 431
AND ATTRIBUTE_CODE = 'SUPPLIER_NUMBER';
SELECT INTF_COLUMN_NAME
INTO l_supplier_site_name_col
FROM EGO_RESULTS_FMT_USAGES
WHERE RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND ATTRIBUTE_CODE NOT LIKE '%$$%'
AND CUSTOMIZATION_APPLICATION_ID = 431
AND REGION_APPLICATION_ID = 431
AND ATTRIBUTE_CODE = 'SUPPLIER_SITE';
SELECT DATA_LEVEL_INT_NAME INTO l_attr_group_data_level
FROM EGO_OBJ_ATTR_GRP_ASSOCS_V
WHERE ATTR_GROUP_TYPE in (G_IUD_ATTR_GROUP_TYPE, G_GTN_SNG_ATTR_GROUP_TYPE, G_GTN_MUL_ATTR_GROUP_TYPE)
AND ATTR_GROUP_ID = c_attr_grp_rec.attr_group_id
AND OBJECT_NAME = G_EGO_ITEM_OBJ_NAME
AND ROWNUM = 1;-- The AG cannot have associations at Item level and Revision Level for different Catalogs.
l_dyn_sql := ' SELECT SUBSTR(attribute_code, INSTR(attribute_code, ''$$'')+2) attr_id, intf_column_name, DATA_LEVEL_ID ';
l_cursor_select := DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(l_cursor_select, l_dyn_sql, DBMS_SQL.NATIVE);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 1,l_attr_id_table,2500, l_temp);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 2,l_intf_col_name_table,2500, l_temp);
DBMS_SQL.DEFINE_ARRAY(l_cursor_select, 3,l_data_level_id_table,2500, l_temp);
DBMS_SQL.BIND_VARIABLE(l_cursor_select,':RESULTFMT_USAGE_ID', p_resultfmt_usage_id);
DBMS_SQL.BIND_VARIABLE(l_cursor_select,':ATTRIBUTE_CODE', c_attr_grp_rec.attr_group_id||'$$%');
l_cursor_execute := DBMS_SQL.EXECUTE(l_cursor_select);
l_count := DBMS_SQL.FETCH_ROWS(l_cursor_select);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 1, l_attr_id_table);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 2, l_intf_col_name_table);
DBMS_SQL.COLUMN_VALUE(l_cursor_select, 3, l_data_level_id_table);
DBMS_SQL.CLOSE_CURSOR(l_cursor_select);
l_dyn_attr_id_val_sql := ' SELECT ';
<>
FOR i IN 1..l_attr_id_table.COUNT LOOP
Write_Debug(l_api_name || 'LIORUI_update_item_ids_loop - '||i);
END LOOP LIORUI_update_item_ids_loop; --end: FOR i IN 1..l_attr_id_table.COUNT LOOP
SELECT VENDOR_ID
INTO l_supplier_id
FROM AP_SUPPLIERS
WHERE VENDOR_NAME = l_supplier_name;
SELECT VENDOR_ID
INTO l_supplier_id
FROM AP_SUPPLIERS
WHERE SEGMENT1 = l_supplier_number;
SELECT VENDOR_SITE_ID
INTO l_supplier_site_id
FROM AP_SUPPLIER_SITES_ALL
WHERE VENDOR_SITE_CODE = l_supplier_site_name
AND ORG_ID = l_site_org_id
AND VENDOR_ID = l_supplier_id;
l_usr_attr_data_tbl.DELETE(l_rows_per_attr_grp_indx);
SELECT UOM_CODE
INTO l_varchar_data
FROM MTL_UNITS_OF_MEASURE_VL
WHERE UOM_CLASS = l_uom_class
AND UNIT_OF_MEASURE_TL = l_uom_meaning; -- Bug 6397849
l_attr_id_table.DELETE;
l_intf_col_name_table.DELETE;
l_data_level_id_table.DELETE;
IF (l_transaction_type = G_CREATE OR l_transaction_type = G_UPDATE) THEN
l_transaction_type := G_SYNC;
INSERT INTO EGO_ITM_USR_ATTR_INTRFC
(
DATA_SET_ID ,
TRANSACTION_ID ,
TRANSACTION_TYPE ,
INVENTORY_ITEM_ID ,
ORGANIZATION_ID ,
REVISION_ID ,
ITEM_NUMBER ,
ORGANIZATION_CODE ,
REVISION ,
ROW_IDENTIFIER ,
ATTR_GROUP_INT_NAME ,
ATTR_INT_NAME ,
ATTR_DISP_VALUE ,
PROCESS_STATUS ,
SOURCE_SYSTEM_ID ,
SOURCE_SYSTEM_REFERENCE,
ATTR_GROUP_TYPE, --Bug Fix 4630163(ISSUE2)
ITEM_CATALOG_GROUP_ID, --Bug Fix 5179741
DATA_LEVEL_ID ,
PK1_VALUE ,
PK2_VALUE ,
ATTR_VALUE_UOM --R12C UOM Changes
)
VALUES
(
l_usr_attr_data_tbl(i).DATA_SET_ID,
l_usr_attr_data_tbl(i).TRANSACTION_ID,
l_transaction_type, --l_usr_attr_data_tbl(i).TRANSACTION_TYPE,
l_usr_attr_data_tbl(i).INVENTORY_ITEM_ID,
l_usr_attr_data_tbl(i).ORGANIZATION_ID,
l_usr_attr_data_tbl(i).REVISION_ID,
l_usr_attr_data_tbl(i).ITEM_NUMBER,
l_usr_attr_data_tbl(i).ORGANIZATION_CODE,
l_usr_attr_data_tbl(i).REVISION,
l_usr_attr_data_tbl(i).ROW_IDENTIFIER,
l_usr_attr_data_tbl(i).ATTR_GROUP_NAME,
l_usr_attr_data_tbl(i).ATTR_NAME,
l_varchar_data, -- ATTR_DISP_VALUE
G_PROCESS_STATUS,
l_usr_attr_data_tbl(i).SOURCE_SYSTEM_ID,
l_usr_attr_data_tbl(i).SOURCE_SYSTEM_REFERENCE,
l_usr_attr_data_tbl(i).ATTR_GROUP_TYPE, --Bug Fix 4630163(ISSUE2)
G_CATALOG_GROUP_ID, --Bug Fix 5179741
l_usr_attr_data_tbl(i).DATA_LEVEL_ID,
l_usr_attr_data_tbl(i).PK1_VALUE,
l_usr_attr_data_tbl(i).PK2_VALUE,
l_usr_attr_data_tbl(i).ATTR_VALUE_UOM --R12C UOM Changes
);
SELECT count(distinct(To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, '$$') - 1))))
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND attribute_code LIKE '%$$%'
-- Following statement fetches the Attribute Group Id --
AND To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, '$$') - 1)) IN
(
SELECT ATTR_GROUP_ID
FROM EGO_ATTR_GROUPS_V
WHERE ATTR_GROUP_TYPE = G_ERP_ATTR_GROUP_TYPE
AND APPLICATION_ID = G_APPLICATION_ID
);
SELECT distinct(To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, '$$') - 1))) OPER_ATTR_GRP_ID
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND attribute_code LIKE '%$$%'
-- Following statement fetches the Attribute Group Id --
AND To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, '$$') - 1)) IN
(
SELECT ATTR_GROUP_ID
FROM EGO_ATTR_GROUPS_V
WHERE ATTR_GROUP_TYPE = G_ERP_ATTR_GROUP_TYPE
AND APPLICATION_ID = G_APPLICATION_ID
);
SELECT To_Number(SUBSTR(attribute_code, INSTR(attribute_code, '$$')+2))
, intf_column_name
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND INSTR(attribute_code, '$$UOM') = 0 -- R12C UOM Change : ignoring uom columns in this case:
AND To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, '$$') - 1)) = c_attr_group_id;
' SELECT To_Number(SUBSTR(attribute_code, INSTR(attribute_code, ''$$'')+2)) '
|| ' , intf_column_name '
|| ' FROM ego_results_fmt_usages '
|| ' WHERE resultfmt_usage_id = :RESULTFMT_USAGE_ID '
|| ' AND INSTR(attribute_code, ''$$UOM'') = 0 ' -- R12C UOM Change : ignoring uom columns in this case:
|| ' AND To_Number(SUBSTR(attribute_code, 1, INSTR(attribute_code, ''$$'') - 1)) = :ATTR_GROUP_ID ';
SELECT ext.application_column_name , TL.FORM_LEFT_PROMPT
FROM ego_fnd_df_col_usgs_ext ext, FND_DESCR_FLEX_COL_USAGE_TL TL
WHERE ext.attr_id = c_attr_id
AND TL.LANGUAGE = USERENV('LANG')
AND EXT.DESCRIPTIVE_FLEXFIELD_NAME = TL.DESCRIPTIVE_FLEXFIELD_NAME
AND EXT.DESCRIPTIVE_FLEX_CONTEXT_CODE = TL.DESCRIPTIVE_FLEX_CONTEXT_CODE
AND EXT.APPLICATION_COLUMN_NAME = TL.APPLICATION_COLUMN_NAME
AND EXT.APPLICATION_ID = TL.APPLICATION_ID; -- Bug 6531938
SELECT OBJECT_ID
INTO l_object_id
FROM FND_OBJECTS
WHERE OBJ_NAME = G_EGO_ITEM_OBJ_NAME;
l_attr_id_table.DELETE;
l_intf_col_table.DELETE;
, position => 1 -- select position --
, n_tab => l_attr_id_table -- table of numbers --
, cnt => 2500 -- rows requested --
, lower_bound => 1 -- start at --
);
, position => 2 -- select position --
, c_tab => l_intf_col_table -- table of varchar --
, cnt => 2500 -- rows requested --
, lower_bound => 1 -- start at --
);
l_dyn_sql := ' SELECT ';
l_msii_col_table.DELETE;
l_dyn_sql := 'UPDATE MTL_SYSTEM_ITEMS_INTERFACE ';
l_dyn_sql_ebi := ' UPDATE ego_bulkload_intf ' ||
' SET '|| G_VAL_SET_CONV_ERR_COL ||' = '''||l_ebi_err_msg||''''||
' WHERE TRANSACTION_ID = ' || l_transaction_id;
l_user_attr_data_table.DELETE;
l_dyn_sql := l_dyn_sql || 'INSERT INTO MTL_INTERFACE_ERRORS ';
l_dyn_sql := l_dyn_sql || ', LAST_UPDATE_DATE ';
l_dyn_sql := l_dyn_sql || ', LAST_UPDATED_BY ';
l_dyn_sql := l_dyn_sql || ', LAST_UPDATE_LOGIN ';
l_dyn_sql := l_dyn_sql || ', PROGRAM_UPDATE_DATE ';
l_dyn_sql := l_dyn_sql || 'SELECT ';
UPDATE MTL_SYSTEM_ITEMS_INTERFACE
SET PROCESS_FLAG = G_INTF_STATUS_ERROR
WHERE PROCESS_FLAG IN
(
G_VS_INVALID_ERR_STS
)
AND TRANSACTION_ID IN
(
SELECT TRANSACTION_ID
FROM EGO_BULKLOAD_INTF
WHERE RESULTFMT_USAGE_ID = p_resultfmt_usage_id
);
SELECT C_INTF_ATTR239
FROM EGO_BULKLOAD_INTF
WHERE RESULTFMT_USAGE_ID = c_resultfmt_usage_id
AND C_INTF_ATTR239 IS NOT NULL;
' UPDATE MTL_SYSTEM_ITEMS_B MSIB ' ||
' SET (MSIB.UNIT_WEIGHT, MSIB.WEIGHT_UOM_CODE) = ' ||
' ( ' ||
' DECODE(MSIB.TRADE_ITEM_DESCRIPTOR, ''BASE_UNIT_OR_EACH'', MSIB.UNIT_WEIGHT, NULL), ' ||
' DECODE(MSIB.TRADE_ITEM_DESCRIPTOR, ''BASE_UNIT_OR_EACH'', MSIB.WEIGHT_UOM_CODE, NULL) ' ||
' ) ' ||
' WHERE EXISTS ' ||
' ( ' ||
' SELECT ''X'' ' ||
' FROM EGO_BULKLOAD_INTF EBI ' ||
' WHERE FND_NUMBER.CANONICAL_TO_NUMBER(EBI.INSTANCE_PK1_VALUE) = MSIB.INVENTORY_ITEM_ID ' ||
' AND FND_NUMBER.CANONICAL_TO_NUMBER(EBI.INSTANCE_PK2_VALUE) = MSIB.ORGANIZATION_ID ' ||
' AND EBI.PROCESS_STATUS = 7 ' || -- Successful Rows Only
' AND EBI.RESULTFMT_USAGE_ID = :RESULTFMT_USAGE_ID_2 ' ||
' ) ';
Write_Debug('MSIB: Updated the Net Weights.');
SELECT Nvl(fmt.data_level, G_ITEM_DATA_LEVEL)
---------------------------------------------------------------------------------
--Fix for Bug# 3681711. (JCGEORGE)
-- CLASSIFICATION_CODE in EGO_RESULTS_FMT_USAGES, now stores the **current**
-- Item Catalog Group ID for the selected Import Format.
---------------------------------------------------------------------------------
--, Decode(fmt.classification1, -1, NULL, fmt.classification1)
, Decode(fmt_usg.classification_code, -1, NULL, fmt_usg.classification_code)
FROM ego_results_fmt_usages fmt_usg, ego_results_format_v fmt
WHERE fmt_usg.resultfmt_usage_id = c_resultfmt_usage_id
AND fmt.customization_application_id = fmt_usg.customization_application_id
AND fmt.customization_code = fmt_usg.customization_code
AND fmt.region_application_id = fmt_usg.region_application_id
AND fmt.region_code = fmt_usg.region_code;
SELECT 'x'
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
AND attribute_code = G_REV_CODE_ATTR_CODE;
SELECT 'x'
FROM mtl_interface_errors
WHERE request_id = FND_GLOBAL.conc_request_id;
delete_records_from_MSII(p_data_set_id);
SELECT count(*)
INTO l_rev_base_attrs_count
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = p_resultfmt_usage_id
AND attribute_code NOT LIKE '%$$%'
---------------------------------------------------------------------------
-- Added NOT LIKE 'GTIN_%' to filter out Dummy Attrs for Attr Group: "GTIN"
---------------------------------------------------------------------------
AND attribute_code NOT LIKE 'GTIN_%'
AND attribute_code IN --Segregating Item Revision Base Attrs using this clause
(
select LOOKUP_CODE CODE
from FND_LOOKUP_VALUES
where LOOKUP_TYPE = 'EGO_ITEM_REV_HDR_ATTR_GRP'
AND LANGUAGE = USERENV('LANG')
AND ENABLED_FLAG = 'Y'
);
/* Bug 7578350. Moved this DELETE statement from load_item_revs_interface() function,
by addubg NOT EXITS condition in WHERE caluse, so that we delete the rows from MTL_ITEM_REVISIONS_INTERFACE
only if there are no Revision Level Attributes provided. */
DELETE MTL_ITEM_REVISIONS_INTERFACE MIRI
WHERE revision IS NULL
AND revision_id IS NULL
AND implementation_date IS NULL
AND effectivity_date IS NULL
AND description IS NULL
AND revision_label IS NULL
AND revision_reason IS NULL
AND current_phase_id IS NULL
AND EXISTS (SELECT 'X'
FROM EGO_BULKLOAD_INTF EBI
WHERE EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND EBI.TRANSACTION_ID = MIRI.TRANSACTION_ID
AND EBI.PROCESS_STATUS = 1
)
AND NOT EXISTS (SELECT 'X'
FROM EGO_ITM_USR_ATTR_INTRFC EIUAT
WHERE EIUAT.TRANSACTION_ID = MIRI.TRANSACTION_ID
AND EIUAT.PROCESS_STATUS = 1
AND EIUAT.DATA_LEVEL_ID=43106);
l_dyn_sql := 'SELECT MIERR.REQUEST_ID REQUEST_ID, '||G_NEWLINE;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS = G_INTF_STATUS_ERROR
WHERE EBI.PROCESS_STATUS = G_INTF_STATUS_TOBE_PROCESS
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
SELECT TRADE_ITEM_DESCRIPTOR INTO x_tradeItemDescriptor
FROM MTL_SYSTEM_ITEMS_B
WHERE INVENTORY_ITEM_ID = to_number(p_inventory_item_id)
AND ORGANIZATION_ID = to_number(p_organization_id);
SELECT C_INTF_ATTR239
FROM EGO_BULKLOAD_INTF
WHERE C_INTF_ATTR239 IS NOT NULL
AND RESULTFMT_USAGE_ID = c_resultfmt_usage_id
AND ROWNUM < 2;
SELECT INSTANCE_PK1_VALUE , INSTANCE_PK2_VALUE
FROM EGO_BULKLOAD_INTF
WHERE RESULTFMT_USAGE_ID = c_resultfmt_usage_id
AND PROCESS_STATUS = 7;
SELECT TRADE_ITEM_DESCRIPTOR
FROM MTL_SYSTEM_ITEMS_B
WHERE INVENTORY_ITEM_ID = c_inventory_itemId
AND ORGANIZATION_ID = c_organization_Id ;
SELECT DATABASE_COLUMN ,
EDIT_IN_HIERARCHY_CODE ,
DATA_TYPE_CODE
FROM EGO_ATTRS_V
WHERE ATTR_GROUP_TYPE = c_attr_group_type -- 'EGO_ITEM_GTIN_ATTRS'
AND EDIT_IN_HIERARCHY_CODE IN ( c_edit_in_hcR ) -- ( 'L' , 'LP', 'A' , 'AP')
AND DATA_TYPE_CODE not in ( c_data_type_codeA );
SELECT DATABASE_COLUMN ,
EDIT_IN_HIERARCHY_CODE ,
DATA_TYPE_CODE
FROM EGO_ATTRS_V
WHERE ATTR_GROUP_TYPE = c_attr_group_type -- 'EGO_ITEM_GTIN_ATTRS'
AND EDIT_IN_HIERARCHY_CODE IN ( c_edit_in_hcL , c_edit_in_hcLP ) -- ( 'L' , 'LP', 'A' , 'AP')
AND DATA_TYPE_CODE not in ( c_data_type_codeA ) ;
SELECT DATABASE_COLUMN ,
EDIT_IN_HIERARCHY_CODE ,
DATA_TYPE_CODE
FROM EGO_ATTRS_V
WHERE ATTR_GROUP_TYPE = c_attr_group_type -- 'EGO_ITEM_GTIN_ATTRS'
AND EDIT_IN_HIERARCHY_CODE IN ( c_edit_in_hcR ) -- ( 'L' , 'LP', 'A' , 'AP')
AND DATA_TYPE_CODE in ( c_data_type_codeA ) ;
SELECT DATABASE_COLUMN ,
EDIT_IN_HIERARCHY_CODE ,
DATA_TYPE_CODE
FROM EGO_ATTRS_V
WHERE ATTR_GROUP_TYPE = c_attr_group_type -- 'EGO_ITEM_GTIN_ATTRS'
AND EDIT_IN_HIERARCHY_CODE IN ( c_edit_in_hcL , c_edit_in_hcLP ) -- ( 'L' , 'LP', 'A' , 'AP')
AND DATA_TYPE_CODE in ( c_data_type_codeA ) ;
EXECUTE IMMEDIATE ' UPDATE EGO_ITEM_GTN_ATTRS_B SET ( '|| l_leafAttrs_bTable_dbCol ||
' ) = ( SELECT '|| l_leafAttrs_bTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id '||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EXECUTE IMMEDIATE ' UPDATE EGO_ITEM_GTN_ATTRS_TL SET ( '|| l_leafAttrs_tlTable_dbCol ||
' ) = ( SELECT '|| l_leafAttrs_tlTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id ' ||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EXECUTE IMMEDIATE ' UPDATE EGO_ITM_GTN_MUL_ATTRS_B SET ( ' || l_leafAttrs_MulBTable_dbCol||
' ) = ( SELECT ' || l_leafAttrs_MulBTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id ' ||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EXECUTE IMMEDIATE ' UPDATE EGO_ITM_GTN_MUL_ATTRS_TL SET ( ' || l_leafAttrs_MultlTable_dbCol||
' ) = ( SELECT ' || l_leafAttrs_MultlTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id' ||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EGO_GTIN_PVT.UPDATE_REG_PUB_UPDATE_DATES (p_inventory_item_id => l_inventory_item_id ,
p_organization_id => l_organization_id ,
p_update_reg => 'Y' ,
x_return_status => l_return_status ,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data );
Write_Debug('GTIN : Clear_Gtin_Attrs. :: Exception from EGO_GTIN_PVT.UPDATE_REG_PUB_UPDATE_DATES ');
EXECUTE IMMEDIATE ' UPDATE EGO_ITEM_GTN_ATTRS_B SET ( '|| l_rootAttrs_bTable_dbCol ||
' ) = ( SELECT'|| l_rootAttrs_bTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id '||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EXECUTE IMMEDIATE ' UPDATE EGO_ITEM_GTN_ATTRS_TL SET ( '|| l_rootAttrs_tlTable_dbCol ||
' ) = ( SELECT'|| l_rootAttrs_tlTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id ' ||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EXECUTE IMMEDIATE ' UPDATE EGO_ITM_GTN_MUL_ATTRS_B SET ( '|| l_rootAttrs_MulBTable_dbCol ||
' ) = ( SELECT '|| l_rootAttrs_MulBTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id ' ||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EXECUTE IMMEDIATE ' UPDATE EGO_ITM_GTN_MUL_ATTRS_TL SET ( '||l_rootAttrs_MultlTable_dbCol ||
' ) = ( SELECT '|| l_rootAttrs_MultlTable_value ||
' FROM DUAL ) WHERE INVENTORY_ITEM_ID = :inventory_item_id ' ||
' AND ORGANIZATION_ID = :organization_id ' USING l_inventory_item_id , l_organization_id;
EGO_GTIN_PVT.UPDATE_REG_PUB_UPDATE_DATES (p_inventory_item_id => l_inventory_item_id ,
p_organization_id => l_organization_id ,
p_update_reg => 'N' ,
x_return_status => l_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data );
Write_Debug('GTIN : Clear_Gtin_Attrs. :: Exception from EGO_GTIN_PVT.UPDATE_REG_PUB_UPDATE_DATES ');
SELECT DISTINCT item_catalog_group_id
BULK COLLECT INTO l_cc_id_table
FROM MTL_SYSTEM_ITEMS_INTERFACE
WHERE set_process_id = p_set_id
AND (organization_id = p_org_id OR p_all_org = 1)
AND process_flag = p_rec_status
AND transaction_type = 'CREATE';
SELECT TO_CHAR(organization_id), item_number,
transaction_id, source_system_id,
source_system_reference
BULK COLLECT INTO l_org_id_table, l_old_item_num_table,
l_trans_id_table, l_ss_id_table,
l_ss_ref_table
FROM MTL_SYSTEM_ITEMS_INTERFACE
WHERE set_process_id = p_set_id
AND (organization_id = p_org_id OR p_all_org = 1)
AND item_catalog_group_id = l_cc_id_table(cc_row_index)
AND process_flag = p_rec_status
AND transaction_type = 'CREATE';
UPDATE mtl_system_items_interface
SET item_number = l_item_num_table(item_num_row_index),
SEGMENT1 = NULL,
SEGMENT2 = NULL,
SEGMENT3 = NULL,
SEGMENT4 = NULL,
SEGMENT5 = NULL,
SEGMENT6 = NULL,
SEGMENT7 = NULL,
SEGMENT8 = NULL,
SEGMENT9 = NULL,
SEGMENT10 = NULL,
SEGMENT11 = NULL,
SEGMENT12 = NULL,
SEGMENT13 = NULL,
SEGMENT14 = NULL,
SEGMENT15 = NULL,
SEGMENT16 = NULL,
SEGMENT17 = NULL,
SEGMENT18 = NULL,
SEGMENT19 = NULL,
SEGMENT20 = NULL
WHERE set_process_id IN (p_set_id, l_xset_id) /*bug 6158936 child records are in l_xset_id*/
AND process_flag IN (p_rec_status, 60001) /*bug 6158936 child records are in process_flag + 60000*/
AND source_system_id = l_ss_id_table(item_num_row_index)
AND ( item_number = l_old_item_num_table(item_num_row_index) OR
source_system_reference = l_ss_ref_table(item_num_row_index));
UPDATE mtl_item_revisions_interface
SET item_number = l_item_num_table(rev_row_index)
WHERE set_process_id = l_xset_id
AND source_system_id = l_ss_id_table(rev_row_index)
AND process_flag = p_rec_status
AND ( item_number = l_old_item_num_table(rev_row_index) OR
source_system_reference = l_ss_ref_table(rev_row_index));
UPDATE mtl_item_categories_interface
SET item_number = l_item_num_table(item_cat_row_index)
WHERE set_process_id = l_xset_id
AND source_system_id = l_ss_id_table(item_cat_row_index)
AND process_flag = p_rec_status
AND ( item_number = l_old_item_num_table(item_cat_row_index) OR
source_system_reference = l_ss_ref_table(item_cat_row_index));
UPDATE ego_itm_usr_attr_intrfc
SET item_number = l_item_num_table(usr_attr_row_index)
WHERE data_set_id = l_xset_id
AND source_system_id = l_ss_id_table(usr_attr_row_index)
AND process_status = p_rec_status
AND ( item_number = l_old_item_num_table(usr_attr_row_index) OR
source_system_reference = l_ss_ref_table(usr_attr_row_index));
UPDATE ego_item_people_intf
SET item_number = l_item_num_table(ss_id_row_index)
WHERE data_set_id = l_xset_id
AND source_system_id = l_ss_id_table(ss_id_row_index)
AND process_status = p_rec_status
AND ( item_number = l_old_item_num_table(ss_id_row_index) OR
source_system_reference = l_ss_ref_table(ss_id_row_index));
UPDATE ego_aml_intf
SET item_number = l_item_num_table(ss_id_row_index)
WHERE data_set_id = l_xset_id
AND source_system_id = l_ss_id_table(ss_id_row_index)
AND process_flag = p_rec_status
AND ( item_number = l_old_item_num_table(ss_id_row_index) OR
source_system_reference = l_ss_ref_table(ss_id_row_index));
UPDATE bom_bill_of_mtls_interface
SET item_number = l_item_num_table(bill_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( item_number = l_old_item_num_table(bill_id_row_index) OR
source_system_reference = l_ss_ref_table(bill_id_row_index));
UPDATE BOM_INVENTORY_COMPS_INTERFACE
SET component_item_number = l_item_num_table(bom_inv_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( component_item_number = l_old_item_num_table(bom_inv_id_row_index) OR
comp_source_system_reference = l_ss_ref_table(bom_inv_id_row_index));
UPDATE BOM_INVENTORY_COMPS_INTERFACE
SET assembly_item_number = l_item_num_table(bom_par_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( assembly_item_number = l_old_item_num_table(bom_par_id_row_index) OR
parent_source_system_reference = l_ss_ref_table(bom_par_id_row_index));
UPDATE BOM_SUB_COMPS_INTERFACE
SET assembly_item_number = l_item_num_table(bom_sub_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( assembly_item_number = l_old_item_num_table(bom_sub_id_row_index) OR
parent_source_system_reference = l_ss_ref_table(bom_sub_id_row_index));
UPDATE BOM_SUB_COMPS_INTERFACE
SET component_item_number = l_item_num_table(bom_sub_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( component_item_number = l_old_item_num_table(bom_sub_id_row_index) OR
comp_source_system_reference = l_ss_ref_table(bom_sub_id_row_index));
UPDATE BOM_SUB_COMPS_INTERFACE
SET substitute_comp_number = l_item_num_table(bom_sub_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( substitute_comp_number = l_old_item_num_table(bom_sub_id_row_index) OR
subcom_source_system_reference = l_ss_ref_table(bom_sub_id_row_index));
UPDATE BOM_REF_DESGS_INTERFACE
SET assembly_item_number = l_item_num_table(bom_ref_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( assembly_item_number = l_old_item_num_table(bom_ref_id_row_index) OR
parent_source_system_reference = l_ss_ref_table(bom_ref_id_row_index));
UPDATE BOM_REF_DESGS_INTERFACE
SET component_item_number = l_item_num_table(bom_ref_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( component_item_number = l_old_item_num_table(bom_ref_id_row_index) OR
comp_source_system_reference = l_ss_ref_table(bom_ref_id_row_index));
UPDATE BOM_COMPONENT_OPS_INTERFACE
SET assembly_item_number = l_item_num_table(bom_comp_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( assembly_item_number = l_old_item_num_table(bom_comp_id_row_index) OR
parent_source_system_reference = l_ss_ref_table(bom_comp_id_row_index));
UPDATE BOM_COMPONENT_OPS_INTERFACE
SET component_item_number = l_item_num_table(bom_comp_id_row_index)
WHERE process_flag = p_rec_status
AND batch_id = l_xset_id
AND ( component_item_number = l_old_item_num_table(bom_comp_id_row_index) OR
comp_source_system_reference = l_ss_ref_table(bom_comp_id_row_index));
SELECT attribute_code, intf_column_name, data_level_id
FROM ego_results_fmt_usages
WHERE resultfmt_usage_id = c_resultfmt_usage_id
/* AND DATA_LEVEL_ID in (SELECT DATA_LEVEL_ID
FROM EGO_DATA_LEVEL_B
WHERE DATA_LEVEL_NAME IN ('ITEM_SUP','ITEM_ORG','ITEM_SUP_SITE')
AND APPLICATION_ID = 431
AND ATTR_GROUP_TYPE = 'EGO_ITEMMGMT_GROUP'
)*/;
SELECT mtl_system_items_intf_sets_s.NEXTVAL
INTO l_msii_set_process_id
FROM dual;
SELECT MEANING
INTO l_yes_meaning
FROM FND_LOOKUP_VALUES_VL
WHERE LOOKUP_TYPE = 'EGO_YES_NO'
AND LOOKUP_CODE = 'Y';
SELECT MEANING
INTO l_no_meaning
FROM FND_LOOKUP_VALUES_VL
WHERE LOOKUP_TYPE = 'EGO_YES_NO'
AND LOOKUP_CODE = 'N';
SELECT MEANING
INTO l_active_meaning
FROM FND_LOOKUP_VALUES_VL
WHERE LOOKUP_TYPE = 'EGO_ASSOCIATION_STATUS'
AND LOOKUP_CODE = '1';
SELECT MEANING
INTO l_inactive_meaning
FROM FND_LOOKUP_VALUES_VL
WHERE LOOKUP_TYPE = 'EGO_ASSOCIATION_STATUS'
AND LOOKUP_CODE = '2';
SELECT DATA_LEVEL_ID
INTO l_data_level_id
FROM EGO_DATA_LEVEL_B
WHERE DATA_LEVEL_NAME = 'ITEM_SUP'
AND APPLICATION_ID = 431
AND ATTR_GROUP_TYPE = 'EGO_ITEMMGMT_GROUP';
l_dyn_sql := 'INSERT INTO EGO_ITEM_ASSOCIATIONS_INTF ';
l_dyn_sql := l_dyn_sql || ' LAST_UPDATED_BY , ';
l_dyn_sql := l_dyn_sql || ' LAST_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || ' LAST_UPDATE_LOGIN , ';
l_dyn_sql := l_dyn_sql || ' PROGRAM_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || 'SELECT ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATED_BY , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATE_LOGIN , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'PROGRAM_UPDATE_DATE , ';
SELECT DATA_LEVEL_ID
INTO l_data_level_id
FROM EGO_DATA_LEVEL_B
WHERE DATA_LEVEL_NAME = 'ITEM_SUP_SITE'
AND APPLICATION_ID = 431
AND ATTR_GROUP_TYPE = 'EGO_ITEMMGMT_GROUP';
SELECT DATA_LEVEL_ID
INTO l_data_level_id_1
FROM EGO_DATA_LEVEL_B
WHERE DATA_LEVEL_NAME = 'ITEM_SUP_SITE_ORG'
AND APPLICATION_ID = 431
AND ATTR_GROUP_TYPE = 'EGO_ITEMMGMT_GROUP';
l_dyn_sql := 'INSERT INTO EGO_ITEM_ASSOCIATIONS_INTF ';
l_dyn_sql := l_dyn_sql || ' LAST_UPDATED_BY , ';
l_dyn_sql := l_dyn_sql || ' LAST_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || ' LAST_UPDATE_LOGIN , ';
l_dyn_sql := l_dyn_sql || ' PROGRAM_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || 'SELECT ';
l_dyn_sql := l_dyn_sql || 'SELECT ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATED_BY , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATE_LOGIN , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'PROGRAM_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || ' SELECT ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATED_BY , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATE_DATE , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'LAST_UPDATE_LOGIN , ';
l_dyn_sql := l_dyn_sql || 'EBI.'||'PROGRAM_UPDATE_DATE , ';