67:
68: v_initial VARCHAR2(1);
69: message_str VARCHAR2(2000);
70:
71: vtac_filehandle UTL_FILE.FILE_TYPE;
72: vtac_filedir VARCHAR2(255);
73: v_last_char VARCHAR2(1);
74:
75:
117: ELSE
118: p_fee_paying_appl_ind := 'U';
119: END IF;
120:
121: --Open the file p_file_name for reading, the directory must be specified in the --(INIT.ORA) using the UTL_FILE_DIR --parameter
122:
123: vtac_filedir := nvl(RTRIM(FND_PROFILE.VALUE('IGS_IN_FILE_PATH')),' ');
124: v_last_char := SUBSTR(vtac_filedir,LENGTH(vtac_filedir),1);
125:
127: vtac_filedir := SUBSTR(vtac_filedir,1,LENGTH(vtac_filedir)-1);
128: END IF;
129:
130:
131: vtac_filehandle := UTL_FILE.FOPEN(vtac_filedir, p_file_name, 'r');
132:
133:
134: --Process Offers
135:
134: --Process Offers
135:
136: LOOP -- Main Loop
137: BEGIN
138: UTL_FILE.GET_LINE(vtac_filehandle, G_vtac_output_buffer);
139: EXCEPTION
140: WHEN NO_DATA_FOUND THEN
141: EXIT;
142: END;
231:
232: THEN
233: ROLLBACK;
234: FND_FILE.PUT_LINE( FND_FILE.LOG,RTRIM(G_message_str));
235: UTL_FILE.FCLOSE(vtac_filehandle);
236: retcode := 2;
237: return;
238: END IF;
239:
295: END IF;
296:
297: FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET_STRING('IGS','IGS_AD_NUM_OF_RECORD_READ')||'-'||G_read_number);
298:
299: UTL_FILE.FCLOSE(vtac_filehandle);
300:
301: EXCEPTION
302: WHEN UTL_FILE.INVALID_PATH THEN
303: UTL_FILE.FCLOSE(vtac_filehandle);
298:
299: UTL_FILE.FCLOSE(vtac_filehandle);
300:
301: EXCEPTION
302: WHEN UTL_FILE.INVALID_PATH THEN
303: UTL_FILE.FCLOSE(vtac_filehandle);
304: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_PATH');
305: retcode := 2;
306:
299: UTL_FILE.FCLOSE(vtac_filehandle);
300:
301: EXCEPTION
302: WHEN UTL_FILE.INVALID_PATH THEN
303: UTL_FILE.FCLOSE(vtac_filehandle);
304: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_PATH');
305: retcode := 2;
306:
307: WHEN UTL_FILE.INVALID_MODE THEN
303: UTL_FILE.FCLOSE(vtac_filehandle);
304: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_PATH');
305: retcode := 2;
306:
307: WHEN UTL_FILE.INVALID_MODE THEN
308: UTL_FILE.FCLOSE(vtac_filehandle);
309: ERRBUF:= FND_MESSAGE.GET_STRING('IGS', 'IGS_GE_INVALID_MODE');
310: retcode := 2;
311:
304: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_PATH');
305: retcode := 2;
306:
307: WHEN UTL_FILE.INVALID_MODE THEN
308: UTL_FILE.FCLOSE(vtac_filehandle);
309: ERRBUF:= FND_MESSAGE.GET_STRING('IGS', 'IGS_GE_INVALID_MODE');
310: retcode := 2;
311:
312: WHEN UTL_FILE.INVALID_FILEHANDLE THEN
308: UTL_FILE.FCLOSE(vtac_filehandle);
309: ERRBUF:= FND_MESSAGE.GET_STRING('IGS', 'IGS_GE_INVALID_MODE');
310: retcode := 2;
311:
312: WHEN UTL_FILE.INVALID_FILEHANDLE THEN
313: UTL_FILE.FCLOSE(vtac_filehandle);
314: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_FILE_HANDLE');
315: retcode := 2;
316:
309: ERRBUF:= FND_MESSAGE.GET_STRING('IGS', 'IGS_GE_INVALID_MODE');
310: retcode := 2;
311:
312: WHEN UTL_FILE.INVALID_FILEHANDLE THEN
313: UTL_FILE.FCLOSE(vtac_filehandle);
314: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_FILE_HANDLE');
315: retcode := 2;
316:
317: WHEN UTL_FILE.INVALID_OPERATION THEN
313: UTL_FILE.FCLOSE(vtac_filehandle);
314: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_FILE_HANDLE');
315: retcode := 2;
316:
317: WHEN UTL_FILE.INVALID_OPERATION THEN
318: UTL_FILE.FCLOSE(vtac_filehandle);
319: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_OPER');
320: retcode := 2;
321:
314: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_FILE_HANDLE');
315: retcode := 2;
316:
317: WHEN UTL_FILE.INVALID_OPERATION THEN
318: UTL_FILE.FCLOSE(vtac_filehandle);
319: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_OPER');
320: retcode := 2;
321:
322: WHEN UTL_FILE.READ_ERROR THEN
318: UTL_FILE.FCLOSE(vtac_filehandle);
319: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_OPER');
320: retcode := 2;
321:
322: WHEN UTL_FILE.READ_ERROR THEN
323: UTL_FILE.FCLOSE(vtac_filehandle);
324: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_READ_ERR');
325: retcode := 2;
326:
319: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INVALID_OPER');
320: retcode := 2;
321:
322: WHEN UTL_FILE.READ_ERROR THEN
323: UTL_FILE.FCLOSE(vtac_filehandle);
324: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_READ_ERR');
325: retcode := 2;
326:
327: WHEN UTL_FILE.WRITE_ERROR THEN
323: UTL_FILE.FCLOSE(vtac_filehandle);
324: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_READ_ERR');
325: retcode := 2;
326:
327: WHEN UTL_FILE.WRITE_ERROR THEN
328: UTL_FILE.FCLOSE(vtac_filehandle);
329: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_WRITE_ERR');
330: retcode := 2;
331:
324: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_READ_ERR');
325: retcode := 2;
326:
327: WHEN UTL_FILE.WRITE_ERROR THEN
328: UTL_FILE.FCLOSE(vtac_filehandle);
329: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_WRITE_ERR');
330: retcode := 2;
331:
332: WHEN UTL_FILE.INTERNAL_ERROR THEN
328: UTL_FILE.FCLOSE(vtac_filehandle);
329: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_WRITE_ERR');
330: retcode := 2;
331:
332: WHEN UTL_FILE.INTERNAL_ERROR THEN
333: UTL_FILE.FCLOSE(vtac_filehandle);
334: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INTERNAL_ERR');
335: retcode := 2;
336:
329: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_WRITE_ERR');
330: retcode := 2;
331:
332: WHEN UTL_FILE.INTERNAL_ERROR THEN
333: UTL_FILE.FCLOSE(vtac_filehandle);
334: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INTERNAL_ERR');
335: retcode := 2;
336:
337: WHEN NO_DATA_FOUND THEN
334: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_INTERNAL_ERR');
335: retcode := 2;
336:
337: WHEN NO_DATA_FOUND THEN
338: UTL_FILE.FCLOSE(vtac_filehandle);
339: ERRBUF:= IGS_GE_GEN_004.GENP_GET_LOOKUP('REPORT','NO_DATA');
340: retcode := 2;
341:
342: WHEN OTHERS THEN
339: ERRBUF:= IGS_GE_GEN_004.GENP_GET_LOOKUP('REPORT','NO_DATA');
340: retcode := 2;
341:
342: WHEN OTHERS THEN
343: UTL_FILE.FCLOSE(vtac_filehandle);
344: ERRBUF:= FND_MESSAGE.GET_STRING('IGS','IGS_GE_UNHANDLED_EXCEPTION');
345: retcode := 2;
346: IGS_GE_MSG_STACK.CONC_EXCEPTION_HNDL;
347: END admp_ins_vtac_offer;