1: PACKAGE BODY ec_mapping_utils AS
2: -- $Header: ECMAPUTB.pls 120.2 2005/09/29 10:50:29 arsriniv ship $
3:
4: TYPE t_layout_record IS RECORD(
5: interface_column_id ece_interface_columns.interface_column_id%TYPE,
6: record_number ece_interface_columns.record_number%TYPE,
7: position ece_interface_columns.position%TYPE,
8: width ece_interface_columns.width%TYPE,
9: conversion_sequence ece_interface_columns.conversion_sequence%TYPE,
2: -- $Header: ECMAPUTB.pls 120.2 2005/09/29 10:50:29 arsriniv ship $
3:
4: TYPE t_layout_record IS RECORD(
5: interface_column_id ece_interface_columns.interface_column_id%TYPE,
6: record_number ece_interface_columns.record_number%TYPE,
7: position ece_interface_columns.position%TYPE,
8: width ece_interface_columns.width%TYPE,
9: conversion_sequence ece_interface_columns.conversion_sequence%TYPE,
10: record_layout_code ece_interface_columns.record_layout_code%TYPE,
3:
4: TYPE t_layout_record IS RECORD(
5: interface_column_id ece_interface_columns.interface_column_id%TYPE,
6: record_number ece_interface_columns.record_number%TYPE,
7: position ece_interface_columns.position%TYPE,
8: width ece_interface_columns.width%TYPE,
9: conversion_sequence ece_interface_columns.conversion_sequence%TYPE,
10: record_layout_code ece_interface_columns.record_layout_code%TYPE,
11: record_layout_qualifier ece_interface_columns.record_layout_qualifier%TYPE);
4: TYPE t_layout_record IS RECORD(
5: interface_column_id ece_interface_columns.interface_column_id%TYPE,
6: record_number ece_interface_columns.record_number%TYPE,
7: position ece_interface_columns.position%TYPE,
8: width ece_interface_columns.width%TYPE,
9: conversion_sequence ece_interface_columns.conversion_sequence%TYPE,
10: record_layout_code ece_interface_columns.record_layout_code%TYPE,
11: record_layout_qualifier ece_interface_columns.record_layout_qualifier%TYPE);
12:
5: interface_column_id ece_interface_columns.interface_column_id%TYPE,
6: record_number ece_interface_columns.record_number%TYPE,
7: position ece_interface_columns.position%TYPE,
8: width ece_interface_columns.width%TYPE,
9: conversion_sequence ece_interface_columns.conversion_sequence%TYPE,
10: record_layout_code ece_interface_columns.record_layout_code%TYPE,
11: record_layout_qualifier ece_interface_columns.record_layout_qualifier%TYPE);
12:
13: CURSOR c_external_levels_upg(xMap_ID NUMBER) IS
6: record_number ece_interface_columns.record_number%TYPE,
7: position ece_interface_columns.position%TYPE,
8: width ece_interface_columns.width%TYPE,
9: conversion_sequence ece_interface_columns.conversion_sequence%TYPE,
10: record_layout_code ece_interface_columns.record_layout_code%TYPE,
11: record_layout_qualifier ece_interface_columns.record_layout_qualifier%TYPE);
12:
13: CURSOR c_external_levels_upg(xMap_ID NUMBER) IS
14: SELECT external_level_id
7: position ece_interface_columns.position%TYPE,
8: width ece_interface_columns.width%TYPE,
9: conversion_sequence ece_interface_columns.conversion_sequence%TYPE,
10: record_layout_code ece_interface_columns.record_layout_code%TYPE,
11: record_layout_qualifier ece_interface_columns.record_layout_qualifier%TYPE);
12:
13: CURSOR c_external_levels_upg(xMap_ID NUMBER) IS
14: SELECT external_level_id
15: FROM ece_external_levels_upg
208: xInterface_Column_ID_Main IN NUMBER,
209: xInterface_Column_ID_Upg IN NUMBER) IS
210:
211: iXref_Category_ID NUMBER;
212: iKey1 ece_interface_columns.xref_key1_source_column%TYPE;
213: iKey2 ece_interface_columns.xref_key2_source_column%TYPE;
214: iKey3 ece_interface_columns.xref_key3_source_column%TYPE;
215: iKey4 ece_interface_columns.xref_key4_source_column%TYPE;
216: iKey5 ece_interface_columns.xref_key5_source_column%TYPE;
209: xInterface_Column_ID_Upg IN NUMBER) IS
210:
211: iXref_Category_ID NUMBER;
212: iKey1 ece_interface_columns.xref_key1_source_column%TYPE;
213: iKey2 ece_interface_columns.xref_key2_source_column%TYPE;
214: iKey3 ece_interface_columns.xref_key3_source_column%TYPE;
215: iKey4 ece_interface_columns.xref_key4_source_column%TYPE;
216: iKey5 ece_interface_columns.xref_key5_source_column%TYPE;
217:
210:
211: iXref_Category_ID NUMBER;
212: iKey1 ece_interface_columns.xref_key1_source_column%TYPE;
213: iKey2 ece_interface_columns.xref_key2_source_column%TYPE;
214: iKey3 ece_interface_columns.xref_key3_source_column%TYPE;
215: iKey4 ece_interface_columns.xref_key4_source_column%TYPE;
216: iKey5 ece_interface_columns.xref_key5_source_column%TYPE;
217:
218: BEGIN
211: iXref_Category_ID NUMBER;
212: iKey1 ece_interface_columns.xref_key1_source_column%TYPE;
213: iKey2 ece_interface_columns.xref_key2_source_column%TYPE;
214: iKey3 ece_interface_columns.xref_key3_source_column%TYPE;
215: iKey4 ece_interface_columns.xref_key4_source_column%TYPE;
216: iKey5 ece_interface_columns.xref_key5_source_column%TYPE;
217:
218: BEGIN
219: SELECT xref_category_id,
212: iKey1 ece_interface_columns.xref_key1_source_column%TYPE;
213: iKey2 ece_interface_columns.xref_key2_source_column%TYPE;
214: iKey3 ece_interface_columns.xref_key3_source_column%TYPE;
215: iKey4 ece_interface_columns.xref_key4_source_column%TYPE;
216: iKey5 ece_interface_columns.xref_key5_source_column%TYPE;
217:
218: BEGIN
219: SELECT xref_category_id,
220: xref_key1_source_column,
227: iKey2,
228: iKey3,
229: iKey4,
230: iKey5
231: FROM ece_interface_columns
232: WHERE interface_column_id = xInterface_Column_ID_Main;
233:
234: IF iXref_Category_ID IS NOT NULL THEN
235: UPDATE ece_interface_cols_upg
362: eic.conversion_sequence,
363: NVL(eic.record_layout_code,' '),
364: NVL(eic.record_layout_qualifier,' ')
365: INTO v_layout_record
366: FROM ece_interface_columns eic,
367: ece_interface_tables eit
368: WHERE eic.interface_table_id = eit.interface_table_id AND
369: eit.map_id = iMap_ID_Main AND
370: eit.output_level = v_interface_columns_layout_upg.output_level AND
491: IF xDirection='OUT' THEN
492:
493: select count(*)
494: into xExt_Col_Count
495: from ece_interface_columns
496: where record_number like '_9__'
497: and map_id = iMap_ID_Main;
498:
499: ec_debug.pl(0,'xExt_Col_Count',xExt_Col_Count);
560: 1,
561: SYSDATE,
562: 1,
563: 1
564: FROM ece_interface_columns eic,
565: ece_interface_tables eit
566: WHERE eic.map_id=iMap_ID_Main
567: AND eic.record_number like '_9__'
568: AND eic.interface_table_id = eit.interface_table_id
765: xMap_ID IN NUMBER) AS
766:
767: BEGIN
768: FOR v_interface_tables_upg IN c_interface_tables_upg(xMap_ID) LOOP
769: INSERT INTO ece_interface_columns(
770: interface_column_id,
771: interface_table_id,
772: interface_column_name,
773: base_table_name,
1038: eit.map_id = xMap_ID);
1039: ELSE
1040: DELETE FROM ece_column_rules
1041: WHERE interface_column_id IN (SELECT eic.interface_column_id
1042: FROM ece_interface_columns eic,
1043: ece_interface_tables eit
1044: WHERE eic.interface_table_id = eit.interface_table_id AND
1045: eit.map_id = xMap_ID);
1046: END IF;
1083: WHERE map_id = xMap_ID;
1084: END IF;
1085: END ec_delete_external_levels;
1086:
1087: --Deletes from ECE_INTERFACE_COLUMNS.
1088: --WARNING: If you're going to delete from ECE_COLUMN_RULES, do that first or the
1089: -- records in that table will become orphaned!
1090: PROCEDURE ec_delete_interface_columns(
1091: xMap_ID IN NUMBER,
1096: WHERE interface_table_id IN (SELECT interface_table_id
1097: FROM ece_interface_tbls_upg
1098: WHERE map_id = xMap_ID);
1099: ELSE
1100: DELETE FROM ece_interface_columns
1101: WHERE interface_table_id IN (SELECT interface_table_id
1102: FROM ece_interface_tables
1103: WHERE map_id = xMap_ID);
1104: END IF;