32: | |
33: | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED |
34: | arp_util.debug |
35: | arp_util.print_fcn_label |
36: | dbms_sql.parse |
37: | dbms_sql.open_cursor |
38: | |
39: | ARGUMENTS : IN: |
40: | p_ai_flag |
33: | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED |
34: | arp_util.debug |
35: | arp_util.print_fcn_label |
36: | dbms_sql.parse |
37: | dbms_sql.open_cursor |
38: | |
39: | ARGUMENTS : IN: |
40: | p_ai_flag |
41: | OUT: |
342: /*-----------------------------------------------+
343: | Open and Parse the All Periods Exist cursor |
344: +-----------------------------------------------*/
345:
346: l_all_pds_exist_cursor := dbms_sql.open_cursor;
347:
348: dbms_sql.parse( l_all_pds_exist_cursor ,
349: l_all_pds_exist_sql,
350: dbms_sql.v7 );
344: +-----------------------------------------------*/
345:
346: l_all_pds_exist_cursor := dbms_sql.open_cursor;
347:
348: dbms_sql.parse( l_all_pds_exist_cursor ,
349: l_all_pds_exist_sql,
350: dbms_sql.v7 );
351:
352: /*-------------------------------------------------+
346: l_all_pds_exist_cursor := dbms_sql.open_cursor;
347:
348: dbms_sql.parse( l_all_pds_exist_cursor ,
349: l_all_pds_exist_sql,
350: dbms_sql.v7 );
351:
352: /*-------------------------------------------------+
353: | Open and Parse the Overlapping Periods cursor |
354: +-------------------------------------------------*/
352: /*-------------------------------------------------+
353: | Open and Parse the Overlapping Periods cursor |
354: +-------------------------------------------------*/
355:
356: l_overlapping_pds_cursor := dbms_sql.open_cursor;
357:
358: dbms_sql.parse( l_overlapping_pds_cursor,
359: l_overlapping_pds_sql,
360: dbms_sql.v7 );
354: +-------------------------------------------------*/
355:
356: l_overlapping_pds_cursor := dbms_sql.open_cursor;
357:
358: dbms_sql.parse( l_overlapping_pds_cursor,
359: l_overlapping_pds_sql,
360: dbms_sql.v7 );
361:
362: /*------------------------------------------------------------+
356: l_overlapping_pds_cursor := dbms_sql.open_cursor;
357:
358: dbms_sql.parse( l_overlapping_pds_cursor,
359: l_overlapping_pds_sql,
360: dbms_sql.v7 );
361:
362: /*------------------------------------------------------------+
363: | Set the package globals to hold the newly parsed cursors |
364: +------------------------------------------------------------*/
407: | |
408: | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED |
409: | arp_util.debug |
410: | arp_util.print_fcn_label |
411: | dbms_sql.bind_variable |
412: | dbms_sql.define_column |
413: | dbms_sql.execute |
414: | dbms_sql.execute_and_fetch |
415: | dbms_sql.column_value |
408: | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED |
409: | arp_util.debug |
410: | arp_util.print_fcn_label |
411: | dbms_sql.bind_variable |
412: | dbms_sql.define_column |
413: | dbms_sql.execute |
414: | dbms_sql.execute_and_fetch |
415: | dbms_sql.column_value |
416: | |
409: | arp_util.debug |
410: | arp_util.print_fcn_label |
411: | dbms_sql.bind_variable |
412: | dbms_sql.define_column |
413: | dbms_sql.execute |
414: | dbms_sql.execute_and_fetch |
415: | dbms_sql.column_value |
416: | |
417: | ARGUMENTS : IN: |
410: | arp_util.print_fcn_label |
411: | dbms_sql.bind_variable |
412: | dbms_sql.define_column |
413: | dbms_sql.execute |
414: | dbms_sql.execute_and_fetch |
415: | dbms_sql.column_value |
416: | |
417: | ARGUMENTS : IN: |
418: | p_line_rec |
411: | dbms_sql.bind_variable |
412: | dbms_sql.define_column |
413: | dbms_sql.execute |
414: | dbms_sql.execute_and_fetch |
415: | dbms_sql.column_value |
416: | |
417: | ARGUMENTS : IN: |
418: | p_line_rec |
419: | p_customer_trx_line_id |
485: +-----------------------------*/
486:
487: IF (l_ai_flag = TRUE )
488: THEN
489: dbms_sql.bind_variable( pg_ai_pds_exist_cursor,
490: ':all_pds_error_msg',
491: 'AR_RAXTRX-1783');
492:
493: dbms_sql.bind_variable( pg_ai_pds_exist_cursor,
489: dbms_sql.bind_variable( pg_ai_pds_exist_cursor,
490: ':all_pds_error_msg',
491: 'AR_RAXTRX-1783');
492:
493: dbms_sql.bind_variable( pg_ai_pds_exist_cursor,
494: ':request_id',
495: p_request_id);
496:
497:
494: ':request_id',
495: p_request_id);
496:
497:
498: dbms_sql.bind_variable( pg_ai_overlapping_pds_cursor,
499: ':overlapping_pds_error_msg',
500: 'AR_RAXTRX-1784');
501:
502: dbms_sql.bind_variable( pg_ai_overlapping_pds_cursor,
498: dbms_sql.bind_variable( pg_ai_overlapping_pds_cursor,
499: ':overlapping_pds_error_msg',
500: 'AR_RAXTRX-1784');
501:
502: dbms_sql.bind_variable( pg_ai_overlapping_pds_cursor,
503: ':request_id',
504: p_request_id);
505: ELSE
506:
503: ':request_id',
504: p_request_id);
505: ELSE
506:
507: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
508: ':accounting_rule_duration',
509: p_acc_duration);
510:
511: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
507: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
508: ':accounting_rule_duration',
509: p_acc_duration);
510:
511: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
512: ':accounting_rule_id',
513: p_acc_rule_id);
514:
515: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
511: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
512: ':accounting_rule_id',
513: p_acc_rule_id);
514:
515: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
516: ':sob_id',
517: p_sob_id);
518:
519:
516: ':sob_id',
517: p_sob_id);
518:
519:
520: dbms_sql.bind_variable( pg_form_pds_exist_cursor,
521: ':rule_start_date',
522: p_rule_start_date);
523:
524:
521: ':rule_start_date',
522: p_rule_start_date);
523:
524:
525: dbms_sql.bind_variable( pg_form_overlapping_pds_cursor,
526: ':accounting_rule_id',
527: p_acc_rule_id);
528:
529: dbms_sql.bind_variable( pg_form_overlapping_pds_cursor,
525: dbms_sql.bind_variable( pg_form_overlapping_pds_cursor,
526: ':accounting_rule_id',
527: p_acc_rule_id);
528:
529: dbms_sql.bind_variable( pg_form_overlapping_pds_cursor,
530: ':sob_id',
531: p_sob_id);
532:
533: dbms_sql.define_column(pg_form_pds_exist_cursor, 1, l_result);
529: dbms_sql.bind_variable( pg_form_overlapping_pds_cursor,
530: ':sob_id',
531: p_sob_id);
532:
533: dbms_sql.define_column(pg_form_pds_exist_cursor, 1, l_result);
534:
535: END IF;
536:
537:
541:
542: IF ( l_ai_flag = TRUE )
543: THEN
544:
545: l_count := dbms_sql.execute(pg_ai_pds_exist_cursor);
546:
547: arp_util.debug('AI periods exist validation count: ' || l_count,
548: arp_global.MSG_LEVEL_DEBUG);
549:
547: arp_util.debug('AI periods exist validation count: ' || l_count,
548: arp_global.MSG_LEVEL_DEBUG);
549:
550:
551: l_count := dbms_sql.execute(pg_ai_overlapping_pds_cursor);
552:
553: arp_util.debug('AI overlapping validation count : ' || l_count,
554: arp_global.MSG_LEVEL_DEBUG );
555: ELSE
559: | The validation fails if either no rows were returned by the |
560: | query or the query returned a value of 2. |
561: +---------------------------------------------------------------*/
562:
563: l_count := dbms_sql.execute_and_fetch( pg_form_pds_exist_cursor,
564: FALSE);
565:
566: dbms_sql.column_value(pg_form_pds_exist_cursor, 1, l_result);
567:
562:
563: l_count := dbms_sql.execute_and_fetch( pg_form_pds_exist_cursor,
564: FALSE);
565:
566: dbms_sql.column_value(pg_form_pds_exist_cursor, 1, l_result);
567:
568: arp_util.debug('Form periods exist validation count: ' || l_count ||
569: ' result: ' || l_result, arp_global.MSG_LEVEL_DEBUG);
570:
582: /*----------------------------------------------+
583: | Execute the overlapping periods validation. |
584: +-----------------------------------------------*/
585:
586: l_count := dbms_sql.execute_and_fetch( pg_form_overlapping_pds_cursor,
587: FALSE);
588:
589: arp_util.debug('Form overlapping validation count: ' || l_count,
590: arp_global.MSG_LEVEL_DEBUG);