39: l_org_id NUMBER;
40:
41: BEGIN
42: IF PG_DEBUG in ('Y', 'C') THEN
43: arp_util.debug('arp_process_writeoff.submit_report()+');
44: END IF;
45:
46: l_request_id := fnd_global.conc_request_id;
47:
167: , argument99 => ''
168: , argument100 => '');
169: END IF;
170: IF PG_DEBUG in ('Y', 'C') THEN
171: arp_util.debug('arp_process_writeoff.submit_report()-');
172: END IF;
173:
174: EXCEPTION
175: WHEN OTHERS THEN
173:
174: EXCEPTION
175: WHEN OTHERS THEN
176: IF PG_DEBUG in ('Y', 'C') THEN
177: arp_util.debug('arp_process_writeoff.submit_report() '||SQLERRM);
178: END IF;
179:
180: END submit_report;
181: /*========================================================================
347: group by acr.cash_receipt_id,acr.receipt_number,acr.amount,
348: acr.exchange_rate,crh.batch_id;
349:
350: BEGIN
351: arp_util.debug('arp_process_writeoff.creare_receipt_writeoff()+');
352:
353: arp_util.debug('p_receipt curreny '||p_receipt_currency_code);
354: arp_util.debug('p_unapp_amount '||p_unapp_amount);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
349:
350: BEGIN
351: arp_util.debug('arp_process_writeoff.creare_receipt_writeoff()+');
352:
353: arp_util.debug('p_receipt curreny '||p_receipt_currency_code);
354: arp_util.debug('p_unapp_amount '||p_unapp_amount);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
350: BEGIN
351: arp_util.debug('arp_process_writeoff.creare_receipt_writeoff()+');
352:
353: arp_util.debug('p_receipt curreny '||p_receipt_currency_code);
354: arp_util.debug('p_unapp_amount '||p_unapp_amount);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
351: arp_util.debug('arp_process_writeoff.creare_receipt_writeoff()+');
352:
353: arp_util.debug('p_receipt curreny '||p_receipt_currency_code);
354: arp_util.debug('p_unapp_amount '||p_unapp_amount);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
352:
353: arp_util.debug('p_receipt curreny '||p_receipt_currency_code);
354: arp_util.debug('p_unapp_amount '||p_unapp_amount);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
353: arp_util.debug('p_receipt curreny '||p_receipt_currency_code);
354: arp_util.debug('p_unapp_amount '||p_unapp_amount);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
354: arp_util.debug('p_unapp_amount '||p_unapp_amount);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
355: arp_util.debug('p_unapp_amount_percent '||p_unapp_amount_percent);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
356: arp_util.debug('p_receipt_date_from '||p_receipt_date_from);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
364: arp_util.debug('p_gl_date '||p_gl_date);
357: arp_util.debug('p_receipt_date_to '||p_receipt_date_to);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
364: arp_util.debug('p_gl_date '||p_gl_date);
365: arp_util.debug('p_receipt_number '||p_receipt_number);
358: arp_util.debug('p_receipt_gl_date_from '||p_receipt_gl_date_from);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
364: arp_util.debug('p_gl_date '||p_gl_date);
365: arp_util.debug('p_receipt_number '||p_receipt_number);
366: arp_util.debug('p_comments '||p_comments);
359: arp_util.debug('p_receipt_gl_date_to '||p_receipt_gl_date_to);
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
364: arp_util.debug('p_gl_date '||p_gl_date);
365: arp_util.debug('p_receipt_number '||p_receipt_number);
366: arp_util.debug('p_comments '||p_comments);
367:
360: arp_util.debug('p_receipt_method_id '||p_receipt_method_id);
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
364: arp_util.debug('p_gl_date '||p_gl_date);
365: arp_util.debug('p_receipt_number '||p_receipt_number);
366: arp_util.debug('p_comments '||p_comments);
367:
368: --Convert the IN variables
361: arp_util.debug('p_customer_number '||p_customer_number);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
364: arp_util.debug('p_gl_date '||p_gl_date);
365: arp_util.debug('p_receipt_number '||p_receipt_number);
366: arp_util.debug('p_comments '||p_comments);
367:
368: --Convert the IN variables
369: l_unapp_amount := FND_NUMBER.CANONICAL_TO_NUMBER(p_unapp_amount);
362: arp_util.debug('p_receivable_trx_id '||p_receivable_trx_id);
363: arp_util.debug('p_apply_date '||p_apply_date);
364: arp_util.debug('p_gl_date '||p_gl_date);
365: arp_util.debug('p_receipt_number '||p_receipt_number);
366: arp_util.debug('p_comments '||p_comments);
367:
368: --Convert the IN variables
369: l_unapp_amount := FND_NUMBER.CANONICAL_TO_NUMBER(p_unapp_amount);
370: l_unapp_amount_percent := FND_NUMBER.CANONICAL_TO_NUMBER(p_unapp_amount_percent);
415: ELSE
416: --Get the customer id for the customer number
417: IF p_customer_number IS NOT NULL
418: THEN
419: l_customer_id := to_number(arp_util.Get_Id( 'CUSTOMER_NUMBER',
420: l_customer_number,
421: l_return_status));
422: IF l_customer_id IS NULL THEN
423: FND_MESSAGE.SET_NAME('AR','AR_RAPI_CUS_NUM_INVALID');
425: l_return_status := FND_API.G_RET_STS_ERROR;
426: END IF;
427: END IF;
428:
429: arp_util.debug('Customer ID '||to_char(l_customer_id));
430:
431: arp_util.debug('User Approval Limits From : '||to_char(l_amount_from)||
432: 'To : '||to_char(l_amount_to));
433:
427: END IF;
428:
429: arp_util.debug('Customer ID '||to_char(l_customer_id));
430:
431: arp_util.debug('User Approval Limits From : '||to_char(l_amount_from)||
432: 'To : '||to_char(l_amount_to));
433:
434:
435: --Get the functional currency
434:
435: --Get the functional currency
436: l_functional_currency := arp_global.functional_currency;
437: l_min_wrt_off_amount := arp_global.sysparam.min_wrtoff_amount;
438: arp_util.debug('Minimum write-off limit :'||to_char(l_min_wrt_off_amount));
439: l_max_wrt_off_amount := arp_global.sysparam.max_wrtoff_amount;
440: arp_util.debug('Maximum write-off limit :'||to_char(l_max_wrt_off_amount));
441:
442: IF l_max_wrt_off_amount IS NULL THEN
436: l_functional_currency := arp_global.functional_currency;
437: l_min_wrt_off_amount := arp_global.sysparam.min_wrtoff_amount;
438: arp_util.debug('Minimum write-off limit :'||to_char(l_min_wrt_off_amount));
439: l_max_wrt_off_amount := arp_global.sysparam.max_wrtoff_amount;
440: arp_util.debug('Maximum write-off limit :'||to_char(l_max_wrt_off_amount));
441:
442: IF l_max_wrt_off_amount IS NULL THEN
443: fnd_message.set_name ('AR','AR_SYSTEM_WR_NO_LIMIT_SET');
444: app_exception.raise_exception;
443: fnd_message.set_name ('AR','AR_SYSTEM_WR_NO_LIMIT_SET');
444: app_exception.raise_exception;
445: END IF;
446:
447: arp_util.debug('Functional Currency :'||l_functional_currency);
448:
449: FOR writeoff_rec IN writeoff_cur(l_receipt_currency_code,
450: l_receipt_date_from,
451: l_receipt_date_to,
574:
575: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS )
576: THEN
577:
578: arp_util.debug('arp_process_writeoff - Failed for Receipt : '||
579: writeoff_rec.receipt_number );
580: arp_util.debug('p_return_status : ' || l_return_status);
581: arp_util.debug('p_msg_count : ' || l_msg_count);
582: arp_util.debug('p_msg_data : ' || l_msg_data);
576: THEN
577:
578: arp_util.debug('arp_process_writeoff - Failed for Receipt : '||
579: writeoff_rec.receipt_number );
580: arp_util.debug('p_return_status : ' || l_return_status);
581: arp_util.debug('p_msg_count : ' || l_msg_count);
582: arp_util.debug('p_msg_data : ' || l_msg_data);
583:
584: --Bug 1788596 - begin changes
577:
578: arp_util.debug('arp_process_writeoff - Failed for Receipt : '||
579: writeoff_rec.receipt_number );
580: arp_util.debug('p_return_status : ' || l_return_status);
581: arp_util.debug('p_msg_count : ' || l_msg_count);
582: arp_util.debug('p_msg_data : ' || l_msg_data);
583:
584: --Bug 1788596 - begin changes
585:
578: arp_util.debug('arp_process_writeoff - Failed for Receipt : '||
579: writeoff_rec.receipt_number );
580: arp_util.debug('p_return_status : ' || l_return_status);
581: arp_util.debug('p_msg_count : ' || l_msg_count);
582: arp_util.debug('p_msg_data : ' || l_msg_data);
583:
584: --Bug 1788596 - begin changes
585:
586: IF l_msg_count = 1 THEN
607:
608: /*5444407*/
609: IF arp_process_writeoff.gt_rec_wrt_off_type.COUNT <> 0 THEN
610: l_cnt:=arp_process_writeoff.gt_rec_wrt_off_type.COUNT;
611: arp_util.debug(' Count of records in PL/SQL table :' || to_char(l_cnt));
612: i := arp_process_writeoff.gt_rec_wrt_off_type.FIRST;
613: WHILE i IS NOT NULL LOOP
614: l_batch_id:=arp_process_writeoff.gt_rec_wrt_off_type(i).batch_id;
615: arp_rw_batches_check_pkg.update_batch_status(l_batch_id);
626: --for 1644863
627: arp_process_writeoff.submit_report(l_receipt_currency_code,l_apply_date,l_gl_date);
628: END IF;
629: END IF;
630: arp_util.debug('Total Number of Receipts written off :'||to_char(l_number_of_records_writtenoff));
631:
632: arp_util.debug('arp_process_writeoff.creare_receipt_writeoff()-');
633:
634: EXCEPTION
628: END IF;
629: END IF;
630: arp_util.debug('Total Number of Receipts written off :'||to_char(l_number_of_records_writtenoff));
631:
632: arp_util.debug('arp_process_writeoff.creare_receipt_writeoff()-');
633:
634: EXCEPTION
635: WHEN OTHERS THEN
636: arp_util.debug('EXCEPTION:arp_process_writeoff.cretre_receipt_writeoff()'||SQLERRM);
632: arp_util.debug('arp_process_writeoff.creare_receipt_writeoff()-');
633:
634: EXCEPTION
635: WHEN OTHERS THEN
636: arp_util.debug('EXCEPTION:arp_process_writeoff.cretre_receipt_writeoff()'||SQLERRM);
637: RAISE;
638:
639: END;
640: /*========================================================================
694: l_amount_from NUMBER;
695: l_functional_currency ar_cash_receipts.currency_code%TYPE;
696:
697: BEGIN
698: arp_util.debug('arp_process_writeoff.unapplied_amount()+');
699: l_functional_currency := arp_global.functional_currency;
700:
701: IF nvl(p_request_id,0) = 0
702: THEN
797:
798: RETURN (l_unapp_amount_balance);
799: END IF;
800:
801: arp_util.debug('arp_process_writeoff.unapplied_amount()+');
802:
803: EXCEPTION
804: WHEN OTHERS THEN
805: arp_util.debug('EXCEPTION :arp_process_writeoff.unapplied_amount()'
801: arp_util.debug('arp_process_writeoff.unapplied_amount()+');
802:
803: EXCEPTION
804: WHEN OTHERS THEN
805: arp_util.debug('EXCEPTION :arp_process_writeoff.unapplied_amount()'
806: ||SQLERRM);
807: RETURN (0);
808: END;
809: /*========================================================================
841:
842: l_applied_amount NUMBER;
843:
844: BEGIN
845: arp_util.debug('arp_process_writeoff.applied_amount()+');
846:
847: IF NVL(p_request_id,0) <> 0
848: THEN
849: --Sum of the applied amount excluding the current one with the request id
883: ar_receivable_applications ra
884: WHERE ra.cash_receipt_id = p_cash_receipt_id;
885: END IF;
886:
887: arp_util.debug('arp_process_writeoff.applied_amount()-');
888: RETURN (l_applied_amount);
889:
890: EXCEPTION
891: WHEN OTHERS THEN
888: RETURN (l_applied_amount);
889:
890: EXCEPTION
891: WHEN OTHERS THEN
892: arp_util.debug('EXCEPTION :arp_process_writeoff.applied_amount()'||SQLERRM);
893: RETURN (0);
894:
895: END;
896:
924:
925: l_on_account_amount NUMBER;
926:
927: BEGIN
928: arp_util.debug('arp_process_writeoff.on_account_amount()+');
929:
930: SELECT
931: SUM(DECODE(ra.status,'ACC', NVL(ra.amount_applied, 0),
932: 0)) on_account_amount
934: FROM
935: ar_receivable_applications ra
936: WHERE ra.cash_receipt_id = p_cash_receipt_id;
937:
938: arp_util.debug('arp_process_writeoff.on_account_amount()-');
939:
940: RETURN (l_on_account_amount);
941: EXCEPTION
942: WHEN OTHERS THEN
939:
940: RETURN (l_on_account_amount);
941: EXCEPTION
942: WHEN OTHERS THEN
943: arp_util.debug('arp_process_writeoff.on_account_amount() '||SQLERRM);
944: RETURN (0);
945:
946: END;
947:
978: l_segment_value varchar2(25);
979:
980: BEGIN
981:
982: arp_util.debug('arp_process_writeoff.balancing_segment()+');
983:
984: SELECT fa_rx_flex_pkg.flex_sql(101,'GL#',chart_of_accounts_id,NULL,
985: 'SELECT','GL_BALANCING')
986: INTO l_balancing_segment
991: FROM gl_code_combinations where code_combination_id=:bind_ccid';
992:
993: EXECUTE IMMEDIATE l_str INTO l_segment_value USING p_code_combination_id;
994:
995: arp_util.debug('arp_process_writeoff.balancing_segment()-');
996:
997: RETURN l_segment_value;
998:
999: EXCEPTION
997: RETURN l_segment_value;
998:
999: EXCEPTION
1000: WHEN OTHERS THEN
1001: arp_util.debug('arp_process_writeoff.balancing_segment() '||SQLERRM);
1002: RETURN (NULL);
1003: END;
1004: BEGIN
1005: arp_global.init_global;