DBA Data[Home] [Help]

APPS.OKL_PRICING_PVT dependencies on DUAL

Line 152: p_residual_value IN NUMBER,

148: -- bug 2992184. Added p_purpose_code parameter.
149: PROCEDURE get_quote_amortization(p_khr_id IN NUMBER,
150: p_kle_id IN NUMBER,
151: p_investment IN NUMBER,
152: p_residual_value IN NUMBER,
153: p_start_date IN DATE,
154: p_asset_start_date IN DATE,
155: p_term_duration IN NUMBER,
156: x_principal_tbl OUT NOCOPY okl_streams_pub.selv_tbl_type,

Line 627: -- handlig residual value at the last payment

623:
624: l_bk_yield := 0;
625: l_increment := 0.1;
626:
627: -- handlig residual value at the last payment
628: --asset_rents(asset_rents.LAST).se_amount := asset_rents(asset_rents.LAST).se_amount + p_residual_value;
629: ---
630:
631: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN

Line 628: --asset_rents(asset_rents.LAST).se_amount := asset_rents(asset_rents.LAST).se_amount + p_residual_value;

624: l_bk_yield := 0;
625: l_increment := 0.1;
626:
627: -- handlig residual value at the last payment
628: --asset_rents(asset_rents.LAST).se_amount := asset_rents(asset_rents.LAST).se_amount + p_residual_value;
629: ---
630:
631: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
632: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' start with bkg yld ' );

Line 793: l_termination_val := l_termination_val - p_residual_value;

789:
790: l_termination_val := l_termination_val*(1 + l_days*l_bk_yield/360);
791:
792: IF TRUNC(l_end_date) = TRUNC(l_k_end_date) THEN
793: l_termination_val := l_termination_val - p_residual_value;
794: l_term_complete := 'Y';
795: END IF;
796:
797: termination_val(j).se_amount := l_termination_val;

Line 909: l_termination_val := l_termination_val - p_residual_value;

905: pre_tax_income(j).se_amount := l_termination_val*l_days*l_bk_yield/360;
906: END IF;
907: l_termination_val := l_termination_val*(1 + l_days*l_bk_yield/360);
908: IF TRUNC(l_end_date) = TRUNC(l_k_end_date) THEN
909: l_termination_val := l_termination_val - p_residual_value;
910: l_term_complete := 'Y';
911: END IF;
912: termination_val(j).se_amount := l_termination_val;
913: l_se_date := LAST_DAY(l_start_date);

Line 1019: l_termination_val := l_termination_val - p_residual_value;

1015: pre_tax_income(j).se_amount := l_termination_val*l_days*l_bk_yield/360;
1016: END IF;
1017: l_termination_val := l_termination_val*(1 + l_days*l_bk_yield/360);
1018: IF TRUNC(l_end_date) = TRUNC(l_k_end_date) THEN
1019: l_termination_val := l_termination_val - p_residual_value;
1020: l_term_complete := 'Y';
1021: END IF;
1022: termination_val(j).se_amount := l_termination_val;
1023: l_se_date := LAST_DAY(l_start_date);

Line 1102: --l_diff := l_termination_val - p_residual_value;

1098: l_start_date := LAST_DAY(l_start_date) + 1;
1099:
1100: END LOOP;
1101:
1102: --l_diff := l_termination_val - p_residual_value;
1103: l_diff := l_termination_val;
1104: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
1105: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' L_DIFF ' || l_diff );
1106:

Line 1135: -- x_termination_tbl(x_termination_tbl.LAST-j+1).amount := p_residual_value;

1131: END IF;
1132: END LOOP;
1133:
1134: --For j in 1..l_rent_sll.mpp LOOP
1135: -- x_termination_tbl(x_termination_tbl.LAST-j+1).amount := p_residual_value;
1136: --END LOOP;
1137:
1138: l_end_date := LAST_DAY(asset_rents(asset_rents.LAST).se_date);
1139: l_start_date := LAST_DAY(x_termination_tbl(x_termination_tbl.LAST).stream_element_date);

Line 1141: x_termination_tbl(x_termination_tbl.LAST).amount := p_residual_value;

1137:
1138: l_end_date := LAST_DAY(asset_rents(asset_rents.LAST).se_date);
1139: l_start_date := LAST_DAY(x_termination_tbl(x_termination_tbl.LAST).stream_element_date);
1140:
1141: x_termination_tbl(x_termination_tbl.LAST).amount := p_residual_value;
1142:
1143: x_booking_yield := l_bk_yield;
1144: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
1145: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' Booking yield ' || l_bk_yield );

Line 1234: p_residual_value IN NUMBER,

1230: PROCEDURE get_loan_amortization (p_khr_id IN NUMBER,
1231: p_kle_id IN NUMBER,
1232: p_purpose_code IN VARCHAR2,
1233: p_investment IN NUMBER,
1234: p_residual_value IN NUMBER,
1235: p_start_date IN DATE,
1236: p_asset_start_date IN DATE,
1237: p_term_duration IN NUMBER,
1238: p_currency_code IN VARCHAR2, --USED?

Line 1396: --added NVL check on p_residual_value and using the local variable in the

1392: l_iir NUMBER := nvl(p_asset_iir_guess, 0);
1393: l_bk_yield NUMBER := nvl(p_bkg_yield_guess, 0);
1394:
1395: --vthiruva..Fix for bug# 4060958
1396: --added NVL check on p_residual_value and using the local variable in the
1397: --calculations to prevent errors due to null being passed in p_residual_value
1398: l_residual_value NUMBER := nvl(p_residual_value, 0);
1399: l_rent_period_end DATE;
1400: l_k_end_date DATE := (ADD_MONTHS(p_start_date, p_term_duration) - 1);

Line 1397: --calculations to prevent errors due to null being passed in p_residual_value

1393: l_bk_yield NUMBER := nvl(p_bkg_yield_guess, 0);
1394:
1395: --vthiruva..Fix for bug# 4060958
1396: --added NVL check on p_residual_value and using the local variable in the
1397: --calculations to prevent errors due to null being passed in p_residual_value
1398: l_residual_value NUMBER := nvl(p_residual_value, 0);
1399: l_rent_period_end DATE;
1400: l_k_end_date DATE := (ADD_MONTHS(p_start_date, p_term_duration) - 1);
1401: l_total_periods NUMBER := 0;

Line 1398: l_residual_value NUMBER := nvl(p_residual_value, 0);

1394:
1395: --vthiruva..Fix for bug# 4060958
1396: --added NVL check on p_residual_value and using the local variable in the
1397: --calculations to prevent errors due to null being passed in p_residual_value
1398: l_residual_value NUMBER := nvl(p_residual_value, 0);
1399: l_rent_period_end DATE;
1400: l_k_end_date DATE := (ADD_MONTHS(p_start_date, p_term_duration) - 1);
1401: l_total_periods NUMBER := 0;
1402: l_term_complete VARCHAR2(1) := 'N';

Line 1423: from dual where Exists(

1419: lx_return_status VARCHAR2(1);
1420:
1421: Cursor fee_type_csr IS
1422: Select 'Y' What
1423: from dual where Exists(
1424: SELECT nvl(kle.fee_type, 'XYZ'),
1425: nvl(lse.lty_code, 'XYZ')
1426: FROM okc_k_lines_b cle,
1427: okl_k_lines kle,

Line 1503: l_residuals okl_pricing_utils_pvt.cash_inflows_tbl_type;

1499: x_msg_count NUMBER;
1500: x_msg_data VARCHAR2(4000);
1501: lx_pricing_parameter_rec okl_pricing_utils_pvt.pricing_parameter_rec_type;
1502: l_cf_inflows okl_pricing_utils_pvt.cash_inflows_tbl_type;
1503: l_residuals okl_pricing_utils_pvt.cash_inflows_tbl_type;
1504: l_termination_tbl okl_pricing_utils_pvt.cash_inflows_tbl_type;
1505: l_pre_tax_inc_tbl okl_pricing_utils_pvt.cash_inflows_tbl_type;
1506: -- End: Modifications done for the Prospective Rebooking Enhancement
1507:

Line 1765: l_payment := l_residual_value;

1761: END LOOP;
1762:
1763: -- udhenuko Bug 5046430 Fix -start for get_loan_amortization
1764: -- terminal value of the asset considered in the calculation of IIR
1765: l_payment := l_residual_value;
1766: l_days := OKL_PRICING_UTILS_PVT.get_day_count(
1767: p_start_date => asset_rents(asset_rents.LAST).se_date,
1768: p_days_in_month => l_day_convention_month,
1769: p_days_in_year => l_day_convention_year,

Line 2022: -- 1. (c) Asset Residual Values

2018: l_cf_inflows(i).cf_date || ' | ' || l_cf_inflows(i).is_arrears
2019: || ' | ' || l_cf_inflows(i).cf_purpose );
2020: END LOOP;
2021: END IF;
2022: -- 1. (c) Asset Residual Values
2023: print( l_prog_name, 'Handling the Residual Value Stream ');
2024: IF p_residual_value IS NOT NULL
2025: THEN
2026: -- Just need to populate the Amount, nothing else needed

Line 2023: print( l_prog_name, 'Handling the Residual Value Stream ');

2019: || ' | ' || l_cf_inflows(i).cf_purpose );
2020: END LOOP;
2021: END IF;
2022: -- 1. (c) Asset Residual Values
2023: print( l_prog_name, 'Handling the Residual Value Stream ');
2024: IF p_residual_value IS NOT NULL
2025: THEN
2026: -- Just need to populate the Amount, nothing else needed
2027: l_residuals(1).cf_amount := p_residual_value;

Line 2024: IF p_residual_value IS NOT NULL

2020: END LOOP;
2021: END IF;
2022: -- 1. (c) Asset Residual Values
2023: print( l_prog_name, 'Handling the Residual Value Stream ');
2024: IF p_residual_value IS NOT NULL
2025: THEN
2026: -- Just need to populate the Amount, nothing else needed
2027: l_residuals(1).cf_amount := p_residual_value;
2028: END IF;

Line 2027: l_residuals(1).cf_amount := p_residual_value;

2023: print( l_prog_name, 'Handling the Residual Value Stream ');
2024: IF p_residual_value IS NOT NULL
2025: THEN
2026: -- Just need to populate the Amount, nothing else needed
2027: l_residuals(1).cf_amount := p_residual_value;
2028: END IF;
2029: -- Populate the Cash Inflows and Residual Inflows to the Pricing Param Table
2030: lx_pricing_parameter_rec.cash_inflows := l_cf_inflows;
2031: lx_pricing_parameter_rec.residual_inflows := l_residuals;

Line 2029: -- Populate the Cash Inflows and Residual Inflows to the Pricing Param Table

2025: THEN
2026: -- Just need to populate the Amount, nothing else needed
2027: l_residuals(1).cf_amount := p_residual_value;
2028: END IF;
2029: -- Populate the Cash Inflows and Residual Inflows to the Pricing Param Table
2030: lx_pricing_parameter_rec.cash_inflows := l_cf_inflows;
2031: lx_pricing_parameter_rec.residual_inflows := l_residuals;
2032: -- Step 2:
2033: -- Get the Day Convention Method, as we have days in year and days in month

Line 2031: lx_pricing_parameter_rec.residual_inflows := l_residuals;

2027: l_residuals(1).cf_amount := p_residual_value;
2028: END IF;
2029: -- Populate the Cash Inflows and Residual Inflows to the Pricing Param Table
2030: lx_pricing_parameter_rec.cash_inflows := l_cf_inflows;
2031: lx_pricing_parameter_rec.residual_inflows := l_residuals;
2032: -- Step 2:
2033: -- Get the Day Convention Method, as we have days in year and days in month
2034: -- Validations here ..
2035: okl_pricing_utils_pvt.get_day_count_method(

Line 2283: l_residual_value NUMBER := NULL;

2279: l_end_date DATE := NULL;
2280: l_se_date DATE := NULL;
2281: l_termination_val NUMBER := NULL;
2282: l_asset_cost NUMBER := NULL;
2283: l_residual_value NUMBER := NULL;
2284: l_days NUMBER := NULL;
2285: l_bk_yield NUMBER := 0;
2286: l_k_end_date DATE;
2287: l_term_complete VARCHAR2(1) := 'N';

Line 2519: -- Getting the Residual value

2515: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2516: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
2517: RAISE OKL_API.G_EXCEPTION_ERROR;
2518: END IF;
2519: -- Getting the Residual value
2520: OKL_LA_STREAM_PVT.get_so_residual_value(
2521: p_khr_id => p_khr_id,
2522: p_kle_id => p_kle_id,
2523: p_subside_yn => l_subside_yn,

Line 2520: OKL_LA_STREAM_PVT.get_so_residual_value(

2516: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
2517: RAISE OKL_API.G_EXCEPTION_ERROR;
2518: END IF;
2519: -- Getting the Residual value
2520: OKL_LA_STREAM_PVT.get_so_residual_value(
2521: p_khr_id => p_khr_id,
2522: p_kle_id => p_kle_id,
2523: p_subside_yn => l_subside_yn,
2524: x_return_status => x_return_status,

Line 2525: x_residual_value => l_residual_value,

2521: p_khr_id => p_khr_id,
2522: p_kle_id => p_kle_id,
2523: p_subside_yn => l_subside_yn,
2524: x_return_status => x_return_status,
2525: x_residual_value => l_residual_value,
2526: x_start_date => ld_res_start_date);
2527: IF x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
2528: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2529: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN

Line 2533: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_api_name || ' cost ' || l_asset_cost || ' residual value ' || l_residual_value);

2529: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
2530: RAISE OKL_API.G_EXCEPTION_ERROR;
2531: END IF;
2532: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
2533: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_api_name || ' cost ' || l_asset_cost || ' residual value ' || l_residual_value);
2534: END IF;
2535: l_k_end_date := (ADD_MONTHS(ld_asset_start_date, l_rent_sll.term_duration) - 1);
2536: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
2537: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_api_name || ' # of payments '||TO_CHAR(asset_rents.COUNT));

Line 2637: l_termination_val := l_termination_val - l_residual_value;

2633: END IF;
2634: l_termination_val := l_termination_val*(1 + l_days*l_bk_yield/360);
2635: --l_termination_val := l_termination_val*(1 + l_days*l_bk_yield/360);
2636: IF trunc(l_end_date) = trunc(l_k_end_date) THEN
2637: l_termination_val := l_termination_val - l_residual_value;
2638: l_term_complete := 'Y';
2639: END IF;
2640: l_se_date := LAST_DAY(l_start_date);
2641: IF TO_CHAR(LAST_DAY(l_se_date), 'DD') = '31' THEN

Line 2862: l_residual_value NUMBER := 0;

2858: l_prev_incr_sign_rate NUMBER;
2859: l_payment_inflow NUMBER := 0;
2860: l_payment_inter NUMBER := 0;
2861: l_asset_cost NUMBER := 0;
2862: l_residual_value NUMBER := 0;
2863: ld_res_pay_start_date DATE;
2864: ld_asset_start_date DATE;
2865: l_subside_yn VARCHAR2(1) := NVL(p_subside_yn,'N');
2866: l_khr_start_date DATE;

Line 3028: -- Gets the Asset residual value

3024: AND slh.rule_information_category = 'LASLH'
3025: AND TO_NUMBER(slh.object1_id1) = stm.sty_id
3026: AND TO_CHAR(slh.id) = sll.object2_id1
3027: AND sll.rule_information_category = 'LASLL';
3028: -- Gets the Asset residual value
3029: CURSOR c_asset_rvs(p_khr_id NUMBER,
3030: p_kle_id NUMBER,
3031: p_line_type VARCHAR2)
3032: IS

Line 3420: -- Collecting the Residual Value amount

3416: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3417: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
3418: RAISE OKL_API.G_EXCEPTION_ERROR;
3419: END IF;
3420: -- Collecting the Residual Value amount
3421: -- Here since the Assets are associated to one so_payment line
3422: -- we sum up to get actual residual value , residual value percent
3423: -- are stored in rules
3424: FOR l_asset_rv IN c_asset_rvs(p_khr_id => p_khr_id,

Line 3422: -- we sum up to get actual residual value , residual value percent

3418: RAISE OKL_API.G_EXCEPTION_ERROR;
3419: END IF;
3420: -- Collecting the Residual Value amount
3421: -- Here since the Assets are associated to one so_payment line
3422: -- we sum up to get actual residual value , residual value percent
3423: -- are stored in rules
3424: FOR l_asset_rv IN c_asset_rvs(p_khr_id => p_khr_id,
3425: p_kle_id => p_kle_id,
3426: p_line_type => l_line_type) LOOP

Line 3428: OKL_LA_STREAM_PVT.get_so_residual_value(p_khr_id => p_khr_id,

3424: FOR l_asset_rv IN c_asset_rvs(p_khr_id => p_khr_id,
3425: p_kle_id => p_kle_id,
3426: p_line_type => l_line_type) LOOP
3427: p := p + 1;
3428: OKL_LA_STREAM_PVT.get_so_residual_value(p_khr_id => p_khr_id,
3429: p_kle_id => p_kle_id,
3430: p_subside_yn => l_subside_yn,
3431: x_return_status => x_return_status,
3432: x_residual_value => rv_tbl(p).cf_amount,

Line 3432: x_residual_value => rv_tbl(p).cf_amount,

3428: OKL_LA_STREAM_PVT.get_so_residual_value(p_khr_id => p_khr_id,
3429: p_kle_id => p_kle_id,
3430: p_subside_yn => l_subside_yn,
3431: x_return_status => x_return_status,
3432: x_residual_value => rv_tbl(p).cf_amount,
3433: x_start_date => ld_res_pay_start_date);
3434: IF x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
3435: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR);
3436: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN

Line 3439: l_residual_value := rv_tbl(p).cf_amount;

3435: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR);
3436: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
3437: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_ERROR);
3438: END IF;
3439: l_residual_value := rv_tbl(p).cf_amount;
3440: rv_tbl(p).cf_date := l_asset_rv.end_date;
3441: rv_tbl(p).cf_dpp := l_asset_rv.days_per_period;
3442: rv_tbl(p).cf_ppy := l_asset_rv.periods_per_year;
3443: OKL_PRICING_PVT.get_rate(p_khr_id => p_khr_id,

Line 3477: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_api_name || 'after residual values #' || p|| x_return_status);

3473: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_ERROR);
3474: END IF;
3475: END LOOP;
3476: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
3477: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_api_name || 'after residual values #' || p|| x_return_status);
3478: END IF;
3479: IF x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
3480: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3481: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN

Line 4245: from dual

4241: AND sll.rule_information_category = 'LASLL';
4242:
4243: Cursor c_link_pmnts( chrId NUMBER, kleId NUMBER ) IS
4244: Select 'Y' What
4245: from dual
4246: Where Exists(Select crl.id slh_id
4247: From OKC_RULE_GROUPS_B crg,
4248: OKC_RULES_B crl,
4249: okc_K_lines_b cle_lnk,

Line 4310: NVL(kle.residual_value, 0) cf_amount,

4306:
4307: CURSOR c_asset_rvs IS
4308: SELECT DISTINCT
4309: kle.id,
4310: NVL(kle.residual_value, 0) cf_amount,
4311: DECODE(sll.object1_id1, 'M', 30, 'Q', 90, 'S', 180, 'A', 360) days_per_period,
4312: DECODE(sll.object1_id1, 'M', 12, 'Q', 4, 'S', 2, 'A', 1) periods_per_year,
4313: DECODE(sll.object1_id1, 'M', 1, 'Q', 3, 'S', 6, 'A', 12) months_per_period,
4314: cle.start_date,

Line 4543: l_residual_value NUMBER;

4539: lx_msg_data VARCHAR2(4000);
4540: l_end_date DATE := ADD_MONTHS(p_start_date, p_term_duration) - 1;
4541: l_time_zero_cost NUMBER := 0;
4542: l_cost NUMBER;
4543: l_residual_value NUMBER;
4544: l_adv_payment NUMBER := 0;
4545: l_subsidy_amount NUMBER := 0;
4546: l_currency_code VARCHAR2(15);
4547: l_precision NUMBER(1);

Line 4772: rv_tbl(p).cf_amount := OKL_AM_UTIL_PVT.get_actual_asset_residual(p_khr_id => p_khr_id,

4768: FOR l_asset_rv IN c_asset_rvs LOOP
4769:
4770: p := p + 1;
4771: If l_asset_rv.sts_code = 'TERMINATED' Then
4772: rv_tbl(p).cf_amount := OKL_AM_UTIL_PVT.get_actual_asset_residual(p_khr_id => p_khr_id,
4773: p_kle_id => l_asset_rv.id); --bug# 4184579
4774: rv_tbl(p).cf_date := l_asset_rv.date_terminated;
4775:
4776: rv_tbl(p).cf_days := OKL_PRICING_UTILS_PVT.get_day_count(p_start_date => p_start_date,

Line 4813: --print( 'Residual Value amount ' || rv_tbl(p).cf_amount);

4809: rv_tbl(p).cf_ppy := l_asset_rv.periods_per_year;
4810:
4811: -- Added for approximation
4812: G_TOT_RV_AMT := G_TOT_RV_AMT + rv_tbl(p).cf_amount;
4813: --print( 'Residual Value amount ' || rv_tbl(p).cf_amount);
4814: END LOOP;
4815: --print( 'Total Inflows amount ' || G_TOT_RV_AMT );
4816:
4817: -- print( l_prog_name, ' asset rvs ' || p );

Line 6297: l_residual_value NUMBER := 0;

6293: l_prev_incr_sign_rate NUMBER;
6294: l_payment_inflow NUMBER := 0;
6295: l_payment_inter NUMBER := 0;
6296: l_asset_cost NUMBER := 0;
6297: l_residual_value NUMBER := 0;
6298: ld_res_pay_start_date DATE;
6299: ld_asset_start_date DATE;
6300: l_subside_yn VARCHAR2(1) := NVL(p_subside_yn,'N');
6301: l_khr_start_date DATE;

Line 6360: -- Gets the Asset residual value

6356: AND slh.rule_information_category = 'LASLH'
6357: AND TO_NUMBER(slh.object1_id1) = stm.sty_id
6358: AND TO_CHAR(slh.id) = sll.object2_id1
6359: AND sll.rule_information_category = 'LASLL';
6360: -- Gets the Asset residual value
6361: CURSOR c_asset_rvs(p_khr_id NUMBER,
6362: p_kle_id NUMBER,
6363: p_line_type VARCHAR2)
6364: IS

Line 6572: -- Collecting the Residual Value amount

6568: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_ERROR);
6569: END IF;
6570: END LOOP;
6571:
6572: -- Collecting the Residual Value amount
6573: -- Here since the Assets are associated to one so_payment line
6574: -- we sum up to get actual residual value , residual value percent
6575: -- are stored in rules
6576: FOR l_asset_rv IN c_asset_rvs(p_khr_id => p_khr_id,

Line 6574: -- we sum up to get actual residual value , residual value percent

6570: END LOOP;
6571:
6572: -- Collecting the Residual Value amount
6573: -- Here since the Assets are associated to one so_payment line
6574: -- we sum up to get actual residual value , residual value percent
6575: -- are stored in rules
6576: FOR l_asset_rv IN c_asset_rvs(p_khr_id => p_khr_id,
6577: p_kle_id => p_kle_id,
6578: p_line_type => l_line_type) LOOP

Line 6580: OKL_LA_STREAM_PVT.get_so_residual_value(p_khr_id => p_khr_id,

6576: FOR l_asset_rv IN c_asset_rvs(p_khr_id => p_khr_id,
6577: p_kle_id => p_kle_id,
6578: p_line_type => l_line_type) LOOP
6579: p := p + 1;
6580: OKL_LA_STREAM_PVT.get_so_residual_value(p_khr_id => p_khr_id,
6581: p_kle_id => p_kle_id,
6582: p_subside_yn => l_subside_yn,
6583: x_return_status => x_return_status,
6584: x_residual_value => rv_tbl(p).cf_amount,

Line 6584: x_residual_value => rv_tbl(p).cf_amount,

6580: OKL_LA_STREAM_PVT.get_so_residual_value(p_khr_id => p_khr_id,
6581: p_kle_id => p_kle_id,
6582: p_subside_yn => l_subside_yn,
6583: x_return_status => x_return_status,
6584: x_residual_value => rv_tbl(p).cf_amount,
6585: x_start_date => ld_res_pay_start_date);
6586: IF x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
6587: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR);
6588: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN

Line 6591: l_residual_value := rv_tbl(p).cf_amount;

6587: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR);
6588: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
6589: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_ERROR);
6590: END IF;
6591: l_residual_value := rv_tbl(p).cf_amount;
6592: rv_tbl(p).cf_date := l_asset_rv.end_date;
6593: rv_tbl(p).cf_dpp := l_asset_rv.days_per_period;
6594: rv_tbl(p).cf_ppy := l_asset_rv.periods_per_year;
6595: OKL_PRICING_PVT.get_rate(p_khr_id => p_khr_id,

Line 6629: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_api_name || 'after residual values #' || p|| x_return_status);

6625: EXIT WHEN (x_return_status = OKL_API.G_RET_STS_ERROR);
6626: END IF;
6627: END LOOP;
6628: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
6629: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_api_name || 'after residual values #' || p|| x_return_status);
6630: END IF;
6631: IF x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
6632: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
6633: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN

Line 7041: SELECT SUM(to_number(nvl(rul_rv.rule_information2,rul_rv.rule_information4))) Residual_value,

7037:
7038: l_hdr c_hdr%ROWTYPE;
7039:
7040: Cursor c_rv IS
7041: SELECT SUM(to_number(nvl(rul_rv.rule_information2,rul_rv.rule_information4))) Residual_value,
7042: DECODE(rul_sll.object1_id1, 'M', 30, 'Q', 90, 'S', 180, 'A', 360) days_per_period,
7043: DECODE(rul_sll.object1_id1, 'M', 12, 'Q', 4, 'S', 2, 'A', 1) periods_per_year,
7044: DECODE(rul_sll.object1_id1, 'M', 1, 'Q', 3, 'S', 6, 'A', 12) months_per_period,
7045: cle_so.id cle_id,

Line 7105: l_residual_value NUMBER;

7101: l_payment NUMBER;
7102: l_payment_count NUMBER;
7103:
7104: l_capital_cost NUMBER;
7105: l_residual_value NUMBER;
7106: l_start_date DATE;
7107:
7108: Cursor l_strms_csr Is
7109: Select id

Line 7182: From dual

7178: j BINARY_INTEGER;
7179:
7180: Cursor c_subs Is
7181: Select 'Y'
7182: From dual
7183: where Exists(
7184: select kle.id
7185: from okl_k_lines_full_v kle,
7186: okc_line_styles_b lse,

Line 7313: Okl_la_stream_pvt.get_so_residual_value(p_khr_id,

7309: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
7310: RAISE OKL_API.G_EXCEPTION_ERROR;
7311: END IF;
7312:
7313: Okl_la_stream_pvt.get_so_residual_value(p_khr_id,
7314: p_kle_id,
7315: l_subsidies_yn,
7316: x_return_status,
7317: l_residual_value,

Line 7317: l_residual_value,

7313: Okl_la_stream_pvt.get_so_residual_value(p_khr_id,
7314: p_kle_id,
7315: l_subsidies_yn,
7316: x_return_status,
7317: l_residual_value,
7318: l_start_date);
7319:
7320: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
7321: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' get_residual_value ' || to_char( l_residual_value )|| x_return_status);

Line 7321: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' get_residual_value ' || to_char( l_residual_value )|| x_return_status);

7317: l_residual_value,
7318: l_start_date);
7319:
7320: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
7321: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' get_residual_value ' || to_char( l_residual_value )|| x_return_status);
7322: END IF;
7323: IF x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
7324: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
7325: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN

Line 7448: OPEN c_sty ( 'RESIDUAL VALUE' );

7444:
7445: End If;
7446:
7447:
7448: OPEN c_sty ( 'RESIDUAL VALUE' );
7449: FETCH c_sty INTO r_sty;
7450: CLOSE c_sty;
7451:
7452: OPEN c_rv;

Line 7750: NVL(kle.residual_value, 0) cf_amount,

7746:
7747: CURSOR c_asset_rvs ( kleId NUMBER ) IS
7748: SELECT DISTINCT
7749: kle.id,
7750: NVL(kle.residual_value, 0) cf_amount,
7751: DECODE(sll.object1_id1, 'M', 30, 'Q', 90, 'S', 180, 'A', 360) days_per_period,
7752: DECODE(sll.object1_id1, 'M', 12, 'Q', 4, 'S', 2, 'A', 1) periods_per_year,
7753: DECODE(sll.object1_id1, 'M', 1, 'Q', 3, 'S', 6, 'A', 12) months_per_period,
7754: cle.start_date

Line 7871: l_residual_value NUMBER;

7867: p_start_date DATE;
7868: l_end_date DATE;
7869: l_time_zero_cost NUMBER := 0;
7870: l_cost NUMBER;
7871: l_residual_value NUMBER;
7872: l_adv_payment NUMBER := 0;
7873: l_subsidy_amount NUMBER := 0;
7874: l_currency_code VARCHAR2(15);
7875: l_precision NUMBER(1);

Line 8180: from dual

8176: AND sll.rule_information_category = 'LASLL';
8177:
8178: Cursor c_link_pmnts( chrId NUMBER, kleId NUMBER ) IS
8179: Select 'Y' What
8180: from dual
8181: Where Exists(Select crl.id slh_id
8182: From OKC_RULE_GROUPS_B crg,
8183: OKC_RULES_B crl,
8184: okc_K_lines_b cle_lnk,

Line 8291: NVL(kle.residual_value, 0) cf_amount,

8287:
8288: CURSOR c_asset_rvs IS
8289: SELECT DISTINCT
8290: kle.id,
8291: NVL(kle.residual_value, 0) cf_amount,
8292: DECODE(sll.object1_id1, 'M', 30, 'Q', 90, 'S', 180, 'A', 360) days_per_period,
8293: DECODE(sll.object1_id1, 'M', 12, 'Q', 4, 'S', 2, 'A', 1) periods_per_year,
8294: DECODE(sll.object1_id1, 'M', 1, 'Q', 3, 'S', 6, 'A', 12) months_per_period,
8295: cle.start_date,

Line 8487: l_residual_value NUMBER;

8483: lx_msg_data VARCHAR2(4000);
8484: l_end_date DATE := ADD_MONTHS(p_start_date, p_term_duration) - 1;
8485: l_time_zero_cost NUMBER := 0;
8486: l_cost NUMBER;
8487: l_residual_value NUMBER;
8488: l_adv_payment NUMBER := 0;
8489: l_subsidy_amount NUMBER := 0;
8490: l_currency_code VARCHAR2(15);
8491: l_precision NUMBER(1);

Line 8692: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || '2/ Handling the Residual Values ' );

8688:
8689:
8690:
8691: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
8692: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || '2/ Handling the Residual Values ' );
8693: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || 'Date | Days | Amount | Purpose | DPP | PPY ' );
8694: END IF;
8695: FOR l_asset_rv IN c_asset_rvs LOOP
8696: p := p + 1;

Line 8698: rv_tbl(p).cf_amount := OKL_AM_UTIL_PVT.get_actual_asset_residual(p_khr_id => p_khr_id,

8694: END IF;
8695: FOR l_asset_rv IN c_asset_rvs LOOP
8696: p := p + 1;
8697: If l_asset_rv.sts_code = 'TERMINATED' Then
8698: rv_tbl(p).cf_amount := OKL_AM_UTIL_PVT.get_actual_asset_residual(p_khr_id => p_khr_id,
8699: p_kle_id => l_asset_rv.id); --bug# 4184579
8700: rv_tbl(p).cf_date := l_asset_rv.date_terminated;
8701: rv_tbl(p).cf_days := OKL_PRICING_UTILS_PVT.get_day_count(p_start_date => p_start_date,
8702: p_days_in_month => l_day_convention_month,

Line 9550: SELECT SUM(to_number(nvl(rul_rv.rule_information2,rul_rv.rule_information4))) Residual_value,

9546:
9547: l_hdr c_hdr%ROWTYPE;
9548:
9549: Cursor c_rv IS
9550: SELECT SUM(to_number(nvl(rul_rv.rule_information2,rul_rv.rule_information4))) Residual_value,
9551: DECODE(rul_sll.object1_id1, 'M', 30, 'Q', 90, 'S', 180, 'A', 360) days_per_period,
9552: DECODE(rul_sll.object1_id1, 'M', 12, 'Q', 4, 'S', 2, 'A', 1) periods_per_year,
9553: DECODE(rul_sll.object1_id1, 'M', 1, 'Q', 3, 'S', 6, 'A', 12) months_per_period,
9554: cle_so.id cle_id,

Line 9614: l_residual_value NUMBER;

9610: l_payment NUMBER;
9611: l_payment_count NUMBER;
9612:
9613: l_capital_cost NUMBER;
9614: l_residual_value NUMBER;
9615: l_start_date DATE;
9616:
9617: Cursor l_strms_csr Is
9618: Select id

Line 9728: From dual

9724: j BINARY_INTEGER;
9725:
9726: Cursor c_subs Is
9727: Select 'Y'
9728: From dual
9729: where Exists(
9730: select kle.id
9731: from okl_k_lines_full_v kle,
9732: okc_line_styles_b lse,

Line 9844: Okl_la_stream_pvt.get_so_residual_value(p_khr_id,

9840: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN
9841: RAISE OKL_API.G_EXCEPTION_ERROR;
9842: END IF;
9843:
9844: Okl_la_stream_pvt.get_so_residual_value(p_khr_id,
9845: p_kle_id,
9846: l_subsidies_yn,
9847: x_return_status,
9848: l_residual_value,

Line 9848: l_residual_value,

9844: Okl_la_stream_pvt.get_so_residual_value(p_khr_id,
9845: p_kle_id,
9846: l_subsidies_yn,
9847: x_return_status,
9848: l_residual_value,
9849: l_start_date);
9850:
9851: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
9852: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' get_residual_value ' || to_char( l_residual_value )|| x_return_status);

Line 9852: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' get_residual_value ' || to_char( l_residual_value )|| x_return_status);

9848: l_residual_value,
9849: l_start_date);
9850:
9851: IF (G_IS_DEBUG_STATEMENT_ON = true) THEN
9852: OKL_DEBUG_PUB.LOG_DEBUG(FND_LOG.LEVEL_STATEMENT, G_MODULE, l_prog_name || ' get_residual_value ' || to_char( l_residual_value )|| x_return_status);
9853: END IF;
9854: IF x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
9855: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
9856: ELSIF x_return_status = OKL_API.G_RET_STS_ERROR THEN

Line 9964: OPEN c_sty ( 'RESIDUAL VALUE' );

9960: END IF;
9961:
9962: End If;
9963:
9964: OPEN c_sty ( 'RESIDUAL VALUE' );
9965: FETCH c_sty INTO r_sty;
9966: CLOSE c_sty;
9967:
9968: OPEN c_rv;