29: -- Declare Process Variable
30: -----------------------------------------------------------------
31: l_api_version CONSTANT NUMBER := 1;
32: l_api_name CONSTANT VARCHAR2(30) := 'GENERATE_TOTAL_PV_RENT';
33: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
34:
35: ------------------------------------------------------------
36: -- Declare records: Extension Headers, Extension Lines
37: ------------------------------------------------------------
122:
123:
124: BEGIN
125:
126: x_return_status := OKL_API.G_RET_STS_SUCCESS;
127:
128: IF (l_proc_level >= l_debug_level) THEN
129: FND_LOG.STRING(l_proc_level,'OKL_GENERATE_PV_RENT_PVT','Begin(+)');
130: END IF;
128: IF (l_proc_level >= l_debug_level) THEN
129: FND_LOG.STRING(l_proc_level,'OKL_GENERATE_PV_RENT_PVT','Begin(+)');
130: END IF;
131:
132: l_return_status := OKL_API.START_ACTIVITY(
133: p_api_name => l_api_name,
134: p_pkg_name => g_pkg_name,
135: p_init_msg_list => p_init_msg_list,
136: l_api_version => l_api_version,
137: p_api_version => p_api_version,
138: p_api_type => '_PVT',
139: x_return_status => l_return_status);
140:
141: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
142: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
143: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
144: RAISE OKL_API.G_EXCEPTION_ERROR;
145: END IF;
138: p_api_type => '_PVT',
139: x_return_status => l_return_status);
140:
141: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
142: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
143: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
144: RAISE OKL_API.G_EXCEPTION_ERROR;
145: END IF;
146:
139: x_return_status => l_return_status);
140:
141: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
142: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
143: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
144: RAISE OKL_API.G_EXCEPTION_ERROR;
145: END IF;
146:
147: OPEN c_hdr_csr (p_khr_id);
140:
141: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
142: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
143: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
144: RAISE OKL_API.G_EXCEPTION_ERROR;
145: END IF;
146:
147: OPEN c_hdr_csr (p_khr_id);
148: FETCH c_hdr_csr INTO l_hdr_csr_rec;
159: p_khr_id => p_khr_id,
160: x_pricing_engine => l_pricing_engine,
161: x_return_status => x_return_status);
162:
163: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
164: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
165: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
166: RAISE OKL_API.G_EXCEPTION_ERROR;
167: END IF;
160: x_pricing_engine => l_pricing_engine,
161: x_return_status => x_return_status);
162:
163: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
164: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
165: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
166: RAISE OKL_API.G_EXCEPTION_ERROR;
167: END IF;
168:
161: x_return_status => x_return_status);
162:
163: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
164: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
165: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
166: RAISE OKL_API.G_EXCEPTION_ERROR;
167: END IF;
168:
169: -- l_pricing_engine = 'EXTERNAL'
162:
163: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
164: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
165: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
166: RAISE OKL_API.G_EXCEPTION_ERROR;
167: END IF;
168:
169: -- l_pricing_engine = 'EXTERNAL'
170:
177: x_days_in_year => l_day_convention_year,
178: x_return_status => l_return_status);
179:
180:
181: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
182: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
183: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
184: RAISE OKL_API.G_EXCEPTION_ERROR;
185: END IF;
178: x_return_status => l_return_status);
179:
180:
181: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
182: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
183: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
184: RAISE OKL_API.G_EXCEPTION_ERROR;
185: END IF;
186:
179:
180:
181: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
182: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
183: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
184: RAISE OKL_API.G_EXCEPTION_ERROR;
185: END IF;
186:
187: IF l_stat_level >= l_debug_level THEN
180:
181: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
182: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
183: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
184: RAISE OKL_API.G_EXCEPTION_ERROR;
185: END IF;
186:
187: IF l_stat_level >= l_debug_level THEN
188: fnd_log.STRING(l_stat_level,
206: IF l_stat_level >= l_debug_level THEN
207: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.generate_total_pv_rent','l_arrears_pay_dates_option :'||l_arrears_pay_dates_option);
208: END IF;
209:
210: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
211: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
212: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
213: RAISE OKL_API.G_EXCEPTION_ERROR;
214: END IF;
207: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.generate_total_pv_rent','l_arrears_pay_dates_option :'||l_arrears_pay_dates_option);
208: END IF;
209:
210: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
211: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
212: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
213: RAISE OKL_API.G_EXCEPTION_ERROR;
214: END IF;
215:
208: END IF;
209:
210: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
211: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
212: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
213: RAISE OKL_API.G_EXCEPTION_ERROR;
214: END IF;
215:
216: SELECT NVL(precision,0)
209:
210: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
211: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
212: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
213: RAISE OKL_API.G_EXCEPTION_ERROR;
214: END IF;
215:
216: SELECT NVL(precision,0)
217: INTO l_precision
257: x_msg_count => x_msg_count,
258: x_msg_data => x_msg_data
259: );
260:
261: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
262: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
263: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
264: RAISE OKL_API.G_EXCEPTION_ERROR;
265: END IF;
258: x_msg_data => x_msg_data
259: );
260:
261: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
262: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
263: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
264: RAISE OKL_API.G_EXCEPTION_ERROR;
265: END IF;
266:
259: );
260:
261: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
262: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
263: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
264: RAISE OKL_API.G_EXCEPTION_ERROR;
265: END IF;
266:
267: l_total_rent_inflow_tbl := lx_total_rent_inflow_tbl;
260:
261: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
262: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
263: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
264: RAISE OKL_API.G_EXCEPTION_ERROR;
265: END IF;
266:
267: l_total_rent_inflow_tbl := lx_total_rent_inflow_tbl;
268:
320: p_arrears => 'Y',
321: x_return_status => l_return_status);
322:
323:
324: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
325: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
326: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
327: RAISE OKL_API.G_EXCEPTION_ERROR;
328: END IF;
321: x_return_status => l_return_status);
322:
323:
324: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
325: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
326: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
327: RAISE OKL_API.G_EXCEPTION_ERROR;
328: END IF;
329:
322:
323:
324: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
325: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
326: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
327: RAISE OKL_API.G_EXCEPTION_ERROR;
328: END IF;
329:
330: END IF;
323:
324: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
325: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
326: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
327: RAISE OKL_API.G_EXCEPTION_ERROR;
328: END IF;
329:
330: END IF;
331:
369: x_msg_count => x_msg_count,
370: x_msg_data => x_msg_data
371: );
372:
373: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
374: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
375: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
376: RAISE OKL_API.G_EXCEPTION_ERROR;
377: END IF;
370: x_msg_data => x_msg_data
371: );
372:
373: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
374: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
375: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
376: RAISE OKL_API.G_EXCEPTION_ERROR;
377: END IF;
378:
371: );
372:
373: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
374: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
375: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
376: RAISE OKL_API.G_EXCEPTION_ERROR;
377: END IF;
378:
379: IF l_stat_level >= l_debug_level THEN
372:
373: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
374: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
375: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
376: RAISE OKL_API.G_EXCEPTION_ERROR;
377: END IF;
378:
379: IF l_stat_level >= l_debug_level THEN
380: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.generate_total_pv_rent','l_iir: '||TO_CHAR(l_iir));
412: IF (l_proc_level >= l_debug_level) THEN
413: FND_LOG.STRING(l_proc_level,'OKL_GENERATE_PV_RENT_PVT','End(-)');
414: END IF;
415:
416: okl_api.end_activity(x_msg_count => x_msg_count
417: ,x_msg_data => x_msg_data);
418:
419:
420: EXCEPTION
421: ------------------------------------------------------------
422: -- Exception handling
423: ------------------------------------------------------------
424:
425: WHEN OKL_API.G_EXCEPTION_ERROR THEN
426:
427: IF c_asset_id_csr%ISOPEN THEN
428: CLOSE c_asset_id_csr;
429: END IF;
427: IF c_asset_id_csr%ISOPEN THEN
428: CLOSE c_asset_id_csr;
429: END IF;
430:
431: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
432: p_api_name => l_api_name,
433: p_pkg_name => G_PKG_NAME,
434: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
435: x_msg_count => x_msg_count,
430:
431: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
432: p_api_name => l_api_name,
433: p_pkg_name => G_PKG_NAME,
434: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
435: x_msg_count => x_msg_count,
436: x_msg_data => x_msg_data,
437: p_api_type => '_PVT');
438:
435: x_msg_count => x_msg_count,
436: x_msg_data => x_msg_data,
437: p_api_type => '_PVT');
438:
439: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
440:
441: IF c_asset_id_csr%ISOPEN THEN
442: CLOSE c_asset_id_csr;
443: END IF;
441: IF c_asset_id_csr%ISOPEN THEN
442: CLOSE c_asset_id_csr;
443: END IF;
444:
445: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
446: p_api_name => l_api_name,
447: p_pkg_name => G_PKG_NAME,
448: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
449: x_msg_count => x_msg_count,
444:
445: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
446: p_api_name => l_api_name,
447: p_pkg_name => G_PKG_NAME,
448: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
449: x_msg_count => x_msg_count,
450: x_msg_data => x_msg_data,
451: p_api_type => '_PVT');
452:
455: IF c_asset_id_csr%ISOPEN THEN
456: CLOSE c_asset_id_csr;
457: END IF;
458:
459: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
460: p_api_name => l_api_name,
461: p_pkg_name => G_PKG_NAME,
462: p_exc_name => 'OTHERS',
463: x_msg_count => x_msg_count,
500: -- Declare Process Variable
501: -----------------------------------------------------------------
502: l_api_version CONSTANT NUMBER := 1;
503: l_api_name CONSTANT VARCHAR2(30) := 'GENERATE_ASSET_PV_RENT';
504: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
505:
506:
507: ------------------------------------------------------------
508: -- Declare records: Extension Headers, Extension Lines
554: l_ppy NUMBER;
555:
556: BEGIN
557:
558: x_return_status := OKL_API.G_RET_STS_SUCCESS;
559:
560: IF l_stat_level >= l_debug_level THEN
561: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.generate_asset_rent','Begin(+)');
562: END IF;
560: IF l_stat_level >= l_debug_level THEN
561: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.generate_asset_rent','Begin(+)');
562: END IF;
563:
564: l_return_status := OKL_API.START_ACTIVITY(
565: p_api_name => l_api_name,
566: p_pkg_name => g_pkg_name,
567: p_init_msg_list => p_init_msg_list,
568: l_api_version => l_api_version,
569: p_api_version => p_api_version,
570: p_api_type => '_PVT',
571: x_return_status => l_return_status);
572:
573: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
574: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
575: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
576: RAISE OKL_API.G_EXCEPTION_ERROR;
577: END IF;
570: p_api_type => '_PVT',
571: x_return_status => l_return_status);
572:
573: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
574: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
575: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
576: RAISE OKL_API.G_EXCEPTION_ERROR;
577: END IF;
578:
571: x_return_status => l_return_status);
572:
573: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
574: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
575: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
576: RAISE OKL_API.G_EXCEPTION_ERROR;
577: END IF;
578:
579:
572:
573: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
574: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
575: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
576: RAISE OKL_API.G_EXCEPTION_ERROR;
577: END IF;
578:
579:
580:
586: LOOP
587:
588: IF l_payment_details_csr_rec.start_date IS NULL
589: THEN
590: OKL_API.SET_MESSAGE (p_app_name => G_APP_NAME,
591: p_msg_name => 'OKL_NO_SLL_SDATE');
592: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
593: END IF;
594:
588: IF l_payment_details_csr_rec.start_date IS NULL
589: THEN
590: OKL_API.SET_MESSAGE (p_app_name => G_APP_NAME,
591: p_msg_name => 'OKL_NO_SLL_SDATE');
592: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
593: END IF;
594:
595: IF((l_payment_details_csr_rec.periods IS NULL) AND (l_payment_details_csr_rec.stub_days IS NOT NULL)) THEN
596: --Set the recurrence date to null for stub payment
631: x_msg_count => x_msg_count,
632: x_msg_data => x_msg_data
633: );
634:
635: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
636: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
637: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
638: RAISE OKL_API.G_EXCEPTION_ERROR;
639: END IF;
632: x_msg_data => x_msg_data
633: );
634:
635: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
636: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
637: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
638: RAISE OKL_API.G_EXCEPTION_ERROR;
639: END IF;
640:
633: );
634:
635: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
636: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
637: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
638: RAISE OKL_API.G_EXCEPTION_ERROR;
639: END IF;
640:
641: l_rent_inflow_tbl := lx_rent_inflow_tbl;
634:
635: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
636: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
637: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
638: RAISE OKL_API.G_EXCEPTION_ERROR;
639: END IF;
640:
641: l_rent_inflow_tbl := lx_rent_inflow_tbl;
642:
658: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.generate_asset_rent','End(-)');
659: END IF;
660:
661:
662: okl_api.end_activity(x_msg_count => x_msg_count
663: ,x_msg_data => x_msg_data);
664:
665:
666:
668: ------------------------------------------------------------
669: -- Exception handling
670: ------------------------------------------------------------
671:
672: WHEN OKL_API.G_EXCEPTION_ERROR THEN
673:
674: IF c_payment_details_csr%ISOPEN THEN
675: CLOSE c_payment_details_csr;
676: END IF;
674: IF c_payment_details_csr%ISOPEN THEN
675: CLOSE c_payment_details_csr;
676: END IF;
677:
678: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
679: p_api_name => l_api_name,
680: p_pkg_name => G_PKG_NAME,
681: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
682: x_msg_count => x_msg_count,
677:
678: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
679: p_api_name => l_api_name,
680: p_pkg_name => G_PKG_NAME,
681: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
682: x_msg_count => x_msg_count,
683: x_msg_data => x_msg_data,
684: p_api_type => '_PVT');
685:
682: x_msg_count => x_msg_count,
683: x_msg_data => x_msg_data,
684: p_api_type => '_PVT');
685:
686: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
687:
688: IF c_payment_details_csr%ISOPEN THEN
689: CLOSE c_payment_details_csr;
690: END IF;
688: IF c_payment_details_csr%ISOPEN THEN
689: CLOSE c_payment_details_csr;
690: END IF;
691:
692: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
693: p_api_name => l_api_name,
694: p_pkg_name => G_PKG_NAME,
695: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
696: x_msg_count => x_msg_count,
691:
692: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
693: p_api_name => l_api_name,
694: p_pkg_name => G_PKG_NAME,
695: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
696: x_msg_count => x_msg_count,
697: x_msg_data => x_msg_data,
698: p_api_type => '_PVT');
699:
702: IF c_payment_details_csr%ISOPEN THEN
703: CLOSE c_payment_details_csr;
704: END IF;
705:
706: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
707: p_api_name => l_api_name,
708: p_pkg_name => G_PKG_NAME,
709: p_exc_name => 'OTHERS',
710: x_msg_count => x_msg_count,
755: -- Declare Process Variable
756: -----------------------------------------------------------------
757: l_api_version CONSTANT NUMBER := 1;
758: l_api_name CONSTANT VARCHAR2(30) := 'GENERATE_STREAM_ELEMENTS';
759: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
760:
761:
762: ------------------------------------------------------------
763: -- Declare records: Extension Headers, Extension Lines
819: p_days_in_year => p_day_convention_year,
820: p_end_date => x_rent_inflow_tbl(l_rent_inflow_tbl_count + 1).cf_date,
821: p_arrears => x_rent_inflow_tbl(l_rent_inflow_tbl_count + 1).cf_arrears,
822: x_return_status => l_return_status);
823: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
824: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
825: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
826: RAISE OKL_API.G_EXCEPTION_ERROR;
827: END IF;
820: p_end_date => x_rent_inflow_tbl(l_rent_inflow_tbl_count + 1).cf_date,
821: p_arrears => x_rent_inflow_tbl(l_rent_inflow_tbl_count + 1).cf_arrears,
822: x_return_status => l_return_status);
823: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
824: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
825: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
826: RAISE OKL_API.G_EXCEPTION_ERROR;
827: END IF;
828:
821: p_arrears => x_rent_inflow_tbl(l_rent_inflow_tbl_count + 1).cf_arrears,
822: x_return_status => l_return_status);
823: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
824: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
825: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
826: RAISE OKL_API.G_EXCEPTION_ERROR;
827: END IF;
828:
829: ELSE
822: x_return_status => l_return_status);
823: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
824: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
825: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
826: RAISE OKL_API.G_EXCEPTION_ERROR;
827: END IF;
828:
829: ELSE
830:
859:
860:
861: END IF;
862:
863: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
865: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
866: RAISE OKL_API.G_EXCEPTION_ERROR;
867: END IF;
860:
861: END IF;
862:
863: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
865: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
866: RAISE OKL_API.G_EXCEPTION_ERROR;
867: END IF;
868:
861: END IF;
862:
863: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
865: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
866: RAISE OKL_API.G_EXCEPTION_ERROR;
867: END IF;
868:
869: x_rent_inflow_tbl(i).cf_number := i; -- TBD
862:
863: IF l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
865: ELSIF l_return_status = OKL_API.G_RET_STS_ERROR THEN
866: RAISE OKL_API.G_EXCEPTION_ERROR;
867: END IF;
868:
869: x_rent_inflow_tbl(i).cf_number := i; -- TBD
870: x_rent_inflow_tbl(i).cf_arrears := p_arrears_yn;
881: p_end_date => x_rent_inflow_tbl(i).cf_date,
882: p_arrears => x_rent_inflow_tbl(i).cf_arrears,
883: x_return_status => l_return_status);
884:
885: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
886: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
887: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
888: RAISE OKL_API.G_EXCEPTION_ERROR;
889: END IF;
882: p_arrears => x_rent_inflow_tbl(i).cf_arrears,
883: x_return_status => l_return_status);
884:
885: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
886: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
887: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
888: RAISE OKL_API.G_EXCEPTION_ERROR;
889: END IF;
890:
883: x_return_status => l_return_status);
884:
885: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
886: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
887: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
888: RAISE OKL_API.G_EXCEPTION_ERROR;
889: END IF;
890:
891:
884:
885: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
886: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
887: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
888: RAISE OKL_API.G_EXCEPTION_ERROR;
889: END IF;
890:
891:
892: END LOOP;
905: -- Exception handling
906: ------------------------------------------------------------
907:
908:
909: WHEN OKL_API.G_EXCEPTION_ERROR THEN
910:
911: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
912: p_api_name => l_api_name,
913: p_pkg_name => G_PKG_NAME,
907:
908:
909: WHEN OKL_API.G_EXCEPTION_ERROR THEN
910:
911: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
912: p_api_name => l_api_name,
913: p_pkg_name => G_PKG_NAME,
914: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
915: x_msg_count => x_msg_count,
910:
911: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
912: p_api_name => l_api_name,
913: p_pkg_name => G_PKG_NAME,
914: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
915: x_msg_count => x_msg_count,
916: x_msg_data => x_msg_data,
917: p_api_type => '_PVT');
918:
915: x_msg_count => x_msg_count,
916: x_msg_data => x_msg_data,
917: p_api_type => '_PVT');
918:
919: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
920:
921: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
922: p_api_name => l_api_name,
923: p_pkg_name => G_PKG_NAME,
917: p_api_type => '_PVT');
918:
919: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
920:
921: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
922: p_api_name => l_api_name,
923: p_pkg_name => G_PKG_NAME,
924: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
925: x_msg_count => x_msg_count,
920:
921: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
922: p_api_name => l_api_name,
923: p_pkg_name => G_PKG_NAME,
924: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
925: x_msg_count => x_msg_count,
926: x_msg_data => x_msg_data,
927: p_api_type => '_PVT');
928:
928:
929:
930: WHEN OTHERS THEN
931:
932: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
933: p_api_name => l_api_name,
934: p_pkg_name => G_PKG_NAME,
935: p_exc_name => 'OTHERS',
936: x_msg_count => x_msg_count,
966: -- Declare Process Variable
967: -----------------------------------------------------------------
968: l_api_version CONSTANT NUMBER := 1;
969: l_api_name CONSTANT VARCHAR2(30) := 'COMPUTE_IIR';
970: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
971:
972:
973: ------------------------------------------------------------
974: -- Declare records: Extension Headers, Extension Lines
1012:
1013:
1014: BEGIN
1015:
1016: x_return_status := OKL_API.G_RET_STS_SUCCESS;
1017:
1018: IF l_stat_level >= l_debug_level THEN
1019: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.compute_iir','Begin(+)');
1020: fnd_log.STRING(l_stat_level,'OKL_GENERATE_PV_RENT_PVT.compute_iir','Initial iir estimated ' || TO_CHAR(l_iir));
1049: l_periods := l_days_in_future / l_cf_dpp;
1050:
1051: IF (l_periods < 1) AND (l_iir/l_cf_ppy <= -1) THEN
1052:
1053: OKL_API.SET_MESSAGE (p_app_name => G_APP_NAME,
1054: p_msg_name => 'OKL_IRR_ZERO_DIV');
1055:
1056: RAISE OKL_API.G_EXCEPTION_ERROR;
1057:
1052:
1053: OKL_API.SET_MESSAGE (p_app_name => G_APP_NAME,
1054: p_msg_name => 'OKL_IRR_ZERO_DIV');
1055:
1056: RAISE OKL_API.G_EXCEPTION_ERROR;
1057:
1058: END IF;
1059:
1060: l_npv := l_npv + (l_cf_amount / POWER((1 + l_iir/l_cf_ppy), l_periods));
1205: ------------------------------------------------------------
1206: -- Exception handling
1207: ------------------------------------------------------------
1208:
1209: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1210:
1211: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
1212: p_api_name => l_api_name,
1213: p_pkg_name => G_PKG_NAME,
1207: ------------------------------------------------------------
1208:
1209: WHEN OKL_API.G_EXCEPTION_ERROR THEN
1210:
1211: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
1212: p_api_name => l_api_name,
1213: p_pkg_name => G_PKG_NAME,
1214: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1215: x_msg_count => x_msg_count,
1210:
1211: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
1212: p_api_name => l_api_name,
1213: p_pkg_name => G_PKG_NAME,
1214: p_exc_name => 'OKL_API.G_RET_STS_ERROR',
1215: x_msg_count => x_msg_count,
1216: x_msg_data => x_msg_data,
1217: p_api_type => '_PVT');
1218:
1215: x_msg_count => x_msg_count,
1216: x_msg_data => x_msg_data,
1217: p_api_type => '_PVT');
1218:
1219: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1220:
1221: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
1222: p_api_name => l_api_name,
1223: p_pkg_name => G_PKG_NAME,
1217: p_api_type => '_PVT');
1218:
1219: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1220:
1221: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
1222: p_api_name => l_api_name,
1223: p_pkg_name => G_PKG_NAME,
1224: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
1225: x_msg_count => x_msg_count,
1220:
1221: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
1222: p_api_name => l_api_name,
1223: p_pkg_name => G_PKG_NAME,
1224: p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
1225: x_msg_count => x_msg_count,
1226: x_msg_data => x_msg_data,
1227: p_api_type => '_PVT');
1228:
1227: p_api_type => '_PVT');
1228:
1229: WHEN OTHERS THEN
1230:
1231: x_return_status := OKL_API.HANDLE_EXCEPTIONS (
1232: p_api_name => l_api_name,
1233: p_pkg_name => G_PKG_NAME,
1234: p_exc_name => 'OTHERS',
1235: x_msg_count => x_msg_count,