86: i_translator_code_pos number;
87: i_location_code_pos number;
88:
89: BEGIN
90: if EC_DEBUG.G_debug_level >= 2 then
91: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA');
92: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
93: ec_debug.pl(3,'i_file_name',i_file_name);
94: ec_debug.pl(3,'i_file_path',i_file_path);
87: i_location_code_pos number;
88:
89: BEGIN
90: if EC_DEBUG.G_debug_level >= 2 then
91: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA');
92: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
93: ec_debug.pl(3,'i_file_name',i_file_name);
94: ec_debug.pl(3,'i_file_path',i_file_path);
95: ec_debug.pl(3,'i_map_id',i_map_id);
88:
89: BEGIN
90: if EC_DEBUG.G_debug_level >= 2 then
91: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA');
92: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
93: ec_debug.pl(3,'i_file_name',i_file_name);
94: ec_debug.pl(3,'i_file_path',i_file_path);
95: ec_debug.pl(3,'i_map_id',i_map_id);
96:
89: BEGIN
90: if EC_DEBUG.G_debug_level >= 2 then
91: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA');
92: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
93: ec_debug.pl(3,'i_file_name',i_file_name);
94: ec_debug.pl(3,'i_file_path',i_file_path);
95: ec_debug.pl(3,'i_map_id',i_map_id);
96:
97: end if;
90: if EC_DEBUG.G_debug_level >= 2 then
91: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA');
92: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
93: ec_debug.pl(3,'i_file_name',i_file_name);
94: ec_debug.pl(3,'i_file_path',i_file_path);
95: ec_debug.pl(3,'i_map_id',i_map_id);
96:
97: end if;
98: /**
91: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA');
92: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
93: ec_debug.pl(3,'i_file_name',i_file_name);
94: ec_debug.pl(3,'i_file_path',i_file_path);
95: ec_debug.pl(3,'i_map_id',i_map_id);
96:
97: end if;
98: /**
99: This program uses two PL/SQL tables defined in the Spec of the Package.
122: select ece_output_runs_s.NEXTVAL
123: into i_run_id
124: from dual;
125: end if;
126: if EC_DEBUG.G_debug_level = 3 then
127: ec_debug.pl(3,'i_run_id',i_run_id);
128: end if;
129: -- Load the Output Definition for all Levels of a Transaction
130:
123: into i_run_id
124: from dual;
125: end if;
126: if EC_DEBUG.G_debug_level = 3 then
127: ec_debug.pl(3,'i_run_id',i_run_id);
128: end if;
129: -- Load the Output Definition for all Levels of a Transaction
130:
131: FOR transaction_level in c_level_info
141: i_level_info(i_level).start_record_number := TO_NUMBER(transaction_level.start_element);
142: i_level_info(i_level).Key_Column_Name := transaction_level.key_column_name;
143: i_level_info(i_level).primary_address_type := transaction_level.primary_address_type;
144:
145: if EC_DEBUG.G_debug_level >= 3 then
146: ec_debug.pl(3,'Key Column Name',i_level_info(i_level).Key_Column_Name);
147: end if;
148:
149: /**
142: i_level_info(i_level).Key_Column_Name := transaction_level.key_column_name;
143: i_level_info(i_level).primary_address_type := transaction_level.primary_address_type;
144:
145: if EC_DEBUG.G_debug_level >= 3 then
146: ec_debug.pl(3,'Key Column Name',i_level_info(i_level).Key_Column_Name);
147: end if;
148:
149: /**
150: Set the Initial Values for each Level
161: i_level_info(i_level).Status := 'NEW';
162: i_level_info(i_level).Key_Column_Position := NULL;
163: i_level_info(i_level).tp_code := NULL;
164:
165: if EC_DEBUG.G_debug_level = 3 then
166: ec_debug.pl(3,'EC','ECE_STAGE_START_RECORD_NUMBER','LEVEL',i_level,'START_RECORD_NUMBER',
167: i_level_info(i_level).start_record_number);
168: end if;
169:
162: i_level_info(i_level).Key_Column_Position := NULL;
163: i_level_info(i_level).tp_code := NULL;
164:
165: if EC_DEBUG.G_debug_level = 3 then
166: ec_debug.pl(3,'EC','ECE_STAGE_START_RECORD_NUMBER','LEVEL',i_level,'START_RECORD_NUMBER',
167: i_level_info(i_level).start_record_number);
168: end if;
169:
170: /**
194: Check for Seed Data. If not Found then , then do not process.
195: **/
196: if i_level = 0
197: then
198: ec_debug.pl(0,'EC','ECE_SEED_DATA_MISSING','TRANSACTION_TYPE',i_transaction_type);
199: /**
200: Set the Retcode for the Concurrent Manager
201: **/
202: EC_UTILS.i_ret_code := 2;
221: from v$nls_parameters
222: where parameter = 'NLS_CHARACTERSET';
223:
224: if sql%notfound then
225: ec_debug.pl(0,'Characterset not not same as defined in Database');
226: end if;
227:
228: if EC_DEBUG.G_debug_level = 3 then
229: ec_debug.pl(3,'i_db_charset',i_db_charset);
224: if sql%notfound then
225: ec_debug.pl(0,'Characterset not not same as defined in Database');
226: end if;
227:
228: if EC_DEBUG.G_debug_level = 3 then
229: ec_debug.pl(3,'i_db_charset',i_db_charset);
230: end if;
231:
232: select 'Y'
225: ec_debug.pl(0,'Characterset not not same as defined in Database');
226: end if;
227:
228: if EC_DEBUG.G_debug_level = 3 then
229: ec_debug.pl(3,'i_db_charset',i_db_charset);
230: end if;
231:
232: select 'Y'
233: into i_fnd_charset_flag
235: where lookup_type = 'FND_ISO_CHARACTER_SET_MAP'
236: and lookup_code = ec_inbound_stage.g_source_charset;
237:
238: if sql%notfound then
239: ec_debug.pl(0,'Invalid Character Set specified in the FND_LOOKUPS');
240: EC_UTILS.i_ret_code := 2;
241: raise EC_UTILS.PROGRAM_EXIT;
242: end if;
243:
280: counter := counter + 1;
281:
282: next_rec_number := to_number(v_next_rec_number);
283:
284: if EC_DEBUG.G_debug_level = 3 then
285: ec_debug.pl(3,'counter',counter);
286: end if;
287:
288: EXCEPTION
281:
282: next_rec_number := to_number(v_next_rec_number);
283:
284: if EC_DEBUG.G_debug_level = 3 then
285: ec_debug.pl(3,'counter',counter);
286: end if;
287:
288: EXCEPTION
289: WHEN VALUE_ERROR then
286: end if;
287:
288: EXCEPTION
289: WHEN VALUE_ERROR then
290: ec_debug.pl(3,'counter',counter);
291:
292: /**
293: If the record number found in the file cannot be converted to a number,
294: i.e. it is a character value, then skip this record
294: i.e. it is a character value, then skip this record
295: **/
296:
297: skip_record_flag := TRUE;
298: ec_debug.pl(0,'EC','ECE_RECORD_NUM_INVALID','RECORD_NUMBER',v_next_rec_number,'LINE_NUMBER',counter);
299:
300: /**
301: Set the Retcode for the Concurrent Manager BUT do not RAISE program exit
302: **/
302: **/
303: EC_UTILS.i_ret_code := 1;
304:
305: WHEN NO_DATA_FOUND then
306: ec_debug.pl(3,'counter',counter);
307:
308: /**
309: If the End Of File is encountered and the Line Counter
310: is zero , that means the File is empty then Exit the loop
317: end_of_file := TRUE;
318: END;
319:
320: IF NOT skip_record_flag THEN
321: if EC_DEBUG.G_debug_level >= 3 then
322: ec_debug.pl(3,'EC','ECE_STAGE_LINE_NUMBER','LINE_NUMBER',counter,'RECORD_NUMBER',next_rec_number);
323: ec_debug.pl(3,'c_current_line',c_current_line);
324: end if;
325: /**
318: END;
319:
320: IF NOT skip_record_flag THEN
321: if EC_DEBUG.G_debug_level >= 3 then
322: ec_debug.pl(3,'EC','ECE_STAGE_LINE_NUMBER','LINE_NUMBER',counter,'RECORD_NUMBER',next_rec_number);
323: ec_debug.pl(3,'c_current_line',c_current_line);
324: end if;
325: /**
326: Match the Record Number of the Line read with the Start Record Number for each level.
319:
320: IF NOT skip_record_flag THEN
321: if EC_DEBUG.G_debug_level >= 3 then
322: ec_debug.pl(3,'EC','ECE_STAGE_LINE_NUMBER','LINE_NUMBER',counter,'RECORD_NUMBER',next_rec_number);
323: ec_debug.pl(3,'c_current_line',c_current_line);
324: end if;
325: /**
326: Match the Record Number of the Line read with the Start Record Number for each level.
327: If matches , then Insert the Data for the previous level.
340: --- Generate Stage Id for each Record from Sequence
341: open seq_stage_id;
342: fetch seq_stage_id into i_stage_id;
343: close seq_stage_id;
344: if EC_DEBUG.G_debug_level >= 3 then
345: ec_debug.pl(3,'i_stage_id',i_stage_id);
346: end if;
347:
348: /**
341: open seq_stage_id;
342: fetch seq_stage_id into i_stage_id;
343: close seq_stage_id;
344: if EC_DEBUG.G_debug_level >= 3 then
345: ec_debug.pl(3,'i_stage_id',i_stage_id);
346: end if;
347:
348: /**
349: The Document Number in all the Levels should be populated only
415:
416:
417: if i_previous_level = 1
418: then
419: if EC_DEBUG.G_debug_level >= 1 then
420: ec_debug.pl(1,'EC','ECE_DOCUMENT_ID','DOCUMENT_ID',
421: i_level_info(i_previous_level).Document_id,
422: 'DOCUMENT_NUMBER',
423: i_level_info(i_previous_level).Document_Number);
416:
417: if i_previous_level = 1
418: then
419: if EC_DEBUG.G_debug_level >= 1 then
420: ec_debug.pl(1,'EC','ECE_DOCUMENT_ID','DOCUMENT_ID',
421: i_level_info(i_previous_level).Document_id,
422: 'DOCUMENT_NUMBER',
423: i_level_info(i_previous_level).Document_Number);
424: end if;
425: end if;
426:
427: /**
428: Un-necessary.
429: ec_debug.pl(2,'EC','ECE_LEVEL','LEVEL',i_previous_level);
430: ec_debug.pl(2,'EC','ECE_SEQUENCE_NUMBER','SEQUENCE_NUMBER',
431: i_level_info(i_previous_level).Line_Number);
432: ec_debug.pl(2,'EC','ECE_STAGE_ID','STAGE_ID',
433: i_level_info(i_previous_level).Stage_Id);
426:
427: /**
428: Un-necessary.
429: ec_debug.pl(2,'EC','ECE_LEVEL','LEVEL',i_previous_level);
430: ec_debug.pl(2,'EC','ECE_SEQUENCE_NUMBER','SEQUENCE_NUMBER',
431: i_level_info(i_previous_level).Line_Number);
432: ec_debug.pl(2,'EC','ECE_STAGE_ID','STAGE_ID',
433: i_level_info(i_previous_level).Stage_Id);
434: ec_debug.pl(2,'EC','ECE_PARENT_STAGE_ID','PARENT_STAGE_ID',
428: Un-necessary.
429: ec_debug.pl(2,'EC','ECE_LEVEL','LEVEL',i_previous_level);
430: ec_debug.pl(2,'EC','ECE_SEQUENCE_NUMBER','SEQUENCE_NUMBER',
431: i_level_info(i_previous_level).Line_Number);
432: ec_debug.pl(2,'EC','ECE_STAGE_ID','STAGE_ID',
433: i_level_info(i_previous_level).Stage_Id);
434: ec_debug.pl(2,'EC','ECE_PARENT_STAGE_ID','PARENT_STAGE_ID',
435: i_level_info(i_previous_level).Parent_Stage_Id);
436: **/
430: ec_debug.pl(2,'EC','ECE_SEQUENCE_NUMBER','SEQUENCE_NUMBER',
431: i_level_info(i_previous_level).Line_Number);
432: ec_debug.pl(2,'EC','ECE_STAGE_ID','STAGE_ID',
433: i_level_info(i_previous_level).Stage_Id);
434: ec_debug.pl(2,'EC','ECE_PARENT_STAGE_ID','PARENT_STAGE_ID',
435: i_level_info(i_previous_level).Parent_Stage_Id);
436: **/
437:
438: if ( end_of_file )
541: Serious Error with File.
542: **/
543: if nvl(next_rec_number,0) <> i_level_info(1).Start_Record_Number
544: then
545: ec_debug.pl(0,'EC','ECE_MISSING_HEADER_RECORD',null);
546: /**
547: Set the Retcode for the Concurrent Manager
548: **/
549: EC_UTILS.i_ret_code := 2;
576: **/
577: if ( nvl(length(c_current_line),0) = 0 )
578: and ( counter = 0 )
579: then
580: ec_debug.pl(0,'EC','ECE_EMPTY_FILE','FILE_NAME',i_file_path||'/'||i_file_name,
581: 'TRANSACTION_TYPE',i_transaction_type);
582: /**
583: Set the Retcode for the Concurrent Manager
584: **/
590:
591: -- Close the Inbound Transaction File
592: utl_file.fclose(u_file_handle);
593:
594: if EC_DEBUG.G_debug_level >= 1 then
595: ec_debug.pl(1,'EC','ECE_NO_LINES_READ','NO_OF_LINES',counter);
596: end if;
597: <
598: if EC_DEBUG.G_debug_level >= 1 then
591: -- Close the Inbound Transaction File
592: utl_file.fclose(u_file_handle);
593:
594: if EC_DEBUG.G_debug_level >= 1 then
595: ec_debug.pl(1,'EC','ECE_NO_LINES_READ','NO_OF_LINES',counter);
596: end if;
597: <
598: if EC_DEBUG.G_debug_level >= 1 then
599: ec_debug.pl(1,'EC','ECE_DOCUMENTS_PROCESSED','NO_OF_DOCS',i_document_number);
594: if EC_DEBUG.G_debug_level >= 1 then
595: ec_debug.pl(1,'EC','ECE_NO_LINES_READ','NO_OF_LINES',counter);
596: end if;
597: <
598: if EC_DEBUG.G_debug_level >= 1 then
599: ec_debug.pl(1,'EC','ECE_DOCUMENTS_PROCESSED','NO_OF_DOCS',i_document_number);
600: ec_debug.pop('EC_INBOUND_STAGE.LOAD_DATA');
601: end if;
602: EXCEPTION
595: ec_debug.pl(1,'EC','ECE_NO_LINES_READ','NO_OF_LINES',counter);
596: end if;
597: <
598: if EC_DEBUG.G_debug_level >= 1 then
599: ec_debug.pl(1,'EC','ECE_DOCUMENTS_PROCESSED','NO_OF_DOCS',i_document_number);
600: ec_debug.pop('EC_INBOUND_STAGE.LOAD_DATA');
601: end if;
602: EXCEPTION
603: WHEN UTL_FILE.write_error THEN
596: end if;
597: <
598: if EC_DEBUG.G_debug_level >= 1 then
599: ec_debug.pl(1,'EC','ECE_DOCUMENTS_PROCESSED','NO_OF_DOCS',i_document_number);
600: ec_debug.pop('EC_INBOUND_STAGE.LOAD_DATA');
601: end if;
602: EXCEPTION
603: WHEN UTL_FILE.write_error THEN
604: EC_UTILS.i_ret_code :=2;
601: end if;
602: EXCEPTION
603: WHEN UTL_FILE.write_error THEN
604: EC_UTILS.i_ret_code :=2;
605: ec_debug.pl(0,'EC','ECE_UTL_WRITE_ERROR',null);
606: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
607: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
608: utl_file.fclose(u_file_handle);
609: raise EC_UTILS.PROGRAM_EXIT;
602: EXCEPTION
603: WHEN UTL_FILE.write_error THEN
604: EC_UTILS.i_ret_code :=2;
605: ec_debug.pl(0,'EC','ECE_UTL_WRITE_ERROR',null);
606: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
607: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
608: utl_file.fclose(u_file_handle);
609: raise EC_UTILS.PROGRAM_EXIT;
610: WHEN UTL_FILE.read_error THEN
603: WHEN UTL_FILE.write_error THEN
604: EC_UTILS.i_ret_code :=2;
605: ec_debug.pl(0,'EC','ECE_UTL_WRITE_ERROR',null);
606: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
607: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
608: utl_file.fclose(u_file_handle);
609: raise EC_UTILS.PROGRAM_EXIT;
610: WHEN UTL_FILE.read_error THEN
611: EC_UTILS.i_ret_code :=2;
608: utl_file.fclose(u_file_handle);
609: raise EC_UTILS.PROGRAM_EXIT;
610: WHEN UTL_FILE.read_error THEN
611: EC_UTILS.i_ret_code :=2;
612: ec_debug.pl(0,'EC','ECE_UTL_READ_ERROR',null);
613: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
614: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
615: utl_file.fclose(u_file_handle);
616: raise EC_UTILS.PROGRAM_EXIT;
609: raise EC_UTILS.PROGRAM_EXIT;
610: WHEN UTL_FILE.read_error THEN
611: EC_UTILS.i_ret_code :=2;
612: ec_debug.pl(0,'EC','ECE_UTL_READ_ERROR',null);
613: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
614: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
615: utl_file.fclose(u_file_handle);
616: raise EC_UTILS.PROGRAM_EXIT;
617: WHEN UTL_FILE.invalid_path THEN
610: WHEN UTL_FILE.read_error THEN
611: EC_UTILS.i_ret_code :=2;
612: ec_debug.pl(0,'EC','ECE_UTL_READ_ERROR',null);
613: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
614: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
615: utl_file.fclose(u_file_handle);
616: raise EC_UTILS.PROGRAM_EXIT;
617: WHEN UTL_FILE.invalid_path THEN
618: EC_UTILS.i_ret_code :=2;
615: utl_file.fclose(u_file_handle);
616: raise EC_UTILS.PROGRAM_EXIT;
617: WHEN UTL_FILE.invalid_path THEN
618: EC_UTILS.i_ret_code :=2;
619: ec_debug.pl(0,'EC','ECE_UTL_INVALID_PATH',null);
620: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
621: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
622: utl_file.fclose(u_file_handle);
623: raise EC_UTILS.PROGRAM_EXIT;
616: raise EC_UTILS.PROGRAM_EXIT;
617: WHEN UTL_FILE.invalid_path THEN
618: EC_UTILS.i_ret_code :=2;
619: ec_debug.pl(0,'EC','ECE_UTL_INVALID_PATH',null);
620: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
621: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
622: utl_file.fclose(u_file_handle);
623: raise EC_UTILS.PROGRAM_EXIT;
624: WHEN UTL_FILE.invalid_mode THEN
617: WHEN UTL_FILE.invalid_path THEN
618: EC_UTILS.i_ret_code :=2;
619: ec_debug.pl(0,'EC','ECE_UTL_INVALID_PATH',null);
620: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
621: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
622: utl_file.fclose(u_file_handle);
623: raise EC_UTILS.PROGRAM_EXIT;
624: WHEN UTL_FILE.invalid_mode THEN
625: EC_UTILS.i_ret_code :=2;
622: utl_file.fclose(u_file_handle);
623: raise EC_UTILS.PROGRAM_EXIT;
624: WHEN UTL_FILE.invalid_mode THEN
625: EC_UTILS.i_ret_code :=2;
626: ec_debug.pl(0,'EC','ECE_UTL_INVALID_MODE',null);
627: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
628: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
629: utl_file.fclose(u_file_handle);
630: raise EC_UTILS.PROGRAM_EXIT;
623: raise EC_UTILS.PROGRAM_EXIT;
624: WHEN UTL_FILE.invalid_mode THEN
625: EC_UTILS.i_ret_code :=2;
626: ec_debug.pl(0,'EC','ECE_UTL_INVALID_MODE',null);
627: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
628: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
629: utl_file.fclose(u_file_handle);
630: raise EC_UTILS.PROGRAM_EXIT;
631: WHEN UTL_FILE.invalid_operation THEN
624: WHEN UTL_FILE.invalid_mode THEN
625: EC_UTILS.i_ret_code :=2;
626: ec_debug.pl(0,'EC','ECE_UTL_INVALID_MODE',null);
627: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
628: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
629: utl_file.fclose(u_file_handle);
630: raise EC_UTILS.PROGRAM_EXIT;
631: WHEN UTL_FILE.invalid_operation THEN
632: EC_UTILS.i_ret_code :=2;
629: utl_file.fclose(u_file_handle);
630: raise EC_UTILS.PROGRAM_EXIT;
631: WHEN UTL_FILE.invalid_operation THEN
632: EC_UTILS.i_ret_code :=2;
633: ec_debug.pl(0,'EC','ECE_UTL_INVALID_OPERATION',null);
634: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
635: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
636: utl_file.fclose(u_file_handle);
637: raise EC_UTILS.PROGRAM_EXIT;
630: raise EC_UTILS.PROGRAM_EXIT;
631: WHEN UTL_FILE.invalid_operation THEN
632: EC_UTILS.i_ret_code :=2;
633: ec_debug.pl(0,'EC','ECE_UTL_INVALID_OPERATION',null);
634: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
635: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
636: utl_file.fclose(u_file_handle);
637: raise EC_UTILS.PROGRAM_EXIT;
638: WHEN UTL_FILE.invalid_filehandle THEN
631: WHEN UTL_FILE.invalid_operation THEN
632: EC_UTILS.i_ret_code :=2;
633: ec_debug.pl(0,'EC','ECE_UTL_INVALID_OPERATION',null);
634: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
635: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
636: utl_file.fclose(u_file_handle);
637: raise EC_UTILS.PROGRAM_EXIT;
638: WHEN UTL_FILE.invalid_filehandle THEN
639: EC_UTILS.i_ret_code :=2;
636: utl_file.fclose(u_file_handle);
637: raise EC_UTILS.PROGRAM_EXIT;
638: WHEN UTL_FILE.invalid_filehandle THEN
639: EC_UTILS.i_ret_code :=2;
640: ec_debug.pl(0,'EC','ECE_UTL_INVALID_FILEHANDLE',null);
641: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
642: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
643: utl_file.fclose(u_file_handle);
644: raise EC_UTILS.PROGRAM_EXIT;
637: raise EC_UTILS.PROGRAM_EXIT;
638: WHEN UTL_FILE.invalid_filehandle THEN
639: EC_UTILS.i_ret_code :=2;
640: ec_debug.pl(0,'EC','ECE_UTL_INVALID_FILEHANDLE',null);
641: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
642: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
643: utl_file.fclose(u_file_handle);
644: raise EC_UTILS.PROGRAM_EXIT;
645: WHEN UTL_FILE.internal_error THEN
638: WHEN UTL_FILE.invalid_filehandle THEN
639: EC_UTILS.i_ret_code :=2;
640: ec_debug.pl(0,'EC','ECE_UTL_INVALID_FILEHANDLE',null);
641: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
642: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
643: utl_file.fclose(u_file_handle);
644: raise EC_UTILS.PROGRAM_EXIT;
645: WHEN UTL_FILE.internal_error THEN
646: EC_UTILS.i_ret_code :=2;
643: utl_file.fclose(u_file_handle);
644: raise EC_UTILS.PROGRAM_EXIT;
645: WHEN UTL_FILE.internal_error THEN
646: EC_UTILS.i_ret_code :=2;
647: ec_debug.pl(0,'EC','ECE_UTL_INTERNAL_ERROR',null);
648: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
649: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
650: utl_file.fclose(u_file_handle);
651: raise EC_UTILS.PROGRAM_EXIT;
644: raise EC_UTILS.PROGRAM_EXIT;
645: WHEN UTL_FILE.internal_error THEN
646: EC_UTILS.i_ret_code :=2;
647: ec_debug.pl(0,'EC','ECE_UTL_INTERNAL_ERROR',null);
648: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
649: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
650: utl_file.fclose(u_file_handle);
651: raise EC_UTILS.PROGRAM_EXIT;
652: WHEN EC_UTILS.PROGRAM_EXIT THEN
645: WHEN UTL_FILE.internal_error THEN
646: EC_UTILS.i_ret_code :=2;
647: ec_debug.pl(0,'EC','ECE_UTL_INTERNAL_ERROR',null);
648: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
649: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
650: utl_file.fclose(u_file_handle);
651: raise EC_UTILS.PROGRAM_EXIT;
652: WHEN EC_UTILS.PROGRAM_EXIT THEN
653: raise;
652: WHEN EC_UTILS.PROGRAM_EXIT THEN
653: raise;
654: WHEN OTHERS THEN
655: EC_UTILS.i_ret_code :=2;
656: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
657: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
658: utl_file.fclose(u_file_handle);
659: raise EC_UTILS.PROGRAM_EXIT;
660: END Load_Data;
653: raise;
654: WHEN OTHERS THEN
655: EC_UTILS.i_ret_code :=2;
656: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA');
657: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
658: utl_file.fclose(u_file_handle);
659: raise EC_UTILS.PROGRAM_EXIT;
660: END Load_Data;
661:
679: b_match_found BOOLEAN := FALSE;
680: i_total_unit NUMBER :=0;
681:
682: begin
683: if EC_DEBUG.G_debug_level >= 2 then
684: ec_debug.push('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
685: ec_debug.pl(3,'i_current_level',i_current_level);
686: ec_debug.pl(3,'i_record_num',i_record_num);
687: end if;
680: i_total_unit NUMBER :=0;
681:
682: begin
683: if EC_DEBUG.G_debug_level >= 2 then
684: ec_debug.push('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
685: ec_debug.pl(3,'i_current_level',i_current_level);
686: ec_debug.pl(3,'i_record_num',i_record_num);
687: end if;
688: for k in i_next_file_pos..i_stage_record_type.count
681:
682: begin
683: if EC_DEBUG.G_debug_level >= 2 then
684: ec_debug.push('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
685: ec_debug.pl(3,'i_current_level',i_current_level);
686: ec_debug.pl(3,'i_record_num',i_record_num);
687: end if;
688: for k in i_next_file_pos..i_stage_record_type.count
689: loop
682: begin
683: if EC_DEBUG.G_debug_level >= 2 then
684: ec_debug.push('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
685: ec_debug.pl(3,'i_current_level',i_current_level);
686: ec_debug.pl(3,'i_record_num',i_record_num);
687: end if;
688: for k in i_next_file_pos..i_stage_record_type.count
689: loop
690: if i_stage_record_type(k).external_level = i_current_level
706: end loop;
707: i_next_file_pos := NVL(i_file_pos + i_total_unit, i_next_file_pos);
708: i_total_rec_unit := i_total_unit;
709:
710: if EC_DEBUG.G_debug_level >= 2 then
711: ec_debug.pl(3,'i_file_pos',i_file_pos);
712: ec_debug.pl(3,'i_next_file_pos',i_next_file_pos);
713: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
714: ec_debug.pl(3,'b_match_found',b_match_found);
707: i_next_file_pos := NVL(i_file_pos + i_total_unit, i_next_file_pos);
708: i_total_rec_unit := i_total_unit;
709:
710: if EC_DEBUG.G_debug_level >= 2 then
711: ec_debug.pl(3,'i_file_pos',i_file_pos);
712: ec_debug.pl(3,'i_next_file_pos',i_next_file_pos);
713: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
714: ec_debug.pl(3,'b_match_found',b_match_found);
715: ec_debug.pop('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
708: i_total_rec_unit := i_total_unit;
709:
710: if EC_DEBUG.G_debug_level >= 2 then
711: ec_debug.pl(3,'i_file_pos',i_file_pos);
712: ec_debug.pl(3,'i_next_file_pos',i_next_file_pos);
713: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
714: ec_debug.pl(3,'b_match_found',b_match_found);
715: ec_debug.pop('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
716: end if;
709:
710: if EC_DEBUG.G_debug_level >= 2 then
711: ec_debug.pl(3,'i_file_pos',i_file_pos);
712: ec_debug.pl(3,'i_next_file_pos',i_next_file_pos);
713: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
714: ec_debug.pl(3,'b_match_found',b_match_found);
715: ec_debug.pop('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
716: end if;
717: return b_match_found;
710: if EC_DEBUG.G_debug_level >= 2 then
711: ec_debug.pl(3,'i_file_pos',i_file_pos);
712: ec_debug.pl(3,'i_next_file_pos',i_next_file_pos);
713: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
714: ec_debug.pl(3,'b_match_found',b_match_found);
715: ec_debug.pop('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
716: end if;
717: return b_match_found;
718: EXCEPTION
711: ec_debug.pl(3,'i_file_pos',i_file_pos);
712: ec_debug.pl(3,'i_next_file_pos',i_next_file_pos);
713: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
714: ec_debug.pl(3,'b_match_found',b_match_found);
715: ec_debug.pop('EC_INBOUND_STAGE.MATCH_RECORD_NUM');
716: end if;
717: return b_match_found;
718: EXCEPTION
719: WHEN OTHERS then
716: end if;
717: return b_match_found;
718: EXCEPTION
719: WHEN OTHERS then
720: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.MATCH_RECORD_NUM');
721: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
722: EC_UTILS.i_ret_code:=2;
723: raise EC_UTILS.PROGRAM_EXIT;
724: end match_record_num;
717: return b_match_found;
718: EXCEPTION
719: WHEN OTHERS then
720: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.MATCH_RECORD_NUM');
721: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
722: EC_UTILS.i_ret_code:=2;
723: raise EC_UTILS.PROGRAM_EXIT;
724: end match_record_num;
725:
745: i_data_file_value Varchar2(500);
746: i_new_file_value Varchar2(500);
747:
748: begin
749: if EC_DEBUG.G_debug_level >= 2 then
750: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
751: ec_debug.pl(3,'i_file_pos',i_file_pos);
752: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
753: ec_debug.pl(3,'c_current_line',c_current_line);
746: i_new_file_value Varchar2(500);
747:
748: begin
749: if EC_DEBUG.G_debug_level >= 2 then
750: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
751: ec_debug.pl(3,'i_file_pos',i_file_pos);
752: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
753: ec_debug.pl(3,'c_current_line',c_current_line);
754: end if;
747:
748: begin
749: if EC_DEBUG.G_debug_level >= 2 then
750: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
751: ec_debug.pl(3,'i_file_pos',i_file_pos);
752: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
753: ec_debug.pl(3,'c_current_line',c_current_line);
754: end if;
755: -- bug 4555935
748: begin
749: if EC_DEBUG.G_debug_level >= 2 then
750: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
751: ec_debug.pl(3,'i_file_pos',i_file_pos);
752: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
753: ec_debug.pl(3,'c_current_line',c_current_line);
754: end if;
755: -- bug 4555935
756: c_current_line := replace(c_current_line,fnd_global.local_chr(13));
749: if EC_DEBUG.G_debug_level >= 2 then
750: ec_debug.push('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
751: ec_debug.pl(3,'i_file_pos',i_file_pos);
752: ec_debug.pl(3,'i_total_rec_unit',i_total_rec_unit);
753: ec_debug.pl(3,'c_current_line',c_current_line);
754: end if;
755: -- bug 4555935
756: c_current_line := replace(c_current_line,fnd_global.local_chr(13));
757: c_current_line := replace(c_current_line,fnd_global.local_chr(10));
794: end loop;
795: end if;
796: end if;
797:
798: if EC_DEBUG.G_debug_level >= 2 then
799: ec_debug.pop('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
800: end if;
801: EXCEPTION
802: WHEN OTHERS then
795: end if;
796: end if;
797:
798: if EC_DEBUG.G_debug_level >= 2 then
799: ec_debug.pop('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
800: end if;
801: EXCEPTION
802: WHEN OTHERS then
803: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
799: ec_debug.pop('EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
800: end if;
801: EXCEPTION
802: WHEN OTHERS then
803: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
804: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
805: EC_UTILS.i_ret_code:=2;
806: raise EC_UTILS.PROGRAM_EXIT;
807: end load_data_from_file;
800: end if;
801: EXCEPTION
802: WHEN OTHERS then
803: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.LOAD_DATA_FROM_FILE');
804: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
805: EC_UTILS.i_ret_code:=2;
806: raise EC_UTILS.PROGRAM_EXIT;
807: end load_data_from_file;
808:
843: m_counter number := i_counter;
844: i_previous_level NUMBER := 0;
845:
846: BEGIN
847: if EC_DEBUG.G_debug_level >= 2 then
848: ec_debug.push('EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
849: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
850: ec_debug.pl(3,'i_Level',i_level);
851: ec_debug.pl(3,'EC','ECE_INTERFACE_MAPPING','TRANSACTION_TYPE',i_transaction_type,'LEVEL',i_level);
844: i_previous_level NUMBER := 0;
845:
846: BEGIN
847: if EC_DEBUG.G_debug_level >= 2 then
848: ec_debug.push('EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
849: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
850: ec_debug.pl(3,'i_Level',i_level);
851: ec_debug.pl(3,'EC','ECE_INTERFACE_MAPPING','TRANSACTION_TYPE',i_transaction_type,'LEVEL',i_level);
852: end if;
845:
846: BEGIN
847: if EC_DEBUG.G_debug_level >= 2 then
848: ec_debug.push('EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
849: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
850: ec_debug.pl(3,'i_Level',i_level);
851: ec_debug.pl(3,'EC','ECE_INTERFACE_MAPPING','TRANSACTION_TYPE',i_transaction_type,'LEVEL',i_level);
852: end if;
853:
846: BEGIN
847: if EC_DEBUG.G_debug_level >= 2 then
848: ec_debug.push('EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
849: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
850: ec_debug.pl(3,'i_Level',i_level);
851: ec_debug.pl(3,'EC','ECE_INTERFACE_MAPPING','TRANSACTION_TYPE',i_transaction_type,'LEVEL',i_level);
852: end if;
853:
854: FOR transaction_mapping in c_file_mapping
847: if EC_DEBUG.G_debug_level >= 2 then
848: ec_debug.push('EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
849: ec_debug.pl(3,'i_transaction_type',i_transaction_type);
850: ec_debug.pl(3,'i_Level',i_level);
851: ec_debug.pl(3,'EC','ECE_INTERFACE_MAPPING','TRANSACTION_TYPE',i_transaction_type,'LEVEL',i_level);
852: end if;
853:
854: FOR transaction_mapping in c_file_mapping
855: (
865: i_stage_record_type(i_counter).record_number := transaction_mapping.record_number;
866: i_stage_record_type(i_counter).position := transaction_mapping.position;
867: i_stage_record_type(i_counter).width := transaction_mapping.width;
868:
869: if EC_DEBUG.G_debug_level >= 3 then
870: ec_debug.pl
871: (
872: 3,
873: i_counter||'|'||
866: i_stage_record_type(i_counter).position := transaction_mapping.position;
867: i_stage_record_type(i_counter).width := transaction_mapping.width;
868:
869: if EC_DEBUG.G_debug_level >= 3 then
870: ec_debug.pl
871: (
872: 3,
873: i_counter||'|'||
874: i_level||'|'||
888: := i_level_info(1).Key_column_name;
889: ece_flatfile_pvt.t_tran_attribute_tbl(1).position
890: := i_counter;
891: i_level_info(1).key_column_position := i_counter;
892: if EC_DEBUG.G_debug_level >= 3 then
893: ec_debug.pl(3,'Key_Column_Position',i_level_info(1).Key_Column_position);
894: end if;
895: end if;
896: end if;
889: ece_flatfile_pvt.t_tran_attribute_tbl(1).position
890: := i_counter;
891: i_level_info(1).key_column_position := i_counter;
892: if EC_DEBUG.G_debug_level >= 3 then
893: ec_debug.pl(3,'Key_Column_Position',i_level_info(1).Key_Column_position);
894: end if;
895: end if;
896: end if;
897:
897:
898: end loop;
899:
900: if i_counter = m_counter then
901: ec_debug.pl(0,'EC','ECE_SEED_NOT_LEVEL','TRANSACTION_TYPE',i_transaction_type,'LEVEL',i_level);
902: /**
903: Set the Retcode for the Concurrent Manager to Error.
904: **/
905: EC_UTILS.i_ret_code := 2;
905: EC_UTILS.i_ret_code := 2;
906: raise EC_UTILS.PROGRAM_EXIT;
907: end if;
908:
909: if EC_DEBUG.G_debug_level >= 2 then
910: ec_debug.pop('EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
911: end if;
912: EXCEPTION
913: WHEN EC_UTILS.PROGRAM_EXIT then
906: raise EC_UTILS.PROGRAM_EXIT;
907: end if;
908:
909: if EC_DEBUG.G_debug_level >= 2 then
910: ec_debug.pop('EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
911: end if;
912: EXCEPTION
913: WHEN EC_UTILS.PROGRAM_EXIT then
914: raise;
912: EXCEPTION
913: WHEN EC_UTILS.PROGRAM_EXIT then
914: raise;
915: WHEN OTHERS then
916: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
917: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
918: EC_UTILS.i_ret_code:=2;
919: raise EC_UTILS.PROGRAM_EXIT;
920: END populate_flatfile_mapping;
913: WHEN EC_UTILS.PROGRAM_EXIT then
914: raise;
915: WHEN OTHERS then
916: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.POPULATE_FLATFILE_MAPPING');
917: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
918: EC_UTILS.i_ret_code:=2;
919: raise EC_UTILS.PROGRAM_EXIT;
920: END populate_flatfile_mapping;
921:
939: dummy INTEGER;
940: error_position integer;
941:
942: BEGIN
943: if EC_DEBUG.G_debug_level >= 2 then
944: ec_debug.push('EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
945: ec_debug.pl(3,'i_level',i_level);
946: ec_debug.pl(3,'i_insert_cursor',i_insert_cursor);
947: end if;
940: error_position integer;
941:
942: BEGIN
943: if EC_DEBUG.G_debug_level >= 2 then
944: ec_debug.push('EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
945: ec_debug.pl(3,'i_level',i_level);
946: ec_debug.pl(3,'i_insert_cursor',i_insert_cursor);
947: end if;
948:
941:
942: BEGIN
943: if EC_DEBUG.G_debug_level >= 2 then
944: ec_debug.push('EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
945: ec_debug.pl(3,'i_level',i_level);
946: ec_debug.pl(3,'i_insert_cursor',i_insert_cursor);
947: end if;
948:
949: if i_insert_cursor = 0
942: BEGIN
943: if EC_DEBUG.G_debug_level >= 2 then
944: ec_debug.push('EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
945: ec_debug.pl(3,'i_level',i_level);
946: ec_debug.pl(3,'i_insert_cursor',i_insert_cursor);
947: end if;
948:
949: if i_insert_cursor = 0
950: then
985: cInsert_stmt := RTRIM(cInsert_stmt,',')||')';
986: cValue_stmt := RTRIM(cValue_stmt,',')||')';
987: cInsert_stmt := cInsert_stmt||cValue_stmt;
988:
989: if EC_DEBUG.G_debug_level >= 3 then
990: ec_debug.pl(3,'EC','ECE_STAGE_INSERT_LEVEL','LEVEL',i_level,null);
991: ec_debug.pl(3,cInsert_stmt);
992: end if;
993:
986: cValue_stmt := RTRIM(cValue_stmt,',')||')';
987: cInsert_stmt := cInsert_stmt||cValue_stmt;
988:
989: if EC_DEBUG.G_debug_level >= 3 then
990: ec_debug.pl(3,'EC','ECE_STAGE_INSERT_LEVEL','LEVEL',i_level,null);
991: ec_debug.pl(3,cInsert_stmt);
992: end if;
993:
994: /**
987: cInsert_stmt := cInsert_stmt||cValue_stmt;
988:
989: if EC_DEBUG.G_debug_level >= 3 then
990: ec_debug.pl(3,'EC','ECE_STAGE_INSERT_LEVEL','LEVEL',i_level,null);
991: ec_debug.pl(3,cInsert_stmt);
992: end if;
993:
994: /**
995: Open the cursor and parse the SQL Statement. Trap any parsing error and report
1000: dbms_sql.parse(i_Insert_Cursor,cInsert_stmt,dbms_sql.native);
1001: exception
1002: when others then
1003: error_position := dbms_sql.last_error_position;
1004: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1005: ece_error_handling_pvt.print_parse_error (error_position,cInsert_stmt);
1006: EC_UTILS.i_ret_code :=2;
1007: raise EC_UTILS.PROGRAM_EXIT;
1008: end;
1039: dbms_sql.bind_variable (i_Insert_Cursor,'w3',sysdate);
1040: dbms_sql.bind_variable (i_Insert_Cursor,'w4',fnd_global.user_id);
1041: */
1042:
1043: if EC_DEBUG.G_debug_level >= 3 then
1044: ec_debug.pl(3,'STAGE_ID',i_level_info(i_level).Stage_Id);
1045: ec_debug.pl(3,'DOCUMENT_ID',i_level_info(i_level).Document_Id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1040: dbms_sql.bind_variable (i_Insert_Cursor,'w4',fnd_global.user_id);
1041: */
1042:
1043: if EC_DEBUG.G_debug_level >= 3 then
1044: ec_debug.pl(3,'STAGE_ID',i_level_info(i_level).Stage_Id);
1045: ec_debug.pl(3,'DOCUMENT_ID',i_level_info(i_level).Document_Id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1041: */
1042:
1043: if EC_DEBUG.G_debug_level >= 3 then
1044: ec_debug.pl(3,'STAGE_ID',i_level_info(i_level).Stage_Id);
1045: ec_debug.pl(3,'DOCUMENT_ID',i_level_info(i_level).Document_Id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1042:
1043: if EC_DEBUG.G_debug_level >= 3 then
1044: ec_debug.pl(3,'STAGE_ID',i_level_info(i_level).Stage_Id);
1045: ec_debug.pl(3,'DOCUMENT_ID',i_level_info(i_level).Document_Id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1043: if EC_DEBUG.G_debug_level >= 3 then
1044: ec_debug.pl(3,'STAGE_ID',i_level_info(i_level).Stage_Id);
1045: ec_debug.pl(3,'DOCUMENT_ID',i_level_info(i_level).Document_Id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1044: ec_debug.pl(3,'STAGE_ID',i_level_info(i_level).Stage_Id);
1045: ec_debug.pl(3,'DOCUMENT_ID',i_level_info(i_level).Document_Id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1045: ec_debug.pl(3,'DOCUMENT_ID',i_level_info(i_level).Document_Id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1046: ec_debug.pl(3,'TRANSACTION_TYPE',i_level_info(i_level).Transaction_Type);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1047: ec_debug.pl(3,'TRANSACTION_LEVEL',i_level);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1048: ec_debug.pl(3,'LINE_NUMBER',i_level_info(i_level).Line_Number);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1056: ec_debug.pl(3,'LAST_UPDATE_DATE',sysdate);
1049: ec_debug.pl(3,'PARENT_STAGE_ID',i_level_info(i_level).Parent_Stage_Id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1056: ec_debug.pl(3,'LAST_UPDATE_DATE',sysdate);
1057: ec_debug.pl(3,'LAST_UPDATED_BY',fnd_global.user_id);
1050: ec_debug.pl(3,'RUN_ID',i_level_info(i_level).Run_Id);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1056: ec_debug.pl(3,'LAST_UPDATE_DATE',sysdate);
1057: ec_debug.pl(3,'LAST_UPDATED_BY',fnd_global.user_id);
1058: ec_debug.pl(3,'STATUS',i_level_info(i_level).Status);
1051: ec_debug.pl(3,'DOCUMENT_NUMBER',i_level_info(i_level).Document_Number);
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1056: ec_debug.pl(3,'LAST_UPDATE_DATE',sysdate);
1057: ec_debug.pl(3,'LAST_UPDATED_BY',fnd_global.user_id);
1058: ec_debug.pl(3,'STATUS',i_level_info(i_level).Status);
1059: end if;
1052: ec_debug.pl(3,'TP_CODE',i_level_info(i_level).Tp_Code);
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1056: ec_debug.pl(3,'LAST_UPDATE_DATE',sysdate);
1057: ec_debug.pl(3,'LAST_UPDATED_BY',fnd_global.user_id);
1058: ec_debug.pl(3,'STATUS',i_level_info(i_level).Status);
1059: end if;
1060: -- Bind values for Staging Columns mapped to the Flat File
1053: ec_debug.pl(3,'MAP_ID',i_map_id);
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1056: ec_debug.pl(3,'LAST_UPDATE_DATE',sysdate);
1057: ec_debug.pl(3,'LAST_UPDATED_BY',fnd_global.user_id);
1058: ec_debug.pl(3,'STATUS',i_level_info(i_level).Status);
1059: end if;
1060: -- Bind values for Staging Columns mapped to the Flat File
1061: for k in 1..i_stage_record_type.COUNT
1054: ec_debug.pl(3,'CREATION_DATE',sysdate);
1055: ec_debug.pl(3,'CREATED_BY',fnd_global.user_id);
1056: ec_debug.pl(3,'LAST_UPDATE_DATE',sysdate);
1057: ec_debug.pl(3,'LAST_UPDATED_BY',fnd_global.user_id);
1058: ec_debug.pl(3,'STATUS',i_level_info(i_level).Status);
1059: end if;
1060: -- Bind values for Staging Columns mapped to the Flat File
1061: for k in 1..i_stage_record_type.COUNT
1062: loop
1076: )
1077: );
1078: */
1079:
1080: if EC_DEBUG.G_debug_level = 3 then
1081: ec_debug.pl(3,upper(i_stage_record_type(k).staging_column)||'-'||
1082: upper(i_stage_record_type(k).interface_column_name),
1083: i_stage_record_type(k).value);
1084: end if;
1077: );
1078: */
1079:
1080: if EC_DEBUG.G_debug_level = 3 then
1081: ec_debug.pl(3,upper(i_stage_record_type(k).staging_column)||'-'||
1082: upper(i_stage_record_type(k).interface_column_name),
1083: i_stage_record_type(k).value);
1084: end if;
1085: end if;
1086: end loop;
1087:
1088: dummy := dbms_sql.execute(i_Insert_Cursor);
1089: if dummy = 1 then
1090: if EC_DEBUG.G_debug_level = 3 then
1091: ec_debug.pl(3,'EC','ECE_STAGE_INSERTED',null);
1092: end if;
1093: i_data_status_flag := TRUE; --Bug 2164672
1094: else
1087:
1088: dummy := dbms_sql.execute(i_Insert_Cursor);
1089: if dummy = 1 then
1090: if EC_DEBUG.G_debug_level = 3 then
1091: ec_debug.pl(3,'EC','ECE_STAGE_INSERTED',null);
1092: end if;
1093: i_data_status_flag := TRUE; --Bug 2164672
1094: else
1095: EC_UTILS.i_ret_code :=2;
1097: end if;
1098:
1099: exception
1100: when others then
1101: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL',
1102: 'EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1103: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1104: ec_debug.pl(0,'EC','ECE_ERROR_SQL',null);
1105: ec_debug.pl(0,cInsert_stmt);
1099: exception
1100: when others then
1101: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL',
1102: 'EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1103: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1104: ec_debug.pl(0,'EC','ECE_ERROR_SQL',null);
1105: ec_debug.pl(0,cInsert_stmt);
1106:
1107: EC_UTILS.i_ret_code :=2;
1100: when others then
1101: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL',
1102: 'EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1103: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1104: ec_debug.pl(0,'EC','ECE_ERROR_SQL',null);
1105: ec_debug.pl(0,cInsert_stmt);
1106:
1107: EC_UTILS.i_ret_code :=2;
1108: raise EC_UTILS.PROGRAM_EXIT;
1101: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL',
1102: 'EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1103: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1104: ec_debug.pl(0,'EC','ECE_ERROR_SQL',null);
1105: ec_debug.pl(0,cInsert_stmt);
1106:
1107: EC_UTILS.i_ret_code :=2;
1108: raise EC_UTILS.PROGRAM_EXIT;
1109: end;
1108: raise EC_UTILS.PROGRAM_EXIT;
1109: end;
1110: end if;
1111:
1112: if EC_DEBUG.G_debug_level >= 2 then
1113: ec_debug.pl(3,'i_insert_cursor',i_insert_cursor);
1114: ec_debug.pop('EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1115: end if;
1116: EXCEPTION
1109: end;
1110: end if;
1111:
1112: if EC_DEBUG.G_debug_level >= 2 then
1113: ec_debug.pl(3,'i_insert_cursor',i_insert_cursor);
1114: ec_debug.pop('EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1115: end if;
1116: EXCEPTION
1117: WHEN EC_UTILS.PROGRAM_EXIT then
1110: end if;
1111:
1112: if EC_DEBUG.G_debug_level >= 2 then
1113: ec_debug.pl(3,'i_insert_cursor',i_insert_cursor);
1114: ec_debug.pop('EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1115: end if;
1116: EXCEPTION
1117: WHEN EC_UTILS.PROGRAM_EXIT then
1118: raise;
1120: IF dbms_sql.IS_OPEN(i_insert_cursor)
1121: then
1122: dbms_sql.close_cursor(i_insert_cursor);
1123: end if;
1124: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1125: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1126: EC_UTILS.i_ret_code:=2;
1127: raise EC_UTILS.PROGRAM_EXIT;
1128: END Insert_Into_Stage_Table;
1121: then
1122: dbms_sql.close_cursor(i_insert_cursor);
1123: end if;
1124: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.INSERT_INTO_STAGE_TABLE');
1125: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1126: EC_UTILS.i_ret_code:=2;
1127: raise EC_UTILS.PROGRAM_EXIT;
1128: END Insert_Into_Stage_Table;
1129:
1245:
1246: counter number :=0;
1247: i_level number :=0;
1248: begin
1249: if EC_DEBUG.G_debug_level >= 2 then
1250: ec_debug.push('EC_INBOUND_STAGE.GET_TP_CODE');
1251: ec_debug.pl(3,'i_translator_code',i_translator_code);
1252: ec_debug.pl(3,'i_location_code',i_location_code);
1253: ec_debug.pl(3,'i_address_type',i_address_type);
1246: counter number :=0;
1247: i_level number :=0;
1248: begin
1249: if EC_DEBUG.G_debug_level >= 2 then
1250: ec_debug.push('EC_INBOUND_STAGE.GET_TP_CODE');
1251: ec_debug.pl(3,'i_translator_code',i_translator_code);
1252: ec_debug.pl(3,'i_location_code',i_location_code);
1253: ec_debug.pl(3,'i_address_type',i_address_type);
1254: end if;
1247: i_level number :=0;
1248: begin
1249: if EC_DEBUG.G_debug_level >= 2 then
1250: ec_debug.push('EC_INBOUND_STAGE.GET_TP_CODE');
1251: ec_debug.pl(3,'i_translator_code',i_translator_code);
1252: ec_debug.pl(3,'i_location_code',i_location_code);
1253: ec_debug.pl(3,'i_address_type',i_address_type);
1254: end if;
1255:
1248: begin
1249: if EC_DEBUG.G_debug_level >= 2 then
1250: ec_debug.push('EC_INBOUND_STAGE.GET_TP_CODE');
1251: ec_debug.pl(3,'i_translator_code',i_translator_code);
1252: ec_debug.pl(3,'i_location_code',i_location_code);
1253: ec_debug.pl(3,'i_address_type',i_address_type);
1254: end if;
1255:
1256: if i_address_type = 'CUSTOMER'
1249: if EC_DEBUG.G_debug_level >= 2 then
1250: ec_debug.push('EC_INBOUND_STAGE.GET_TP_CODE');
1251: ec_debug.pl(3,'i_translator_code',i_translator_code);
1252: ec_debug.pl(3,'i_location_code',i_location_code);
1253: ec_debug.pl(3,'i_address_type',i_address_type);
1254: end if;
1255:
1256: if i_address_type = 'CUSTOMER'
1257: then
1305: -- Not a Valid Address Type
1306: i_tp_code := null;
1307:
1308: end if;
1309: if EC_DEBUG.G_debug_level >= 2 then
1310: ec_debug.pl(3,'i_tp_code',i_tp_code);
1311: ec_debug.pop('EC_INBOUND_STAGE.GET_TP_CODE');
1312: end if;
1313: EXCEPTION
1306: i_tp_code := null;
1307:
1308: end if;
1309: if EC_DEBUG.G_debug_level >= 2 then
1310: ec_debug.pl(3,'i_tp_code',i_tp_code);
1311: ec_debug.pop('EC_INBOUND_STAGE.GET_TP_CODE');
1312: end if;
1313: EXCEPTION
1314: WHEN OTHERS then
1307:
1308: end if;
1309: if EC_DEBUG.G_debug_level >= 2 then
1310: ec_debug.pl(3,'i_tp_code',i_tp_code);
1311: ec_debug.pop('EC_INBOUND_STAGE.GET_TP_CODE');
1312: end if;
1313: EXCEPTION
1314: WHEN OTHERS then
1315: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.GET_TP_CODE');
1311: ec_debug.pop('EC_INBOUND_STAGE.GET_TP_CODE');
1312: end if;
1313: EXCEPTION
1314: WHEN OTHERS then
1315: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.GET_TP_CODE');
1316: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1317: EC_UTILS.i_ret_code:=2;
1318: raise EC_UTILS.PROGRAM_EXIT;
1319: end get_tp_code;
1312: end if;
1313: EXCEPTION
1314: WHEN OTHERS then
1315: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.GET_TP_CODE');
1316: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1317: EC_UTILS.i_ret_code:=2;
1318: raise EC_UTILS.PROGRAM_EXIT;
1319: end get_tp_code;
1320:
1330: nColumn_count number := i_stage_record_type.COUNT;
1331: bFound BOOLEAN := FALSE;
1332: POS_NOT_FOUND EXCEPTION;
1333: BEGIN
1334: if EC_DEBUG.G_debug_level >= 2 then
1335: ec_debug.PUSH('EC_INBOUND_STAGE.FIND_POS');
1336: ec_debug.pl(3,'i_level',i_level);
1337: ec_debug.pl(3,'i_search_text',i_search_text);
1338: ec_debug.pl(3,'o_pos',o_pos);
1331: bFound BOOLEAN := FALSE;
1332: POS_NOT_FOUND EXCEPTION;
1333: BEGIN
1334: if EC_DEBUG.G_debug_level >= 2 then
1335: ec_debug.PUSH('EC_INBOUND_STAGE.FIND_POS');
1336: ec_debug.pl(3,'i_level',i_level);
1337: ec_debug.pl(3,'i_search_text',i_search_text);
1338: ec_debug.pl(3,'o_pos',o_pos);
1339: ec_debug.pl(3,'i_required',i_required);
1332: POS_NOT_FOUND EXCEPTION;
1333: BEGIN
1334: if EC_DEBUG.G_debug_level >= 2 then
1335: ec_debug.PUSH('EC_INBOUND_STAGE.FIND_POS');
1336: ec_debug.pl(3,'i_level',i_level);
1337: ec_debug.pl(3,'i_search_text',i_search_text);
1338: ec_debug.pl(3,'o_pos',o_pos);
1339: ec_debug.pl(3,'i_required',i_required);
1340: end if;
1333: BEGIN
1334: if EC_DEBUG.G_debug_level >= 2 then
1335: ec_debug.PUSH('EC_INBOUND_STAGE.FIND_POS');
1336: ec_debug.pl(3,'i_level',i_level);
1337: ec_debug.pl(3,'i_search_text',i_search_text);
1338: ec_debug.pl(3,'o_pos',o_pos);
1339: ec_debug.pl(3,'i_required',i_required);
1340: end if;
1341: for k in 1..nColumn_count
1334: if EC_DEBUG.G_debug_level >= 2 then
1335: ec_debug.PUSH('EC_INBOUND_STAGE.FIND_POS');
1336: ec_debug.pl(3,'i_level',i_level);
1337: ec_debug.pl(3,'i_search_text',i_search_text);
1338: ec_debug.pl(3,'o_pos',o_pos);
1339: ec_debug.pl(3,'i_required',i_required);
1340: end if;
1341: for k in 1..nColumn_count
1342: loop
1335: ec_debug.PUSH('EC_INBOUND_STAGE.FIND_POS');
1336: ec_debug.pl(3,'i_level',i_level);
1337: ec_debug.pl(3,'i_search_text',i_search_text);
1338: ec_debug.pl(3,'o_pos',o_pos);
1339: ec_debug.pl(3,'i_required',i_required);
1340: end if;
1341: for k in 1..nColumn_count
1342: loop
1343: if i_stage_record_type(k).external_level = i_level
1359: else
1360: o_pos := NULL;
1361: end if;
1362: end if;
1363: if EC_DEBUG.G_debug_level >= 2 then
1364: ec_debug.pl(3,'o_pos',o_pos);
1365: ec_debug.POP('EC_INBOUND_STAGE.FIND_POS');
1366: end if;
1367: EXCEPTION
1360: o_pos := NULL;
1361: end if;
1362: end if;
1363: if EC_DEBUG.G_debug_level >= 2 then
1364: ec_debug.pl(3,'o_pos',o_pos);
1365: ec_debug.POP('EC_INBOUND_STAGE.FIND_POS');
1366: end if;
1367: EXCEPTION
1368: WHEN POS_NOT_FOUND THEN
1361: end if;
1362: end if;
1363: if EC_DEBUG.G_debug_level >= 2 then
1364: ec_debug.pl(3,'o_pos',o_pos);
1365: ec_debug.POP('EC_INBOUND_STAGE.FIND_POS');
1366: end if;
1367: EXCEPTION
1368: WHEN POS_NOT_FOUND THEN
1369: ec_debug.pl(0,'EC','ECE_PLSQL_POS_NOT_FOUND','COLUMN_NAME',cIn_String);
1365: ec_debug.POP('EC_INBOUND_STAGE.FIND_POS');
1366: end if;
1367: EXCEPTION
1368: WHEN POS_NOT_FOUND THEN
1369: ec_debug.pl(0,'EC','ECE_PLSQL_POS_NOT_FOUND','COLUMN_NAME',cIn_String);
1370: ec_debug.POP('EC_INBOUND_STAGE.FIND_POS');
1371: EC_UTILS.i_ret_code := 2;
1372: raise EC_UTILS.PROGRAM_EXIT;
1373: WHEN OTHERS THEN
1366: end if;
1367: EXCEPTION
1368: WHEN POS_NOT_FOUND THEN
1369: ec_debug.pl(0,'EC','ECE_PLSQL_POS_NOT_FOUND','COLUMN_NAME',cIn_String);
1370: ec_debug.POP('EC_INBOUND_STAGE.FIND_POS');
1371: EC_UTILS.i_ret_code := 2;
1372: raise EC_UTILS.PROGRAM_EXIT;
1373: WHEN OTHERS THEN
1374: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.FIND_POS');
1370: ec_debug.POP('EC_INBOUND_STAGE.FIND_POS');
1371: EC_UTILS.i_ret_code := 2;
1372: raise EC_UTILS.PROGRAM_EXIT;
1373: WHEN OTHERS THEN
1374: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.FIND_POS');
1375: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1376: EC_UTILS.i_ret_code := 2;
1377: raise EC_UTILS.PROGRAM_EXIT;
1378: END find_pos;
1371: EC_UTILS.i_ret_code := 2;
1372: raise EC_UTILS.PROGRAM_EXIT;
1373: WHEN OTHERS THEN
1374: ec_debug.pl(0,'EC','ECE_PROGRAM_ERROR','PROGRESS_LEVEL','EC_INBOUND_STAGE.FIND_POS');
1375: ec_debug.pl(0,'EC','ECE_ERROR_MESSAGE','ERROR_MESSAGE',SQLERRM);
1376: EC_UTILS.i_ret_code := 2;
1377: raise EC_UTILS.PROGRAM_EXIT;
1378: END find_pos;
1379: