[Home] [Help]
PACKAGE BODY: APPS.OKL_ST_CODE_CONVERSIONS
Source
1 PACKAGE BODY Okl_St_Code_Conversions AS
2 /* $Header: OKLRSCCB.pls 120.14.12010000.2 2009/01/19 12:57:39 rgooty ship $ */
3
4 PROCEDURE CONVERT_DATE(p_date IN DATE,
5 p_date_format IN VARCHAR2,
6 x_char_date OUT NOCOPY VARCHAR2)
7 IS
8 BEGIN
9 IF p_date_format IS NOT NULL THEN
10 x_char_date := TO_CHAR(p_date,p_date_format);
11 ELSE
12 x_char_date := TO_CHAR(p_date,G_DEFAULT_DATE_FORMAT);
13 END IF;
14 EXCEPTION
15 WHEN OTHERS THEN
16 x_char_date := TO_CHAR(p_date,G_DEFAULT_DATE_FORMAT);
17 END CONVERT_DATE;
18
19 PROCEDURE TRANSLATE_COUNTRY(p_country IN VARCHAR2,
20 x_country OUT NOCOPY VARCHAR2)
21 IS
22 l_amp VARCHAR2(1) := '&';
23 BEGIN
24 IF p_country = 'US' THEN
25 x_country := 'U.S.';
26 ELSIF p_country = 'AU' THEN
27 x_country := 'Australia';
28 ELSIF p_country = 'AU' THEN
29 x_country := 'Australia';
30 ELSIF p_country = 'BE' THEN
31 x_country := 'Belgium';
32 ELSIF p_country = 'CA' THEN
33 x_country := 'Canada';
34 ELSIF p_country = 'CN' THEN
35 x_country := 'China';
36 ELSIF p_country = 'GB' THEN
37 x_country := 'United Kingdom';
38 ELSIF p_country = 'FR' THEN
39 x_country := 'France';
40 ELSIF p_country = 'DE' THEN
41 x_country := 'Germany';
42 ELSIF p_country = 'HK' THEN
43 x_country := 'Hong Kong';
44 ELSIF p_country = 'IN' THEN
45 x_country := 'India';
46 ELSIF p_country = 'ID' THEN
47 x_country := 'Indonesia';
48
49 ELSIF p_country = 'IE' THEN
50 x_country := 'Ireland';
51 ELSIF p_country = 'JP' THEN
52 x_country := 'Japan';
53 ELSIF p_country = 'MX' THEN
54 x_country := 'Mexico';
55 ELSIF p_country = 'NL' THEN
56 x_country := 'Netherlands';
57 ELSIF p_country = 'ES' THEN
58 x_country := 'Spain';
59 ELSIF p_country = 'SE' THEN
60 x_country := 'Sweden';
61 ELSIF p_country = 'CH' THEN
62 x_country := 'Switzerland';
63 ELSIF p_country = 'TH' THEN
64 x_country := 'Thailand';
65 ELSIF p_country = 'PR' THEN
66 x_country := 'Puerto Rico';
67 ELSIF p_country = 'AR' THEN
68 x_country := 'Argentina';
69 ELSIF p_country = 'SG' THEN
70 x_country := 'Singapore';
71 ELSIF p_country = 'BR' THEN
72 x_country := 'Brazil';
73 ELSIF p_country = 'DK' THEN
74 x_country := 'Denmark';
75 ELSIF p_country = 'AT' THEN
76 x_country := 'Austria';
77 ELSIF p_country = 'NO' THEN
78 x_country := 'Norway';
79 ELSIF p_country = 'FI' THEN
80 x_country := 'Finland';
81 ELSIF p_country = 'IT' THEN
82 x_country := 'Italy';
83 ELSE
84 x_country := l_amp || 'lt;none' || l_amp || 'gt;';
85 END IF;
86
87 EXCEPTION
88 WHEN OTHERS THEN
89 x_country := p_country;
90 END TRANSLATE_COUNTRY;
91
92 PROCEDURE TRANSLATE_IRS_TAX_TREATMENT(p_irs_tax_treatment IN VARCHAR2,
93 x_irs_tax_treatment OUT NOCOPY VARCHAR2)
94 IS
95 BEGIN
96
97 IF p_irs_tax_treatment = 'LESSOR' THEN
98 x_irs_tax_treatment := 'Lease';
99 ELSIF p_irs_tax_treatment = 'LESSEE' THEN
100 x_irs_tax_treatment := 'CSA';
101 ELSE
102 x_irs_tax_treatment := 'Unknown';
103 END IF;
104
105 EXCEPTION
106 WHEN OTHERS THEN
107 x_irs_tax_treatment := p_irs_tax_treatment;
108 END TRANSLATE_IRS_TAX_TREATMENT;
109 -- gboomina BUG#4508077 modified the signature to include RVI_YN
110 PROCEDURE TRANSLATE_FASB_TREATMENT(p_fasb_treatment IN VARCHAR2,
111 p_rvi_yn IN VARCHAR2,
112 x_fasb_treatment OUT NOCOPY VARCHAR2)
113 IS
114 BEGIN
115 -- gboomina BUG#4508077 if RVI flag is set to yes then return blank
116 IF p_rvi_yn = G_FND_YES THEN
117 x_fasb_treatment := ' ';
118 ELSIF p_fasb_treatment = 'LEASEOP' THEN
119 x_fasb_treatment := 'Operating lease';
120 ELSIF p_fasb_treatment = 'LEASEDF' THEN
121 x_fasb_treatment := 'Capital: Single investor (DFL)';
122 ELSIF p_fasb_treatment = 'LEASEST' THEN
123 x_fasb_treatment := 'Capital: Single investor (DFL)';
124 ELSIF p_fasb_treatment = 'LOAN' THEN
125 x_fasb_treatment := 'Capital: Loan';
126 ELSE
127 x_fasb_treatment := 'not defined';
128 END IF;
129
130 EXCEPTION
131 WHEN OTHERS THEN
132 x_fasb_treatment := p_fasb_treatment;
133 END TRANSLATE_FASB_TREATMENT;
134
135 --Added by dkagrawa on 06-Oct-2005. Overloaded method added when p_rvi_yn is not passed
136 --Bug 4654549 - Start of Changes
137 PROCEDURE TRANSLATE_FASB_TREATMENT(p_fasb_treatment IN VARCHAR2,
138 x_fasb_treatment OUT NOCOPY VARCHAR2)
139 IS
140 BEGIN
141 IF p_fasb_treatment = 'LEASEOP' THEN
142 x_fasb_treatment := 'Operating lease';
143 ELSIF p_fasb_treatment = 'LEASEDF' THEN
144 x_fasb_treatment := 'Capital: Single investor (DFL)';
145 ELSIF p_fasb_treatment = 'LEASEST' THEN
146 x_fasb_treatment := 'Capital: Single investor (DFL)';
147 ELSIF p_fasb_treatment = 'LOAN' THEN
148 x_fasb_treatment := 'Capital: Loan';
149 ELSE
150 x_fasb_treatment := 'not defined';
151 END IF;
152
153 EXCEPTION
154 WHEN OTHERS THEN
155 x_fasb_treatment := p_fasb_treatment;
156 END TRANSLATE_FASB_TREATMENT;
157 --Bug 4654549 - End of Changes
158
159 PROCEDURE TRANSLATE_PURCHASE_OPTION(p_purchase_option IN VARCHAR2,
160 x_purchase_option OUT NOCOPY VARCHAR2)
161 IS
162 BEGIN
163
164 IF p_purchase_option = 'FMV' THEN
165 x_purchase_option := 'FMV';
166 ELSIF p_purchase_option = 'FPO' THEN
167 x_purchase_option := 'Fixed';
168 ELSIF p_purchase_option = 'NONE' THEN
169 x_purchase_option := 'None';
170 ELSIF p_purchase_option = '$1BO' THEN
171 x_purchase_option := 'Fixed';
172 ELSIF p_purchase_option = 'FRV' THEN
173 x_purchase_option := 'None';
174 ELSIF p_purchase_option = 'MONTHLY' THEN
175 x_purchase_option := 'None';
176 ELSE
177
178 x_purchase_option := 'None';
179 END IF;
180
181 EXCEPTION
182 WHEN OTHERS THEN
183 x_purchase_option := p_purchase_option;
184 END TRANSLATE_PURCHASE_OPTION;
185
186 PROCEDURE TRANSLATE_DEPRECIATION_METHOD(p_depreciation_method IN VARCHAR2,
187 x_depreciation_method OUT NOCOPY VARCHAR2,
188 p_term IN NUMBER,
189 x_term OUT NOCOPY VARCHAR2,
190 p_salvage IN NUMBER,
191 x_salvage OUT NOCOPY NUMBER,
192 p_adr_convention IN VARCHAR2,
193 x_adr_convention OUT NOCOPY VARCHAR2)
194 IS
195
196 CURSOR l_okl_depre_method_csr(p_id VARCHAR2)
197 IS
198 SELECT VALUE
199 FROM OKL_SGN_TRANSLATIONS
200 WHERE JTOT_OBJECT1_CODE = 'FA_METHODS'
201 AND object1_id1 = p_id;
202
203 l_id VARCHAR2(30);
204
205 l_method_strline VARCHAR2(20) := 'Str line, to end';
206 l_method_acrs3yr VARCHAR2(20) := 'ACRS 3 yr';
207 l_method_acrs5yr VARCHAR2(20) := 'ACRS 5 yr';
208 l_method_acrs10yr VARCHAR2(20) := 'ACRS 10 yr';
209 l_method_acrs15yr VARCHAR2(20) := 'ACRS 15 yr';
210 l_adr_convention VARCHAR2(100) := null;
211 BEGIN
212 IF p_depreciation_method IS NOT NULL THEN
213 l_id := p_depreciation_method;
214 OPEN l_okl_depre_method_csr(l_id);
215 FETCH l_okl_depre_method_csr INTO x_depreciation_method;
216 CLOSE l_okl_depre_method_csr;
217
218 IF x_depreciation_method IS NOT NULL THEN
219 -- Handle return value for Term
220 IF x_depreciation_method = l_method_strline OR
221 x_depreciation_method = l_method_acrs3yr OR
222 x_depreciation_method = l_method_acrs5yr OR
223 x_depreciation_method = l_method_acrs10yr OR
224 x_depreciation_method = l_method_acrs15yr
225 THEN
226 x_term := null;
227 ELSE
228 x_term := p_term/12;
229 END IF;
230
231 -- Handle return value for Salvage
232 IF x_depreciation_method = l_method_acrs3yr OR
233 x_depreciation_method = l_method_acrs5yr OR
234 x_depreciation_method = l_method_acrs10yr OR
235 x_depreciation_method = l_method_acrs15yr
236 THEN
237 x_salvage := null;
238 ELSE
239 x_salvage := p_salvage;
240 END IF;
241
242 -- Handle return value for ADR Convention
243 IF x_depreciation_method = l_method_acrs3yr OR
244 x_depreciation_method = l_method_acrs5yr OR
245 x_depreciation_method = l_method_acrs10yr OR
246 x_depreciation_method = l_method_acrs15yr
247 THEN
248 x_adr_convention := null;
249 ELSE
250 IF p_adr_convention IS NOT NULL THEN
251 TRANSLATE_DEPRE_ADRCONVENTION(p_adr_convention, l_adr_convention);
252 END IF;
253 x_adr_convention := l_adr_convention;
254 END IF;
255 END IF;
256 END IF;
257 EXCEPTION
258 WHEN OTHERS THEN
259 IF l_okl_depre_method_csr%isopen THEN
260 CLOSE l_okl_depre_method_csr;
261 END IF;
262 x_depreciation_method := p_depreciation_method;
263 x_term := p_term/12;
264 END TRANSLATE_DEPRECIATION_METHOD;
265
266 PROCEDURE TRANSLATE_DEPRE_ADRCONVENTION(p_depreciation_adrconvention IN VARCHAR2,
267 x_depreciation_adrconvention OUT NOCOPY VARCHAR2)
268 IS
269 CURSOR l_okl_depre_convention_csr(p_id VARCHAR2)
270 IS
271 SELECT VALUE
272 FROM OKL_SGN_TRANSLATIONS
273 WHERE JTOT_OBJECT1_CODE = 'FA_CONVENTION_TYPES'
274 AND object1_id1 = p_id;
275
276 l_id VARCHAR2(30);
277
278 BEGIN
279 IF p_depreciation_adrconvention IS NOT NULL THEN
280 l_id := p_depreciation_adrconvention;
281 OPEN l_okl_depre_convention_csr(l_id);
282 FETCH l_okl_depre_convention_csr INTO x_depreciation_adrconvention;
283 CLOSE l_okl_depre_convention_csr;
284 END IF;
285 EXCEPTION
286 WHEN OTHERS THEN
287 IF l_okl_depre_convention_csr%isopen THEN
288 CLOSE l_okl_depre_convention_csr;
289 END IF;
290 x_depreciation_adrconvention := p_depreciation_adrconvention;
291 END TRANSLATE_DEPRE_ADRCONVENTION;
292
293
294 PROCEDURE TRANSLATE_YN(p_yn IN VARCHAR2,
295 x_yn OUT NOCOPY VARCHAR2)
296 IS
297 BEGIN
298 IF p_yn = G_FND_YES
299 THEN
300 x_yn := G_CSM_TRUE;
301 ELSE
302 x_yn := G_CSM_FALSE;
303 END IF;
304
305 EXCEPTION
306 WHEN OTHERS THEN
307 x_yn := p_yn;
308 END TRANSLATE_YN;
309
310 PROCEDURE TRANSLATE_PERIODICITY(p_periodicity IN VARCHAR2,
311 x_periodicity OUT NOCOPY VARCHAR2)
312 IS
313 BEGIN
314 IF p_periodicity = 'A' THEN
315 x_periodicity := 'Annual';
316 ELSIF p_periodicity = 'S' THEN
317 x_periodicity := 'Semiannual';
318 ELSIF p_periodicity = 'Q' THEN
319 x_periodicity := 'Quarterly';
320 ELSIF p_periodicity = 'M' THEN
321 x_periodicity := 'Monthly';
322 ELSIF p_periodicity = 'T' THEN -- smahapat fee type soln
323 x_periodicity := 'Stub';
324 END IF;
325 EXCEPTION
326 WHEN OTHERS THEN
327 x_periodicity := p_periodicity;
328 END TRANSLATE_PERIODICITY;
329
330 PROCEDURE TRANSLATE_STRUCTURE(p_structure IN VARCHAR2,
331 x_structure OUT NOCOPY VARCHAR2)
332 IS
333 l_amp VARCHAR2(1) := '&';
334
335 BEGIN
336 IF p_structure = '1' THEN
337 x_structure := '1st ' || l_amp || ' last';
338 ELSIF p_structure = '2' THEN
339 x_structure := '1st ' || l_amp || ' last 2';
340 ELSIF p_structure = '3' THEN
341 x_structure := '1st ' || l_amp || ' last 3';
342 ELSE
343 -- by default strucutre would be null
344 -- added akjain 06-16-2002
345 x_structure := NULL ;
346 END IF;
347
348 EXCEPTION
349 WHEN OTHERS THEN
350 x_structure := p_structure;
351
352 END TRANSLATE_STRUCTURE;
353
354 PROCEDURE TRANSLATE_STREAM_TYPE(p_stream_type_name IN VARCHAR2,
355 p_sfe_type IN VARCHAR2,
356 x_stream_type_name OUT NOCOPY VARCHAR2,
357 x_stream_type_desc OUT NOCOPY VARCHAR2)
358 IS
359 BEGIN
360 -- special cases
361 IF p_stream_type_name = 'AMORTIZED FEE INCOME' AND
362 p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_ONE_OFF THEN
363 x_stream_type_name := 'Single Fee Accrual';
364 ELSIF p_stream_type_name = 'FEE INCOME' AND
365 p_sfe_type = 'SFI' THEN
366 x_stream_type_name := 'Single Periodic Income Accrual';
367 -- end special cases
368 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_ONE_OFF
369 OR p_stream_type_name = 'RATE PARTICIPATION'
370 OR p_stream_type_name = 'RESIDUAL VALUE INSURANCE PREMIUM' THEN
371 x_stream_type_name := 'Fee';
372
373 -- removed since no periodic expense stream is generated
374 --ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_PERIODIC_EXPENSE THEN
375 --x_stream_type_name := 'Periodic Expenses';
376 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_PERIODIC_INCOME THEN
377 x_stream_type_name := 'Periodic Income';
378 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_SUBSIDY THEN
379 x_stream_type_name := 'Single Subsidy Accrual';
380 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_RENT THEN
381 x_stream_type_name := 'Rent';
382 ELSIF p_stream_type_name = 'RENT' THEN
383 x_stream_type_name := 'Rent';
384
385 ELSIF p_stream_type_name = 'PRINCIPAL BALANCE' THEN
386 x_stream_type_name := 'Lending Loans Balance';
387
388 ELSIF p_stream_type_name = 'INTEREST PAYMENT' THEN
389 x_stream_type_name := 'Lending Loans Interest';
390 ELSIF p_stream_type_name = 'PRINCIPAL PAYMENT' THEN
391 x_stream_type_name := 'Lending Loans Principal';
392 ELSIF p_stream_type_name = 'RENTAL ACCRUAL' THEN
393 --smahapat 02/12/03 bugfix# 2790764
394 --x_stream_type_name := 'GL Rent Receivable Credits';
395 x_stream_type_name := 'GL Book Rent';
396 ELSIF p_stream_type_name = 'FAS 91 FEE INCOME' THEN
397 x_stream_type_name := 'Initial Direct Costs';
398 ELSIF p_stream_type_name = 'PRE-TAX INCOME' THEN
399 --x_stream_type_name := 'GL Income Earned';
400 --smahapat fixed bug 2826926
401 x_stream_type_name := 'GL Income Recognized';
402 ELSIF p_stream_type_name = 'UNEARNED INCOME' THEN
403 x_stream_type_name := 'GL Income Unearned';
404 --x_stream_type_name := 'GL Income Recognized';
405 ELSIF p_stream_type_name = 'TERMINATION VALUE' THEN
406 x_stream_type_name := 'Termination Value';
407 ELSIF p_stream_type_name = 'STIP LOSS VALUE' THEN
408 -- modified to fix bug # 2440390
409 x_stream_type_name := 'StipLoss Value';
410 ELSIF p_stream_type_name = 'BOOK DEPRECIATION' THEN
411 x_stream_type_name := 'Book Depreciation';
412 ELSIF p_stream_type_name = 'FEDERAL DEPRECIATION' THEN
413 x_stream_type_name := 'Federal Depreciation';
414 ELSIF p_stream_type_name = 'STATE DEPRECIATION' THEN
415 x_stream_type_name := 'State Depreciation';
416 -- mvasudev, 07/18/2002
417 ELSIF p_stream_type_name = 'LOAN PAYMENT' THEN
418 x_stream_type_name := 'Lending Loans Debt Service';
419 -- smahapat 02/14/2003 bugfix# 2790695
420 ELSIF p_stream_type_name = 'FEE INCOME' THEN
421 x_stream_type_name := 'Single Periodic Income Accrual';
422 --ELSIF p_stream_type_name = 'AMORTIZED FEE INCOME' THEN
423 --x_stream_type_name := 'Single Fee Accrual';
424 ELSIF p_stream_type_name = 'INTEREST INCOME' THEN
425 x_stream_type_name := 'Single Lending Loan Accrual';
426 ELSIF p_stream_type_name = 'PERIODIC EXPENSE PAYABLE' THEN
427 x_stream_type_name := 'Single Periodic Expense Accrual';
428 -- smahapat fee type solution
429 ELSIF p_stream_type_name = 'SECURITY DEPOSIT' THEN
430 x_stream_type_name := 'Security Deposits';
431 ELSE
432 x_stream_type_name := p_stream_type_name;
433 END IF;
434
435 IF p_stream_type_name = 'RESIDUAL VALUE INSURANCE PREMIUM' THEN
436 x_stream_type_desc := 'Residual Insurance Premium';
437 ELSE
438 x_stream_type_desc := p_stream_type_name;
439 END IF;
440
441 EXCEPTION
442 WHEN OTHERS THEN
443 x_stream_type_name := p_stream_type_name;
444 x_stream_type_desc := p_stream_type_name;
445
446 END TRANSLATE_STREAM_TYPE;
447
448 PROCEDURE TRANSLATE_STREAM_TYPE(p_stream_type_name IN VARCHAR2,
449 p_sfe_type IN VARCHAR2,
450 p_sil_type IN VARCHAR2,
451 x_stream_type_name OUT NOCOPY VARCHAR2,
452 x_stream_type_desc OUT NOCOPY VARCHAR2)
453 IS
454 BEGIN
455 -- special cases
456 IF p_stream_type_name = 'AMORTIZED FEE INCOME' AND
457 p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_ONE_OFF THEN
458 x_stream_type_name := 'Single Fee Accrual';
459 ELSIF p_stream_type_name = 'FEE INCOME' AND
460 p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_PERIODIC_INCOME THEN
461 x_stream_type_name := 'Single Periodic Income Accrual';
462 ELSIF p_stream_type_name = 'PRE-TAX INCOME' AND
463 p_sil_type = OKL_SIL_PVT.G_SIL_TYPE_LEASE THEN
464 x_stream_type_name := 'Single Rent Accrual';
465 ELSIF p_stream_type_name = 'PRE-TAX INCOME' THEN
466 x_stream_type_name := 'Single Lending Loan Accrual';
467 -- end special cases
468 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_ONE_OFF
469 OR p_stream_type_name = 'RATE PARTICIPATION'
470 OR p_stream_type_name = 'RESIDUAL VALUE INSURANCE PREMIUM' THEN
471 x_stream_type_name := 'Fee';
472
473 -- removed since no periodic expense stream is generated
474 --ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_PERIODIC_EXPENSE THEN
475 --x_stream_type_name := 'Periodic Expenses';
476 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_PERIODIC_INCOME THEN
477 x_stream_type_name := 'Periodic Income';
478 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_SUBSIDY THEN
479 x_stream_type_name := 'Single Subsidy Accrual';
480 ELSIF p_sfe_type = OKL_SFE_PVT.G_SFE_TYPE_RENT THEN
481 x_stream_type_name := 'Rent';
482 ELSIF p_stream_type_name = 'RENT' THEN
483 x_stream_type_name := 'Rent';
484
485 ELSIF p_stream_type_name = 'PRINCIPAL BALANCE' THEN
486 x_stream_type_name := 'Lending Loans Balance';
487
488 ELSIF p_stream_type_name = 'INTEREST PAYMENT' THEN
489 x_stream_type_name := 'Lending Loans Interest';
490 ELSIF p_stream_type_name = 'PRINCIPAL PAYMENT' THEN
491 x_stream_type_name := 'Lending Loans Principal';
492 ELSIF p_stream_type_name = 'RENTAL ACCRUAL' THEN
493 --smahapat 02/12/03 bugfix# 2790764
494 --x_stream_type_name := 'GL Rent Receivable Credits';
495 x_stream_type_name := 'Single Rent Accrual';
496 ELSIF p_stream_type_name = 'FAS 91 FEE INCOME' THEN
497 x_stream_type_name := 'Initial Direct Costs';
498 ELSIF p_stream_type_name = 'UNEARNED INCOME' THEN
499 x_stream_type_name := 'GL Income Unearned';
500 --x_stream_type_name := 'GL Income Recognized';
501 ELSIF p_stream_type_name = 'TERMINATION VALUE' THEN
502 x_stream_type_name := 'Termination Value';
503 ELSIF p_stream_type_name = 'STIP LOSS VALUE' THEN
504 -- modified to fix bug # 2440390
505 x_stream_type_name := 'StipLoss Value';
506 ELSIF p_stream_type_name = 'BOOK DEPRECIATION' THEN
507 x_stream_type_name := 'Book Depreciation';
508 ELSIF p_stream_type_name = 'FEDERAL DEPRECIATION' THEN
509 x_stream_type_name := 'Federal Depreciation';
510 ELSIF p_stream_type_name = 'STATE DEPRECIATION' THEN
511 x_stream_type_name := 'State Depreciation';
512 -- mvasudev, 07/18/2002
513 ELSIF p_stream_type_name = 'LOAN PAYMENT' THEN
514 x_stream_type_name := 'Lending Loans Debt Service';
515 -- smahapat 02/14/2003 bugfix# 2790695
516 ELSIF p_stream_type_name = 'FEE INCOME' THEN
517 x_stream_type_name := 'Single Periodic Income Accrual';
518 --ELSIF p_stream_type_name = 'AMORTIZED FEE INCOME' THEN
519 --x_stream_type_name := 'Single Fee Accrual';
520 ELSIF p_stream_type_name = 'INTEREST INCOME' THEN
521 x_stream_type_name := 'Single Lending Loan Accrual';
522 ELSIF p_stream_type_name = 'PERIODIC EXPENSE PAYABLE' THEN
523 x_stream_type_name := 'Single Periodic Expense Accrual';
524 -- smahapat fee type solution
525 ELSIF p_stream_type_name = 'SECURITY DEPOSIT' THEN
526 x_stream_type_name := 'Security Deposits';
527 ELSE
528 x_stream_type_name := p_stream_type_name;
529 END IF;
530
531 IF p_stream_type_name = 'RESIDUAL VALUE INSURANCE PREMIUM' THEN
532 x_stream_type_desc := 'Residual Insurance Premium';
533 ELSE
534 x_stream_type_desc := p_stream_type_name;
535 END IF;
536
537 EXCEPTION
538 WHEN OTHERS THEN
539 x_stream_type_name := p_stream_type_name;
540 x_stream_type_desc := p_stream_type_name;
541
542 END TRANSLATE_STREAM_TYPE;
543
544 PROCEDURE REVERSE_TRANSLATE_STREAM_TYPE(p_stream_type_name IN VARCHAR2,
545 p_stream_type_desc IN VARCHAR2,
546 x_stream_type_name OUT NOCOPY VARCHAR2)
547 IS
548 BEGIN
549
550 IF p_stream_type_name = 'Fee'
551 OR p_stream_type_name = 'Periodic Expenses'
552 OR p_stream_type_name = 'Periodic Income' THEN
553 x_stream_type_name := p_stream_type_desc;
554 ELSIF p_stream_type_name = 'RENT' THEN
555 x_stream_type_name := 'Rent';
556 ELSIF p_stream_type_name = 'Lending Loans Balance' THEN
557 x_stream_type_name := 'PRINCIPAL BALANCE';
558 ELSIF p_stream_type_name = 'Lending Loans Interest' THEN
559 x_stream_type_name := 'INTEREST PAYMENT';
560 ELSIF p_stream_type_name = 'Lending Loans Principal' THEN
561 x_stream_type_name := 'PRINCIPAL PAYMENT';
562 --ELSIF p_stream_type_name = 'GL Rent Receivable Credits' THEN
563 --smahapat 02/12/03 bugfix# 2790764
564 ELSIF p_stream_type_name = 'GL Book Rent' THEN
565 x_stream_type_name := 'RENTAL ACCRUAL';
566 ELSIF p_stream_type_name = 'Initial Direct Costs' THEN
567 x_stream_type_name := 'FAS 91 FEE INCOME';
568 --ELSIF p_stream_type_name = 'GL Income Earned' THEN
569 --smahapat fixed bug 2826926
570 ELSIF p_stream_type_name = 'GL Income Recognized' THEN
571 x_stream_type_name := 'PRE-TAX INCOME';
572 ELSIF p_stream_type_name = 'GL Income Unearned' THEN
573 -- modified to fix bug # 2449592
574 --ELSIF p_stream_type_name = 'GL Income Recognized' THEN
575 x_stream_type_name := 'UNEARNED INCOME';
576 ELSIF p_stream_type_name = 'Termination Value' THEN
577 x_stream_type_name := 'TERMINATION VALUE';
578 ELSIF p_stream_type_name = 'StipLoss Value' THEN
579 -- modified to fix bug # 2440390
580 x_stream_type_name := 'STIP LOSS VALUE';
581 ELSIF p_stream_type_name = 'Book Depreciation' THEN
582 x_stream_type_name := 'BOOK DEPRECIATION';
583 ELSIF p_stream_type_name = 'Federal Depreciation' THEN
584 x_stream_type_name := 'FEDERAL DEPRECIATION';
585
586 ELSIF p_stream_type_name = 'State Depreciation' THEN
587 x_stream_type_name := 'STATE DEPRECIATION';
588 -- smahapat 02/14/2003 bugfix# 2790695
589 ELSIF p_stream_type_name = 'GL Book Periodic Income' THEN
590 x_stream_type_name := 'FEE INCOME';
591 ELSIF p_stream_type_name = 'GL Book Periodic Expenses' THEN
592 x_stream_type_name := 'PERIODIC EXPENSE PAYABLE';
593 -- smahapat fee type solution
594 ELSIF p_stream_type_name = 'Security Deposits' THEN
595 x_stream_type_name := 'SECURITY DEPOSIT';
596 ELSE
597 x_stream_type_name := p_stream_type_name;
598 END IF;
599
600 EXCEPTION
601 WHEN OTHERS THEN
602 x_stream_type_name := p_stream_type_name;
603
604 END REVERSE_TRANSLATE_STREAM_TYPE;
605
606 PROCEDURE TRANSLATE_ADVANCE_ARREARS(p_advance_arrears IN VARCHAR2,
607 x_advance_arrears OUT NOCOPY VARCHAR2)
608 IS
609 BEGIN
610 IF p_advance_arrears = G_ADVANCE THEN
611 x_advance_arrears := G_CSM_TRUE;
612 ELSIF p_advance_arrears = G_ARREARS THEN
613 x_advance_arrears := G_CSM_FALSE;
614 ELSE
615 x_advance_arrears := G_CSM_FALSE;
616 END IF;
617 EXCEPTION
618 WHEN OTHERS THEN
619 x_advance_arrears := p_advance_arrears;
620
621 END TRANSLATE_ADVANCE_ARREARS;
622
623 PROCEDURE TRANSLATE_INCOME_EXPENSE(p_income_expense IN VARCHAR2,
624 x_income_expense OUT NOCOPY VARCHAR2)
625 IS
626 BEGIN
627 IF p_income_expense = G_EXPENSE THEN
628 x_income_expense := G_CSM_TRUE;
629 ELSIF p_income_expense = G_INCOME THEN
630 x_income_expense := G_CSM_FALSE;
631 ELSE
632 x_income_expense := G_CSM_FALSE;
633 END IF;
634 EXCEPTION
635 WHEN OTHERS THEN
636 x_income_expense := p_income_expense;
637
638 END TRANSLATE_INCOME_EXPENSE;
639
640 PROCEDURE TRANSLATE_PERCENTAGE(p_percentage IN NUMBER,
641 x_ratio OUT NOCOPY VARCHAR2)
642 IS
643 BEGIN
644 IF p_percentage IS NOT NULL THEN
645 x_ratio := TO_CHAR(p_percentage/100);
646 ELSE
647 x_ratio := TO_CHAR(p_percentage);
648 END IF;
649 EXCEPTION
650 WHEN OTHERS THEN
651 x_ratio := TO_CHAR(p_percentage);
652 END TRANSLATE_PERCENTAGE;
653
654 PROCEDURE TRANSLATE_LOCK_LEVEL_STEP(p_lock_level_step IN VARCHAR2,
655 x_lock_amount OUT NOCOPY VARCHAR2,
656 x_lock_rate OUT NOCOPY VARCHAR2)
657 IS
658 BEGIN
659 IF p_lock_level_step = G_LOCK_AMOUNT THEN
660 x_lock_amount := G_CSM_TRUE;
661 x_lock_rate := G_CSM_FALSE;
662 ELSIF p_lock_level_step = G_LOCK_RATE THEN
663 x_lock_rate := G_CSM_TRUE;
664 x_lock_amount := G_CSM_FALSE;
665 ELSIF p_lock_level_step = G_LOCK_BOTH THEN
666 x_lock_amount := G_CSM_TRUE;
667 x_lock_rate := G_CSM_TRUE;
668 ELSE
669 x_lock_amount := p_lock_level_step;
670 x_lock_rate := p_lock_level_step;
671 END IF;
672
673 EXCEPTION
674 WHEN OTHERS THEN
675 x_lock_amount := p_lock_level_step;
676 x_lock_rate := p_lock_level_step;
677
678 END TRANSLATE_LOCK_LEVEL_STEP;
679
680 PROCEDURE TRANSLATE_MODE(p_mode IN VARCHAR2,
681 x_mode OUT NOCOPY VARCHAR2)
682 IS
683 BEGIN
684 IF p_mode = G_MODE_LESSOR THEN
685
686 x_mode := 'Lessor';
687 ELSIF p_mode = G_MODE_LENDER THEN
688 x_mode := 'Lender';
689 ELSIF p_mode = G_MODE_BOTH THEN
690 x_mode := 'Both';
691 ELSE
692 x_mode := p_mode;
693 END IF;
694 EXCEPTION
695 WHEN OTHERS THEN
696 x_mode := p_mode;
697
698 END TRANSLATE_MODE;
699
700 PROCEDURE TRANSLATE_FEE_LEVEL_TYPE(p_fee_level_type IN VARCHAR2,
701 x_fee_level_type OUT NOCOPY VARCHAR2)
702 IS
703 BEGIN
704 IF p_fee_level_type = G_SFE_LEVEL_PAYMENT THEN
705 x_fee_level_type := 'Payment';
706 ELSIF p_fee_level_type = G_SFE_LEVEL_FUNDING THEN
707 x_fee_level_type := 'Funding';
708 ELSIF p_fee_level_type = G_SFE_LEVEL_INTEREST THEN
709 x_fee_level_type := 'Interest ONLY';
710 ELSIF p_fee_level_type = G_SFE_LEVEL_PRINCIPAL THEN
711 x_fee_level_type := 'Principal';
712 END IF;
713 EXCEPTION
714 WHEN OTHERS THEN
715 x_fee_level_type := p_fee_level_type;
716 END TRANSLATE_FEE_LEVEL_TYPE;
717
718 PROCEDURE REVERSE_TRANSLATE_YN(p_yn IN VARCHAR2,
719 x_yn OUT NOCOPY VARCHAR2)
720 IS
721 BEGIN
722 IF p_yn = G_CSM_TRUE
723 THEN
724 x_yn := G_FND_YES;
725 ELSIF p_yn = G_CSM_FALSE
726 THEN
727 x_yn := G_FND_NO;
728 END IF;
729
730 EXCEPTION
731 WHEN OTHERS THEN
732 x_yn := p_yn;
733 END REVERSE_TRANSLATE_YN;
734
735 PROCEDURE REVERSE_TRANSLATE_PERIODICITY(p_periodicity IN VARCHAR2,
736 x_periodicity OUT NOCOPY VARCHAR2)
737 IS
738 BEGIN
739 IF p_periodicity = 'Annual' THEN
740 x_periodicity := 'A';
741 ELSIF p_periodicity = 'Semiannual' THEN
742 x_periodicity := 'S';
743 ELSIF p_periodicity = 'Quarterly' THEN
744 x_periodicity := 'Q';
745 ELSIF p_periodicity = 'Monthly' THEN
746 x_periodicity := 'M';
747 ELSIF p_periodicity = 'Stub' THEN -- smahapat fee type soln
748 x_periodicity := 'T';
749 END IF;
750 EXCEPTION
751 WHEN OTHERS THEN
752 x_periodicity := p_periodicity;
753 END REVERSE_TRANSLATE_PERIODICITY;
754
755 PROCEDURE TRANSLATE_NEPA(p_nominal_yn IN VARCHAR2,
756 p_pre_tax_yn IN VARCHAR2,
757 x_nepa OUT NOCOPY VARCHAR2)
758 IS
759 BEGIN
760 IF p_nominal_yn = G_FND_YES THEN
761 IF p_pre_tax_yn = G_FND_YES THEN
762 x_nepa := 'Pre-tax nominal';
763 ELSIF p_pre_tax_yn = G_FND_NO THEN
764 x_nepa := 'After-tax nominal';
765 ELSE
766 x_nepa := p_pre_tax_yn;
767 END IF;
768 ELSIF p_nominal_yn = G_FND_NO THEN
769 IF p_pre_tax_yn = G_FND_YES THEN
770 x_nepa := 'Pre-tax effective';
771 ELSIF p_pre_tax_yn = G_FND_NO THEN
772 x_nepa := 'After-tax effective';
773 ELSE
774 x_nepa := p_pre_tax_yn;
775 END IF;
776 ELSE
777 x_nepa := p_nominal_yn;
778 END IF;
779 EXCEPTION
780 WHEN OTHERS THEN
781 x_nepa := p_nominal_yn;
782 END TRANSLATE_NEPA;
783
784 PROCEDURE TRANSLATE_LOCK_LEVEL_LNSTEP(p_level_type IN VARCHAR2,
785
786 p_lock_level_step IN VARCHAR2,
787 x_lock_amount OUT NOCOPY VARCHAR2,
788 x_lock_rate OUT NOCOPY VARCHAR2)
789 IS
790 l_lock_amount VARCHAR2(10);
791 l_lock_rate VARCHAR2(10);
792 BEGIN
793 IF (p_level_type = G_SFE_LEVEL_FUNDING OR p_level_type = 'Funding' ) THEN
794 x_lock_amount := NULL;
795 x_lock_rate := NULL;
796 ELSE
797 TRANSLATE_LOCK_LEVEL_STEP(p_lock_level_step, l_lock_amount, l_lock_rate);
798 x_lock_amount := l_lock_amount;
799 x_lock_rate := l_lock_rate;
800 END IF;
801
802 EXCEPTION
803 WHEN OTHERS THEN
804 x_lock_amount := G_CSM_TRUE;
805 x_lock_rate := G_CSM_FALSE;
806
807 END TRANSLATE_LOCK_LEVEL_LNSTEP;
808
809 PROCEDURE TRANSLATE_SIY_TYPE(p_siy_type IN VARCHAR2,
810 x_siy_type OUT NOCOPY VARCHAR2)
811 IS
812 BEGIN
813 IF p_siy_type = OKL_SIY_PVT.G_SIY_TYPE_YIELD THEN
814 x_siy_type := 'Yield';
815 ELSIF p_siy_type = OKL_SIY_PVT.G_SIY_TYPE_INTEREST_RATE THEN
816 x_siy_type := 'Rates full/base term';
817 END IF;
818 EXCEPTION
819 WHEN OTHERS THEN
820 x_siy_type := p_siy_type;
821 END TRANSLATE_SIY_TYPE;
822
823 PROCEDURE TRANSLATE_GUARANTEE_TYPE(p_guarantee_type IN VARCHAR2,
824 x_guarantee_type OUT NOCOPY VARCHAR2)
825 IS
826 BEGIN
827 IF p_guarantee_type = 'Lessee' or p_guarantee_type = 'LESSEE' THEN
828 x_guarantee_type := 'Lessee';
829 ELSIF p_guarantee_type = 'Other' or p_guarantee_type = 'OTHER' THEN
830 x_guarantee_type := 'Third Party';
831 ELSIF p_guarantee_type = 'Vendor' or p_guarantee_type = 'VENDOR' THEN
832 x_guarantee_type := 'Third Party';
833 ELSIF p_guarantee_type = 'NONE' THEN
834 x_guarantee_type := 'Unguaranteed';
835 END IF;
836 EXCEPTION
837 WHEN OTHERS THEN
838 x_guarantee_type := p_guarantee_type;
839 END TRANSLATE_GUARANTEE_TYPE;
840
841 PROCEDURE TRANSLATE_STATISTIC_INDEX(p_target_type IN VARCHAR2,
842 p_statistic_index IN VARCHAR2,
843 x_statistic_index OUT NOCOPY VARCHAR2)
844 IS
845 l_target_type VARCHAR2(3) := 'INT';
846 BEGIN
847 fnd_file.put_line(fnd_file.log, 'st code conversion tarfet type '||p_target_type);
848 fnd_file.put_line(fnd_file.log, 'st code conversion p_statistic_index '||p_statistic_index);
849 IF p_target_type = l_target_type THEN
850 fnd_file.put_line(fnd_file.log, 'st code conversion set stat to 1 ');
851 x_statistic_index := '1';
852 ELSE
853 x_statistic_index := p_statistic_index;
854 END IF;
855 fnd_file.put_line(fnd_file.log, 'st code conversion x_statistic_index '||x_statistic_index);
856 EXCEPTION
857 WHEN OTHERS THEN
858 x_statistic_index := p_statistic_index;
859 END TRANSLATE_STATISTIC_INDEX;
860
861 --New Procedure Added to determine mode.
862
863 PROCEDURE Get_mode (p_transaction_number In NUMBER,
864 x_mode out NOCOPY VARCHAR2)
865 IS
866 CURSOR Get_mode_csr(cp_transaction_no NUMBER )
867 IS
868 SELECT
869 sfe.deal_type,sil.sil_type
870 FROM okl_stream_interfaces_v sfe,
871 okl_sif_lines_v sil
872 WHERE transaction_number = cp_transaction_no
873 AND sil.sif_id = sfe.id;
874
875 BEGIN
876 FOR l_get_mode_rec in Get_mode_csr(p_transaction_number)
877 LOOP
878 IF l_get_mode_rec.deal_type = 'LSBO' THEN
879 IF l_get_mode_rec.sil_type = 'SGN'
880 THEN
881 x_mode := 'Both';
882 ELSE
883 x_mode := 'Lessor';
884 END IF;
885
886 ELSIF l_get_mode_rec.deal_type = 'LNBO' THEN
887 x_mode := 'Lender';
888 END IF;
889 END LOOP;
890 END Get_mode;
891
892
893 --New Procedure Added to FundingAndRate.
894
895 PROCEDURE SET_FUNDINGANDRATE (p_transaction_number In NUMBER,
896 p_fee_index In NUMBER,
897 x_FundingAndRate out NOCOPY VARCHAR2)
898 IS
899 CURSOR Set_FundingAndRate_csr(cp_transaction_no NUMBER,
900 cp_fee_index NUMBER
901 )
902 IS
903 SELECT
904 AMOUNT
905 FROM
906 OKL_SIF_FEES SFEB,
907 OKL_STREAM_INTERFACES SIFB
908 WHERE
909 SFEB.SIF_ID = SIFB.ID AND
910 SFEB.SFE_TYPE = 'SFR' AND
911 SFEB.FEE_INDEX_NUMBER = cp_fee_index AND
912 SIFB.transaction_number = cp_transaction_no;
913
914 BEGIN
915 FOR l_FundingAndRate_rec in Set_FundingAndRate_csr(p_transaction_number,p_fee_index)
916 LOOP
917 IF l_FundingAndRate_rec.amount = 0 THEN
918 x_FundingAndRate := 'true';
919 END IF;
920 END LOOP;
921 END SET_FUNDINGANDRATE;
922
923 --Added by kthriuva for the VR build
924 --This method fetches the balance method that needs to be used for the Balance Tag
925 PROCEDURE get_balance_method(p_transaction_number IN NUMBER,
926 x_balance_method OUT NOCOPY VARCHAR2)
927 IS
928
929 CURSOR get_bal_meth_csr(p_trx_number IN NUMBER)
930 IS
931 SELECT FEES.BALANCE_TYPE_CODE
932 FROM OKL_SIF_FEES_V FEES,
933 OKL_STREAM_INTERFACES SIF
934 WHERE SIF.TRANSACTION_NUMBER = p_trx_number
935 AND SIF.ID = FEES.SIF_ID
936 AND FEES.BALANCE_TYPE_CODE IS NOT NULL;
937
938 l_balance_method okl_sif_fees.balance_type_code%TYPE;
939
940 BEGIN
941
942 OPEN get_bal_meth_csr(p_transaction_number);
943 FETCH get_bal_meth_csr INTO l_balance_method;
944 CLOSE get_bal_meth_csr;
945
946 IF l_balance_method = G_BALANCE_TERM THEN
947 x_balance_method := 'Term';
948 ELSIF l_balance_method = G_BALANCE_PAYMENT THEN
949 x_balance_method := 'Payments';
950 ELSIF l_balance_method = G_BALANCE_FUNDING THEN
951 x_balance_method := 'Funding';
952 ELSIF l_balance_method = G_BALANCE_RATE THEN
953 x_balance_method := 'Rate';
954 ELSE x_balance_method := 'None';
955 END IF;
956
957 END get_balance_method;
958
959 --This method converts the date but returns the date only in the case of
960 --stubs and when the payment type is funding
961 --For periodic payments End Accrual date is not required
962 PROCEDURE CONVERT_DATE_RESTRUCT(p_date IN DATE,
963 p_date_format IN VARCHAR2,
964 p_type IN VARCHAR2,
965 p_periodicity IN VARCHAR2,
966 x_char_date OUT NOCOPY VARCHAR2)
967 IS
968 BEGIN
969 IF (p_periodicity = 'Stub') OR (p_type = 'Funding') THEN
970 IF p_date_format IS NOT NULL THEN
971 x_char_date := TO_CHAR(p_date,p_date_format);
972 ELSE
973 x_char_date := TO_CHAR(p_date,G_DEFAULT_DATE_FORMAT);
974 END IF;
975 ELSE
976 x_char_date := null ;
977 END IF;
978 EXCEPTION
979 WHEN OTHERS THEN
980 x_char_date := TO_CHAR(p_date,G_DEFAULT_DATE_FORMAT);
981 END CONVERT_DATE_RESTRUCT;
982 --kthriuva - End of Changes for VR build
983
984 -- gboomina BUG#4508077 procedure to set the description
985 -- for fee with purpose code as RVI
986 PROCEDURE SET_RVI_FEE_DESCRIPTION(p_kle_id IN NUMBER,
987 p_description IN VARCHAR2,
988 x_description OUT NOCOPY VARCHAR2)
989 IS
990 -- cursor to fetch the fee purpose code
991 CURSOR get_fee_purpose_csr(p_fee_line_id IN NUMBER) IS
992 SELECT fee_purpose_code
993 FROM OKL_K_LINES
994 WHERE ID = p_fee_line_id;
995 BEGIN
996 -- assign the value passed
997 x_description := p_description;
998 IF(p_kle_id IS NOT NULL) THEN
999 -- fetch the purpose code for the fee line
1000 FOR l_fee_purpose_rec IN get_fee_purpose_csr(p_fee_line_id => p_kle_id)
1001 LOOP
1002 -- if purpose code is RVI then update the description as Residual Insurance Premium
1003 IF(l_fee_purpose_rec.fee_purpose_code = 'RVI') THEN
1004 x_description := 'Residual Insurance Premium';
1005 END IF;
1006 END LOOP;
1007 END IF;
1008 END SET_RVI_FEE_DESCRIPTION;
1009
1010 --Added by kthiruva on 11-Nov-2005 for the VR build
1011 --Bug 4726209 - Start of Changes
1012 --The value of the <IsAdvance> tag is passed to this procedure
1013 --When IsAdvance is false, the payment is in Arrears and a value
1014 --'Y' needs to be returned. Else a value 'N' should be returned
1015 PROCEDURE REVERSE_TRANSLATE_ADV_OR_ARR (p_yn IN VARCHAR2,
1016 x_yn OUT NOCOPY VARCHAR2)
1017 IS
1018 BEGIN
1019 IF p_yn = G_CSM_TRUE
1020 THEN
1021 x_yn := G_FND_NO;
1022 ELSIF p_yn = G_CSM_FALSE
1023 THEN
1024 x_yn := G_FND_YES;
1025 END IF;
1026 END REVERSE_TRANSLATE_ADV_OR_ARR;
1027 --Bug 4726209 - End of Changes
1028
1029 --Added by kthiruva on 19-Apr-2006 to determine if a Paydown has been made on a contract
1030 --Bug 5161075 - Start of Changes
1031 PROCEDURE IS_PPD_AVAILABLE(p_trx_number IN NUMBER,
1032 x_yn OUT NOCOPY VARCHAR2)
1033 IS
1034 CURSOR get_contract_id_csr(p_trx_number NUMBER)
1035 IS
1036 SELECT KHR_ID
1037 FROM OKL_STREAM_INTERFACES
1038 WHERE TRANSACTION_NUMBER = p_trx_number;
1039
1040 --This cursor determines whether there have been any Paydowns on this Contract
1041 CURSOR is_ppd_available_csr(chrId NUMBER)
1042 IS
1043 SELECT count(crl.id)
1044 FROM okc_rule_groups_b crg,
1045 okc_rules_b crl,
1046 okl_strm_type_v sty
1047 WHERE crl.rgp_id = crg.id
1048 AND crg.rgd_code = 'LALEVL'
1049 AND crl.rule_information_category = 'LASLH'
1050 AND crg.dnz_chr_id = chrId
1051 AND crl.object1_id1 = sty.id
1052 AND sty.stream_type_purpose = 'UNSCHEDULED_PRINCIPAL_PAYMENT'
1053 ORDER BY crl.rule_information1;
1054
1055 l_ppd_count NUMBER := 0;
1056 l_khr_id NUMBER;
1057
1058
1059 BEGIN
1060 OPEN get_contract_id_csr(p_trx_number);
1061 FETCH get_contract_id_csr INTO l_khr_id;
1062 CLOSE get_contract_id_csr;
1063
1064 IF l_khr_id is NOT NULL THEN
1065 OPEN is_ppd_available_csr(l_khr_id);
1066 FETCH is_ppd_available_csr INTO l_ppd_count;
1067 CLOSE is_ppd_available_csr;
1068 END IF;
1069
1070 IF l_ppd_count > 0 THEN
1071 x_yn := 'false';
1072 ELSE
1073 x_yn := 'true';
1074 END IF;
1075 END IS_PPD_AVAILABLE;
1076 --Bug 5161075 - End of Changes
1077
1078 --Added by rbanerje on 03-Oct-2008 to return the decimal separator in the number format
1079 --Bug 6085025 - Start of Changes
1080 PROCEDURE get_decimal_separator ( x_seperator OUT NOCOPY VARCHAR2 )
1081 IS
1082 BEGIN
1083 x_seperator := SUBSTR(fnd_global.nls_numeric_characters, 1,1);
1084 END get_decimal_separator;
1085 --Bug 6085025 - End of Changes
1086
1087 END Okl_St_Code_Conversions;