7:
8: -- Global Variables
9: G_INIT_NUMBER NUMBER := -9999;
10: G_PKG_NAME CONSTANT VARCHAR2(200) := 'OKL_PAYMENT_APPLICATION_PVT';
11: G_APP_NAME CONSTANT VARCHAR2(3) := OKL_API.G_APP_NAME;
12: G_API_TYPE CONSTANT VARCHAR2(4) := '_PVT';
13:
14:
15: subtype rgpv_rec_type IS OKL_RULE_PUB.rgpv_rec_type;
34: x_msg_out VARCHAR2(2000);
35:
36: BEGIN
37:
38: okl_api.end_activity(
39: X_msg_count => x_msg_count,
40: X_msg_data => x_msg_data
41: );
42:
129: IF lrule_csr%ISOPEN THEN
130: CLOSE lrule_csr;
131: END IF;
132: x_return_status := OKC_API.G_RET_STS_ERROR;
133: okl_api.set_message(
134: G_APP_NAME,
135: G_UNEXPECTED_ERROR,
136: 'OKL_SQLCODE',
137: SQLCODE,
220: IF l_ro_sl_rule_csr%ISOPEN THEN
221: CLOSE l_ro_sl_rule_csr;
222: END IF;
223: x_return_status := OKC_API.G_RET_STS_ERROR;
224: okl_api.set_message(
225: G_APP_NAME,
226: G_UNEXPECTED_ERROR,
227: 'OKL_SQLCODE',
228: SQLCODE,
302: x_msg_data OUT NOCOPY VARCHAR2,
303: x_rgpv_tbl OUT NOCOPY rgpv_tbl_type,
304: x_rg_count OUT NOCOPY NUMBER) IS
305: l_No_RG_Found BOOLEAN DEFAULT TRUE;
306: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
307: l_api_name CONSTANT VARCHAR2(30) := 'GET_CONTRACT_RULE_GROUP';
308: l_api_version CONSTANT NUMBER := 1.0;
309: ---------------------------------------------------------------------------
310: -- FUNCTION get_rec for: OKC_RULE_GROUPS_V
447: p_rgd_code => p_rgd_code,
448: p_stream_id => p_stream_id,
449: x_rg_count => x_rg_count);
450: EXCEPTION
451: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
452: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
453: p_api_name => l_api_name,
454: p_pkg_name => g_pkg_name,
455: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
448: p_stream_id => p_stream_id,
449: x_rg_count => x_rg_count);
450: EXCEPTION
451: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
452: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
453: p_api_name => l_api_name,
454: p_pkg_name => g_pkg_name,
455: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
456: x_msg_count => x_msg_count,
451: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
452: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
453: p_api_name => l_api_name,
454: p_pkg_name => g_pkg_name,
455: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
456: x_msg_count => x_msg_count,
457: x_msg_data => x_msg_data,
458: p_api_type => g_api_type);
459:
456: x_msg_count => x_msg_count,
457: x_msg_data => x_msg_data,
458: p_api_type => g_api_type);
459:
460: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
461: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
462: p_api_name => l_api_name,
463: p_pkg_name => g_pkg_name,
464: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
457: x_msg_data => x_msg_data,
458: p_api_type => g_api_type);
459:
460: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
461: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
462: p_api_name => l_api_name,
463: p_pkg_name => g_pkg_name,
464: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
465: x_msg_count => x_msg_count,
460: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
461: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
462: p_api_name => l_api_name,
463: p_pkg_name => g_pkg_name,
464: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
465: x_msg_count => x_msg_count,
466: x_msg_data => x_msg_data,
467: p_api_type => g_api_type);
468:
466: x_msg_data => x_msg_data,
467: p_api_type => g_api_type);
468:
469: WHEN OTHERS THEN
470: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
471: p_api_name => l_api_name,
472: p_pkg_name => g_pkg_name,
473: p_exc_name => 'OTHERS',
474: x_msg_count => x_msg_count,
489: x_msg_data OUT NOCOPY VARCHAR2,
490: x_rgpv_tbl OUT NOCOPY rgpv_tbl_type,
491: x_rg_count OUT NOCOPY NUMBER) IS
492: l_No_RG_Found BOOLEAN DEFAULT TRUE;
493: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
494: l_api_name CONSTANT VARCHAR2(30) := 'GET_RO_FEE_TOPLN_RG';
495: l_api_version CONSTANT NUMBER := 1.0;
496: ---------------------------------------------------------------------------
497: -- FUNCTION get_rec for: OKC_RULE_GROUPS_V
630: p_rgd_code => p_rgd_code,
631: p_stream_id => p_stream_id,
632: x_rg_count => x_rg_count);
633: EXCEPTION
634: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
635: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
636: p_api_name => l_api_name,
637: p_pkg_name => g_pkg_name,
638: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
631: p_stream_id => p_stream_id,
632: x_rg_count => x_rg_count);
633: EXCEPTION
634: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
635: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
636: p_api_name => l_api_name,
637: p_pkg_name => g_pkg_name,
638: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
639: x_msg_count => x_msg_count,
634: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
635: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
636: p_api_name => l_api_name,
637: p_pkg_name => g_pkg_name,
638: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
639: x_msg_count => x_msg_count,
640: x_msg_data => x_msg_data,
641: p_api_type => g_api_type);
642:
639: x_msg_count => x_msg_count,
640: x_msg_data => x_msg_data,
641: p_api_type => g_api_type);
642:
643: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
644: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
645: p_api_name => l_api_name,
646: p_pkg_name => g_pkg_name,
647: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
640: x_msg_data => x_msg_data,
641: p_api_type => g_api_type);
642:
643: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
644: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
645: p_api_name => l_api_name,
646: p_pkg_name => g_pkg_name,
647: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
648: x_msg_count => x_msg_count,
643: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
644: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
645: p_api_name => l_api_name,
646: p_pkg_name => g_pkg_name,
647: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
648: x_msg_count => x_msg_count,
649: x_msg_data => x_msg_data,
650: p_api_type => g_api_type);
651:
649: x_msg_data => x_msg_data,
650: p_api_type => g_api_type);
651:
652: WHEN OTHERS THEN
653: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
654: p_api_name => l_api_name,
655: p_pkg_name => g_pkg_name,
656: p_exc_name => 'OTHERS',
657: x_msg_count => x_msg_count,
671: x_rulv_tbl OUT NOCOPY rulv_tbl_type,
672: x_rule_count OUT NOCOPY NUMBER ) IS
673:
674:
675: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
676: l_api_name CONSTANT VARCHAR2(30) := 'GET_SLH_RULES';
677: l_api_version CONSTANT NUMBER := 1.0;
678: ---------------------------------------------------------------------------
679: -- FUNCTION get_rec for: OKC_RULES_V
839: p_rdf_code => p_rdf_code,
840: p_stream_id => p_stream_id,
841: x_Rule_Count => x_rule_Count);
842: EXCEPTION
843: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
844: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
845: p_api_name => l_api_name,
846: p_pkg_name => g_pkg_name,
847: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
840: p_stream_id => p_stream_id,
841: x_Rule_Count => x_rule_Count);
842: EXCEPTION
843: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
844: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
845: p_api_name => l_api_name,
846: p_pkg_name => g_pkg_name,
847: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
848: x_msg_count => x_msg_count,
843: WHEN Okl_Api.G_EXCEPTION_ERROR THEN
844: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
845: p_api_name => l_api_name,
846: p_pkg_name => g_pkg_name,
847: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
848: x_msg_count => x_msg_count,
849: x_msg_data => x_msg_data,
850: p_api_type => g_api_type);
851:
848: x_msg_count => x_msg_count,
849: x_msg_data => x_msg_data,
850: p_api_type => g_api_type);
851:
852: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
853: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
854: p_api_name => l_api_name,
855: p_pkg_name => g_pkg_name,
856: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
849: x_msg_data => x_msg_data,
850: p_api_type => g_api_type);
851:
852: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
853: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
854: p_api_name => l_api_name,
855: p_pkg_name => g_pkg_name,
856: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
857: x_msg_count => x_msg_count,
852: WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
853: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
854: p_api_name => l_api_name,
855: p_pkg_name => g_pkg_name,
856: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
857: x_msg_count => x_msg_count,
858: x_msg_data => x_msg_data,
859: p_api_type => g_api_type);
860:
858: x_msg_data => x_msg_data,
859: p_api_type => g_api_type);
860:
861: WHEN OTHERS THEN
862: x_return_status := Okl_Api.HANDLE_EXCEPTIONS(
863: p_api_name => l_api_name,
864: p_pkg_name => g_pkg_name,
865: p_exc_name => 'OTHERS',
866: x_msg_count => x_msg_count,
1078: x_return_status := OKC_API.G_RET_STS_SUCCESS;
1079: OPEN chr_csr(p_chr_id);
1080: FETCH chr_csr INTO l_currency_code;
1081: IF chr_csr%NOTFOUND THEN
1082: okl_api.set_message(
1083: G_APP_NAME,
1084: G_LLA_CHR_ID
1085: );
1086: RAISE curr_failed;
1090:
1091: OPEN curr_csr(l_currency_code);
1092: FETCH curr_csr INTO l_precision;
1093: IF curr_csr%NOTFOUND THEN
1094: okl_api.set_message(
1095: G_APP_NAME,
1096: G_INVALID_VALUE,
1097: 'COL_NAME',
1098: 'CURRENCY CODE'
1242: RAISE rule_failed;
1243: END IF;
1244:
1245: IF (x_slh_rule_count = 0) THEN
1246: okl_api.set_message(
1247: G_APP_NAME,
1248: G_NO_HEADER_PAYMENT
1249: );
1250: RAISE rule_failed;
1287: RAISE rule_failed;
1288: END IF;
1289:
1290: IF (x_sll_rule_count = 0) THEN
1291: okl_api.set_message(
1292: G_APP_NAME,
1293: G_NO_HEADER_PAYMENT
1294: );
1295: RAISE rule_failed;
1366: EXCEPTION
1367: WHEN rule_failed THEN
1368: x_return_status := OKC_API.G_RET_STS_ERROR;
1369: WHEN OTHERS THEN
1370: okl_api.set_message(
1371: G_APP_NAME,
1372: G_UNEXPECTED_ERROR,
1373: 'OKL_SQLCODE',
1374: SQLCODE,
1410: x_return_status := OKC_API.G_RET_STS_SUCCESS;
1411:
1412: get_contract_rule_group(
1413: p_api_version => 1.0,
1414: p_init_msg_list => OKL_API.G_FALSE,
1415: p_chr_id => p_chr_id,
1416: p_cle_id => NULL,
1417: p_stream_id => p_stream_id,
1418: p_rgd_code => 'LALEVL',
1430: RETURN;
1431:
1432: EXCEPTION
1433: WHEN check_header_failed THEN
1434: okl_api.set_message(
1435: G_APP_NAME,
1436: G_UNEXPECTED_ERROR,
1437: 'OKL_SQLCODE',
1438: SQLCODE,
1520:
1521: x_return_status := OKC_API.G_RET_STS_ERROR;
1522:
1523: WHEN OTHERS THEN
1524: okl_api.set_message(
1525: G_APP_NAME,
1526: G_UNEXPECTED_ERROR,
1527: 'OKL_SQLCODE',
1528: SQLCODE,
1646: RAISE OKC_API.G_EXCEPTION_ERROR;
1647: END IF;
1648:
1649: IF (l_rule_present = 'Y') THEN -- Rule already present at Line level
1650: okl_api.set_message(
1651: G_APP_NAME,
1652: G_RULE_PRESENT_ERROR
1653: );
1654: RAISE OKC_API.G_EXCEPTION_ERROR;
1668: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1669: END IF;
1670:
1671: IF (l_rg_count = 0) THEN -- No Rule Groups
1672: okl_api.set_message(
1673: G_APP_NAME,
1674: G_NO_HEADER_PAYMENT
1675: );
1676: RAISE OKC_API.G_EXCEPTION_ERROR;
1684: x_tot_capital_amount => l_tot_capital_amount
1685: );
1686:
1687: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1688: okl_api.set_message(
1689: G_APP_NAME,
1690: G_CAPITAL_AMT_ERROR
1691: );
1692: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1798: END IF;
1799: END LOOP;
1800:
1801: --Call End Activity
1802: OKL_API.END_ACTIVITY(x_msg_count => x_msg_count,
1803: x_msg_data => x_msg_data);
1804:
1805:
1806: EXCEPTION
1983: RAISE OKC_API.G_EXCEPTION_ERROR;
1984: END IF;
1985:
1986: IF (l_rule_present = 'Y') THEN -- Rule already present at Line level
1987: okl_api.set_message(
1988: G_APP_NAME,
1989: G_RULE_PRESENT_ERROR
1990: );
1991: RAISE OKC_API.G_EXCEPTION_ERROR;
2005: RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2006: END IF;
2007:
2008: IF (l_rg_count = 0) THEN -- No Rule Groups
2009: okl_api.set_message(
2010: G_APP_NAME,
2011: G_NO_HEADER_PAYMENT
2012: );
2013: RAISE OKC_API.G_EXCEPTION_ERROR;
2060:
2061: END LOOP;
2062:
2063: IF ( l_line_count = 0 ) THEN
2064: okl_api.set_message(
2065: G_APP_NAME,
2066: 'OKL_NO_PROP_TAX_AST'
2067: );
2068: RAISE OKC_API.G_EXCEPTION_ERROR;
2134: END IF;
2135: END LOOP;
2136:
2137: --Call End Activity
2138: OKL_API.END_ACTIVITY(x_msg_count => x_msg_count,
2139: x_msg_data => x_msg_data);
2140:
2141:
2142: EXCEPTION
2304: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
2305: RAISE OKC_API.G_EXCEPTION_ERROR;
2306: END IF;
2307: IF (l_rule_present IS NOT NULL AND l_rule_present = 'Y') THEN -- Rule already present at Line level
2308: okl_api.set_message(
2309: G_APP_NAME,
2310: G_RULE_PRESENT_ERROR
2311: );
2312: RAISE OKC_API.G_EXCEPTION_ERROR;
2313: END IF;
2314:
2315: get_ro_fee_topln_rg(
2316: p_api_version => 1.0,
2317: p_init_msg_list => OKL_API.G_FALSE,
2318: p_chr_id => p_chr_id,
2319: p_cle_id => p_kle_id,
2320: p_stream_id => p_stream_id,
2321: p_rgd_code => 'LALEVL',
2329: END IF;
2330:
2331:
2332: IF (l_rg_count = 0) THEN -- No Rule Groups
2333: okl_api.set_message(
2334: G_APP_NAME,
2335: G_NO_HEADER_PAYMENT
2336: );
2337: RAISE OKC_API.G_EXCEPTION_ERROR;
2392: CLOSE ro_fee_subline_csr;
2393:
2394: -- NO sub-lines found, error out.
2395: IF ( rowCnt < 1 ) THEN
2396: okl_api.set_message(
2397: p_app_name => G_APP_NAME,
2398: p_msg_name => 'OKL_RO_NO_SUB_LNS',
2399: p_token1 => 'FEE_LINE',
2400: p_token1_value => l_fee_name
2469: END IF;
2470: END LOOP;
2471:
2472: --Call End Activity
2473: OKL_API.END_ACTIVITY(x_msg_count => x_msg_count,
2474: x_msg_data => x_msg_data);
2475:
2476:
2477: EXCEPTION
2639: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
2640: RAISE OKC_API.G_EXCEPTION_ERROR;
2641: END IF;
2642: IF (l_rule_present IS NOT NULL AND l_rule_present = 'Y') THEN -- Rule already present at Line level
2643: okl_api.set_message(
2644: G_APP_NAME,
2645: G_RULE_PRESENT_ERROR
2646: );
2647: RAISE OKC_API.G_EXCEPTION_ERROR;
2648: END IF;
2649:
2650: get_ro_fee_topln_rg(
2651: p_api_version => 1.0,
2652: p_init_msg_list => OKL_API.G_FALSE,
2653: p_chr_id => p_chr_id,
2654: p_cle_id => p_kle_id,
2655: p_stream_id => p_stream_id,
2656: p_rgd_code => 'LALEVL',
2664: END IF;
2665:
2666:
2667: IF (l_rg_count = 0) THEN -- No Rule Groups
2668: okl_api.set_message(
2669: G_APP_NAME,
2670: G_NO_HEADER_PAYMENT
2671: );
2672: RAISE OKC_API.G_EXCEPTION_ERROR;
2727: CLOSE ro_fee_subline_csr;
2728:
2729: -- NO sub-lines found, error out.
2730: IF ( rowCnt < 1 ) THEN
2731: okl_api.set_message(
2732: p_app_name => G_APP_NAME,
2733: p_msg_name => 'OKL_RO_NO_SUB_LNS',
2734: p_token1 => 'FEE_LINE',
2735: p_token1_value => l_fee_name
2804: END IF;
2805: END LOOP;
2806:
2807: --Call End Activity
2808: OKL_API.END_ACTIVITY(x_msg_count => x_msg_count,
2809: x_msg_data => x_msg_data);
2810:
2811:
2812: EXCEPTION
3004:
3005: --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3006:
3007: --Call End Activity
3008: OKL_API.END_ACTIVITY(x_msg_count => x_msg_count,
3009: x_msg_data => x_msg_data);
3010:
3011:
3012: EXCEPTION