177:
178: WHEN OTHERS THEN
179: rollback;
180:
181: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
182: l_stmt_id));
183:
184: l_setup_good := false;
185: return l_setup_good;
293:
294: l_stmt_id := 10;
295: -- Check for DBI global parameter setup, initialize file scope variables,
296: -- check for bounds and truncate tables.
297: BIS_COLLECTION_UTILITIES.PUT_LINE ('Initializing cycle count initial load ...');
298: cca_initialize_init ();
299:
300: l_stmt_id := 20;
301: -- Set up the bounds for Cycle Count accuracy in the log table.
299:
300: l_stmt_id := 20;
301: -- Set up the bounds for Cycle Count accuracy in the log table.
302: -- Commit will be done
303: BIS_COLLECTION_UTILITIES.PUT_LINE (
304: 'Setting up bounds for Process and Discrete ...');
305: OPI_DBI_BOUNDS_PKG.MAINTAIN_OPI_DBI_LOGS ( p_etl_type=> C_ETL_TYPE,
306: p_load_type=> C_LOAD_INIT);
307:
310: -- Make a call to the OPM extraction for PreR12. Do this within
311: -- a begin/end block and throw a custom exception if the
312: -- OPM code ends with an error.
313: -- first check R12 migration date > GSD
314: BIS_COLLECTION_UTILITIES.PUT_LINE ('R12 Migration Date ...' || s_r12_migration_date);
315:
316: -- R12 date will not be null. There will be some suitable date returned by
317: -- opi_dbi_rpt_util_pkg.get_inv_convergence_date
318: IF (s_r12_migration_date > s_global_start_date) THEN
316: -- R12 date will not be null. There will be some suitable date returned by
317: -- opi_dbi_rpt_util_pkg.get_inv_convergence_date
318: IF (s_r12_migration_date > s_global_start_date) THEN
319: --{
320: BIS_COLLECTION_UTILITIES.PUT_LINE (
321: 'Extracting data for Pre R12 rocess manufacturing organizations ....');
322: BEGIN
323:
324: opi_dbi_inv_cca_opm_pkg.run_initial_load_opm (errbuf, retcode);
333: END;
334: --}
335: ELSE
336: --{
337: BIS_COLLECTION_UTILITIES.PUT_LINE (
338: 'Migration date is less than GSD. Skipping PreR12 Process Cycle Count Extraction ....');
339: --}
340: END IF;
341:
341:
342:
343: l_stmt_id := 40;
344: -- Extract all Cycle count transactions from MMT inot a staging table
345: BIS_COLLECTION_UTILITIES.PUT_LINE (
346: 'Extracting cycle count trasnactions into a staging table ...');
347: extract_cca_mmt_init ();
348:
349: l_stmt_id := 50;
352:
353: l_stmt_id := 55;
354: -- Call API to load ledger data into Global temp table
355: -- This temp table will be joined to extract process adjustments
356: BIS_COLLECTION_UTILITIES.PUT_LINE (
357: 'Loading Ledger data into temp table ...');
358: OPI_DBI_BOUNDS_PKG.load_opm_org_ledger_data;
359:
360: l_stmt_id := 57;
364:
365: l_stmt_id := 60;
366: -- Extract the adjustment entry data from MMT/MTA using the
367: -- bounds just set up.
368: BIS_COLLECTION_UTILITIES.PUT_LINE (
369: 'Extracting cycle count adjustment information for discrete manufacturing orgs ...');
370: extract_discrete_adj_init (s_global_start_date);
371:
372: l_stmt_id := 70;
376:
377: l_stmt_id := 80;
378: -- Extract the adjustment entry data from MMT/MTA using the
379: -- bounds just set up.
380: BIS_COLLECTION_UTILITIES.PUT_LINE (
381: 'Extracting cycle count adjustment information for Process manufacturing orgs ...');
382: extract_process_adj_init (s_global_start_date);
383:
384: l_stmt_id := 90;
388:
389: l_stmt_id := 100;
390: -- Extract the exact matches entry data from MCCE. Collect all rows
391: -- with last_update_date greater than the global start date.
392: BIS_COLLECTION_UTILITIES.PUT_LINE (
393: 'Extracting cycle count exact match information for discrete manufacturing organizations ...');
394: extract_exact_matches_init ();
395:
396: l_stmt_id := 110;
401: l_stmt_id := 120;
402: -- Compute the conversion rates for all org/date pairs in the
403: -- staging table. This API will now commit, due to an
404: -- insert+append hint.
405: BIS_COLLECTION_UTILITIES.PUT_LINE (
406: 'Computing conversion rates for all extracted cycle counting data ...');
407: compute_cca_conv_rates_init (s_global_curr_code, s_global_rate_type);
408:
409: l_stmt_id := 130;
412: commit;
413:
414: l_stmt_id := 140;
415: -- Insert all the data into the fact table in one shot.
416: BIS_COLLECTION_UTILITIES.PUT_LINE ('Inserting data into the fact table ...');
417: populate_fact_init ();
418:
419: l_stmt_id := 150;
420: -- Update the bounds table
417: populate_fact_init ();
418:
419: l_stmt_id := 150;
420: -- Update the bounds table
421: BIS_COLLECTION_UTILITIES.PUT_LINE ('Updating run time bounds for next run ...');
422: OPI_DBI_BOUNDS_PKG.SET_LOAD_SUCCESSFUL(C_ETL_TYPE, C_LOAD_INIT);
423:
424: l_stmt_id := 160;
425: -- Truncate the staging table, commit the data to the fact table
439: -- return successfully
440: retcode := C_SUCCESS;
441: errbuf := '';
442:
443: BIS_COLLECTION_UTILITIES.PUT_LINE ('Cycle count data extracted into the fact table successfully.');
444:
445: RETURN;
446:
447: EXCEPTION
453:
454: -- report the error
455: retcode := C_ERROR;
456: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
457: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
458: (INITIALIZATION_ERROR_MESG,
459: l_proc_name, l_stmt_id));
460: RETURN;
461:
465:
466: -- report the error
467: retcode := C_ERROR;
468: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
469: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
470: (BOUNDS_SETUP_ERROR_MESG,
471: l_proc_name, l_stmt_id));
472: RETURN;
473:
478:
479: -- report the error
480: retcode := C_ERROR;
481: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
482: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
483: (ADJUSTMENT_EXTR_ERROR_MESG,
484: l_proc_name, l_stmt_id));
485: RETURN;
486:
491:
492: -- report the error
493: retcode := C_ERROR;
494: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
495: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
496: (EXACT_MATCH_EXTR_ERROR_MESG,
497: l_proc_name, l_stmt_id));
498: RETURN;
499:
503:
504: -- report the error
505: retcode := C_ERROR;
506: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
507: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
508: (BOUNDS_UPDATE_ERROR_MESG,
509: l_proc_name, l_stmt_id));
510: RETURN;
511:
516:
517: -- report the error
518: retcode := C_ERROR;
519: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
520: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
521: (CONV_RATES_ERROR_MESG,
522: l_proc_name, l_stmt_id));
523: RETURN;
524:
529:
530: -- report the error
531: retcode := C_ERROR;
532: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
533: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
534: (FACT_MERGE_ERROR_MESG,
535: l_proc_name, l_stmt_id));
536: RETURN;
537:
542:
543: -- report the error
544: retcode := C_ERROR;
545: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
546: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
547: (OPM_EXTRACTION_ERROR_MESG,
548: l_proc_name, l_stmt_id));
549: RETURN;
550:
555: -- report the error
556: retcode := C_ERROR;
557: errbuf := 'Inventory Cycle Count Accuracy ETL initial load terminated with errors. Please check the concurrent program log file for errors.';
558:
559: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
560: l_stmt_id));
561:
562: RETURN;
563:
732: EXCEPTION
733:
734: WHEN GLOBAL_SETUP_MISSING THEN
735:
736: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (GLOBAL_SETUP_MISSING_MESG,
737: l_proc_name, l_stmt_id));
738: RAISE INITIALIZATION_ERROR;
739:
740: WHEN SCHEMA_INFO_NOT_FOUND THEN
738: RAISE INITIALIZATION_ERROR;
739:
740: WHEN SCHEMA_INFO_NOT_FOUND THEN
741:
742: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
743: (SCHEMA_INFO_NOT_FOUND_MESG,
744: l_proc_name, l_stmt_id));
745: RAISE INITIALIZATION_ERROR;
746:
745: RAISE INITIALIZATION_ERROR;
746:
747: WHEN INIT_BOUNDS_MISSING THEN
748:
749: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
750: (INIT_BOUNDS_MISSING_MESG,
751: l_proc_name, l_stmt_id));
752: RAISE INITIALIZATION_ERROR;
753:
752: RAISE INITIALIZATION_ERROR;
753:
754: WHEN GLOBAL_START_DATE_NULL THEN
755:
756: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
757: (GLOBAL_START_DATE_NULL_MESG,
758: l_proc_name, l_stmt_id));
759: RAISE INITIALIZATION_ERROR;
760:
760:
761:
762: WHEN NO_GLOBAL_CURR_CODE THEN
763:
764: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
765: (NO_GLOBAL_CURR_CODE_MESG,
766: l_proc_name, l_stmt_id));
767: RAISE INITIALIZATION_ERROR;
768:
768:
769:
770: WHEN NO_GLOBAL_RATE_TYPE THEN
771:
772: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
773: (NO_GLOBAL_RATE_TYPE_MESG,
774: l_proc_name, l_stmt_id));
775: RAISE INITIALIZATION_ERROR;
776:
775: RAISE INITIALIZATION_ERROR;
776:
777:
778: WHEN SEC_CURR_SETUP_INVALID THEN
779: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
780: (SEC_CURR_SETUP_INVALID_MESG,
781: l_proc_name, l_stmt_id));
782:
783: RAISE INITIALIZATION_ERROR;
783: RAISE INITIALIZATION_ERROR;
784:
785: WHEN OTHERS THEN
786:
787: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
788: l_stmt_id));
789:
790: RAISE INITIALIZATION_ERROR;
791:
845: EXCEPTION
846:
847: WHEN OTHERS THEN
848:
849: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
850: l_stmt_id));
851:
852: RAISE CCA_MMT_STG_ERROR;
853:
1175: EXCEPTION
1176:
1177: WHEN OTHERS THEN
1178:
1179: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
1180: l_stmt_id));
1181:
1182: RAISE ADJUSTMENT_EXTR_ERROR;
1183:
1474: EXCEPTION
1475:
1476: WHEN NO_DATA_FOUND THEN
1477:
1478: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
1479: l_stmt_id));
1480:
1481: RAISE ADJUSTMENT_EXTR_ERROR;
1482:
1482:
1483:
1484: WHEN OTHERS THEN
1485:
1486: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
1487: l_stmt_id));
1488:
1489: RAISE ADJUSTMENT_EXTR_ERROR;
1490:
1683: EXCEPTION
1684:
1685: WHEN NO_DATA_FOUND THEN
1686:
1687: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
1688: l_stmt_id));
1689:
1690: RAISE EXACT_MATCH_EXTR_ERROR;
1691:
1690: RAISE EXACT_MATCH_EXTR_ERROR;
1691:
1692: WHEN OTHERS THEN
1693:
1694: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
1695: l_stmt_id));
1696:
1697: RAISE EXACT_MATCH_EXTR_ERROR;
1698:
1952: FETCH invalid_rates_exist_csr INTO invalid_rates_exist_rec;
1953: IF (invalid_rates_exist_csr%FOUND) THEN
1954:
1955: -- print the header out
1956: BIS_COLLECTION_UTILITIES.writeMissingRateHeader;
1957:
1958: -- all rates not found
1959: l_all_rates_found := false;
1960:
1961:
1962: FOR invalid_rate_rec IN invalid_rates_csr (l_pri_sec_curr_same)
1963: LOOP
1964:
1965: BIS_COLLECTION_UTILITIES.writeMissingRate(
1966: invalid_rate_rec.rate_type,
1967: invalid_rate_rec.func_currency_code,
1968: invalid_rate_rec.curr_code,
1969: invalid_rate_rec.approval_date);
1985: EXCEPTION
1986:
1987: WHEN MISSING_CONV_RATES THEN
1988:
1989: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
1990: (MISSING_CONV_RATES_MESG,
1991: l_proc_name, l_stmt_id));
1992: RAISE CONV_RATES_ERROR;
1993:
1993:
1994:
1995: WHEN OTHERS THEN
1996:
1997: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
1998: l_stmt_id));
1999:
2000: RAISE CONV_RATES_ERROR;
2001:
2201: EXCEPTION
2202:
2203: WHEN OTHERS THEN
2204:
2205: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
2206: l_stmt_id));
2207:
2208: RAISE FACT_MERGE_ERROR;
2209:
2243:
2244: l_stmt_id := 10;
2245: -- Check for DBI global parameter setup, initialize file scope variables,
2246: -- check for bounds and truncate the needed tables.
2247: BIS_COLLECTION_UTILITIES.PUT_LINE ('Initializing cycle count incremental load ...');
2248: cca_initialize_incr ();
2249:
2250: l_stmt_id := 20;
2251: -- Set up the bounds for Cycle Count accuracy in the log table.
2248: cca_initialize_incr ();
2249:
2250: l_stmt_id := 20;
2251: -- Set up the bounds for Cycle Count accuracy in the log table.
2252: BIS_COLLECTION_UTILITIES.PUT_LINE (
2253: 'Setting up bounds for discrete manufacturing organzations ...');
2254: -- return status not speified in the procedure
2255: OPI_DBI_BOUNDS_PKG.MAINTAIN_OPI_DBI_LOGS ( p_etl_type=> C_ETL_TYPE,
2256: p_load_type=> C_LOAD_INCR);
2256: p_load_type=> C_LOAD_INCR);
2257: l_stmt_id := 30;
2258: -- Extract the adjustment entry data from MMT/MTA using the
2259: -- bounds just set up.
2260: BIS_COLLECTION_UTILITIES.PUT_LINE (
2261: 'Extracting cycle count adjustment information for discrete manufacturing orgs ...');
2262: extract_discrete_adj_incr (s_global_start_date);
2263:
2264: l_stmt_id := 40;
2268:
2269: l_stmt_id := 45;
2270: -- Call API to load ledger data into Global temp table
2271: -- This temp table will be joined to extract process adjustments
2272: BIS_COLLECTION_UTILITIES.PUT_LINE (
2273: 'Loading Ledger data into temp table ...');
2274: OPI_DBI_BOUNDS_PKG.load_opm_org_ledger_data;
2275:
2276: l_stmt_id := 47;
2280:
2281: l_stmt_id := 50;
2282: -- Extract the adjustment entry data from MMT/MTA using the
2283: -- bounds just set up.
2284: BIS_COLLECTION_UTILITIES.PUT_LINE (
2285: 'Extracting cycle count adjustment information for process manufacturing orgs ...');
2286: extract_process_adj_incr (s_global_start_date);
2287:
2288: l_stmt_id := 60;
2292:
2293: l_stmt_id := 70;
2294: -- Extract the exact matches entry data from MCCE. Collect all rows
2295: -- with last_update_date greater than the global start date.
2296: BIS_COLLECTION_UTILITIES.PUT_LINE (
2297: 'Extracting cycle count exact match information for discrete and process manufacturing organizations ...');
2298: extract_exact_matches_incr ();
2299:
2300: l_stmt_id := 80;
2304: l_stmt_id := 90;
2305: -- Compute the conversion rates for all org/date pairs in the
2306: -- staging table. This API will now commit, due to an
2307: -- insert+append hint.
2308: BIS_COLLECTION_UTILITIES.PUT_LINE (
2309: 'Computing conversion rates for all extracted cycle counting data ...');
2310: compute_cca_conv_rates_incr (s_global_curr_code, s_global_rate_type);
2311:
2312: l_stmt_id := 100;
2315: commit;
2316:
2317: l_stmt_id := 110;
2318: -- Insert all the data into the fact table in one shot.
2319: BIS_COLLECTION_UTILITIES.PUT_LINE ('Inserting data into the fact table ...');
2320: populate_fact_incr ();
2321:
2322:
2323: l_stmt_id := 120;
2321:
2322:
2323: l_stmt_id := 120;
2324: -- Update the bounds table
2325: BIS_COLLECTION_UTILITIES.PUT_LINE ('Updating run time bounds for next run ...');
2326: -- return status not speified in the procedure
2327: OPI_DBI_BOUNDS_PKG.SET_LOAD_SUCCESSFUL(C_ETL_TYPE, C_LOAD_INCR);
2328:
2329:
2338: -- return successfully
2339: retcode := C_SUCCESS;
2340: errbuf := '';
2341:
2342: BIS_COLLECTION_UTILITIES.PUT_LINE ('Cycle count data extracted into the fact table successfully.');
2343:
2344: RETURN;
2345:
2346: EXCEPTION
2353:
2354: -- report the error
2355: retcode := C_ERROR;
2356: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2357: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2358: (INITIALIZATION_ERROR_MESG,
2359: l_proc_name, l_stmt_id));
2360: RETURN;
2361:
2366:
2367: -- report the error
2368: retcode := C_ERROR;
2369: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2370: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2371: (BOUNDS_SETUP_ERROR_MESG,
2372: l_proc_name, l_stmt_id));
2373: RETURN;
2374:
2379:
2380: -- report the error
2381: retcode := C_ERROR;
2382: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2383: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2384: (ADJUSTMENT_EXTR_ERROR_MESG,
2385: l_proc_name, l_stmt_id));
2386: RETURN;
2387:
2398:
2399: -- report the error
2400: retcode := C_ERROR;
2401: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2402: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2403: (EXACT_MATCH_EXTR_ERROR_MESG,
2404: l_proc_name, l_stmt_id));
2405: RETURN;
2406:
2417:
2418: -- report the error
2419: retcode := C_ERROR;
2420: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2421: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2422: (BOUNDS_UPDATE_ERROR_MESG,
2423: l_proc_name, l_stmt_id));
2424: RETURN;
2425:
2431:
2432: -- report the error
2433: retcode := C_ERROR;
2434: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2435: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2436: (CONV_RATES_ERROR_MESG,
2437: l_proc_name, l_stmt_id));
2438: RETURN;
2439:
2444:
2445: -- report the error
2446: retcode := C_ERROR;
2447: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2448: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2449: (FACT_MERGE_ERROR_MESG,
2450: l_proc_name, l_stmt_id));
2451: RETURN;
2452:
2456:
2457: -- report the error
2458: retcode := C_ERROR;
2459: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2460: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2461: (OPM_EXTRACTION_ERROR_MESG,
2462: l_proc_name, l_stmt_id));
2463: RETURN;
2464:
2469: -- report the error
2470: retcode := C_ERROR;
2471: errbuf := 'Inventory Cycle Count Accuracy ETL incremental load terminated with errors. Please check the concurrent program log file for errors.';
2472:
2473: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
2474: l_stmt_id));
2475:
2476: RETURN;
2477:
2618: EXCEPTION
2619:
2620: WHEN GLOBAL_SETUP_MISSING THEN
2621:
2622: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (GLOBAL_SETUP_MISSING_MESG,
2623: l_proc_name, l_stmt_id));
2624: RAISE INITIALIZATION_ERROR;
2625:
2626: WHEN SCHEMA_INFO_NOT_FOUND THEN
2624: RAISE INITIALIZATION_ERROR;
2625:
2626: WHEN SCHEMA_INFO_NOT_FOUND THEN
2627:
2628: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2629: (SCHEMA_INFO_NOT_FOUND_MESG,
2630: l_proc_name, l_stmt_id));
2631: RAISE INITIALIZATION_ERROR;
2632:
2632:
2633:
2634: WHEN GLOBAL_START_DATE_NULL THEN
2635:
2636: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2637: (GLOBAL_START_DATE_NULL_MESG,
2638: l_proc_name, l_stmt_id));
2639: RAISE INITIALIZATION_ERROR;
2640:
2640:
2641:
2642: WHEN NO_GLOBAL_CURR_CODE THEN
2643:
2644: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2645: (NO_GLOBAL_CURR_CODE_MESG,
2646: l_proc_name, l_stmt_id));
2647: RAISE INITIALIZATION_ERROR;
2648:
2648:
2649:
2650: WHEN NO_GLOBAL_RATE_TYPE THEN
2651:
2652: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2653: (NO_GLOBAL_RATE_TYPE_MESG,
2654: l_proc_name, l_stmt_id));
2655: RAISE INITIALIZATION_ERROR;
2656:
2655: RAISE INITIALIZATION_ERROR;
2656:
2657:
2658: WHEN SEC_CURR_SETUP_INVALID THEN
2659: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
2660: (SEC_CURR_SETUP_INVALID_MESG,
2661: l_proc_name, l_stmt_id));
2662:
2663: RAISE INITIALIZATION_ERROR;
2663: RAISE INITIALIZATION_ERROR;
2664:
2665: WHEN OTHERS THEN
2666:
2667: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
2668: l_stmt_id));
2669:
2670: RAISE INITIALIZATION_ERROR;
2671:
2972: EXCEPTION
2973:
2974: WHEN OTHERS THEN
2975:
2976: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
2977: l_stmt_id));
2978:
2979: RAISE ADJUSTMENT_EXTR_ERROR;
2980:
3254: EXCEPTION
3255:
3256: WHEN OTHERS THEN
3257:
3258: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
3259: l_stmt_id));
3260:
3261: RAISE ADJUSTMENT_EXTR_ERROR;
3262:
3444: EXCEPTION
3445:
3446: WHEN OTHERS THEN
3447:
3448: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
3449: l_stmt_id));
3450:
3451: RAISE EXACT_MATCH_EXTR_ERROR;
3452:
3701: FETCH invalid_rates_exist_csr INTO invalid_rates_exist_rec;
3702: IF (invalid_rates_exist_csr%FOUND) THEN
3703:
3704: -- print the header out
3705: BIS_COLLECTION_UTILITIES.writeMissingRateHeader;
3706:
3707: -- all rates not found
3708: l_all_rates_found := false;
3709:
3709:
3710: FOR invalid_rate_rec IN invalid_rates_csr (l_pri_sec_curr_same)
3711: LOOP
3712:
3713: BIS_COLLECTION_UTILITIES.writeMissingRate(
3714: invalid_rate_rec.rate_type,
3715: invalid_rate_rec.func_currency_code,
3716: invalid_rate_rec.curr_code,
3717: invalid_rate_rec.approval_date);
3733: EXCEPTION
3734:
3735: WHEN MISSING_CONV_RATES THEN
3736:
3737: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg
3738: (MISSING_CONV_RATES_MESG,
3739: l_proc_name, l_stmt_id));
3740: RAISE CONV_RATES_ERROR;
3741:
3741:
3742:
3743: WHEN OTHERS THEN
3744:
3745: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
3746: l_stmt_id));
3747:
3748: RAISE CONV_RATES_ERROR;
3749:
4128: EXCEPTION
4129:
4130: WHEN OTHERS THEN
4131:
4132: BIS_COLLECTION_UTILITIES.PUT_LINE (err_mesg (SQLERRM, l_proc_name,
4133: l_stmt_id));
4134:
4135: RAISE FACT_MERGE_ERROR;
4136: