The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT VALUE
FROM V$PARAMETER
WHERE NAME = 'utl_file_dir';
SELECT Bill_Sequence_Id
INTO l_id
FROM Bom_Bill_Of_Materials
WHERE Assembly_Item_Id = p_assembly_item_id
AND NVL(Alternate_Bom_Designator, 'NONE') =
DECODE(p_alternate_bom_designator,NULL,'NONE',p_alternate_bom_designator)
AND Organization_Id = p_organization_id;
SELECT Organization_Id
INTO l_id
FROM Mtl_Parameters
WHERE Organization_Code = p_organization;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS =
(
SELECT BMI.PROCESS_FLAG
FROM BOM_BILL_OF_MTLS_INTERFACE BMI
WHERE BMI.TRANSACTION_ID = EBI.TRANSACTION_ID
)
WHERE EXISTS
(
SELECT 'X'
FROM BOM_BILL_OF_MTLS_INTERFACE BMI
WHERE BMI.TRANSACTION_ID = EBI.TRANSACTION_ID
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
UPDATE EGO_BULKLOAD_INTF EBI
SET EBI.PROCESS_STATUS =
(
SELECT BICI.PROCESS_FLAG
FROM BOM_INVENTORY_COMPS_INTERFACE BICI
WHERE BICI.TRANSACTION_ID = EBI.TRANSACTION_ID
)
WHERE EXISTS
(
SELECT 'X'
FROM BOM_INVENTORY_COMPS_INTERFACE BICI
WHERE BICI.TRANSACTION_ID = EBI.TRANSACTION_ID
)
AND EBI.RESULTFMT_USAGE_ID = p_resultfmt_usage_id;
l_dyn_sql_select VARCHAR2(10000);
l_dyn_sql_insert VARCHAR2(10000);
l_cursor_select INTEGER;
G_TXN_UPDATE VARCHAR2(10) := 'UPDATE';
G_TXN_DELETE VARCHAR2(10) := 'DELETE';
G_DEL_GROUP_DESC VARCHAR2(240) := 'Delete Group for EGO BOM Bulkload Structures';
SELECT
erf.Attribute_Code,
erf.Intf_Column_Name,
bcc.Bom_Intf_Column_Name ,
bcc.Bom_Intf_Table_Name,
bcc.Operation_Type
FROM
Ego_Results_Fmt_Usages erf,
Bom_Component_Columns bcc
WHERE
Region_Code = 'BOM_RESULT_DUMMY_REGION'
AND
Region_Application_Id = 702
AND
Customization_Application_Id = 431
AND
Resultfmt_Usage_Id = c_Resultfmt_Usage_Id
AND
bcc.Attribute_Code = erf.Attribute_Code
AND
( bcc.Parent_Entity IS NULL
OR BCC.Attribute_Code = 'ITEM_NUMBER'
OR BCC.Attribute_Code = 'PARENT_NAME')
AND
erf.Attribute_Code NOT LIKE '%$$%';
SELECT
ASSEMBLY_ITEM_ID,
ORGANIZATION_ID,
ASSEMBLY_TYPE,
PROCESS_FLAG,
ORGANIZATION_CODE,
COMMON_ORG_CODE,
ITEM_NUMBER,
IMPLEMENTATION_DATE
FROM
BOM_BILL_OF_MTLS_INTERFACE
WHERE
PROCESS_FLAG = 1
AND
REQUEST_ID = C_REQUEST_ID;
DELETE FROM EGO_BULKLOAD_INTF
WHERE RESULTFMT_USAGE_ID = p_resultfmt_usage_id
AND PROCESS_STATUS <> 1;
UPDATE EGO_BULKLOAD_INTF
SET Transaction_Id = MTL_SYSTEM_ITEMS_INTERFACE_S.NEXTVAL
WHERE Resultfmt_Usage_Id = p_Resultfmt_Usage_Id AND PROCESS_STATUS = 1 ;
l_dyn_sql_insert := '';
l_dyn_sql_insert := l_dyn_sql_insert || 'INSERT INTO BOM_BILL_OF_MTLS_INTERFACE (REQUEST_ID, Transaction_Type ';
l_dyn_sql_insert := l_dyn_sql_insert || ', Transaction_Id, Process_Flag, Item_Number ';
l_dyn_sql_insert := l_dyn_sql_insert || ', Organization_Code, Alternate_Bom_Designator) ';
l_dyn_sql_select := '';
l_dyn_sql_select := l_dyn_sql_select || ' SELECT REQUEST_ID, Transaction_Type, Transaction_Id, 1, ' || l_item_col_name;
l_dyn_sql_select := l_dyn_sql_select || ', ' || G_INTF_ORG_CODE;
l_dyn_sql_select := l_dyn_sql_select || ', DECODE(' || G_INTF_STRUCT_NAME || ',Bom_Globals.Retrieve_Message(''BOM'', ''BOM_PRIMARY''),NULL,' || G_INTF_STRUCT_NAME || ')';
l_dyn_sql_select := l_dyn_sql_select || ' FROM EGO_BULKLOAD_INTF WHERE RESULTFMT_USAGE_ID = :RESULTFMT_USAGE_ID ';
l_dyn_sql_select := l_dyn_sql_select || ' AND PROCESS_STATUS = 1 AND ' || l_parent_column || ' IS NULL ';
l_dyn_sql := l_dyn_sql_insert || ' ' || l_dyn_sql_select;
l_dyn_sql_insert := '';
l_dyn_sql_insert := l_dyn_sql_insert || 'INSERT INTO BOM_INVENTORY_COMPS_INTERFACE ( REQUEST_ID, Transaction_Type, Transaction_Id, Process_Flag, ';
l_dyn_sql_insert := l_dyn_sql_insert || 'ORGANIZATION_CODE, ALTERNATE_BOM_DESIGNATOR, COMPONENT_SEQUENCE_ID, ';
l_dyn_sql_select := '';
l_dyn_sql_select := l_dyn_sql_select || 'SELECT REQUEST_ID, TRANSACTION_TYPE, Transaction_Id, 1, ' || G_INTF_ORG_CODE || ', ';
l_dyn_sql_select := l_dyn_sql_select || 'DECODE(' || G_INTF_STRUCT_NAME || ',Bom_Globals.Retrieve_Message(''BOM'', ''BOM_PRIMARY''),NULL,' || G_INTF_STRUCT_NAME || '), ';
l_dyn_sql_select := l_dyn_sql_select || G_INTF_COMP_SEQ_ID || ', ';
l_dyn_sql_insert := l_dyn_sql_insert || 'NEW_EFFECTIVITY_DATE,';
l_str := 'DECODE(( SELECT To_Char(Effectivity_Date,''DD-MON-YYYY HH24:MI:SS'') FROM Bom_inventory_Components WHERE Component_Sequence_Id = ' || G_INTF_COMP_SEQ_ID || ')';
l_dyn_sql_select := l_dyn_sql_select || l_str;
l_dyn_sql_insert := l_dyn_sql_insert || 'NEW_OPERATION_SEQ_NUM,';
l_dyn_sql_insert := l_dyn_sql_insert || 'NEW_FROM_END_ITEM_UNIT_NUMBER,';
l_dyn_sql_insert := l_dyn_sql_insert || l_bom_col_name(i) || ',';
l_dyn_sql_select := l_dyn_sql_select || 'TO_DATE(' || l_intf_col_name_tbl(i) || ',''DD-MON-YYYY HH24:MI:SS''),';
l_dyn_sql_select := l_dyn_sql_select || l_intf_col_name_tbl(i) || ',';
l_dyn_sql_insert := SUBSTR(l_dyn_sql_insert,0,LENGTH(l_dyn_sql_insert) - 1);
l_dyn_sql_select := SUBSTR(l_dyn_sql_select,0,LENGTH(l_dyn_sql_select) - 1);
l_dyn_sql_insert := l_dyn_sql_insert || ' ) ';
l_dyn_sql_select := l_dyn_sql_select || ' FROM EGO_BULKLOAD_INTF ';
l_dyn_sql_select := l_dyn_sql_select || ' WHERE RESULTFMT_USAGE_ID = :RESULTFMT_USAGE_ID ';
l_dyn_sql_select := l_dyn_sql_select || ' AND PROCESS_STATUS = 1 AND ' || l_parent_column || ' IS NOT NULL ';
l_dyn_sql_select := l_dyn_sql_select || ' AND Transaction_Type = ''' || G_TXN_UPDATE || ''' ';
l_dyn_sql := l_dyn_sql_insert || ' ' || l_dyn_sql_select;
l_dyn_sql_cursor := l_dyn_sql_cursor || ' SELECT Distinct Transaction_Id, ' || l_parent_column ;
l_cursor_select := Dbms_Sql.Open_Cursor;
Dbms_Sql.Parse(l_cursor_select, l_dyn_sql_cursor, Dbms_Sql.NATIVE);
Dbms_Sql.Define_Column(l_cursor_select, 1, L_TRANSACTION_ID);
Dbms_Sql.Define_Column(l_cursor_select, 2, L_PARENT_NAME, 5000);
Dbms_Sql.Define_Column(l_cursor_select, 3, L_ORGANIZATION_CODE, 5000);
Dbms_Sql.Define_Column(l_cursor_select, 4, L_STRUCTURE_NAME, 5000);
Dbms_Sql.Bind_Variable(l_cursor_select,':RESULTFMT_USAGE_ID', p_resultfmt_usage_id);
l_cursor_execute := Dbms_Sql.EXECUTE(l_cursor_select);
IF (Dbms_Sql.Fetch_Rows(l_cursor_select) > 0) THEN
Dbms_Sql.Column_Value(l_cursor_select,1,L_TRANSACTION_ID);
Dbms_Sql.Column_Value(l_cursor_select,2,L_PARENT_NAME);
Dbms_Sql.Column_Value(l_cursor_select,3,L_ORGANIZATION_CODE);
Dbms_Sql.Column_Value(l_cursor_select,4,L_STRUCTURE_NAME);
INSERT INTO BOM_BILL_OF_MTLS_INTERFACE (
REQUEST_ID,
TRANSACTION_TYPE,
TRANSACTION_ID,
PROCESS_FLAG,
ITEM_NUMBER,
ORGANIZATION_CODE,
ALTERNATE_BOM_DESIGNATOR )
VALUES (
G_REQUEST_ID,
G_TXN_CREATE,
L_TRANSACTION_ID,
1,
L_PARENT_NAME,
L_ORGANIZATION_CODE,
L_STRUCTURE_NAME );
Dbms_Sql.Close_Cursor(l_cursor_select);
l_dyn_sql_insert := '';
l_dyn_sql_insert := l_dyn_sql_insert || 'INSERT INTO BOM_INVENTORY_COMPS_INTERFACE ( REQUEST_ID, Transaction_Type, Transaction_Id, Process_Flag, ';
l_dyn_sql_insert := l_dyn_sql_insert || 'ORGANIZATION_CODE, ALTERNATE_BOM_DESIGNATOR, COMPONENT_SEQUENCE_ID, ';
l_dyn_sql_select := '';
l_dyn_sql_select := l_dyn_sql_select || 'SELECT REQUEST_ID, ''' || G_TXN_CREATE || ''', Transaction_Id, 1, ' || G_INTF_ORG_CODE || ', ';
l_dyn_sql_select := l_dyn_sql_select || 'DECODE(' || G_INTF_STRUCT_NAME || ',Bom_Globals.Retrieve_Message(''BOM'', ''BOM_PRIMARY''),NULL,' || G_INTF_STRUCT_NAME || '), ';
l_dyn_sql_select := l_dyn_sql_select || G_INTF_COMP_SEQ_ID || ', ';
l_dyn_sql_insert := l_dyn_sql_insert || l_bom_col_name(i) || ',';
l_dyn_sql_select := l_dyn_sql_select || 'TO_DATE(' || l_intf_col_name_tbl(i) || ',''DD-MON-YYYY HH24:MI:SS''),';
l_dyn_sql_select := l_dyn_sql_select || l_intf_col_name_tbl(i) || ',';
l_dyn_sql_insert := SUBSTR(l_dyn_sql_insert,0,LENGTH(l_dyn_sql_insert) - 1);
l_dyn_sql_select := SUBSTR(l_dyn_sql_select,0,LENGTH(l_dyn_sql_select) - 1);
l_dyn_sql_insert := l_dyn_sql_insert || ' ) ';
l_dyn_sql_select := l_dyn_sql_select || ' FROM EGO_BULKLOAD_INTF ';
l_dyn_sql_select := l_dyn_sql_select || ' WHERE RESULTFMT_USAGE_ID = :RESULTFMT_USAGE_ID ';
l_dyn_sql_select := l_dyn_sql_select || ' AND PROCESS_STATUS = 1 AND ' || l_parent_column || ' IS NOT NULL ';
l_dyn_sql_select := l_dyn_sql_select || ' AND (Transaction_Type = ''' || G_TXN_CREATE || ''' OR Transaction_Type = ''' || G_TXN_ADD || ''' ';
l_dyn_sql_select := l_dyn_sql_select || ' OR Transaction_Type = ''' || G_TXN_SYNC || ''' )';
l_dyn_sql := l_dyn_sql_insert || ' ' || l_dyn_sql_select;
l_dyn_sql_insert := '';
l_dyn_sql_insert := l_dyn_sql_insert || 'INSERT INTO BOM_INVENTORY_COMPS_INTERFACE ( REQUEST_ID, Transaction_Type, Transaction_Id, Process_Flag, ';
l_dyn_sql_insert := l_dyn_sql_insert || 'ORGANIZATION_CODE, ALTERNATE_BOM_DESIGNATOR, COMPONENT_SEQUENCE_ID, ';
l_dyn_sql_insert := l_dyn_sql_insert || 'DELETE_GROUP_NAME, DG_DESCRIPTION, ';
l_dyn_sql_select := '';
l_dyn_sql_select := l_dyn_sql_select || 'SELECT REQUEST_ID, Transaction_Type, Transaction_Id, 1, ' || G_INTF_ORG_CODE || ', ';
l_dyn_sql_select := l_dyn_sql_select || 'DECODE(' || G_INTF_STRUCT_NAME || ',Bom_Globals.Retrieve_Message(''BOM'', ''BOM_PRIMARY''),NULL,' || G_INTF_STRUCT_NAME || '), ';
l_dyn_sql_select := l_dyn_sql_select || G_INTF_COMP_SEQ_ID || ', ';
l_dyn_sql_select := l_dyn_sql_select || '''' || G_DEL_GROUP_NAME || ''', ''' || G_DEL_GROUP_DESC || ''', ' ;
l_dyn_sql_insert := l_dyn_sql_insert || l_bom_col_name(i) || ',';
l_dyn_sql_select := l_dyn_sql_select || 'TO_DATE(' || l_intf_col_name_tbl(i) || ',''DD-MON-YYYY HH24:MI:SS''),';
l_dyn_sql_select := l_dyn_sql_select || l_intf_col_name_tbl(i) || ',';
l_dyn_sql_insert := SUBSTR(l_dyn_sql_insert,0,LENGTH(l_dyn_sql_insert) - 1);
l_dyn_sql_select := SUBSTR(l_dyn_sql_select,0,LENGTH(l_dyn_sql_select) - 1);
l_dyn_sql_insert := l_dyn_sql_insert || ' ) ';
l_dyn_sql_select := l_dyn_sql_select || ' FROM EGO_BULKLOAD_INTF ';
l_dyn_sql_select := l_dyn_sql_select || ' WHERE RESULTFMT_USAGE_ID = :RESULTFMT_USAGE_ID ';
l_dyn_sql_select := l_dyn_sql_select || ' AND PROCESS_STATUS = 1 AND ' || l_parent_column || ' IS NOT NULL ';
l_dyn_sql_select := l_dyn_sql_select || ' AND Transaction_Type = ''' || G_TXN_DELETE || ''' ';
l_dyn_sql := l_dyn_sql_insert || ' ' || l_dyn_sql_select;
FND_FILE.PUT_LINE( FND_FILE.LOG,'Before UPdate of AssemblyType');
UPDATE BOM_BILL_OF_MTLS_INTERFACE set assembly_type = 2
where assembly_type is null;
FND_FILE.PUT_LINE( FND_FILE.LOG,'After UPdate of AssemblyType');
INSERT INTO BOM_BILL_OF_MTLS_INTERFACE
(
ASSEMBLY_ITEM_ID,
ORGANIZATION_ID,
ASSEMBLY_TYPE,
PROCESS_FLAG,
ORGANIZATION_CODE,
COMMON_ORG_CODE,
ITEM_NUMBER,
IMPLEMENTATION_DATE,
ALTERNATE_BOM_DESIGNATOR,
TRANSACTION_TYPE,
REQUEST_ID)
VALUES
(
C_BOM_BILL_PRIMARY_REC.ASSEMBLY_ITEM_ID,
C_BOM_BILL_PRIMARY_REC.ORGANIZATION_ID,
C_BOM_BILL_PRIMARY_REC.ASSEMBLY_TYPE,
C_BOM_BILL_PRIMARY_REC.PROCESS_FLAG,
C_BOM_BILL_PRIMARY_REC.ORGANIZATION_CODE,
C_BOM_BILL_PRIMARY_REC.COMMON_ORG_CODE,
C_BOM_BILL_PRIMARY_REC.ITEM_NUMBER,
C_BOM_BILL_PRIMARY_REC.IMPLEMENTATION_DATE,
NULL,
G_TXN_SYNC,
G_REQUEST_ID);
UPDATE BOM_BILL_OF_MTLS_INTERFACE
SET Transaction_Id = MTL_SYSTEM_ITEMS_INTERFACE_S.NEXTVAL
WHERE REQUEST_ID = G_REQUEST_ID AND PROCESS_FLAG = 1
and Transaction_Id is null;