1: PACKAGE BODY arp_credit_memo_module AS
2: /* $Header: ARTECMMB.pls 120.81.12020000.9 2012/10/22 04:11:08 vpusulur ship $ */
3: PG_DEBUG varchar2(1) := NVL(FND_PROFILE.value('AFLOG_ENABLED'), 'Y');
4:
5: ------------------------------------------------------------------------
380: l_msg_name VARCHAR2(100);
381:
382: BEGIN
383:
384: print_fcn_label( 'arp_credit_memo_module.get_error_message_text()+' );
385:
386: ---
387: l_msg_name := 'AR-CREDMEMO_ACTION_PARAM';
388: fnd_message.set_name('AR', l_msg_name);
434: MSG_LEVEL_DEBUG );
435: debug( 'MSG_CM_UNIT_OVERAPP='||MSG_CM_UNIT_OVERAPP,
436: MSG_LEVEL_DEBUG );
437:
438: print_fcn_label( 'arp_credit_memo_module.get_error_message_text()-' );
439:
440: EXCEPTION
441: WHEN OTHERS THEN
442: debug('EXCEPTION: arp_credit_memo_module.get_error_message_text()');
438: print_fcn_label( 'arp_credit_memo_module.get_error_message_text()-' );
439:
440: EXCEPTION
441: WHEN OTHERS THEN
442: debug('EXCEPTION: arp_credit_memo_module.get_error_message_text()');
443: RAISE;
444: END get_error_message_text;
445:
446: /* 6129294 - function to validate gl_dates that were overridden
507:
508:
509: BEGIN
510:
511: print_fcn_label( 'arp_credit_memo_module.build_update_mode_sql()+' );
512:
513: l_delete_header_dist_sql :=
514: 'DELETE from ra_cust_trx_line_gl_dist
515: WHERE customer_trx_id = :customer_trx_id
620: RAISE;
621: END;
622:
623:
624: print_fcn_label( 'arp_credit_memo_module.build_update_mode_sql()-' );
625:
626: EXCEPTION
627: WHEN OTHERS THEN
628: debug( 'EXCEPTION: arp_credit_memo_module.build_update_mode_sql()' );
624: print_fcn_label( 'arp_credit_memo_module.build_update_mode_sql()-' );
625:
626: EXCEPTION
627: WHEN OTHERS THEN
628: debug( 'EXCEPTION: arp_credit_memo_module.build_update_mode_sql()' );
629:
630: RAISE;
631: END build_update_mode_sql;
632:
682: l_dbg_buffer VARCHAR2(500);
683:
684: BEGIN
685:
686: print_fcn_label( 'arp_credit_memo_module.build_nonrule_sql()+' );
687:
688: ------------------------------------------------
689: -- Initialize
690: ------------------------------------------------
1363: RAISE;
1364: END;
1365:
1366:
1367: print_fcn_label( 'arp_credit_memo_module.build_nonrule_sql()-' );
1368:
1369: EXCEPTION
1370: WHEN OTHERS THEN
1371: debug( 'EXCEPTION: arp_credit_memo_module.build_nonrule_sql()' );
1367: print_fcn_label( 'arp_credit_memo_module.build_nonrule_sql()-' );
1368:
1369: EXCEPTION
1370: WHEN OTHERS THEN
1371: debug( 'EXCEPTION: arp_credit_memo_module.build_nonrule_sql()' );
1372: RAISE;
1373: END build_nonrule_sql;
1374:
1375: ----------------------------------------------------------------------------
1420:
1421:
1422: BEGIN
1423:
1424: print_fcn_label( 'arp_credit_memo_module.build_rule_sql()+' );
1425:
1426: ------------------------------------------------
1427: -- Initialize
1428: ------------------------------------------------
1690: /* 9768966 - Use NULL date if invoice has null gl_date */
1691: DECODE(lgd.gl_date, NULL, NULL,
1692: DECODE(lgd.revenue_adjustment_id, NULL, :gl_date,
1693: DECODE(:gl_date_2, lgd.gl_date, :gl_date_3,
1694: NVL(arp_credit_memo_module.get_valid_date(
1695: lgd.gl_date,
1696: ct.invoicing_rule_id,
1697: lgd.set_of_books_id),
1698: :gl_date_4)))), /* gl_date */
2077: RAISE;
2078: END;
2079:
2080:
2081: print_fcn_label( 'arp_credit_memo_module.build_rule_sql()-' );
2082:
2083: EXCEPTION
2084: WHEN OTHERS THEN
2085: debug( 'EXCEPTION: arp_credit_memo_module.build_rule_sql()' );
2081: print_fcn_label( 'arp_credit_memo_module.build_rule_sql()-' );
2082:
2083: EXCEPTION
2084: WHEN OTHERS THEN
2085: debug( 'EXCEPTION: arp_credit_memo_module.build_rule_sql()' );
2086: RAISE;
2087: END build_rule_sql;
2088:
2089: ----------------------------------------------------------------------------
2122: l_net_revenue_dist_sql VARCHAR2(2000);
2123:
2124: BEGIN
2125:
2126: print_fcn_label( 'arp_credit_memo_module.build_net_revenue_sql()+' );
2127:
2128: ------------------------------------------------
2129: -- Construct SELECT Statement
2130: ------------------------------------------------
2226: debug( 'EXCEPTION: Error parsing net revenue stmts' );
2227: RAISE;
2228: END;
2229:
2230: print_fcn_label( 'arp_credit_memo_module.build_net_revenue_sql()-' );
2231:
2232: EXCEPTION
2233: WHEN OTHERS THEN
2234: debug( 'EXCEPTION: arp_credit_memo_module.build_net_revenue_sql()' );
2230: print_fcn_label( 'arp_credit_memo_module.build_net_revenue_sql()-' );
2231:
2232: EXCEPTION
2233: WHEN OTHERS THEN
2234: debug( 'EXCEPTION: arp_credit_memo_module.build_net_revenue_sql()' );
2235: RAISE;
2236: END build_net_revenue_sql;
2237:
2238:
2274: l_rule_type VARCHAR2(10);
2275:
2276: BEGIN
2277:
2278: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()+' );
2279:
2280: /* bugfix : 642590 -- removed from here */
2281:
2282: --
2284: --
2285: BEGIN
2286:
2287: IF( net_rev_ctlid_t( 0 ) = p_prev_cust_trx_line_id ) THEN
2288: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()-' );
2289: RETURN;
2290: END IF;
2291:
2292: EXCEPTION
2417: net_rev_dist_exists_t(i) || '>', MSG_LEVEL_DEBUG );
2418: END LOOP;
2419: END IF;
2420:
2421: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()-' );
2422:
2423: EXCEPTION
2424: WHEN OTHERS THEN
2425: debug('EXCEPTION: arp_credit_memo_module.load_net_revenue_schedule('
2421: print_fcn_label('arp_credit_memo_module.load_net_revenue_schedule()-' );
2422:
2423: EXCEPTION
2424: WHEN OTHERS THEN
2425: debug('EXCEPTION: arp_credit_memo_module.load_net_revenue_schedule('
2426: || to_char(p_prev_cust_trx_line_id) || ')' );
2427: RAISE;
2428:
2429: END load_net_revenue_schedule;
2468: l_gl_dist_key_value_list gl_ca_utility_pkg.r_key_value_arr;
2469:
2470: BEGIN
2471:
2472: print_fcn_label('arp_credit_memo_module.credit_nonrule_transactions()+' );
2473:
2474: -----------------------------------------------------------------------
2475: -- Create dynamic sql
2476: -----------------------------------------------------------------------
2691: debug( 'EXCEPTION: Error executing update stmt' );
2692: RAISE;
2693: END;
2694:
2695: print_fcn_label('arp_credit_memo_module.credit_nonrule_transactions()-' );
2696:
2697: EXCEPTION
2698: WHEN OTHERS THEN
2699: debug( 'EXCEPTION: arp_credit_memo_module.credit_nonrule_transactions()' );
2695: print_fcn_label('arp_credit_memo_module.credit_nonrule_transactions()-' );
2696:
2697: EXCEPTION
2698: WHEN OTHERS THEN
2699: debug( 'EXCEPTION: arp_credit_memo_module.credit_nonrule_transactions()' );
2700: RAISE;
2701:
2702: END credit_nonrule_transactions;
2703:
2729: p_select_rec IN OUT NOCOPY select_rec_type ) IS
2730:
2731: BEGIN
2732:
2733: print_fcn_label2( 'arp_credit_memo_module.define_select_columns()+' );
2734:
2735: dbms_sql.define_column( p_select_c, 1, p_select_rec.customer_trx_line_id );
2736: dbms_sql.define_column( p_select_c, 2,
2737: p_select_rec.prev_cust_trx_line_id );
2760: dbms_sql.define_column( p_select_c, 17, p_select_rec.cm_unit_price);
2761: /* 4621029 end */
2762: /* 9478772 */
2763: dbms_sql.define_column( p_select_c, 18, p_select_rec.inv_rule_end_date);
2764: print_fcn_label2( 'arp_credit_memo_module.define_select_columns()-' );
2765:
2766: EXCEPTION
2767: WHEN OTHERS THEN
2768: debug('EXCEPTION: arp_credit_memo_module.define_select_columns()');
2764: print_fcn_label2( 'arp_credit_memo_module.define_select_columns()-' );
2765:
2766: EXCEPTION
2767: WHEN OTHERS THEN
2768: debug('EXCEPTION: arp_credit_memo_module.define_select_columns()');
2769: RAISE;
2770: END define_select_columns;
2771:
2772: ----------------------------------------------------------------------------
2795: p_select_c IN INTEGER,
2796: p_select_rec IN OUT NOCOPY select_rec_type ) IS
2797: BEGIN
2798:
2799: print_fcn_label2( 'arp_credit_memo_module.get_select_column_values()+' );
2800:
2801: dbms_sql.column_value( p_select_c, 1, p_select_rec.customer_trx_line_id );
2802: dbms_sql.column_value( p_select_c, 2, p_select_rec.prev_cust_trx_line_id );
2803: dbms_sql.column_value( p_select_c, 3,
2825: /* 9478772 */
2826: dbms_sql.column_value( p_select_c, 18, p_select_rec.inv_rule_end_date);
2827:
2828:
2829: print_fcn_label2( 'arp_credit_memo_module.get_select_column_values()-' );
2830:
2831: EXCEPTION
2832: WHEN OTHERS THEN
2833: debug('EXCEPTION: arp_credit_memo_module.get_select_column_values()');
2829: print_fcn_label2( 'arp_credit_memo_module.get_select_column_values()-' );
2830:
2831: EXCEPTION
2832: WHEN OTHERS THEN
2833: debug('EXCEPTION: arp_credit_memo_module.get_select_column_values()');
2834: RAISE;
2835: END get_select_column_values;
2836:
2837: ----------------------------------------------------------------------------
2857: ----------------------------------------------------------------------------
2858: PROCEDURE dump_select_rec( p_select_rec IN select_rec_type ) IS
2859: BEGIN
2860:
2861: print_fcn_label2( 'arp_credit_memo_module.dump_select_rec()+' );
2862:
2863: debug( ' Dumping select record: ', MSG_LEVEL_DEBUG );
2864: debug( ' customer_trx_line_id='
2865: || to_char( p_select_rec.customer_trx_line_id ), MSG_LEVEL_DEBUG );
2897: || p_select_rec.partial_period_flag, MSG_LEVEL_DEBUG );
2898: debug( ' invoice_rule_end_date='
2899: || p_select_rec.inv_rule_end_date, MSG_LEVEL_DEBUG );
2900:
2901: print_fcn_label2( 'arp_credit_memo_module.dump_select_rec()-' );
2902:
2903: EXCEPTION
2904: WHEN OTHERS THEN
2905: debug( 'EXCEPTION: arp_credit_memo_module.dump_select_rec()' );
2901: print_fcn_label2( 'arp_credit_memo_module.dump_select_rec()-' );
2902:
2903: EXCEPTION
2904: WHEN OTHERS THEN
2905: debug( 'EXCEPTION: arp_credit_memo_module.dump_select_rec()' );
2906: RAISE;
2907: END dump_select_rec;
2908:
2909: ----------------------------------------------------------------------------
2941: RETURN BOOLEAN IS
2942:
2943: BEGIN
2944:
2945: print_fcn_label2('arp_credit_memo_module.find_cm_schedule()+' );
2946:
2947: BEGIN
2948:
2949: FOR i IN 0..cm_sched_index LOOP
2951: cm_sched_orig_gl_date_t( i ) = p_search_date ) THEN
2952:
2953: p_match_index := i;
2954: debug( ' Match at index ' || i, MSG_LEVEL_DEBUG );
2955: print_fcn_label('arp_credit_memo_module.find_cm_schedule()-' );
2956:
2957: RETURN TRUE; -- Done
2958:
2959: END IF;
2964: null; -- table not set up yet
2965: END;
2966:
2967: debug( ' No match', MSG_LEVEL_DEBUG );
2968: print_fcn_label2('arp_credit_memo_module.find_cm_schedule()-' );
2969:
2970: RETURN FALSE;
2971:
2972: EXCEPTION
2970: RETURN FALSE;
2971:
2972: EXCEPTION
2973: WHEN OTHERS THEN
2974: debug( 'EXCEPTION: arp_credit_memo_module.find_cm_schedule('
2975: || to_char(p_line_id) || ', '
2976: || to_char(p_search_date) || ')' );
2977: RAISE;
2978:
3007: gl_dist_id ra_cust_trx_line_gl_dist.cust_trx_line_gl_dist_id%TYPE;
3008:
3009: BEGIN
3010:
3011: print_fcn_label2('arp_credit_memo_module.write_cm_sched_to_table()+' );
3012:
3013: /* Bug 1956518: Added 'REVERSE' for the 'FOR LOOP' so that the
3014: distribution lines will be inserted in ascending order of
3015: gl_date when the rules method is 'PRORATE'. */
3212: END IF;
3213:
3214: END LOOP;
3215:
3216: print_fcn_label2('arp_credit_memo_module.write_cm_sched_to_table()-' );
3217:
3218: EXCEPTION
3219: WHEN OTHERS THEN
3220: debug( 'EXCEPTION: arp_credit_memo_module.write_cm_sched_to_table()' );
3216: print_fcn_label2('arp_credit_memo_module.write_cm_sched_to_table()-' );
3217:
3218: EXCEPTION
3219: WHEN OTHERS THEN
3220: debug( 'EXCEPTION: arp_credit_memo_module.write_cm_sched_to_table()' );
3221: RAISE;
3222: END write_cm_sched_to_table;
3223:
3224: ------------------------------------------------------------------------
3225:
3226: PROCEDURE clear_cm_sched_tables IS
3227:
3228: BEGIN
3229: print_fcn_label2('arp_credit_memo_module.clear_cm_sched_tables()+' );
3230:
3231: cm_sched_ctlid_t := null_cm_sched_ctlid;
3232: cm_sched_gl_date_t:= null_cm_sched_gl_date;
3233: cm_sched_orig_gl_date_t:=null_cm_sched_orig_gl_date;
3241:
3242: /* 4602892 - reset net_rev arrays */
3243: net_rev_ctlid_t( 0 ) := 0;
3244:
3245: print_fcn_label2('arp_credit_memo_module.clear_cm_sched_tables()-' );
3246:
3247: EXCEPTION
3248: WHEN OTHERS THEN
3249: debug( 'EXCEPTION: arp_credit_memo_module.clear_cm_sched_tables()' );
3245: print_fcn_label2('arp_credit_memo_module.clear_cm_sched_tables()-' );
3246:
3247: EXCEPTION
3248: WHEN OTHERS THEN
3249: debug( 'EXCEPTION: arp_credit_memo_module.clear_cm_sched_tables()' );
3250: RAISE;
3251: END clear_cm_sched_tables;
3252:
3253:
3294: l_index BINARY_INTEGER;
3295:
3296: BEGIN
3297:
3298: print_fcn_label('arp_credit_memo_module.insert_cm_schedule()+' );
3299:
3300: /* 4633761 - removed write and clear logic... It was
3301: interferring with LIFO CM processing. Moved to
3302: main processing area in credit_rule_transactions */
3322: cm_sched_check_gl_date_t( cm_sched_index ) := p_check_gl_date_flag;
3323:
3324: cm_sched_index := cm_sched_index + 1;
3325:
3326: print_fcn_label('arp_credit_memo_module.insert_cm_schedule()-' );
3327:
3328:
3329: EXCEPTION
3330: WHEN OTHERS THEN
3327:
3328:
3329: EXCEPTION
3330: WHEN OTHERS THEN
3331: debug( 'EXCEPTION: arp_credit_memo_module.insert_cm_schedule('
3332: || to_char(p_line_id) || ', '
3333: || to_char(p_gl_date) || ', '
3334: || to_char(p_orig_gl_date) || ', '
3335: || to_char(p_amount) || ', '
3377: l_index BINARY_INTEGER;
3378:
3379: BEGIN
3380:
3381: print_fcn_label('arp_credit_memo_module.update_cm_schedule()+' );
3382:
3383: IF( find_cm_schedule( p_line_id,
3384: p_gl_date,
3385: l_index ) = FALSE ) THEN
3383: IF( find_cm_schedule( p_line_id,
3384: p_gl_date,
3385: l_index ) = FALSE ) THEN
3386:
3387: print_fcn_label('arp_credit_memo_module.update_cm_schedule()-' );
3388:
3389: RETURN FALSE; -- didn't find record
3390:
3391: ELSE
3394: RETURN TRUE;
3395:
3396: END IF;
3397:
3398: print_fcn_label('arp_credit_memo_module.update_cm_schedule()-' );
3399:
3400:
3401: EXCEPTION
3402: WHEN OTHERS THEN
3399:
3400:
3401: EXCEPTION
3402: WHEN OTHERS THEN
3403: debug( 'EXCEPTION: arp_credit_memo_module.update_cm_schedule('
3404: || to_char(p_line_id) || ', '
3405: || to_char(p_gl_date) || ', '
3406: || to_char(p_amount) || ')' );
3407: RAISE;
3461: l_error_message varchar2(300);
3462:
3463: BEGIN
3464:
3465: print_fcn_label('arp_credit_memo_module.process_cm_schedule()+' );
3466:
3467: debug(' p_mode='||p_mode, MSG_LEVEL_DEBUG);
3468: debug(' p_line_id='||p_line_id, MSG_LEVEL_DEBUG);
3469: debug(' p_gl_date='||to_char(p_gl_date), MSG_LEVEL_DEBUG);
3520: l_defaulting_rule_used,
3521: l_error_message);
3522: EXCEPTION
3523: WHEN OTHERS THEN
3524: debug( 'EXCEPTION: arp_credit_memo_module.process_cm_schedule Validate GL Date ');
3525: RAISE;
3526: END;
3527: debug('setting pg_closed_period_exists to Y');
3528: pg_closed_period_exists := 'Y';
3628:
3629: END IF;
3630:
3631:
3632: print_fcn_label('arp_credit_memo_module.process_cm_schedule()-' );
3633:
3634: EXCEPTION
3635: WHEN OTHERS THEN
3636: debug( 'EXCEPTION: arp_credit_memo_module.process_cm_schedule('
3632: print_fcn_label('arp_credit_memo_module.process_cm_schedule()-' );
3633:
3634: EXCEPTION
3635: WHEN OTHERS THEN
3636: debug( 'EXCEPTION: arp_credit_memo_module.process_cm_schedule('
3637: || p_mode || ', '
3638: || to_char(p_line_id) || ', '
3639: || to_char(p_gl_date) || ', '
3640: || to_char(p_amount) || ', '
3682: RETURN BOOLEAN IS
3683:
3684: BEGIN
3685:
3686: print_fcn_label2('arp_credit_memo_module.find_net_revenue()+' );
3687:
3688: debug( 'p_line_id='||p_line_id, MSG_LEVEL_DEBUG );
3689: debug( 'p_search_date='||to_char(p_search_date, 'DD-MON-YYYY'),
3690: MSG_LEVEL_DEBUG );
3694: net_rev_gl_date_t(i) = p_search_date ) THEN
3695:
3696: p_match_index := i;
3697: debug( ' Match at index ' || i, MSG_LEVEL_DEBUG );
3698: print_fcn_label2('arp_credit_memo_module.find_net_revenue()-' );
3699:
3700: RETURN TRUE;
3701:
3702: END IF;
3702: END IF;
3703: END LOOP;
3704:
3705: debug( ' No match', MSG_LEVEL_DEBUG );
3706: print_fcn_label2('arp_credit_memo_module.find_net_revenue()-' );
3707:
3708: RETURN FALSE;
3709:
3710: EXCEPTION
3708: RETURN FALSE;
3709:
3710: EXCEPTION
3711: WHEN OTHERS THEN
3712: debug( 'EXCEPTION: arp_credit_memo_module.find_net_revenue('
3713: || to_char(p_line_id) || ', '
3714: || to_char(p_search_date) || ')' );
3715: RAISE;
3716:
3727: RETURN net_rev_dist_exists_t( p_index );
3728:
3729: EXCEPTION
3730: WHEN OTHERS THEN
3731: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_dist_exists('
3732: || to_char(p_index) || ')' );
3733: RAISE;
3734:
3735: END get_net_rev_dist_exists;
3745: RETURN net_rev_gl_date_t( p_index );
3746:
3747: EXCEPTION
3748: WHEN OTHERS THEN
3749: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_gl_date('
3750: || to_char(p_index) || ')' );
3751: RAISE;
3752:
3753: END get_net_rev_gl_date;
3763: RETURN net_rev_amount_t( p_index );
3764:
3765: EXCEPTION
3766: WHEN OTHERS THEN
3767: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_amount('
3768: || to_char(p_index) || ')' );
3769: RAISE;
3770:
3771: END get_net_rev_amount;
3789: RETURN l_amount;
3790:
3791: EXCEPTION
3792: WHEN OTHERS THEN
3793: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_total_amount('
3794: || to_char(p_start_index) || ', '
3795: || to_char(p_end_index) || ')' );
3796: RAISE;
3797:
3808: RETURN net_rev_unit_t( p_index );
3809:
3810: EXCEPTION
3811: WHEN OTHERS THEN
3812: debug( 'EXCEPTION: arp_credit_memo_module.get_net_rev_unit('
3813: || to_char(p_index) || ')' );
3814: RAISE;
3815:
3816: END get_net_rev_unit;
3826: net_rev_amount_t( p_index ) := p_amount;
3827:
3828: EXCEPTION
3829: WHEN OTHERS THEN
3830: debug( 'EXCEPTION: arp_credit_memo_module.update_net_revenue('
3831: || to_char(p_index) || ')' );
3832: RAISE;
3833:
3834: END update_net_revenue;
3844: net_rev_unit_t( p_index ) := p_amount;
3845:
3846: EXCEPTION
3847: WHEN OTHERS THEN
3848: debug( 'EXCEPTION: arp_credit_memo_module.update_net_rev_unit('
3849: || to_char(p_index) || ')' );
3850: RAISE;
3851:
3852: END update_net_rev_unit;
3867: l_found_last_nonzero_period BOOLEAN := FALSE;
3868:
3869: BEGIN
3870:
3871: print_fcn_label('arp_credit_memo_module.process_prorate_cm()+' );
3872:
3873: debug( ' p_start_index='||p_start_index, MSG_LEVEL_DEBUG );
3874: debug( ' p_end_index='||p_end_index, MSG_LEVEL_DEBUG );
3875: -----------------------------------------------------------------
4014: null;
4015:
4016: END LOOP;
4017:
4018: print_fcn_label('arp_credit_memo_module.process_prorate_cm()-' );
4019:
4020: EXCEPTION
4021: WHEN OTHERS THEN
4022: debug( 'EXCEPTION: arp_credit_memo_module.process_prorate_cm('
4018: print_fcn_label('arp_credit_memo_module.process_prorate_cm()-' );
4019:
4020: EXCEPTION
4021: WHEN OTHERS THEN
4022: debug( 'EXCEPTION: arp_credit_memo_module.process_prorate_cm('
4023: || to_char(p_start_index) || ', '
4024: || to_char(p_end_index) || ')' );
4025: RAISE;
4026: END;
4035:
4036: l_amount NUMBER;
4037: BEGIN
4038:
4039: print_fcn_label('arp_credit_memo_module.process_lifo_cm()+' );
4040:
4041: debug( ' p_start_index='||p_start_index, MSG_LEVEL_DEBUG );
4042: debug( ' p_end_index='||p_end_index, MSG_LEVEL_DEBUG );
4043:
4183:
4184: END LOOP;
4185:
4186: <
4187: print_fcn_label('arp_credit_memo_module.process_lifo_cm()-' );
4188:
4189: EXCEPTION
4190: WHEN OTHERS THEN
4191: debug( 'EXCEPTION: arp_credit_memo_module.process_lifo_cm('
4187: print_fcn_label('arp_credit_memo_module.process_lifo_cm()-' );
4188:
4189: EXCEPTION
4190: WHEN OTHERS THEN
4191: debug( 'EXCEPTION: arp_credit_memo_module.process_lifo_cm('
4192: || to_char(p_start_index) || ', '
4193: || to_char(p_end_index) || ')' );
4194: RAISE;
4195: END;
4207: l_last_period_ratio NUMBER;
4208:
4209: BEGIN
4210:
4211: print_fcn_label('arp_credit_memo_module.process_unit_cm()+' );
4212:
4213: FOR i IN REVERSE p_start_index..p_end_index LOOP
4214:
4215: debug(' i='||i, MSG_LEVEL_DEBUG);
4362: END IF;
4363:
4364: END LOOP;
4365:
4366: print_fcn_label('arp_credit_memo_module.process_unit_cm()-' );
4367:
4368: EXCEPTION
4369: WHEN OTHERS THEN
4370: debug( 'EXCEPTION: arp_credit_memo_module.process_unit_cm('
4366: print_fcn_label('arp_credit_memo_module.process_unit_cm()-' );
4367:
4368: EXCEPTION
4369: WHEN OTHERS THEN
4370: debug( 'EXCEPTION: arp_credit_memo_module.process_unit_cm('
4371: || to_char(p_start_index) || ', '
4372: || to_char(p_end_index) || ')' );
4373: RAISE;
4374: END;
4413: l_net_rev_gl_date DATE;
4414:
4415: BEGIN
4416:
4417: print_fcn_label('arp_credit_memo_module.process_line()+' );
4418:
4419: -----------------------------------------------------------------------
4420: -- Initialize
4421: -----------------------------------------------------------------------
4844: debug('Resetting pg_closed_period_exists to NULL 5');
4845: pg_closed_period_exists := NULL;
4846: /* End 4357764 */
4847:
4848: print_fcn_label('arp_credit_memo_module.process_line()-' );
4849:
4850: EXCEPTION
4851: WHEN OTHERS THEN
4852: debug( 'EXCEPTION: arp_credit_memo_module.process_line()' );
4848: print_fcn_label('arp_credit_memo_module.process_line()-' );
4849:
4850: EXCEPTION
4851: WHEN OTHERS THEN
4852: debug( 'EXCEPTION: arp_credit_memo_module.process_line()' );
4853: RAISE;
4854: END process_line;
4855:
4856: ----------------------------------------------------------------------------
4896:
4897:
4898: BEGIN
4899:
4900: print_fcn_label('arp_credit_memo_module.credit_rule_transactions()+' );
4901:
4902: ---------------------------------------------------------------
4903: -- Create dynamic sql
4904: ---------------------------------------------------------------
5226: END;
5227:
5228:
5229:
5230: print_fcn_label('arp_credit_memo_module.credit_rule_transactions()-' );
5231:
5232: EXCEPTION
5233: WHEN NO_DATA_FOUND THEN
5234: RAISE;
5232: EXCEPTION
5233: WHEN NO_DATA_FOUND THEN
5234: RAISE;
5235: WHEN OTHERS THEN
5236: debug( 'EXCEPTION: arp_credit_memo_module.credit_rule_transactions()');
5237: RAISE;
5238:
5239: END credit_rule_transactions;
5240:
5261: --
5262: -- OUT:
5263: --
5264: -- NOTES:
5265: -- Raises the exception arp_credit_memo_module.no_ccid if autoaccounting
5266: -- could not derive a valid code combination. The public variable
5267: -- g_error_buffer is populated for more information.
5268: --
5269: -- Raises the exception NO_DATA_FOUND if no rows were selected for
5341: AND substr(rl.type, 1,1) = 'P');
5342:
5343: BEGIN
5344:
5345: print_fcn_label('arp_credit_memo_module.credit_transactions_ins_mode()+' );
5346:
5347: ------------------------------
5348: -- Populate control record
5349: ------------------------------
5696: inline */
5697:
5698: close_cursors;
5699:
5700: print_fcn_label('arp_credit_memo_module.credit_transactions_ins_mode()-' );
5701:
5702: EXCEPTION
5703: WHEN NO_REC_OFFSET_EXCEPTION THEN
5704: /* set_rec_offset_flag executed and was unable to set
5727: RAISE;
5728: END IF;
5729:
5730: WHEN OTHERS THEN
5731: debug( 'EXCEPTION: arp_credit_memo_module.credit_transactions_ins_mode('
5732: || to_char(p_customer_trx_id) || ', '
5733: || to_char(p_customer_trx_line_id) || ', '
5734: || to_char(p_prev_customer_trx_id) || ', '
5735: || to_char(p_prev_cust_trx_line_id) || ', '
5783: --
5784: -- NOTES:
5785: -- Calls credit_transactions_ins_mode.
5786: --
5787: -- Raises the exception arp_credit_memo_module.no_ccid if autoaccounting
5788: -- could not derive a valid code combination. The public variable
5789: -- g_error_buffer is populated for more information.
5790: --
5791: -- Raises the exception NO_DATA_FOUND if no rows were selected for
5818: gl_line_dist_array dbms_sql.number_table; /* mrc */
5819: l_xla_ev_rec ARP_XLA_EVENTS.XLA_EVENTS_TYPE; -- bug5870933
5820:
5821: BEGIN
5822: print_fcn_label('arp_credit_memo_module.credit_transactions()+' );
5823:
5824:
5825: --------------------------------------------------------------------
5826: -- Check parameters
6082: arp_xla_events.create_events(l_xla_ev_rec);
6083: END IF;
6084:
6085:
6086: print_fcn_label('arp_credit_memo_module.credit_transactions()-' );
6087:
6088: END credit_transactions;
6089:
6090: ----------------------------------------------------------------------------
6112: -- NOTES:
6113: -- This is the older version of the API and is a cover to the new version.
6114: -- It exists for backward compatibillity.
6115: --
6116: -- Raises the exception arp_credit_memo_module.no_ccid if autoaccounting
6117: -- could not derive a valid code combination. The public variable
6118: -- g_error_buffer is populated for more information.
6119: --
6120: -- Raises the exception NO_DATA_FOUND if no rows were selected for
6143: l_number NUMBER;
6144:
6145: BEGIN
6146:
6147: print_fcn_label('arp_credit_memo_module.credit_transactions_cover()+' );
6148:
6149: credit_transactions(
6150: p_customer_trx_id,
6151: p_customer_trx_line_id,
6157: l_number, -- accounting_rule_duration
6158: p_process_mode
6159: );
6160:
6161: print_fcn_label('arp_credit_memo_module.credit_transactions_cover()-' );
6162:
6163: END credit_transactions;
6164:
6165:
6506: --
6507: PROCEDURE init IS
6508: BEGIN
6509:
6510: print_fcn_label( 'arp_credit_memo_module.constructor()+' );
6511:
6512: /* Bug 2560036 - determine if collectibility is enabled */
6513: g_test_collectibility :=
6514: ar_revenue_management_pvt.revenue_management_enabled;
6514: ar_revenue_management_pvt.revenue_management_enabled;
6515:
6516: get_error_message_text;
6517:
6518: print_fcn_label( 'arp_credit_memo_module.constructor()-' );
6519:
6520:
6521: EXCEPTION
6522: WHEN OTHERS THEN
6519:
6520:
6521: EXCEPTION
6522: WHEN OTHERS THEN
6523: debug('EXCEPTION: arp_credit_memo_module.constructor()');
6524: debug(SQLERRM);
6525: RAISE;
6526: END init;
6527:
6527:
6528: BEGIN
6529: init;
6530:
6531: END arp_credit_memo_module;