150: WHERE user_status_id = p_user_status_id
151: AND system_status_type = 'OZF_FUND_STATUS'
152: AND enabled_flag = 'Y';
153: BEGIN
154: x_return_status := fnd_api.g_ret_sts_success;
155: OPEN c_status_code;
156: FETCH c_status_code INTO l_status_code;
157: CLOSE c_status_code;
158:
156: FETCH c_status_code INTO l_status_code;
157: CLOSE c_status_code;
158:
159: IF l_status_code IS NULL THEN
160: x_return_status := fnd_api.g_ret_sts_error;
161: Ozf_utility_pvt.error_message('OZF_FUND_BAD_USER_STATUS');
162: END IF;
163:
164: x_status_code := l_status_code;
188: WHERE UPPER(system_status_code) = UPPER(p_status_code)
189: AND system_status_type = 'OZF_FUND_STATUS'
190: AND enabled_flag = 'Y';
191: BEGIN
192: x_return_status := fnd_api.g_ret_sts_success;
193: OPEN c_user_status_id;
194: FETCH c_user_status_id INTO l_user_status_id;
195: CLOSE c_user_status_id;
196:
194: FETCH c_user_status_id INTO l_user_status_id;
195: CLOSE c_user_status_id;
196:
197: IF l_user_status_id IS NULL THEN
198: x_return_status := fnd_api.g_ret_sts_error;
199: Ozf_utility_pvt.error_message('OZF_FUND_BAD_USER_STATUS');
200: END IF;
201:
202: x_user_status_id := l_user_status_id;
230: SELECT fund_number
231: FROM ozf_funds_all_b
232: WHERE fund_id = p_fund_id;
233: BEGIN
234: x_return_status := fnd_api.g_ret_sts_success;
235: OPEN c_child_count(p_parent_fund_id);
236: FETCH c_child_count INTO l_count;
237: CLOSE c_child_count;
238: OPEN c_parent_number(p_parent_fund_id);
244: fnd_message.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
245: fnd_msg_pub.add;
246: END IF;
247:
248: x_return_status := fnd_api.g_ret_sts_error;
249: END IF;
250:
251: x_code := SUBSTRB(l_par_number || l_count, 1, 30);
252:
252:
253: --asylvia Fixed bug 5073532
254: WHILE ozf_utility_pvt.check_uniqueness('ozf_funds_all_b'
255: ,'fund_number = ''' || x_code || '''') =
256: fnd_api.g_false LOOP
257: l_count := l_count + 1 ;
258: x_code :=SUBSTRB(l_par_number || l_count, 1, 30);
259: END LOOP;
260:
318:
319:
320: EXCEPTION
321: WHEN OTHERS THEN
322: RAISE Fnd_Api.g_exc_error;
323: ozf_utility_pvt.debug_message('Exception in raising business event');
324: END;
325:
326:
344: ---------------------------------------------------------------------
345:
346: PROCEDURE create_fund(
347: p_api_version IN NUMBER
348: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
349: ,p_commit IN VARCHAR2 := fnd_api.g_false
350: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
351: ,x_return_status OUT NOCOPY VARCHAR2
352: ,x_msg_count OUT NOCOPY NUMBER
345:
346: PROCEDURE create_fund(
347: p_api_version IN NUMBER
348: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
349: ,p_commit IN VARCHAR2 := fnd_api.g_false
350: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
351: ,x_return_status OUT NOCOPY VARCHAR2
352: ,x_msg_count OUT NOCOPY NUMBER
353: ,x_msg_data OUT NOCOPY VARCHAR2
346: PROCEDURE create_fund(
347: p_api_version IN NUMBER
348: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
349: ,p_commit IN VARCHAR2 := fnd_api.g_false
350: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
351: ,x_return_status OUT NOCOPY VARCHAR2
352: ,x_msg_count OUT NOCOPY NUMBER
353: ,x_msg_data OUT NOCOPY VARCHAR2
354: ,p_fund_rec IN fund_rec_type
409: SAVEPOINT create_fund;
410: IF G_DEBUG THEN
411: ozf_utility_pvt.debug_message(l_full_name || ': start');
412: END IF;
413: x_return_status := fnd_api.g_ret_sts_success;
414:
415: IF fnd_api.to_boolean(p_init_msg_list) THEN
416: fnd_msg_pub.initialize;
417: END IF;
411: ozf_utility_pvt.debug_message(l_full_name || ': start');
412: END IF;
413: x_return_status := fnd_api.g_ret_sts_success;
414:
415: IF fnd_api.to_boolean(p_init_msg_list) THEN
416: fnd_msg_pub.initialize;
417: END IF;
418:
419: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
415: IF fnd_api.to_boolean(p_init_msg_list) THEN
416: fnd_msg_pub.initialize;
417: END IF;
418:
419: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
420: RAISE fnd_api.g_exc_unexpected_error;
421: END IF;
422:
423: -- check fund status and fill in system status
416: fnd_msg_pub.initialize;
417: END IF;
418:
419: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
420: RAISE fnd_api.g_exc_unexpected_error;
421: END IF;
422:
423: -- check fund status and fill in system status
424: handle_fund_status(
425: p_user_status_id => l_fund_rec.user_status_id
426: ,x_status_code => l_fund_rec.status_code
427: ,x_return_status => x_return_status);
428:
429: IF x_return_status = fnd_api.g_ret_sts_error THEN
430: RAISE fnd_api.g_exc_error;
431: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
432: RAISE fnd_api.g_exc_unexpected_error;
433: END IF;
426: ,x_status_code => l_fund_rec.status_code
427: ,x_return_status => x_return_status);
428:
429: IF x_return_status = fnd_api.g_ret_sts_error THEN
430: RAISE fnd_api.g_exc_error;
431: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
432: RAISE fnd_api.g_exc_unexpected_error;
433: END IF;
434:
427: ,x_return_status => x_return_status);
428:
429: IF x_return_status = fnd_api.g_ret_sts_error THEN
430: RAISE fnd_api.g_exc_error;
431: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
432: RAISE fnd_api.g_exc_unexpected_error;
433: END IF;
434:
435: -- default fund calendar
428:
429: IF x_return_status = fnd_api.g_ret_sts_error THEN
430: RAISE fnd_api.g_exc_error;
431: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
432: RAISE fnd_api.g_exc_unexpected_error;
433: END IF;
434:
435: -- default fund calendar
436: IF l_fund_rec.fund_calendar IS NULL
466: get_child_source_code(
467: p_fund_rec.parent_fund_id
468: ,l_fund_rec.fund_number
469: ,x_return_status);
470: IF x_return_status = fnd_api.g_ret_sts_error THEN
471: RAISE fnd_api.g_exc_error;
472: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
473: RAISE fnd_api.g_exc_unexpected_error;
474: END IF;
467: p_fund_rec.parent_fund_id
468: ,l_fund_rec.fund_number
469: ,x_return_status);
470: IF x_return_status = fnd_api.g_ret_sts_error THEN
471: RAISE fnd_api.g_exc_error;
472: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
473: RAISE fnd_api.g_exc_unexpected_error;
474: END IF;
475: END IF;
468: ,l_fund_rec.fund_number
469: ,x_return_status);
470: IF x_return_status = fnd_api.g_ret_sts_error THEN
471: RAISE fnd_api.g_exc_error;
472: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
473: RAISE fnd_api.g_exc_unexpected_error;
474: END IF;
475: END IF;
476: END IF;
469: ,x_return_status);
470: IF x_return_status = fnd_api.g_ret_sts_error THEN
471: RAISE fnd_api.g_exc_error;
472: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
473: RAISE fnd_api.g_exc_unexpected_error;
474: END IF;
475: END IF;
476: END IF;
477:
488: ,x_msg_data => x_msg_data
489: ,p_fund_rec => l_fund_rec);
490:
491:
492: IF l_return_status = fnd_api.g_ret_sts_error THEN
493: RAISE fnd_api.g_exc_error;
494: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
495: RAISE fnd_api.g_exc_unexpected_error;
496: END IF;
489: ,p_fund_rec => l_fund_rec);
490:
491:
492: IF l_return_status = fnd_api.g_ret_sts_error THEN
493: RAISE fnd_api.g_exc_error;
494: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
495: RAISE fnd_api.g_exc_unexpected_error;
496: END IF;
497:
490:
491:
492: IF l_return_status = fnd_api.g_ret_sts_error THEN
493: RAISE fnd_api.g_exc_error;
494: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
495: RAISE fnd_api.g_exc_unexpected_error;
496: END IF;
497:
498: -------------------------- insert --------------------------
491:
492: IF l_return_status = fnd_api.g_ret_sts_error THEN
493: RAISE fnd_api.g_exc_error;
494: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
495: RAISE fnd_api.g_exc_unexpected_error;
496: END IF;
497:
498: -------------------------- insert --------------------------
499: IF G_DEBUG THEN
526: ,l_fund_rec.accrued_liable_account
527: ,l_fund_rec.ded_adjustment_account
528: ,l_return_status);
529:
530: IF l_return_status = fnd_api.g_ret_sts_error THEN
531: RAISE fnd_api.g_exc_error;
532: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
533: RAISE fnd_api.g_exc_unexpected_error;
534: END IF;
527: ,l_fund_rec.ded_adjustment_account
528: ,l_return_status);
529:
530: IF l_return_status = fnd_api.g_ret_sts_error THEN
531: RAISE fnd_api.g_exc_error;
532: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
533: RAISE fnd_api.g_exc_unexpected_error;
534: END IF;
535: END IF;
528: ,l_return_status);
529:
530: IF l_return_status = fnd_api.g_ret_sts_error THEN
531: RAISE fnd_api.g_exc_error;
532: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
533: RAISE fnd_api.g_exc_unexpected_error;
534: END IF;
535: END IF;
536: */
529:
530: IF l_return_status = fnd_api.g_ret_sts_error THEN
531: RAISE fnd_api.g_exc_error;
532: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
533: RAISE fnd_api.g_exc_unexpected_error;
534: END IF;
535: END IF;
536: */
537:
549: fnd_message.set_name('OZF', 'OZF_UNIV_CURR_NOT_FOUND');
550: fnd_msg_pub.add;
551: END IF;
552:
553: RAISE fnd_api.g_exc_error;
554:
555: END IF;
556:
557: -- Calculate rollup amount columns, added by feliu 02/08/02
555: END IF;
556:
557: -- Calculate rollup amount columns, added by feliu 02/08/02
558: IF l_fund_rec.original_budget IS NOT NULL
559: AND l_fund_rec.original_budget <> fnd_api.g_miss_num THEN
560: Ozf_utility_pvt.convert_currency(
561: x_return_status => l_return_status
562: ,p_from_currency => l_fund_rec.currency_code_tc
563: ,p_to_currency => g_universal_currency
564: ,p_from_amount => l_fund_rec.original_budget
565: ,x_to_amount => l_fund_rec.rollup_original_budget
566: ,x_rate => l_rate);
567:
568: IF l_return_status = fnd_api.g_ret_sts_error THEN
569: RAISE fnd_api.g_exc_error;
570: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
571: RAISE fnd_api.g_exc_unexpected_error;
572: END IF;
565: ,x_to_amount => l_fund_rec.rollup_original_budget
566: ,x_rate => l_rate);
567:
568: IF l_return_status = fnd_api.g_ret_sts_error THEN
569: RAISE fnd_api.g_exc_error;
570: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
571: RAISE fnd_api.g_exc_unexpected_error;
572: END IF;
573:
566: ,x_rate => l_rate);
567:
568: IF l_return_status = fnd_api.g_ret_sts_error THEN
569: RAISE fnd_api.g_exc_error;
570: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
571: RAISE fnd_api.g_exc_unexpected_error;
572: END IF;
573:
574: END IF;
567:
568: IF l_return_status = fnd_api.g_ret_sts_error THEN
569: RAISE fnd_api.g_exc_error;
570: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
571: RAISE fnd_api.g_exc_unexpected_error;
572: END IF;
573:
574: END IF;
575:
574: END IF;
575:
576: IF l_fund_rec.transfered_in_amt IS NOT NULL
577: AND l_rate is NOT NULL
578: AND l_fund_rec.transfered_in_amt <> fnd_api.g_miss_num THEN
579:
580: l_fund_rec.rollup_transfered_in_amt := l_fund_rec.transfered_in_amt * l_rate;
581:
582: END IF;
582: END IF;
583:
584: IF l_fund_rec.transfered_out_amt IS NOT NULL
585: AND l_rate is NOT NULL
586: AND l_fund_rec.transfered_out_amt <> fnd_api.g_miss_num THEN
587:
588: l_fund_rec.rollup_transfered_out_amt := l_fund_rec.transfered_out_amt * l_rate;
589:
590: END IF;
591:
592:
593: IF l_fund_rec.holdback_amt IS NOT NULL
594: AND l_rate is NOT NULL
595: AND l_fund_rec.holdback_amt <> fnd_api.g_miss_num THEN
596: l_fund_rec.rollup_holdback_amt := l_fund_rec.holdback_amt * l_rate;
597: END IF;
598:
599: -- make liability_flag to be 'N' for sales accrual.
602: END IF;
603:
604: -- kdass 09-NOV-05 Bug 4618523
605: -- if ledger_id is null, derive it from org_id which is the default OU for the user
606: IF l_fund_rec.ledger_id = fnd_api.g_miss_num OR l_fund_rec.ledger_id IS NULL THEN
607:
608: IF l_fund_rec.org_id <> fnd_api.g_miss_num AND l_fund_rec.org_id IS NOT NULL THEN
609: MO_UTILS.Get_Ledger_Info (
610: p_operating_unit => l_fund_rec.org_id,
604: -- kdass 09-NOV-05 Bug 4618523
605: -- if ledger_id is null, derive it from org_id which is the default OU for the user
606: IF l_fund_rec.ledger_id = fnd_api.g_miss_num OR l_fund_rec.ledger_id IS NULL THEN
607:
608: IF l_fund_rec.org_id <> fnd_api.g_miss_num AND l_fund_rec.org_id IS NOT NULL THEN
609: MO_UTILS.Get_Ledger_Info (
610: p_operating_unit => l_fund_rec.org_id,
611: p_ledger_id => l_fund_rec.ledger_id,
612: p_ledger_name => l_ledger_name
913: ,x_msg_data => x_msg_data
914: ,p_act_budgets_rec => l_act_budget_rec
915: ,x_act_budget_id => l_act_budget_id);
916:
917: IF l_return_status = fnd_api.g_ret_sts_error THEN
918: RAISE fnd_api.g_exc_error;
919: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
920: RAISE fnd_api.g_exc_unexpected_error;
921: END IF;
914: ,p_act_budgets_rec => l_act_budget_rec
915: ,x_act_budget_id => l_act_budget_id);
916:
917: IF l_return_status = fnd_api.g_ret_sts_error THEN
918: RAISE fnd_api.g_exc_error;
919: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
920: RAISE fnd_api.g_exc_unexpected_error;
921: END IF;
922: END IF;
915: ,x_act_budget_id => l_act_budget_id);
916:
917: IF l_return_status = fnd_api.g_ret_sts_error THEN
918: RAISE fnd_api.g_exc_error;
919: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
920: RAISE fnd_api.g_exc_unexpected_error;
921: END IF;
922: END IF;
923:
916:
917: IF l_return_status = fnd_api.g_ret_sts_error THEN
918: RAISE fnd_api.g_exc_error;
919: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
920: RAISE fnd_api.g_exc_unexpected_error;
921: END IF;
922: END IF;
923:
924: /* R12: yzhao bug 4669269 - obsolete ozf_mc_transactions
944: -- Call mc_transaction API if the fund type is not QUOTA
945: IF l_fund_rec.fund_type <> 'QUOTA' THEN
946: ozf_mc_transactions_pvt.insert_mc_transactions(
947: p_api_version => l_api_version
948: ,p_init_msg_list => fnd_api.g_false
949: ,p_commit => fnd_api.g_false
950: ,x_return_status => l_return_status
951: ,x_msg_count => x_msg_count
952: ,x_msg_data => x_msg_data
945: IF l_fund_rec.fund_type <> 'QUOTA' THEN
946: ozf_mc_transactions_pvt.insert_mc_transactions(
947: p_api_version => l_api_version
948: ,p_init_msg_list => fnd_api.g_false
949: ,p_commit => fnd_api.g_false
950: ,x_return_status => l_return_status
951: ,x_msg_count => x_msg_count
952: ,x_msg_data => x_msg_data
953: ,p_mc_transactions_rec => l_mc_transaction_rec
952: ,x_msg_data => x_msg_data
953: ,p_mc_transactions_rec => l_mc_transaction_rec
954: ,x_mc_transaction_id => l_mc_transaction_id);
955:
956: IF l_return_status = fnd_api.g_ret_sts_error THEN
957: RAISE fnd_api.g_exc_error;
958: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
959: RAISE fnd_api.g_exc_unexpected_error;
960: END IF;
953: ,p_mc_transactions_rec => l_mc_transaction_rec
954: ,x_mc_transaction_id => l_mc_transaction_id);
955:
956: IF l_return_status = fnd_api.g_ret_sts_error THEN
957: RAISE fnd_api.g_exc_error;
958: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
959: RAISE fnd_api.g_exc_unexpected_error;
960: END IF;
961: END IF;
954: ,x_mc_transaction_id => l_mc_transaction_id);
955:
956: IF l_return_status = fnd_api.g_ret_sts_error THEN
957: RAISE fnd_api.g_exc_error;
958: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
959: RAISE fnd_api.g_exc_unexpected_error;
960: END IF;
961: END IF;
962: */
955:
956: IF l_return_status = fnd_api.g_ret_sts_error THEN
957: RAISE fnd_api.g_exc_error;
958: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
959: RAISE fnd_api.g_exc_unexpected_error;
960: END IF;
961: END IF;
962: */
963:
977: ozf_utility_pvt.debug_message(l_full_name || 'owner' || p_fund_rec.owner);
978: END IF;
979:
980: ozf_fund_request_apr_pvt.create_fund_request(
981: p_commit => fnd_api.g_false
982: ,p_approval_for_id => l_fund_rec.fund_id
983: ,p_requester_id => l_fund_rec.owner
984: ,p_requested_amount => l_fund_rec.transfered_in_amt ---l_fund_rec.original_budget mpande 11/06/2001
985: ,p_approval_fm => 'FUND'
995: ,x_request_id => l_request_id
996: ,x_approver_id => l_approver_id
997: ,x_is_requester_owner => l_is_requestor_owner);
998:
999: IF l_return_status = fnd_api.g_ret_sts_error THEN
1000: RAISE fnd_api.g_exc_error;
1001: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1002: RAISE fnd_api.g_exc_unexpected_error;
1003: END IF;
996: ,x_approver_id => l_approver_id
997: ,x_is_requester_owner => l_is_requestor_owner);
998:
999: IF l_return_status = fnd_api.g_ret_sts_error THEN
1000: RAISE fnd_api.g_exc_error;
1001: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1002: RAISE fnd_api.g_exc_unexpected_error;
1003: END IF;
1004:
997: ,x_is_requester_owner => l_is_requestor_owner);
998:
999: IF l_return_status = fnd_api.g_ret_sts_error THEN
1000: RAISE fnd_api.g_exc_error;
1001: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1002: RAISE fnd_api.g_exc_unexpected_error;
1003: END IF;
1004:
1005: -- mpande end if end
998:
999: IF l_return_status = fnd_api.g_ret_sts_error THEN
1000: RAISE fnd_api.g_exc_error;
1001: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1002: RAISE fnd_api.g_exc_unexpected_error;
1003: END IF;
1004:
1005: -- mpande end if end
1006: END IF;
1021: l_access_rec.admin_flag := 'Y';
1022: l_access_rec.owner_flag := 'Y';
1023: ams_access_pvt.create_access(
1024: p_api_version => l_api_version
1025: ,p_init_msg_list => fnd_api.g_false
1026: ,p_validation_level => p_validation_level
1027: ,x_return_status => l_return_status
1028: ,x_msg_count => x_msg_count
1029: ,x_msg_data => x_msg_data
1026: ,p_validation_level => p_validation_level
1027: ,x_return_status => l_return_status
1028: ,x_msg_count => x_msg_count
1029: ,x_msg_data => x_msg_data
1030: ,p_commit => fnd_api.g_false
1031: ,p_access_rec => l_access_rec
1032: ,x_access_id => l_access_id);
1033:
1034: IF l_return_status = fnd_api.g_ret_sts_error THEN
1030: ,p_commit => fnd_api.g_false
1031: ,p_access_rec => l_access_rec
1032: ,x_access_id => l_access_id);
1033:
1034: IF l_return_status = fnd_api.g_ret_sts_error THEN
1035: RAISE fnd_api.g_exc_error;
1036: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1037: RAISE fnd_api.g_exc_unexpected_error;
1038: END IF;
1031: ,p_access_rec => l_access_rec
1032: ,x_access_id => l_access_id);
1033:
1034: IF l_return_status = fnd_api.g_ret_sts_error THEN
1035: RAISE fnd_api.g_exc_error;
1036: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1037: RAISE fnd_api.g_exc_unexpected_error;
1038: END IF;
1039: END IF;
1032: ,x_access_id => l_access_id);
1033:
1034: IF l_return_status = fnd_api.g_ret_sts_error THEN
1035: RAISE fnd_api.g_exc_error;
1036: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1037: RAISE fnd_api.g_exc_unexpected_error;
1038: END IF;
1039: END IF;
1040:
1033:
1034: IF l_return_status = fnd_api.g_ret_sts_error THEN
1035: RAISE fnd_api.g_exc_error;
1036: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1037: RAISE fnd_api.g_exc_unexpected_error;
1038: END IF;
1039: END IF;
1040:
1041: --added by mpande
1049: -- added updating rollup columns by feliu.
1050: IF l_fund_rec.status_code = 'ACTIVE' THEN
1051: update_rollup_amount(
1052: p_api_version => l_api_version
1053: ,p_init_msg_list => fnd_api.g_false
1054: ,p_commit => fnd_api.g_false
1055: ,p_validation_level => p_validation_level
1056: ,x_return_status => l_return_status
1057: ,x_msg_count => x_msg_count
1050: IF l_fund_rec.status_code = 'ACTIVE' THEN
1051: update_rollup_amount(
1052: p_api_version => l_api_version
1053: ,p_init_msg_list => fnd_api.g_false
1054: ,p_commit => fnd_api.g_false
1055: ,p_validation_level => p_validation_level
1056: ,x_return_status => l_return_status
1057: ,x_msg_count => x_msg_count
1058: ,x_msg_data => x_msg_data
1072: l_access_rec.admin_flag := 'Y'; -- 12/03/2001 yzhao: give admin access to parent
1073: l_access_rec.owner_flag := 'N';
1074: ams_access_pvt.create_access(
1075: p_api_version => l_api_version
1076: ,p_init_msg_list => fnd_api.g_false
1077: ,p_validation_level => p_validation_level
1078: ,x_return_status => l_return_status
1079: ,x_msg_count => x_msg_count
1080: ,x_msg_data => x_msg_data
1077: ,p_validation_level => p_validation_level
1078: ,x_return_status => l_return_status
1079: ,x_msg_count => x_msg_count
1080: ,x_msg_data => x_msg_data
1081: ,p_commit => fnd_api.g_false
1082: ,p_access_rec => l_access_rec
1083: ,x_access_id => l_access_id);
1084: END IF;
1085: */
1082: ,p_access_rec => l_access_rec
1083: ,x_access_id => l_access_id);
1084: END IF;
1085: */
1086: IF l_return_status = fnd_api.g_ret_sts_error THEN
1087: RAISE fnd_api.g_exc_error;
1088: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1089: RAISE fnd_api.g_exc_unexpected_error;
1090: END IF;
1083: ,x_access_id => l_access_id);
1084: END IF;
1085: */
1086: IF l_return_status = fnd_api.g_ret_sts_error THEN
1087: RAISE fnd_api.g_exc_error;
1088: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1089: RAISE fnd_api.g_exc_unexpected_error;
1090: END IF;
1091:
1084: END IF;
1085: */
1086: IF l_return_status = fnd_api.g_ret_sts_error THEN
1087: RAISE fnd_api.g_exc_error;
1088: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1089: RAISE fnd_api.g_exc_unexpected_error;
1090: END IF;
1091:
1092: END IF;
1085: */
1086: IF l_return_status = fnd_api.g_ret_sts_error THEN
1087: RAISE fnd_api.g_exc_error;
1088: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1089: RAISE fnd_api.g_exc_unexpected_error;
1090: END IF;
1091:
1092: END IF;
1093: -- added by feliu to fix bug 2654263
1093: -- added by feliu to fix bug 2654263
1094:
1095: update_funds_access(
1096: p_api_version => l_api_version
1097: ,p_init_msg_list => fnd_api.g_false
1098: ,p_commit => fnd_api.g_false
1099: ,p_validation_level => p_validation_level
1100: ,x_return_status => l_return_status
1101: ,x_msg_count => x_msg_count
1094:
1095: update_funds_access(
1096: p_api_version => l_api_version
1097: ,p_init_msg_list => fnd_api.g_false
1098: ,p_commit => fnd_api.g_false
1099: ,p_validation_level => p_validation_level
1100: ,x_return_status => l_return_status
1101: ,x_msg_count => x_msg_count
1102: ,x_msg_data => x_msg_data
1103: ,p_fund_rec => l_fund_rec
1104: ,p_mode => 'CREATE'
1105: );
1106:
1107: IF l_return_status = fnd_api.g_ret_sts_error THEN
1108: RAISE fnd_api.g_exc_error;
1109: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1110: RAISE fnd_api.g_exc_unexpected_error;
1111: END IF;
1104: ,p_mode => 'CREATE'
1105: );
1106:
1107: IF l_return_status = fnd_api.g_ret_sts_error THEN
1108: RAISE fnd_api.g_exc_error;
1109: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1110: RAISE fnd_api.g_exc_unexpected_error;
1111: END IF;
1112:
1105: );
1106:
1107: IF l_return_status = fnd_api.g_ret_sts_error THEN
1108: RAISE fnd_api.g_exc_error;
1109: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1110: RAISE fnd_api.g_exc_unexpected_error;
1111: END IF;
1112:
1113: END IF;
1106:
1107: IF l_return_status = fnd_api.g_ret_sts_error THEN
1108: RAISE fnd_api.g_exc_error;
1109: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1110: RAISE fnd_api.g_exc_unexpected_error;
1111: END IF;
1112:
1113: END IF;
1114: -- mpadne 10/14/2002 for 11.5.9
1122: ,p_mode => 'CREATE'
1123: ,x_return_status => l_return_status
1124: ,x_msg_count => x_msg_count
1125: ,x_msg_data => x_msg_data );
1126: IF l_return_status = fnd_api.g_ret_sts_error THEN
1127: RAISE fnd_api.g_exc_error;
1128: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1129: RAISE fnd_api.g_exc_unexpected_error;
1130: END IF;
1123: ,x_return_status => l_return_status
1124: ,x_msg_count => x_msg_count
1125: ,x_msg_data => x_msg_data );
1126: IF l_return_status = fnd_api.g_ret_sts_error THEN
1127: RAISE fnd_api.g_exc_error;
1128: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1129: RAISE fnd_api.g_exc_unexpected_error;
1130: END IF;
1131: END IF;
1124: ,x_msg_count => x_msg_count
1125: ,x_msg_data => x_msg_data );
1126: IF l_return_status = fnd_api.g_ret_sts_error THEN
1127: RAISE fnd_api.g_exc_error;
1128: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1129: RAISE fnd_api.g_exc_unexpected_error;
1130: END IF;
1131: END IF;
1132: -- Check for commit
1125: ,x_msg_data => x_msg_data );
1126: IF l_return_status = fnd_api.g_ret_sts_error THEN
1127: RAISE fnd_api.g_exc_error;
1128: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1129: RAISE fnd_api.g_exc_unexpected_error;
1130: END IF;
1131: END IF;
1132: -- Check for commit
1133: IF fnd_api.to_boolean(p_commit) THEN
1129: RAISE fnd_api.g_exc_unexpected_error;
1130: END IF;
1131: END IF;
1132: -- Check for commit
1133: IF fnd_api.to_boolean(p_commit) THEN
1134: COMMIT;
1135: END IF;
1136:
1137: -- raise business event.
1138: --nepanda : fix for bug # 9616725
1139: raise_business_event(p_object_id => l_fund_rec.fund_id ,p_event_type =>'CREATE');
1140:
1141: fnd_msg_pub.count_and_get(
1142: p_encoded => fnd_api.g_false
1143: ,p_count => x_msg_count
1144: ,p_data => x_msg_data);
1145: IF G_DEBUG THEN
1146: ozf_utility_pvt.debug_message(l_full_name || ': end');
1146: ozf_utility_pvt.debug_message(l_full_name || ': end');
1147: END IF;
1148:
1149: EXCEPTION
1150: WHEN fnd_api.g_exc_error THEN
1151: ROLLBACK TO create_fund;
1152: x_return_status := fnd_api.g_ret_sts_error;
1153: fnd_msg_pub.count_and_get(
1154: p_encoded => fnd_api.g_false
1148:
1149: EXCEPTION
1150: WHEN fnd_api.g_exc_error THEN
1151: ROLLBACK TO create_fund;
1152: x_return_status := fnd_api.g_ret_sts_error;
1153: fnd_msg_pub.count_and_get(
1154: p_encoded => fnd_api.g_false
1155: ,p_count => x_msg_count
1156: ,p_data => x_msg_data);
1150: WHEN fnd_api.g_exc_error THEN
1151: ROLLBACK TO create_fund;
1152: x_return_status := fnd_api.g_ret_sts_error;
1153: fnd_msg_pub.count_and_get(
1154: p_encoded => fnd_api.g_false
1155: ,p_count => x_msg_count
1156: ,p_data => x_msg_data);
1157: WHEN fnd_api.g_exc_unexpected_error THEN
1158: ROLLBACK TO create_fund;
1153: fnd_msg_pub.count_and_get(
1154: p_encoded => fnd_api.g_false
1155: ,p_count => x_msg_count
1156: ,p_data => x_msg_data);
1157: WHEN fnd_api.g_exc_unexpected_error THEN
1158: ROLLBACK TO create_fund;
1159: x_return_status := fnd_api.g_ret_sts_unexp_error;
1160: fnd_msg_pub.count_and_get(
1161: p_encoded => fnd_api.g_false
1155: ,p_count => x_msg_count
1156: ,p_data => x_msg_data);
1157: WHEN fnd_api.g_exc_unexpected_error THEN
1158: ROLLBACK TO create_fund;
1159: x_return_status := fnd_api.g_ret_sts_unexp_error;
1160: fnd_msg_pub.count_and_get(
1161: p_encoded => fnd_api.g_false
1162: ,p_count => x_msg_count
1163: ,p_data => x_msg_data);
1157: WHEN fnd_api.g_exc_unexpected_error THEN
1158: ROLLBACK TO create_fund;
1159: x_return_status := fnd_api.g_ret_sts_unexp_error;
1160: fnd_msg_pub.count_and_get(
1161: p_encoded => fnd_api.g_false
1162: ,p_count => x_msg_count
1163: ,p_data => x_msg_data);
1164: WHEN OTHERS THEN
1165: ROLLBACK TO create_fund;
1162: ,p_count => x_msg_count
1163: ,p_data => x_msg_data);
1164: WHEN OTHERS THEN
1165: ROLLBACK TO create_fund;
1166: x_return_status := fnd_api.g_ret_sts_unexp_error;
1167:
1168: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
1169: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
1170: END IF;
1169: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
1170: END IF;
1171:
1172: fnd_msg_pub.count_and_get(
1173: p_encoded => fnd_api.g_false
1174: ,p_count => x_msg_count
1175: ,p_data => x_msg_data);
1176: END create_fund;
1177:
1185: -- 02/02/2000 Shitij Vatsa Create.
1186: ---------------------------------------------------------------
1187: PROCEDURE delete_fund(
1188: p_api_version IN NUMBER
1189: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1190: ,p_commit IN VARCHAR2 := fnd_api.g_false
1191: ,x_return_status OUT NOCOPY VARCHAR2
1192: ,x_msg_count OUT NOCOPY NUMBER
1193: ,x_msg_data OUT NOCOPY VARCHAR2
1186: ---------------------------------------------------------------
1187: PROCEDURE delete_fund(
1188: p_api_version IN NUMBER
1189: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1190: ,p_commit IN VARCHAR2 := fnd_api.g_false
1191: ,x_return_status OUT NOCOPY VARCHAR2
1192: ,x_msg_count OUT NOCOPY NUMBER
1193: ,x_msg_data OUT NOCOPY VARCHAR2
1194: ,p_fund_id IN NUMBER
1203: IF G_DEBUG THEN
1204: ozf_utility_pvt.debug_message(l_full_name || ': start');
1205: END IF;
1206:
1207: IF fnd_api.to_boolean(p_init_msg_list) THEN
1208: fnd_msg_pub.initialize;
1209: END IF;
1210:
1211: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1207: IF fnd_api.to_boolean(p_init_msg_list) THEN
1208: fnd_msg_pub.initialize;
1209: END IF;
1210:
1211: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1212: RAISE fnd_api.g_exc_unexpected_error;
1213: END IF;
1214:
1215: x_return_status := fnd_api.g_ret_sts_success;
1208: fnd_msg_pub.initialize;
1209: END IF;
1210:
1211: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1212: RAISE fnd_api.g_exc_unexpected_error;
1213: END IF;
1214:
1215: x_return_status := fnd_api.g_ret_sts_success;
1216: ------------------------ delete ------------------------
1211: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1212: RAISE fnd_api.g_exc_unexpected_error;
1213: END IF;
1214:
1215: x_return_status := fnd_api.g_ret_sts_success;
1216: ------------------------ delete ------------------------
1217: IF G_DEBUG THEN
1218: ozf_utility_pvt.debug_message(l_full_name || ': delete');
1219: END IF;
1228: fnd_message.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
1229: fnd_msg_pub.add;
1230: END IF;
1231:
1232: RAISE fnd_api.g_exc_error;
1233: END IF;
1234:
1235: DELETE
1236: FROM ozf_funds_all_tl
1241: fnd_message.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
1242: fnd_msg_pub.add;
1243: END IF;
1244:
1245: RAISE fnd_api.g_exc_error;
1246: END IF;
1247:
1248: -------------------- finish --------------------------
1249: IF fnd_api.to_boolean(p_commit) THEN
1245: RAISE fnd_api.g_exc_error;
1246: END IF;
1247:
1248: -------------------- finish --------------------------
1249: IF fnd_api.to_boolean(p_commit) THEN
1250: COMMIT;
1251: END IF;
1252:
1253: fnd_msg_pub.count_and_get(
1250: COMMIT;
1251: END IF;
1252:
1253: fnd_msg_pub.count_and_get(
1254: p_encoded => fnd_api.g_false
1255: ,p_count => x_msg_count
1256: ,p_data => x_msg_data);
1257: IF G_DEBUG THEN
1258: ozf_utility_pvt.debug_message(l_full_name || ': end');
1257: IF G_DEBUG THEN
1258: ozf_utility_pvt.debug_message(l_full_name || ': end');
1259: END IF;
1260: EXCEPTION
1261: WHEN fnd_api.g_exc_error THEN
1262: ROLLBACK TO delete_fund;
1263: x_return_status := fnd_api.g_ret_sts_error;
1264: fnd_msg_pub.count_and_get(
1265: p_encoded => fnd_api.g_false
1259: END IF;
1260: EXCEPTION
1261: WHEN fnd_api.g_exc_error THEN
1262: ROLLBACK TO delete_fund;
1263: x_return_status := fnd_api.g_ret_sts_error;
1264: fnd_msg_pub.count_and_get(
1265: p_encoded => fnd_api.g_false
1266: ,p_count => x_msg_count
1267: ,p_data => x_msg_data);
1261: WHEN fnd_api.g_exc_error THEN
1262: ROLLBACK TO delete_fund;
1263: x_return_status := fnd_api.g_ret_sts_error;
1264: fnd_msg_pub.count_and_get(
1265: p_encoded => fnd_api.g_false
1266: ,p_count => x_msg_count
1267: ,p_data => x_msg_data);
1268: WHEN fnd_api.g_exc_unexpected_error THEN
1269: ROLLBACK TO delete_fund;
1264: fnd_msg_pub.count_and_get(
1265: p_encoded => fnd_api.g_false
1266: ,p_count => x_msg_count
1267: ,p_data => x_msg_data);
1268: WHEN fnd_api.g_exc_unexpected_error THEN
1269: ROLLBACK TO delete_fund;
1270: x_return_status := fnd_api.g_ret_sts_unexp_error;
1271: fnd_msg_pub.count_and_get(
1272: p_encoded => fnd_api.g_false
1266: ,p_count => x_msg_count
1267: ,p_data => x_msg_data);
1268: WHEN fnd_api.g_exc_unexpected_error THEN
1269: ROLLBACK TO delete_fund;
1270: x_return_status := fnd_api.g_ret_sts_unexp_error;
1271: fnd_msg_pub.count_and_get(
1272: p_encoded => fnd_api.g_false
1273: ,p_count => x_msg_count
1274: ,p_data => x_msg_data);
1268: WHEN fnd_api.g_exc_unexpected_error THEN
1269: ROLLBACK TO delete_fund;
1270: x_return_status := fnd_api.g_ret_sts_unexp_error;
1271: fnd_msg_pub.count_and_get(
1272: p_encoded => fnd_api.g_false
1273: ,p_count => x_msg_count
1274: ,p_data => x_msg_data);
1275: WHEN OTHERS THEN
1276: ROLLBACK TO delete_fund;
1273: ,p_count => x_msg_count
1274: ,p_data => x_msg_data);
1275: WHEN OTHERS THEN
1276: ROLLBACK TO delete_fund;
1277: x_return_status := fnd_api.g_ret_sts_unexp_error;
1278:
1279: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
1280: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
1281: END IF;
1280: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
1281: END IF;
1282:
1283: fnd_msg_pub.count_and_get(
1284: p_encoded => fnd_api.g_false
1285: ,p_count => x_msg_count
1286: ,p_data => x_msg_data);
1287: END delete_fund;
1288:
1296: -- 02/02/2000 Shitij Vatsa Create.
1297: --------------------------------------------------------------------
1298: PROCEDURE lock_fund(
1299: p_api_version IN NUMBER
1300: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1301: ,x_return_status OUT NOCOPY VARCHAR2
1302: ,x_msg_count OUT NOCOPY NUMBER
1303: ,x_msg_data OUT NOCOPY VARCHAR2
1304: ,p_fund_id IN NUMBER
1329: IF G_DEBUG THEN
1330: ozf_utility_pvt.debug_message(l_full_name || ': start');
1331: END IF;
1332:
1333: IF fnd_api.to_boolean(p_init_msg_list) THEN
1334: fnd_msg_pub.initialize;
1335: END IF;
1336:
1337: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1333: IF fnd_api.to_boolean(p_init_msg_list) THEN
1334: fnd_msg_pub.initialize;
1335: END IF;
1336:
1337: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1338: RAISE fnd_api.g_exc_unexpected_error;
1339: END IF;
1340:
1341: x_return_status := fnd_api.g_ret_sts_success;
1334: fnd_msg_pub.initialize;
1335: END IF;
1336:
1337: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1338: RAISE fnd_api.g_exc_unexpected_error;
1339: END IF;
1340:
1341: x_return_status := fnd_api.g_ret_sts_success;
1342: ------------------------ lock -------------------------
1337: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1338: RAISE fnd_api.g_exc_unexpected_error;
1339: END IF;
1340:
1341: x_return_status := fnd_api.g_ret_sts_success;
1342: ------------------------ lock -------------------------
1343: IF G_DEBUG THEN
1344: ozf_utility_pvt.debug_message(l_full_name || ': lock');
1345: END IF;
1353: fnd_message.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
1354: fnd_msg_pub.add;
1355: END IF;
1356:
1357: RAISE fnd_api.g_exc_error;
1358: END IF;
1359:
1360: CLOSE c_fund_b;
1361: OPEN c_fund_tl;
1361: OPEN c_fund_tl;
1362: CLOSE c_fund_tl;
1363: -------------------- finish --------------------------
1364: fnd_msg_pub.count_and_get(
1365: p_encoded => fnd_api.g_false
1366: ,p_count => x_msg_count
1367: ,p_data => x_msg_data);
1368: IF G_DEBUG THEN
1369: ozf_utility_pvt.debug_message(l_full_name || ': end');
1369: ozf_utility_pvt.debug_message(l_full_name || ': end');
1370: END IF;
1371: EXCEPTION
1372: WHEN ozf_utility_pvt.resource_locked THEN
1373: x_return_status := fnd_api.g_ret_sts_error;
1374:
1375: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
1376: fnd_message.set_name('OZF', 'OZF_API_RESOURCE_LOCKED');
1377: fnd_msg_pub.add;
1377: fnd_msg_pub.add;
1378: END IF;
1379:
1380: fnd_msg_pub.count_and_get(
1381: p_encoded => fnd_api.g_false
1382: ,p_count => x_msg_count
1383: ,p_data => x_msg_data);
1384: WHEN fnd_api.g_exc_error THEN
1385: x_return_status := fnd_api.g_ret_sts_error;
1380: fnd_msg_pub.count_and_get(
1381: p_encoded => fnd_api.g_false
1382: ,p_count => x_msg_count
1383: ,p_data => x_msg_data);
1384: WHEN fnd_api.g_exc_error THEN
1385: x_return_status := fnd_api.g_ret_sts_error;
1386: fnd_msg_pub.count_and_get(
1387: p_encoded => fnd_api.g_false
1388: ,p_count => x_msg_count
1381: p_encoded => fnd_api.g_false
1382: ,p_count => x_msg_count
1383: ,p_data => x_msg_data);
1384: WHEN fnd_api.g_exc_error THEN
1385: x_return_status := fnd_api.g_ret_sts_error;
1386: fnd_msg_pub.count_and_get(
1387: p_encoded => fnd_api.g_false
1388: ,p_count => x_msg_count
1389: ,p_data => x_msg_data);
1383: ,p_data => x_msg_data);
1384: WHEN fnd_api.g_exc_error THEN
1385: x_return_status := fnd_api.g_ret_sts_error;
1386: fnd_msg_pub.count_and_get(
1387: p_encoded => fnd_api.g_false
1388: ,p_count => x_msg_count
1389: ,p_data => x_msg_data);
1390: WHEN fnd_api.g_exc_unexpected_error THEN
1391: x_return_status := fnd_api.g_ret_sts_unexp_error;
1386: fnd_msg_pub.count_and_get(
1387: p_encoded => fnd_api.g_false
1388: ,p_count => x_msg_count
1389: ,p_data => x_msg_data);
1390: WHEN fnd_api.g_exc_unexpected_error THEN
1391: x_return_status := fnd_api.g_ret_sts_unexp_error;
1392: fnd_msg_pub.count_and_get(
1393: p_encoded => fnd_api.g_false
1394: ,p_count => x_msg_count
1387: p_encoded => fnd_api.g_false
1388: ,p_count => x_msg_count
1389: ,p_data => x_msg_data);
1390: WHEN fnd_api.g_exc_unexpected_error THEN
1391: x_return_status := fnd_api.g_ret_sts_unexp_error;
1392: fnd_msg_pub.count_and_get(
1393: p_encoded => fnd_api.g_false
1394: ,p_count => x_msg_count
1395: ,p_data => x_msg_data);
1389: ,p_data => x_msg_data);
1390: WHEN fnd_api.g_exc_unexpected_error THEN
1391: x_return_status := fnd_api.g_ret_sts_unexp_error;
1392: fnd_msg_pub.count_and_get(
1393: p_encoded => fnd_api.g_false
1394: ,p_count => x_msg_count
1395: ,p_data => x_msg_data);
1396: WHEN OTHERS THEN
1397: x_return_status := fnd_api.g_ret_sts_unexp_error;
1393: p_encoded => fnd_api.g_false
1394: ,p_count => x_msg_count
1395: ,p_data => x_msg_data);
1396: WHEN OTHERS THEN
1397: x_return_status := fnd_api.g_ret_sts_unexp_error;
1398:
1399: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
1400: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
1401: END IF;
1400: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
1401: END IF;
1402:
1403: fnd_msg_pub.count_and_get(
1404: p_encoded => fnd_api.g_false
1405: ,p_count => x_msg_count
1406: ,p_data => x_msg_data);
1407: END lock_fund;
1408:
1413: -- Altered px_ozf_funds_new_rectype to px_ozf_funds_new_tbl for TPA Parallel Execution ER Bug#9614703.
1414: ----------------------------------------------------------------------
1415: PROCEDURE update_fund(
1416: p_api_version IN NUMBER
1417: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1418: ,p_commit IN VARCHAR2 := fnd_api.g_false
1419: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
1420: ,x_return_status OUT NOCOPY VARCHAR2
1421: ,x_msg_count OUT NOCOPY NUMBER
1414: ----------------------------------------------------------------------
1415: PROCEDURE update_fund(
1416: p_api_version IN NUMBER
1417: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1418: ,p_commit IN VARCHAR2 := fnd_api.g_false
1419: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
1420: ,x_return_status OUT NOCOPY VARCHAR2
1421: ,x_msg_count OUT NOCOPY NUMBER
1422: ,x_msg_data OUT NOCOPY VARCHAR2
1415: PROCEDURE update_fund(
1416: p_api_version IN NUMBER
1417: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1418: ,p_commit IN VARCHAR2 := fnd_api.g_false
1419: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
1420: ,x_return_status OUT NOCOPY VARCHAR2
1421: ,x_msg_count OUT NOCOPY NUMBER
1422: ,x_msg_data OUT NOCOPY VARCHAR2
1423: ,p_fund_rec IN fund_rec_type
1475:
1476: ----------------------------------------------------------------------
1477: PROCEDURE update_fund(
1478: p_api_version IN NUMBER
1479: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1480: ,p_commit IN VARCHAR2 := fnd_api.g_false
1481: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
1482: ,x_return_status OUT NOCOPY VARCHAR2
1483: ,x_msg_count OUT NOCOPY NUMBER
1476: ----------------------------------------------------------------------
1477: PROCEDURE update_fund(
1478: p_api_version IN NUMBER
1479: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1480: ,p_commit IN VARCHAR2 := fnd_api.g_false
1481: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
1482: ,x_return_status OUT NOCOPY VARCHAR2
1483: ,x_msg_count OUT NOCOPY NUMBER
1484: ,x_msg_data OUT NOCOPY VARCHAR2
1477: PROCEDURE update_fund(
1478: p_api_version IN NUMBER
1479: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
1480: ,p_commit IN VARCHAR2 := fnd_api.g_false
1481: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
1482: ,x_return_status OUT NOCOPY VARCHAR2
1483: ,x_msg_count OUT NOCOPY NUMBER
1484: ,x_msg_data OUT NOCOPY VARCHAR2
1485: ,p_fund_rec IN fund_rec_type
1496: := 'Update_Fund';
1497: l_full_name CONSTANT VARCHAR2(60)
1498: := g_pkg_name || '.' || l_api_name;
1499: l_fund_rec fund_rec_type;
1500: l_return_status VARCHAR2(1) := FND_API.g_ret_sts_success;
1501: l_mode VARCHAR2(30);
1502: l_request_id NUMBER;
1503: /* R12: yzhao bug 4669269 - obsolete ozf_mc_transactions
1504: l_mc_obj_number NUMBER;
1513: l_par_fund_owner NUMBER;
1514: -- l_request_rec ozf_fund_request_pvt.request_rec_type;
1515: l_status_code VARCHAR2(30);
1516: -- 08/14/2001 mpande added
1517: l_submit_budget_approval VARCHAR2(1):= FND_API.g_false;
1518: l_submit_child_approval VARCHAR2(1):= FND_API.g_false;
1519: l_approver_id NUMBER;
1520: l_workflow_process VARCHAR2(30) := 'AMSGAPP';
1521: l_item_type VARCHAR2(30) := 'AMSGAPP';
1514: -- l_request_rec ozf_fund_request_pvt.request_rec_type;
1515: l_status_code VARCHAR2(30);
1516: -- 08/14/2001 mpande added
1517: l_submit_budget_approval VARCHAR2(1):= FND_API.g_false;
1518: l_submit_child_approval VARCHAR2(1):= FND_API.g_false;
1519: l_approver_id NUMBER;
1520: l_workflow_process VARCHAR2(30) := 'AMSGAPP';
1521: l_item_type VARCHAR2(30) := 'AMSGAPP';
1522: l_old_user_status_id NUMBER;
1678: IF G_DEBUG THEN
1679: ozf_utility_pvt.debug_message(l_full_name || ': start');
1680: END IF;
1681:
1682: IF fnd_api.to_boolean(p_init_msg_list) THEN
1683: fnd_msg_pub.initialize;
1684: END IF;
1685:
1686: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1682: IF fnd_api.to_boolean(p_init_msg_list) THEN
1683: fnd_msg_pub.initialize;
1684: END IF;
1685:
1686: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1687: RAISE fnd_api.g_exc_unexpected_error;
1688: END IF;
1689:
1690: x_return_status := fnd_api.g_ret_sts_success;
1683: fnd_msg_pub.initialize;
1684: END IF;
1685:
1686: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1687: RAISE fnd_api.g_exc_unexpected_error;
1688: END IF;
1689:
1690: x_return_status := fnd_api.g_ret_sts_success;
1691:
1686: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
1687: RAISE fnd_api.g_exc_unexpected_error;
1688: END IF;
1689:
1690: x_return_status := fnd_api.g_ret_sts_success;
1691:
1692: -- //added on Sep20 for user status validation
1693: complete_fund_rec(p_fund_rec, l_fund_rec);
1694: -- check fund status and fill in system status
1691:
1692: -- //added on Sep20 for user status validation
1693: complete_fund_rec(p_fund_rec, l_fund_rec);
1694: -- check fund status and fill in system status
1695: IF p_fund_rec.user_status_id <> fnd_api.g_miss_num THEN
1696: handle_fund_status(
1697: p_user_status_id => p_fund_rec.user_status_id
1698: ,x_status_code => l_status_code
1699: ,x_return_status => x_return_status);
1697: p_user_status_id => p_fund_rec.user_status_id
1698: ,x_status_code => l_status_code
1699: ,x_return_status => x_return_status);
1700:
1701: IF x_return_status = fnd_api.g_ret_sts_error THEN
1702: RAISE fnd_api.g_exc_error;
1703: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1704: RAISE fnd_api.g_exc_unexpected_error;
1705: END IF;
1698: ,x_status_code => l_status_code
1699: ,x_return_status => x_return_status);
1700:
1701: IF x_return_status = fnd_api.g_ret_sts_error THEN
1702: RAISE fnd_api.g_exc_error;
1703: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1704: RAISE fnd_api.g_exc_unexpected_error;
1705: END IF;
1706:
1699: ,x_return_status => x_return_status);
1700:
1701: IF x_return_status = fnd_api.g_ret_sts_error THEN
1702: RAISE fnd_api.g_exc_error;
1703: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1704: RAISE fnd_api.g_exc_unexpected_error;
1705: END IF;
1706:
1707: l_fund_rec.status_code := l_status_code;
1700:
1701: IF x_return_status = fnd_api.g_ret_sts_error THEN
1702: RAISE fnd_api.g_exc_error;
1703: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1704: RAISE fnd_api.g_exc_unexpected_error;
1705: END IF;
1706:
1707: l_fund_rec.status_code := l_status_code;
1708: ELSIF p_fund_rec.status_code <> fnd_api.g_miss_char THEN
1704: RAISE fnd_api.g_exc_unexpected_error;
1705: END IF;
1706:
1707: l_fund_rec.status_code := l_status_code;
1708: ELSIF p_fund_rec.status_code <> fnd_api.g_miss_char THEN
1709: IF G_DEBUG THEN
1710: ozf_utility_pvt.debug_message(l_full_name || 'debug' || p_fund_rec.status_code);
1711: END IF;
1712: get_user_status(
1713: p_status_code => p_fund_rec.status_code
1714: ,x_user_status_id => l_fund_rec.user_status_id
1715: ,x_return_status => x_return_status);
1716:
1717: IF x_return_status = fnd_api.g_ret_sts_error THEN
1718: RAISE fnd_api.g_exc_error;
1719: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1720: RAISE fnd_api.g_exc_unexpected_error;
1721: END IF;
1714: ,x_user_status_id => l_fund_rec.user_status_id
1715: ,x_return_status => x_return_status);
1716:
1717: IF x_return_status = fnd_api.g_ret_sts_error THEN
1718: RAISE fnd_api.g_exc_error;
1719: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1720: RAISE fnd_api.g_exc_unexpected_error;
1721: END IF;
1722: --- this we need because there could be some records in the database with no user status
1715: ,x_return_status => x_return_status);
1716:
1717: IF x_return_status = fnd_api.g_ret_sts_error THEN
1718: RAISE fnd_api.g_exc_error;
1719: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1720: RAISE fnd_api.g_exc_unexpected_error;
1721: END IF;
1722: --- this we need because there could be some records in the database with no user status
1723: ELSE
1716:
1717: IF x_return_status = fnd_api.g_ret_sts_error THEN
1718: RAISE fnd_api.g_exc_error;
1719: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1720: RAISE fnd_api.g_exc_unexpected_error;
1721: END IF;
1722: --- this we need because there could be some records in the database with no user status
1723: ELSE
1724: IF G_DEBUG THEN
1730: p_user_status_id => l_fund_rec.user_status_id
1731: ,x_status_code => l_status_code
1732: ,x_return_status => x_return_status);
1733:
1734: IF x_return_status = fnd_api.g_ret_sts_error THEN
1735: RAISE fnd_api.g_exc_error;
1736: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1737: RAISE fnd_api.g_exc_unexpected_error;
1738: END IF;
1731: ,x_status_code => l_status_code
1732: ,x_return_status => x_return_status);
1733:
1734: IF x_return_status = fnd_api.g_ret_sts_error THEN
1735: RAISE fnd_api.g_exc_error;
1736: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1737: RAISE fnd_api.g_exc_unexpected_error;
1738: END IF;
1739: ELSE
1732: ,x_return_status => x_return_status);
1733:
1734: IF x_return_status = fnd_api.g_ret_sts_error THEN
1735: RAISE fnd_api.g_exc_error;
1736: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1737: RAISE fnd_api.g_exc_unexpected_error;
1738: END IF;
1739: ELSE
1740: -- if user_status_id is null in database then we will populate it with the corrsponnding system status value form user_status_table
1733:
1734: IF x_return_status = fnd_api.g_ret_sts_error THEN
1735: RAISE fnd_api.g_exc_error;
1736: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1737: RAISE fnd_api.g_exc_unexpected_error;
1738: END IF;
1739: ELSE
1740: -- if user_status_id is null in database then we will populate it with the corrsponnding system status value form user_status_table
1741: get_user_status(
1742: p_status_code => l_fund_rec.status_code
1743: ,x_user_status_id => l_fund_rec.user_status_id
1744: ,x_return_status => x_return_status);
1745:
1746: IF x_return_status = fnd_api.g_ret_sts_error THEN
1747: RAISE fnd_api.g_exc_error;
1748: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1749: RAISE fnd_api.g_exc_unexpected_error;
1750: END IF;
1743: ,x_user_status_id => l_fund_rec.user_status_id
1744: ,x_return_status => x_return_status);
1745:
1746: IF x_return_status = fnd_api.g_ret_sts_error THEN
1747: RAISE fnd_api.g_exc_error;
1748: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1749: RAISE fnd_api.g_exc_unexpected_error;
1750: END IF;
1751: END IF;
1744: ,x_return_status => x_return_status);
1745:
1746: IF x_return_status = fnd_api.g_ret_sts_error THEN
1747: RAISE fnd_api.g_exc_error;
1748: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1749: RAISE fnd_api.g_exc_unexpected_error;
1750: END IF;
1751: END IF;
1752:
1745:
1746: IF x_return_status = fnd_api.g_ret_sts_error THEN
1747: RAISE fnd_api.g_exc_error;
1748: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
1749: RAISE fnd_api.g_exc_unexpected_error;
1750: END IF;
1751: END IF;
1752:
1753: l_fund_rec.status_code := l_status_code;
1784: -- changed the status call here to check for the changed status
1785: IF l_fund_rec.status_code <> 'DRAFT' AND l_old_status <> 'DRAFT'
1786: AND l_old_curr <> l_fund_rec.currency_code_tc THEN
1787: IF p_fund_rec.original_budget IS NOT NULL
1788: AND p_fund_rec.original_budget <> fnd_api.g_miss_num THEN
1789:
1790:
1791: IF G_DEBUG THEN
1792: ozf_utility_pvt.debug_message (l_full_name
1827: -- we need to pass the fund currency after calculating
1828: l_fund_rec.currency_code_tc := l_old_curr;
1829:
1830: ----dbms_output.put_line ('DEBUG ');
1831: IF l_return_status = fnd_api.g_ret_sts_error THEN
1832: RAISE fnd_api.g_exc_error;
1833: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1834: RAISE fnd_api.g_exc_unexpected_error;
1835: END IF;
1828: l_fund_rec.currency_code_tc := l_old_curr;
1829:
1830: ----dbms_output.put_line ('DEBUG ');
1831: IF l_return_status = fnd_api.g_ret_sts_error THEN
1832: RAISE fnd_api.g_exc_error;
1833: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1834: RAISE fnd_api.g_exc_unexpected_error;
1835: END IF;
1836: END IF;
1829:
1830: ----dbms_output.put_line ('DEBUG ');
1831: IF l_return_status = fnd_api.g_ret_sts_error THEN
1832: RAISE fnd_api.g_exc_error;
1833: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1834: RAISE fnd_api.g_exc_unexpected_error;
1835: END IF;
1836: END IF;
1837:
1830: ----dbms_output.put_line ('DEBUG ');
1831: IF l_return_status = fnd_api.g_ret_sts_error THEN
1832: RAISE fnd_api.g_exc_error;
1833: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1834: RAISE fnd_api.g_exc_unexpected_error;
1835: END IF;
1836: END IF;
1837:
1838: IF p_fund_rec.transfered_in_amt IS NOT NULL
1835: END IF;
1836: END IF;
1837:
1838: IF p_fund_rec.transfered_in_amt IS NOT NULL
1839: AND p_fund_rec.transfered_in_amt <> fnd_api.g_miss_num THEN
1840:
1841:
1842: IF G_DEBUG THEN
1843: ozf_utility_pvt.debug_message (l_full_name
1878:
1879: -- we need to pass the fund currency after calculating
1880: l_fund_rec.currency_code_tc := l_old_curr;
1881:
1882: IF l_return_status = fnd_api.g_ret_sts_error THEN
1883: RAISE fnd_api.g_exc_error;
1884: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1885: RAISE fnd_api.g_exc_unexpected_error;
1886: END IF;
1879: -- we need to pass the fund currency after calculating
1880: l_fund_rec.currency_code_tc := l_old_curr;
1881:
1882: IF l_return_status = fnd_api.g_ret_sts_error THEN
1883: RAISE fnd_api.g_exc_error;
1884: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1885: RAISE fnd_api.g_exc_unexpected_error;
1886: END IF;
1887: END IF;
1880: l_fund_rec.currency_code_tc := l_old_curr;
1881:
1882: IF l_return_status = fnd_api.g_ret_sts_error THEN
1883: RAISE fnd_api.g_exc_error;
1884: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1885: RAISE fnd_api.g_exc_unexpected_error;
1886: END IF;
1887: END IF;
1888:
1881:
1882: IF l_return_status = fnd_api.g_ret_sts_error THEN
1883: RAISE fnd_api.g_exc_error;
1884: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1885: RAISE fnd_api.g_exc_unexpected_error;
1886: END IF;
1887: END IF;
1888:
1889: IF p_fund_rec.transfered_out_amt IS NOT NULL
1886: END IF;
1887: END IF;
1888:
1889: IF p_fund_rec.transfered_out_amt IS NOT NULL
1890: AND p_fund_rec.transfered_out_amt <> fnd_api.g_miss_num THEN
1891:
1892: IF G_DEBUG THEN
1893: ozf_utility_pvt.debug_message (l_full_name
1894: || ' p_fund_rec.exchange_rate_date3: ' || p_fund_rec.exchange_rate_date);
1927:
1928: -- we need to pass the fund currency after calculating
1929: l_fund_rec.currency_code_tc := l_old_curr;
1930:
1931: IF l_return_status = fnd_api.g_ret_sts_error THEN
1932: RAISE fnd_api.g_exc_error;
1933: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1934: RAISE fnd_api.g_exc_unexpected_error;
1935: END IF;
1928: -- we need to pass the fund currency after calculating
1929: l_fund_rec.currency_code_tc := l_old_curr;
1930:
1931: IF l_return_status = fnd_api.g_ret_sts_error THEN
1932: RAISE fnd_api.g_exc_error;
1933: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1934: RAISE fnd_api.g_exc_unexpected_error;
1935: END IF;
1936: END IF;
1929: l_fund_rec.currency_code_tc := l_old_curr;
1930:
1931: IF l_return_status = fnd_api.g_ret_sts_error THEN
1932: RAISE fnd_api.g_exc_error;
1933: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1934: RAISE fnd_api.g_exc_unexpected_error;
1935: END IF;
1936: END IF;
1937:
1930:
1931: IF l_return_status = fnd_api.g_ret_sts_error THEN
1932: RAISE fnd_api.g_exc_error;
1933: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1934: RAISE fnd_api.g_exc_unexpected_error;
1935: END IF;
1936: END IF;
1937:
1938: IF p_fund_rec.planned_amt IS NOT NULL
1935: END IF;
1936: END IF;
1937:
1938: IF p_fund_rec.planned_amt IS NOT NULL
1939: AND p_fund_rec.planned_amt <> fnd_api.g_miss_num THEN
1940:
1941: IF G_DEBUG THEN
1942: ozf_utility_pvt.debug_message (l_full_name
1943: || ' p_fund_rec.exchange_rate_date4: ' || p_fund_rec.exchange_rate_date);
1977:
1978: -- we need to pass the fund currency after calculating
1979: l_fund_rec.currency_code_tc := l_old_curr;
1980:
1981: IF l_return_status = fnd_api.g_ret_sts_error THEN
1982: RAISE fnd_api.g_exc_error;
1983: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1984: RAISE fnd_api.g_exc_unexpected_error;
1985: END IF;
1978: -- we need to pass the fund currency after calculating
1979: l_fund_rec.currency_code_tc := l_old_curr;
1980:
1981: IF l_return_status = fnd_api.g_ret_sts_error THEN
1982: RAISE fnd_api.g_exc_error;
1983: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1984: RAISE fnd_api.g_exc_unexpected_error;
1985: END IF;
1986: END IF;
1979: l_fund_rec.currency_code_tc := l_old_curr;
1980:
1981: IF l_return_status = fnd_api.g_ret_sts_error THEN
1982: RAISE fnd_api.g_exc_error;
1983: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1984: RAISE fnd_api.g_exc_unexpected_error;
1985: END IF;
1986: END IF;
1987:
1980:
1981: IF l_return_status = fnd_api.g_ret_sts_error THEN
1982: RAISE fnd_api.g_exc_error;
1983: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
1984: RAISE fnd_api.g_exc_unexpected_error;
1985: END IF;
1986: END IF;
1987:
1988: -- yzhao: 11.5.10
1986: END IF;
1987:
1988: -- yzhao: 11.5.10
1989: IF p_fund_rec.utilized_amt IS NOT NULL
1990: AND p_fund_rec.utilized_amt <> fnd_api.g_miss_num THEN
1991:
1992: IF G_DEBUG THEN
1993: ozf_utility_pvt.debug_message (l_full_name
1994: || ' p_fund_rec.exchange_rate_date5: ' || p_fund_rec.exchange_rate_date);
2027: */
2028: -- we need to pass the fund currency after calculating
2029: l_fund_rec.currency_code_tc := l_old_curr;
2030:
2031: IF l_return_status = fnd_api.g_ret_sts_error THEN
2032: RAISE fnd_api.g_exc_error;
2033: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2034: RAISE fnd_api.g_exc_unexpected_error;
2035: END IF;
2028: -- we need to pass the fund currency after calculating
2029: l_fund_rec.currency_code_tc := l_old_curr;
2030:
2031: IF l_return_status = fnd_api.g_ret_sts_error THEN
2032: RAISE fnd_api.g_exc_error;
2033: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2034: RAISE fnd_api.g_exc_unexpected_error;
2035: END IF;
2036: END IF;
2029: l_fund_rec.currency_code_tc := l_old_curr;
2030:
2031: IF l_return_status = fnd_api.g_ret_sts_error THEN
2032: RAISE fnd_api.g_exc_error;
2033: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2034: RAISE fnd_api.g_exc_unexpected_error;
2035: END IF;
2036: END IF;
2037:
2030:
2031: IF l_return_status = fnd_api.g_ret_sts_error THEN
2032: RAISE fnd_api.g_exc_error;
2033: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2034: RAISE fnd_api.g_exc_unexpected_error;
2035: END IF;
2036: END IF;
2037:
2038: IF p_fund_rec.earned_amt IS NOT NULL
2035: END IF;
2036: END IF;
2037:
2038: IF p_fund_rec.earned_amt IS NOT NULL
2039: AND p_fund_rec.earned_amt <> fnd_api.g_miss_num THEN
2040:
2041: IF G_DEBUG THEN
2042: ozf_utility_pvt.debug_message (l_full_name
2043: || ' p_fund_rec.exchange_rate_date6: ' || p_fund_rec.exchange_rate_date);
2076: */
2077: -- we need to pass the fund currency after calculating
2078: l_fund_rec.currency_code_tc := l_old_curr;
2079:
2080: IF l_return_status = fnd_api.g_ret_sts_error THEN
2081: RAISE fnd_api.g_exc_error;
2082: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2083: RAISE fnd_api.g_exc_unexpected_error;
2084: END IF;
2077: -- we need to pass the fund currency after calculating
2078: l_fund_rec.currency_code_tc := l_old_curr;
2079:
2080: IF l_return_status = fnd_api.g_ret_sts_error THEN
2081: RAISE fnd_api.g_exc_error;
2082: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2083: RAISE fnd_api.g_exc_unexpected_error;
2084: END IF;
2085: END IF;
2078: l_fund_rec.currency_code_tc := l_old_curr;
2079:
2080: IF l_return_status = fnd_api.g_ret_sts_error THEN
2081: RAISE fnd_api.g_exc_error;
2082: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2083: RAISE fnd_api.g_exc_unexpected_error;
2084: END IF;
2085: END IF;
2086:
2079:
2080: IF l_return_status = fnd_api.g_ret_sts_error THEN
2081: RAISE fnd_api.g_exc_error;
2082: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2083: RAISE fnd_api.g_exc_unexpected_error;
2084: END IF;
2085: END IF;
2086:
2087: IF p_fund_rec.committed_amt IS NOT NULL
2084: END IF;
2085: END IF;
2086:
2087: IF p_fund_rec.committed_amt IS NOT NULL
2088: AND p_fund_rec.committed_amt <> fnd_api.g_miss_num THEN
2089:
2090: IF G_DEBUG THEN
2091: ozf_utility_pvt.debug_message (l_full_name
2092: || ' p_fund_rec.exchange_rate_date7: ' || p_fund_rec.exchange_rate_date);
2125: */
2126: -- we need to pass the fund currency after calculating
2127: l_fund_rec.currency_code_tc := l_old_curr;
2128:
2129: IF l_return_status = fnd_api.g_ret_sts_error THEN
2130: RAISE fnd_api.g_exc_error;
2131: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2132: RAISE fnd_api.g_exc_unexpected_error;
2133: END IF;
2126: -- we need to pass the fund currency after calculating
2127: l_fund_rec.currency_code_tc := l_old_curr;
2128:
2129: IF l_return_status = fnd_api.g_ret_sts_error THEN
2130: RAISE fnd_api.g_exc_error;
2131: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2132: RAISE fnd_api.g_exc_unexpected_error;
2133: END IF;
2134: END IF;
2127: l_fund_rec.currency_code_tc := l_old_curr;
2128:
2129: IF l_return_status = fnd_api.g_ret_sts_error THEN
2130: RAISE fnd_api.g_exc_error;
2131: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2132: RAISE fnd_api.g_exc_unexpected_error;
2133: END IF;
2134: END IF;
2135:
2128:
2129: IF l_return_status = fnd_api.g_ret_sts_error THEN
2130: RAISE fnd_api.g_exc_error;
2131: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2132: RAISE fnd_api.g_exc_unexpected_error;
2133: END IF;
2134: END IF;
2135:
2136: IF p_fund_rec.paid_amt IS NOT NULL
2133: END IF;
2134: END IF;
2135:
2136: IF p_fund_rec.paid_amt IS NOT NULL
2137: AND p_fund_rec.paid_amt <> fnd_api.g_miss_num THEN
2138:
2139: IF G_DEBUG THEN
2140: ozf_utility_pvt.debug_message (l_full_name
2141: || ' p_fund_rec.exchange_rate_date8: ' || p_fund_rec.exchange_rate_date);
2174: */
2175: -- we need to pass the fund currency after calculating
2176: l_fund_rec.currency_code_tc := l_old_curr;
2177:
2178: IF l_return_status = fnd_api.g_ret_sts_error THEN
2179: RAISE fnd_api.g_exc_error;
2180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2181: RAISE fnd_api.g_exc_unexpected_error;
2182: END IF;
2175: -- we need to pass the fund currency after calculating
2176: l_fund_rec.currency_code_tc := l_old_curr;
2177:
2178: IF l_return_status = fnd_api.g_ret_sts_error THEN
2179: RAISE fnd_api.g_exc_error;
2180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2181: RAISE fnd_api.g_exc_unexpected_error;
2182: END IF;
2183: END IF;
2176: l_fund_rec.currency_code_tc := l_old_curr;
2177:
2178: IF l_return_status = fnd_api.g_ret_sts_error THEN
2179: RAISE fnd_api.g_exc_error;
2180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2181: RAISE fnd_api.g_exc_unexpected_error;
2182: END IF;
2183: END IF;
2184: END IF;
2177:
2178: IF l_return_status = fnd_api.g_ret_sts_error THEN
2179: RAISE fnd_api.g_exc_error;
2180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2181: RAISE fnd_api.g_exc_unexpected_error;
2182: END IF;
2183: END IF;
2184: END IF;
2185:
2192: END IF;
2193:
2194: -- generate source code
2195: IF p_fund_rec.parent_fund_id IS NOT NULL
2196: AND p_fund_rec.parent_fund_id <> fnd_api.g_miss_num
2197: AND p_fund_rec.fund_number IS NULL THEN
2198: get_child_source_code(
2199: p_fund_rec.parent_fund_id
2200: ,l_fund_rec.fund_number
2199: p_fund_rec.parent_fund_id
2200: ,l_fund_rec.fund_number
2201: ,x_return_status);
2202:
2203: IF x_return_status = fnd_api.g_ret_sts_error THEN
2204: RAISE fnd_api.g_exc_error;
2205: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
2206: RAISE fnd_api.g_exc_unexpected_error;
2207: END IF;
2200: ,l_fund_rec.fund_number
2201: ,x_return_status);
2202:
2203: IF x_return_status = fnd_api.g_ret_sts_error THEN
2204: RAISE fnd_api.g_exc_error;
2205: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
2206: RAISE fnd_api.g_exc_unexpected_error;
2207: END IF;
2208: END IF;
2201: ,x_return_status);
2202:
2203: IF x_return_status = fnd_api.g_ret_sts_error THEN
2204: RAISE fnd_api.g_exc_error;
2205: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
2206: RAISE fnd_api.g_exc_unexpected_error;
2207: END IF;
2208: END IF;
2209:
2202:
2203: IF x_return_status = fnd_api.g_ret_sts_error THEN
2204: RAISE fnd_api.g_exc_error;
2205: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
2206: RAISE fnd_api.g_exc_unexpected_error;
2207: END IF;
2208: END IF;
2209:
2210: IF p_validation_level >= jtf_plsql_api.g_valid_level_item THEN
2217: ,p_validation_mode => jtf_plsql_api.g_update
2218: ,x_return_status => l_return_status
2219: ,p_mode => p_mode); -- For Bug 13529250, to pass p_mode to avoid budget amount validation while claim settlement
2220:
2221: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2222: RAISE fnd_api.g_exc_unexpected_error;
2223: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2224: RAISE fnd_api.g_exc_error;
2225: END IF;
2218: ,x_return_status => l_return_status
2219: ,p_mode => p_mode); -- For Bug 13529250, to pass p_mode to avoid budget amount validation while claim settlement
2220:
2221: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2222: RAISE fnd_api.g_exc_unexpected_error;
2223: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2224: RAISE fnd_api.g_exc_error;
2225: END IF;
2226: END IF;
2219: ,p_mode => p_mode); -- For Bug 13529250, to pass p_mode to avoid budget amount validation while claim settlement
2220:
2221: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2222: RAISE fnd_api.g_exc_unexpected_error;
2223: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2224: RAISE fnd_api.g_exc_error;
2225: END IF;
2226: END IF;
2227:
2220:
2221: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2222: RAISE fnd_api.g_exc_unexpected_error;
2223: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2224: RAISE fnd_api.g_exc_error;
2225: END IF;
2226: END IF;
2227:
2228: -- record level
2232: ,p_complete_rec => l_fund_rec
2233: ,p_mode => p_mode
2234: ,x_return_status => l_return_status);
2235:
2236: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2237: RAISE fnd_api.g_exc_unexpected_error;
2238: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2239: RAISE fnd_api.g_exc_error;
2240: END IF;
2233: ,p_mode => p_mode
2234: ,x_return_status => l_return_status);
2235:
2236: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2237: RAISE fnd_api.g_exc_unexpected_error;
2238: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2239: RAISE fnd_api.g_exc_error;
2240: END IF;
2241: END IF;
2234: ,x_return_status => l_return_status);
2235:
2236: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2237: RAISE fnd_api.g_exc_unexpected_error;
2238: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2239: RAISE fnd_api.g_exc_error;
2240: END IF;
2241: END IF;
2242:
2235:
2236: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2237: RAISE fnd_api.g_exc_unexpected_error;
2238: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2239: RAISE fnd_api.g_exc_error;
2240: END IF;
2241: END IF;
2242:
2243: -- inter-entity level
2251: ,p_complete_rec => l_fund_rec
2252: ,p_validation_mode => jtf_plsql_api.g_update
2253: ,x_return_status => l_return_status);
2254:
2255: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2256: RAISE fnd_api.g_exc_unexpected_error;
2257: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2258: RAISE fnd_api.g_exc_error;
2259: END IF;
2252: ,p_validation_mode => jtf_plsql_api.g_update
2253: ,x_return_status => l_return_status);
2254:
2255: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2256: RAISE fnd_api.g_exc_unexpected_error;
2257: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2258: RAISE fnd_api.g_exc_error;
2259: END IF;
2260: END IF;
2253: ,x_return_status => l_return_status);
2254:
2255: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2256: RAISE fnd_api.g_exc_unexpected_error;
2257: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2258: RAISE fnd_api.g_exc_error;
2259: END IF;
2260: END IF;
2261:
2254:
2255: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2256: RAISE fnd_api.g_exc_unexpected_error;
2257: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
2258: RAISE fnd_api.g_exc_error;
2259: END IF;
2260: END IF;
2261:
2262: -------------------------- update --------------------
2269: -- kdass 09-NOV-05 Bug 4618523
2270: /*
2271: --added by mpande 6th JULY-2000
2272: --get default category GL Info not for statistical funds
2273: IF p_fund_rec.category_id <> fnd_api.g_miss_num
2274: AND l_fund_rec.category_id IS NOT NULL THEN
2275: complete_default_gl_info(
2276: l_fund_rec.category_id
2277: ,l_fund_rec.accrued_liable_account
2277: ,l_fund_rec.accrued_liable_account
2278: ,l_fund_rec.ded_adjustment_account
2279: ,l_return_status);
2280:
2281: IF l_return_status = fnd_api.g_ret_sts_error THEN
2282: RAISE fnd_api.g_exc_error;
2283: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2284: RAISE fnd_api.g_exc_unexpected_error;
2285: END IF;
2278: ,l_fund_rec.ded_adjustment_account
2279: ,l_return_status);
2280:
2281: IF l_return_status = fnd_api.g_ret_sts_error THEN
2282: RAISE fnd_api.g_exc_error;
2283: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2284: RAISE fnd_api.g_exc_unexpected_error;
2285: END IF;
2286: END IF;
2279: ,l_return_status);
2280:
2281: IF l_return_status = fnd_api.g_ret_sts_error THEN
2282: RAISE fnd_api.g_exc_error;
2283: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2284: RAISE fnd_api.g_exc_unexpected_error;
2285: END IF;
2286: END IF;
2287: */
2280:
2281: IF l_return_status = fnd_api.g_ret_sts_error THEN
2282: RAISE fnd_api.g_exc_error;
2283: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2284: RAISE fnd_api.g_exc_unexpected_error;
2285: END IF;
2286: END IF;
2287: */
2288:
2291: END IF;
2292: -- perform all status related updation and if it is successful then only update the fund record
2293: -- Update fund could be called by other APIS in active status to update earned amt or committed amt .
2294: -- We do allow them to update the record then
2295: IF l_return_status = fnd_api.g_ret_sts_success THEN
2296: IF p_mode IN (jtf_PLSQL_API.G_UPDATE, 'WORKFLOW') THEN
2297: Ozf_fundrules_pvt.update_fund_status(
2298: p_fund_rec => l_fund_rec
2299: /* yzhao: 11/26/2002 how weird to pass IN parameter l_fund_rec, and use member as OUT parameter
2309: ,x_msg_count => x_msg_count
2310: ,x_msg_data => x_msg_data
2311: ,p_api_version => 1.0);
2312:
2313: IF l_return_status = fnd_api.g_ret_sts_error THEN
2314: RAISE fnd_api.g_exc_error;
2315: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2316: RAISE fnd_api.g_exc_unexpected_error;
2317: END IF;
2310: ,x_msg_data => x_msg_data
2311: ,p_api_version => 1.0);
2312:
2313: IF l_return_status = fnd_api.g_ret_sts_error THEN
2314: RAISE fnd_api.g_exc_error;
2315: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2316: RAISE fnd_api.g_exc_unexpected_error;
2317: END IF;
2318:
2311: ,p_api_version => 1.0);
2312:
2313: IF l_return_status = fnd_api.g_ret_sts_error THEN
2314: RAISE fnd_api.g_exc_error;
2315: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2316: RAISE fnd_api.g_exc_unexpected_error;
2317: END IF;
2318:
2319: l_fund_rec.status_code := l_tmp_status_code;
2312:
2313: IF l_return_status = fnd_api.g_ret_sts_error THEN
2314: RAISE fnd_api.g_exc_error;
2315: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2316: RAISE fnd_api.g_exc_unexpected_error;
2317: END IF;
2318:
2319: l_fund_rec.status_code := l_tmp_status_code;
2320: l_fund_rec.user_status_id := l_tmp_status_id;
2423: ,g_universal_currency) + NVL(l_or_original_budget,0);
2424: l_rollup_original_budget := l_fund_rec.rollup_original_budget - NVL(l_or_original_budget,0);
2425:
2426:
2427: IF l_return_status = fnd_api.g_ret_sts_error THEN
2428: RAISE fnd_api.g_exc_error;
2429: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2430: RAISE fnd_api.g_exc_unexpected_error;
2431: END IF;
2424: l_rollup_original_budget := l_fund_rec.rollup_original_budget - NVL(l_or_original_budget,0);
2425:
2426:
2427: IF l_return_status = fnd_api.g_ret_sts_error THEN
2428: RAISE fnd_api.g_exc_error;
2429: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2430: RAISE fnd_api.g_exc_unexpected_error;
2431: END IF;
2432:
2425:
2426:
2427: IF l_return_status = fnd_api.g_ret_sts_error THEN
2428: RAISE fnd_api.g_exc_error;
2429: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2430: RAISE fnd_api.g_exc_unexpected_error;
2431: END IF;
2432:
2433: END IF;
2426:
2427: IF l_return_status = fnd_api.g_ret_sts_error THEN
2428: RAISE fnd_api.g_exc_error;
2429: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2430: RAISE fnd_api.g_exc_unexpected_error;
2431: END IF;
2432:
2433: END IF;
2434:
2542: IF l_old_parent_fund_id <> l_fund_rec.parent_fund_id THEN
2543: -- remove old access.
2544: update_funds_access(
2545: p_api_version => l_api_version
2546: ,p_init_msg_list => fnd_api.g_false
2547: ,p_commit => fnd_api.g_false
2548: ,p_validation_level => p_validation_level
2549: ,x_return_status => l_return_status
2550: ,x_msg_count => x_msg_count
2543: -- remove old access.
2544: update_funds_access(
2545: p_api_version => l_api_version
2546: ,p_init_msg_list => fnd_api.g_false
2547: ,p_commit => fnd_api.g_false
2548: ,p_validation_level => p_validation_level
2549: ,x_return_status => l_return_status
2550: ,x_msg_count => x_msg_count
2551: ,x_msg_data => x_msg_data
2552: ,p_fund_rec => l_fund_rec
2553: ,p_mode => 'DELETE'
2554: );
2555:
2556: IF l_return_status = fnd_api.g_ret_sts_error THEN
2557: RAISE fnd_api.g_exc_error;
2558: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2559: RAISE fnd_api.g_exc_unexpected_error;
2560: END IF;
2553: ,p_mode => 'DELETE'
2554: );
2555:
2556: IF l_return_status = fnd_api.g_ret_sts_error THEN
2557: RAISE fnd_api.g_exc_error;
2558: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2559: RAISE fnd_api.g_exc_unexpected_error;
2560: END IF;
2561: END IF; -- end of l_old_parent_fund_id <> l_fund_rec.parent_fund_id.
2554: );
2555:
2556: IF l_return_status = fnd_api.g_ret_sts_error THEN
2557: RAISE fnd_api.g_exc_error;
2558: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2559: RAISE fnd_api.g_exc_unexpected_error;
2560: END IF;
2561: END IF; -- end of l_old_parent_fund_id <> l_fund_rec.parent_fund_id.
2562: END IF; -- end of l_fund_rec.parent_fund_id IS NOT NULL
2555:
2556: IF l_return_status = fnd_api.g_ret_sts_error THEN
2557: RAISE fnd_api.g_exc_error;
2558: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2559: RAISE fnd_api.g_exc_unexpected_error;
2560: END IF;
2561: END IF; -- end of l_old_parent_fund_id <> l_fund_rec.parent_fund_id.
2562: END IF; -- end of l_fund_rec.parent_fund_id IS NOT NULL
2563:
2564: -- if removing parent then remove access
2565: IF l_fund_rec.parent_fund_id IS NULL AND l_old_parent_fund_id IS NOT NULL THEN
2566: update_funds_access(
2567: p_api_version => l_api_version
2568: ,p_init_msg_list => fnd_api.g_false
2569: ,p_commit => fnd_api.g_false
2570: ,p_validation_level => p_validation_level
2571: ,x_return_status => l_return_status
2572: ,x_msg_count => x_msg_count
2565: IF l_fund_rec.parent_fund_id IS NULL AND l_old_parent_fund_id IS NOT NULL THEN
2566: update_funds_access(
2567: p_api_version => l_api_version
2568: ,p_init_msg_list => fnd_api.g_false
2569: ,p_commit => fnd_api.g_false
2570: ,p_validation_level => p_validation_level
2571: ,x_return_status => l_return_status
2572: ,x_msg_count => x_msg_count
2573: ,x_msg_data => x_msg_data
2574: ,p_fund_rec => l_fund_rec
2575: ,p_mode => 'DELETE'
2576: );
2577:
2578: IF l_return_status = fnd_api.g_ret_sts_error THEN
2579: RAISE fnd_api.g_exc_error;
2580: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2581: RAISE fnd_api.g_exc_unexpected_error;
2582: END IF;
2575: ,p_mode => 'DELETE'
2576: );
2577:
2578: IF l_return_status = fnd_api.g_ret_sts_error THEN
2579: RAISE fnd_api.g_exc_error;
2580: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2581: RAISE fnd_api.g_exc_unexpected_error;
2582: END IF;
2583:
2576: );
2577:
2578: IF l_return_status = fnd_api.g_ret_sts_error THEN
2579: RAISE fnd_api.g_exc_error;
2580: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2581: RAISE fnd_api.g_exc_unexpected_error;
2582: END IF;
2583:
2584: END IF; -- l_fund_rec.parent_fund_id
2577:
2578: IF l_return_status = fnd_api.g_ret_sts_error THEN
2579: RAISE fnd_api.g_exc_error;
2580: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2581: RAISE fnd_api.g_exc_unexpected_error;
2582: END IF;
2583:
2584: END IF; -- l_fund_rec.parent_fund_id
2585: -- added by feliu to fix bug 2654263
2736: fnd_message.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
2737: fnd_msg_pub.add;
2738: END IF;
2739:
2740: RAISE fnd_api.g_exc_error;
2741: END IF;
2742:
2743: ELSE
2744: -- For TPA Parallel Execution ER - 9614703 (+)
2908:
2909: END IF;
2910: -- For Bug#8867381 (-)
2911:
2912: IF l_return_status = fnd_api.g_ret_sts_success THEN
2913:
2914: -- added by feliu for updating rollup amount columns.
2915: -- if parent_fund_id is not null, update parent's rollup amount by using this fund's
2916: -- rollup amount change.
2957: END IF;
2958:
2959: update_rollup_amount(
2960: p_api_version => l_api_version
2961: ,p_init_msg_list => fnd_api.g_false
2962: ,p_commit => fnd_api.g_false
2963: ,p_validation_level => p_validation_level
2964: ,x_return_status => l_return_status
2965: ,x_msg_count => x_msg_count
2958:
2959: update_rollup_amount(
2960: p_api_version => l_api_version
2961: ,p_init_msg_list => fnd_api.g_false
2962: ,p_commit => fnd_api.g_false
2963: ,p_validation_level => p_validation_level
2964: ,x_return_status => l_return_status
2965: ,x_msg_count => x_msg_count
2966: ,x_msg_data => x_msg_data
2965: ,x_msg_count => x_msg_count
2966: ,x_msg_data => x_msg_data
2967: ,p_fund_rec => l_fund_rec
2968: );
2969: IF l_return_status = fnd_api.g_ret_sts_error THEN
2970: RAISE fnd_api.g_exc_error;
2971: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2972: RAISE fnd_api.g_exc_unexpected_error;
2973: END IF;
2966: ,x_msg_data => x_msg_data
2967: ,p_fund_rec => l_fund_rec
2968: );
2969: IF l_return_status = fnd_api.g_ret_sts_error THEN
2970: RAISE fnd_api.g_exc_error;
2971: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2972: RAISE fnd_api.g_exc_unexpected_error;
2973: END IF;
2974: END IF;
2967: ,p_fund_rec => l_fund_rec
2968: );
2969: IF l_return_status = fnd_api.g_ret_sts_error THEN
2970: RAISE fnd_api.g_exc_error;
2971: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2972: RAISE fnd_api.g_exc_unexpected_error;
2973: END IF;
2974: END IF;
2975: -- For BUG#8867381(-)
2968: );
2969: IF l_return_status = fnd_api.g_ret_sts_error THEN
2970: RAISE fnd_api.g_exc_error;
2971: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2972: RAISE fnd_api.g_exc_unexpected_error;
2973: END IF;
2974: END IF;
2975: -- For BUG#8867381(-)
2976:
2978: /* IF l_active_flag = true THEN
2979:
2980: update_funds_access(
2981: p_api_version => l_api_version
2982: ,p_init_msg_list => fnd_api.g_false
2983: ,p_commit => fnd_api.g_false
2984: ,p_validation_level => p_validation_level
2985: ,x_return_status => l_return_status
2986: ,x_msg_count => x_msg_count
2979:
2980: update_funds_access(
2981: p_api_version => l_api_version
2982: ,p_init_msg_list => fnd_api.g_false
2983: ,p_commit => fnd_api.g_false
2984: ,p_validation_level => p_validation_level
2985: ,x_return_status => l_return_status
2986: ,x_msg_count => x_msg_count
2987: ,x_msg_data => x_msg_data
2987: ,x_msg_data => x_msg_data
2988: ,p_fund_rec => l_fund_rec
2989: ,p_mode => 'CREATE'
2990: );
2991: IF l_return_status = fnd_api.g_ret_sts_error THEN
2992: RAISE fnd_api.g_exc_error;
2993: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2994: RAISE fnd_api.g_exc_unexpected_error;
2995: END IF;
2988: ,p_fund_rec => l_fund_rec
2989: ,p_mode => 'CREATE'
2990: );
2991: IF l_return_status = fnd_api.g_ret_sts_error THEN
2992: RAISE fnd_api.g_exc_error;
2993: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2994: RAISE fnd_api.g_exc_unexpected_error;
2995: END IF;
2996: END IF; */
2989: ,p_mode => 'CREATE'
2990: );
2991: IF l_return_status = fnd_api.g_ret_sts_error THEN
2992: RAISE fnd_api.g_exc_error;
2993: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2994: RAISE fnd_api.g_exc_unexpected_error;
2995: END IF;
2996: END IF; */
2997: END IF; -- end if for parent fund
2990: );
2991: IF l_return_status = fnd_api.g_ret_sts_error THEN
2992: RAISE fnd_api.g_exc_error;
2993: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
2994: RAISE fnd_api.g_exc_unexpected_error;
2995: END IF;
2996: END IF; */
2997: END IF; -- end if for parent fund
2998: END IF; -- end if for status code
3021: ,x_msg_data => x_msg_data
3022: ,p_api_version => 1.0);
3023: END IF;
3024:
3025: IF l_return_status = fnd_api.g_ret_sts_error THEN
3026: RAISE fnd_api.g_exc_error;
3027: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3028: RAISE fnd_api.g_exc_unexpected_error;
3029: END IF;
3022: ,p_api_version => 1.0);
3023: END IF;
3024:
3025: IF l_return_status = fnd_api.g_ret_sts_error THEN
3026: RAISE fnd_api.g_exc_error;
3027: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3028: RAISE fnd_api.g_exc_unexpected_error;
3029: END IF;
3030: END IF; -- yzhao: end of IF p_mode <> 'ADJUST'
3023: END IF;
3024:
3025: IF l_return_status = fnd_api.g_ret_sts_error THEN
3026: RAISE fnd_api.g_exc_error;
3027: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3028: RAISE fnd_api.g_exc_unexpected_error;
3029: END IF;
3030: END IF; -- yzhao: end of IF p_mode <> 'ADJUST'
3031:
3024:
3025: IF l_return_status = fnd_api.g_ret_sts_error THEN
3026: RAISE fnd_api.g_exc_error;
3027: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3028: RAISE fnd_api.g_exc_unexpected_error;
3029: END IF;
3030: END IF; -- yzhao: end of IF p_mode <> 'ADJUST'
3031:
3032: -- call when it is submitting for approval
3029: END IF;
3030: END IF; -- yzhao: end of IF p_mode <> 'ADJUST'
3031:
3032: -- call when it is submitting for approval
3033: IF l_submit_child_approval = FND_API.g_true THEN
3034: -- yzhao: 03/18/2003 handle budget allocation as well
3035: IF l_fund_rec.fund_usage IS NOT NULL AND l_fund_rec.fund_usage = 'ALLOC' THEN
3036: -- yzhao: 03/18/2003 budget allocation does not need workflow approval process so pass allocation_flag='Y'
3037: l_allocation_flag := 'Y';
3039: l_allocation_flag := 'N';
3040: END IF;
3041: --nirprasa, no chnage needed as this flow is for request
3042: ozf_fund_request_apr_pvt.create_fund_request(
3043: p_commit => fnd_api.g_false
3044: ,p_approval_for_id => p_fund_rec.fund_id
3045: /* yzhao: Jan 16 2005 fix bug 4943323(4912954) pass in correct requester id
3046: ,p_requester_id => l_fund_rec.owner
3047: */
3060: ,x_request_id => l_request_id
3061: ,x_approver_id => l_approver_id
3062: ,x_is_requester_owner => l_is_requestor_owner);
3063:
3064: IF l_return_status = fnd_api.g_ret_sts_error THEN
3065: RAISE fnd_api.g_exc_error;
3066: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3067: RAISE fnd_api.g_exc_unexpected_error;
3068: END IF;
3061: ,x_approver_id => l_approver_id
3062: ,x_is_requester_owner => l_is_requestor_owner);
3063:
3064: IF l_return_status = fnd_api.g_ret_sts_error THEN
3065: RAISE fnd_api.g_exc_error;
3066: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3067: RAISE fnd_api.g_exc_unexpected_error;
3068: END IF;
3069: END IF;
3062: ,x_is_requester_owner => l_is_requestor_owner);
3063:
3064: IF l_return_status = fnd_api.g_ret_sts_error THEN
3065: RAISE fnd_api.g_exc_error;
3066: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3067: RAISE fnd_api.g_exc_unexpected_error;
3068: END IF;
3069: END IF;
3070: -- call when it is submitting for approval
3063:
3064: IF l_return_status = fnd_api.g_ret_sts_error THEN
3065: RAISE fnd_api.g_exc_error;
3066: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3067: RAISE fnd_api.g_exc_unexpected_error;
3068: END IF;
3069: END IF;
3070: -- call when it is submitting for approval
3071: IF l_submit_budget_approval = FND_API.g_true THEN
3067: RAISE fnd_api.g_exc_unexpected_error;
3068: END IF;
3069: END IF;
3070: -- call when it is submitting for approval
3071: IF l_submit_budget_approval = FND_API.g_true THEN
3072: l_reject_status_id :=ozf_utility_pvt.get_default_user_status(
3073: l_status_type
3074: ,'REJECTED');
3075:
3105: -- reinitialize the variables
3106: l_act_access_id := NULL;
3107: l_acc_obj_ver_num := NULL;
3108: -- if owner is changing update acesss
3109: IF p_fund_rec.owner <> fnd_api.g_miss_num
3110: AND l_owner <> p_fund_rec.owner THEN
3111: IF G_DEBUG THEN
3112: ozf_utility_pvt.debug_message(l_full_name || ': insert access owner');
3113: END IF;
3125: l_access_rec.admin_flag := 'Y';
3126: l_access_rec.owner_flag := 'Y';
3127: ams_access_pvt.update_access(
3128: p_api_version => l_api_version
3129: ,p_init_msg_list => fnd_api.g_false
3130: ,p_validation_level => p_validation_level
3131: ,x_return_status => l_return_status
3132: ,x_msg_count => x_msg_count
3133: ,x_msg_data => x_msg_data
3130: ,p_validation_level => p_validation_level
3131: ,x_return_status => l_return_status
3132: ,x_msg_count => x_msg_count
3133: ,x_msg_data => x_msg_data
3134: ,p_commit => fnd_api.g_false
3135: ,p_access_rec => l_access_rec);
3136: */
3137:
3138: AMS_Access_PVT.update_object_owner
3136: */
3137:
3138: AMS_Access_PVT.update_object_owner
3139: ( p_api_version => 1.0
3140: ,p_init_msg_list => FND_API.G_FALSE
3141: ,p_commit => FND_API.G_FALSE
3142: ,p_validation_level => p_validation_level
3143: ,x_return_status => x_return_status
3144: ,x_msg_count => x_msg_count
3137:
3138: AMS_Access_PVT.update_object_owner
3139: ( p_api_version => 1.0
3140: ,p_init_msg_list => FND_API.G_FALSE
3141: ,p_commit => FND_API.G_FALSE
3142: ,p_validation_level => p_validation_level
3143: ,x_return_status => x_return_status
3144: ,x_msg_count => x_msg_count
3145: ,x_msg_data => x_msg_data
3147: ,p_object_id => l_fund_rec.fund_id
3148: ,p_resource_id => l_fund_rec.owner
3149: ,p_old_resource_id => l_owner
3150: );
3151: IF l_return_status = fnd_api.g_ret_sts_error THEN
3152: RAISE fnd_api.g_exc_error;
3153: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3154: RAISE fnd_api.g_exc_unexpected_error;
3155: END IF;
3148: ,p_resource_id => l_fund_rec.owner
3149: ,p_old_resource_id => l_owner
3150: );
3151: IF l_return_status = fnd_api.g_ret_sts_error THEN
3152: RAISE fnd_api.g_exc_error;
3153: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3154: RAISE fnd_api.g_exc_unexpected_error;
3155: END IF;
3156: END IF; -- end of owner is changing
3149: ,p_old_resource_id => l_owner
3150: );
3151: IF l_return_status = fnd_api.g_ret_sts_error THEN
3152: RAISE fnd_api.g_exc_error;
3153: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3154: RAISE fnd_api.g_exc_unexpected_error;
3155: END IF;
3156: END IF; -- end of owner is changing
3157:
3150: );
3151: IF l_return_status = fnd_api.g_ret_sts_error THEN
3152: RAISE fnd_api.g_exc_error;
3153: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3154: RAISE fnd_api.g_exc_unexpected_error;
3155: END IF;
3156: END IF; -- end of owner is changing
3157:
3158: -- added by feliu to fix bug 2654263
3165: --then create a access for the new parent ownner
3166: IF l_old_parent_fund_id IS NULL THEN
3167: update_funds_access(
3168: p_api_version => l_api_version
3169: ,p_init_msg_list => fnd_api.g_false
3170: ,p_commit => fnd_api.g_false
3171: ,p_validation_level => p_validation_level
3172: ,x_return_status => l_return_status
3173: ,x_msg_count => x_msg_count
3166: IF l_old_parent_fund_id IS NULL THEN
3167: update_funds_access(
3168: p_api_version => l_api_version
3169: ,p_init_msg_list => fnd_api.g_false
3170: ,p_commit => fnd_api.g_false
3171: ,p_validation_level => p_validation_level
3172: ,x_return_status => l_return_status
3173: ,x_msg_count => x_msg_count
3174: ,x_msg_data => x_msg_data
3174: ,x_msg_data => x_msg_data
3175: ,p_fund_rec => l_fund_rec
3176: ,p_mode => 'CREATE'
3177: );
3178: IF l_return_status = fnd_api.g_ret_sts_error THEN
3179: RAISE fnd_api.g_exc_error;
3180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3181: RAISE fnd_api.g_exc_unexpected_error;
3182: END IF;
3175: ,p_fund_rec => l_fund_rec
3176: ,p_mode => 'CREATE'
3177: );
3178: IF l_return_status = fnd_api.g_ret_sts_error THEN
3179: RAISE fnd_api.g_exc_error;
3180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3181: RAISE fnd_api.g_exc_unexpected_error;
3182: END IF;
3183:
3176: ,p_mode => 'CREATE'
3177: );
3178: IF l_return_status = fnd_api.g_ret_sts_error THEN
3179: RAISE fnd_api.g_exc_error;
3180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3181: RAISE fnd_api.g_exc_unexpected_error;
3182: END IF;
3183:
3184: --if the old parent fund and the new parent fund is diffrent.
3177: );
3178: IF l_return_status = fnd_api.g_ret_sts_error THEN
3179: RAISE fnd_api.g_exc_error;
3180: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3181: RAISE fnd_api.g_exc_unexpected_error;
3182: END IF;
3183:
3184: --if the old parent fund and the new parent fund is diffrent.
3185: ELSIF l_old_parent_fund_id <> l_fund_rec.parent_fund_id THEN
3184: --if the old parent fund and the new parent fund is diffrent.
3185: ELSIF l_old_parent_fund_id <> l_fund_rec.parent_fund_id THEN
3186: update_funds_access(
3187: p_api_version => l_api_version
3188: ,p_init_msg_list => fnd_api.g_false
3189: ,p_commit => fnd_api.g_false
3190: ,p_validation_level => p_validation_level
3191: ,x_return_status => l_return_status
3192: ,x_msg_count => x_msg_count
3185: ELSIF l_old_parent_fund_id <> l_fund_rec.parent_fund_id THEN
3186: update_funds_access(
3187: p_api_version => l_api_version
3188: ,p_init_msg_list => fnd_api.g_false
3189: ,p_commit => fnd_api.g_false
3190: ,p_validation_level => p_validation_level
3191: ,x_return_status => l_return_status
3192: ,x_msg_count => x_msg_count
3193: ,x_msg_data => x_msg_data
3193: ,x_msg_data => x_msg_data
3194: ,p_fund_rec => l_fund_rec
3195: ,p_mode => 'CREATE'
3196: );
3197: IF l_return_status = fnd_api.g_ret_sts_error THEN
3198: RAISE fnd_api.g_exc_error;
3199: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3200: RAISE fnd_api.g_exc_unexpected_error;
3201: END IF;
3194: ,p_fund_rec => l_fund_rec
3195: ,p_mode => 'CREATE'
3196: );
3197: IF l_return_status = fnd_api.g_ret_sts_error THEN
3198: RAISE fnd_api.g_exc_error;
3199: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3200: RAISE fnd_api.g_exc_unexpected_error;
3201: END IF;
3202: END IF; -- end of l_old_parent_fund_id <> l_fund_rec.parent_fund_id.
3195: ,p_mode => 'CREATE'
3196: );
3197: IF l_return_status = fnd_api.g_ret_sts_error THEN
3198: RAISE fnd_api.g_exc_error;
3199: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3200: RAISE fnd_api.g_exc_unexpected_error;
3201: END IF;
3202: END IF; -- end of l_old_parent_fund_id <> l_fund_rec.parent_fund_id.
3203: END IF; -- end of l_fund_rec.parent_fund_id IS NOT NULL
3196: );
3197: IF l_return_status = fnd_api.g_ret_sts_error THEN
3198: RAISE fnd_api.g_exc_error;
3199: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3200: RAISE fnd_api.g_exc_unexpected_error;
3201: END IF;
3202: END IF; -- end of l_old_parent_fund_id <> l_fund_rec.parent_fund_id.
3203: END IF; -- end of l_fund_rec.parent_fund_id IS NOT NULL
3204: -- added by feliu to fix bug 2654263
3203: END IF; -- end of l_fund_rec.parent_fund_id IS NOT NULL
3204: -- added by feliu to fix bug 2654263
3205:
3206: /* R12: yzhao bug 4669269 - obsolete ozf_mc_transactions
3207: IF p_fund_rec.original_budget <> FND_API.g_miss_num
3208: OR p_fund_rec.transfered_in_amt <> FND_API.g_miss_num
3209: OR p_fund_rec.transfered_out_amt <> FND_API.g_miss_num
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3204: -- added by feliu to fix bug 2654263
3205:
3206: /* R12: yzhao bug 4669269 - obsolete ozf_mc_transactions
3207: IF p_fund_rec.original_budget <> FND_API.g_miss_num
3208: OR p_fund_rec.transfered_in_amt <> FND_API.g_miss_num
3209: OR p_fund_rec.transfered_out_amt <> FND_API.g_miss_num
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3205:
3206: /* R12: yzhao bug 4669269 - obsolete ozf_mc_transactions
3207: IF p_fund_rec.original_budget <> FND_API.g_miss_num
3208: OR p_fund_rec.transfered_in_amt <> FND_API.g_miss_num
3209: OR p_fund_rec.transfered_out_amt <> FND_API.g_miss_num
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3206: /* R12: yzhao bug 4669269 - obsolete ozf_mc_transactions
3207: IF p_fund_rec.original_budget <> FND_API.g_miss_num
3208: OR p_fund_rec.transfered_in_amt <> FND_API.g_miss_num
3209: OR p_fund_rec.transfered_out_amt <> FND_API.g_miss_num
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3214: OR p_fund_rec.earned_amt <> FND_API.g_miss_num
3207: IF p_fund_rec.original_budget <> FND_API.g_miss_num
3208: OR p_fund_rec.transfered_in_amt <> FND_API.g_miss_num
3209: OR p_fund_rec.transfered_out_amt <> FND_API.g_miss_num
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3214: OR p_fund_rec.earned_amt <> FND_API.g_miss_num
3215: OR p_fund_rec.paid_amt <> FND_API.g_miss_num
3208: OR p_fund_rec.transfered_in_amt <> FND_API.g_miss_num
3209: OR p_fund_rec.transfered_out_amt <> FND_API.g_miss_num
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3214: OR p_fund_rec.earned_amt <> FND_API.g_miss_num
3215: OR p_fund_rec.paid_amt <> FND_API.g_miss_num
3216: OR p_fund_rec.currency_code_tc <> FND_API.g_miss_char THEN
3209: OR p_fund_rec.transfered_out_amt <> FND_API.g_miss_num
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3214: OR p_fund_rec.earned_amt <> FND_API.g_miss_num
3215: OR p_fund_rec.paid_amt <> FND_API.g_miss_num
3216: OR p_fund_rec.currency_code_tc <> FND_API.g_miss_char THEN
3217:
3210: OR p_fund_rec.holdback_amt <> FND_API.g_miss_num
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3214: OR p_fund_rec.earned_amt <> FND_API.g_miss_num
3215: OR p_fund_rec.paid_amt <> FND_API.g_miss_num
3216: OR p_fund_rec.currency_code_tc <> FND_API.g_miss_char THEN
3217:
3218: OPEN c_mc_record(p_fund_rec.fund_id);
3211: OR p_fund_rec.planned_amt <> FND_API.g_miss_num
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3214: OR p_fund_rec.earned_amt <> FND_API.g_miss_num
3215: OR p_fund_rec.paid_amt <> FND_API.g_miss_num
3216: OR p_fund_rec.currency_code_tc <> FND_API.g_miss_char THEN
3217:
3218: OPEN c_mc_record(p_fund_rec.fund_id);
3219: FETCH c_mc_record INTO l_mc_record_id, l_mc_obj_number;
3212: OR p_fund_rec.committed_amt <> FND_API.g_miss_num
3213: OR p_fund_rec.utilized_amt <> FND_API.g_miss_num -- yzhao: 11.5.10
3214: OR p_fund_rec.earned_amt <> FND_API.g_miss_num
3215: OR p_fund_rec.paid_amt <> FND_API.g_miss_num
3216: OR p_fund_rec.currency_code_tc <> FND_API.g_miss_char THEN
3217:
3218: OPEN c_mc_record(p_fund_rec.fund_id);
3219: FETCH c_mc_record INTO l_mc_record_id, l_mc_obj_number;
3220: CLOSE c_mc_record;
3253: -- Call mc_transaction API if fund type is not QUOTA
3254: IF l_fund_rec.fund_type <> 'QUOTA' THEN
3255: ozf_mc_transactions_pvt.update_mc_transactions(
3256: p_api_version => l_api_version
3257: ,p_init_msg_list => fnd_api.g_false
3258: ,p_commit => fnd_api.g_false
3259: -- 01/13/2003 yzhao fix bug BUG 2750841(same as 2741039) pass in org_id
3260: ,p_org_id => l_fund_rec.org_id
3261: ,x_return_status => l_return_status
3254: IF l_fund_rec.fund_type <> 'QUOTA' THEN
3255: ozf_mc_transactions_pvt.update_mc_transactions(
3256: p_api_version => l_api_version
3257: ,p_init_msg_list => fnd_api.g_false
3258: ,p_commit => fnd_api.g_false
3259: -- 01/13/2003 yzhao fix bug BUG 2750841(same as 2741039) pass in org_id
3260: ,p_org_id => l_fund_rec.org_id
3261: ,x_return_status => l_return_status
3262: ,x_msg_count => x_msg_count
3262: ,x_msg_count => x_msg_count
3263: ,x_msg_data => x_msg_data
3264: ,p_mc_transactions_rec => l_mc_transaction_rec);
3265:
3266: IF l_return_status = fnd_api.g_ret_sts_error THEN
3267: RAISE fnd_api.g_exc_error;
3268: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3269: RAISE fnd_api.g_exc_unexpected_error;
3270: END IF;
3263: ,x_msg_data => x_msg_data
3264: ,p_mc_transactions_rec => l_mc_transaction_rec);
3265:
3266: IF l_return_status = fnd_api.g_ret_sts_error THEN
3267: RAISE fnd_api.g_exc_error;
3268: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3269: RAISE fnd_api.g_exc_unexpected_error;
3270: END IF;
3271: END IF;
3264: ,p_mc_transactions_rec => l_mc_transaction_rec);
3265:
3266: IF l_return_status = fnd_api.g_ret_sts_error THEN
3267: RAISE fnd_api.g_exc_error;
3268: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3269: RAISE fnd_api.g_exc_unexpected_error;
3270: END IF;
3271: END IF;
3272:
3265:
3266: IF l_return_status = fnd_api.g_ret_sts_error THEN
3267: RAISE fnd_api.g_exc_error;
3268: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3269: RAISE fnd_api.g_exc_unexpected_error;
3270: END IF;
3271: END IF;
3272:
3273: END IF ; --check for amount
3275:
3276: END IF;-- end return status
3277:
3278: -- Check for commit
3279: IF fnd_api.to_boolean(p_commit) THEN
3280: COMMIT;
3281: END IF;
3282:
3283: fnd_msg_pub.count_and_get(
3280: COMMIT;
3281: END IF;
3282:
3283: fnd_msg_pub.count_and_get(
3284: p_encoded => fnd_api.g_false
3285: ,p_count => x_msg_count
3286: ,p_data => x_msg_data);
3287: IF G_DEBUG THEN
3288: ozf_utility_pvt.debug_message(l_full_name || ': end');
3287: IF G_DEBUG THEN
3288: ozf_utility_pvt.debug_message(l_full_name || ': end');
3289: END IF;
3290: EXCEPTION
3291: WHEN fnd_api.g_exc_error THEN
3292: ROLLBACK TO update_fund;
3293: x_return_status := fnd_api.g_ret_sts_error;
3294: fnd_msg_pub.count_and_get(
3295: p_encoded => fnd_api.g_false
3289: END IF;
3290: EXCEPTION
3291: WHEN fnd_api.g_exc_error THEN
3292: ROLLBACK TO update_fund;
3293: x_return_status := fnd_api.g_ret_sts_error;
3294: fnd_msg_pub.count_and_get(
3295: p_encoded => fnd_api.g_false
3296: ,p_count => x_msg_count
3297: ,p_data => x_msg_data);
3291: WHEN fnd_api.g_exc_error THEN
3292: ROLLBACK TO update_fund;
3293: x_return_status := fnd_api.g_ret_sts_error;
3294: fnd_msg_pub.count_and_get(
3295: p_encoded => fnd_api.g_false
3296: ,p_count => x_msg_count
3297: ,p_data => x_msg_data);
3298: WHEN fnd_api.g_exc_unexpected_error THEN
3299: ROLLBACK TO update_fund;
3294: fnd_msg_pub.count_and_get(
3295: p_encoded => fnd_api.g_false
3296: ,p_count => x_msg_count
3297: ,p_data => x_msg_data);
3298: WHEN fnd_api.g_exc_unexpected_error THEN
3299: ROLLBACK TO update_fund;
3300: x_return_status := fnd_api.g_ret_sts_unexp_error;
3301: fnd_msg_pub.count_and_get(
3302: p_encoded => fnd_api.g_false
3296: ,p_count => x_msg_count
3297: ,p_data => x_msg_data);
3298: WHEN fnd_api.g_exc_unexpected_error THEN
3299: ROLLBACK TO update_fund;
3300: x_return_status := fnd_api.g_ret_sts_unexp_error;
3301: fnd_msg_pub.count_and_get(
3302: p_encoded => fnd_api.g_false
3303: ,p_count => x_msg_count
3304: ,p_data => x_msg_data);
3298: WHEN fnd_api.g_exc_unexpected_error THEN
3299: ROLLBACK TO update_fund;
3300: x_return_status := fnd_api.g_ret_sts_unexp_error;
3301: fnd_msg_pub.count_and_get(
3302: p_encoded => fnd_api.g_false
3303: ,p_count => x_msg_count
3304: ,p_data => x_msg_data);
3305: WHEN OTHERS THEN
3306: ROLLBACK TO update_fund;
3303: ,p_count => x_msg_count
3304: ,p_data => x_msg_data);
3305: WHEN OTHERS THEN
3306: ROLLBACK TO update_fund;
3307: x_return_status := fnd_api.g_ret_sts_unexp_error;
3308:
3309: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
3310: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
3311: END IF;
3310: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
3311: END IF;
3312:
3313: fnd_msg_pub.count_and_get(
3314: p_encoded => fnd_api.g_false
3315: ,p_count => x_msg_count
3316: ,p_data => x_msg_data);
3317: END update_fund;
3318:
3327: -- 01/20/2001 Mumu Pande Added call for fund inter entity validations
3328: --------------------------------------------------------------------
3329: PROCEDURE validate_fund(
3330: p_api_version IN NUMBER
3331: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
3332: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
3333: ,x_return_status OUT NOCOPY VARCHAR2
3334: ,x_msg_count OUT NOCOPY NUMBER
3335: ,x_msg_data OUT NOCOPY VARCHAR2
3328: --------------------------------------------------------------------
3329: PROCEDURE validate_fund(
3330: p_api_version IN NUMBER
3331: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
3332: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
3333: ,x_return_status OUT NOCOPY VARCHAR2
3334: ,x_msg_count OUT NOCOPY NUMBER
3335: ,x_msg_data OUT NOCOPY VARCHAR2
3336: ,p_fund_rec IN fund_rec_type)
3344: IF G_DEBUG THEN
3345: ozf_utility_pvt.debug_message(l_full_name || ': start');
3346: END IF;
3347:
3348: IF fnd_api.to_boolean(p_init_msg_list) THEN
3349: fnd_msg_pub.initialize;
3350: END IF;
3351:
3352: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
3348: IF fnd_api.to_boolean(p_init_msg_list) THEN
3349: fnd_msg_pub.initialize;
3350: END IF;
3351:
3352: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
3353: RAISE fnd_api.g_exc_unexpected_error;
3354: END IF;
3355:
3356: x_return_status := fnd_api.g_ret_sts_success;
3349: fnd_msg_pub.initialize;
3350: END IF;
3351:
3352: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
3353: RAISE fnd_api.g_exc_unexpected_error;
3354: END IF;
3355:
3356: x_return_status := fnd_api.g_ret_sts_success;
3357: ---------------------- validate ------------------------
3352: IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
3353: RAISE fnd_api.g_exc_unexpected_error;
3354: END IF;
3355:
3356: x_return_status := fnd_api.g_ret_sts_success;
3357: ---------------------- validate ------------------------
3358: IF G_DEBUG THEN
3359: ozf_utility_pvt.debug_message(l_full_name || ': check items');
3360: END IF;
3366: ,p_validation_mode => jtf_plsql_api.g_create
3367: ,x_return_status => l_return_status);
3368:
3369: ----dbms_output.put_line ('Called Check_Fund_Items from validate');
3370: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3371: RAISE fnd_api.g_exc_unexpected_error;
3372: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3373: RAISE fnd_api.g_exc_error;
3374: END IF;
3367: ,x_return_status => l_return_status);
3368:
3369: ----dbms_output.put_line ('Called Check_Fund_Items from validate');
3370: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3371: RAISE fnd_api.g_exc_unexpected_error;
3372: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3373: RAISE fnd_api.g_exc_error;
3374: END IF;
3375: END IF;
3368:
3369: ----dbms_output.put_line ('Called Check_Fund_Items from validate');
3370: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3371: RAISE fnd_api.g_exc_unexpected_error;
3372: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3373: RAISE fnd_api.g_exc_error;
3374: END IF;
3375: END IF;
3376:
3369: ----dbms_output.put_line ('Called Check_Fund_Items from validate');
3370: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3371: RAISE fnd_api.g_exc_unexpected_error;
3372: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3373: RAISE fnd_api.g_exc_error;
3374: END IF;
3375: END IF;
3376:
3377: IF G_DEBUG THEN
3384: ,p_complete_rec => p_fund_rec
3385: ,p_mode => jtf_plsql_api.g_create
3386: ,x_return_status => l_return_status);
3387:
3388: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3389: RAISE fnd_api.g_exc_unexpected_error;
3390: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3391: RAISE fnd_api.g_exc_error;
3392: END IF;
3385: ,p_mode => jtf_plsql_api.g_create
3386: ,x_return_status => l_return_status);
3387:
3388: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3389: RAISE fnd_api.g_exc_unexpected_error;
3390: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3391: RAISE fnd_api.g_exc_error;
3392: END IF;
3393: END IF;
3386: ,x_return_status => l_return_status);
3387:
3388: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3389: RAISE fnd_api.g_exc_unexpected_error;
3390: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3391: RAISE fnd_api.g_exc_error;
3392: END IF;
3393: END IF;
3394:
3387:
3388: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3389: RAISE fnd_api.g_exc_unexpected_error;
3390: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3391: RAISE fnd_api.g_exc_error;
3392: END IF;
3393: END IF;
3394:
3395: -- added on 01/20/2001 for all inter entity validations Mumu Pande
3403: ,p_complete_rec => p_fund_rec
3404: ,p_validation_mode => jtf_plsql_api.g_create
3405: ,x_return_status => l_return_status);
3406:
3407: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3408: RAISE fnd_api.g_exc_unexpected_error;
3409: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3410: RAISE fnd_api.g_exc_error;
3411: END IF;
3404: ,p_validation_mode => jtf_plsql_api.g_create
3405: ,x_return_status => l_return_status);
3406:
3407: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3408: RAISE fnd_api.g_exc_unexpected_error;
3409: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3410: RAISE fnd_api.g_exc_error;
3411: END IF;
3412: END IF;
3405: ,x_return_status => l_return_status);
3406:
3407: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3408: RAISE fnd_api.g_exc_unexpected_error;
3409: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3410: RAISE fnd_api.g_exc_error;
3411: END IF;
3412: END IF;
3413:
3406:
3407: IF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
3408: RAISE fnd_api.g_exc_unexpected_error;
3409: ELSIF l_return_status = fnd_api.g_ret_sts_error THEN
3410: RAISE fnd_api.g_exc_error;
3411: END IF;
3412: END IF;
3413:
3414: -------------------- finish --------------------------
3412: END IF;
3413:
3414: -------------------- finish --------------------------
3415: fnd_msg_pub.count_and_get(
3416: p_encoded => fnd_api.g_false
3417: ,p_count => x_msg_count
3418: ,p_data => x_msg_data);
3419: IF G_DEBUG THEN
3420: ozf_utility_pvt.debug_message(l_full_name || ': end');
3419: IF G_DEBUG THEN
3420: ozf_utility_pvt.debug_message(l_full_name || ': end');
3421: END IF;
3422: EXCEPTION
3423: WHEN fnd_api.g_exc_error THEN
3424: x_return_status := fnd_api.g_ret_sts_error;
3425: fnd_msg_pub.count_and_get(
3426: p_encoded => fnd_api.g_false
3427: ,p_count => x_msg_count
3420: ozf_utility_pvt.debug_message(l_full_name || ': end');
3421: END IF;
3422: EXCEPTION
3423: WHEN fnd_api.g_exc_error THEN
3424: x_return_status := fnd_api.g_ret_sts_error;
3425: fnd_msg_pub.count_and_get(
3426: p_encoded => fnd_api.g_false
3427: ,p_count => x_msg_count
3428: ,p_data => x_msg_data);
3422: EXCEPTION
3423: WHEN fnd_api.g_exc_error THEN
3424: x_return_status := fnd_api.g_ret_sts_error;
3425: fnd_msg_pub.count_and_get(
3426: p_encoded => fnd_api.g_false
3427: ,p_count => x_msg_count
3428: ,p_data => x_msg_data);
3429: WHEN fnd_api.g_exc_unexpected_error THEN
3430: x_return_status := fnd_api.g_ret_sts_unexp_error;
3425: fnd_msg_pub.count_and_get(
3426: p_encoded => fnd_api.g_false
3427: ,p_count => x_msg_count
3428: ,p_data => x_msg_data);
3429: WHEN fnd_api.g_exc_unexpected_error THEN
3430: x_return_status := fnd_api.g_ret_sts_unexp_error;
3431: fnd_msg_pub.count_and_get(
3432: p_encoded => fnd_api.g_false
3433: ,p_count => x_msg_count
3426: p_encoded => fnd_api.g_false
3427: ,p_count => x_msg_count
3428: ,p_data => x_msg_data);
3429: WHEN fnd_api.g_exc_unexpected_error THEN
3430: x_return_status := fnd_api.g_ret_sts_unexp_error;
3431: fnd_msg_pub.count_and_get(
3432: p_encoded => fnd_api.g_false
3433: ,p_count => x_msg_count
3434: ,p_data => x_msg_data);
3428: ,p_data => x_msg_data);
3429: WHEN fnd_api.g_exc_unexpected_error THEN
3430: x_return_status := fnd_api.g_ret_sts_unexp_error;
3431: fnd_msg_pub.count_and_get(
3432: p_encoded => fnd_api.g_false
3433: ,p_count => x_msg_count
3434: ,p_data => x_msg_data);
3435: WHEN OTHERS THEN
3436: x_return_status := fnd_api.g_ret_sts_unexp_error;
3432: p_encoded => fnd_api.g_false
3433: ,p_count => x_msg_count
3434: ,p_data => x_msg_data);
3435: WHEN OTHERS THEN
3436: x_return_status := fnd_api.g_ret_sts_unexp_error;
3437:
3438: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
3439: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
3440: END IF;
3439: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
3440: END IF;
3441:
3442: fnd_msg_pub.count_and_get(
3443: p_encoded => fnd_api.g_false
3444: ,p_count => x_msg_count
3445: ,p_data => x_msg_data);
3446: END validate_fund;
3447:
3461: ,p_mode IN VARCHAR2 DEFAULT NULL)
3462: IS
3463:
3464: BEGIN
3465: x_return_status := fnd_api.g_ret_sts_success;
3466:
3467: -- Commented by mpande 02/16/2001 We are going to generate the number if it is null
3468: ------------------------ fund_number --------------------------
3469: /* IF p_fund_rec.fund_number IS NULL THEN -- check for fund number
3475: END IF;
3476: fnd_msg_pub.add;
3477: END IF;
3478:
3479: x_return_status := fnd_api.g_ret_sts_error;
3480: RETURN;
3481: END IF;
3482: */
3483: ------------------------ owner -------------------------------
3490: END IF;
3491: fnd_msg_pub.add;
3492: END IF;
3493:
3494: x_return_status := fnd_api.g_ret_sts_error;
3495: RETURN;
3496: END IF;
3497:
3498: IF p_fund_rec.fund_type IS NULL THEN -- check for fund owner
3500: fnd_message.set_name('OZF', 'OZF_FUND_NO_FUND_TYPE');
3501: fnd_msg_pub.add;
3502: END IF;
3503:
3504: x_return_status := fnd_api.g_ret_sts_error;
3505: RETURN;
3506: END IF;
3507:
3508: -- 09/20/2000 Mumu Pande for user status
3511: fnd_message.set_name('OZF', 'OZF_FUND_NO_USER_STATUS');
3512: fnd_msg_pub.add;
3513: END IF;
3514:
3515: x_return_status := fnd_api.g_ret_sts_error;
3516: RETURN;
3517: END IF;
3518:
3519: -- 01/20/2001 Mumu Pande for category
3522: fnd_message.set_name('OZF', 'OZF_FUND_NO_CATEGORY');
3523: fnd_msg_pub.add;
3524: END IF;
3525:
3526: x_return_status := fnd_api.g_ret_sts_error;
3527: RETURN;
3528: END IF;
3529: -- 01/20/2001 Mumu Pande for custom_setup_id
3530: IF p_fund_rec.custom_setup_id IS NULL THEN -- check for fund category
3532: fnd_message.set_name('OZF', 'OZF_FUND_NO_CUSTOM_SETUP');
3533: fnd_msg_pub.add;
3534: END IF;
3535:
3536: x_return_status := fnd_api.g_ret_sts_error;
3537: RETURN;
3538: END IF;
3539: -- 11/13/2001 mpande added budget amount cannot be euqal to 0 for root budgets
3540: -- 12/23/04 by feliu. For the budgets created from mass transfer, don't validate. fix bug 3580531.
3552: END IF;
3553: fnd_msg_pub.add;
3554: END IF;
3555:
3556: x_return_status := fnd_api.g_ret_sts_error;
3557: RETURN;
3558: END IF;
3559: END IF;
3560:
3564: fnd_message.set_name('OZF', 'OZF_FUND_NO_LEDGER');
3565: fnd_msg_pub.add;
3566: END IF;
3567:
3568: x_return_status := fnd_api.g_ret_sts_error;
3569: RETURN;
3570: END IF;
3571:
3572: /* yzhao: bug 4669461: R12 budget is org aware, but not org stripped. quota is not org aware
3576: fnd_message.set_name('OZF', 'OZF_NO_DEFAULT_ORG_ID');
3577: fnd_msg_pub.add;
3578: END IF;
3579:
3580: x_return_status := fnd_api.g_ret_sts_error;
3581: RETURN;
3582: END IF;
3583: */
3584:
3612: AND fund_id <> p_fund_rec.fund_id;
3613:
3614:
3615: BEGIN
3616: x_return_status := fnd_api.g_ret_sts_success;
3617:
3618: -- For Create_Fund, when fund_id is passed in, we need to
3619: -- check if this fund_id is unique.
3620: IF p_validation_mode = jtf_plsql_api.g_create
3621: AND p_fund_rec.fund_id IS NOT NULL THEN
3622: IF ozf_utility_pvt.check_uniqueness(
3623: 'ozf_funds_all_vl'
3624: ,'fund_id = ' || p_fund_rec.fund_id) =
3625: fnd_api.g_false THEN
3626: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3627: IF p_fund_rec.fund_type = 'QUOTA' THEN
3628: fnd_message.set_name('OZF', 'OZF_TP_DUPLICATE_ID');
3629: ELSE
3631: END IF;
3632: fnd_msg_pub.add;
3633: END IF;
3634:
3635: x_return_status := fnd_api.g_ret_sts_error;
3636: RETURN;
3637: END IF;
3638: END IF;
3639:
3669: END IF;
3670: fnd_msg_pub.add;
3671: END IF;
3672:
3673: x_return_status := fnd_api.g_ret_sts_error;
3674: RETURN;
3675: END IF;
3676: -- Check if fund_name is unique if it is accrual fund/offer name . Need to handle create and
3677: -- update differently.
3692: ''' AND fund_id <> ' ||
3693: p_fund_rec.fund_id);
3694: END IF;
3695:
3696: IF l_valid_flag = fnd_api.g_false THEN
3697: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3698: IF p_fund_rec.fund_type = 'QUOTA' THEN
3699: fnd_message.set_name('OZF', 'OZF_TP_DUPLICATE_NAME');
3700: ELSE
3702: END IF;
3703: fnd_msg_pub.add;
3704: END IF;
3705:
3706: x_return_status := fnd_api.g_ret_sts_error;
3707: RETURN;
3708: END IF;
3709: END IF;*/
3710:
3723: p_fund_rec IN fund_rec_type
3724: ,x_return_status OUT NOCOPY VARCHAR2)
3725: IS
3726: BEGIN
3727: x_return_status := fnd_api.g_ret_sts_success;
3728:
3729: ----------------------- user_status_id ------------------------
3730: IF p_fund_rec.user_status_id <> fnd_api.g_miss_num THEN
3731: IF ozf_utility_pvt.check_fk_exists(
3726: BEGIN
3727: x_return_status := fnd_api.g_ret_sts_success;
3728:
3729: ----------------------- user_status_id ------------------------
3730: IF p_fund_rec.user_status_id <> fnd_api.g_miss_num THEN
3731: IF ozf_utility_pvt.check_fk_exists(
3732: 'ams_user_statuses_vl'
3733: ,'user_status_id'
3734: ,p_fund_rec.user_status_id) =
3731: IF ozf_utility_pvt.check_fk_exists(
3732: 'ams_user_statuses_vl'
3733: ,'user_status_id'
3734: ,p_fund_rec.user_status_id) =
3735: fnd_api.g_false THEN
3736: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3737: fnd_message.set_name('OZF', 'OZF_FUND_BAD_USER_STATUS_ID');
3738: fnd_msg_pub.add;
3739: END IF;
3737: fnd_message.set_name('OZF', 'OZF_FUND_BAD_USER_STATUS_ID');
3738: fnd_msg_pub.add;
3739: END IF;
3740:
3741: x_return_status := fnd_api.g_ret_sts_error;
3742: RETURN;
3743: END IF;
3744: END IF;
3745:
3746: -- added on 01/20/2001 MPANDE
3747: ----------------------- category_id ------------------------
3748: -- mkothari - Bug 4701105 - start ----
3749: IF p_fund_rec.fund_type <> 'QUOTA' THEN
3750: IF p_fund_rec.category_id <> fnd_api.g_miss_num THEN
3751: IF ozf_utility_pvt.check_fk_exists(
3752: 'ams_categories_vl'
3753: ,'category_id'
3754: ,p_fund_rec.category_id) =
3751: IF ozf_utility_pvt.check_fk_exists(
3752: 'ams_categories_vl'
3753: ,'category_id'
3754: ,p_fund_rec.category_id) =
3755: fnd_api.g_false THEN
3756: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3757: fnd_message.set_name('OZF', 'OZF_FUND_BAD_CAT_ID');
3758: fnd_msg_pub.add;
3759: END IF;
3757: fnd_message.set_name('OZF', 'OZF_FUND_BAD_CAT_ID');
3758: fnd_msg_pub.add;
3759: END IF;
3760:
3761: x_return_status := fnd_api.g_ret_sts_error;
3762: RETURN;
3763: END IF;
3764: END IF;
3765: END IF;
3781: p_fund_rec IN fund_rec_type
3782: ,x_return_status OUT NOCOPY VARCHAR2)
3783: IS
3784: BEGIN
3785: x_return_status := fnd_api.g_ret_sts_success;
3786:
3787: ----------------------- fund_type ------------------------
3788: IF p_fund_rec.fund_type <> fnd_api.g_miss_char THEN
3789: IF ozf_utility_pvt.check_lookup_exists(
3784: BEGIN
3785: x_return_status := fnd_api.g_ret_sts_success;
3786:
3787: ----------------------- fund_type ------------------------
3788: IF p_fund_rec.fund_type <> fnd_api.g_miss_char THEN
3789: IF ozf_utility_pvt.check_lookup_exists(
3790: p_lookup_table_name => 'OZF_LOOKUPS'
3791: ,p_lookup_type => 'OZF_FUND_TYPE'
3792: ,p_lookup_code => p_fund_rec.fund_type) =
3789: IF ozf_utility_pvt.check_lookup_exists(
3790: p_lookup_table_name => 'OZF_LOOKUPS'
3791: ,p_lookup_type => 'OZF_FUND_TYPE'
3792: ,p_lookup_code => p_fund_rec.fund_type) =
3793: fnd_api.g_false THEN
3794: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3795: IF p_fund_rec.fund_type = 'QUOTA' THEN
3796: fnd_message.set_name('OZF', 'OZF_TP_BAD_QUOTA_TYPE');
3797: ELSE
3799: END IF;
3800: fnd_msg_pub.add;
3801: END IF;
3802:
3803: x_return_status := fnd_api.g_ret_sts_error;
3804: RETURN;
3805: END IF;
3806: END IF;
3807:
3806: END IF;
3807:
3808:
3809: ----------------------- status_code ------------------------
3810: IF p_fund_rec.status_code <> fnd_api.g_miss_char THEN
3811: IF ozf_utility_pvt.check_lookup_exists(
3812: p_lookup_table_name => 'OZF_LOOKUPS'
3813: ,p_lookup_type => 'OZF_FUND_STATUS'
3814: ,p_lookup_code => p_fund_rec.status_code) =
3811: IF ozf_utility_pvt.check_lookup_exists(
3812: p_lookup_table_name => 'OZF_LOOKUPS'
3813: ,p_lookup_type => 'OZF_FUND_STATUS'
3814: ,p_lookup_code => p_fund_rec.status_code) =
3815: fnd_api.g_false THEN
3816: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3817: IF p_fund_rec.fund_type = 'QUOTA' THEN
3818: fnd_message.set_name('OZF', 'OZF_TP_BAD_STATUS_CODE');
3819: ELSE
3821: END IF;
3822: fnd_msg_pub.add;
3823: END IF;
3824:
3825: x_return_status := fnd_api.g_ret_sts_error;
3826: RETURN;
3827: END IF;
3828: END IF;
3829: -- check other lookup codes
3843: p_fund_rec IN fund_rec_type
3844: ,x_return_status OUT NOCOPY VARCHAR2)
3845: IS
3846: BEGIN
3847: x_return_status := fnd_api.g_ret_sts_success;
3848:
3849: ----------------------- liability_flag ------------------------
3850: IF p_fund_rec.liability_flag <> fnd_api.g_miss_char
3851: AND p_fund_rec.liability_flag IS NOT NULL THEN
3846: BEGIN
3847: x_return_status := fnd_api.g_ret_sts_success;
3848:
3849: ----------------------- liability_flag ------------------------
3850: IF p_fund_rec.liability_flag <> fnd_api.g_miss_char
3851: AND p_fund_rec.liability_flag IS NOT NULL THEN
3852: IF ozf_utility_pvt.is_y_or_n(p_fund_rec.liability_flag) = fnd_api.g_false THEN
3853: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3854: fnd_message.set_name('OZF', 'OZF_FUND_BAD_LIABILITY_FLAG');
3848:
3849: ----------------------- liability_flag ------------------------
3850: IF p_fund_rec.liability_flag <> fnd_api.g_miss_char
3851: AND p_fund_rec.liability_flag IS NOT NULL THEN
3852: IF ozf_utility_pvt.is_y_or_n(p_fund_rec.liability_flag) = fnd_api.g_false THEN
3853: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3854: fnd_message.set_name('OZF', 'OZF_FUND_BAD_LIABILITY_FLAG');
3855: fnd_msg_pub.add;
3856: END IF;
3854: fnd_message.set_name('OZF', 'OZF_FUND_BAD_LIABILITY_FLAG');
3855: fnd_msg_pub.add;
3856: END IF;
3857:
3858: x_return_status := fnd_api.g_ret_sts_error;
3859: RETURN;
3860: END IF;
3861: END IF;
3862:
3860: END IF;
3861: END IF;
3862:
3863: ----------------------- budget_flag ------------------------
3864: IF p_fund_rec.budget_flag <> fnd_api.g_miss_char
3865: AND p_fund_rec.budget_flag IS NOT NULL THEN
3866: IF ozf_utility_pvt.is_y_or_n(p_fund_rec.budget_flag) = fnd_api.g_false THEN
3867: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3868: IF p_fund_rec.fund_type = 'QUOTA' THEN
3862:
3863: ----------------------- budget_flag ------------------------
3864: IF p_fund_rec.budget_flag <> fnd_api.g_miss_char
3865: AND p_fund_rec.budget_flag IS NOT NULL THEN
3866: IF ozf_utility_pvt.is_y_or_n(p_fund_rec.budget_flag) = fnd_api.g_false THEN
3867: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3868: IF p_fund_rec.fund_type = 'QUOTA' THEN
3869: fnd_message.set_name('OZF', 'OZF_TP_BAD_QUOTA_FLAG');
3870: ELSE
3872: END IF;
3873: fnd_msg_pub.add;
3874: END IF;
3875:
3876: x_return_status := fnd_api.g_ret_sts_error;
3877: RETURN;
3878: END IF;
3879: END IF;
3880:
3878: END IF;
3879: END IF;
3880:
3881: ----------------------- earned_flag ------------------------
3882: IF p_fund_rec.earned_flag <> fnd_api.g_miss_char
3883: AND p_fund_rec.earned_flag IS NOT NULL THEN
3884: IF ozf_utility_pvt.is_y_or_n(p_fund_rec.earned_flag) = fnd_api.g_false THEN
3885: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3886: fnd_message.set_name('OZF', 'OZF_FUND_BAD_EARNED_FLAG');
3880:
3881: ----------------------- earned_flag ------------------------
3882: IF p_fund_rec.earned_flag <> fnd_api.g_miss_char
3883: AND p_fund_rec.earned_flag IS NOT NULL THEN
3884: IF ozf_utility_pvt.is_y_or_n(p_fund_rec.earned_flag) = fnd_api.g_false THEN
3885: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
3886: fnd_message.set_name('OZF', 'OZF_FUND_BAD_EARNED_FLAG');
3887: fnd_msg_pub.add;
3888: END IF;
3886: fnd_message.set_name('OZF', 'OZF_FUND_BAD_EARNED_FLAG');
3887: fnd_msg_pub.add;
3888: END IF;
3889:
3890: x_return_status := fnd_api.g_ret_sts_error;
3891: RETURN;
3892: END IF;
3893: END IF;
3894: -- check other flags
3913: ----dbms_output.put_line('Calling Req_Items');
3914:
3915: check_fund_req_items(p_fund_rec => p_fund_rec, x_return_status => x_return_status, p_mode => p_mode);
3916:
3917: IF x_return_status <> fnd_api.g_ret_sts_success THEN
3918: RETURN;
3919: END IF;
3920:
3921: ----dbms_output.put_line('Calling Uk_Items');
3923: p_fund_rec => p_fund_rec
3924: ,p_validation_mode => p_validation_mode
3925: ,x_return_status => x_return_status);
3926:
3927: IF x_return_status <> fnd_api.g_ret_sts_success THEN
3928: RETURN;
3929: END IF;
3930:
3931: ----dbms_output.put_line('Calling Fk_Items');
3930:
3931: ----dbms_output.put_line('Calling Fk_Items');
3932: check_fund_fk_items(p_fund_rec => p_fund_rec, x_return_status => x_return_status);
3933:
3934: IF x_return_status <> fnd_api.g_ret_sts_success THEN
3935: RETURN;
3936: END IF;
3937:
3938: ----dbms_output.put_line('Calling Lookup_Items');
3938: ----dbms_output.put_line('Calling Lookup_Items');
3939:
3940: check_fund_lookup_items(p_fund_rec => p_fund_rec, x_return_status => x_return_status);
3941:
3942: IF x_return_status <> fnd_api.g_ret_sts_success THEN
3943: RETURN;
3944: END IF;
3945:
3946: ----dbms_output.put_line('Calling Flag_Items');
3945:
3946: ----dbms_output.put_line('Calling Flag_Items');
3947: check_fund_flag_items(p_fund_rec => p_fund_rec, x_return_status => x_return_status);
3948:
3949: IF x_return_status <> fnd_api.g_ret_sts_success THEN
3950: RETURN;
3951: END IF;
3952: END check_fund_items;
3953:
3996: l_offer_ledger NUMBER;
3997: l_offer_ledgerName VARCHAR2(50);
3998:
3999: BEGIN
4000: x_return_status := fnd_api.g_ret_sts_success;
4001: -- Check all modes validations
4002:
4003: -- Ensure that start date is greater than the end date --
4004: l_start_date := p_complete_rec.start_date_active;
4012: fnd_message.set_name('OZF', 'OZF_FUND_STARTDATE_MISMATCH');
4013: fnd_msg_pub.add;
4014: END IF;
4015:
4016: x_return_status := fnd_api.g_ret_sts_error;
4017: END IF;
4018: END IF ;
4019: END IF;
4020:
4018: END IF ;
4019: END IF;
4020:
4021: /* yzhao: 01/14/2003 fix BUG 2750445 - UNABLE TO CLOSE BUDGET, BUDGET 'END DATE' CANNOT BE BEFORE TODAY'S DATE
4022: IF p_fund_rec.end_date_active <> FND_API.g_miss_date
4023: AND l_end_date IS NOT NULL OR p_complete_rec.status_code = 'DRAFT'
4024: AND p_fund_rec.status_code = FND_API.g_miss_char THEN
4025: */
4026: IF p_complete_rec.status_code NOT IN ('CLOSED','CANCELLED','ARCHIVED') AND
4020:
4021: /* yzhao: 01/14/2003 fix BUG 2750445 - UNABLE TO CLOSE BUDGET, BUDGET 'END DATE' CANNOT BE BEFORE TODAY'S DATE
4022: IF p_fund_rec.end_date_active <> FND_API.g_miss_date
4023: AND l_end_date IS NOT NULL OR p_complete_rec.status_code = 'DRAFT'
4024: AND p_fund_rec.status_code = FND_API.g_miss_char THEN
4025: */
4026: IF p_complete_rec.status_code NOT IN ('CLOSED','CANCELLED','ARCHIVED') AND
4027: l_end_date IS NOT NULL THEN
4028: -- validate only if status changes or date changes
4028: -- validate only if status changes or date changes
4029: OPEN c_old_status(p_fund_rec.fund_id);
4030: FETCH c_old_status INTO l_fund_old_status,l_fund_old_amount;
4031: CLOSE c_old_status;
4032: IF ((p_fund_rec.status_code <> FND_API.G_MISS_CHAR AND
4033: p_fund_rec.status_code <> l_fund_old_status) OR
4034: p_fund_rec.end_date_active <> FND_API.g_miss_date) THEN
4035: /* yzhao: 01/14/2003 fix bug 2750445 ends */
4036:
4030: FETCH c_old_status INTO l_fund_old_status,l_fund_old_amount;
4031: CLOSE c_old_status;
4032: IF ((p_fund_rec.status_code <> FND_API.G_MISS_CHAR AND
4033: p_fund_rec.status_code <> l_fund_old_status) OR
4034: p_fund_rec.end_date_active <> FND_API.g_miss_date) THEN
4035: /* yzhao: 01/14/2003 fix bug 2750445 ends */
4036:
4037: -- yzhao 09/03/2002 fix bug 2540628 TST 1158.7 FUNC MASTER : CANNOT END DATE A BUDGET ON CURRENT DATE
4038: -- end date passed in is midnight of the selected day. So trunc sysdate to get midnight time
4048: fnd_message.set_name('OZF', 'OZF_FUND_ENDDATE_MISMATCH');
4049: END IF;
4050: fnd_msg_pub.add;
4051: END IF;
4052: x_return_status := fnd_api.g_ret_sts_error;
4053: END IF;
4054: END IF;
4055: END IF;
4056:
4062:
4063: IF l_fund_old_status = 'ACTIVE' AND p_complete_rec.original_budget <> l_fund_old_amount THEN
4064: fnd_message.set_name('OZF', 'OZF_ACTIVE_FUND_AMT');
4065: fnd_msg_pub.add;
4066: x_return_status := fnd_api.g_ret_sts_error;
4067: END IF;
4068: END IF;
4069: */
4070: --original amount should be within 15 digits
4074: ELSE
4075: fnd_message.set_name('OZF', 'OZF_FUND_MAX_AMT_EXCEEDED');
4076: END IF;
4077: fnd_msg_pub.add;
4078: x_return_status := fnd_api.g_ret_sts_error;
4079: END IF;
4080:
4081: IF l_start_date > l_end_date THEN
4082: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
4083: fnd_message.set_name('OZF', 'OZF_FUND_DATE_MISMATCH');
4084: fnd_msg_pub.add;
4085: END IF;
4086:
4087: x_return_status := fnd_api.g_ret_sts_error;
4088: END IF;
4089:
4090: IF p_mode = jtf_plsql_api.g_update THEN
4091: IF p_fund_rec.parent_fund_id <> fnd_api.g_miss_num
4087: x_return_status := fnd_api.g_ret_sts_error;
4088: END IF;
4089:
4090: IF p_mode = jtf_plsql_api.g_update THEN
4091: IF p_fund_rec.parent_fund_id <> fnd_api.g_miss_num
4092: AND p_fund_rec.parent_fund_id IS NOT NULL THEN
4093: IF p_complete_rec.fund_id = p_complete_rec.parent_fund_id THEN
4094: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
4095: IF p_fund_rec.fund_type = 'QUOTA' THEN
4097: ELSE
4098: fnd_message.set_name('OZF', 'OZF_FUND_WRONG_PARENT');
4099: END IF;
4100: fnd_msg_pub.add;
4101: x_return_status := fnd_api.g_ret_sts_error;
4102: END IF;
4103: END IF;
4104: END IF;
4105: END IF;
4120: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
4121: fnd_message.set_name('OZF', 'OZF_EXCESS_HOLDBACK_AMT');
4122: fnd_msg_pub.add;
4123: END IF;
4124: x_return_status := fnd_api.g_ret_sts_error;
4125: END IF;
4126: END IF;
4127:
4128: -- hold back amount should not be negative fix for bug#3352216
4128: -- hold back amount should not be negative fix for bug#3352216
4129: IF p_complete_rec.holdback_amt < 0 THEN
4130: fnd_message.set_name('OZF', 'OZF_FUND_NO_HOLDBACK_BUDGET');
4131: fnd_msg_pub.add;
4132: x_return_status := fnd_api.g_ret_sts_error;
4133: END IF;
4134:
4135: ELSE
4136: IF p_complete_rec.holdback_amt > (NVL(p_complete_rec.original_budget, 0)) THEN
4138: fnd_message.set_name('OZF', 'OZF_EXCESS_HOLDBACK_AMT');
4139: fnd_msg_pub.add;
4140: END IF;
4141:
4142: x_return_status := fnd_api.g_ret_sts_error;
4143: --RAISE FND_API.g_exc_error;
4144: END IF;
4145:
4146: -- holdback amount should not be negative. Fix for bug#3352216
4139: fnd_msg_pub.add;
4140: END IF;
4141:
4142: x_return_status := fnd_api.g_ret_sts_error;
4143: --RAISE FND_API.g_exc_error;
4144: END IF;
4145:
4146: -- holdback amount should not be negative. Fix for bug#3352216
4147: IF p_complete_rec.holdback_amt < 0 THEN
4146: -- holdback amount should not be negative. Fix for bug#3352216
4147: IF p_complete_rec.holdback_amt < 0 THEN
4148: fnd_message.set_name('OZF', 'OZF_FUND_NO_HOLDBACK_BUDGET');
4149: fnd_msg_pub.add;
4150: x_return_status := fnd_api.g_ret_sts_error;
4151: END IF;
4152:
4153: END IF;
4154:
4165: fnd_message.set_name('OZF', 'OZF_ACCRUAL_NO_ORG_BUDGET');
4166: fnd_msg_pub.add;
4167: END IF;
4168:
4169: x_return_status := fnd_api.g_ret_sts_error;
4170: END IF;
4171: /* 11.5.9
4172: IF p_complete_rec.accrual_basis IS NULL THEN
4173: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
4174: fnd_message.set_name('OZF', 'OZF_ACCRUAL_NO_BASIS');
4175: fnd_msg_pub.add;
4176: END IF;
4177:
4178: x_return_status := fnd_api.g_ret_sts_error;
4179: END IF;*/
4180: /*
4181: IF p_complete_rec.accrual_operand IS NULL THEN
4182: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
4183: fnd_message.set_name('OZF', 'OZF_ACCRUAL_NO_OPERAND');
4184: fnd_msg_pub.add;
4185: END IF;
4186:
4187: x_return_status := fnd_api.g_ret_sts_error;
4188: END IF;
4189: */
4190: /* -- we donot need to give the UOM
4191: IF p_complete_rec.accrual_uom IS NULL THEN
4193: fnd_message.set_name('OZF', 'OZF_ACCRUAL_NO_UOM');
4194: fnd_msg_pub.add;
4195: END IF;
4196:
4197: x_return_status := fnd_api.g_ret_sts_error;
4198: END IF;
4199: */
4200: /*
4201: -- sangara - R12 enhancement - not mandatory, as they are moved to Market Options cuecard
4204: fnd_message.set_name('OZF', 'OZF_ACCRUAL_NO_PHASE');
4205: fnd_msg_pub.add;
4206: END IF;
4207:
4208: x_return_status := fnd_api.g_ret_sts_error;
4209: END IF;
4210: */
4211: /*
4212: IF NVL(p_complete_rec.accrual_rate, 0) <= 0 THEN
4214: fnd_message.set_name('OZF', 'OZF_ACCRUAL_NO_RATE');
4215: fnd_msg_pub.add;
4216: END IF;
4217:
4218: x_return_status := fnd_api.g_ret_sts_error;
4219: END IF;
4220: -- default the quantity to 1
4221: /*
4222: IF NVL(p_complete_rec.accrual_quantity, 0) <= 0 THEN
4224: fnd_message.set_name('OZF', 'OZF_ACCRUAL_NO_QUANTITY');
4225: fnd_msg_pub.add;
4226: END IF;
4227:
4228: x_return_status := fnd_api.g_ret_sts_error;
4229: END IF;
4230:
4231: --- for a active accrual fund product eligibiilty should exist 01/20/2001 mpande
4232: -- not when a active fund is created automatically
4235: Ozf_fundrules_pvt.check_product_elig_exists(
4236: p_complete_rec.fund_id
4237: ,l_return_status);
4238:
4239: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4240: x_return_status := l_return_status;
4241: END IF;
4242: END IF; */
4243: END IF;
4266: END IF;
4267: fnd_msg_pub.add;
4268: END IF;
4269:
4270: x_return_status := fnd_api.g_ret_sts_error;
4271: END IF;
4272: ELSIF l_resource_id = -1 THEN
4273: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
4274: fnd_message.set_name('OZF', 'OZF_NO_RESOURCE_ID');
4274: fnd_message.set_name('OZF', 'OZF_NO_RESOURCE_ID');
4275: fnd_msg_pub.add;
4276: END IF;
4277:
4278: x_return_status := fnd_api.g_ret_sts_error;
4279: END IF;
4280:
4281: --kdass 10-OCT-05 - R12 bug 4613689 validate accrual budget's ledger and offer's org
4282: IF p_fund_rec.fund_type = 'FULLY_ACCRUED' AND p_complete_rec.ledger_id IS NOT NULL THEN
4294: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
4295: fnd_message.set_name('OZF', 'OZF_BUDGET_OFFR_LEDG_MISMATCH');
4296: fnd_msg_pub.add;
4297: END IF;
4298: x_return_status := fnd_api.g_ret_sts_error;
4299: END IF;
4300: END IF;
4301: END IF;
4302:
4319: ,x_return_status OUT NOCOPY VARCHAR2)
4320: IS
4321: l_return_status VARCHAR2(1);
4322: BEGIN
4323: x_return_status := fnd_api.g_ret_sts_success;
4324:
4325: ------------------- check calendar ----------------------
4326: IF p_fund_rec.fund_calendar <> fnd_api.g_miss_char
4327: OR p_fund_rec.start_period_name <> fnd_api.g_miss_char
4322: BEGIN
4323: x_return_status := fnd_api.g_ret_sts_success;
4324:
4325: ------------------- check calendar ----------------------
4326: IF p_fund_rec.fund_calendar <> fnd_api.g_miss_char
4327: OR p_fund_rec.start_period_name <> fnd_api.g_miss_char
4328: OR p_fund_rec.end_period_name <> fnd_api.g_miss_char
4329: OR p_fund_rec.start_date_active <> fnd_api.g_miss_date
4330: OR p_fund_rec.end_date_active <> fnd_api.g_miss_date THEN
4323: x_return_status := fnd_api.g_ret_sts_success;
4324:
4325: ------------------- check calendar ----------------------
4326: IF p_fund_rec.fund_calendar <> fnd_api.g_miss_char
4327: OR p_fund_rec.start_period_name <> fnd_api.g_miss_char
4328: OR p_fund_rec.end_period_name <> fnd_api.g_miss_char
4329: OR p_fund_rec.start_date_active <> fnd_api.g_miss_date
4330: OR p_fund_rec.end_date_active <> fnd_api.g_miss_date THEN
4331: Ozf_fundrules_pvt.check_fund_calendar(
4324:
4325: ------------------- check calendar ----------------------
4326: IF p_fund_rec.fund_calendar <> fnd_api.g_miss_char
4327: OR p_fund_rec.start_period_name <> fnd_api.g_miss_char
4328: OR p_fund_rec.end_period_name <> fnd_api.g_miss_char
4329: OR p_fund_rec.start_date_active <> fnd_api.g_miss_date
4330: OR p_fund_rec.end_date_active <> fnd_api.g_miss_date THEN
4331: Ozf_fundrules_pvt.check_fund_calendar(
4332: p_complete_rec.fund_calendar
4325: ------------------- check calendar ----------------------
4326: IF p_fund_rec.fund_calendar <> fnd_api.g_miss_char
4327: OR p_fund_rec.start_period_name <> fnd_api.g_miss_char
4328: OR p_fund_rec.end_period_name <> fnd_api.g_miss_char
4329: OR p_fund_rec.start_date_active <> fnd_api.g_miss_date
4330: OR p_fund_rec.end_date_active <> fnd_api.g_miss_date THEN
4331: Ozf_fundrules_pvt.check_fund_calendar(
4332: p_complete_rec.fund_calendar
4333: ,p_complete_rec.start_period_name
4326: IF p_fund_rec.fund_calendar <> fnd_api.g_miss_char
4327: OR p_fund_rec.start_period_name <> fnd_api.g_miss_char
4328: OR p_fund_rec.end_period_name <> fnd_api.g_miss_char
4329: OR p_fund_rec.start_date_active <> fnd_api.g_miss_date
4330: OR p_fund_rec.end_date_active <> fnd_api.g_miss_date THEN
4331: Ozf_fundrules_pvt.check_fund_calendar(
4332: p_complete_rec.fund_calendar
4333: ,p_complete_rec.start_period_name
4334: ,p_complete_rec.end_period_name
4336: ,p_complete_rec.end_date_active
4337: ,p_complete_rec.fund_type
4338: ,l_return_status);
4339:
4340: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4341: x_return_status := l_return_status;
4342: END IF;
4343: END IF;
4344:
4342: END IF;
4343: END IF;
4344:
4345: ------------------- check dates ------------------------------
4346: IF p_fund_rec.start_date_active <> fnd_api.g_miss_date
4347: OR p_fund_rec.end_date_active <> fnd_api.g_miss_date THEN
4348: Ozf_fundrules_pvt.check_fund_dates_vs_parent(
4349: p_complete_rec.parent_fund_id
4350: ,p_complete_rec.start_date_active
4343: END IF;
4344:
4345: ------------------- check dates ------------------------------
4346: IF p_fund_rec.start_date_active <> fnd_api.g_miss_date
4347: OR p_fund_rec.end_date_active <> fnd_api.g_miss_date THEN
4348: Ozf_fundrules_pvt.check_fund_dates_vs_parent(
4349: p_complete_rec.parent_fund_id
4350: ,p_complete_rec.start_date_active
4351: ,p_complete_rec.end_date_active
4350: ,p_complete_rec.start_date_active
4351: ,p_complete_rec.end_date_active
4352: ,l_return_status);
4353:
4354: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4355: x_return_status := l_return_status;
4356: END IF;
4357:
4358: IF p_validation_mode = jtf_plsql_api.g_update THEN
4361: ,p_complete_rec.start_date_active
4362: ,p_complete_rec.end_date_active
4363: ,l_return_status);
4364:
4365: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4366: x_return_status := l_return_status;
4367: END IF;
4368: END IF;
4369: END IF;
4370:
4371: ------------------- check budget amounts ------------------------------
4372: -- only in planning stage --07/23/2001 mpande
4373: IF p_complete_rec.status_code NOT IN ('ACTIVE','ON_HOLD','CANCELLED','ARCHIVED','CLOSED') THEN
4374: IF p_fund_rec.original_budget <> fnd_api.g_miss_num
4375: OR p_fund_rec.transfered_in_amt <> fnd_api.g_miss_num
4376: OR p_fund_rec.transfered_out_amt <> fnd_api.g_miss_num THEN
4377: -- updated 09/04/2001 mpande for Multi Currency Child
4378: Ozf_fundrules_pvt.check_fund_amount_vs_parent(
4371: ------------------- check budget amounts ------------------------------
4372: -- only in planning stage --07/23/2001 mpande
4373: IF p_complete_rec.status_code NOT IN ('ACTIVE','ON_HOLD','CANCELLED','ARCHIVED','CLOSED') THEN
4374: IF p_fund_rec.original_budget <> fnd_api.g_miss_num
4375: OR p_fund_rec.transfered_in_amt <> fnd_api.g_miss_num
4376: OR p_fund_rec.transfered_out_amt <> fnd_api.g_miss_num THEN
4377: -- updated 09/04/2001 mpande for Multi Currency Child
4378: Ozf_fundrules_pvt.check_fund_amount_vs_parent(
4379: p_complete_rec.parent_fund_id
4372: -- only in planning stage --07/23/2001 mpande
4373: IF p_complete_rec.status_code NOT IN ('ACTIVE','ON_HOLD','CANCELLED','ARCHIVED','CLOSED') THEN
4374: IF p_fund_rec.original_budget <> fnd_api.g_miss_num
4375: OR p_fund_rec.transfered_in_amt <> fnd_api.g_miss_num
4376: OR p_fund_rec.transfered_out_amt <> fnd_api.g_miss_num THEN
4377: -- updated 09/04/2001 mpande for Multi Currency Child
4378: Ozf_fundrules_pvt.check_fund_amount_vs_parent(
4379: p_complete_rec.parent_fund_id
4380: ,p_complete_rec.currency_code_tc
4380: ,p_complete_rec.currency_code_tc
4381: ,p_complete_rec.original_budget
4382: ,l_return_status);
4383:
4384: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4385: x_return_status := l_return_status;
4386: END IF;
4387:
4388: IF p_validation_mode = jtf_plsql_api.g_update THEN
4394: ,p_complete_rec.transfered_out_amt
4395: ,p_complete_rec.currency_code_tc
4396: ,l_return_status);
4397:
4398: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4399: x_return_status := l_return_status;
4400: END IF;
4401: END IF;
4402: END IF;
4402: END IF;
4403: END IF;
4404:
4405: ------------------- check fund type ------------------------------
4406: IF p_fund_rec.fund_type <> fnd_api.g_miss_char
4407: OR p_fund_rec.parent_fund_id <> fnd_api.g_miss_num THEN
4408: --- the chikd parent validation is done always
4409: Ozf_fundrules_pvt.check_fund_type_vs_parent(
4410: p_complete_rec.parent_fund_id
4403: END IF;
4404:
4405: ------------------- check fund type ------------------------------
4406: IF p_fund_rec.fund_type <> fnd_api.g_miss_char
4407: OR p_fund_rec.parent_fund_id <> fnd_api.g_miss_num THEN
4408: --- the chikd parent validation is done always
4409: Ozf_fundrules_pvt.check_fund_type_vs_parent(
4410: p_complete_rec.parent_fund_id
4411: ,p_complete_rec.fund_type
4410: p_complete_rec.parent_fund_id
4411: ,p_complete_rec.fund_type
4412: ,l_return_status);
4413:
4414: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4415: x_return_status := l_return_status;
4416: END IF;
4417:
4418: -- check for change of fund type only when the status is going active
4423: p_complete_rec.fund_id
4424: ,p_complete_rec.fund_type
4425: ,l_return_status);
4426:
4427: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4428: x_return_status := l_return_status;
4429: END IF;
4430: END IF;
4431: END IF;
4432:
4433: ------------------- check fund curr ------------------------------
4434: --09/04/2001 mpande commented
4435: /*
4436: IF p_fund_rec.currency_code_tc <> fnd_api.g_miss_char
4437: OR p_fund_rec.parent_fund_id <> fnd_api.g_miss_num THEN
4438: --- the child parent validation is done always
4439: Ozf_fundrules_pvt.check_fund_curr_vs_parent(
4440: p_complete_rec.parent_fund_id
4433: ------------------- check fund curr ------------------------------
4434: --09/04/2001 mpande commented
4435: /*
4436: IF p_fund_rec.currency_code_tc <> fnd_api.g_miss_char
4437: OR p_fund_rec.parent_fund_id <> fnd_api.g_miss_num THEN
4438: --- the child parent validation is done always
4439: Ozf_fundrules_pvt.check_fund_curr_vs_parent(
4440: p_complete_rec.parent_fund_id
4441: ,p_complete_rec.currency_code_tc
4440: p_complete_rec.parent_fund_id
4441: ,p_complete_rec.currency_code_tc
4442: ,l_return_status);
4443:
4444: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4445: x_return_status := l_return_status;
4446: END IF;
4447:
4448: -- check for change of fund currency only when the status is going active
4453: p_complete_rec.fund_id
4454: ,p_complete_rec.currency_code_tc
4455: ,l_return_status);
4456:
4457: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4458: x_return_status := l_return_status;
4459: END IF;
4460: END IF;
4461: END IF;
4461: END IF;
4462: */
4463:
4464: ------------------- check fund_status ------------------------------
4465: IF p_fund_rec.status_code <> fnd_api.g_miss_char
4466: OR p_fund_rec.parent_fund_id <> fnd_api.g_miss_num THEN
4467: Ozf_fundrules_pvt.check_fund_status_vs_parent(
4468: p_complete_rec.parent_fund_id
4469: ,p_complete_rec.status_code
4462: */
4463:
4464: ------------------- check fund_status ------------------------------
4465: IF p_fund_rec.status_code <> fnd_api.g_miss_char
4466: OR p_fund_rec.parent_fund_id <> fnd_api.g_miss_num THEN
4467: Ozf_fundrules_pvt.check_fund_status_vs_parent(
4468: p_complete_rec.parent_fund_id
4469: ,p_complete_rec.status_code
4470: ,l_return_status);
4468: p_complete_rec.parent_fund_id
4469: ,p_complete_rec.status_code
4470: ,l_return_status);
4471:
4472: IF l_return_status <> fnd_api.g_ret_sts_success THEN
4473: x_return_status := l_return_status;
4474: END IF;
4475: END IF;
4476: END check_fund_inter_entity;
4524: fnd_message.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
4525: fnd_msg_pub.add;
4526: END IF;
4527:
4528: RAISE fnd_api.g_exc_error;
4529: END IF;
4530:
4531: CLOSE c_fund;
4532:
4529: END IF;
4530:
4531: CLOSE c_fund;
4532:
4533: IF p_fund_rec.fund_number = fnd_api.g_miss_char THEN
4534: x_complete_rec.fund_number := NULL;
4535: END IF;
4536: IF p_fund_rec.fund_number IS NULL THEN
4537: x_complete_rec.fund_number := l_fund_rec.fund_number;
4536: IF p_fund_rec.fund_number IS NULL THEN
4537: x_complete_rec.fund_number := l_fund_rec.fund_number;
4538: END IF;
4539:
4540: IF p_fund_rec.parent_fund_id = fnd_api.g_miss_num THEN
4541: x_complete_rec.parent_fund_id := NULL;
4542: END IF;
4543: IF p_fund_rec.parent_fund_id IS NULL THEN
4544: x_complete_rec.parent_fund_id := l_fund_rec.parent_fund_id;
4543: IF p_fund_rec.parent_fund_id IS NULL THEN
4544: x_complete_rec.parent_fund_id := l_fund_rec.parent_fund_id;
4545: END IF;
4546:
4547: IF p_fund_rec.category_id = fnd_api.g_miss_num THEN
4548: x_complete_rec.category_id := NULL;
4549: END IF;
4550: IF p_fund_rec.category_id IS NULL THEN
4551: x_complete_rec.category_id := l_fund_rec.category_id;
4550: IF p_fund_rec.category_id IS NULL THEN
4551: x_complete_rec.category_id := l_fund_rec.category_id;
4552: END IF;
4553:
4554: IF p_fund_rec.fund_type = fnd_api.g_miss_char THEN
4555: x_complete_rec.fund_type := NULL;
4556: END IF;
4557: IF p_fund_rec.fund_type IS NULL THEN
4558: x_complete_rec.fund_type := l_fund_rec.fund_type;
4557: IF p_fund_rec.fund_type IS NULL THEN
4558: x_complete_rec.fund_type := l_fund_rec.fund_type;
4559: END IF;
4560:
4561: IF p_fund_rec.fund_usage = fnd_api.g_miss_char THEN
4562: x_complete_rec.fund_usage := NULL;
4563: END IF;
4564: IF p_fund_rec.fund_usage IS NULL THEN
4565: x_complete_rec.fund_usage := l_fund_rec.fund_usage;
4564: IF p_fund_rec.fund_usage IS NULL THEN
4565: x_complete_rec.fund_usage := l_fund_rec.fund_usage;
4566: END IF;
4567:
4568: IF p_fund_rec.status_code = fnd_api.g_miss_char THEN
4569: x_complete_rec.status_code := NULL;
4570: END IF;
4571: IF p_fund_rec.status_code IS NULL THEN
4572: x_complete_rec.status_code := l_fund_rec.status_code;
4571: IF p_fund_rec.status_code IS NULL THEN
4572: x_complete_rec.status_code := l_fund_rec.status_code;
4573: END IF;
4574:
4575: IF p_fund_rec.user_status_id = fnd_api.g_miss_num THEN
4576: x_complete_rec.user_status_id := NULL;
4577: END IF;
4578: IF p_fund_rec.user_status_id IS NULL THEN
4579: x_complete_rec.user_status_id := l_fund_rec.user_status_id;
4578: IF p_fund_rec.user_status_id IS NULL THEN
4579: x_complete_rec.user_status_id := l_fund_rec.user_status_id;
4580: END IF;
4581:
4582: IF p_fund_rec.status_date = fnd_api.g_miss_date THEN
4583: x_complete_rec.status_date := NULL;
4584: END IF;
4585: IF p_fund_rec.status_date IS NULL THEN
4586: x_complete_rec.status_date := l_fund_rec.status_date;
4585: IF p_fund_rec.status_date IS NULL THEN
4586: x_complete_rec.status_date := l_fund_rec.status_date;
4587: END IF;
4588:
4589: IF p_fund_rec.accrued_liable_account = fnd_api.g_miss_num THEN
4590: x_complete_rec.accrued_liable_account := NULL;
4591: END IF;
4592: IF p_fund_rec.accrued_liable_account IS NULL THEN
4593: x_complete_rec.accrued_liable_account := l_fund_rec.accrued_liable_account;
4592: IF p_fund_rec.accrued_liable_account IS NULL THEN
4593: x_complete_rec.accrued_liable_account := l_fund_rec.accrued_liable_account;
4594: END IF;
4595:
4596: IF p_fund_rec.ded_adjustment_account = fnd_api.g_miss_num THEN
4597: x_complete_rec.ded_adjustment_account := NULL;
4598: END IF;
4599: IF p_fund_rec.ded_adjustment_account IS NULL THEN
4600: x_complete_rec.ded_adjustment_account := l_fund_rec.ded_adjustment_account;
4599: IF p_fund_rec.ded_adjustment_account IS NULL THEN
4600: x_complete_rec.ded_adjustment_account := l_fund_rec.ded_adjustment_account;
4601: END IF;
4602:
4603: IF p_fund_rec.liability_flag = fnd_api.g_miss_char THEN
4604: x_complete_rec.liability_flag := NULL;
4605: END IF;
4606: IF p_fund_rec.liability_flag IS NULL THEN
4607: x_complete_rec.liability_flag := l_fund_rec.liability_flag;
4606: IF p_fund_rec.liability_flag IS NULL THEN
4607: x_complete_rec.liability_flag := l_fund_rec.liability_flag;
4608: END IF;
4609:
4610: IF p_fund_rec.set_of_books_id = fnd_api.g_miss_num THEN
4611: x_complete_rec.set_of_books_id := NULL;
4612: END IF;
4613: IF p_fund_rec.set_of_books_id IS NULL THEN
4614: x_complete_rec.set_of_books_id := l_fund_rec.set_of_books_id;
4613: IF p_fund_rec.set_of_books_id IS NULL THEN
4614: x_complete_rec.set_of_books_id := l_fund_rec.set_of_books_id;
4615: END IF;
4616:
4617: IF p_fund_rec.start_period_id = fnd_api.g_miss_num THEN
4618: x_complete_rec.start_period_id := NULL;
4619: END IF;
4620: IF p_fund_rec.start_period_id IS NULL THEN
4621: x_complete_rec.start_period_id := l_fund_rec.start_period_id;
4620: IF p_fund_rec.start_period_id IS NULL THEN
4621: x_complete_rec.start_period_id := l_fund_rec.start_period_id;
4622: END IF;
4623:
4624: IF p_fund_rec.end_period_id = fnd_api.g_miss_num THEN
4625: x_complete_rec.end_period_id := NULL;
4626: END IF;
4627: IF p_fund_rec.end_period_id IS NULL THEN
4628: x_complete_rec.end_period_id := l_fund_rec.end_period_id;
4627: IF p_fund_rec.end_period_id IS NULL THEN
4628: x_complete_rec.end_period_id := l_fund_rec.end_period_id;
4629: END IF;
4630:
4631: IF p_fund_rec.start_date_active = fnd_api.g_miss_date THEN
4632: x_complete_rec.start_date_active := NULL;
4633: END IF;
4634: IF p_fund_rec.start_date_active IS NULL THEN
4635: x_complete_rec.start_date_active := l_fund_rec.start_date_active;
4634: IF p_fund_rec.start_date_active IS NULL THEN
4635: x_complete_rec.start_date_active := l_fund_rec.start_date_active;
4636: END IF;
4637:
4638: IF p_fund_rec.end_date_active = fnd_api.g_miss_date THEN
4639: x_complete_rec.end_date_active := NULL;
4640: END IF;
4641: IF p_fund_rec.end_date_active IS NULL THEN
4642: x_complete_rec.end_date_active := l_fund_rec.end_date_active;
4641: IF p_fund_rec.end_date_active IS NULL THEN
4642: x_complete_rec.end_date_active := l_fund_rec.end_date_active;
4643: END IF;
4644:
4645: IF p_fund_rec.budget_amount_tc = fnd_api.g_miss_num THEN
4646: x_complete_rec.budget_amount_tc := NULL;
4647: END IF;
4648: IF p_fund_rec.budget_amount_tc IS NULL THEN
4649: x_complete_rec.budget_amount_tc := l_fund_rec.budget_amount_tc;
4648: IF p_fund_rec.budget_amount_tc IS NULL THEN
4649: x_complete_rec.budget_amount_tc := l_fund_rec.budget_amount_tc;
4650: END IF;
4651:
4652: IF p_fund_rec.budget_amount_fc = fnd_api.g_miss_num THEN
4653: x_complete_rec.budget_amount_fc := NULL;
4654: END IF;
4655: IF p_fund_rec.budget_amount_fc IS NULL THEN
4656: x_complete_rec.budget_amount_fc := l_fund_rec.budget_amount_fc;
4655: IF p_fund_rec.budget_amount_fc IS NULL THEN
4656: x_complete_rec.budget_amount_fc := l_fund_rec.budget_amount_fc;
4657: END IF;
4658:
4659: IF p_fund_rec.available_amount = fnd_api.g_miss_num THEN
4660: x_complete_rec.available_amount := NULL;
4661: END IF;
4662: IF p_fund_rec.available_amount IS NULL THEN
4663: x_complete_rec.available_amount := l_fund_rec.available_amount;
4662: IF p_fund_rec.available_amount IS NULL THEN
4663: x_complete_rec.available_amount := l_fund_rec.available_amount;
4664: END IF;
4665:
4666: IF p_fund_rec.distributed_amount = fnd_api.g_miss_num THEN
4667: x_complete_rec.distributed_amount := NULL;
4668: END IF;
4669: IF p_fund_rec.distributed_amount IS NULL THEN
4670: x_complete_rec.distributed_amount := l_fund_rec.distributed_amount;
4669: IF p_fund_rec.distributed_amount IS NULL THEN
4670: x_complete_rec.distributed_amount := l_fund_rec.distributed_amount;
4671: END IF;
4672:
4673: IF p_fund_rec.currency_code_tc = fnd_api.g_miss_char THEN
4674: x_complete_rec.currency_code_tc := NULL;
4675: END IF;
4676: IF p_fund_rec.currency_code_tc IS NULL THEN
4677: x_complete_rec.currency_code_tc := l_fund_rec.currency_code_tc;
4676: IF p_fund_rec.currency_code_tc IS NULL THEN
4677: x_complete_rec.currency_code_tc := l_fund_rec.currency_code_tc;
4678: END IF;
4679:
4680: IF p_fund_rec.currency_code_fc = fnd_api.g_miss_char THEN
4681: x_complete_rec.currency_code_fc := NULL;
4682: END IF;
4683: IF p_fund_rec.currency_code_fc IS NULL THEN
4684: x_complete_rec.currency_code_fc := l_fund_rec.currency_code_fc;
4683: IF p_fund_rec.currency_code_fc IS NULL THEN
4684: x_complete_rec.currency_code_fc := l_fund_rec.currency_code_fc;
4685: END IF;
4686:
4687: IF p_fund_rec.exchange_rate_type = fnd_api.g_miss_char THEN
4688: x_complete_rec.exchange_rate_type := NULL;
4689: END IF;
4690: IF p_fund_rec.exchange_rate_type IS NULL THEN
4691: x_complete_rec.exchange_rate_type := l_fund_rec.exchange_rate_type;
4690: IF p_fund_rec.exchange_rate_type IS NULL THEN
4691: x_complete_rec.exchange_rate_type := l_fund_rec.exchange_rate_type;
4692: END IF;
4693:
4694: IF p_fund_rec.exchange_rate_date = fnd_api.g_miss_date THEN
4695: x_complete_rec.exchange_rate_date := NULL;
4696: END IF;
4697: IF p_fund_rec.exchange_rate_date IS NULL THEN
4698: x_complete_rec.exchange_rate_date := l_fund_rec.exchange_rate_date;
4697: IF p_fund_rec.exchange_rate_date IS NULL THEN
4698: x_complete_rec.exchange_rate_date := l_fund_rec.exchange_rate_date;
4699: END IF;
4700:
4701: IF p_fund_rec.exchange_rate = fnd_api.g_miss_num THEN
4702: x_complete_rec.exchange_rate := NULL;
4703: END IF;
4704: IF p_fund_rec.exchange_rate IS NULL THEN
4705: x_complete_rec.exchange_rate := l_fund_rec.exchange_rate;
4704: IF p_fund_rec.exchange_rate IS NULL THEN
4705: x_complete_rec.exchange_rate := l_fund_rec.exchange_rate;
4706: END IF;
4707:
4708: IF p_fund_rec.department_id = fnd_api.g_miss_num THEN
4709: x_complete_rec.department_id := NULL;
4710: END IF;
4711: IF p_fund_rec.department_id IS NULL THEN
4712: x_complete_rec.department_id := l_fund_rec.department_id;
4711: IF p_fund_rec.department_id IS NULL THEN
4712: x_complete_rec.department_id := l_fund_rec.department_id;
4713: END IF;
4714:
4715: IF p_fund_rec.costcentre_id = fnd_api.g_miss_num THEN
4716: x_complete_rec.costcentre_id := NULL;
4717: END IF;
4718: IF p_fund_rec.costcentre_id IS NULL THEN
4719: x_complete_rec.costcentre_id := l_fund_rec.costcentre_id;
4718: IF p_fund_rec.costcentre_id IS NULL THEN
4719: x_complete_rec.costcentre_id := l_fund_rec.costcentre_id;
4720: END IF;
4721:
4722: IF p_fund_rec.owner = fnd_api.g_miss_num THEN
4723: x_complete_rec.owner := NULL;
4724: END IF;
4725: IF p_fund_rec.owner IS NULL THEN
4726: x_complete_rec.owner := l_fund_rec.owner;
4725: IF p_fund_rec.owner IS NULL THEN
4726: x_complete_rec.owner := l_fund_rec.owner;
4727: END IF;
4728:
4729: IF p_fund_rec.accrual_method = fnd_api.g_miss_char THEN
4730: x_complete_rec.accrual_method := NULL;
4731: END IF;
4732: IF p_fund_rec.accrual_method IS NULL THEN
4733: x_complete_rec.accrual_method := l_fund_rec.accrual_method;
4732: IF p_fund_rec.accrual_method IS NULL THEN
4733: x_complete_rec.accrual_method := l_fund_rec.accrual_method;
4734: END IF;
4735:
4736: IF p_fund_rec.accrual_operand = fnd_api.g_miss_char THEN
4737: x_complete_rec.accrual_operand := NULL;
4738: END IF;
4739: IF p_fund_rec.accrual_operand IS NULL THEN
4740: x_complete_rec.accrual_operand := l_fund_rec.accrual_operand;
4739: IF p_fund_rec.accrual_operand IS NULL THEN
4740: x_complete_rec.accrual_operand := l_fund_rec.accrual_operand;
4741: END IF;
4742:
4743: IF p_fund_rec.accrual_rate = fnd_api.g_miss_num THEN
4744: x_complete_rec.accrual_rate := NULL;
4745: END IF;
4746: IF p_fund_rec.accrual_rate IS NULL THEN
4747: x_complete_rec.accrual_rate := l_fund_rec.accrual_rate;
4746: IF p_fund_rec.accrual_rate IS NULL THEN
4747: x_complete_rec.accrual_rate := l_fund_rec.accrual_rate;
4748: END IF;
4749:
4750: IF p_fund_rec.accrual_basis = fnd_api.g_miss_char THEN
4751: x_complete_rec.accrual_basis := NULL;
4752: END IF;
4753: IF p_fund_rec.accrual_basis IS NULL THEN
4754: x_complete_rec.accrual_basis := l_fund_rec.accrual_basis;
4753: IF p_fund_rec.accrual_basis IS NULL THEN
4754: x_complete_rec.accrual_basis := l_fund_rec.accrual_basis;
4755: END IF;
4756:
4757: IF p_fund_rec.hierarchy = fnd_api.g_miss_char THEN
4758: x_complete_rec.hierarchy := NULL;
4759: END IF;
4760: IF p_fund_rec.hierarchy IS NULL THEN
4761: x_complete_rec.hierarchy := l_fund_rec.hierarchy;
4760: IF p_fund_rec.hierarchy IS NULL THEN
4761: x_complete_rec.hierarchy := l_fund_rec.hierarchy;
4762: END IF;
4763:
4764: IF p_fund_rec.hierarchy_level = fnd_api.g_miss_char THEN
4765: x_complete_rec.hierarchy_level := NULL;
4766: END IF;
4767: IF p_fund_rec.hierarchy_level IS NULL THEN
4768: x_complete_rec.hierarchy_level := l_fund_rec.hierarchy_level;
4767: IF p_fund_rec.hierarchy_level IS NULL THEN
4768: x_complete_rec.hierarchy_level := l_fund_rec.hierarchy_level;
4769: END IF;
4770:
4771: IF p_fund_rec.hierarchy_id = fnd_api.g_miss_num THEN
4772: x_complete_rec.hierarchy_id := NULL;
4773: END IF;
4774: IF p_fund_rec.hierarchy_id IS NULL THEN
4775: x_complete_rec.hierarchy_id := l_fund_rec.hierarchy_id;
4774: IF p_fund_rec.hierarchy_id IS NULL THEN
4775: x_complete_rec.hierarchy_id := l_fund_rec.hierarchy_id;
4776: END IF;
4777:
4778: IF p_fund_rec.parent_node_id = fnd_api.g_miss_num THEN
4779: x_complete_rec.parent_node_id := NULL;
4780: END IF;
4781: IF p_fund_rec.parent_node_id IS NULL THEN
4782: x_complete_rec.parent_node_id := l_fund_rec.parent_node_id;
4781: IF p_fund_rec.parent_node_id IS NULL THEN
4782: x_complete_rec.parent_node_id := l_fund_rec.parent_node_id;
4783: END IF;
4784:
4785: IF p_fund_rec.node_id = fnd_api.g_miss_num THEN
4786: x_complete_rec.node_id := NULL;
4787: END IF;
4788: IF p_fund_rec.node_id IS NULL THEN
4789: x_complete_rec.node_id := l_fund_rec.node_id;
4788: IF p_fund_rec.node_id IS NULL THEN
4789: x_complete_rec.node_id := l_fund_rec.node_id;
4790: END IF;
4791:
4792: IF p_fund_rec.budget_flag = fnd_api.g_miss_char THEN
4793: x_complete_rec.budget_flag := NULL;
4794: END IF;
4795: IF p_fund_rec.budget_flag IS NULL THEN
4796: x_complete_rec.budget_flag := l_fund_rec.budget_flag;
4795: IF p_fund_rec.budget_flag IS NULL THEN
4796: x_complete_rec.budget_flag := l_fund_rec.budget_flag;
4797: END IF;
4798:
4799: IF p_fund_rec.earned_flag = fnd_api.g_miss_char THEN
4800: x_complete_rec.earned_flag := NULL;
4801: END IF;
4802: IF p_fund_rec.earned_flag IS NULL THEN
4803: x_complete_rec.earned_flag := l_fund_rec.earned_flag;
4802: IF p_fund_rec.earned_flag IS NULL THEN
4803: x_complete_rec.earned_flag := l_fund_rec.earned_flag;
4804: END IF;
4805:
4806: IF p_fund_rec.apply_accrual_on = fnd_api.g_miss_char THEN
4807: x_complete_rec.apply_accrual_on := NULL;
4808: END IF;
4809: IF p_fund_rec.apply_accrual_on IS NULL THEN
4810: x_complete_rec.apply_accrual_on := l_fund_rec.apply_accrual_on;
4809: IF p_fund_rec.apply_accrual_on IS NULL THEN
4810: x_complete_rec.apply_accrual_on := l_fund_rec.apply_accrual_on;
4811: END IF;
4812:
4813: IF p_fund_rec.accrual_phase = fnd_api.g_miss_char THEN
4814: x_complete_rec.accrual_phase := NULL;
4815: END IF;
4816: IF p_fund_rec.accrual_phase IS NULL THEN
4817: x_complete_rec.accrual_phase := l_fund_rec.accrual_phase;
4816: IF p_fund_rec.accrual_phase IS NULL THEN
4817: x_complete_rec.accrual_phase := l_fund_rec.accrual_phase;
4818: END IF;
4819:
4820: IF p_fund_rec.accrual_cap = fnd_api.g_miss_num THEN
4821: x_complete_rec.accrual_cap := NULL;
4822: END IF;
4823: IF p_fund_rec.accrual_cap IS NULL THEN
4824: x_complete_rec.accrual_cap := l_fund_rec.accrual_cap;
4823: IF p_fund_rec.accrual_cap IS NULL THEN
4824: x_complete_rec.accrual_cap := l_fund_rec.accrual_cap;
4825: END IF;
4826:
4827: IF p_fund_rec.accrual_uom = fnd_api.g_miss_char THEN
4828: x_complete_rec.accrual_uom := NULL;
4829: END IF;
4830: IF p_fund_rec.accrual_uom IS NULL THEN
4831: x_complete_rec.accrual_uom := l_fund_rec.accrual_uom;
4831: x_complete_rec.accrual_uom := l_fund_rec.accrual_uom;
4832: END IF;
4833:
4834:
4835: IF p_fund_rec.recal_committed = fnd_api.g_miss_num THEN
4836: x_complete_rec.recal_committed := NULL;
4837: END IF;
4838: IF p_fund_rec.recal_committed IS NULL THEN
4839: x_complete_rec.recal_committed := l_fund_rec.recal_committed;
4839: x_complete_rec.recal_committed := l_fund_rec.recal_committed;
4840: END IF;
4841:
4842:
4843: IF p_fund_rec.attribute_category = fnd_api.g_miss_char THEN
4844: x_complete_rec.attribute_category := NULL;
4845: END IF;
4846: IF p_fund_rec.attribute_category IS NULL THEN
4847: x_complete_rec.attribute_category := l_fund_rec.attribute_category;
4846: IF p_fund_rec.attribute_category IS NULL THEN
4847: x_complete_rec.attribute_category := l_fund_rec.attribute_category;
4848: END IF;
4849:
4850: IF p_fund_rec.attribute1 = fnd_api.g_miss_char THEN
4851: x_complete_rec.attribute1 := NULL;
4852: END IF;
4853: IF p_fund_rec.attribute1 IS NULL THEN
4854: x_complete_rec.attribute1 := l_fund_rec.attribute1;
4853: IF p_fund_rec.attribute1 IS NULL THEN
4854: x_complete_rec.attribute1 := l_fund_rec.attribute1;
4855: END IF;
4856:
4857: IF p_fund_rec.attribute2 = fnd_api.g_miss_char THEN
4858: x_complete_rec.attribute2 := NULL;
4859: END IF;
4860: IF p_fund_rec.attribute2 IS NULL THEN
4861: x_complete_rec.attribute2 := l_fund_rec.attribute2;
4860: IF p_fund_rec.attribute2 IS NULL THEN
4861: x_complete_rec.attribute2 := l_fund_rec.attribute2;
4862: END IF;
4863:
4864: IF p_fund_rec.attribute3 = fnd_api.g_miss_char THEN
4865: x_complete_rec.attribute3 := NULL;
4866: END IF;
4867: IF p_fund_rec.attribute3 IS NULL THEN
4868: x_complete_rec.attribute3 := l_fund_rec.attribute3;
4867: IF p_fund_rec.attribute3 IS NULL THEN
4868: x_complete_rec.attribute3 := l_fund_rec.attribute3;
4869: END IF;
4870:
4871: IF p_fund_rec.attribute4 = fnd_api.g_miss_char THEN
4872: x_complete_rec.attribute4 := NULL;
4873: END IF;
4874: IF p_fund_rec.attribute4 IS NULL THEN
4875: x_complete_rec.attribute4 := l_fund_rec.attribute4;
4874: IF p_fund_rec.attribute4 IS NULL THEN
4875: x_complete_rec.attribute4 := l_fund_rec.attribute4;
4876: END IF;
4877:
4878: IF p_fund_rec.attribute5 = fnd_api.g_miss_char THEN
4879: x_complete_rec.attribute5 := NULL;
4880: END IF;
4881: IF p_fund_rec.attribute5 IS NULL THEN
4882: x_complete_rec.attribute5 := l_fund_rec.attribute5;
4881: IF p_fund_rec.attribute5 IS NULL THEN
4882: x_complete_rec.attribute5 := l_fund_rec.attribute5;
4883: END IF;
4884:
4885: IF p_fund_rec.attribute6 = fnd_api.g_miss_char THEN
4886: x_complete_rec.attribute6 := NULL;
4887: END IF;
4888: IF p_fund_rec.attribute6 IS NULL THEN
4889: x_complete_rec.attribute6 := l_fund_rec.attribute6;
4888: IF p_fund_rec.attribute6 IS NULL THEN
4889: x_complete_rec.attribute6 := l_fund_rec.attribute6;
4890: END IF;
4891:
4892: IF p_fund_rec.attribute7 = fnd_api.g_miss_char THEN
4893: x_complete_rec.attribute7 := NULL;
4894: END IF;
4895: IF p_fund_rec.attribute7 IS NULL THEN
4896: x_complete_rec.attribute7 := l_fund_rec.attribute7;
4895: IF p_fund_rec.attribute7 IS NULL THEN
4896: x_complete_rec.attribute7 := l_fund_rec.attribute7;
4897: END IF;
4898:
4899: IF p_fund_rec.attribute8 = fnd_api.g_miss_char THEN
4900: x_complete_rec.attribute8 := NULL;
4901: END IF;
4902: IF p_fund_rec.attribute8 IS NULL THEN
4903: x_complete_rec.attribute8 := l_fund_rec.attribute8;
4902: IF p_fund_rec.attribute8 IS NULL THEN
4903: x_complete_rec.attribute8 := l_fund_rec.attribute8;
4904: END IF;
4905:
4906: IF p_fund_rec.attribute9 = fnd_api.g_miss_char THEN
4907: x_complete_rec.attribute9 := NULL;
4908: END IF;
4909: IF p_fund_rec.attribute9 IS NULL THEN
4910: x_complete_rec.attribute9 := l_fund_rec.attribute9;
4909: IF p_fund_rec.attribute9 IS NULL THEN
4910: x_complete_rec.attribute9 := l_fund_rec.attribute9;
4911: END IF;
4912:
4913: IF p_fund_rec.attribute10 = fnd_api.g_miss_char THEN
4914: x_complete_rec.attribute10 := NULL;
4915: END IF;
4916: IF p_fund_rec.attribute10 IS NULL THEN
4917: x_complete_rec.attribute10 := l_fund_rec.attribute10;
4916: IF p_fund_rec.attribute10 IS NULL THEN
4917: x_complete_rec.attribute10 := l_fund_rec.attribute10;
4918: END IF;
4919:
4920: IF p_fund_rec.attribute11 = fnd_api.g_miss_char THEN
4921: x_complete_rec.attribute11 := NULL;
4922: END IF;
4923: IF p_fund_rec.attribute11 IS NULL THEN
4924: x_complete_rec.attribute11 := l_fund_rec.attribute11;
4923: IF p_fund_rec.attribute11 IS NULL THEN
4924: x_complete_rec.attribute11 := l_fund_rec.attribute11;
4925: END IF;
4926:
4927: IF p_fund_rec.attribute12 = fnd_api.g_miss_char THEN
4928: x_complete_rec.attribute12 := NULL;
4929: END IF;
4930: IF p_fund_rec.attribute12 IS NULL THEN
4931: x_complete_rec.attribute12 := l_fund_rec.attribute12;
4930: IF p_fund_rec.attribute12 IS NULL THEN
4931: x_complete_rec.attribute12 := l_fund_rec.attribute12;
4932: END IF;
4933:
4934: IF p_fund_rec.attribute13 = fnd_api.g_miss_char THEN
4935: x_complete_rec.attribute13 := NULL;
4936: END IF;
4937: IF p_fund_rec.attribute13 IS NULL THEN
4938: x_complete_rec.attribute13 := l_fund_rec.attribute13;
4937: IF p_fund_rec.attribute13 IS NULL THEN
4938: x_complete_rec.attribute13 := l_fund_rec.attribute13;
4939: END IF;
4940:
4941: IF p_fund_rec.attribute14 = fnd_api.g_miss_char THEN
4942: x_complete_rec.attribute14 := NULL;
4943: END IF;
4944: IF p_fund_rec.attribute14 IS NULL THEN
4945: x_complete_rec.attribute14 := l_fund_rec.attribute14;
4944: IF p_fund_rec.attribute14 IS NULL THEN
4945: x_complete_rec.attribute14 := l_fund_rec.attribute14;
4946: END IF;
4947:
4948: IF p_fund_rec.attribute15 = fnd_api.g_miss_char THEN
4949: x_complete_rec.attribute15 := NULL;
4950: END IF;
4951: IF p_fund_rec.attribute15 IS NULL THEN
4952: x_complete_rec.attribute15 := l_fund_rec.attribute15;
4951: IF p_fund_rec.attribute15 IS NULL THEN
4952: x_complete_rec.attribute15 := l_fund_rec.attribute15;
4953: END IF;
4954:
4955: IF p_fund_rec.original_budget = fnd_api.g_miss_num THEN
4956: x_complete_rec.original_budget := NULL;
4957: END IF;
4958: IF p_fund_rec.original_budget IS NULL THEN
4959: x_complete_rec.original_budget := l_fund_rec.original_budget;
4958: IF p_fund_rec.original_budget IS NULL THEN
4959: x_complete_rec.original_budget := l_fund_rec.original_budget;
4960: END IF;
4961:
4962: IF p_fund_rec.transfered_in_amt = fnd_api.g_miss_num THEN
4963: x_complete_rec.transfered_in_amt := NULL;
4964: END IF;
4965: IF p_fund_rec.transfered_in_amt IS NULL THEN
4966: x_complete_rec.transfered_in_amt := l_fund_rec.transfered_in_amt;
4965: IF p_fund_rec.transfered_in_amt IS NULL THEN
4966: x_complete_rec.transfered_in_amt := l_fund_rec.transfered_in_amt;
4967: END IF;
4968:
4969: IF p_fund_rec.transfered_out_amt = fnd_api.g_miss_num THEN
4970: x_complete_rec.transfered_out_amt := NULL;
4971: END IF;
4972: IF p_fund_rec.transfered_out_amt IS NULL THEN
4973: x_complete_rec.transfered_out_amt := l_fund_rec.transfered_out_amt;
4972: IF p_fund_rec.transfered_out_amt IS NULL THEN
4973: x_complete_rec.transfered_out_amt := l_fund_rec.transfered_out_amt;
4974: END IF;
4975:
4976: IF p_fund_rec.holdback_amt = fnd_api.g_miss_num THEN
4977: x_complete_rec.holdback_amt := NULL;
4978: END IF;
4979: IF p_fund_rec.holdback_amt IS NULL THEN
4980: x_complete_rec.holdback_amt := l_fund_rec.holdback_amt;
4979: IF p_fund_rec.holdback_amt IS NULL THEN
4980: x_complete_rec.holdback_amt := l_fund_rec.holdback_amt;
4981: END IF;
4982:
4983: IF p_fund_rec.planned_amt = fnd_api.g_miss_num THEN
4984: x_complete_rec.planned_amt := NULL;
4985: END IF;
4986: IF p_fund_rec.planned_amt IS NULL THEN
4987: x_complete_rec.planned_amt := l_fund_rec.planned_amt;
4986: IF p_fund_rec.planned_amt IS NULL THEN
4987: x_complete_rec.planned_amt := l_fund_rec.planned_amt;
4988: END IF;
4989:
4990: IF p_fund_rec.committed_amt = fnd_api.g_miss_num THEN
4991: x_complete_rec.committed_amt := NULL;
4992: END IF;
4993: IF p_fund_rec.committed_amt IS NULL THEN
4994: x_complete_rec.committed_amt := l_fund_rec.committed_amt;
4994: x_complete_rec.committed_amt := l_fund_rec.committed_amt;
4995: END IF;
4996:
4997: -- yzhao: 11.5.10
4998: IF p_fund_rec.utilized_amt = fnd_api.g_miss_num THEN
4999: x_complete_rec.utilized_amt := NULL;
5000: END IF;
5001: IF p_fund_rec.utilized_amt IS NULL THEN
5002: x_complete_rec.utilized_amt := l_fund_rec.utilized_amt;
5001: IF p_fund_rec.utilized_amt IS NULL THEN
5002: x_complete_rec.utilized_amt := l_fund_rec.utilized_amt;
5003: END IF;
5004:
5005: IF p_fund_rec.earned_amt = fnd_api.g_miss_num THEN
5006: x_complete_rec.earned_amt := NULL;
5007: END IF;
5008: IF p_fund_rec.earned_amt IS NULL THEN
5009: x_complete_rec.earned_amt := l_fund_rec.earned_amt;
5008: IF p_fund_rec.earned_amt IS NULL THEN
5009: x_complete_rec.earned_amt := l_fund_rec.earned_amt;
5010: END IF;
5011:
5012: IF p_fund_rec.paid_amt = fnd_api.g_miss_num THEN
5013: x_complete_rec.paid_amt := NULL;
5014: END IF;
5015: IF p_fund_rec.paid_amt IS NULL THEN
5016: x_complete_rec.paid_amt := l_fund_rec.paid_amt;
5015: IF p_fund_rec.paid_amt IS NULL THEN
5016: x_complete_rec.paid_amt := l_fund_rec.paid_amt;
5017: END IF;
5018:
5019: IF p_fund_rec.plan_type = fnd_api.g_miss_char THEN
5020: x_complete_rec.plan_type := NULL;
5021: END IF;
5022: IF p_fund_rec.plan_type IS NULL THEN
5023: x_complete_rec.plan_type := l_fund_rec.plan_type;
5022: IF p_fund_rec.plan_type IS NULL THEN
5023: x_complete_rec.plan_type := l_fund_rec.plan_type;
5024: END IF;
5025:
5026: IF p_fund_rec.plan_id = fnd_api.g_miss_num THEN
5027: x_complete_rec.plan_id := NULL;
5028: END IF;
5029: IF p_fund_rec.plan_id IS NULL THEN
5030: x_complete_rec.plan_id := l_fund_rec.plan_id;
5029: IF p_fund_rec.plan_id IS NULL THEN
5030: x_complete_rec.plan_id := l_fund_rec.plan_id;
5031: END IF;
5032:
5033: IF p_fund_rec.liable_accnt_segments = fnd_api.g_miss_char THEN
5034: x_complete_rec.liable_accnt_segments := NULL;
5035: END IF;
5036: IF p_fund_rec.liable_accnt_segments IS NULL THEN
5037: x_complete_rec.liable_accnt_segments := l_fund_rec.liable_accnt_segments;
5036: IF p_fund_rec.liable_accnt_segments IS NULL THEN
5037: x_complete_rec.liable_accnt_segments := l_fund_rec.liable_accnt_segments;
5038: END IF;
5039:
5040: IF p_fund_rec.adjustment_accnt_segments = fnd_api.g_miss_char THEN
5041: x_complete_rec.adjustment_accnt_segments := NULL;
5042: END IF;
5043: IF p_fund_rec.adjustment_accnt_segments IS NULL THEN
5044: x_complete_rec.adjustment_accnt_segments := l_fund_rec.adjustment_accnt_segments;
5043: IF p_fund_rec.adjustment_accnt_segments IS NULL THEN
5044: x_complete_rec.adjustment_accnt_segments := l_fund_rec.adjustment_accnt_segments;
5045: END IF;
5046:
5047: IF p_fund_rec.short_name = fnd_api.g_miss_char THEN
5048: x_complete_rec.short_name := NULL;
5049: END IF;
5050: IF p_fund_rec.short_name IS NULL THEN
5051: x_complete_rec.short_name := l_fund_rec.short_name;
5050: IF p_fund_rec.short_name IS NULL THEN
5051: x_complete_rec.short_name := l_fund_rec.short_name;
5052: END IF;
5053:
5054: IF p_fund_rec.description = fnd_api.g_miss_char THEN
5055: x_complete_rec.description := NULL;
5056: END IF;
5057: IF p_fund_rec.description IS NULL THEN
5058: x_complete_rec.description := l_fund_rec.description;
5058: x_complete_rec.description := l_fund_rec.description;
5059: END IF;
5060: --08/28/2001 mpande bug#1950117
5061: /*
5062: IF p_fund_rec.language = fnd_api.g_miss_char THEN
5063: x_complete_rec.language := NULL;
5064: END IF;
5065: IF p_fund_rec.language IS NULL THEN
5066: x_complete_rec.language := l_fund_rec.language;
5065: IF p_fund_rec.language IS NULL THEN
5066: x_complete_rec.language := l_fund_rec.language;
5067: END IF;
5068:
5069: IF p_fund_rec.source_lang = fnd_api.g_miss_char THEN
5070: x_complete_rec.source_lang := NULL;
5071: END IF;
5072: IF p_fund_rec.source_lang IS NULL THEN
5073: x_complete_rec.source_lang := l_fund_rec.source_lang;
5072: IF p_fund_rec.source_lang IS NULL THEN
5073: x_complete_rec.source_lang := l_fund_rec.source_lang;
5074: END IF;
5075: */
5076: IF p_fund_rec.fund_calendar = fnd_api.g_miss_char THEN
5077: x_complete_rec.fund_calendar := NULL;
5078: END IF;
5079: IF p_fund_rec.fund_calendar IS NULL THEN
5080: x_complete_rec.fund_calendar := l_fund_rec.fund_calendar;
5079: IF p_fund_rec.fund_calendar IS NULL THEN
5080: x_complete_rec.fund_calendar := l_fund_rec.fund_calendar;
5081: END IF;
5082:
5083: IF p_fund_rec.start_period_name = fnd_api.g_miss_char THEN
5084: x_complete_rec.start_period_name := NULL;
5085: END IF;
5086: IF p_fund_rec.start_period_name IS NULL THEN
5087: x_complete_rec.start_period_name := l_fund_rec.start_period_name;
5086: IF p_fund_rec.start_period_name IS NULL THEN
5087: x_complete_rec.start_period_name := l_fund_rec.start_period_name;
5088: END IF;
5089:
5090: IF p_fund_rec.end_period_name = fnd_api.g_miss_char THEN
5091: x_complete_rec.end_period_name := NULL;
5092: END IF;
5093: IF p_fund_rec.end_period_name IS NULL THEN
5094: x_complete_rec.end_period_name := l_fund_rec.end_period_name;
5093: IF p_fund_rec.end_period_name IS NULL THEN
5094: x_complete_rec.end_period_name := l_fund_rec.end_period_name;
5095: END IF;
5096:
5097: IF p_fund_rec.accrual_quantity = fnd_api.g_miss_num THEN
5098: x_complete_rec.accrual_quantity := NULL;
5099: END IF;
5100: IF p_fund_rec.accrual_quantity IS NULL THEN
5101: x_complete_rec.accrual_quantity := l_fund_rec.accrual_quantity;
5100: IF p_fund_rec.accrual_quantity IS NULL THEN
5101: x_complete_rec.accrual_quantity := l_fund_rec.accrual_quantity;
5102: END IF;
5103:
5104: IF p_fund_rec.accrue_to_level_id = fnd_api.g_miss_num THEN
5105: x_complete_rec.accrue_to_level_id := NULL;
5106: END IF;
5107: IF p_fund_rec.accrue_to_level_id IS NULL THEN
5108: x_complete_rec.accrue_to_level_id := l_fund_rec.accrue_to_level_id;
5107: IF p_fund_rec.accrue_to_level_id IS NULL THEN
5108: x_complete_rec.accrue_to_level_id := l_fund_rec.accrue_to_level_id;
5109: END IF;
5110:
5111: IF p_fund_rec.accrual_discount_level = fnd_api.g_miss_char THEN
5112: x_complete_rec.accrual_discount_level := NULL;
5113: END IF;
5114: IF p_fund_rec.accrual_discount_level IS NULL THEN
5115: x_complete_rec.accrual_discount_level := l_fund_rec.accrual_discount_level;
5113: END IF;
5114: IF p_fund_rec.accrual_discount_level IS NULL THEN
5115: x_complete_rec.accrual_discount_level := l_fund_rec.accrual_discount_level;
5116: END IF;
5117: IF p_fund_rec.custom_setup_id = fnd_api.g_miss_num THEN
5118: x_complete_rec.custom_setup_id := NULL;
5119: END IF;
5120: IF p_fund_rec.custom_setup_id IS NULL THEN
5121: x_complete_rec.custom_setup_id := l_fund_rec.custom_setup_id;
5119: END IF;
5120: IF p_fund_rec.custom_setup_id IS NULL THEN
5121: x_complete_rec.custom_setup_id := l_fund_rec.custom_setup_id;
5122: END IF;
5123: IF p_fund_rec.threshold_id = fnd_api.g_miss_num THEN
5124: x_complete_rec.threshold_id := NULL;
5125: END IF;
5126: IF p_fund_rec.threshold_id IS NULL THEN
5127: x_complete_rec.threshold_id := l_fund_rec.threshold_id;
5125: END IF;
5126: IF p_fund_rec.threshold_id IS NULL THEN
5127: x_complete_rec.threshold_id := l_fund_rec.threshold_id;
5128: END IF;
5129: IF p_fund_rec.business_unit_id = fnd_api.g_miss_num THEN
5130: x_complete_rec.business_unit_id := NULL;
5131: END IF;
5132: IF p_fund_rec.business_unit_id IS NULL THEN
5133: x_complete_rec.business_unit_id := l_fund_rec.business_unit_id;
5131: END IF;
5132: IF p_fund_rec.business_unit_id IS NULL THEN
5133: x_complete_rec.business_unit_id := l_fund_rec.business_unit_id;
5134: END IF;
5135: IF p_fund_rec.task_id = fnd_api.g_miss_num THEN
5136: x_complete_rec.task_id := NULL;
5137: END IF;
5138: IF p_fund_rec.task_id IS NULL THEN
5139: x_complete_rec.task_id := l_fund_rec.task_id;
5137: END IF;
5138: IF p_fund_rec.task_id IS NULL THEN
5139: x_complete_rec.task_id := l_fund_rec.task_id;
5140: END IF;
5141: IF p_fund_rec.country_id = fnd_api.g_miss_num THEN
5142: x_complete_rec.country_id := NULL;
5143: END IF;
5144: IF p_fund_rec.country_id IS NULL THEN
5145: x_complete_rec.country_id := l_fund_rec.country_id;
5144: IF p_fund_rec.country_id IS NULL THEN
5145: x_complete_rec.country_id := l_fund_rec.country_id;
5146: END IF;
5147: -- added by feliu 02/08/2002 for rollup amount columns
5148: IF p_fund_rec.rollup_original_budget = fnd_api.g_miss_num THEN
5149: x_complete_rec.rollup_original_budget := NULL;
5150: END IF;
5151: IF p_fund_rec.rollup_original_budget IS NULL THEN
5152: x_complete_rec.rollup_original_budget := l_fund_rec.rollup_original_budget;
5150: END IF;
5151: IF p_fund_rec.rollup_original_budget IS NULL THEN
5152: x_complete_rec.rollup_original_budget := l_fund_rec.rollup_original_budget;
5153: END IF;
5154: IF p_fund_rec.rollup_holdback_amt = fnd_api.g_miss_num THEN
5155: x_complete_rec.rollup_holdback_amt := NULL;
5156: END IF;
5157: IF p_fund_rec.rollup_holdback_amt IS NULL THEN
5158: x_complete_rec.rollup_holdback_amt := l_fund_rec.rollup_holdback_amt;
5156: END IF;
5157: IF p_fund_rec.rollup_holdback_amt IS NULL THEN
5158: x_complete_rec.rollup_holdback_amt := l_fund_rec.rollup_holdback_amt;
5159: END IF;
5160: IF p_fund_rec.rollup_transfered_in_amt = fnd_api.g_miss_num THEN
5161: x_complete_rec.rollup_transfered_in_amt := NULL;
5162: END IF;
5163: IF p_fund_rec.rollup_transfered_in_amt IS NULL THEN
5164: x_complete_rec.rollup_transfered_in_amt := l_fund_rec.rollup_transfered_in_amt;
5162: END IF;
5163: IF p_fund_rec.rollup_transfered_in_amt IS NULL THEN
5164: x_complete_rec.rollup_transfered_in_amt := l_fund_rec.rollup_transfered_in_amt;
5165: END IF;
5166: IF p_fund_rec.rollup_transfered_out_amt = fnd_api.g_miss_num THEN
5167: x_complete_rec.rollup_transfered_out_amt := NULL;
5168: END IF;
5169: IF p_fund_rec.rollup_transfered_out_amt IS NULL THEN
5170: x_complete_rec.rollup_transfered_out_amt := l_fund_rec.rollup_transfered_out_amt;
5168: END IF;
5169: IF p_fund_rec.rollup_transfered_out_amt IS NULL THEN
5170: x_complete_rec.rollup_transfered_out_amt := l_fund_rec.rollup_transfered_out_amt;
5171: END IF;
5172: IF p_fund_rec.rollup_planned_amt = fnd_api.g_miss_num THEN
5173: x_complete_rec.rollup_planned_amt := NULL;
5174: END IF;
5175: IF p_fund_rec.rollup_planned_amt IS NULL THEN
5176: x_complete_rec.rollup_planned_amt := l_fund_rec.rollup_planned_amt;
5174: END IF;
5175: IF p_fund_rec.rollup_planned_amt IS NULL THEN
5176: x_complete_rec.rollup_planned_amt := l_fund_rec.rollup_planned_amt;
5177: END IF;
5178: IF p_fund_rec.rollup_committed_amt = fnd_api.g_miss_num THEN
5179: x_complete_rec.rollup_committed_amt := NULL;
5180: END IF;
5181: IF p_fund_rec.rollup_committed_amt IS NULL THEN
5182: x_complete_rec.rollup_committed_amt := l_fund_rec.rollup_committed_amt;
5181: IF p_fund_rec.rollup_committed_amt IS NULL THEN
5182: x_complete_rec.rollup_committed_amt := l_fund_rec.rollup_committed_amt;
5183: END IF;
5184: -- yzhao: 11.5.10
5185: IF p_fund_rec.rollup_utilized_amt = fnd_api.g_miss_num THEN
5186: x_complete_rec.rollup_utilized_amt := NULL;
5187: END IF;
5188: IF p_fund_rec.rollup_utilized_amt IS NULL THEN
5189: x_complete_rec.rollup_utilized_amt := l_fund_rec.rollup_utilized_amt;
5187: END IF;
5188: IF p_fund_rec.rollup_utilized_amt IS NULL THEN
5189: x_complete_rec.rollup_utilized_amt := l_fund_rec.rollup_utilized_amt;
5190: END IF;
5191: IF p_fund_rec.rollup_earned_amt = fnd_api.g_miss_num THEN
5192: x_complete_rec.rollup_earned_amt := NULL;
5193: END IF;
5194: IF p_fund_rec.rollup_earned_amt IS NULL THEN
5195: x_complete_rec.rollup_earned_amt := l_fund_rec.rollup_earned_amt;
5193: END IF;
5194: IF p_fund_rec.rollup_earned_amt IS NULL THEN
5195: x_complete_rec.rollup_earned_amt := l_fund_rec.rollup_earned_amt;
5196: END IF;
5197: IF p_fund_rec.rollup_paid_amt = fnd_api.g_miss_num THEN
5198: x_complete_rec.rollup_paid_amt := NULL;
5199: END IF;
5200: IF p_fund_rec.rollup_paid_amt IS NULL THEN
5201: x_complete_rec.rollup_paid_amt := l_fund_rec.rollup_paid_amt;
5199: END IF;
5200: IF p_fund_rec.rollup_paid_amt IS NULL THEN
5201: x_complete_rec.rollup_paid_amt := l_fund_rec.rollup_paid_amt;
5202: END IF;
5203: IF p_fund_rec.rollup_recal_committed = fnd_api.g_miss_num THEN
5204: x_complete_rec.rollup_recal_committed := NULL;
5205: END IF;
5206: IF p_fund_rec.rollup_recal_committed IS NULL THEN
5207: x_complete_rec.rollup_recal_committed := l_fund_rec.rollup_recal_committed ;
5205: END IF;
5206: IF p_fund_rec.rollup_recal_committed IS NULL THEN
5207: x_complete_rec.rollup_recal_committed := l_fund_rec.rollup_recal_committed ;
5208: END IF;
5209: IF p_fund_rec.retroactive_flag = fnd_api.g_miss_char THEN
5210: x_complete_rec.retroactive_flag := NULL;
5211: END IF;
5212: IF p_fund_rec.retroactive_flag IS NULL THEN
5213: x_complete_rec.retroactive_flag := l_fund_rec.retroactive_flag ;
5211: END IF;
5212: IF p_fund_rec.retroactive_flag IS NULL THEN
5213: x_complete_rec.retroactive_flag := l_fund_rec.retroactive_flag ;
5214: END IF;
5215: IF p_fund_rec.qualifier_id = fnd_api.g_miss_num THEN
5216: x_complete_rec.qualifier_id := NULL;
5217: END IF;
5218: IF p_fund_rec.qualifier_id IS NULL THEN
5219: x_complete_rec.qualifier_id := l_fund_rec.qualifier_id;
5219: x_complete_rec.qualifier_id := l_fund_rec.qualifier_id;
5220: END IF;
5221:
5222: -- niprakas added
5223: IF p_fund_rec.prev_fund_id = fnd_api.g_miss_num THEN
5224: x_complete_rec.prev_fund_id := NULL;
5225: END IF;
5226: IF p_fund_rec.prev_fund_id IS NULL THEN
5227: x_complete_rec.prev_fund_id := l_fund_rec.prev_fund_id;
5228: END IF;
5229:
5230: -- niprakas added
5231:
5232: IF p_fund_rec.transfered_flag = fnd_api.g_miss_char THEN
5233: x_complete_rec.transfered_flag := NULL;
5234: END IF;
5235: IF p_fund_rec.transfered_flag IS NULL THEN
5236: x_complete_rec.transfered_flag := l_fund_rec.transfered_flag;
5236: x_complete_rec.transfered_flag := l_fund_rec.transfered_flag;
5237: END IF;
5238:
5239: -- niprakas added
5240: IF p_fund_rec.utilized_amt = fnd_api.g_miss_num THEN
5241: x_complete_rec.utilized_amt := NULL;
5242: END IF;
5243: IF p_fund_rec.utilized_amt = fnd_api.g_miss_num THEN
5244: x_complete_rec.utilized_amt := l_fund_rec.utilized_amt;
5239: -- niprakas added
5240: IF p_fund_rec.utilized_amt = fnd_api.g_miss_num THEN
5241: x_complete_rec.utilized_amt := NULL;
5242: END IF;
5243: IF p_fund_rec.utilized_amt = fnd_api.g_miss_num THEN
5244: x_complete_rec.utilized_amt := l_fund_rec.utilized_amt;
5245: END IF;
5246:
5247: -- niprakas added
5244: x_complete_rec.utilized_amt := l_fund_rec.utilized_amt;
5245: END IF;
5246:
5247: -- niprakas added
5248: IF p_fund_rec.rollup_utilized_amt = fnd_api.g_miss_num THEN
5249: x_complete_rec.rollup_utilized_amt := NULL;
5250: END IF;
5251: IF p_fund_rec.rollup_utilized_amt = fnd_api.g_miss_num THEN
5252: x_complete_rec.rollup_utilized_amt := l_fund_rec.rollup_utilized_amt;
5247: -- niprakas added
5248: IF p_fund_rec.rollup_utilized_amt = fnd_api.g_miss_num THEN
5249: x_complete_rec.rollup_utilized_amt := NULL;
5250: END IF;
5251: IF p_fund_rec.rollup_utilized_amt = fnd_api.g_miss_num THEN
5252: x_complete_rec.rollup_utilized_amt := l_fund_rec.rollup_utilized_amt;
5253: END IF;
5254:
5255: --kdass added
5252: x_complete_rec.rollup_utilized_amt := l_fund_rec.rollup_utilized_amt;
5253: END IF;
5254:
5255: --kdass added
5256: IF p_fund_rec.product_spread_time_id = fnd_api.g_miss_num THEN
5257: x_complete_rec.product_spread_time_id := NULL;
5258: END IF;
5259: IF p_fund_rec.product_spread_time_id IS NULL THEN
5260: x_complete_rec.product_spread_time_id := l_fund_rec.product_spread_time_id;
5260: x_complete_rec.product_spread_time_id := l_fund_rec.product_spread_time_id;
5261: END IF;
5262:
5263: --kdass - R12 MOAC changes
5264: IF p_fund_rec.org_id = fnd_api.g_miss_num THEN
5265: x_complete_rec.org_id := NULL;
5266: END IF;
5267: IF p_fund_rec.org_id IS NULL THEN
5268: x_complete_rec.org_id := l_fund_rec.org_id;
5267: IF p_fund_rec.org_id IS NULL THEN
5268: x_complete_rec.org_id := l_fund_rec.org_id;
5269: END IF;
5270:
5271: IF p_fund_rec.ledger_id = fnd_api.g_miss_num THEN
5272: x_complete_rec.ledger_id := NULL;
5273: END IF;
5274: IF p_fund_rec.ledger_id IS NULL THEN
5275: x_complete_rec.ledger_id := l_fund_rec.ledger_id;
5311:
5312: l_accrued_liability_account NUMBER;
5313: l_ded_adjustment_account NUMBER;
5314: BEGIN
5315: x_return_status := fnd_api.g_ret_sts_success;
5316: OPEN c_gl_info(p_category_id);
5317: FETCH c_gl_info INTO l_accrued_liability_account, l_ded_adjustment_account;
5318: CLOSE c_gl_info;
5319:
5318: CLOSE c_gl_info;
5319:
5320: --- if p_categroy_id is null then return null----
5321: IF p_category_id IS NULL THEN
5322: x_return_status := fnd_api.g_ret_sts_success;
5323: ELSIF p_category_id IS NOT NULL THEN
5324: IF p_accrued_liability_account IS NULL THEN --if present keep the value else default it
5325: p_accrued_liability_account := l_accrued_liability_account;
5326: END IF;
5330: END IF;
5331: END IF;
5332: EXCEPTION
5333: WHEN OTHERS THEN
5334: x_return_status := fnd_api.g_ret_sts_unexp_error;
5335: END complete_default_gl_info;
5336:
5337:
5338: -- 14-May-2001 feliu added for copy function.
5356: -- x_custom_setup_id: custom_setup_id.
5357: ---------------------------------------------------------------------
5358: PROCEDURE copy_fund (
5359: p_api_version IN NUMBER,
5360: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
5361: p_commit IN VARCHAR2 := FND_API.G_FALSE,
5362: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
5363: x_return_status OUT NOCOPY VARCHAR2,
5364: x_msg_count OUT NOCOPY NUMBER,
5357: ---------------------------------------------------------------------
5358: PROCEDURE copy_fund (
5359: p_api_version IN NUMBER,
5360: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
5361: p_commit IN VARCHAR2 := FND_API.G_FALSE,
5362: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
5363: x_return_status OUT NOCOPY VARCHAR2,
5364: x_msg_count OUT NOCOPY NUMBER,
5365: x_msg_data OUT NOCOPY VARCHAR2,
5358: PROCEDURE copy_fund (
5359: p_api_version IN NUMBER,
5360: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
5361: p_commit IN VARCHAR2 := FND_API.G_FALSE,
5362: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
5363: x_return_status OUT NOCOPY VARCHAR2,
5364: x_msg_count OUT NOCOPY NUMBER,
5365: x_msg_data OUT NOCOPY VARCHAR2,
5366: p_source_object_id IN NUMBER,
5416: -- Standard Start of API savepoint
5417: SAVEPOINT copy_fund;
5418:
5419: -- Standard call to check for call compatibility.
5420: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
5421: p_api_version,
5422: l_api_name,
5423: G_PKG_NAME)
5424: THEN
5421: p_api_version,
5422: l_api_name,
5423: G_PKG_NAME)
5424: THEN
5425: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5426: END IF;
5427:
5428: -- Initialize message list if p_init_msg_list is set to TRUE.
5429: IF FND_API.to_Boolean( p_init_msg_list )THEN
5425: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5426: END IF;
5427:
5428: -- Initialize message list if p_init_msg_list is set to TRUE.
5429: IF FND_API.to_Boolean( p_init_msg_list )THEN
5430: FND_MSG_PUB.initialize;
5431: END IF;
5432:
5433: IF G_DEBUG THEN
5434: OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || ' start');
5435: END IF;
5436:
5437: -- Initialize API return status to SUCCESS
5438: x_return_status := FND_API.G_RET_STS_SUCCESS;
5439:
5440: --
5441: -- Start of API body.
5442: --
5553: get_child_source_code(
5554: l_fund_rec.parent_fund_id
5555: ,l_fund_rec.fund_number
5556: ,x_return_status);
5557: IF x_return_status = fnd_api.g_ret_sts_error THEN
5558: RAISE fnd_api.g_exc_error;
5559: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
5560: RAISE fnd_api.g_exc_unexpected_error;
5561: END IF;
5554: l_fund_rec.parent_fund_id
5555: ,l_fund_rec.fund_number
5556: ,x_return_status);
5557: IF x_return_status = fnd_api.g_ret_sts_error THEN
5558: RAISE fnd_api.g_exc_error;
5559: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
5560: RAISE fnd_api.g_exc_unexpected_error;
5561: END IF;
5562: END IF;
5555: ,l_fund_rec.fund_number
5556: ,x_return_status);
5557: IF x_return_status = fnd_api.g_ret_sts_error THEN
5558: RAISE fnd_api.g_exc_error;
5559: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
5560: RAISE fnd_api.g_exc_unexpected_error;
5561: END IF;
5562: END IF;
5563: -- to fix bug 3240787
5556: ,x_return_status);
5557: IF x_return_status = fnd_api.g_ret_sts_error THEN
5558: RAISE fnd_api.g_exc_error;
5559: ELSIF x_return_status = fnd_api.g_ret_sts_unexp_error THEN
5560: RAISE fnd_api.g_exc_unexpected_error;
5561: END IF;
5562: END IF;
5563: -- to fix bug 3240787
5564:
5598: ,x_msg_data => x_msg_data
5599: ,p_fund_rec => l_fund_rec);
5600:
5601:
5602: IF l_return_status = fnd_api.g_ret_sts_error THEN
5603: RAISE fnd_api.g_exc_error;
5604: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5605: RAISE fnd_api.g_exc_unexpected_error;
5606: END IF;
5599: ,p_fund_rec => l_fund_rec);
5600:
5601:
5602: IF l_return_status = fnd_api.g_ret_sts_error THEN
5603: RAISE fnd_api.g_exc_error;
5604: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5605: RAISE fnd_api.g_exc_unexpected_error;
5606: END IF;
5607: ------------------------------------------------------------
5600:
5601:
5602: IF l_return_status = fnd_api.g_ret_sts_error THEN
5603: RAISE fnd_api.g_exc_error;
5604: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5605: RAISE fnd_api.g_exc_unexpected_error;
5606: END IF;
5607: ------------------------------------------------------------
5608: --end 13360969
5601:
5602: IF l_return_status = fnd_api.g_ret_sts_error THEN
5603: RAISE fnd_api.g_exc_error;
5604: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5605: RAISE fnd_api.g_exc_unexpected_error;
5606: END IF;
5607: ------------------------------------------------------------
5608: --end 13360969
5609:
5608: --end 13360969
5609:
5610: OZF_COPY_OFFER_PVT.copy_offer_detail(
5611: p_api_version=> 1.0,
5612: p_init_msg_list=> FND_API.G_FALSE,
5613: p_commit=> FND_API.G_FALSE,
5614: p_validation_level=> p_validation_level,
5615: x_return_status=> l_return_status,
5616: x_msg_count=> x_msg_count,
5609:
5610: OZF_COPY_OFFER_PVT.copy_offer_detail(
5611: p_api_version=> 1.0,
5612: p_init_msg_list=> FND_API.G_FALSE,
5613: p_commit=> FND_API.G_FALSE,
5614: p_validation_level=> p_validation_level,
5615: x_return_status=> l_return_status,
5616: x_msg_count=> x_msg_count,
5617: x_msg_data=> x_msg_data,
5622: p_custom_setup_id =>l_offer_custsetup);
5623:
5624: l_fund_rec.plan_id := l_plan_id;
5625:
5626: IF l_return_status = fnd_api.g_ret_sts_error THEN
5627: RAISE fnd_api.g_exc_error;
5628: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5629: RAISE fnd_api.g_exc_unexpected_error;
5630: END IF;
5623:
5624: l_fund_rec.plan_id := l_plan_id;
5625:
5626: IF l_return_status = fnd_api.g_ret_sts_error THEN
5627: RAISE fnd_api.g_exc_error;
5628: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5629: RAISE fnd_api.g_exc_unexpected_error;
5630: END IF;
5631:
5624: l_fund_rec.plan_id := l_plan_id;
5625:
5626: IF l_return_status = fnd_api.g_ret_sts_error THEN
5627: RAISE fnd_api.g_exc_error;
5628: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5629: RAISE fnd_api.g_exc_unexpected_error;
5630: END IF;
5631:
5632: END IF;
5625:
5626: IF l_return_status = fnd_api.g_ret_sts_error THEN
5627: RAISE fnd_api.g_exc_error;
5628: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5629: RAISE fnd_api.g_exc_unexpected_error;
5630: END IF;
5631:
5632: END IF;
5633:
5632: END IF;
5633:
5634: OZF_Funds_PVT.Create_Fund (
5635: p_api_version => 1.0,
5636: p_init_msg_list => FND_API.G_FALSE,
5637: p_commit => FND_API.G_FALSE,
5638: p_validation_level => p_validation_level,
5639: x_return_status => l_return_status,
5640: x_msg_count => x_msg_count,
5633:
5634: OZF_Funds_PVT.Create_Fund (
5635: p_api_version => 1.0,
5636: p_init_msg_list => FND_API.G_FALSE,
5637: p_commit => FND_API.G_FALSE,
5638: p_validation_level => p_validation_level,
5639: x_return_status => l_return_status,
5640: x_msg_count => x_msg_count,
5641: x_msg_data => x_msg_data,
5642: p_fund_rec => l_fund_rec,
5643: x_fund_id => l_new_fund_id
5644: );
5645:
5646: IF l_return_status = fnd_api.g_ret_sts_error THEN
5647: RAISE fnd_api.g_exc_error;
5648: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5649: RAISE fnd_api.g_exc_unexpected_error;
5650: END IF;
5643: x_fund_id => l_new_fund_id
5644: );
5645:
5646: IF l_return_status = fnd_api.g_ret_sts_error THEN
5647: RAISE fnd_api.g_exc_error;
5648: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5649: RAISE fnd_api.g_exc_unexpected_error;
5650: END IF;
5651:
5644: );
5645:
5646: IF l_return_status = fnd_api.g_ret_sts_error THEN
5647: RAISE fnd_api.g_exc_error;
5648: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5649: RAISE fnd_api.g_exc_unexpected_error;
5650: END IF;
5651:
5652: -- copy market_segments
5645:
5646: IF l_return_status = fnd_api.g_ret_sts_error THEN
5647: RAISE fnd_api.g_exc_error;
5648: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
5649: RAISE fnd_api.g_exc_unexpected_error;
5650: END IF;
5651:
5652: -- copy market_segments
5653:
5651:
5652: -- copy market_segments
5653:
5654:
5655: IF AMS_CpyUtility_PVT.is_copy_attribute ('ELIG', p_attributes_table) = FND_API.G_TRUE THEN
5656:
5657: AMS_CopyElements_PVT.copy_act_market_segments (
5658: p_src_act_type => L_OBJECT_TYPE_FUND,
5659: p_new_act_type => L_OBJECT_TYPE_FUND,
5662: p_errnum => l_errnum,
5663: p_errcode => l_errcode,
5664: p_errmsg => l_errmsg
5665: );
5666: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
5667: RAISE FND_API.G_EXC_ERROR;
5668: END IF;
5669: END IF;
5670:
5663: p_errcode => l_errcode,
5664: p_errmsg => l_errmsg
5665: );
5666: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
5667: RAISE FND_API.G_EXC_ERROR;
5668: END IF;
5669: END IF;
5670:
5671: -- copy product
5668: END IF;
5669: END IF;
5670:
5671: -- copy product
5672: IF AMS_CpyUtility_PVT.is_copy_attribute (AMS_CopyElements_PVT.G_ATTRIBUTE_PROD, p_attributes_table) = FND_API.G_TRUE THEN
5673: AMS_CopyElements_PVT.copy_act_prod(
5674: p_src_act_type => L_OBJECT_TYPE_FUND,
5675: p_new_act_type => L_OBJECT_TYPE_FUND,
5676: p_src_act_id => p_source_object_id,
5693: -- End of API body.
5694: --
5695:
5696: -- Standard check for p_commit
5697: IF FND_API.to_Boolean( p_commit ) THEN
5698: COMMIT WORK;
5699: END IF;
5700:
5701:
5709: p_count => x_msg_count,
5710: p_data => x_msg_data
5711: );
5712: EXCEPTION
5713: WHEN FND_API.G_EXC_ERROR THEN
5714: ROLLBACK TO copy_fund;
5715: x_return_status := FND_API.G_RET_STS_ERROR;
5716: -- Standard call to get message count and if count=1, get the message
5717: FND_MSG_PUB.Count_And_Get (
5711: );
5712: EXCEPTION
5713: WHEN FND_API.G_EXC_ERROR THEN
5714: ROLLBACK TO copy_fund;
5715: x_return_status := FND_API.G_RET_STS_ERROR;
5716: -- Standard call to get message count and if count=1, get the message
5717: FND_MSG_PUB.Count_And_Get (
5718: p_encoded => FND_API.G_FALSE,
5719: p_count => x_msg_count,
5714: ROLLBACK TO copy_fund;
5715: x_return_status := FND_API.G_RET_STS_ERROR;
5716: -- Standard call to get message count and if count=1, get the message
5717: FND_MSG_PUB.Count_And_Get (
5718: p_encoded => FND_API.G_FALSE,
5719: p_count => x_msg_count,
5720: p_data => x_msg_data
5721: );
5722: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5718: p_encoded => FND_API.G_FALSE,
5719: p_count => x_msg_count,
5720: p_data => x_msg_data
5721: );
5722: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5723: ROLLBACK TO copy_fund;
5724: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5725: -- Standard call to get message count and if count=1, get the message
5726: FND_MSG_PUB.Count_And_Get (
5720: p_data => x_msg_data
5721: );
5722: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5723: ROLLBACK TO copy_fund;
5724: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5725: -- Standard call to get message count and if count=1, get the message
5726: FND_MSG_PUB.Count_And_Get (
5727: p_encoded => FND_API.G_FALSE,
5728: p_count => x_msg_count,
5723: ROLLBACK TO copy_fund;
5724: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5725: -- Standard call to get message count and if count=1, get the message
5726: FND_MSG_PUB.Count_And_Get (
5727: p_encoded => FND_API.G_FALSE,
5728: p_count => x_msg_count,
5729: p_data => x_msg_data
5730: );
5731: WHEN OTHERS THEN
5729: p_data => x_msg_data
5730: );
5731: WHEN OTHERS THEN
5732: ROLLBACK TO copy_fund;
5733: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5734: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
5735: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
5736: END IF;
5737: -- Standard call to get message count and if count=1, get the message
5735: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
5736: END IF;
5737: -- Standard call to get message count and if count=1, get the message
5738: FND_MSG_PUB.Count_And_Get (
5739: p_encoded => FND_API.G_FALSE,
5740: p_count => x_msg_count,
5741: p_data => x_msg_data
5742: );
5743: END copy_fund;
5755: ---------------------------------------------------------------------
5756:
5757: PROCEDURE update_rollup_amount(
5758: p_api_version IN NUMBER
5759: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
5760: ,p_commit IN VARCHAR2 := fnd_api.g_false
5761: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
5762: ,x_return_status OUT NOCOPY VARCHAR2
5763: ,x_msg_count OUT NOCOPY NUMBER
5756:
5757: PROCEDURE update_rollup_amount(
5758: p_api_version IN NUMBER
5759: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
5760: ,p_commit IN VARCHAR2 := fnd_api.g_false
5761: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
5762: ,x_return_status OUT NOCOPY VARCHAR2
5763: ,x_msg_count OUT NOCOPY NUMBER
5764: ,x_msg_data OUT NOCOPY VARCHAR2
5757: PROCEDURE update_rollup_amount(
5758: p_api_version IN NUMBER
5759: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
5760: ,p_commit IN VARCHAR2 := fnd_api.g_false
5761: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
5762: ,x_return_status OUT NOCOPY VARCHAR2
5763: ,x_msg_count OUT NOCOPY NUMBER
5764: ,x_msg_data OUT NOCOPY VARCHAR2
5765: ,p_fund_rec IN fund_rec_type
5791:
5792: BEGIN
5793:
5794: -- Standard call to check for call compatibility.
5795: IF NOT FND_API.Compatible_API_Call ( l_api_version,
5796: p_api_version,
5797: l_api_name,
5798: G_PKG_NAME)
5799: THEN
5796: p_api_version,
5797: l_api_name,
5798: G_PKG_NAME)
5799: THEN
5800: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5801: END IF;
5802:
5803: -- Initialize message list if p_init_msg_list is set to TRUE.
5804: IF FND_API.to_Boolean( p_init_msg_list )THEN
5800: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5801: END IF;
5802:
5803: -- Initialize message list if p_init_msg_list is set to TRUE.
5804: IF FND_API.to_Boolean( p_init_msg_list )THEN
5805: FND_MSG_PUB.initialize;
5806: END IF;
5807:
5808: IF G_DEBUG THEN
5809: OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || ' start');
5810: END IF;
5811:
5812: -- Initialize API return status to SUCCESS
5813: x_return_status := FND_API.G_RET_STS_SUCCESS;
5814:
5815: FOR fund IN c_parent
5816: LOOP
5817: IF fund.fund_id <> p_fund_rec.fund_id THEN
5836: fnd_message.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
5837: fnd_msg_pub.add;
5838: END IF;
5839:
5840: RAISE fnd_api.g_exc_error;
5841: END IF;
5842: END IF;
5843: END LOOP;
5844: -------------------- finish --------------------------
5842: END IF;
5843: END LOOP;
5844: -------------------- finish --------------------------
5845: fnd_msg_pub.count_and_get(
5846: p_encoded => fnd_api.g_false
5847: ,p_count => x_msg_count
5848: ,p_data => x_msg_data);
5849: IF G_DEBUG THEN
5850: ozf_utility_pvt.debug_message( l_api_name || ': end');
5849: IF G_DEBUG THEN
5850: ozf_utility_pvt.debug_message( l_api_name || ': end');
5851: END IF;
5852: EXCEPTION
5853: WHEN fnd_api.g_exc_error THEN
5854: x_return_status := fnd_api.g_ret_sts_error;
5855: fnd_msg_pub.count_and_get(
5856: p_encoded => fnd_api.g_false
5857: ,p_count => x_msg_count
5850: ozf_utility_pvt.debug_message( l_api_name || ': end');
5851: END IF;
5852: EXCEPTION
5853: WHEN fnd_api.g_exc_error THEN
5854: x_return_status := fnd_api.g_ret_sts_error;
5855: fnd_msg_pub.count_and_get(
5856: p_encoded => fnd_api.g_false
5857: ,p_count => x_msg_count
5858: ,p_data => x_msg_data);
5852: EXCEPTION
5853: WHEN fnd_api.g_exc_error THEN
5854: x_return_status := fnd_api.g_ret_sts_error;
5855: fnd_msg_pub.count_and_get(
5856: p_encoded => fnd_api.g_false
5857: ,p_count => x_msg_count
5858: ,p_data => x_msg_data);
5859: WHEN fnd_api.g_exc_unexpected_error THEN
5860: x_return_status := fnd_api.g_ret_sts_unexp_error;
5855: fnd_msg_pub.count_and_get(
5856: p_encoded => fnd_api.g_false
5857: ,p_count => x_msg_count
5858: ,p_data => x_msg_data);
5859: WHEN fnd_api.g_exc_unexpected_error THEN
5860: x_return_status := fnd_api.g_ret_sts_unexp_error;
5861: fnd_msg_pub.count_and_get(
5862: p_encoded => fnd_api.g_false
5863: ,p_count => x_msg_count
5856: p_encoded => fnd_api.g_false
5857: ,p_count => x_msg_count
5858: ,p_data => x_msg_data);
5859: WHEN fnd_api.g_exc_unexpected_error THEN
5860: x_return_status := fnd_api.g_ret_sts_unexp_error;
5861: fnd_msg_pub.count_and_get(
5862: p_encoded => fnd_api.g_false
5863: ,p_count => x_msg_count
5864: ,p_data => x_msg_data);
5858: ,p_data => x_msg_data);
5859: WHEN fnd_api.g_exc_unexpected_error THEN
5860: x_return_status := fnd_api.g_ret_sts_unexp_error;
5861: fnd_msg_pub.count_and_get(
5862: p_encoded => fnd_api.g_false
5863: ,p_count => x_msg_count
5864: ,p_data => x_msg_data);
5865: WHEN OTHERS THEN
5866: x_return_status := fnd_api.g_ret_sts_unexp_error;
5862: p_encoded => fnd_api.g_false
5863: ,p_count => x_msg_count
5864: ,p_data => x_msg_data);
5865: WHEN OTHERS THEN
5866: x_return_status := fnd_api.g_ret_sts_unexp_error;
5867:
5868: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
5869: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
5870: END IF;
5869: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
5870: END IF;
5871:
5872: fnd_msg_pub.count_and_get(
5873: p_encoded => fnd_api.g_false
5874: ,p_count => x_msg_count
5875: ,p_data => x_msg_data);
5876:
5877: END update_rollup_amount;
5889: ---------------------------------------------------------------------
5890:
5891: PROCEDURE update_funds_access(
5892: p_api_version IN NUMBER
5893: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
5894: ,p_commit IN VARCHAR2 := fnd_api.g_false
5895: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
5896: ,x_return_status OUT NOCOPY VARCHAR2
5897: ,x_msg_count OUT NOCOPY NUMBER
5890:
5891: PROCEDURE update_funds_access(
5892: p_api_version IN NUMBER
5893: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
5894: ,p_commit IN VARCHAR2 := fnd_api.g_false
5895: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
5896: ,x_return_status OUT NOCOPY VARCHAR2
5897: ,x_msg_count OUT NOCOPY NUMBER
5898: ,x_msg_data OUT NOCOPY VARCHAR2
5891: PROCEDURE update_funds_access(
5892: p_api_version IN NUMBER
5893: ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
5894: ,p_commit IN VARCHAR2 := fnd_api.g_false
5895: ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
5896: ,x_return_status OUT NOCOPY VARCHAR2
5897: ,x_msg_count OUT NOCOPY NUMBER
5898: ,x_msg_data OUT NOCOPY VARCHAR2
5899: ,p_fund_rec IN fund_rec_type
5940: l_owner_exist BOOLEAN := false;
5941:
5942: BEGIN
5943: -- Standard call to check for call compatibility.
5944: IF NOT FND_API.Compatible_API_Call ( l_api_version,
5945: p_api_version,
5946: l_api_name,
5947: G_PKG_NAME)
5948: THEN
5945: p_api_version,
5946: l_api_name,
5947: G_PKG_NAME)
5948: THEN
5949: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5950: END IF;
5951:
5952: -- Initialize message list if p_init_msg_list is set to TRUE.
5953: IF FND_API.to_Boolean( p_init_msg_list )THEN
5949: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5950: END IF;
5951:
5952: -- Initialize message list if p_init_msg_list is set to TRUE.
5953: IF FND_API.to_Boolean( p_init_msg_list )THEN
5954: FND_MSG_PUB.initialize;
5955: END IF;
5956:
5957: IF G_DEBUG THEN
5984: l_access_rec.admin_flag := 'Y';
5985: l_access_rec.owner_flag := 'Y';
5986: ams_access_pvt.create_access(
5987: p_api_version => l_api_version
5988: ,p_init_msg_list => fnd_api.g_false
5989: ,p_validation_level => p_validation_level
5990: ,x_return_status => l_return_status
5991: ,x_msg_count => x_msg_count
5992: ,x_msg_data => x_msg_data
5989: ,p_validation_level => p_validation_level
5990: ,x_return_status => l_return_status
5991: ,x_msg_count => x_msg_count
5992: ,x_msg_data => x_msg_data
5993: ,p_commit => fnd_api.g_false
5994: ,p_access_rec => l_access_rec
5995: ,x_access_id => l_access_id);
5996:
5997: --l_return_status := fnd_api.g_ret_sts_error;
5993: ,p_commit => fnd_api.g_false
5994: ,p_access_rec => l_access_rec
5995: ,x_access_id => l_access_id);
5996:
5997: --l_return_status := fnd_api.g_ret_sts_error;
5998: IF l_return_status = fnd_api.g_ret_sts_error THEN
5999: RAISE fnd_api.g_exc_error;
6000: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6001: RAISE fnd_api.g_exc_unexpected_error;
5994: ,p_access_rec => l_access_rec
5995: ,x_access_id => l_access_id);
5996:
5997: --l_return_status := fnd_api.g_ret_sts_error;
5998: IF l_return_status = fnd_api.g_ret_sts_error THEN
5999: RAISE fnd_api.g_exc_error;
6000: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6001: RAISE fnd_api.g_exc_unexpected_error;
6002: END IF;
5995: ,x_access_id => l_access_id);
5996:
5997: --l_return_status := fnd_api.g_ret_sts_error;
5998: IF l_return_status = fnd_api.g_ret_sts_error THEN
5999: RAISE fnd_api.g_exc_error;
6000: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6001: RAISE fnd_api.g_exc_unexpected_error;
6002: END IF;
6003: END IF;
5996:
5997: --l_return_status := fnd_api.g_ret_sts_error;
5998: IF l_return_status = fnd_api.g_ret_sts_error THEN
5999: RAISE fnd_api.g_exc_error;
6000: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6001: RAISE fnd_api.g_exc_unexpected_error;
6002: END IF;
6003: END IF;
6004: ELSE -- end create access mode.
5997: --l_return_status := fnd_api.g_ret_sts_error;
5998: IF l_return_status = fnd_api.g_ret_sts_error THEN
5999: RAISE fnd_api.g_exc_error;
6000: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6001: RAISE fnd_api.g_exc_unexpected_error;
6002: END IF;
6003: END IF;
6004: ELSE -- end create access mode.
6005:
6011:
6012: IF fund.owner <>p_fund_rec.owner AND l_access_rec.activity_access_id is NOT NULL THEN
6013: ams_access_pvt.delete_access(
6014: p_api_version => l_api_version
6015: ,p_init_msg_list => fnd_api.g_false
6016: ,p_validation_level => p_validation_level
6017: ,x_return_status => l_return_status
6018: ,x_msg_count => x_msg_count
6019: ,x_msg_data => x_msg_data
6016: ,p_validation_level => p_validation_level
6017: ,x_return_status => l_return_status
6018: ,x_msg_count => x_msg_count
6019: ,x_msg_data => x_msg_data
6020: ,p_commit => fnd_api.g_false
6021: ,p_access_id => l_access_id
6022: ,p_object_version => l_acc_obj_ver_num);
6023:
6024: IF l_return_status = fnd_api.g_ret_sts_error THEN
6020: ,p_commit => fnd_api.g_false
6021: ,p_access_id => l_access_id
6022: ,p_object_version => l_acc_obj_ver_num);
6023:
6024: IF l_return_status = fnd_api.g_ret_sts_error THEN
6025: RAISE fnd_api.g_exc_error;
6026: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6027: RAISE fnd_api.g_exc_unexpected_error;
6028: END IF;
6021: ,p_access_id => l_access_id
6022: ,p_object_version => l_acc_obj_ver_num);
6023:
6024: IF l_return_status = fnd_api.g_ret_sts_error THEN
6025: RAISE fnd_api.g_exc_error;
6026: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6027: RAISE fnd_api.g_exc_unexpected_error;
6028: END IF;
6029: END IF; -- end of l_access_rec.activity_access_id is NOT NULL
6022: ,p_object_version => l_acc_obj_ver_num);
6023:
6024: IF l_return_status = fnd_api.g_ret_sts_error THEN
6025: RAISE fnd_api.g_exc_error;
6026: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6027: RAISE fnd_api.g_exc_unexpected_error;
6028: END IF;
6029: END IF; -- end of l_access_rec.activity_access_id is NOT NULL
6030:
6023:
6024: IF l_return_status = fnd_api.g_ret_sts_error THEN
6025: RAISE fnd_api.g_exc_error;
6026: ELSIF l_return_status = fnd_api.g_ret_sts_unexp_error THEN
6027: RAISE fnd_api.g_exc_unexpected_error;
6028: END IF;
6029: END IF; -- end of l_access_rec.activity_access_id is NOT NULL
6030:
6031: END IF; -- end delete access mode.
6032: END IF;
6033: END LOOP;
6034: -------------------- finish --------------------------
6035: fnd_msg_pub.count_and_get(
6036: p_encoded => fnd_api.g_false
6037: ,p_count => x_msg_count
6038: ,p_data => x_msg_data);
6039: IF G_DEBUG THEN
6040: ozf_utility_pvt.debug_message( l_api_name ||': end');
6040: ozf_utility_pvt.debug_message( l_api_name ||': end');
6041: END IF;
6042:
6043: EXCEPTION
6044: WHEN fnd_api.g_exc_error THEN
6045: x_return_status := fnd_api.g_ret_sts_error;
6046: fnd_msg_pub.count_and_get(
6047: p_encoded => fnd_api.g_false
6048: ,p_count => x_msg_count
6041: END IF;
6042:
6043: EXCEPTION
6044: WHEN fnd_api.g_exc_error THEN
6045: x_return_status := fnd_api.g_ret_sts_error;
6046: fnd_msg_pub.count_and_get(
6047: p_encoded => fnd_api.g_false
6048: ,p_count => x_msg_count
6049: ,p_data => x_msg_data);
6043: EXCEPTION
6044: WHEN fnd_api.g_exc_error THEN
6045: x_return_status := fnd_api.g_ret_sts_error;
6046: fnd_msg_pub.count_and_get(
6047: p_encoded => fnd_api.g_false
6048: ,p_count => x_msg_count
6049: ,p_data => x_msg_data);
6050: WHEN fnd_api.g_exc_unexpected_error THEN
6051: x_return_status := fnd_api.g_ret_sts_unexp_error;
6046: fnd_msg_pub.count_and_get(
6047: p_encoded => fnd_api.g_false
6048: ,p_count => x_msg_count
6049: ,p_data => x_msg_data);
6050: WHEN fnd_api.g_exc_unexpected_error THEN
6051: x_return_status := fnd_api.g_ret_sts_unexp_error;
6052: fnd_msg_pub.count_and_get(
6053: p_encoded => fnd_api.g_false
6054: ,p_count => x_msg_count
6047: p_encoded => fnd_api.g_false
6048: ,p_count => x_msg_count
6049: ,p_data => x_msg_data);
6050: WHEN fnd_api.g_exc_unexpected_error THEN
6051: x_return_status := fnd_api.g_ret_sts_unexp_error;
6052: fnd_msg_pub.count_and_get(
6053: p_encoded => fnd_api.g_false
6054: ,p_count => x_msg_count
6055: ,p_data => x_msg_data);
6049: ,p_data => x_msg_data);
6050: WHEN fnd_api.g_exc_unexpected_error THEN
6051: x_return_status := fnd_api.g_ret_sts_unexp_error;
6052: fnd_msg_pub.count_and_get(
6053: p_encoded => fnd_api.g_false
6054: ,p_count => x_msg_count
6055: ,p_data => x_msg_data);
6056: WHEN OTHERS THEN
6057: x_return_status := fnd_api.g_ret_sts_unexp_error;
6053: p_encoded => fnd_api.g_false
6054: ,p_count => x_msg_count
6055: ,p_data => x_msg_data);
6056: WHEN OTHERS THEN
6057: x_return_status := fnd_api.g_ret_sts_unexp_error;
6058:
6059: IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
6060: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
6061: END IF;
6060: fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
6061: END IF;
6062:
6063: fnd_msg_pub.count_and_get(
6064: p_encoded => fnd_api.g_false
6065: ,p_count => x_msg_count
6066: ,p_data => x_msg_data);
6067:
6068: END update_funds_access;