33: (
34: p_cc_header_id IN NUMBER
35: ) RETURN BOOLEAN
36: IS
37: l_cc_headers_rec igc_cc_headers%ROWTYPE;
38: l_cc_acct_lines_rec igc_cc_acct_lines_v%ROWTYPE;
39: l_cc_pmt_fcst_rec igc_cc_det_pf_v%ROWTYPE;
40:
41: /* Contract Commitment detail payment forecast */
179: reval_fix := FALSE;
180:
181: SELECT *
182: INTO l_cc_headers_rec
183: FROM igc_cc_headers
184: WHERE cc_header_id = p_cc_header_id;
185:
186: OPEN c_account_lines(p_cc_header_id);
187:
292: l_period_status gl_period_statuses.closing_status%TYPE;
293: l_cc_period_status igc_cc_periods.cc_period_status%TYPE;
294: l_rate NUMBER;
295: l_message igc_cc_process_exceptions.exception_reason%TYPE;
296: l_cc_num igc_cc_headers.cc_num%TYPE;
297: BEGIN
298:
299: BEGIN
300:
299: BEGIN
300:
301: SELECT cc_num
302: INTO l_cc_num
303: FROM igc_cc_headers
304: WHERE cc_header_id = p_cc_header_id;
305:
306: EXCEPTION
307: WHEN OTHERS THEN
504: IS
505: l_lock_cc BOOLEAN := TRUE;
506: l_lock_po BOOLEAN := TRUE;
507: l_message igc_cc_process_exceptions.exception_reason%TYPE;
508: l_cc_num igc_cc_headers.cc_num%TYPE;
509: BEGIN
510:
511: SELECT cc_num
512: INTO l_cc_num
509: BEGIN
510:
511: SELECT cc_num
512: INTO l_cc_num
513: FROM igc_cc_headers
514: WHERE cc_header_id = p_cc_header_id;
515:
516: l_lock_cc := TRUE;
517: l_lock_po := TRUE;
624: )
625: RETURN VARCHAR2
626: IS
627:
628: l_cc_headers_rec igc_cc_headers%ROWTYPE;
629: l_rel_cc_headers_rec igc_cc_headers%ROWTYPE;
630: l_cc_acct_lines_rec igc_cc_acct_lines_v%ROWTYPE;
631: l_cc_pmt_fcst_rec igc_cc_det_pf_v%ROWTYPE;
632: l_exception igc_cc_process_exceptions.exception_reason%TYPE;
625: RETURN VARCHAR2
626: IS
627:
628: l_cc_headers_rec igc_cc_headers%ROWTYPE;
629: l_rel_cc_headers_rec igc_cc_headers%ROWTYPE;
630: l_cc_acct_lines_rec igc_cc_acct_lines_v%ROWTYPE;
631: l_cc_pmt_fcst_rec igc_cc_det_pf_v%ROWTYPE;
632: l_exception igc_cc_process_exceptions.exception_reason%TYPE;
633: l_action_hist_msg igc_cc_actions.cc_action_notes%TYPE;
790: l_Last_Updated_By NUMBER := FND_GLOBAL.USER_ID;
791: l_Last_Update_Login NUMBER := FND_GLOBAL.LOGIN_ID;
792: l_Created_By NUMBER := FND_GLOBAL.USER_ID;
793:
794: l_cc_acct_date igc_cc_headers.cc_acct_date%TYPE;
795: l_conversion_date igc_cc_headers.conversion_date%TYPE;
796: l_conversion_rate igc_cc_headers.conversion_rate%TYPE;
797: l_cc_version_num igc_cc_headers.cc_version_num%TYPE;
798: l_cc_apprvl_status igc_cc_headers.cc_apprvl_status%TYPE;
791: l_Last_Update_Login NUMBER := FND_GLOBAL.LOGIN_ID;
792: l_Created_By NUMBER := FND_GLOBAL.USER_ID;
793:
794: l_cc_acct_date igc_cc_headers.cc_acct_date%TYPE;
795: l_conversion_date igc_cc_headers.conversion_date%TYPE;
796: l_conversion_rate igc_cc_headers.conversion_rate%TYPE;
797: l_cc_version_num igc_cc_headers.cc_version_num%TYPE;
798: l_cc_apprvl_status igc_cc_headers.cc_apprvl_status%TYPE;
799:
792: l_Created_By NUMBER := FND_GLOBAL.USER_ID;
793:
794: l_cc_acct_date igc_cc_headers.cc_acct_date%TYPE;
795: l_conversion_date igc_cc_headers.conversion_date%TYPE;
796: l_conversion_rate igc_cc_headers.conversion_rate%TYPE;
797: l_cc_version_num igc_cc_headers.cc_version_num%TYPE;
798: l_cc_apprvl_status igc_cc_headers.cc_apprvl_status%TYPE;
799:
800: l_cc_acct_func_amt igc_cc_acct_lines.cc_acct_func_amt%TYPE;
793:
794: l_cc_acct_date igc_cc_headers.cc_acct_date%TYPE;
795: l_conversion_date igc_cc_headers.conversion_date%TYPE;
796: l_conversion_rate igc_cc_headers.conversion_rate%TYPE;
797: l_cc_version_num igc_cc_headers.cc_version_num%TYPE;
798: l_cc_apprvl_status igc_cc_headers.cc_apprvl_status%TYPE;
799:
800: l_cc_acct_func_amt igc_cc_acct_lines.cc_acct_func_amt%TYPE;
801: l_cc_acct_encmbrnc_date igc_cc_acct_lines.cc_acct_encmbrnc_date%TYPE;
794: l_cc_acct_date igc_cc_headers.cc_acct_date%TYPE;
795: l_conversion_date igc_cc_headers.conversion_date%TYPE;
796: l_conversion_rate igc_cc_headers.conversion_rate%TYPE;
797: l_cc_version_num igc_cc_headers.cc_version_num%TYPE;
798: l_cc_apprvl_status igc_cc_headers.cc_apprvl_status%TYPE;
799:
800: l_cc_acct_func_amt igc_cc_acct_lines.cc_acct_func_amt%TYPE;
801: l_cc_acct_encmbrnc_date igc_cc_acct_lines.cc_acct_encmbrnc_date%TYPE;
802: l_cc_acct_encmbrnc_amt igc_cc_acct_lines.cc_acct_encmbrnc_amt%TYPE ;
809: l_det_pf_func_amt_total igc_cc_det_pf.cc_det_pf_func_amt%TYPE;
810:
811: l_cc_acct_func_amt_total igc_cc_acct_lines.cc_acct_func_amt%TYPE;
812:
813: l_rel_conversion_rate igc_cc_headers.conversion_rate%TYPE;
814:
815: BEGIN
816:
817: SELECT *
815: BEGIN
816:
817: SELECT *
818: INTO l_cc_headers_rec
819: FROM igc_cc_headers
820: WHERE cc_header_id = p_cc_header_id;
821:
822:
823: SELECT old_approval_status
831: IF (l_cc_headers_rec.cc_type = 'C')
832: THEN
833: SELECT conversion_rate
834: INTO l_rel_conversion_rate
835: FROM igc_cc_headers
836: WHERE cc_header_id = p_rel_cc_header_id;
837: END IF;
838:
839:
1374: l_cc_apprvl_status := l_approval_status;
1375:
1376: SELECT rowid
1377: INTO l_hdr_row_id
1378: FROM igc_cc_headers
1379: WHERE CC_HEADER_ID = l_cc_headers_rec.cc_header_id;
1380:
1381: IGC_CC_HEADERS_PKG.Update_Row(
1382: l_api_version,
1377: INTO l_hdr_row_id
1378: FROM igc_cc_headers
1379: WHERE CC_HEADER_ID = l_cc_headers_rec.cc_header_id;
1380:
1381: IGC_CC_HEADERS_PKG.Update_Row(
1382: l_api_version,
1383: l_init_msg_list,
1384: l_commit,
1385: l_validation_level,
1458:
1459:
1460: ELSIF (p_validate_only = 'Y')
1461: THEN
1462: UPDATE igc_cc_headers
1463: SET cc_apprvl_status = l_approval_status
1464: WHERE cc_header_id = p_cc_header_id;
1465: END IF;
1466:
1589: l_message,
1590: p_org_id,
1591: p_sob_id,
1592: p_request_id
1593: FROM igc_cc_headers b,
1594: igc_cc_process_data a
1595: WHERE
1596: b.parent_header_id = p_cc_header_id AND
1597: b.cc_header_id = a.cc_header_id AND
1605: -- p_org_id IN NUMBER,
1606: p_cc_header_id IN NUMBER,
1607: p_revalue_fix_date IN VARCHAR2)
1608: IS
1609: l_cc_headers_rec igc_cc_headers%ROWTYPE;
1610: l_rel_cc_headers_rec igc_cc_headers%ROWTYPE;
1611: l_cc_acct_lines_rec igc_cc_acct_lines_v%ROWTYPE;
1612: l_rel_cc_acct_lines_rec igc_cc_acct_lines_v%ROWTYPE;
1613: l_cc_pmt_fcst_rec igc_cc_det_pf_v%ROWTYPE;
1606: p_cc_header_id IN NUMBER,
1607: p_revalue_fix_date IN VARCHAR2)
1608: IS
1609: l_cc_headers_rec igc_cc_headers%ROWTYPE;
1610: l_rel_cc_headers_rec igc_cc_headers%ROWTYPE;
1611: l_cc_acct_lines_rec igc_cc_acct_lines_v%ROWTYPE;
1612: l_rel_cc_acct_lines_rec igc_cc_acct_lines_v%ROWTYPE;
1613: l_cc_pmt_fcst_rec igc_cc_det_pf_v%ROWTYPE;
1614: l_rel_cc_pmt_fcst_rec igc_cc_det_pf_v%ROWTYPE;
1684: CURSOR c_revalue_process_cc(p_cc_header_id NUMBER)
1685: IS
1686:
1687: SELECT *
1688: FROM igc_cc_headers a
1689: WHERE a.cc_header_id = p_cc_header_id;
1690:
1691: /* Fetch the cover-relase both revalued data from temporary table */
1692: CURSOR c_cover_reval_data(p_request_id NUMBER)
1692: CURSOR c_cover_reval_data(p_request_id NUMBER)
1693: IS
1694: SELECT a.cc_header_id
1695: FROM igc_cc_process_data a ,
1696: igc_cc_headers b
1697: WHERE a.request_id = p_request_id AND
1698: a.cc_header_id = b.cc_header_id AND
1699: b.cc_type = 'C';
1700:
1703: CURSOR c_reval_data(p_request_id NUMBER)
1704: IS
1705: SELECT a.cc_header_id
1706: FROM igc_cc_process_data a ,
1707: igc_cc_headers b
1708: WHERE a.request_id = p_request_id AND
1709: a.cc_header_id = b.cc_header_id AND
1710: (b.cc_type = 'C' OR b.cc_type = 'S');
1711:
1711:
1712: CURSOR C_ALL_RELEASES1(p_cc_header_id NUMBER)
1713: IS
1714: SELECT *
1715: FROM igc_cc_headers
1716: WHERE parent_header_id = p_cc_header_id;
1717:
1718: CURSOR C_ALL_RELEASES(p_cc_header_id NUMBER)
1719: IS
1717:
1718: CURSOR C_ALL_RELEASES(p_cc_header_id NUMBER)
1719: IS
1720: SELECT a.cc_header_id
1721: FROM igc_cc_headers a
1722: WHERE a.parent_header_id = p_cc_header_id;
1723:
1724: CURSOR C_RELEASES(p_cc_header_id NUMBER)
1725: IS
1723:
1724: CURSOR C_RELEASES(p_cc_header_id NUMBER)
1725: IS
1726: SELECT a.cc_header_id
1727: FROM igc_cc_headers a
1728: WHERE a.parent_header_id = p_cc_header_id;
1729:
1730: CURSOR C_ACCT_LINES(p_cc_header_id NUMBER)
1731: IS
1856: ccdpf.created_by
1857: FROM igc_cc_det_pf ccdpf
1858: WHERE ccdpf.cc_acct_line_id = p_cc_acct_line_id;
1859:
1860: l_cc_header_id igc_cc_headers.cc_header_id%TYPE;
1861: l_rel_cc_header_id igc_cc_headers.cc_header_id%TYPE;
1862: l_cc_acct_line_id igc_cc_acct_lines.cc_acct_line_id%TYPE;
1863: l_debug VARCHAR2(1);
1864:
1857: FROM igc_cc_det_pf ccdpf
1858: WHERE ccdpf.cc_acct_line_id = p_cc_acct_line_id;
1859:
1860: l_cc_header_id igc_cc_headers.cc_header_id%TYPE;
1861: l_rel_cc_header_id igc_cc_headers.cc_header_id%TYPE;
1862: l_cc_acct_line_id igc_cc_acct_lines.cc_acct_line_id%TYPE;
1863: l_debug VARCHAR2(1);
1864:
1865: insert_data EXCEPTION;
2217: IF (l_cc_headers_rec.cc_type = 'R')
2218: THEN
2219: SELECT currency_code
2220: INTO l_cover_currency_code
2221: FROM igc_cc_headers
2222: WHERE cc_header_id = l_cc_headers_rec.parent_header_id;
2223:
2224: /* Functional Currency Cover */
2225: IF (l_currency_code = l_cover_currency_code)
2378:
2379: /* Get Contract Details */
2380: SELECT *
2381: INTO l_cc_headers_rec
2382: FROM igc_cc_headers
2383: WHERE cc_header_id = l_cc_header_id;
2384:
2385: l_lock_cc_po := TRUE;
2386:
2461:
2462: /* Get Contract Details */
2463: SELECT *
2464: INTO l_cc_headers_rec
2465: FROM igc_cc_headers
2466: WHERE cc_header_id = l_cc_header_id;
2467:
2468: OPEN c_acct_lines(l_cc_header_id);
2469: LOOP
2477: BEGIN
2478: SELECT NVL(SUM(NVL(CC_ACCT_FUNC_AMT,0)),0)
2479: INTO l_non_reval_acct_amt_total
2480: FROM igc_cc_acct_lines a,
2481: igc_cc_headers b
2482: WHERE NVL(parent_acct_line_id,0) = l_cc_acct_lines_rec.cc_acct_line_id AND
2483: a.cc_header_id = b.cc_header_id AND
2484: NVL(b.parent_header_id,0) = l_cc_header_id AND
2485: b.cc_header_id <> p_cc_header_id;
2505: )
2506: )
2507: INTO l_reval_acct_amt_total
2508: FROM igc_cc_acct_lines a,
2509: igc_cc_headers b
2510: WHERE NVL(parent_acct_line_id,0) = l_cc_acct_lines_rec.cc_acct_line_id AND
2511: a.cc_header_id = b.cc_header_id AND
2512: b.cc_header_id = p_cc_header_id;
2513: EXCEPTION
2544: SELECT SUM(NVL(CC_DET_PF_FUNC_AMT,0))
2545: INTO l_non_reval_pf_amt_total
2546: FROM igc_cc_det_pf a,
2547: igc_cc_acct_lines b,
2548: igc_cc_headers c
2549: WHERE NVL(a.parent_acct_line_id,0) =
2550: l_cc_acct_lines_rec.cc_acct_line_id AND
2551: NVL(a.parent_det_pf_line_id,0) =
2552: l_cc_pmt_fcst_rec.cc_det_pf_line_id AND
2576: )
2577: INTO l_reval_pf_amt_total
2578: FROM igc_cc_det_pf a,
2579: igc_cc_acct_lines b,
2580: igc_cc_headers c
2581: WHERE NVL(a.parent_acct_line_id,0) =
2582: l_cc_acct_lines_rec.cc_acct_line_id AND
2583: NVL(a.parent_det_pf_line_id,0) =
2584: l_cc_pmt_fcst_rec.cc_det_pf_line_id AND
2635:
2636: /* Get Contract Details */
2637: SELECT *
2638: INTO l_cc_headers_rec
2639: FROM igc_cc_headers
2640: WHERE cc_header_id = l_cc_header_id;
2641:
2642: l_validation_status := 'P';
2643:
2701: processed = 'Y'
2702: WHERE
2703: request_id = l_request_id1 AND
2704: cc_header_id IN (SELECT cc_header_id
2705: FROM igc_cc_headers
2706: WHERE parent_header_id = l_cc_header_id);
2707:
2708: END IF;
2709:
2740: END IF;
2741:
2742: IF (l_cc_headers_rec.cc_type = 'C') OR (l_cc_headers_rec.cc_type = 'S')
2743: THEN
2744: UPDATE igc_cc_headers
2745: SET cc_apprvl_status = 'IP'
2746: WHERE cc_header_id = l_cc_header_id;
2747: END IF;
2748:
2799: old_approval_status = l_rel_cc_headers_rec.cc_apprvl_status
2800: WHERE request_id = l_request_id1 AND
2801: cc_header_id = l_rel_cc_headers_rec.cc_header_id;
2802:
2803: UPDATE igc_cc_headers
2804: SET cc_apprvl_status = 'IP'
2805: WHERE cc_header_id = l_rel_cc_headers_rec.cc_header_id ;
2806:
2807: l_po_count := 0;
2861: validation_status = l_validation_Status ,
2862: processed = 'Y'
2863: WHERE request_id = l_request_id1 AND
2864: cc_header_id IN (SELECT cc_header_id
2865: FROM igc_cc_headers
2866: WHERE parent_header_id = l_cc_header_id);
2867: END IF;
2868:
2869: END IF;
2884:
2885:
2886: SELECT *
2887: INTO l_cc_headers_rec
2888: FROM igc_cc_headers
2889: WHERE cc_header_id = p_cc_header_id;
2890:
2891:
2892: SELECT validation_status
3000: reservation_status = l_reservation_Status
3001: WHERE
3002: request_id = l_request_id1 AND
3003: cc_header_id IN (SELECT cc_header_id
3004: FROM igc_cc_headers
3005: WHERE parent_header_id =
3006: l_cc_headers_rec.parent_header_id);
3007: END IF;
3008: