1: PACKAGE BODY arp_credit_memo_module AS
2: /* $Header: ARTECMMB.pls 120.59.12010000.6 2008/11/20 11:46:57 npanchak ship $ */
3: PG_DEBUG varchar2(1) := NVL(FND_PROFILE.value('AFLOG_ENABLED'), 'Y');
4:
5: ------------------------------------------------------------------------
377: l_msg_name VARCHAR2(100);
378:
379: BEGIN
380:
381: print_fcn_label( 'arp_credit_memo_module.get_error_message_text()+' );
382:
383: ---
384: l_msg_name := 'AR-CREDMEMO_ACTION_PARAM';
385: fnd_message.set_name('AR', l_msg_name);
431: MSG_LEVEL_DEBUG );
432: debug( 'MSG_CM_UNIT_OVERAPP='||MSG_CM_UNIT_OVERAPP,
433: MSG_LEVEL_DEBUG );
434:
435: print_fcn_label( 'arp_credit_memo_module.get_error_message_text()-' );
436:
437: EXCEPTION
438: WHEN OTHERS THEN
439: debug('EXCEPTION: arp_credit_memo_module.get_error_message_text()');
435: print_fcn_label( 'arp_credit_memo_module.get_error_message_text()-' );
436:
437: EXCEPTION
438: WHEN OTHERS THEN
439: debug('EXCEPTION: arp_credit_memo_module.get_error_message_text()');
440: RAISE;
441: END get_error_message_text;
442:
443: /* 6129294 - function to validate gl_dates that were overridden
503:
504:
505: BEGIN
506:
507: print_fcn_label( 'arp_credit_memo_module.build_update_mode_sql()+' );
508:
509: l_delete_header_dist_sql :=
510: 'DELETE from ra_cust_trx_line_gl_dist
511: WHERE customer_trx_id = :customer_trx_id
616: RAISE;
617: END;
618:
619:
620: print_fcn_label( 'arp_credit_memo_module.build_update_mode_sql()-' );
621:
622: EXCEPTION
623: WHEN OTHERS THEN
624: debug( 'EXCEPTION: arp_credit_memo_module.build_update_mode_sql()' );
620: print_fcn_label( 'arp_credit_memo_module.build_update_mode_sql()-' );
621:
622: EXCEPTION
623: WHEN OTHERS THEN
624: debug( 'EXCEPTION: arp_credit_memo_module.build_update_mode_sql()' );
625:
626: RAISE;
627: END build_update_mode_sql;
628:
678: l_dbg_buffer VARCHAR2(500);
679:
680: BEGIN
681:
682: print_fcn_label( 'arp_credit_memo_module.build_nonrule_sql()+' );
683:
684: ------------------------------------------------
685: -- Initialize
686: ------------------------------------------------
1356: RAISE;
1357: END;
1358:
1359:
1360: print_fcn_label( 'arp_credit_memo_module.build_nonrule_sql()-' );
1361:
1362: EXCEPTION
1363: WHEN OTHERS THEN
1364: debug( 'EXCEPTION: arp_credit_memo_module.build_nonrule_sql()' );
1360: print_fcn_label( 'arp_credit_memo_module.build_nonrule_sql()-' );
1361:
1362: EXCEPTION
1363: WHEN OTHERS THEN
1364: debug( 'EXCEPTION: arp_credit_memo_module.build_nonrule_sql()' );
1365: RAISE;
1366: END build_nonrule_sql;
1367:
1368: ----------------------------------------------------------------------------
1413:
1414:
1415: BEGIN
1416:
1417: print_fcn_label( 'arp_credit_memo_module.build_rule_sql()+' );
1418:
1419: ------------------------------------------------
1420: -- Initialize
1421: ------------------------------------------------
1678: /* Bug 2194742 - Used bind variable for gl_date */
1679: /* 6129294 - Honor inv gl_date for RAM dists when possible */
1680: DECODE(lgd.revenue_adjustment_id, NULL, :gl_date,
1681: DECODE(:gl_date_2, lgd.gl_date, :gl_date_3,
1682: NVL(arp_credit_memo_module.get_valid_date(
1683: lgd.gl_date,
1684: ct.invoicing_rule_id,
1685: lgd.set_of_books_id),
1686: :gl_date_4))), /* gl_date */
2076: RAISE;
2077: END;
2078:
2079:
2080: print_fcn_label( 'arp_credit_memo_module.build_rule_sql()-' );
2081:
2082: EXCEPTION
2083: WHEN OTHERS THEN
2084: debug( 'EXCEPTION: arp_credit_memo_module.build_rule_sql()' );
2080: print_fcn_label( 'arp_credit_memo_module.build_rule_sql()-' );
2081:
2082: EXCEPTION
2083: WHEN OTHERS THEN
2084: debug( 'EXCEPTION: arp_credit_memo_module.build_rule_sql()' );
2085: RAISE;
2086: END build_rule_sql;
2087:
2088: ----------------------------------------------------------------------------
2118: l_net_revenue_line_sql VARCHAR2(2000);
2119:
2120: BEGIN
2121:
2122: print_fcn_label( 'arp_credit_memo_module.build_net_revenue_sql()+' );
2123:
2124: ------------------------------------------------
2125: -- Construct SELECT Statement
2126: ------------------------------------------------
2171: RAISE;
2172: END;
2173:
2174:
2175: print_fcn_label( 'arp_credit_memo_module.build_net_revenue_sql()-' );
2176:
2177: EXCEPTION
2178: WHEN OTHERS THEN
2179: debug( 'EXCEPTION: arp_credit_memo_module.build_net_revenue_sql()' );
2175: print_fcn_label( 'arp_credit_memo_module.build_net_revenue_sql()-' );
2176:
2177: EXCEPTION
2178: WHEN OTHERS THEN
2179: debug( 'EXCEPTION: arp_credit_memo_module.build_net_revenue_sql()' );
2180: RAISE;
2181: END build_net_revenue_sql;
2182:
2183:
2217:
2218:
2219: BEGIN
2220:
2221: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()+' );
2222:
2223: /* bugfix : 642590 -- removed from here */
2224:
2225: --
2227: --
2228: BEGIN
2229:
2230: IF( net_rev_ctlid_t( 0 ) = p_prev_cust_trx_line_id ) THEN
2231: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()-' );
2232: RETURN;
2233: END IF;
2234:
2235: EXCEPTION
2337: net_rev_dist_exists_t(i) || '>', MSG_LEVEL_DEBUG );
2338: END LOOP;
2339: END IF;
2340:
2341: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()-' );
2342:
2343: EXCEPTION
2344: WHEN OTHERS THEN
2345: debug('EXCEPTION: arp_credit_memo_module.load_net_revenue_schedule('
2341: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()-' );
2342:
2343: EXCEPTION
2344: WHEN OTHERS THEN
2345: debug('EXCEPTION: arp_credit_memo_module.load_net_revenue_schedule('
2346: || to_char(p_prev_cust_trx_line_id) || ')' );
2347: RAISE;
2348:
2349: END load_net_revenue_schedule;
2388: l_gl_dist_key_value_list gl_ca_utility_pkg.r_key_value_arr;
2389:
2390: BEGIN
2391:
2392: print_fcn_label('arp_credit_memo_module.credit_nonrule_transactions()+' );
2393:
2394: -----------------------------------------------------------------------
2395: -- Create dynamic sql
2396: -----------------------------------------------------------------------
2611: debug( 'EXCEPTION: Error executing update stmt' );
2612: RAISE;
2613: END;
2614:
2615: print_fcn_label('arp_credit_memo_module.credit_nonrule_transactions()-' );
2616:
2617: EXCEPTION
2618: WHEN OTHERS THEN
2619: debug( 'EXCEPTION: arp_credit_memo_module.credit_nonrule_transactions()' );
2615: print_fcn_label('arp_credit_memo_module.credit_nonrule_transactions()-' );
2616:
2617: EXCEPTION
2618: WHEN OTHERS THEN
2619: debug( 'EXCEPTION: arp_credit_memo_module.credit_nonrule_transactions()' );
2620: RAISE;
2621:
2622: END credit_nonrule_transactions;
2623:
2649: p_select_rec IN OUT NOCOPY select_rec_type ) IS
2650:
2651: BEGIN
2652:
2653: print_fcn_label2( 'arp_credit_memo_module.define_select_columns()+' );
2654:
2655: dbms_sql.define_column( p_select_c, 1, p_select_rec.customer_trx_line_id );
2656: dbms_sql.define_column( p_select_c, 2,
2657: p_select_rec.prev_cust_trx_line_id );
2679: dbms_sql.define_column( p_select_c, 16, p_select_rec.inv_unit_price);
2680: dbms_sql.define_column( p_select_c, 17, p_select_rec.cm_unit_price);
2681: /* 4621029 end */
2682:
2683: print_fcn_label2( 'arp_credit_memo_module.define_select_columns()-' );
2684:
2685: EXCEPTION
2686: WHEN OTHERS THEN
2687: debug('EXCEPTION: arp_credit_memo_module.define_select_columns()');
2683: print_fcn_label2( 'arp_credit_memo_module.define_select_columns()-' );
2684:
2685: EXCEPTION
2686: WHEN OTHERS THEN
2687: debug('EXCEPTION: arp_credit_memo_module.define_select_columns()');
2688: RAISE;
2689: END define_select_columns;
2690:
2691: ----------------------------------------------------------------------------
2714: p_select_c IN INTEGER,
2715: p_select_rec IN OUT NOCOPY select_rec_type ) IS
2716: BEGIN
2717:
2718: print_fcn_label2( 'arp_credit_memo_module.get_select_column_values()+' );
2719:
2720: dbms_sql.column_value( p_select_c, 1, p_select_rec.customer_trx_line_id );
2721: dbms_sql.column_value( p_select_c, 2, p_select_rec.prev_cust_trx_line_id );
2722: dbms_sql.column_value( p_select_c, 3,
2742: dbms_sql.column_value( p_select_c, 17, p_select_rec.cm_unit_price);
2743: /* 4621029 end */
2744:
2745:
2746: print_fcn_label2( 'arp_credit_memo_module.get_select_column_values()-' );
2747:
2748: EXCEPTION
2749: WHEN OTHERS THEN
2750: debug('EXCEPTION: arp_credit_memo_module.get_select_column_values()');
2746: print_fcn_label2( 'arp_credit_memo_module.get_select_column_values()-' );
2747:
2748: EXCEPTION
2749: WHEN OTHERS THEN
2750: debug('EXCEPTION: arp_credit_memo_module.get_select_column_values()');
2751: RAISE;
2752: END get_select_column_values;
2753:
2754: ----------------------------------------------------------------------------
2774: ----------------------------------------------------------------------------
2775: PROCEDURE dump_select_rec( p_select_rec IN select_rec_type ) IS
2776: BEGIN
2777:
2778: print_fcn_label2( 'arp_credit_memo_module.dump_select_rec()+' );
2779:
2780: debug( ' Dumping select record: ', MSG_LEVEL_DEBUG );
2781: debug( ' customer_trx_line_id='
2782: || to_char( p_select_rec.customer_trx_line_id ), MSG_LEVEL_DEBUG );
2812:
2813: debug( ' partial_period_flag='
2814: || p_select_rec.partial_period_flag, MSG_LEVEL_DEBUG );
2815:
2816: print_fcn_label2( 'arp_credit_memo_module.dump_select_rec()-' );
2817:
2818: EXCEPTION
2819: WHEN OTHERS THEN
2820: debug( 'EXCEPTION: arp_credit_memo_module.dump_select_rec()' );
2816: print_fcn_label2( 'arp_credit_memo_module.dump_select_rec()-' );
2817:
2818: EXCEPTION
2819: WHEN OTHERS THEN
2820: debug( 'EXCEPTION: arp_credit_memo_module.dump_select_rec()' );
2821: RAISE;
2822: END dump_select_rec;
2823:
2824: ----------------------------------------------------------------------------
2856: RETURN BOOLEAN IS
2857:
2858: BEGIN
2859:
2860: print_fcn_label2('arp_credit_memo_module.find_cm_schedule()+' );
2861:
2862: BEGIN
2863:
2864: FOR i IN 0..cm_sched_index LOOP
2866: cm_sched_orig_gl_date_t( i ) = p_search_date ) THEN
2867:
2868: p_match_index := i;
2869: debug( ' Match at index ' || i, MSG_LEVEL_DEBUG );
2870: print_fcn_label('arp_credit_memo_module.find_cm_schedule()-' );
2871:
2872: RETURN TRUE; -- Done
2873:
2874: END IF;
2879: null; -- table not set up yet
2880: END;
2881:
2882: debug( ' No match', MSG_LEVEL_DEBUG );
2883: print_fcn_label2('arp_credit_memo_module.find_cm_schedule()-' );
2884:
2885: RETURN FALSE;
2886:
2887: EXCEPTION
2885: RETURN FALSE;
2886:
2887: EXCEPTION
2888: WHEN OTHERS THEN
2889: debug( 'EXCEPTION: arp_credit_memo_module.find_cm_schedule('
2890: || to_char(p_line_id) || ', '
2891: || to_char(p_search_date) || ')' );
2892: RAISE;
2893:
2922: gl_dist_id ra_cust_trx_line_gl_dist.cust_trx_line_gl_dist_id%TYPE;
2923:
2924: BEGIN
2925:
2926: print_fcn_label2('arp_credit_memo_module.write_cm_sched_to_table()+' );
2927:
2928: /* Bug 1956518: Added 'REVERSE' for the 'FOR LOOP' so that the
2929: distribution lines will be inserted in ascending order of
2930: gl_date when the rules method is 'PRORATE'. */
3124: END IF;
3125:
3126: END LOOP;
3127:
3128: print_fcn_label2('arp_credit_memo_module.write_cm_sched_to_table()-' );
3129:
3130: EXCEPTION
3131: WHEN OTHERS THEN
3132: debug( 'EXCEPTION: arp_credit_memo_module.write_cm_sched_to_table()' );
3128: print_fcn_label2('arp_credit_memo_module.write_cm_sched_to_table()-' );
3129:
3130: EXCEPTION
3131: WHEN OTHERS THEN
3132: debug( 'EXCEPTION: arp_credit_memo_module.write_cm_sched_to_table()' );
3133: RAISE;
3134: END write_cm_sched_to_table;
3135:
3136: ------------------------------------------------------------------------
3137:
3138: PROCEDURE clear_cm_sched_tables IS
3139:
3140: BEGIN
3141: print_fcn_label2('arp_credit_memo_module.clear_cm_sched_tables()+' );
3142:
3143: cm_sched_ctlid_t := null_cm_sched_ctlid;
3144: cm_sched_gl_date_t:= null_cm_sched_gl_date;
3145: cm_sched_orig_gl_date_t:=null_cm_sched_orig_gl_date;
3153:
3154: /* 4602892 - reset net_rev arrays */
3155: net_rev_ctlid_t( 0 ) := 0;
3156:
3157: print_fcn_label2('arp_credit_memo_module.clear_cm_sched_tables()-' );
3158:
3159: EXCEPTION
3160: WHEN OTHERS THEN
3161: debug( 'EXCEPTION: arp_credit_memo_module.clear_cm_sched_tables()' );
3157: print_fcn_label2('arp_credit_memo_module.clear_cm_sched_tables()-' );
3158:
3159: EXCEPTION
3160: WHEN OTHERS THEN
3161: debug( 'EXCEPTION: arp_credit_memo_module.clear_cm_sched_tables()' );
3162: RAISE;
3163: END clear_cm_sched_tables;
3164:
3165:
3206: l_index BINARY_INTEGER;
3207:
3208: BEGIN
3209:
3210: print_fcn_label('arp_credit_memo_module.insert_cm_schedule()+' );
3211:
3212: /* 4633761 - removed write and clear logic... It was
3213: interferring with LIFO CM processing. Moved to
3214: main processing area in credit_rule_transactions */
3234: cm_sched_check_gl_date_t( cm_sched_index ) := p_check_gl_date_flag;
3235:
3236: cm_sched_index := cm_sched_index + 1;
3237:
3238: print_fcn_label('arp_credit_memo_module.insert_cm_schedule()-' );
3239:
3240:
3241: EXCEPTION
3242: WHEN OTHERS THEN
3239:
3240:
3241: EXCEPTION
3242: WHEN OTHERS THEN
3243: debug( 'EXCEPTION: arp_credit_memo_module.insert_cm_schedule('
3244: || to_char(p_line_id) || ', '
3245: || to_char(p_gl_date) || ', '
3246: || to_char(p_orig_gl_date) || ', '
3247: || to_char(p_amount) || ', '
3289: l_index BINARY_INTEGER;
3290:
3291: BEGIN
3292:
3293: print_fcn_label('arp_credit_memo_module.update_cm_schedule()+' );
3294:
3295: IF( find_cm_schedule( p_line_id,
3296: p_gl_date,
3297: l_index ) = FALSE ) THEN
3295: IF( find_cm_schedule( p_line_id,
3296: p_gl_date,
3297: l_index ) = FALSE ) THEN
3298:
3299: print_fcn_label('arp_credit_memo_module.update_cm_schedule()-' );
3300:
3301: RETURN FALSE; -- didn't find record
3302:
3303: ELSE
3306: RETURN TRUE;
3307:
3308: END IF;
3309:
3310: print_fcn_label('arp_credit_memo_module.update_cm_schedule()-' );
3311:
3312:
3313: EXCEPTION
3314: WHEN OTHERS THEN
3311:
3312:
3313: EXCEPTION
3314: WHEN OTHERS THEN
3315: debug( 'EXCEPTION: arp_credit_memo_module.update_cm_schedule('
3316: || to_char(p_line_id) || ', '
3317: || to_char(p_gl_date) || ', '
3318: || to_char(p_amount) || ')' );
3319: RAISE;
3373: l_error_message varchar2(300);
3374:
3375: BEGIN
3376:
3377: print_fcn_label('arp_credit_memo_module.process_cm_schedule()+' );
3378:
3379: debug(' p_mode='||p_mode, MSG_LEVEL_DEBUG);
3380: debug(' p_line_id='||p_line_id, MSG_LEVEL_DEBUG);
3381: debug(' p_gl_date='||to_char(p_gl_date), MSG_LEVEL_DEBUG);
3432: l_defaulting_rule_used,
3433: l_error_message);
3434: EXCEPTION
3435: WHEN OTHERS THEN
3436: debug( 'EXCEPTION: arp_credit_memo_module.process_cm_schedule Validate GL Date ');
3437: RAISE;
3438: END;
3439: debug('setting pg_closed_period_exists to Y');
3440: pg_closed_period_exists := 'Y';
3540:
3541: END IF;
3542:
3543:
3544: print_fcn_label('arp_credit_memo_module.process_cm_schedule()-' );
3545:
3546: EXCEPTION
3547: WHEN OTHERS THEN
3548: debug( 'EXCEPTION: arp_credit_memo_module.process_cm_schedule('
3544: print_fcn_label('arp_credit_memo_module.process_cm_schedule()-' );
3545:
3546: EXCEPTION
3547: WHEN OTHERS THEN
3548: debug( 'EXCEPTION: arp_credit_memo_module.process_cm_schedule('
3549: || p_mode || ', '
3550: || to_char(p_line_id) || ', '
3551: || to_char(p_gl_date) || ', '
3552: || to_char(p_amount) || ', '
3594: RETURN BOOLEAN IS
3595:
3596: BEGIN
3597:
3598: print_fcn_label2('arp_credit_memo_module.find_net_revenue()+' );
3599:
3600: debug( 'p_line_id='||p_line_id, MSG_LEVEL_DEBUG );
3601: debug( 'p_search_date='||to_char(p_search_date, 'DD-MON-YYYY'),
3602: MSG_LEVEL_DEBUG );
3606: net_rev_gl_date_t(i) = p_search_date ) THEN
3607:
3608: p_match_index := i;
3609: debug( ' Match at index ' || i, MSG_LEVEL_DEBUG );
3610: print_fcn_label2('arp_credit_memo_module.find_net_revenue()-' );
3611:
3612: RETURN TRUE;
3613:
3614: END IF;
3614: END IF;
3615: END LOOP;
3616:
3617: debug( ' No match', MSG_LEVEL_DEBUG );
3618: print_fcn_label2('arp_credit_memo_module.find_net_revenue()-' );
3619:
3620: RETURN FALSE;
3621:
3622: EXCEPTION
3620: RETURN FALSE;
3621:
3622: EXCEPTION
3623: WHEN OTHERS THEN
3624: debug( 'EXCEPTION: arp_credit_memo_module.find_net_revenue('
3625: || to_char(p_line_id) || ', '
3626: || to_char(p_search_date) || ')' );
3627: RAISE;
3628:
3639: RETURN net_rev_dist_exists_t( p_index );
3640:
3641: EXCEPTION
3642: WHEN OTHERS THEN
3643: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_dist_exists('
3644: || to_char(p_index) || ')' );
3645: RAISE;
3646:
3647: END get_net_rev_dist_exists;
3657: RETURN net_rev_gl_date_t( p_index );
3658:
3659: EXCEPTION
3660: WHEN OTHERS THEN
3661: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_gl_date('
3662: || to_char(p_index) || ')' );
3663: RAISE;
3664:
3665: END get_net_rev_gl_date;
3675: RETURN net_rev_amount_t( p_index );
3676:
3677: EXCEPTION
3678: WHEN OTHERS THEN
3679: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_amount('
3680: || to_char(p_index) || ')' );
3681: RAISE;
3682:
3683: END get_net_rev_amount;
3701: RETURN l_amount;
3702:
3703: EXCEPTION
3704: WHEN OTHERS THEN
3705: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_total_amount('
3706: || to_char(p_start_index) || ', '
3707: || to_char(p_end_index) || ')' );
3708: RAISE;
3709:
3720: RETURN net_rev_unit_t( p_index );
3721:
3722: EXCEPTION
3723: WHEN OTHERS THEN
3724: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_unit('
3725: || to_char(p_index) || ')' );
3726: RAISE;
3727:
3728: END get_net_rev_unit;
3738: net_rev_amount_t( p_index ) := p_amount;
3739:
3740: EXCEPTION
3741: WHEN OTHERS THEN
3742: debug( 'EXCEPTION: arp_credit_memo_module.update_net_revenue('
3743: || to_char(p_index) || ')' );
3744: RAISE;
3745:
3746: END update_net_revenue;
3756: net_rev_unit_t( p_index ) := p_amount;
3757:
3758: EXCEPTION
3759: WHEN OTHERS THEN
3760: debug( 'EXCEPTION: arp_credit_memo_module.update_net_rev_unit('
3761: || to_char(p_index) || ')' );
3762: RAISE;
3763:
3764: END update_net_rev_unit;
3779: l_found_last_nonzero_period BOOLEAN := FALSE;
3780:
3781: BEGIN
3782:
3783: print_fcn_label('arp_credit_memo_module.process_prorate_cm()+' );
3784:
3785: debug( ' p_start_index='||p_start_index, MSG_LEVEL_DEBUG );
3786: debug( ' p_end_index='||p_end_index, MSG_LEVEL_DEBUG );
3787: -----------------------------------------------------------------
3926: null;
3927:
3928: END LOOP;
3929:
3930: print_fcn_label('arp_credit_memo_module.process_prorate_cm()-' );
3931:
3932: EXCEPTION
3933: WHEN OTHERS THEN
3934: debug( 'EXCEPTION: arp_credit_memo_module.process_prorate_cm('
3930: print_fcn_label('arp_credit_memo_module.process_prorate_cm()-' );
3931:
3932: EXCEPTION
3933: WHEN OTHERS THEN
3934: debug( 'EXCEPTION: arp_credit_memo_module.process_prorate_cm('
3935: || to_char(p_start_index) || ', '
3936: || to_char(p_end_index) || ')' );
3937: RAISE;
3938: END;
3947:
3948: l_amount NUMBER;
3949: BEGIN
3950:
3951: print_fcn_label('arp_credit_memo_module.process_lifo_cm()+' );
3952:
3953: debug( ' p_start_index='||p_start_index, MSG_LEVEL_DEBUG );
3954: debug( ' p_end_index='||p_end_index, MSG_LEVEL_DEBUG );
3955:
4095:
4096: END LOOP;
4097:
4098: <
4099: print_fcn_label('arp_credit_memo_module.process_lifo_cm()-' );
4100:
4101: EXCEPTION
4102: WHEN OTHERS THEN
4103: debug( 'EXCEPTION: arp_credit_memo_module.process_lifo_cm('
4099: print_fcn_label('arp_credit_memo_module.process_lifo_cm()-' );
4100:
4101: EXCEPTION
4102: WHEN OTHERS THEN
4103: debug( 'EXCEPTION: arp_credit_memo_module.process_lifo_cm('
4104: || to_char(p_start_index) || ', '
4105: || to_char(p_end_index) || ')' );
4106: RAISE;
4107: END;
4119: l_last_period_ratio NUMBER;
4120:
4121: BEGIN
4122:
4123: print_fcn_label('arp_credit_memo_module.process_unit_cm()+' );
4124:
4125: FOR i IN REVERSE p_start_index..p_end_index LOOP
4126:
4127: debug(' i='||i, MSG_LEVEL_DEBUG);
4274: END IF;
4275:
4276: END LOOP;
4277:
4278: print_fcn_label('arp_credit_memo_module.process_unit_cm()-' );
4279:
4280: EXCEPTION
4281: WHEN OTHERS THEN
4282: debug( 'EXCEPTION: arp_credit_memo_module.process_unit_cm('
4278: print_fcn_label('arp_credit_memo_module.process_unit_cm()-' );
4279:
4280: EXCEPTION
4281: WHEN OTHERS THEN
4282: debug( 'EXCEPTION: arp_credit_memo_module.process_unit_cm('
4283: || to_char(p_start_index) || ', '
4284: || to_char(p_end_index) || ')' );
4285: RAISE;
4286: END;
4323: l_cm_amt_remaining NUMBER;
4324:
4325: BEGIN
4326:
4327: print_fcn_label('arp_credit_memo_module.process_line()+' );
4328:
4329: -----------------------------------------------------------------------
4330: -- Initialize
4331: -----------------------------------------------------------------------
4706: debug('Resetting pg_closed_period_exists to NULL 5');
4707: pg_closed_period_exists := NULL;
4708: /* End 4357764 */
4709:
4710: print_fcn_label('arp_credit_memo_module.process_line()-' );
4711:
4712: EXCEPTION
4713: WHEN OTHERS THEN
4714: debug( 'EXCEPTION: arp_credit_memo_module.process_line()' );
4710: print_fcn_label('arp_credit_memo_module.process_line()-' );
4711:
4712: EXCEPTION
4713: WHEN OTHERS THEN
4714: debug( 'EXCEPTION: arp_credit_memo_module.process_line()' );
4715: RAISE;
4716: END process_line;
4717:
4718: ----------------------------------------------------------------------------
4758:
4759:
4760: BEGIN
4761:
4762: print_fcn_label('arp_credit_memo_module.credit_rule_transactions()+' );
4763:
4764: ---------------------------------------------------------------
4765: -- Create dynamic sql
4766: ---------------------------------------------------------------
5073: END;
5074:
5075:
5076:
5077: print_fcn_label('arp_credit_memo_module.credit_rule_transactions()-' );
5078:
5079: EXCEPTION
5080: WHEN NO_DATA_FOUND THEN
5081: RAISE;
5079: EXCEPTION
5080: WHEN NO_DATA_FOUND THEN
5081: RAISE;
5082: WHEN OTHERS THEN
5083: debug( 'EXCEPTION: arp_credit_memo_module.credit_rule_transactions()');
5084: RAISE;
5085:
5086: END credit_rule_transactions;
5087:
5108: --
5109: -- OUT:
5110: --
5111: -- NOTES:
5112: -- Raises the exception arp_credit_memo_module.no_ccid if autoaccounting
5113: -- could not derive a valid code combination. The public variable
5114: -- g_error_buffer is populated for more information.
5115: --
5116: -- Raises the exception NO_DATA_FOUND if no rows were selected for
5154: l_result NUMBER;
5155: NO_REC_OFFSET_EXCEPTION EXCEPTION;
5156: BEGIN
5157:
5158: print_fcn_label('arp_credit_memo_module.credit_transactions_ins_mode()+' );
5159:
5160: ------------------------------
5161: -- Populate control record
5162: ------------------------------
5444: inline */
5445:
5446: close_cursors;
5447:
5448: print_fcn_label('arp_credit_memo_module.credit_transactions_ins_mode()-' );
5449:
5450: EXCEPTION
5451: WHEN NO_REC_OFFSET_EXCEPTION THEN
5452: /* set_rec_offset_flag executed and was unable to set
5475: RAISE;
5476: END IF;
5477:
5478: WHEN OTHERS THEN
5479: debug( 'EXCEPTION: arp_credit_memo_module.credit_transactions_ins_mode('
5480: || to_char(p_customer_trx_id) || ', '
5481: || to_char(p_customer_trx_line_id) || ', '
5482: || to_char(p_prev_customer_trx_id) || ', '
5483: || to_char(p_prev_cust_trx_line_id) || ', '
5531: --
5532: -- NOTES:
5533: -- Calls credit_transactions_ins_mode.
5534: --
5535: -- Raises the exception arp_credit_memo_module.no_ccid if autoaccounting
5536: -- could not derive a valid code combination. The public variable
5537: -- g_error_buffer is populated for more information.
5538: --
5539: -- Raises the exception NO_DATA_FOUND if no rows were selected for
5566: gl_line_dist_array dbms_sql.number_table; /* mrc */
5567: l_xla_ev_rec ARP_XLA_EVENTS.XLA_EVENTS_TYPE; -- bug5870933
5568:
5569: BEGIN
5570: print_fcn_label('arp_credit_memo_module.credit_transactions()+' );
5571:
5572:
5573: --------------------------------------------------------------------
5574: -- Check parameters
5830: arp_xla_events.create_events(l_xla_ev_rec);
5831: END IF;
5832:
5833:
5834: print_fcn_label('arp_credit_memo_module.credit_transactions()-' );
5835:
5836: END credit_transactions;
5837:
5838: ----------------------------------------------------------------------------
5860: -- NOTES:
5861: -- This is the older version of the API and is a cover to the new version.
5862: -- It exists for backward compatibillity.
5863: --
5864: -- Raises the exception arp_credit_memo_module.no_ccid if autoaccounting
5865: -- could not derive a valid code combination. The public variable
5866: -- g_error_buffer is populated for more information.
5867: --
5868: -- Raises the exception NO_DATA_FOUND if no rows were selected for
5891: l_number NUMBER;
5892:
5893: BEGIN
5894:
5895: print_fcn_label('arp_credit_memo_module.credit_transactions_cover()+' );
5896:
5897: credit_transactions(
5898: p_customer_trx_id,
5899: p_customer_trx_line_id,
5905: l_number, -- accounting_rule_duration
5906: p_process_mode
5907: );
5908:
5909: print_fcn_label('arp_credit_memo_module.credit_transactions_cover()-' );
5910:
5911: END credit_transactions;
5912:
5913:
6251: --
6252: PROCEDURE init IS
6253: BEGIN
6254:
6255: print_fcn_label( 'arp_credit_memo_module.constructor()+' );
6256:
6257: /* Bug 2560036 - determine if collectibility is enabled */
6258: g_test_collectibility :=
6259: ar_revenue_management_pvt.revenue_management_enabled;
6259: ar_revenue_management_pvt.revenue_management_enabled;
6260:
6261: get_error_message_text;
6262:
6263: print_fcn_label( 'arp_credit_memo_module.constructor()-' );
6264:
6265:
6266: EXCEPTION
6267: WHEN OTHERS THEN
6264:
6265:
6266: EXCEPTION
6267: WHEN OTHERS THEN
6268: debug('EXCEPTION: arp_credit_memo_module.constructor()');
6269: debug(SQLERRM);
6270: RAISE;
6271: END init;
6272:
6272:
6273: BEGIN
6274: init;
6275:
6276: END arp_credit_memo_module;