[Home] [Help]
PACKAGE BODY: APPS.OKL_KLE_PVT
Source
1 Package Body OKL_KLE_PVT AS
2 /* $Header: OKLSKLEB.pls 120.6.12020000.3 2013/02/21 21:24:36 rpillay ship $ */
3 -- --------------------------------------------------------------------------
4 -- Start of column level validations
5 -- --------------------------------------------------------------------------
6 G_NO_PARENT_RECORD CONSTANT VARCHAR2(200) := 'OKC_NO_PARENT_RECORD';
7 G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKC_CONTRACTS_UNEXPECTED_ERROR';
8
9
10 G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'SQLerrm';
11 G_SQLCODE_TOKEN CONSTANT VARCHAR2(200) := 'SQLcode';
12 G_VIEW CONSTANT VARCHAR2(200) := 'OKL_K_LINES_V';
13
14 G_EXCEPTION_HALT_VALIDATION exception;
15
16
17 -- ************************ HAND CODED VALIDATION ****************************************
18
19 -- Start of comments
20 --
21 -- Procedure Name : validate_CREDIT_TENANT_YN
22 -- Description :
23 -- Business Rules :
24 -- Parameters :
25 -- Version : 1.0
26 -- End of comments
27 PROCEDURE validate_CREDIT_TENANT_YN(x_return_status OUT NOCOPY VARCHAR2,
28 p_klev_rec IN klev_rec_type) is
29 Begin
30 -- initialize return status
31 x_return_status := OKC_API.G_RET_STS_SUCCESS;
32 If (p_klev_rec.CREDIT_TENANT_YN <> OKC_API.G_MISS_CHAR and
33 p_klev_rec.CREDIT_TENANT_YN IS NOT NULL)
34 Then
35 -- check allowed values
36 If (upper(p_klev_rec.CREDIT_TENANT_YN) NOT IN ('Y','N')) Then
37 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
38 p_msg_name => g_invalid_value,
39 p_token1 => g_col_name_token,
40 p_token1_value => 'CREDIT_TENANT_YN');
41 -- notify caller of an error
42 x_return_status := OKC_API.G_RET_STS_ERROR;
43 End If;
44 End If;
45 exception
46 when OTHERS then
47 -- store SQL error message on message stack
48 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
49 p_msg_name => g_unexpected_error,
50 p_token1 => g_sqlcode_token,
51 p_token1_value => sqlcode,
52 p_token2 => g_sqlerrm_token,
53 p_token2_value => sqlerrm);
54 -- notify caller of an error as UNEXPETED error
55 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
56 End validate_CREDIT_TENANT_YN;
57
58
59 -- Start of comments
60 --
61 -- Procedure Name : validate_PRESCRIBED_ASSET_YN
62 -- Description :
63 -- Business Rules :
64 -- Parameters :
65 -- Version : 1.0
66 -- End of comments
67 PROCEDURE validate_PRESCRIBED_ASSET_YN(x_return_status OUT NOCOPY VARCHAR2,
68 p_klev_rec IN klev_rec_type) is
69 Begin
70 -- initialize return status
71 x_return_status := OKC_API.G_RET_STS_SUCCESS;
72 If (p_klev_rec.PRESCRIBED_ASSET_YN <> OKC_API.G_MISS_CHAR and
73 p_klev_rec.PRESCRIBED_ASSET_YN IS NOT NULL)
74 Then
75 -- check allowed values
76 If (upper(p_klev_rec.PRESCRIBED_ASSET_YN) NOT IN ('Y','N')) Then
77 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
78 p_msg_name => g_invalid_value,
79 p_token1 => g_col_name_token,
80 p_token1_value => 'PRESCRIBED_ASSET_YN');
81 -- notify caller of an error
82 x_return_status := OKC_API.G_RET_STS_ERROR;
83 End If;
84 End If;
85 exception
86 when OTHERS then
87 -- store SQL error message on message stack
88 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
89 p_msg_name => g_unexpected_error,
90 p_token1 => g_sqlcode_token,
91 p_token1_value => sqlcode,
92 p_token2 => g_sqlerrm_token,
93 p_token2_value => sqlerrm);
94 -- notify caller of an error as UNEXPETED error
95 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
96 End validate_PRESCRIBED_ASSET_YN;
97
98
99 -- Start of comments
100 --
101 -- Procedure Name : validate_SECURED_DEAL_YN
102 -- Description :
103 -- Business Rules :
104 -- Parameters :
105 -- Version : 1.0
106 -- End of comments
107 PROCEDURE validate_SECURED_DEAL_YN(x_return_status OUT NOCOPY VARCHAR2,
108 p_klev_rec IN klev_rec_type) is
109 Begin
110 -- initialize return status
111 x_return_status := OKC_API.G_RET_STS_SUCCESS;
112 If (p_klev_rec.SECURED_DEAL_YN <> OKC_API.G_MISS_CHAR and
113 p_klev_rec.SECURED_DEAL_YN IS NOT NULL)
114 Then
115 -- check allowed values
116 If (upper(p_klev_rec.SECURED_DEAL_YN) NOT IN ('Y','N')) Then
117 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
118 p_msg_name => g_invalid_value,
119 p_token1 => g_col_name_token,
120 p_token1_value => 'SECURED_DEAL_YN');
121 -- notify caller of an error
122 x_return_status := OKC_API.G_RET_STS_ERROR;
123 End If;
124 End If;
125 exception
126 when OTHERS then
127 -- store SQL error message on message stack
128 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
129 p_msg_name => g_unexpected_error,
130 p_token1 => g_sqlcode_token,
131 p_token1_value => sqlcode,
132 p_token2 => g_sqlerrm_token,
133 p_token2_value => sqlerrm);
134 -- notify caller of an error as UNEXPETED error
135 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
136 End validate_SECURED_DEAL_YN;
137
138 -- Start of comments
139 --
140 -- Procedure Name : validate_RE_LEASE_YN
141 -- Description :
142 -- Business Rules :
143 -- Parameters :
144 -- Version : 1.0
145 -- End of comments
146 PROCEDURE validate_RE_LEASE_YN(x_return_status OUT NOCOPY VARCHAR2,
147 p_klev_rec IN klev_rec_type) is
148 Begin
149 -- initialize return status
150 x_return_status := OKC_API.G_RET_STS_SUCCESS;
151 If (p_klev_rec.RE_LEASE_YN <> OKC_API.G_MISS_CHAR and
152 p_klev_rec.RE_LEASE_YN IS NOT NULL)
153 Then
154 -- check allowed values
155 If (upper(p_klev_rec.RE_LEASE_YN) NOT IN ('Y','N')) Then
156 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
157 p_msg_name => g_invalid_value,
158 p_token1 => g_col_name_token,
159 p_token1_value => 'RE_LEASE_YN');
160 -- notify caller of an error
161 x_return_status := OKC_API.G_RET_STS_ERROR;
162 End If;
163 End If;
164 exception
165 when OTHERS then
166 -- store SQL error message on message stack
167 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
168 p_msg_name => g_unexpected_error,
169 p_token1 => g_sqlcode_token,
170 p_token1_value => sqlcode,
171 p_token2 => g_sqlerrm_token,
172 p_token2_value => sqlerrm);
173 -- notify caller of an error as UNEXPETED error
174 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
175 End validate_RE_LEASE_YN;
176
177 -- Start of comments
178 --
179 -- Procedure Name : validate_FEE_TYPE
180 -- Description : validates precense of the FEE_TYPE for the record
181 -- Business Rules :
182 -- Parameters :
183 -- Version :
184 -- End of comments
185 procedure validate_FEE_TYPE(x_return_status OUT NOCOPY VARCHAR2,
186 p_klev_rec IN klev_rec_type
187 ) is
188 begin
189 -- initialize return status
190 x_return_status := OKC_API.G_RET_STS_SUCCESS;
191
192 -- nulls are allowed
193 if (p_klev_rec.FEE_TYPE <> OKC_API.G_MISS_CHAR) OR (p_klev_rec.FEE_TYPE IS NOT NULL) then
194 -- Check if the value is a valid code from lookup table
195 x_return_status := OKC_UTIL.check_lookup_code('OKL_FEE_TYPES',
196 p_klev_rec.FEE_TYPE);
197 If (x_return_status = OKC_API.G_RET_STS_ERROR) Then
198 --set error message in message stack
199 OKC_API.SET_MESSAGE(
200 p_app_name => G_APP_NAME,
201 p_msg_name => G_INVALID_VALUE,
202 p_token1 => G_COL_NAME_TOKEN,
203 p_token1_value => 'FEE_TYPE');
204 raise G_EXCEPTION_HALT_VALIDATION;
205 Elsif (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
206 raise G_EXCEPTION_HALT_VALIDATION;
207 End If;
208
209 end if;
210 exception
211 when G_EXCEPTION_HALT_VALIDATION then
212 -- no processing necessary; validation can continue with the next column
213 null;
214
215 when OTHERS then
216 -- store SQL error message on message stack for caller
217 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
218 p_msg_name => G_UNEXPECTED_ERROR,
219 p_token1 => g_sqlcode_token,
220 p_token1_value => sqlcode,
221 p_token2 => g_sqlerrm_token,
222 p_token2_value => sqlerrm);
223 -- notify caller of an error
224 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
225 end validate_FEE_TYPE;
226
227
228 --Added by jjuneja
229 -- Start of comments.
230 --
231 -- Procedure Name : validate_ORIGINATION_INCOME
232 -- Description : Validate that the origination income is positive and less
233 -- than the amount
234 -- Business Rules :
235 -- Parameters :
236 -- Version :
237 -- End of comments
238 procedure validate_ORIGINATION_INCOME(x_return_status OUT NOCOPY VARCHAR2,
239 p_klev_rec IN klev_rec_type
240 ) is
241 begin
242 -- initialize return status
243 x_return_status := OKC_API.G_RET_STS_SUCCESS;
244
245
246 IF ( p_klev_rec.FEE_TYPE = 'INCOME') THEN
247 --Check if the origination_income is less than the amount and greater than 0
248 if (p_klev_rec.ORIGINATION_INCOME > p_klev_rec.AMOUNT) OR (p_klev_rec.ORIGINATION_INCOME < 0) then
249
250
251 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
252 p_msg_name => 'OKL_INVALID_ORIG_INCOME');
253 -- notify caller of an error
254 x_return_status := OKC_API.G_RET_STS_ERROR;
255 End If;
256 END IF;
257
258
259 exception
260
261
262 when OTHERS then
263 -- store SQL error message on message stack for caller
264 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
265 p_msg_name => G_UNEXPECTED_ERROR,
266 p_token1 => g_sqlcode_token,
267 p_token1_value => sqlcode,
268 p_token2 => g_sqlerrm_token,
269 p_token2_value => sqlerrm);
270 -- notify caller of an error
271 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
272 end validate_ORIGINATION_INCOME;
273 --End of addition by jjuneja
274
275 --Bug# 3973640 :
276 -- Start of comments
277 --
278 -- Procedure Name : validate_strm_subcalss
279 -- Description : validates precense of the STREAM_TYPE_SUBCLASS for the record
280 -- Business Rules :
281 -- Parameters :
282 -- Version :
283 -- End of comments
284 procedure validate_strm_subclass(x_return_status OUT NOCOPY VARCHAR2,
285 p_klev_rec IN klev_rec_type
286 ) is
287 begin
288 -- initialize return status
289 x_return_status := OKC_API.G_RET_STS_SUCCESS;
290
291 -- nulls are allowed
292 if (p_klev_rec.STREAM_TYPE_SUBCLASS <> OKC_API.G_MISS_CHAR) OR (p_klev_rec.STREAM_TYPE_SUBCLASS IS NOT NULL) then
293 -- Check if the value is a valid code from lookup table
294 x_return_status := OKC_UTIL.check_lookup_code('OKL_STREAM_TYPE_SUBCLASS',
295 p_klev_rec.STREAM_TYPE_SUBCLASS);
296 If (x_return_status = OKC_API.G_RET_STS_ERROR) Then
297 --set error message in message stack
298 OKC_API.SET_MESSAGE(
299 p_app_name => G_APP_NAME,
300 p_msg_name => G_INVALID_VALUE,
301 p_token1 => G_COL_NAME_TOKEN,
302 p_token1_value => 'STREAM_TYPE_SUBCLASS');
303 raise G_EXCEPTION_HALT_VALIDATION;
304 Elsif (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
305 raise G_EXCEPTION_HALT_VALIDATION;
306 End If;
307
308 end if;
309 exception
310 when G_EXCEPTION_HALT_VALIDATION then
311 -- no processing necessary; validation can continue with the next column
312 null;
313
314 when OTHERS then
315 -- store SQL error message on message stack for caller
316 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
317 p_msg_name => G_UNEXPECTED_ERROR,
318 p_token1 => g_sqlcode_token,
319 p_token1_value => sqlcode,
320 p_token2 => g_sqlerrm_token,
321 p_token2_value => sqlerrm);
322 -- notify caller of an error
323 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
324 end validate_strm_subclass;
325
326 --Bug# 4558486: start
327 -- Start of comments
328 --
329 -- Procedure Name : validate_DFF_attributes
330 -- Description :
331 -- Business Rules : DFF validation
332 -- Parameters :
333 -- Version : 1.0
334 -- End of comments
335 PROCEDURE validate_DFF_attributes
336 (x_return_status OUT NOCOPY VARCHAR2,
337 p_klev_rec IN klev_rec_type) is
338
339 l_segment_values_rec Okl_DFlex_Util_Pvt.DFF_Rec_type;
340 l_msg_count NUMBER;
341 l_msg_data VARCHAR2(2000);
342 l_appl_short_name VARCHAR2(30) := 'OKL';
343 l_desc_flex_name VARCHAR2(30) := 'OKL_K_LINES_DF';
344 l_segment_partial_name VARCHAR2(30) := 'ATTRIBUTE';
345 Begin
346 -- initialize return status
347 x_return_status := OKL_API.G_RET_STS_SUCCESS;
348
349 l_segment_values_rec.attribute_category := p_klev_rec.attribute_category;
350 l_segment_values_rec.attribute1 := p_klev_rec.attribute1;
351 l_segment_values_rec.attribute2 := p_klev_rec.attribute2;
352 l_segment_values_rec.attribute3 := p_klev_rec.attribute3;
353 l_segment_values_rec.attribute4 := p_klev_rec.attribute4;
354 l_segment_values_rec.attribute5 := p_klev_rec.attribute5;
355 l_segment_values_rec.attribute6 := p_klev_rec.attribute6;
356 l_segment_values_rec.attribute7 := p_klev_rec.attribute7;
357 l_segment_values_rec.attribute8 := p_klev_rec.attribute8;
358 l_segment_values_rec.attribute9 := p_klev_rec.attribute9;
359 l_segment_values_rec.attribute10 := p_klev_rec.attribute10;
360 l_segment_values_rec.attribute11 := p_klev_rec.attribute11;
361 l_segment_values_rec.attribute12 := p_klev_rec.attribute12;
362 l_segment_values_rec.attribute13 := p_klev_rec.attribute13;
363 l_segment_values_rec.attribute14 := p_klev_rec.attribute14;
364 l_segment_values_rec.attribute15 := p_klev_rec.attribute15;
365
366 okl_dflex_util_pvt.validate_desc_flex
367 (p_api_version => 1.0
368 ,p_init_msg_list => OKL_API.G_FALSE
369 ,x_return_status => x_return_status
370 ,x_msg_count => l_msg_count
371 ,x_msg_data => l_msg_data
372 ,p_appl_short_name => l_appl_short_name
373 ,p_descflex_name => l_desc_flex_name
374 ,p_segment_partial_name => l_segment_partial_name
375 ,p_segment_values_rec => l_segment_values_rec);
376
377 -- check return status
378 IF (x_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
379 RAISE G_EXCEPTION_HALT_VALIDATION;
380 END IF;
381
382 exception
383 when G_EXCEPTION_HALT_VALIDATION THEN
384 x_return_status := OKL_API.G_RET_STS_ERROR;
385
386 when OTHERS then
387 -- store SQL error message on message stack
388 OKL_API.SET_MESSAGE(p_app_name => g_app_name,
389 p_msg_name => g_unexpected_error,
390 p_token1 => g_sqlcode_token,
391 p_token1_value => sqlcode,
392 p_token2 => g_sqlerrm_token,
393 p_token2_value => sqlerrm);
394 -- notify caller of an error as UNEXPETED error
395 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
396 End validate_DFF_attributes;
397 --Bug# 4558486: end
398
399 -- ************************ END OF HAND CODED VALIDATION *********************************
400
401 -- Start of comments
402 --
403 -- Procedure Name : validate_ID
404 -- Description : validates precense of the ID for the record
405 -- Business Rules : required field
406 -- Parameters :
407 -- Version :
408 -- End of comments
409 procedure validate_ID(x_return_status OUT NOCOPY VARCHAR2,
410 p_klev_rec IN klev_rec_type
411 ) is
412 begin
413 -- initialize return status
414 x_return_status := OKC_API.G_RET_STS_SUCCESS;
415
416 -- data is required
417 if (p_klev_rec.ID = OKC_API.G_MISS_NUM) OR (p_klev_rec.ID IS NULL) then
418 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'ID');
419
420 -- notify caller of an error
421 x_return_status := OKC_API.G_RET_STS_ERROR;
422
423 -- halt further validation of this column
424 raise G_EXCEPTION_HALT_VALIDATION;
425 end if;
426 exception
427 when G_EXCEPTION_HALT_VALIDATION then
428 -- no processing necessary; validation can continue with the next column
429 null;
430
431 when OTHERS then
432 -- store SQL error message on message stack for caller
433 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
434 p_msg_name => G_UNEXPECTED_ERROR,
435 p_token1 => g_sqlcode_token,
436 p_token1_value => sqlcode,
437 p_token2 => g_sqlerrm_token,
438 p_token2_value => sqlerrm);
439 -- notify caller of an error
440 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
441 end validate_ID;
442
443 -- Start of comments
444 --
445 -- Procedure Name : validate_OBJECT_VERSION_NUMBER
446 -- Description : validates precense of the OBJECT_VERSION_NUMBER for the record
447 -- Business Rules : required field
448 -- Parameters :
449 -- Version :
450 -- End of comments
451 procedure validate_OBJECT_VERSION_NUMBER(x_return_status OUT NOCOPY VARCHAR2,
452 p_klev_rec IN klev_rec_type
453 ) is
454 begin
455 -- initialize return status
456 x_return_status := OKC_API.G_RET_STS_SUCCESS;
457
458 -- data is required
459 if (p_klev_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) OR (p_klev_rec.OBJECT_VERSION_NUMBER IS NULL) then
460 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'OBJECT_VERSION_NUMBER');
461
462 -- notify caller of an error
463 x_return_status := OKC_API.G_RET_STS_ERROR;
464
465 -- halt further validation of this column
466 raise G_EXCEPTION_HALT_VALIDATION;
467 end if;
468 exception
469 when G_EXCEPTION_HALT_VALIDATION then
470 -- no processing necessary; validation can continue with the next column
471 null;
472
473 when OTHERS then
474 -- store SQL error message on message stack for caller
475 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
476 p_msg_name => G_UNEXPECTED_ERROR,
477 p_token1 => g_sqlcode_token,
478 p_token1_value => sqlcode,
479 p_token2 => g_sqlerrm_token,
480 p_token2_value => sqlerrm);
481 -- notify caller of an error
482 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
483 end validate_OBJECT_VERSION_NUMBER;
484
485 -- Start of comments
486 --
487 -- Procedure Name : validate_CLG_ID
488 -- Description : validates precense of the CLG_ID for the record
489 -- Business Rules : required field
490 -- Parameters :
491 -- Version :
492 -- End of comments
493 procedure validate_CLG_ID(x_return_status OUT NOCOPY VARCHAR2,
494 p_klev_rec IN klev_rec_type
495 ) is
496 begin
497 -- initialize return status
498 x_return_status := OKC_API.G_RET_STS_SUCCESS;
499
500 -- data is required
501 if (p_klev_rec.CLG_ID = OKC_API.G_MISS_NUM) OR (p_klev_rec.CLG_ID IS NULL) then
502 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'CLG_ID');
503
504 -- notify caller of an error
505 x_return_status := OKC_API.G_RET_STS_ERROR;
506
507 -- halt further validation of this column
508 raise G_EXCEPTION_HALT_VALIDATION;
509 end if;
510 exception
511 when G_EXCEPTION_HALT_VALIDATION then
512 -- no processing necessary; validation can continue with the next column
513 null;
514
515 when OTHERS then
516 -- store SQL error message on message stack for caller
517 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
518 p_msg_name => G_UNEXPECTED_ERROR,
519 p_token1 => g_sqlcode_token,
520 p_token1_value => sqlcode,
521 p_token2 => g_sqlerrm_token,
522 p_token2_value => sqlerrm);
523 -- notify caller of an error
524 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
525 end validate_CLG_ID;
526 --Bug# 3143522 : 11.5.10 Subsidies
527 -------------------------------------------
528 --validate attributes for subsidy_id
529 ------------------------------------------
530 PROCEDURE validate_subsidy_id(
531 x_return_status OUT NOCOPY VARCHAR2,
532 p_klev_rec IN klev_rec_type) IS
533
534 cursor l_sub_csr (p_subsidy_id in number) is
535 select 'Y'
536 from okl_subsidies_b subb
537 where subb.id = p_subsidy_id;
538
539 l_exists varchar2(1) default 'N';
540 BEGIN
541 x_return_status := OKL_API.G_RET_STS_SUCCESS;
542 IF (p_klev_rec.subsidy_id = OKL_API.G_MISS_NUM OR
543 p_klev_rec.subsidy_id IS NULL)
544 THEN
545 null; --null values are allowed
546 ELSE
547 --check foreign key validation
548 l_exists := 'N';
549 open l_sub_csr(p_subsidy_id => p_klev_rec.subsidy_id);
550 fetch l_sub_csr into l_exists;
551 If l_sub_csr%NOTFOUND then
552 null;
553 End If;
554 Close l_sub_csr;
555 If l_exists = 'N' then
556 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'Subsidy Name');
557 x_return_status := OKL_API.G_RET_STS_ERROR;
558 RAISE G_EXCEPTION_HALT_VALIDATION;
559 End If;
560 END IF;
561 EXCEPTION
562 WHEN G_EXCEPTION_HALT_VALIDATION THEN
563 null;
564 WHEN OTHERS THEN
565 OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
566 ,p_msg_name => G_UNEXPECTED_ERROR
567 ,p_token1 => G_SQLCODE_TOKEN
568 ,p_token1_value => SQLCODE
569 ,p_token2 => G_SQLERRM_TOKEN
570 ,p_token2_value => SQLERRM);
571 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
572 end validate_subsidy_id;
573 ---------------------------------------------
574 -- Validate_Attributes for: OKL_K_LINES_V --
575 ---------------------------------------------
576 FUNCTION Validate_Attributes (
577 p_klev_rec IN klev_rec_type
578 ) RETURN VARCHAR2 IS
579 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
580 x_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
581 BEGIN
582
583
584 -- call each column-level validation
585 -- do not validate id because it will be set up automatically
586
587 /*
588 validate_ID(x_return_status => l_return_status,
589 p_klev_rec => p_klev_rec);
590
591 -- store the highest degree of error
592 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
593 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
594 x_return_status := l_return_status;
595 end if;
596 end if;
597 */
598 validate_OBJECT_VERSION_NUMBER(x_return_status => l_return_status,
599 p_klev_rec => p_klev_rec);
600
601 -- store the highest degree of error
602 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
603 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
604 x_return_status := l_return_status;
605 end if;
606 end if;
607 /*
608 validate_CLG_ID(x_return_status => l_return_status,
609 p_klev_rec => p_klev_rec);
610
611 -- store the highest degree of error
612 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
613 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
614 x_return_status := l_return_status;
615 end if;
616 end if;
617 */
618
619 validate_CREDIT_TENANT_YN(x_return_status => l_return_status,
620 p_klev_rec => p_klev_rec);
621
622 -- store the highest degree of error
623 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
624 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
625 x_return_status := l_return_status;
626 end if;
627 end if;
628
629 validate_PRESCRIBED_ASSET_YN(x_return_status => l_return_status,
630 p_klev_rec => p_klev_rec);
631
632 -- store the highest degree of error
633 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
634 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
635 x_return_status := l_return_status;
636 end if;
637 end if;
638
639 validate_SECURED_DEAL_YN(x_return_status => l_return_status,
640 p_klev_rec => p_klev_rec);
641
642 -- store the highest degree of error
643 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
644 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
645 x_return_status := l_return_status;
646 end if;
647 end if;
648
649 validate_RE_LEASE_YN(x_return_status => l_return_status,
650 p_klev_rec => p_klev_rec);
651
652 -- store the highest degree of error
653 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
654 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
655 x_return_status := l_return_status;
656 end if;
657 end if;
658
659 --Bug# : 11.5.9.0.3 Fee type
660 validate_FEE_TYPE(x_return_status => l_return_status,
661 p_klev_rec => p_klev_rec);
662
663 -- store the highest degree of error
664 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
665 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
666 x_return_status := l_return_status;
667 end if;
668 end if;
669
670 -------------------------
671 --Bug# 3143522 : Subsidies
672 -------------------------
673 validate_SUBSIDY_ID(x_return_status => l_return_status,
674 p_klev_rec => p_klev_rec);
675
676 -- store the highest degree of error
677 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
678 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
679 x_return_status := l_return_status;
680 end if;
681 end if;
682 -------------------------
683 --Bug# 3143522 : Subsidies
684 -------------------------
685
686 ------------------------
687 --Bug# 3973640 : 11.5.10+
688 ------------------------
689 validate_strm_subclass(x_return_status => l_return_status,
690 p_klev_rec => p_klev_rec);
691
692 -- store the highest degree of error
693 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
694 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
695 x_return_status := l_return_status;
696 end if;
697 end if;
698 ------------------------
699 --Bug# 3973640 : 11.5.10+
700 ------------------------
701
702 --Bug# 4558486
703 -- ***
704 -- DFF Attributes
705 -- ***
706 if ( NVL(p_klev_rec.validate_dff_yn,OKL_API.G_MISS_CHAR) = 'Y') then
707 validate_DFF_attributes
708 (x_return_status => l_return_status,
709 p_klev_rec => p_klev_rec);
710
711 -- store the highest degree of error
712 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
713 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
714 x_return_status := l_return_status;
715 end if;
716 end if;
717 end if;
718
719 --Added by jjuneja to validate that the origination income is less than the amount
720 --only when FEE is of INCOME TYPE
721
722 validate_ORIGINATION_INCOME(x_return_status => l_return_status,
723 p_klev_rec => p_klev_rec);
724 -- store the highest degree of error
725 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
726 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
727 x_return_status := l_return_status;
728 end if;
729 end if;
730
731
732 --End of addition by jjuneja
733
734 -- return status to caller
735 return x_return_status;
736 exception
737 when OTHERS then
738 -- store SQL error message on message stack for caller
739 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
740 p_msg_name => G_UNEXPECTED_ERROR,
741 p_token1 => g_sqlcode_token,
742 p_token1_value => sqlcode,
743 p_token2 => g_sqlerrm_token,
744 p_token2_value => sqlerrm);
745 -- notify caller of an error
746 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
747 -- return status to caller
748 return x_return_status;
749 END Validate_Attributes;
750
751
752 -- --------------------------------------------------------------------------
753 -- End of column level validations
754 -- --------------------------------------------------------------------------
755
756 ---------------------------------------------------------------------------
757 -- FUNCTION get_seq_id
758 ---------------------------------------------------------------------------
759 FUNCTION get_seq_id RETURN NUMBER IS
760 BEGIN
761 RETURN(okc_p_util.raw_to_number(sys_guid()));
762 END get_seq_id;
763
764 ---------------------------------------------------------------------------
765 -- PROCEDURE qc
766 ---------------------------------------------------------------------------
767 PROCEDURE qc IS
768 BEGIN
769 null;
770 END qc;
771
772 ---------------------------------------------------------------------------
773 -- PROCEDURE change_version
774 ---------------------------------------------------------------------------
775 PROCEDURE change_version IS
776 BEGIN
777 null;
778 END change_version;
779
780 ---------------------------------------------------------------------------
781 -- PROCEDURE api_copy
782 ---------------------------------------------------------------------------
783 PROCEDURE api_copy IS
784 BEGIN
785 null;
786 END api_copy;
787
788
789 ---------------------------------------------------------------------------
790 -- FUNCTION get_rec for: OKL_K_LINES
791 ---------------------------------------------------------------------------
792 FUNCTION get_rec (
793 p_kle_rec IN kle_rec_type,
794 x_no_data_found OUT NOCOPY BOOLEAN
795 ) RETURN kle_rec_type IS
796 CURSOR okl_k_lines_pk_csr (p_id IN NUMBER) IS
797 SELECT
798 ID,
799 KLE_ID,
800 STY_ID,
801 OBJECT_VERSION_NUMBER,
802 LAO_AMOUNT,
803 FEE_CHARGE,
804 TITLE_DATE,
805 DATE_RESIDUAL_LAST_REVIEW,
806 DATE_LAST_REAMORTISATION,
807 TERMINATION_PURCHASE_AMOUNT,
808 DATE_LAST_CLEANUP,
809 REMARKETED_AMOUNT,
810 DATE_REMARKETED,
811 REMARKET_MARGIN,
812 REPURCHASED_AMOUNT,
813 DATE_REPURCHASED,
814 GAIN_LOSS,
815 FLOOR_AMOUNT,
816 PREVIOUS_CONTRACT,
817 TRACKED_RESIDUAL,
818 DATE_TITLE_RECEIVED,
819 ESTIMATED_OEC,
820 RESIDUAL_PERCENTAGE,
821 CAPITAL_REDUCTION,
822 VENDOR_ADVANCE_PAID,
823 TRADEIN_AMOUNT,
824 DELIVERED_DATE,
825 YEAR_OF_MANUFACTURE,
826 INITIAL_DIRECT_COST,
827 OCCUPANCY,
828 DATE_LAST_INSPECTION,
829 DATE_NEXT_INSPECTION_DUE,
830 WEIGHTED_AVERAGE_LIFE,
831 BOND_EQUIVALENT_YIELD,
832 REFINANCE_AMOUNT,
833 YEAR_BUILT,
834 COVERAGE_RATIO,
835 GROSS_SQUARE_FOOTAGE,
836 NET_RENTABLE,
837 DATE_LETTER_ACCEPTANCE,
838 DATE_COMMITMENT_EXPIRATION,
839 DATE_APPRAISAL,
840 APPRAISAL_VALUE,
841 RESIDUAL_VALUE,
842 PERCENT,
843 COVERAGE,
844 LRV_AMOUNT,
845 AMOUNT,
846 LRS_PERCENT,
847 EVERGREEN_PERCENT,
848 PERCENT_STAKE,
849 AMOUNT_STAKE,
850 DATE_SOLD,
851 STY_ID_FOR,
852 ATTRIBUTE_CATEGORY,
853 ATTRIBUTE1,
854 ATTRIBUTE2,
855 ATTRIBUTE3,
856 ATTRIBUTE4,
857 ATTRIBUTE5,
858 ATTRIBUTE6,
859 ATTRIBUTE7,
860 ATTRIBUTE8,
861 ATTRIBUTE9,
862 ATTRIBUTE10,
863 ATTRIBUTE11,
864 ATTRIBUTE12,
865 ATTRIBUTE13,
866 ATTRIBUTE14,
867 ATTRIBUTE15,
868 CREATED_BY,
869 CREATION_DATE,
870 LAST_UPDATED_BY,
871 LAST_UPDATE_DATE,
872 LAST_UPDATE_LOGIN,
873 NTY_CODE,
874 FCG_CODE,
875 PRC_CODE,
876 RE_LEASE_YN,
877 PRESCRIBED_ASSET_YN,
878 CREDIT_TENANT_YN,
879 SECURED_DEAL_YN,
880 CLG_ID,
881 DATE_FUNDING,
882 DATE_FUNDING_REQUIRED,
883 DATE_ACCEPTED,
884 DATE_DELIVERY_EXPECTED,
885 OEC,
886 CAPITAL_AMOUNT,
887 RESIDUAL_GRNTY_AMOUNT,
888 RESIDUAL_CODE,
889 RVI_PREMIUM,
890 CREDIT_NATURE,
891 CAPITALIZED_INTEREST,
892 CAPITAL_REDUCTION_PERCENT,
893 --Bug# 2697681 :11.5.9
894 DATE_PAY_INVESTOR_START,
895 PAY_INVESTOR_FREQUENCY,
896 PAY_INVESTOR_EVENT,
897 PAY_INVESTOR_REMITTANCE_DAYS,
898 --financed fees
899 FEE_TYPE,
900 --Bug# 3143522: 11.5.10
901 --subsidy
902 SUBSIDY_ID,
903 --SUBSIDIZED_OEC,
904 --SUBSIDIZED_CAP_AMOUNT,
905 SUBSIDY_OVERRIDE_AMOUNT,
906 --financed fee
907 PRE_TAX_YIELD,
908 AFTER_TAX_YIELD,
909 IMPLICIT_INTEREST_RATE,
910 IMPLICIT_NON_IDC_INTEREST_RATE,
911 PRE_TAX_IRR,
912 AFTER_TAX_IRR,
913 --quote
914 SUB_PRE_TAX_YIELD,
915 SUB_AFTER_TAX_YIELD,
916 SUB_IMPL_INTEREST_RATE,
917 SUB_IMPL_NON_IDC_INT_RATE,
918 SUB_PRE_TAX_IRR,
919 SUB_AFTER_TAX_IRR,
920 --Bug# 2994971
921 ITEM_INSURANCE_CATEGORY,
922 --Bug# 3973640: 11.5.10+
923 QTE_ID,
924 FUNDING_DATE,
925 STREAM_TYPE_SUBCLASS,
926 --Bug# 4419339 OKLH
927 DATE_FUNDING_EXPECTED,
928 MANUFACTURER_NAME,
929 MODEL_NUMBER,
930 DOWN_PAYMENT_RECEIVER_CODE,
931 CAPITALIZE_DOWN_PAYMENT_YN,
932 --Bug#4373029
933 FEE_PURPOSE_CODE,
934 TERMINATION_VALUE,
935 --Bug# 4631549
936 EXPECTED_ASSET_COST,
937 ORIG_CONTRACT_LINE_ID,
938 --Bug# 16344245
939 ORIGINATION_INCOME,
940 AMOUNT_BALANCE_LEGACY,
941 DT_EFFECTIVE_BALANCE_LEGACY
942
943 FROM OKL_K_LINES
944 WHERE OKL_K_LINES.id = p_id;
945 l_okl_k_lines_pk okl_k_lines_pk_csr%ROWTYPE;
946 l_kle_rec kle_rec_type;
947 BEGIN
948
949 x_no_data_found := TRUE;
950 -- Get current database values
951 OPEN okl_k_lines_pk_csr (p_kle_rec.id);
952 FETCH okl_k_lines_pk_csr INTO
953 l_kle_rec.ID,
954 l_kle_rec.KLE_ID,
955 l_kle_rec.STY_ID,
956 l_kle_rec.OBJECT_VERSION_NUMBER,
957 l_kle_rec.LAO_AMOUNT,
958 l_kle_rec.FEE_CHARGE,
959 l_kle_rec.TITLE_DATE,
960 l_kle_rec.DATE_RESIDUAL_LAST_REVIEW,
961 l_kle_rec.DATE_LAST_REAMORTISATION,
962 l_kle_rec.TERMINATION_PURCHASE_AMOUNT,
963 l_kle_rec.DATE_LAST_CLEANUP,
964 l_kle_rec.REMARKETED_AMOUNT,
965 l_kle_rec.DATE_REMARKETED,
966 l_kle_rec.REMARKET_MARGIN,
967 l_kle_rec.REPURCHASED_AMOUNT,
968 l_kle_rec.DATE_REPURCHASED,
969 l_kle_rec.GAIN_LOSS,
970 l_kle_rec.FLOOR_AMOUNT,
971 l_kle_rec.PREVIOUS_CONTRACT,
972 l_kle_rec.TRACKED_RESIDUAL,
973 l_kle_rec.DATE_TITLE_RECEIVED,
974 l_kle_rec.ESTIMATED_OEC,
975 l_kle_rec.RESIDUAL_PERCENTAGE,
976 l_kle_rec.CAPITAL_REDUCTION,
977 l_kle_rec.VENDOR_ADVANCE_PAID,
978 l_kle_rec.TRADEIN_AMOUNT,
979 l_kle_rec.DELIVERED_DATE,
980 l_kle_rec.YEAR_OF_MANUFACTURE,
981 l_kle_rec.INITIAL_DIRECT_COST,
982 l_kle_rec.OCCUPANCY,
983 l_kle_rec.DATE_LAST_INSPECTION,
984 l_kle_rec.DATE_NEXT_INSPECTION_DUE,
985 l_kle_rec.WEIGHTED_AVERAGE_LIFE,
986 l_kle_rec.BOND_EQUIVALENT_YIELD,
987 l_kle_rec.REFINANCE_AMOUNT,
988 l_kle_rec.YEAR_BUILT,
989 l_kle_rec.COVERAGE_RATIO,
990 l_kle_rec.GROSS_SQUARE_FOOTAGE,
991 l_kle_rec.NET_RENTABLE,
992 l_kle_rec.DATE_LETTER_ACCEPTANCE,
993 l_kle_rec.DATE_COMMITMENT_EXPIRATION,
994 l_kle_rec.DATE_APPRAISAL,
995 l_kle_rec.APPRAISAL_VALUE,
996 l_kle_rec.RESIDUAL_VALUE,
997 l_kle_rec.PERCENT,
998 l_kle_rec.COVERAGE,
999 l_kle_rec.LRV_AMOUNT,
1000 l_kle_rec.AMOUNT,
1001 l_kle_rec.LRS_PERCENT,
1002 l_kle_rec.EVERGREEN_PERCENT,
1003 l_kle_rec.PERCENT_STAKE,
1004 l_kle_rec.AMOUNT_STAKE,
1005 l_kle_rec.DATE_SOLD,
1006 l_kle_rec.STY_ID_FOR,
1007 l_kle_rec.ATTRIBUTE_CATEGORY,
1008 l_kle_rec.ATTRIBUTE1,
1009 l_kle_rec.ATTRIBUTE2,
1010 l_kle_rec.ATTRIBUTE3,
1011 l_kle_rec.ATTRIBUTE4,
1012 l_kle_rec.ATTRIBUTE5,
1013 l_kle_rec.ATTRIBUTE6,
1014 l_kle_rec.ATTRIBUTE7,
1015 l_kle_rec.ATTRIBUTE8,
1016 l_kle_rec.ATTRIBUTE9,
1017 l_kle_rec.ATTRIBUTE10,
1018 l_kle_rec.ATTRIBUTE11,
1019 l_kle_rec.ATTRIBUTE12,
1020 l_kle_rec.ATTRIBUTE13,
1021 l_kle_rec.ATTRIBUTE14,
1022 l_kle_rec.ATTRIBUTE15,
1023 l_kle_rec.CREATED_BY,
1024 l_kle_rec.CREATION_DATE,
1025 l_kle_rec.LAST_UPDATED_BY,
1026 l_kle_rec.LAST_UPDATE_DATE,
1027 l_kle_rec.LAST_UPDATE_LOGIN,
1028 l_kle_rec.NTY_CODE,
1029 l_kle_rec.FCG_CODE,
1030 l_kle_rec.PRC_CODE,
1031 l_kle_rec.RE_LEASE_YN,
1032 l_kle_rec.PRESCRIBED_ASSET_YN,
1033 l_kle_rec.CREDIT_TENANT_YN,
1034 l_kle_rec.SECURED_DEAL_YN,
1035 l_kle_rec.CLG_ID,
1036 l_kle_rec.DATE_FUNDING,
1037 l_kle_rec.DATE_FUNDING_REQUIRED,
1038 l_kle_rec.DATE_ACCEPTED,
1039 l_kle_rec.DATE_DELIVERY_EXPECTED,
1040 l_kle_rec.OEC,
1041 l_kle_rec.CAPITAL_AMOUNT,
1042 l_kle_rec.RESIDUAL_GRNTY_AMOUNT,
1043 l_kle_rec.RESIDUAL_CODE,
1044 l_kle_rec.RVI_PREMIUM,
1045 l_kle_rec.CREDIT_NATURE,
1046 l_kle_rec.CAPITALIZED_INTEREST,
1047 l_kle_rec.CAPITAL_REDUCTION_PERCENT,
1048 --Bug# 2697681 11.5.9
1049 l_kle_rec.DATE_PAY_INVESTOR_START,
1050 l_kle_rec.PAY_INVESTOR_FREQUENCY,
1051 l_kle_rec.PAY_INVESTOR_EVENT,
1052 l_kle_rec.PAY_INVESTOR_REMITTANCE_DAYS,
1053 --financed fees
1054 l_kle_rec.FEE_TYPE,
1055 --Bug#3143522 : 11.5.10
1056 --subsidy
1057 l_kle_rec.SUBSIDY_ID,
1058 --l_kle_rec.SUBSIDIZED_OEC,
1059 --l_kle_rec.SUBSIDIZED_CAP_AMOUNT,
1060 l_kle_rec.SUBSIDY_OVERRIDE_AMOUNT,
1061 --financed fee
1062 l_kle_rec.PRE_TAX_YIELD,
1063 l_kle_rec.AFTER_TAX_YIELD,
1064 l_kle_rec.IMPLICIT_INTEREST_RATE,
1065 l_kle_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
1066 l_kle_rec.PRE_TAX_IRR,
1067 l_kle_rec.AFTER_TAX_IRR,
1068 --quote
1069 l_kle_rec.SUB_PRE_TAX_YIELD,
1070 l_kle_rec.SUB_AFTER_TAX_YIELD,
1071 l_kle_rec.SUB_IMPL_INTEREST_RATE,
1072 l_kle_rec.SUB_IMPL_NON_IDC_INT_RATE,
1073 l_kle_rec.SUB_PRE_TAX_IRR,
1074 l_kle_rec.SUB_AFTER_TAX_IRR,
1075 --Bug# 2994971 :
1076 l_kle_rec.ITEM_INSURANCE_CATEGORY,
1077 --Bug# 3973640: 11.5.10+
1078 l_kle_rec.QTE_ID,
1079 l_kle_rec.FUNDING_DATE,
1080 l_kle_rec.STREAM_TYPE_SUBCLASS,
1081 --Bug# 4419339 OKLH
1082 l_kle_rec.DATE_FUNDING_EXPECTED,
1083 l_kle_rec.MANUFACTURER_NAME,
1084 l_kle_rec.MODEL_NUMBER,
1085 l_kle_rec.DOWN_PAYMENT_RECEIVER_CODE,
1086 l_kle_rec.CAPITALIZE_DOWN_PAYMENT_YN,
1087 --Bug#4373029
1088 l_kle_rec.FEE_PURPOSE_CODE,
1089 l_kle_rec.TERMINATION_VALUE,
1090 --Bug# 457760
1091 l_kle_rec.EXPECTED_ASSET_COST,
1092 l_kle_rec.ORIG_CONTRACT_LINE_ID,
1093 --Bug# 16344245
1094 l_kle_rec.ORIGINATION_INCOME,
1095 l_kle_rec.AMOUNT_BALANCE_LEGACY,
1096 l_kle_rec.DT_EFFECTIVE_BALANCE_LEGACY
1097 ;
1098 x_no_data_found := okl_k_lines_pk_csr%NOTFOUND;
1099 CLOSE okl_k_lines_pk_csr;
1100 RETURN(l_kle_rec);
1101 END get_rec;
1102
1103 FUNCTION get_rec (
1104 p_kle_rec IN kle_rec_type
1105 ) RETURN kle_rec_type IS
1106 l_row_notfound BOOLEAN := TRUE;
1107 BEGIN
1108 RETURN(get_rec(p_kle_rec, l_row_notfound));
1109 END get_rec;
1110
1111
1112 ---------------------------------------------------------------------------
1113 -- FUNCTION get_rec for: OKL_K_LINES_H
1114 ---------------------------------------------------------------------------
1115 FUNCTION get_rec (
1116 p_okl_k_lines_h_rec IN okl_k_lines_h_rec_type,
1117 x_no_data_found OUT NOCOPY BOOLEAN
1118 ) RETURN okl_k_lines_h_rec_type IS
1119 CURSOR okl_k_lines_h_pk_csr (p_id IN NUMBER) IS
1120 SELECT
1121 ID,
1122 MAJOR_VERSION,
1123 KLE_ID,
1124 STY_ID,
1125 OBJECT_VERSION_NUMBER,
1126 LAO_AMOUNT,
1127 FEE_CHARGE,
1128 TITLE_DATE,
1129 DATE_RESIDUAL_LAST_REVIEW,
1130 DATE_LAST_REAMORTISATION,
1131 TERMINATION_PURCHASE_AMOUNT,
1132 DATE_LAST_CLEANUP,
1133 REMARKETED_AMOUNT,
1134 DATE_REMARKETED,
1135 REMARKET_MARGIN,
1136 REPURCHASED_AMOUNT,
1137 DATE_REPURCHASED,
1138 GAIN_LOSS,
1139 FLOOR_AMOUNT,
1140 PREVIOUS_CONTRACT,
1141 TRACKED_RESIDUAL,
1142 DATE_TITLE_RECEIVED,
1143 ESTIMATED_OEC,
1144 RESIDUAL_PERCENTAGE,
1145 CAPITAL_REDUCTION,
1146 VENDOR_ADVANCE_PAID,
1147 TRADEIN_AMOUNT,
1148 DELIVERED_DATE,
1149 YEAR_OF_MANUFACTURE,
1150 INITIAL_DIRECT_COST,
1151 OCCUPANCY,
1152 DATE_LAST_INSPECTION,
1153 DATE_NEXT_INSPECTION_DUE,
1154 WEIGHTED_AVERAGE_LIFE,
1155 BOND_EQUIVALENT_YIELD,
1156 REFINANCE_AMOUNT,
1157 YEAR_BUILT,
1158 COVERAGE_RATIO,
1159 GROSS_SQUARE_FOOTAGE,
1160 NET_RENTABLE,
1161 DATE_LETTER_ACCEPTANCE,
1162 DATE_COMMITMENT_EXPIRATION,
1163 DATE_APPRAISAL,
1164 APPRAISAL_VALUE,
1165 RESIDUAL_VALUE,
1166 PERCENT,
1167 COVERAGE,
1168 LRV_AMOUNT,
1169 AMOUNT,
1170 LRS_PERCENT,
1171 EVERGREEN_PERCENT,
1172 PERCENT_STAKE,
1173 AMOUNT_STAKE,
1174 DATE_SOLD,
1175 STY_ID_FOR,
1176 ATTRIBUTE_CATEGORY,
1177 ATTRIBUTE1,
1178 ATTRIBUTE2,
1179 ATTRIBUTE3,
1180 ATTRIBUTE4,
1181 ATTRIBUTE5,
1182 ATTRIBUTE6,
1183 ATTRIBUTE7,
1184 ATTRIBUTE8,
1185 ATTRIBUTE9,
1186 ATTRIBUTE10,
1187 ATTRIBUTE11,
1188 ATTRIBUTE12,
1189 ATTRIBUTE13,
1190 ATTRIBUTE14,
1191 ATTRIBUTE15,
1192 CREATED_BY,
1193 CREATION_DATE,
1194 LAST_UPDATED_BY,
1195 LAST_UPDATE_DATE,
1196 LAST_UPDATE_LOGIN,
1197 NTY_CODE,
1198 FCG_CODE,
1199 PRC_CODE,
1200 RE_LEASE_YN,
1201 PRESCRIBED_ASSET_YN,
1202 CREDIT_TENANT_YN,
1203 SECURED_DEAL_YN,
1204 CLG_ID,
1205 DATE_FUNDING,
1206 DATE_FUNDING_REQUIRED,
1207 DATE_ACCEPTED,
1208 DATE_DELIVERY_EXPECTED,
1209 OEC,
1210 CAPITAL_AMOUNT,
1211 RESIDUAL_GRNTY_AMOUNT,
1212 RESIDUAL_CODE,
1213 RVI_PREMIUM,
1214 CREDIT_NATURE,
1215 CAPITALIZED_INTEREST,
1216 CAPITAL_REDUCTION_PERCENT,
1217 --Bug# 2697681 11.5.9
1218 DATE_PAY_INVESTOR_START,
1219 PAY_INVESTOR_FREQUENCY,
1220 PAY_INVESTOR_EVENT,
1221 PAY_INVESTOR_REMITTANCE_DAYS,
1222 --financed fees
1223 FEE_TYPE,
1224 --Bug# 3143522 : 11.5.10
1225 --subsidy
1226 SUBSIDY_ID,
1227 --SUBSIDIZED_OEC,
1228 --SUBSIDIZED_CAP_AMOUNT,
1229 SUBSIDY_OVERRIDE_AMOUNT,
1230 --financed fee
1231 PRE_TAX_YIELD,
1232 AFTER_TAX_YIELD,
1233 IMPLICIT_INTEREST_RATE,
1234 IMPLICIT_NON_IDC_INTEREST_RATE,
1235 PRE_TAX_IRR,
1236 AFTER_TAX_IRR,
1237 --quote
1238 SUB_PRE_TAX_YIELD,
1239 SUB_AFTER_TAX_YIELD,
1240 SUB_IMPL_INTEREST_RATE,
1241 SUB_IMPL_NON_IDC_INT_RATE,
1242 SUB_PRE_TAX_IRR,
1243 SUB_AFTER_TAX_IRR,
1244 --bug# 2994971
1245 ITEM_INSURANCE_CATEGORY,
1246 --Bug# 3973640 :11.5.10+
1247 QTE_ID,
1248 FUNDING_DATE,
1249 STREAM_TYPE_SUBCLASS,
1250 --Bug# 4419339 OKLH
1251 DATE_FUNDING_EXPECTED,
1252 MANUFACTURER_NAME,
1253 MODEL_NUMBER,
1254 DOWN_PAYMENT_RECEIVER_CODE,
1255 CAPITALIZE_DOWN_PAYMENT_YN,
1256 --Bug#4373029
1257 FEE_PURPOSE_CODE,
1258 TERMINATION_VALUE,
1259 --Bug# 4631549
1260 EXPECTED_ASSET_COST,
1261 ORIG_CONTRACT_LINE_ID,
1262 --Bug# 16344245
1263 ORIGINATION_INCOME,
1264 AMOUNT_BALANCE_LEGACY,
1265 DT_EFFECTIVE_BALANCE_LEGACY
1266
1267 FROM OKL_K_LINES_H
1268 WHERE OKL_K_LINES_H.id = p_id;
1269 l_okl_k_lines_h_pk okl_k_lines_h_pk_csr%ROWTYPE;
1270 l_okl_k_lines_h_rec okl_k_lines_h_rec_type;
1271 BEGIN
1272
1273 x_no_data_found := TRUE;
1274 -- Get current database values
1275 OPEN okl_k_lines_h_pk_csr (p_okl_k_lines_h_rec.id);
1276 FETCH okl_k_lines_h_pk_csr INTO
1277 l_okl_k_lines_h_rec.ID,
1278 l_okl_k_lines_h_rec.MAJOR_VERSION,
1279 l_okl_k_lines_h_rec.KLE_ID,
1280 l_okl_k_lines_h_rec.STY_ID,
1281 l_okl_k_lines_h_rec.OBJECT_VERSION_NUMBER,
1282 l_okl_k_lines_h_rec.LAO_AMOUNT,
1283 l_okl_k_lines_h_rec.FEE_CHARGE,
1284 l_okl_k_lines_h_rec.TITLE_DATE,
1285 l_okl_k_lines_h_rec.DATE_RESIDUAL_LAST_REVIEW,
1286 l_okl_k_lines_h_rec.DATE_LAST_REAMORTISATION,
1287 l_okl_k_lines_h_rec.TERMINATION_PURCHASE_AMOUNT,
1288 l_okl_k_lines_h_rec.DATE_LAST_CLEANUP,
1289 l_okl_k_lines_h_rec.REMARKETED_AMOUNT,
1290 l_okl_k_lines_h_rec.DATE_REMARKETED,
1291 l_okl_k_lines_h_rec.REMARKET_MARGIN,
1292 l_okl_k_lines_h_rec.REPURCHASED_AMOUNT,
1293 l_okl_k_lines_h_rec.DATE_REPURCHASED,
1294 l_okl_k_lines_h_rec.GAIN_LOSS,
1295 l_okl_k_lines_h_rec.FLOOR_AMOUNT,
1296 l_okl_k_lines_h_rec.PREVIOUS_CONTRACT,
1297 l_okl_k_lines_h_rec.TRACKED_RESIDUAL,
1298 l_okl_k_lines_h_rec.DATE_TITLE_RECEIVED,
1299 l_okl_k_lines_h_rec.ESTIMATED_OEC,
1300 l_okl_k_lines_h_rec.RESIDUAL_PERCENTAGE,
1301 l_okl_k_lines_h_rec.CAPITAL_REDUCTION,
1302 l_okl_k_lines_h_rec.VENDOR_ADVANCE_PAID,
1303 l_okl_k_lines_h_rec.TRADEIN_AMOUNT,
1304 l_okl_k_lines_h_rec.DELIVERED_DATE,
1305 l_okl_k_lines_h_rec.YEAR_OF_MANUFACTURE,
1306 l_okl_k_lines_h_rec.INITIAL_DIRECT_COST,
1307 l_okl_k_lines_h_rec.OCCUPANCY,
1308 l_okl_k_lines_h_rec.DATE_LAST_INSPECTION,
1309 l_okl_k_lines_h_rec.DATE_NEXT_INSPECTION_DUE,
1310 l_okl_k_lines_h_rec.WEIGHTED_AVERAGE_LIFE,
1311 l_okl_k_lines_h_rec.BOND_EQUIVALENT_YIELD,
1312 l_okl_k_lines_h_rec.REFINANCE_AMOUNT,
1313 l_okl_k_lines_h_rec.YEAR_BUILT,
1314 l_okl_k_lines_h_rec.COVERAGE_RATIO,
1315 l_okl_k_lines_h_rec.GROSS_SQUARE_FOOTAGE,
1316 l_okl_k_lines_h_rec.NET_RENTABLE,
1317 l_okl_k_lines_h_rec.DATE_LETTER_ACCEPTANCE,
1318 l_okl_k_lines_h_rec.DATE_COMMITMENT_EXPIRATION,
1319 l_okl_k_lines_h_rec.DATE_APPRAISAL,
1320 l_okl_k_lines_h_rec.APPRAISAL_VALUE,
1321 l_okl_k_lines_h_rec.RESIDUAL_VALUE,
1322 l_okl_k_lines_h_rec.PERCENT,
1323 l_okl_k_lines_h_rec.COVERAGE,
1324 l_okl_k_lines_h_rec.LRV_AMOUNT,
1325 l_okl_k_lines_h_rec.AMOUNT,
1326 l_okl_k_lines_h_rec.LRS_PERCENT,
1327 l_okl_k_lines_h_rec.EVERGREEN_PERCENT,
1328 l_okl_k_lines_h_rec.PERCENT_STAKE,
1329 l_okl_k_lines_h_rec.AMOUNT_STAKE,
1330 l_okl_k_lines_h_rec.DATE_SOLD,
1331 l_okl_k_lines_h_rec.STY_ID_FOR,
1332 l_okl_k_lines_h_rec.ATTRIBUTE_CATEGORY,
1333 l_okl_k_lines_h_rec.ATTRIBUTE1,
1334 l_okl_k_lines_h_rec.ATTRIBUTE2,
1335 l_okl_k_lines_h_rec.ATTRIBUTE3,
1336 l_okl_k_lines_h_rec.ATTRIBUTE4,
1337 l_okl_k_lines_h_rec.ATTRIBUTE5,
1338 l_okl_k_lines_h_rec.ATTRIBUTE6,
1339 l_okl_k_lines_h_rec.ATTRIBUTE7,
1340 l_okl_k_lines_h_rec.ATTRIBUTE8,
1341 l_okl_k_lines_h_rec.ATTRIBUTE9,
1342 l_okl_k_lines_h_rec.ATTRIBUTE10,
1343 l_okl_k_lines_h_rec.ATTRIBUTE11,
1344 l_okl_k_lines_h_rec.ATTRIBUTE12,
1345 l_okl_k_lines_h_rec.ATTRIBUTE13,
1346 l_okl_k_lines_h_rec.ATTRIBUTE14,
1347 l_okl_k_lines_h_rec.ATTRIBUTE15,
1348 l_okl_k_lines_h_rec.CREATED_BY,
1349 l_okl_k_lines_h_rec.CREATION_DATE,
1350 l_okl_k_lines_h_rec.LAST_UPDATED_BY,
1351 l_okl_k_lines_h_rec.LAST_UPDATE_DATE,
1352 l_okl_k_lines_h_rec.LAST_UPDATE_LOGIN,
1353 l_okl_k_lines_h_rec.NTY_CODE,
1354 l_okl_k_lines_h_rec.FCG_CODE,
1355 l_okl_k_lines_h_rec.PRC_CODE,
1356 l_okl_k_lines_h_rec.RE_LEASE_YN,
1357 l_okl_k_lines_h_rec.PRESCRIBED_ASSET_YN,
1358 l_okl_k_lines_h_rec.CREDIT_TENANT_YN,
1359 l_okl_k_lines_h_rec.SECURED_DEAL_YN,
1360 l_okl_k_lines_h_rec.CLG_ID,
1361 l_okl_k_lines_h_rec.DATE_FUNDING,
1362 l_okl_k_lines_h_rec.DATE_FUNDING_REQUIRED,
1363 l_okl_k_lines_h_rec.DATE_ACCEPTED,
1364 l_okl_k_lines_h_rec.DATE_DELIVERY_EXPECTED,
1365 l_okl_k_lines_h_rec.OEC,
1366 l_okl_k_lines_h_rec.CAPITAL_AMOUNT,
1367 l_okl_k_lines_h_rec.RESIDUAL_GRNTY_AMOUNT,
1368 l_okl_k_lines_h_rec.RESIDUAL_CODE,
1369 l_okl_k_lines_h_rec.RVI_PREMIUM,
1370 l_okl_k_lines_h_rec.CREDIT_NATURE,
1371 l_okl_k_lines_h_rec.CAPITALIZED_INTEREST,
1372 l_okl_k_lines_h_rec.CAPITAL_REDUCTION_PERCENT,
1373 --Bug# 2697681 11.5.9
1374 l_okl_k_lines_h_rec.DATE_PAY_INVESTOR_START,
1375 l_okl_k_lines_h_rec.PAY_INVESTOR_FREQUENCY,
1376 l_okl_k_lines_h_rec.PAY_INVESTOR_EVENT,
1377 l_okl_k_lines_h_rec.PAY_INVESTOR_REMITTANCE_DAYS,
1378 --financed fees
1379 l_okl_k_lines_h_rec.FEE_TYPE,
1380 --Bug# 3143522 : 11.5.10
1381 --subsidy
1382 l_okl_k_lines_h_rec.SUBSIDY_ID,
1383 --l_okl_k_lines_h_rec.SUBSIDIZED_OEC,
1384 --l_okl_k_lines_h_rec.SUBSIDIZED_CAP_AMOUNT,
1385 l_okl_k_lines_h_rec.SUBSIDY_OVERRIDE_AMOUNT,
1386 --financed fee
1387 l_okl_k_lines_h_rec.PRE_TAX_YIELD,
1388 l_okl_k_lines_h_rec.AFTER_TAX_YIELD,
1389 l_okl_k_lines_h_rec.IMPLICIT_INTEREST_RATE,
1390 l_okl_k_lines_h_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
1391 l_okl_k_lines_h_rec.PRE_TAX_IRR,
1392 l_okl_k_lines_h_rec.AFTER_TAX_IRR,
1393 --quote
1394 l_okl_k_lines_h_rec.SUB_PRE_TAX_YIELD,
1395 l_okl_k_lines_h_rec.SUB_AFTER_TAX_YIELD,
1396 l_okl_k_lines_h_rec.SUB_IMPL_INTEREST_RATE,
1397 l_okl_k_lines_h_rec.SUB_IMPL_NON_IDC_INT_RATE,
1398 l_okl_k_lines_h_rec.SUB_PRE_TAX_IRR,
1399 l_okl_k_lines_h_rec.SUB_AFTER_TAX_IRR,
1400 --Bug# 2994971
1401 l_okl_k_lines_h_rec.ITEM_INSURANCE_CATEGORY,
1402 --Bug# 3973640 11.5.10+
1403 l_okl_k_lines_h_rec.QTE_ID,
1404 l_okl_k_lines_h_rec.FUNDING_DATE,
1405 l_okl_k_lines_h_rec.STREAM_TYPE_SUBCLASS,
1406 --Bug# 4419339 OKLH
1407 l_okl_k_lines_h_rec.DATE_FUNDING_EXPECTED,
1408 l_okl_k_lines_h_rec.MANUFACTURER_NAME,
1409 l_okl_k_lines_h_rec.MODEL_NUMBER,
1410 l_okl_k_lines_h_rec.DOWN_PAYMENT_RECEIVER_CODE,
1411 l_okl_k_lines_h_rec.CAPITALIZE_DOWN_PAYMENT_YN,
1412 --Bug#4373029
1413 l_okl_k_lines_h_rec.FEE_PURPOSE_CODE,
1414 l_okl_k_lines_h_rec.TERMINATION_VALUE,
1415 --Bug# 4631549
1416 l_okl_k_lines_h_rec.EXPECTED_ASSET_COST,
1417 l_okl_k_lines_h_rec.ORIG_CONTRACT_LINE_ID,
1418 --Bug# 16344245
1419 l_okl_k_lines_h_rec.ORIGINATION_INCOME,
1420 l_okl_k_lines_h_rec.AMOUNT_BALANCE_LEGACY,
1421 l_okl_k_lines_h_rec.DT_EFFECTIVE_BALANCE_LEGACY
1422 ;
1423 x_no_data_found := okl_k_lines_h_pk_csr%NOTFOUND;
1424 CLOSE okl_k_lines_h_pk_csr;
1425 RETURN(l_okl_k_lines_h_rec);
1426 END get_rec;
1427
1428 FUNCTION get_rec (
1429 p_okl_k_lines_h_rec IN okl_k_lines_h_rec_type
1430 ) RETURN okl_k_lines_h_rec_type IS
1431 l_row_notfound BOOLEAN := TRUE;
1432 BEGIN
1433 RETURN(get_rec(p_okl_k_lines_h_rec, l_row_notfound));
1434 END get_rec;
1435
1436
1437 ---------------------------------------------------------------------------
1438 -- FUNCTION get_rec for: OKL_K_LINES_V
1439 ---------------------------------------------------------------------------
1440 FUNCTION get_rec (
1441 p_klev_rec IN klev_rec_type,
1442 x_no_data_found OUT NOCOPY BOOLEAN
1443 ) RETURN klev_rec_type IS
1444 CURSOR okl_k_lines_v_pk_csr (p_id IN NUMBER) IS
1445 SELECT
1446 ID,
1447 OBJECT_VERSION_NUMBER,
1448 KLE_ID,
1449 STY_ID,
1450 PRC_CODE,
1451 FCG_CODE,
1452 NTY_CODE,
1453 ESTIMATED_OEC,
1454 LAO_AMOUNT,
1455 TITLE_DATE,
1456 FEE_CHARGE,
1457 LRS_PERCENT,
1458 INITIAL_DIRECT_COST,
1459 PERCENT_STAKE,
1460 PERCENT,
1461 EVERGREEN_PERCENT,
1462 AMOUNT_STAKE,
1463 OCCUPANCY,
1464 COVERAGE,
1465 RESIDUAL_PERCENTAGE,
1466 DATE_LAST_INSPECTION,
1467 DATE_SOLD,
1468 LRV_AMOUNT,
1469 CAPITAL_REDUCTION,
1470 DATE_NEXT_INSPECTION_DUE,
1471 DATE_RESIDUAL_LAST_REVIEW,
1472 DATE_LAST_REAMORTISATION,
1473 VENDOR_ADVANCE_PAID,
1474 WEIGHTED_AVERAGE_LIFE,
1475 TRADEIN_AMOUNT,
1476 BOND_EQUIVALENT_YIELD,
1477 TERMINATION_PURCHASE_AMOUNT,
1478 REFINANCE_AMOUNT,
1479 YEAR_BUILT,
1480 DELIVERED_DATE,
1481 CREDIT_TENANT_YN,
1482 DATE_LAST_CLEANUP,
1483 YEAR_OF_MANUFACTURE,
1484 COVERAGE_RATIO,
1485 REMARKETED_AMOUNT,
1486 GROSS_SQUARE_FOOTAGE,
1487 PRESCRIBED_ASSET_YN,
1488 DATE_REMARKETED,
1489 NET_RENTABLE,
1490 REMARKET_MARGIN,
1491 DATE_LETTER_ACCEPTANCE,
1492 REPURCHASED_AMOUNT,
1493 DATE_COMMITMENT_EXPIRATION,
1494 DATE_REPURCHASED,
1495 DATE_APPRAISAL,
1496 RESIDUAL_VALUE,
1497 APPRAISAL_VALUE,
1498 SECURED_DEAL_YN,
1499 GAIN_LOSS,
1500 FLOOR_AMOUNT,
1501 RE_LEASE_YN,
1502 PREVIOUS_CONTRACT,
1503 TRACKED_RESIDUAL,
1504 DATE_TITLE_RECEIVED,
1505 AMOUNT,
1506 ATTRIBUTE_CATEGORY,
1507 ATTRIBUTE1,
1508 ATTRIBUTE2,
1509 ATTRIBUTE3,
1510 ATTRIBUTE4,
1511 ATTRIBUTE5,
1512 ATTRIBUTE6,
1513 ATTRIBUTE7,
1514 ATTRIBUTE8,
1515 ATTRIBUTE9,
1516 ATTRIBUTE10,
1517 ATTRIBUTE11,
1518 ATTRIBUTE12,
1519 ATTRIBUTE13,
1520 ATTRIBUTE14,
1521 ATTRIBUTE15,
1522 STY_ID_FOR,
1523 CLG_ID,
1524 CREATED_BY,
1525 CREATION_DATE,
1526 LAST_UPDATED_BY,
1527 LAST_UPDATE_DATE,
1528 LAST_UPDATE_LOGIN,
1529 DATE_FUNDING,
1530 DATE_FUNDING_REQUIRED,
1531 DATE_ACCEPTED,
1532 DATE_DELIVERY_EXPECTED,
1533 OEC,
1534 CAPITAL_AMOUNT,
1535 RESIDUAL_GRNTY_AMOUNT,
1536 RESIDUAL_CODE,
1537 RVI_PREMIUM,
1538 CREDIT_NATURE,
1539 CAPITALIZED_INTEREST,
1540 CAPITAL_REDUCTION_PERCENT,
1541 --Bug# 2697681 11.5.9
1542 DATE_PAY_INVESTOR_START,
1543 PAY_INVESTOR_FREQUENCY,
1544 PAY_INVESTOR_EVENT,
1545 PAY_INVESTOR_REMITTANCE_DAYS,
1546 --financed fees
1547 FEE_TYPE,
1548 --Bug#3143522 : 11.5.10
1549 --subsidy
1550 SUBSIDY_ID,
1551 --SUBSIDIZED_OEC,
1552 --SUBSIDIZED_CAP_AMOUNT,
1553 SUBSIDY_OVERRIDE_AMOUNT,
1554 --financed fee
1555 PRE_TAX_YIELD,
1556 AFTER_TAX_YIELD,
1557 IMPLICIT_INTEREST_RATE,
1558 IMPLICIT_NON_IDC_INTEREST_RATE,
1559 PRE_TAX_IRR,
1560 AFTER_TAX_IRR,
1561 --quote
1562 SUB_PRE_TAX_YIELD,
1563 SUB_AFTER_TAX_YIELD,
1564 SUB_IMPL_INTEREST_RATE,
1565 SUB_IMPL_NON_IDC_INT_RATE,
1566 SUB_PRE_TAX_IRR,
1567 SUB_AFTER_TAX_IRR,
1568 --Bug# 2994971
1569 ITEM_INSURANCE_CATEGORY,
1570 --Bug# 3973640 11.5.10+
1571 QTE_ID,
1572 FUNDING_DATE,
1573 STREAM_TYPE_SUBCLASS,
1574 --Bug# 4419339 OKLH
1575 DATE_FUNDING_EXPECTED,
1576 MANUFACTURER_NAME,
1577 MODEL_NUMBER,
1578 DOWN_PAYMENT_RECEIVER_CODE,
1579 CAPITALIZE_DOWN_PAYMENT_YN,
1580 --Bug#4373029
1581 FEE_PURPOSE_CODE,
1582 TERMINATION_VALUE,
1583 --Bug# 4631549
1584 EXPECTED_ASSET_COST,
1585 ORIG_CONTRACT_LINE_ID,
1586 --Added by jjuneja
1587 ORIGINATION_INCOME,
1588 --End of addition by jjuneja
1589 --Bug# 16344245
1590 AMOUNT_BALANCE_LEGACY,
1591 DT_EFFECTIVE_BALANCE_LEGACY
1592
1593 FROM OKL_K_LINES_V
1594 WHERE OKL_K_LINES_V.id = p_id;
1595 l_okl_k_lines_v_pk okl_k_lines_v_pk_csr%ROWTYPE;
1596 l_klev_rec klev_rec_type;
1597 BEGIN
1598
1599 x_no_data_found := TRUE;
1600 -- Get current database values
1601 OPEN okl_k_lines_v_pk_csr (p_klev_rec.id);
1602 FETCH okl_k_lines_v_pk_csr INTO
1603 l_klev_rec.ID,
1604 l_klev_rec.OBJECT_VERSION_NUMBER,
1605 l_klev_rec.KLE_ID,
1606 l_klev_rec.STY_ID,
1607 l_klev_rec.PRC_CODE,
1608 l_klev_rec.FCG_CODE,
1609 l_klev_rec.NTY_CODE,
1610 l_klev_rec.ESTIMATED_OEC,
1611 l_klev_rec.LAO_AMOUNT,
1612 l_klev_rec.TITLE_DATE,
1613 l_klev_rec.FEE_CHARGE,
1614 l_klev_rec.LRS_PERCENT,
1615 l_klev_rec.INITIAL_DIRECT_COST,
1616 l_klev_rec.PERCENT_STAKE,
1617 l_klev_rec.PERCENT,
1618 l_klev_rec.EVERGREEN_PERCENT,
1619 l_klev_rec.AMOUNT_STAKE,
1620 l_klev_rec.OCCUPANCY,
1621 l_klev_rec.COVERAGE,
1622 l_klev_rec.RESIDUAL_PERCENTAGE,
1623 l_klev_rec.DATE_LAST_INSPECTION,
1624 l_klev_rec.DATE_SOLD,
1625 l_klev_rec.LRV_AMOUNT,
1626 l_klev_rec.CAPITAL_REDUCTION,
1627 l_klev_rec.DATE_NEXT_INSPECTION_DUE,
1628 l_klev_rec.DATE_RESIDUAL_LAST_REVIEW,
1629 l_klev_rec.DATE_LAST_REAMORTISATION,
1630 l_klev_rec.VENDOR_ADVANCE_PAID,
1631 l_klev_rec.WEIGHTED_AVERAGE_LIFE,
1632 l_klev_rec.TRADEIN_AMOUNT,
1633 l_klev_rec.BOND_EQUIVALENT_YIELD,
1634 l_klev_rec.TERMINATION_PURCHASE_AMOUNT,
1635 l_klev_rec.REFINANCE_AMOUNT,
1636 l_klev_rec.YEAR_BUILT,
1637 l_klev_rec.DELIVERED_DATE,
1638 l_klev_rec.CREDIT_TENANT_YN,
1639 l_klev_rec.DATE_LAST_CLEANUP,
1640 l_klev_rec.YEAR_OF_MANUFACTURE,
1641 l_klev_rec.COVERAGE_RATIO,
1642 l_klev_rec.REMARKETED_AMOUNT,
1643 l_klev_rec.GROSS_SQUARE_FOOTAGE,
1644 l_klev_rec.PRESCRIBED_ASSET_YN,
1645 l_klev_rec.DATE_REMARKETED,
1646 l_klev_rec.NET_RENTABLE,
1647 l_klev_rec.REMARKET_MARGIN,
1648 l_klev_rec.DATE_LETTER_ACCEPTANCE,
1649 l_klev_rec.REPURCHASED_AMOUNT,
1650 l_klev_rec.DATE_COMMITMENT_EXPIRATION,
1651 l_klev_rec.DATE_REPURCHASED,
1652 l_klev_rec.DATE_APPRAISAL,
1653 l_klev_rec.RESIDUAL_VALUE,
1654 l_klev_rec.APPRAISAL_VALUE,
1655 l_klev_rec.SECURED_DEAL_YN,
1656 l_klev_rec.GAIN_LOSS,
1657 l_klev_rec.FLOOR_AMOUNT,
1658 l_klev_rec.RE_LEASE_YN,
1659 l_klev_rec.PREVIOUS_CONTRACT,
1660 l_klev_rec.TRACKED_RESIDUAL,
1661 l_klev_rec.DATE_TITLE_RECEIVED,
1662 l_klev_rec.AMOUNT,
1663 l_klev_rec.ATTRIBUTE_CATEGORY,
1664 l_klev_rec.ATTRIBUTE1,
1665 l_klev_rec.ATTRIBUTE2,
1666 l_klev_rec.ATTRIBUTE3,
1667 l_klev_rec.ATTRIBUTE4,
1668 l_klev_rec.ATTRIBUTE5,
1669 l_klev_rec.ATTRIBUTE6,
1670 l_klev_rec.ATTRIBUTE7,
1671 l_klev_rec.ATTRIBUTE8,
1672 l_klev_rec.ATTRIBUTE9,
1673 l_klev_rec.ATTRIBUTE10,
1674 l_klev_rec.ATTRIBUTE11,
1675 l_klev_rec.ATTRIBUTE12,
1676 l_klev_rec.ATTRIBUTE13,
1677 l_klev_rec.ATTRIBUTE14,
1678 l_klev_rec.ATTRIBUTE15,
1679 l_klev_rec.STY_ID_FOR,
1680 l_klev_rec.CLG_ID,
1681 l_klev_rec.CREATED_BY,
1682 l_klev_rec.CREATION_DATE,
1683 l_klev_rec.LAST_UPDATED_BY,
1684 l_klev_rec.LAST_UPDATE_DATE,
1685 l_klev_rec.LAST_UPDATE_LOGIN,
1686 l_klev_rec.DATE_FUNDING,
1687 l_klev_rec.DATE_FUNDING_REQUIRED,
1688 l_klev_rec.DATE_ACCEPTED,
1689 l_klev_rec.DATE_DELIVERY_EXPECTED,
1690 l_klev_rec.OEC,
1691 l_klev_rec.CAPITAL_AMOUNT,
1692 l_klev_rec.RESIDUAL_GRNTY_AMOUNT,
1693 l_klev_rec.RESIDUAL_CODE,
1694 l_klev_rec.RVI_PREMIUM,
1695 l_klev_rec.CREDIT_NATURE,
1696 l_klev_rec.CAPITALIZED_INTEREST,
1697 l_klev_rec.CAPITAL_REDUCTION_PERCENT,
1698 --Bug# 2697681 11.5.9
1699 l_klev_rec.DATE_PAY_INVESTOR_START,
1700 l_klev_rec.PAY_INVESTOR_FREQUENCY,
1701 l_klev_rec.PAY_INVESTOR_EVENT,
1702 l_klev_rec.PAY_INVESTOR_REMITTANCE_DAYS,
1703 --financed fees
1704 l_klev_rec.FEE_TYPE,
1705 --Bug# 3143522 : 11.5.10
1706 --subsidy
1707 l_klev_rec.SUBSIDY_ID,
1708 --l_klev_rec.SUBSIDIZED_OEC,
1709 --l_klev_rec.SUBSIDIZED_CAP_AMOUNT,
1710 l_klev_rec.SUBSIDY_OVERRIDE_AMOUNT,
1711 --financed fee
1712 l_klev_rec.PRE_TAX_YIELD,
1713 l_klev_rec.AFTER_TAX_YIELD,
1714 l_klev_rec.IMPLICIT_INTEREST_RATE,
1715 l_klev_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
1716 l_klev_rec.PRE_TAX_IRR,
1717 l_klev_rec.AFTER_TAX_IRR,
1718 --quote
1719 l_klev_rec.SUB_PRE_TAX_YIELD,
1720 l_klev_rec.SUB_AFTER_TAX_YIELD,
1721 l_klev_rec.SUB_IMPL_INTEREST_RATE,
1722 l_klev_rec.SUB_IMPL_NON_IDC_INT_RATE,
1723 l_klev_rec.SUB_PRE_TAX_IRR,
1724 l_klev_rec.SUB_AFTER_TAX_IRR,
1725 --Bug# 2994971
1726 l_klev_rec.ITEM_INSURANCE_CATEGORY,
1727 --Bug# 3973640 - 11.5.10+
1728 l_klev_rec.QTE_ID,
1729 l_klev_rec.FUNDING_DATE,
1730 l_klev_rec.STREAM_TYPE_SUBCLASS,
1731 --Bug# 4419339 OKLH
1732 l_klev_rec.DATE_FUNDING_EXPECTED,
1733 l_klev_rec.MANUFACTURER_NAME,
1734 l_klev_rec.MODEL_NUMBER,
1735 l_klev_rec.DOWN_PAYMENT_RECEIVER_CODE,
1736 l_klev_rec.CAPITALIZE_DOWN_PAYMENT_YN,
1737 --Bug#4373029
1738 l_klev_rec.FEE_PURPOSE_CODE,
1739 l_klev_rec.TERMINATION_VALUE,
1740 --Bug# 4631549
1741 l_klev_rec.EXPECTED_ASSET_COST,
1742 l_klev_rec.ORIG_CONTRACT_LINE_ID,
1743 --Added by jjuneja
1744 l_klev_rec.ORIGINATION_INCOME,
1745 --Bug# 16344245
1746 l_klev_rec.AMOUNT_BALANCE_LEGACY,
1747 l_klev_rec.DT_EFFECTIVE_BALANCE_LEGACY
1748
1749 ;
1750 x_no_data_found := okl_k_lines_v_pk_csr%NOTFOUND;
1751 CLOSE okl_k_lines_v_pk_csr;
1752 RETURN(l_klev_rec);
1753 END get_rec;
1754
1755 FUNCTION get_rec (
1756 p_klev_rec IN klev_rec_type
1757 ) RETURN klev_rec_type IS
1758 l_row_notfound BOOLEAN := TRUE;
1759 BEGIN
1760 RETURN(get_rec(p_klev_rec, l_row_notfound));
1761 END get_rec;
1762
1763
1764 -----------------------------------------------------
1765 -- FUNCTION null_out_defaults for: OKL_K_LINES_V --
1766 -----------------------------------------------------
1767 FUNCTION null_out_defaults (
1768 p_klev_rec IN klev_rec_type
1769 ) RETURN klev_rec_type IS
1770 l_klev_rec klev_rec_type := p_klev_rec;
1771 BEGIN
1772
1773 IF (l_klev_rec.ID = OKC_API.G_MISS_NUM) THEN
1774 l_klev_rec.ID := NULL;
1775 END IF;
1776
1777 IF (l_klev_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) THEN
1778 l_klev_rec.OBJECT_VERSION_NUMBER := NULL;
1779 END IF;
1780
1781 IF (l_klev_rec.KLE_ID = OKC_API.G_MISS_NUM) THEN
1782 l_klev_rec.KLE_ID := NULL;
1783 END IF;
1784
1785 IF (l_klev_rec.STY_ID = OKC_API.G_MISS_NUM) THEN
1786 l_klev_rec.STY_ID := NULL;
1787 END IF;
1788
1789 IF (l_klev_rec.PRC_CODE = OKC_API.G_MISS_CHAR) THEN
1790 l_klev_rec.PRC_CODE := NULL;
1791 END IF;
1792
1793 IF (l_klev_rec.FCG_CODE = OKC_API.G_MISS_CHAR) THEN
1794 l_klev_rec.FCG_CODE := NULL;
1795 END IF;
1796
1797 IF (l_klev_rec.NTY_CODE = OKC_API.G_MISS_CHAR) THEN
1798 l_klev_rec.NTY_CODE := NULL;
1799 END IF;
1800
1801 IF (l_klev_rec.ESTIMATED_OEC = OKC_API.G_MISS_NUM) THEN
1802 l_klev_rec.ESTIMATED_OEC := NULL;
1803 END IF;
1804
1805 IF (l_klev_rec.LAO_AMOUNT = OKC_API.G_MISS_NUM) THEN
1806 l_klev_rec.LAO_AMOUNT := NULL;
1807 END IF;
1808
1809 IF (l_klev_rec.TITLE_DATE = OKC_API.G_MISS_DATE) THEN
1810 l_klev_rec.TITLE_DATE := NULL;
1811 END IF;
1812
1813 IF (l_klev_rec.FEE_CHARGE = OKC_API.G_MISS_NUM) THEN
1814 l_klev_rec.FEE_CHARGE := NULL;
1815 END IF;
1816
1817 IF (l_klev_rec.LRS_PERCENT = OKC_API.G_MISS_NUM) THEN
1818 l_klev_rec.LRS_PERCENT := NULL;
1819 END IF;
1820
1821 IF (l_klev_rec.INITIAL_DIRECT_COST = OKC_API.G_MISS_NUM) THEN
1822 l_klev_rec.INITIAL_DIRECT_COST := NULL;
1823 END IF;
1824
1825 IF (l_klev_rec.PERCENT_STAKE = OKC_API.G_MISS_NUM) THEN
1826 l_klev_rec.PERCENT_STAKE := NULL;
1827 END IF;
1828
1829 IF (l_klev_rec.PERCENT = OKC_API.G_MISS_NUM) THEN
1830 l_klev_rec.PERCENT := NULL;
1831 END IF;
1832
1833 IF (l_klev_rec.EVERGREEN_PERCENT = OKC_API.G_MISS_NUM) THEN
1834 l_klev_rec.EVERGREEN_PERCENT := NULL;
1835 END IF;
1836
1837 IF (l_klev_rec.AMOUNT_STAKE = OKC_API.G_MISS_NUM) THEN
1838 l_klev_rec.AMOUNT_STAKE := NULL;
1839 END IF;
1840
1841 IF (l_klev_rec.OCCUPANCY = OKC_API.G_MISS_NUM) THEN
1842 l_klev_rec.OCCUPANCY := NULL;
1843 END IF;
1844
1845 IF (l_klev_rec.COVERAGE = OKC_API.G_MISS_NUM) THEN
1846 l_klev_rec.COVERAGE := NULL;
1847 END IF;
1848
1849 IF (l_klev_rec.RESIDUAL_PERCENTAGE = OKC_API.G_MISS_NUM) THEN
1850 l_klev_rec.RESIDUAL_PERCENTAGE := NULL;
1851 END IF;
1852
1853 IF (l_klev_rec.DATE_LAST_INSPECTION = OKC_API.G_MISS_DATE) THEN
1854 l_klev_rec.DATE_LAST_INSPECTION := NULL;
1855 END IF;
1856
1857 IF (l_klev_rec.DATE_SOLD = OKC_API.G_MISS_DATE) THEN
1858 l_klev_rec.DATE_SOLD := NULL;
1859 END IF;
1860
1861 IF (l_klev_rec.LRV_AMOUNT = OKC_API.G_MISS_NUM) THEN
1862 l_klev_rec.LRV_AMOUNT := NULL;
1863 END IF;
1864
1865 IF (l_klev_rec.CAPITAL_REDUCTION = OKC_API.G_MISS_NUM) THEN
1866 l_klev_rec.CAPITAL_REDUCTION := NULL;
1867 END IF;
1868
1869 IF (l_klev_rec.DATE_NEXT_INSPECTION_DUE = OKC_API.G_MISS_DATE) THEN
1870 l_klev_rec.DATE_NEXT_INSPECTION_DUE := NULL;
1871 END IF;
1872
1873 IF (l_klev_rec.DATE_RESIDUAL_LAST_REVIEW = OKC_API.G_MISS_DATE) THEN
1874 l_klev_rec.DATE_RESIDUAL_LAST_REVIEW := NULL;
1875 END IF;
1876
1877 IF (l_klev_rec.DATE_LAST_REAMORTISATION = OKC_API.G_MISS_DATE) THEN
1878 l_klev_rec.DATE_LAST_REAMORTISATION := NULL;
1879 END IF;
1880
1881 IF (l_klev_rec.VENDOR_ADVANCE_PAID = OKC_API.G_MISS_NUM) THEN
1882 l_klev_rec.VENDOR_ADVANCE_PAID := NULL;
1883 END IF;
1884
1885 IF (l_klev_rec.WEIGHTED_AVERAGE_LIFE = OKC_API.G_MISS_NUM) THEN
1886 l_klev_rec.WEIGHTED_AVERAGE_LIFE := NULL;
1887 END IF;
1888
1889 IF (l_klev_rec.TRADEIN_AMOUNT = OKC_API.G_MISS_NUM) THEN
1890 l_klev_rec.TRADEIN_AMOUNT := NULL;
1891 END IF;
1892
1893 IF (l_klev_rec.BOND_EQUIVALENT_YIELD = OKC_API.G_MISS_NUM) THEN
1894 l_klev_rec.BOND_EQUIVALENT_YIELD := NULL;
1895 END IF;
1896
1897 IF (l_klev_rec.TERMINATION_PURCHASE_AMOUNT = OKC_API.G_MISS_NUM) THEN
1898 l_klev_rec.TERMINATION_PURCHASE_AMOUNT := NULL;
1899 END IF;
1900
1901 IF (l_klev_rec.REFINANCE_AMOUNT = OKC_API.G_MISS_NUM) THEN
1902 l_klev_rec.REFINANCE_AMOUNT := NULL;
1903 END IF;
1904
1905 IF (l_klev_rec.YEAR_BUILT = OKC_API.G_MISS_NUM) THEN
1906 l_klev_rec.YEAR_BUILT := NULL;
1907 END IF;
1908
1909 IF (l_klev_rec.DELIVERED_DATE = OKC_API.G_MISS_DATE) THEN
1910 l_klev_rec.DELIVERED_DATE := NULL;
1911 END IF;
1912
1913 IF (l_klev_rec.CREDIT_TENANT_YN = OKC_API.G_MISS_CHAR) THEN
1914 l_klev_rec.CREDIT_TENANT_YN := NULL;
1915 END IF;
1916
1917 IF (l_klev_rec.DATE_LAST_CLEANUP = OKC_API.G_MISS_DATE) THEN
1918 l_klev_rec.DATE_LAST_CLEANUP := NULL;
1919 END IF;
1920
1921 IF (l_klev_rec.YEAR_OF_MANUFACTURE = OKC_API.G_MISS_CHAR) THEN
1922 l_klev_rec.YEAR_OF_MANUFACTURE := NULL;
1923 END IF;
1924
1925 IF (l_klev_rec.COVERAGE_RATIO = OKC_API.G_MISS_NUM) THEN
1926 l_klev_rec.COVERAGE_RATIO := NULL;
1927 END IF;
1928
1929 IF (l_klev_rec.REMARKETED_AMOUNT = OKC_API.G_MISS_NUM) THEN
1930 l_klev_rec.REMARKETED_AMOUNT := NULL;
1931 END IF;
1932
1933 IF (l_klev_rec.GROSS_SQUARE_FOOTAGE = OKC_API.G_MISS_NUM) THEN
1934 l_klev_rec.GROSS_SQUARE_FOOTAGE := NULL;
1935 END IF;
1936
1937 IF (l_klev_rec.PRESCRIBED_ASSET_YN = OKC_API.G_MISS_CHAR) THEN
1938 l_klev_rec.PRESCRIBED_ASSET_YN := NULL;
1939 END IF;
1940
1941 IF (l_klev_rec.DATE_REMARKETED = OKC_API.G_MISS_DATE) THEN
1942 l_klev_rec.DATE_REMARKETED := NULL;
1943 END IF;
1944
1945 IF (l_klev_rec.NET_RENTABLE = OKC_API.G_MISS_NUM) THEN
1946 l_klev_rec.NET_RENTABLE := NULL;
1947 END IF;
1948
1949 IF (l_klev_rec.REMARKET_MARGIN = OKC_API.G_MISS_NUM) THEN
1950 l_klev_rec.REMARKET_MARGIN := NULL;
1951 END IF;
1952
1953 IF (l_klev_rec.DATE_LETTER_ACCEPTANCE = OKC_API.G_MISS_DATE) THEN
1954 l_klev_rec.DATE_LETTER_ACCEPTANCE := NULL;
1955 END IF;
1956
1957 IF (l_klev_rec.REPURCHASED_AMOUNT = OKC_API.G_MISS_NUM) THEN
1958 l_klev_rec.REPURCHASED_AMOUNT := NULL;
1959 END IF;
1960
1961 IF (l_klev_rec.DATE_COMMITMENT_EXPIRATION = OKC_API.G_MISS_DATE) THEN
1962 l_klev_rec.DATE_COMMITMENT_EXPIRATION := NULL;
1963 END IF;
1964
1965 IF (l_klev_rec.DATE_REPURCHASED = OKC_API.G_MISS_DATE) THEN
1966 l_klev_rec.DATE_REPURCHASED := NULL;
1967 END IF;
1968
1969 IF (l_klev_rec.DATE_APPRAISAL = OKC_API.G_MISS_DATE) THEN
1970 l_klev_rec.DATE_APPRAISAL := NULL;
1971 END IF;
1972
1973 IF (l_klev_rec.RESIDUAL_VALUE = OKC_API.G_MISS_NUM) THEN
1974 l_klev_rec.RESIDUAL_VALUE := NULL;
1975 END IF;
1976
1977 IF (l_klev_rec.APPRAISAL_VALUE = OKC_API.G_MISS_NUM) THEN
1978 l_klev_rec.APPRAISAL_VALUE := NULL;
1979 END IF;
1980
1981 IF (l_klev_rec.SECURED_DEAL_YN = OKC_API.G_MISS_CHAR) THEN
1982 l_klev_rec.SECURED_DEAL_YN := NULL;
1983 END IF;
1984
1985 IF (l_klev_rec.GAIN_LOSS = OKC_API.G_MISS_NUM) THEN
1986 l_klev_rec.GAIN_LOSS := NULL;
1987 END IF;
1988
1989 IF (l_klev_rec.FLOOR_AMOUNT = OKC_API.G_MISS_NUM) THEN
1990 l_klev_rec.FLOOR_AMOUNT := NULL;
1991 END IF;
1992
1993 IF (l_klev_rec.RE_LEASE_YN = OKC_API.G_MISS_CHAR) THEN
1994 l_klev_rec.RE_LEASE_YN := NULL;
1995 END IF;
1996
1997 IF (l_klev_rec.PREVIOUS_CONTRACT = OKC_API.G_MISS_CHAR) THEN
1998 l_klev_rec.PREVIOUS_CONTRACT := NULL;
1999 END IF;
2000
2001 IF (l_klev_rec.TRACKED_RESIDUAL = OKC_API.G_MISS_NUM) THEN
2002 l_klev_rec.TRACKED_RESIDUAL := NULL;
2003 END IF;
2004
2005 IF (l_klev_rec.DATE_TITLE_RECEIVED = OKC_API.G_MISS_DATE) THEN
2006 l_klev_rec.DATE_TITLE_RECEIVED := NULL;
2007 END IF;
2008
2009 IF (l_klev_rec.AMOUNT = OKC_API.G_MISS_NUM) THEN
2010 l_klev_rec.AMOUNT := NULL;
2011 END IF;
2012
2013 IF (l_klev_rec.ATTRIBUTE_CATEGORY = OKC_API.G_MISS_CHAR) THEN
2014 l_klev_rec.ATTRIBUTE_CATEGORY := NULL;
2015 END IF;
2016
2017 IF (l_klev_rec.ATTRIBUTE1 = OKC_API.G_MISS_CHAR) THEN
2018 l_klev_rec.ATTRIBUTE1 := NULL;
2019 END IF;
2020
2021 IF (l_klev_rec.ATTRIBUTE2 = OKC_API.G_MISS_CHAR) THEN
2022 l_klev_rec.ATTRIBUTE2 := NULL;
2023 END IF;
2024
2025 IF (l_klev_rec.ATTRIBUTE3 = OKC_API.G_MISS_CHAR) THEN
2026 l_klev_rec.ATTRIBUTE3 := NULL;
2027 END IF;
2028
2029 IF (l_klev_rec.ATTRIBUTE4 = OKC_API.G_MISS_CHAR) THEN
2030 l_klev_rec.ATTRIBUTE4 := NULL;
2031 END IF;
2032
2033 IF (l_klev_rec.ATTRIBUTE5 = OKC_API.G_MISS_CHAR) THEN
2034 l_klev_rec.ATTRIBUTE5 := NULL;
2035 END IF;
2036
2037 IF (l_klev_rec.ATTRIBUTE6 = OKC_API.G_MISS_CHAR) THEN
2038 l_klev_rec.ATTRIBUTE6 := NULL;
2039 END IF;
2040
2041 IF (l_klev_rec.ATTRIBUTE7 = OKC_API.G_MISS_CHAR) THEN
2042 l_klev_rec.ATTRIBUTE7 := NULL;
2043 END IF;
2044
2045 IF (l_klev_rec.ATTRIBUTE8 = OKC_API.G_MISS_CHAR) THEN
2046 l_klev_rec.ATTRIBUTE8 := NULL;
2047 END IF;
2048
2049 IF (l_klev_rec.ATTRIBUTE9 = OKC_API.G_MISS_CHAR) THEN
2050 l_klev_rec.ATTRIBUTE9 := NULL;
2051 END IF;
2052
2053 IF (l_klev_rec.ATTRIBUTE10 = OKC_API.G_MISS_CHAR) THEN
2054 l_klev_rec.ATTRIBUTE10 := NULL;
2055 END IF;
2056
2057 IF (l_klev_rec.ATTRIBUTE11 = OKC_API.G_MISS_CHAR) THEN
2058 l_klev_rec.ATTRIBUTE11 := NULL;
2059 END IF;
2060
2061 IF (l_klev_rec.ATTRIBUTE12 = OKC_API.G_MISS_CHAR) THEN
2062 l_klev_rec.ATTRIBUTE12 := NULL;
2063 END IF;
2064
2065 IF (l_klev_rec.ATTRIBUTE13 = OKC_API.G_MISS_CHAR) THEN
2066 l_klev_rec.ATTRIBUTE13 := NULL;
2067 END IF;
2068
2069 IF (l_klev_rec.ATTRIBUTE14 = OKC_API.G_MISS_CHAR) THEN
2070 l_klev_rec.ATTRIBUTE14 := NULL;
2071 END IF;
2072
2073 IF (l_klev_rec.ATTRIBUTE15 = OKC_API.G_MISS_CHAR) THEN
2074 l_klev_rec.ATTRIBUTE15 := NULL;
2075 END IF;
2076
2077 IF (l_klev_rec.STY_ID_FOR = OKC_API.G_MISS_NUM) THEN
2078 l_klev_rec.STY_ID_FOR := NULL;
2079 END IF;
2080
2081 IF (l_klev_rec.CLG_ID = OKC_API.G_MISS_NUM) THEN
2082 l_klev_rec.CLG_ID := NULL;
2083 END IF;
2084
2085 IF (l_klev_rec.CREATED_BY = OKC_API.G_MISS_NUM) THEN
2086 l_klev_rec.CREATED_BY := NULL;
2087 END IF;
2088
2089 IF (l_klev_rec.CREATION_DATE = OKC_API.G_MISS_DATE) THEN
2090 l_klev_rec.CREATION_DATE := NULL;
2091 END IF;
2092
2093 IF (l_klev_rec.LAST_UPDATED_BY = OKC_API.G_MISS_NUM) THEN
2094 l_klev_rec.LAST_UPDATED_BY := NULL;
2095 END IF;
2096
2097 IF (l_klev_rec.LAST_UPDATE_DATE = OKC_API.G_MISS_DATE) THEN
2098 l_klev_rec.LAST_UPDATE_DATE := NULL;
2099 END IF;
2100
2101 IF (l_klev_rec.LAST_UPDATE_LOGIN = OKC_API.G_MISS_NUM) THEN
2102 l_klev_rec.LAST_UPDATE_LOGIN := NULL;
2103 END IF;
2104
2105 IF (l_klev_rec.DATE_FUNDING = OKC_API.G_MISS_DATE) THEN
2106 l_klev_rec.DATE_FUNDING := NULL;
2107 END IF;
2108
2109 IF (l_klev_rec.DATE_FUNDING_REQUIRED = OKC_API.G_MISS_DATE) THEN
2110 l_klev_rec.DATE_FUNDING_REQUIRED := NULL;
2111 END IF;
2112
2113 IF (l_klev_rec.DATE_ACCEPTED = OKC_API.G_MISS_DATE) THEN
2114 l_klev_rec.DATE_ACCEPTED := NULL;
2115 END IF;
2116
2117 IF (l_klev_rec.DATE_DELIVERY_EXPECTED = OKC_API.G_MISS_DATE) THEN
2118 l_klev_rec.DATE_DELIVERY_EXPECTED := NULL;
2119 END IF;
2120
2121 IF (l_klev_rec.OEC = OKC_API.G_MISS_NUM) THEN
2122 l_klev_rec.OEC := NULL;
2123 END IF;
2124
2125 IF (l_klev_rec.CAPITAL_AMOUNT = OKC_API.G_MISS_NUM) THEN
2126 l_klev_rec.CAPITAL_AMOUNT := NULL;
2127 END IF;
2128
2129 IF (l_klev_rec.RESIDUAL_GRNTY_AMOUNT = OKC_API.G_MISS_NUM) THEN
2130 l_klev_rec.RESIDUAL_GRNTY_AMOUNT := NULL;
2131 END IF;
2132
2133 IF (l_klev_rec.RESIDUAL_CODE = OKC_API.G_MISS_CHAR) THEN
2134 l_klev_rec.RESIDUAL_CODE := NULL;
2135 END IF;
2136
2137 IF (l_klev_rec.RVI_PREMIUM = OKC_API.G_MISS_NUM) THEN
2138 l_klev_rec.RVI_PREMIUM := NULL;
2139 END IF;
2140
2141 IF (l_klev_rec.CREDIT_NATURE = OKC_API.G_MISS_CHAR) THEN
2142 l_klev_rec.CREDIT_NATURE := NULL;
2143 END IF;
2144
2145 IF (l_klev_rec.CAPITALIZED_INTEREST = OKC_API.G_MISS_NUM) THEN
2146 l_klev_rec.CAPITALIZED_INTEREST := NULL;
2147 END IF;
2148
2149 IF (l_klev_rec.CAPITAL_REDUCTION_PERCENT = OKC_API.G_MISS_NUM) THEN
2150 l_klev_rec.CAPITAL_REDUCTION_PERCENT := NULL;
2151 END IF;
2152
2153 IF (l_klev_rec.DATE_PAY_INVESTOR_START = OKC_API.G_MISS_DATE) THEN
2154 l_klev_rec.DATE_PAY_INVESTOR_START := NULL;
2155 END IF;
2156
2157 IF (l_klev_rec.PAY_INVESTOR_FREQUENCY = OKC_API.G_MISS_CHAR) THEN
2158 l_klev_rec.PAY_INVESTOR_FREQUENCY := NULL;
2159 END IF;
2160
2161 IF (l_klev_rec.PAY_INVESTOR_EVENT = OKC_API.G_MISS_CHAR) THEN
2162 l_klev_rec.PAY_INVESTOR_EVENT := NULL;
2163 END IF;
2164
2165 IF (l_klev_rec.PAY_INVESTOR_REMITTANCE_DAYS = OKC_API.G_MISS_NUM) THEN
2166 l_klev_rec.PAY_INVESTOR_REMITTANCE_DAYS := NULL;
2167 END IF;
2168
2169 IF (l_klev_rec.FEE_TYPE = OKC_API.G_MISS_CHAR) THEN
2170 l_klev_rec.FEE_TYPE := NULL;
2171 END IF;
2172 --Bug# 3143522: 11.5.10
2173 --subsidy
2174 IF (l_klev_rec.SUBSIDY_ID = OKL_API.G_MISS_NUM) THEN
2175 l_klev_rec.SUBSIDY_ID := NULL;
2176 END IF;
2177 --IF (l_klev_rec.SUBSIDIZED_OEC = OKL_API.G_MISS_NUM) THEN
2178 --l_klev_rec.SUBSIDIZED_OEC := NULL;
2179 --END IF;
2180 --IF (l_klev_rec.SUBSIDIZED_CAP_AMOUNT = OKL_API.G_MISS_NUM) THEN
2181 --l_klev_rec.SUBSIDIZED_CAP_AMOUNT := NULL;
2182 --END IF;
2183 IF (l_klev_rec.SUBSIDY_OVERRIDE_AMOUNT = OKL_API.G_MISS_NUM) THEN
2184 l_klev_rec.SUBSIDY_OVERRIDE_AMOUNT := NULL;
2185 END IF;
2186 --financed fee
2187 IF (l_klev_rec.PRE_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
2188 l_klev_rec.PRE_TAX_YIELD := NULL;
2189 END IF;
2190 IF (l_klev_rec.AFTER_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
2191 l_klev_rec.AFTER_TAX_YIELD := NULL;
2192 END IF;
2193 IF (l_klev_rec.IMPLICIT_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
2194 l_klev_rec.IMPLICIT_INTEREST_RATE := NULL;
2195 END IF;
2196 IF (l_klev_rec.IMPLICIT_NON_IDC_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
2197 l_klev_rec.IMPLICIT_NON_IDC_INTEREST_RATE := NULL;
2198 END IF;
2199 IF (l_klev_rec.PRE_TAX_IRR = OKL_API.G_MISS_NUM) THEN
2200 l_klev_rec.PRE_TAX_IRR := NULL;
2201 END IF;
2202 IF (l_klev_rec.AFTER_TAX_IRR = OKL_API.G_MISS_NUM) THEN
2203 l_klev_rec.AFTER_TAX_IRR := NULL;
2204 END IF;
2205 --quote
2206 IF (l_klev_rec.SUB_PRE_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
2207 l_klev_rec.SUB_PRE_TAX_YIELD := NULL;
2208 END IF;
2209 IF (l_klev_rec.SUB_AFTER_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
2210 l_klev_rec.SUB_AFTER_TAX_YIELD := NULL;
2211 END IF;
2212 IF (l_klev_rec.SUB_IMPL_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
2213 l_klev_rec.SUB_IMPL_INTEREST_RATE := NULL;
2214 END IF;
2215 IF (l_klev_rec.SUB_IMPL_NON_IDC_INT_RATE = OKL_API.G_MISS_NUM) THEN
2216 l_klev_rec.SUB_IMPL_NON_IDC_INT_RATE := NULL;
2217 END IF;
2218 IF (l_klev_rec.SUB_PRE_TAX_IRR = OKL_API.G_MISS_NUM) THEN
2219 l_klev_rec.SUB_PRE_TAX_IRR := NULL;
2220 END IF;
2221 IF (l_klev_rec.SUB_AFTER_TAX_IRR = OKL_API.G_MISS_NUM) THEN
2222 l_klev_rec.SUB_AFTER_TAX_IRR := NULL;
2223 END IF;
2224 --Bug# 2994971 :
2225 IF (l_klev_rec.ITEM_INSURANCE_CATEGORY = OKL_API.G_MISS_NUM) THEN
2226 l_klev_rec.ITEM_INSURANCE_CATEGORY := NULL;
2227 END IF;
2228 --Bug# 3973640 11.5.10+
2229 IF (l_klev_rec.QTE_ID = OKL_API.G_MISS_NUM) THEN
2230 l_klev_rec.QTE_ID := NULL;
2231 END IF;
2232 IF (l_klev_rec.FUNDING_DATE = OKL_API.G_MISS_DATE) THEN
2233 l_klev_rec.FUNDING_DATE := NULL;
2234 END IF;
2235 IF (l_klev_rec.STREAM_TYPE_SUBCLASS = OKL_API.G_MISS_CHAR) THEN
2236 l_klev_rec.STREAM_TYPE_SUBCLASS := NULL;
2237 END IF;
2238
2239 --Bug# 4419339 OKLH
2240 IF (l_klev_rec.DATE_FUNDING_EXPECTED = OKL_API.G_MISS_DATE) THEN
2241 l_klev_rec.DATE_FUNDING_EXPECTED := NULL;
2242 END IF;
2243
2244 IF (l_klev_rec.MANUFACTURER_NAME = OKL_API.G_MISS_CHAR) THEN
2245 l_klev_rec.MANUFACTURER_NAME := NULL;
2246 END IF;
2247
2248 IF (l_klev_rec.MODEL_NUMBER = OKL_API.G_MISS_CHAR) THEN
2249 l_klev_rec.MODEL_NUMBER := NULL;
2250 END IF;
2251
2252 IF (l_klev_rec.DOWN_PAYMENT_RECEIVER_CODE = OKL_API.G_MISS_CHAR) THEN
2253 l_klev_rec.DOWN_PAYMENT_RECEIVER_CODE := NULL;
2254 END IF;
2255
2256 IF (l_klev_rec.CAPITALIZE_DOWN_PAYMENT_YN = OKL_API.G_MISS_CHAR) THEN
2257 l_klev_rec.CAPITALIZE_DOWN_PAYMENT_YN := NULL;
2258 END IF;
2259 --Bug#4373029
2260 IF (l_klev_rec.FEE_PURPOSE_CODE = OKL_API.G_MISS_CHAR) THEN
2261 l_klev_rec.FEE_PURPOSE_CODE := NULL;
2262 END IF;
2263
2264 IF (l_klev_rec.TERMINATION_VALUE = OKL_API.G_MISS_NUM) THEN
2265 l_klev_rec.TERMINATION_VALUE := NULL;
2266 END IF;
2267
2268 --Bug# 4631549
2269 IF (l_klev_rec.EXPECTED_ASSET_COST = OKL_API.G_MISS_NUM) THEN
2270 l_klev_rec.EXPECTED_ASSET_COST := NULL;
2271 END IF;
2272
2273 IF (l_klev_rec.ORIG_CONTRACT_LINE_ID = OKL_API.G_MISS_NUM) THEN
2274 l_klev_rec.ORIG_CONTRACT_LINE_ID := NULL;
2275 END IF;
2276
2277 --Added by jjuneja
2278 IF (l_klev_rec.ORIGINATION_INCOME = OKL_API.G_MISS_NUM) THEN
2279 l_klev_rec.ORIGINATION_INCOME := NULL;
2280 END IF;
2281 --end of addition by jjuneja
2282
2283 --Bug# 16344245
2284 IF (l_klev_rec.AMOUNT_BALANCE_LEGACY = OKL_API.G_MISS_NUM) THEN
2285 l_klev_rec.AMOUNT_BALANCE_LEGACY := NULL;
2286 END IF;
2287
2288 IF (l_klev_rec.DT_EFFECTIVE_BALANCE_LEGACY = OKL_API.G_MISS_DATE) THEN
2289 l_klev_rec.DT_EFFECTIVE_BALANCE_LEGACY := NULL;
2290 END IF;
2291
2292 RETURN(l_klev_rec);
2293 END null_out_defaults;
2294
2295
2296 ---------------------------------------------------------------------------
2297 -- PROCEDURE Validate_Record
2298 ---------------------------------------------------------------------------
2299
2300
2301 -----------------------------------------
2302 -- Validate_Record for: OKL_K_LINES_V --
2303 -----------------------------------------
2304 FUNCTION Validate_Record (
2305 p_klev_rec IN klev_rec_type
2306 ) RETURN VARCHAR2 IS
2307 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2308 BEGIN
2309 RETURN (l_return_status);
2310 END Validate_Record;
2311
2312
2313 ---------------------------------------------------------------------------
2314 -- PROCEDURE Migrate
2315 ---------------------------------------------------------------------------
2316
2317 PROCEDURE migrate (
2318 p_from IN klev_rec_type,
2319 p_to IN OUT NOCOPY kle_rec_type
2320 ) IS
2321 BEGIN
2322
2323 p_to.ID := p_from.ID;
2324
2325 p_to.KLE_ID := p_from.KLE_ID;
2326
2327 p_to.STY_ID := p_from.STY_ID;
2328
2329 p_to.OBJECT_VERSION_NUMBER := p_from.OBJECT_VERSION_NUMBER;
2330
2331 p_to.LAO_AMOUNT := p_from.LAO_AMOUNT;
2332
2333 p_to.FEE_CHARGE := p_from.FEE_CHARGE;
2334
2335 p_to.TITLE_DATE := p_from.TITLE_DATE;
2336
2337 p_to.DATE_RESIDUAL_LAST_REVIEW := p_from.DATE_RESIDUAL_LAST_REVIEW;
2338
2339 p_to.DATE_LAST_REAMORTISATION := p_from.DATE_LAST_REAMORTISATION;
2340
2341 p_to.TERMINATION_PURCHASE_AMOUNT := p_from.TERMINATION_PURCHASE_AMOUNT;
2342
2343 p_to.DATE_LAST_CLEANUP := p_from.DATE_LAST_CLEANUP;
2344
2345 p_to.REMARKETED_AMOUNT := p_from.REMARKETED_AMOUNT;
2346
2347 p_to.DATE_REMARKETED := p_from.DATE_REMARKETED;
2348
2349 p_to.REMARKET_MARGIN := p_from.REMARKET_MARGIN;
2350
2351 p_to.REPURCHASED_AMOUNT := p_from.REPURCHASED_AMOUNT;
2352
2353 p_to.DATE_REPURCHASED := p_from.DATE_REPURCHASED;
2354
2355 p_to.GAIN_LOSS := p_from.GAIN_LOSS;
2356
2357 p_to.FLOOR_AMOUNT := p_from.FLOOR_AMOUNT;
2358
2359 p_to.PREVIOUS_CONTRACT := p_from.PREVIOUS_CONTRACT;
2360
2361 p_to.TRACKED_RESIDUAL := p_from.TRACKED_RESIDUAL;
2362
2363 p_to.DATE_TITLE_RECEIVED := p_from.DATE_TITLE_RECEIVED;
2364
2365 p_to.ESTIMATED_OEC := p_from.ESTIMATED_OEC;
2366
2367 p_to.RESIDUAL_PERCENTAGE := p_from.RESIDUAL_PERCENTAGE;
2368
2369 p_to.CAPITAL_REDUCTION := p_from.CAPITAL_REDUCTION;
2370
2371 p_to.VENDOR_ADVANCE_PAID := p_from.VENDOR_ADVANCE_PAID;
2372
2373 p_to.TRADEIN_AMOUNT := p_from.TRADEIN_AMOUNT;
2374
2375 p_to.DELIVERED_DATE := p_from.DELIVERED_DATE;
2376
2377 p_to.YEAR_OF_MANUFACTURE := p_from.YEAR_OF_MANUFACTURE;
2378
2379 p_to.INITIAL_DIRECT_COST := p_from.INITIAL_DIRECT_COST;
2380
2381 p_to.OCCUPANCY := p_from.OCCUPANCY;
2382
2383 p_to.DATE_LAST_INSPECTION := p_from.DATE_LAST_INSPECTION;
2384
2385 p_to.DATE_NEXT_INSPECTION_DUE := p_from.DATE_NEXT_INSPECTION_DUE;
2386
2387 p_to.WEIGHTED_AVERAGE_LIFE := p_from.WEIGHTED_AVERAGE_LIFE;
2388
2389 p_to.BOND_EQUIVALENT_YIELD := p_from.BOND_EQUIVALENT_YIELD;
2390
2391 p_to.REFINANCE_AMOUNT := p_from.REFINANCE_AMOUNT;
2392
2393 p_to.YEAR_BUILT := p_from.YEAR_BUILT;
2394
2395 p_to.COVERAGE_RATIO := p_from.COVERAGE_RATIO;
2396
2397 p_to.GROSS_SQUARE_FOOTAGE := p_from.GROSS_SQUARE_FOOTAGE;
2398
2399 p_to.NET_RENTABLE := p_from.NET_RENTABLE;
2400
2401 p_to.DATE_LETTER_ACCEPTANCE := p_from.DATE_LETTER_ACCEPTANCE;
2402
2403 p_to.DATE_COMMITMENT_EXPIRATION := p_from.DATE_COMMITMENT_EXPIRATION;
2404
2405 p_to.DATE_APPRAISAL := p_from.DATE_APPRAISAL;
2406
2407 p_to.APPRAISAL_VALUE := p_from.APPRAISAL_VALUE;
2408
2409 p_to.RESIDUAL_VALUE := p_from.RESIDUAL_VALUE;
2410
2411 p_to.PERCENT := p_from.PERCENT;
2412
2413 p_to.COVERAGE := p_from.COVERAGE;
2414
2415 p_to.LRV_AMOUNT := p_from.LRV_AMOUNT;
2416
2417 p_to.AMOUNT := p_from.AMOUNT;
2418
2419 p_to.LRS_PERCENT := p_from.LRS_PERCENT;
2420
2421 p_to.EVERGREEN_PERCENT := p_from.EVERGREEN_PERCENT;
2422
2423 p_to.PERCENT_STAKE := p_from.PERCENT_STAKE;
2424
2425 p_to.AMOUNT_STAKE := p_from.AMOUNT_STAKE;
2426
2427 p_to.DATE_SOLD := p_from.DATE_SOLD;
2428
2429 p_to.STY_ID_FOR := p_from.STY_ID_FOR;
2430
2431 p_to.ATTRIBUTE_CATEGORY := p_from.ATTRIBUTE_CATEGORY;
2432
2433 p_to.ATTRIBUTE1 := p_from.ATTRIBUTE1;
2434
2435 p_to.ATTRIBUTE2 := p_from.ATTRIBUTE2;
2436
2437 p_to.ATTRIBUTE3 := p_from.ATTRIBUTE3;
2438
2439 p_to.ATTRIBUTE4 := p_from.ATTRIBUTE4;
2440
2441 p_to.ATTRIBUTE5 := p_from.ATTRIBUTE5;
2442
2443 p_to.ATTRIBUTE6 := p_from.ATTRIBUTE6;
2444
2445 p_to.ATTRIBUTE7 := p_from.ATTRIBUTE7;
2446
2447 p_to.ATTRIBUTE8 := p_from.ATTRIBUTE8;
2448
2449 p_to.ATTRIBUTE9 := p_from.ATTRIBUTE9;
2450
2451 p_to.ATTRIBUTE10 := p_from.ATTRIBUTE10;
2452
2453 p_to.ATTRIBUTE11 := p_from.ATTRIBUTE11;
2454
2455 p_to.ATTRIBUTE12 := p_from.ATTRIBUTE12;
2456
2457 p_to.ATTRIBUTE13 := p_from.ATTRIBUTE13;
2458
2459 p_to.ATTRIBUTE14 := p_from.ATTRIBUTE14;
2460
2461 p_to.ATTRIBUTE15 := p_from.ATTRIBUTE15;
2462
2463 p_to.CREATED_BY := p_from.CREATED_BY;
2464
2465 p_to.CREATION_DATE := p_from.CREATION_DATE;
2466
2467 p_to.LAST_UPDATED_BY := p_from.LAST_UPDATED_BY;
2468
2469 p_to.LAST_UPDATE_DATE := p_from.LAST_UPDATE_DATE;
2470
2471 p_to.LAST_UPDATE_LOGIN := p_from.LAST_UPDATE_LOGIN;
2472
2473 p_to.NTY_CODE := p_from.NTY_CODE;
2474
2475 p_to.FCG_CODE := p_from.FCG_CODE;
2476
2477 p_to.PRC_CODE := p_from.PRC_CODE;
2478
2479 p_to.RE_LEASE_YN := p_from.RE_LEASE_YN;
2480
2481 p_to.PRESCRIBED_ASSET_YN := p_from.PRESCRIBED_ASSET_YN;
2482
2483 p_to.CREDIT_TENANT_YN := p_from.CREDIT_TENANT_YN;
2484
2485 p_to.SECURED_DEAL_YN := p_from.SECURED_DEAL_YN;
2486
2487 p_to.CLG_ID := p_from.CLG_ID;
2488
2489 p_to.DATE_FUNDING := p_from.DATE_FUNDING;
2490
2491 p_to.DATE_FUNDING_REQUIRED := p_from.DATE_FUNDING_REQUIRED;
2492
2493 p_to.DATE_ACCEPTED := p_from.DATE_ACCEPTED;
2494
2495 p_to.DATE_DELIVERY_EXPECTED := p_from.DATE_DELIVERY_EXPECTED;
2496
2497 p_to.OEC := p_from.OEC;
2498
2499 p_to.CAPITAL_AMOUNT := p_from.CAPITAL_AMOUNT;
2500
2501 p_to.RESIDUAL_GRNTY_AMOUNT := p_from.RESIDUAL_GRNTY_AMOUNT;
2502
2503 p_to.RESIDUAL_CODE := p_from.RESIDUAL_CODE;
2504
2505 p_to.RVI_PREMIUM := p_from.RVI_PREMIUM;
2506
2507 p_to.CREDIT_NATURE := p_from.CREDIT_NATURE;
2508
2509 p_to.CAPITALIZED_INTEREST := p_from.CAPITALIZED_INTEREST;
2510
2511 p_to.CAPITAL_REDUCTION_PERCENT := p_from.CAPITAL_REDUCTION_PERCENT;
2512
2513 p_to.DATE_PAY_INVESTOR_START := p_from.DATE_PAY_INVESTOR_START;
2514
2515 p_to.PAY_INVESTOR_FREQUENCY := p_from.PAY_INVESTOR_FREQUENCY;
2516
2517 p_to.PAY_INVESTOR_EVENT := p_from.PAY_INVESTOR_EVENT;
2518
2519 p_to.PAY_INVESTOR_REMITTANCE_DAYS := p_from.PAY_INVESTOR_REMITTANCE_DAYS;
2520 p_to.FEE_TYPE := p_from.FEE_TYPE;
2521 --Bug# 3143522: 11.5.10
2522 --subsidy
2523 p_to.SUBSIDY_ID := p_from.SUBSIDY_ID;
2524 --p_to.SUBSIDIZED_OEC := p_from.SUBSIDIZED_OEC;
2525 --p_to.SUBSIDIZED_CAP_AMOUNT := p_from.SUBSIDIZED_CAP_AMOUNT;
2526 p_to.SUBSIDY_OVERRIDE_AMOUNT := p_from.SUBSIDY_OVERRIDE_AMOUNT;
2527 --financed fee
2528 p_to.PRE_TAX_YIELD := p_from.PRE_TAX_YIELD;
2529 p_to.AFTER_TAX_YIELD := p_from.AFTER_TAX_YIELD;
2530 p_to.IMPLICIT_INTEREST_RATE := p_from.IMPLICIT_INTEREST_RATE;
2531 p_to.IMPLICIT_NON_IDC_INTEREST_RATE := p_from.IMPLICIT_NON_IDC_INTEREST_RATE;
2532 p_to.PRE_TAX_IRR := p_from.PRE_TAX_IRR;
2533 p_to.AFTER_TAX_IRR := p_from.AFTER_TAX_IRR;
2534 --quote
2535 p_to.SUB_PRE_TAX_YIELD := p_from.SUB_PRE_TAX_YIELD;
2536 p_to.SUB_AFTER_TAX_YIELD := p_from.SUB_AFTER_TAX_YIELD;
2537 p_to.SUB_IMPL_INTEREST_RATE := p_from.SUB_IMPL_INTEREST_RATE;
2538 p_to.SUB_IMPL_NON_IDC_INT_RATE := p_from.SUB_IMPL_NON_IDC_INT_RATE;
2539 p_to.SUB_PRE_TAX_IRR := p_from.SUB_PRE_TAX_IRR;
2540 p_to.SUB_AFTER_TAX_IRR := p_from.SUB_AFTER_TAX_IRR;
2541 --Bug# 2994971
2542 p_to.ITEM_INSURANCE_CATEGORY := p_from.ITEM_INSURANCE_CATEGORY;
2543 --Bug# 3973640 11.5.10+
2544 p_to.QTE_ID := p_from.QTE_ID;
2545 p_to.FUNDING_DATE := p_from.FUNDING_DATE;
2546 p_to.STREAM_TYPE_SUBCLASS := p_from.STREAM_TYPE_SUBCLASS;
2547
2548 --Bug# 4419339 OKLH
2549 p_to.DATE_FUNDING_EXPECTED := p_from.DATE_FUNDING_EXPECTED;
2550 p_to.MANUFACTURER_NAME := p_from.MANUFACTURER_NAME;
2551 p_to.MODEL_NUMBER := p_from.MODEL_NUMBER;
2552 p_to.DOWN_PAYMENT_RECEIVER_CODE := p_from.DOWN_PAYMENT_RECEIVER_CODE;
2553 p_to.CAPITALIZE_DOWN_PAYMENT_YN := p_from.CAPITALIZE_DOWN_PAYMENT_YN;
2554 --Bug#4373029
2555 p_to.FEE_PURPOSE_CODE := p_from.FEE_PURPOSE_CODE;
2556 p_to.TERMINATION_VALUE := p_from.TERMINATION_VALUE;
2557 --Bug# 4631549
2558 p_to.EXPECTED_ASSET_COST := p_from.EXPECTED_ASSET_COST;
2559 p_to.ORIG_CONTRACT_LINE_ID := p_from.ORIG_CONTRACT_LINE_ID;
2560 --Added by jjuneja
2561 p_to.ORIGINATION_INCOME := p_from.ORIGINATION_INCOME;
2562 --End of addition by jjuneja
2563 --Bug# 16344245
2564 p_to.AMOUNT_BALANCE_LEGACY := p_from.AMOUNT_BALANCE_LEGACY;
2565 p_to.DT_EFFECTIVE_BALANCE_LEGACY := p_from.DT_EFFECTIVE_BALANCE_LEGACY;
2566
2567 END migrate;
2568
2569 PROCEDURE migrate (
2570 p_from IN kle_rec_type,
2571 p_to IN OUT NOCOPY klev_rec_type
2572 ) IS
2573 BEGIN
2574
2575 p_to.ID := p_from.ID;
2576
2577 p_to.KLE_ID := p_from.KLE_ID;
2578
2579 p_to.STY_ID := p_from.STY_ID;
2580
2581 p_to.OBJECT_VERSION_NUMBER := p_from.OBJECT_VERSION_NUMBER;
2582
2583 p_to.LAO_AMOUNT := p_from.LAO_AMOUNT;
2584
2585 p_to.FEE_CHARGE := p_from.FEE_CHARGE;
2586
2587 p_to.TITLE_DATE := p_from.TITLE_DATE;
2588
2589 p_to.DATE_RESIDUAL_LAST_REVIEW := p_from.DATE_RESIDUAL_LAST_REVIEW;
2590
2591 p_to.DATE_LAST_REAMORTISATION := p_from.DATE_LAST_REAMORTISATION;
2592
2593 p_to.TERMINATION_PURCHASE_AMOUNT := p_from.TERMINATION_PURCHASE_AMOUNT;
2594
2595 p_to.DATE_LAST_CLEANUP := p_from.DATE_LAST_CLEANUP;
2596
2597 p_to.REMARKETED_AMOUNT := p_from.REMARKETED_AMOUNT;
2598
2599 p_to.DATE_REMARKETED := p_from.DATE_REMARKETED;
2600
2601 p_to.REMARKET_MARGIN := p_from.REMARKET_MARGIN;
2602
2603 p_to.REPURCHASED_AMOUNT := p_from.REPURCHASED_AMOUNT;
2604
2605 p_to.DATE_REPURCHASED := p_from.DATE_REPURCHASED;
2606
2607 p_to.GAIN_LOSS := p_from.GAIN_LOSS;
2608
2609 p_to.FLOOR_AMOUNT := p_from.FLOOR_AMOUNT;
2610
2611 p_to.PREVIOUS_CONTRACT := p_from.PREVIOUS_CONTRACT;
2612
2613 p_to.TRACKED_RESIDUAL := p_from.TRACKED_RESIDUAL;
2614
2615 p_to.DATE_TITLE_RECEIVED := p_from.DATE_TITLE_RECEIVED;
2616
2617 p_to.ESTIMATED_OEC := p_from.ESTIMATED_OEC;
2618
2619 p_to.RESIDUAL_PERCENTAGE := p_from.RESIDUAL_PERCENTAGE;
2620
2621 p_to.CAPITAL_REDUCTION := p_from.CAPITAL_REDUCTION;
2622
2623 p_to.VENDOR_ADVANCE_PAID := p_from.VENDOR_ADVANCE_PAID;
2624
2625 p_to.TRADEIN_AMOUNT := p_from.TRADEIN_AMOUNT;
2626
2627 p_to.DELIVERED_DATE := p_from.DELIVERED_DATE;
2628
2629 p_to.YEAR_OF_MANUFACTURE := p_from.YEAR_OF_MANUFACTURE;
2630
2631 p_to.INITIAL_DIRECT_COST := p_from.INITIAL_DIRECT_COST;
2632
2633 p_to.OCCUPANCY := p_from.OCCUPANCY;
2634
2635 p_to.DATE_LAST_INSPECTION := p_from.DATE_LAST_INSPECTION;
2636
2637 p_to.DATE_NEXT_INSPECTION_DUE := p_from.DATE_NEXT_INSPECTION_DUE;
2638
2639 p_to.WEIGHTED_AVERAGE_LIFE := p_from.WEIGHTED_AVERAGE_LIFE;
2640
2641 p_to.BOND_EQUIVALENT_YIELD := p_from.BOND_EQUIVALENT_YIELD;
2642
2643 p_to.REFINANCE_AMOUNT := p_from.REFINANCE_AMOUNT;
2644
2645 p_to.YEAR_BUILT := p_from.YEAR_BUILT;
2646
2647 p_to.COVERAGE_RATIO := p_from.COVERAGE_RATIO;
2648
2649 p_to.GROSS_SQUARE_FOOTAGE := p_from.GROSS_SQUARE_FOOTAGE;
2650
2651 p_to.NET_RENTABLE := p_from.NET_RENTABLE;
2652
2653 p_to.DATE_LETTER_ACCEPTANCE := p_from.DATE_LETTER_ACCEPTANCE;
2654
2655 p_to.DATE_COMMITMENT_EXPIRATION := p_from.DATE_COMMITMENT_EXPIRATION;
2656
2657 p_to.DATE_APPRAISAL := p_from.DATE_APPRAISAL;
2658
2659 p_to.APPRAISAL_VALUE := p_from.APPRAISAL_VALUE;
2660
2661 p_to.RESIDUAL_VALUE := p_from.RESIDUAL_VALUE;
2662
2663 p_to.PERCENT := p_from.PERCENT;
2664
2665 p_to.COVERAGE := p_from.COVERAGE;
2666
2667 p_to.LRV_AMOUNT := p_from.LRV_AMOUNT;
2668
2669 p_to.AMOUNT := p_from.AMOUNT;
2670
2671 p_to.LRS_PERCENT := p_from.LRS_PERCENT;
2672
2673 p_to.EVERGREEN_PERCENT := p_from.EVERGREEN_PERCENT;
2674
2675 p_to.PERCENT_STAKE := p_from.PERCENT_STAKE;
2676
2677 p_to.AMOUNT_STAKE := p_from.AMOUNT_STAKE;
2678
2679 p_to.DATE_SOLD := p_from.DATE_SOLD;
2680
2681 p_to.STY_ID_FOR := p_from.STY_ID_FOR;
2682
2683 p_to.ATTRIBUTE_CATEGORY := p_from.ATTRIBUTE_CATEGORY;
2684
2685 p_to.ATTRIBUTE1 := p_from.ATTRIBUTE1;
2686
2687 p_to.ATTRIBUTE2 := p_from.ATTRIBUTE2;
2688
2689 p_to.ATTRIBUTE3 := p_from.ATTRIBUTE3;
2690
2691 p_to.ATTRIBUTE4 := p_from.ATTRIBUTE4;
2692
2693 p_to.ATTRIBUTE5 := p_from.ATTRIBUTE5;
2694
2695 p_to.ATTRIBUTE6 := p_from.ATTRIBUTE6;
2696
2697 p_to.ATTRIBUTE7 := p_from.ATTRIBUTE7;
2698
2699 p_to.ATTRIBUTE8 := p_from.ATTRIBUTE8;
2700
2701 p_to.ATTRIBUTE9 := p_from.ATTRIBUTE9;
2702
2703 p_to.ATTRIBUTE10 := p_from.ATTRIBUTE10;
2704
2705 p_to.ATTRIBUTE11 := p_from.ATTRIBUTE11;
2706
2707 p_to.ATTRIBUTE12 := p_from.ATTRIBUTE12;
2708
2709 p_to.ATTRIBUTE13 := p_from.ATTRIBUTE13;
2710
2711 p_to.ATTRIBUTE14 := p_from.ATTRIBUTE14;
2712
2713 p_to.ATTRIBUTE15 := p_from.ATTRIBUTE15;
2714
2715 p_to.CREATED_BY := p_from.CREATED_BY;
2716
2717 p_to.CREATION_DATE := p_from.CREATION_DATE;
2718
2719 p_to.LAST_UPDATED_BY := p_from.LAST_UPDATED_BY;
2720
2721 p_to.LAST_UPDATE_DATE := p_from.LAST_UPDATE_DATE;
2722
2723 p_to.LAST_UPDATE_LOGIN := p_from.LAST_UPDATE_LOGIN;
2724
2725 p_to.NTY_CODE := p_from.NTY_CODE;
2726
2727 p_to.FCG_CODE := p_from.FCG_CODE;
2728
2729 p_to.PRC_CODE := p_from.PRC_CODE;
2730
2731 p_to.RE_LEASE_YN := p_from.RE_LEASE_YN;
2732
2733 p_to.PRESCRIBED_ASSET_YN := p_from.PRESCRIBED_ASSET_YN;
2734
2735 p_to.CREDIT_TENANT_YN := p_from.CREDIT_TENANT_YN;
2736
2737 p_to.SECURED_DEAL_YN := p_from.SECURED_DEAL_YN;
2738
2739 p_to.CLG_ID := p_from.CLG_ID;
2740
2741 p_to.DATE_FUNDING := p_from.DATE_FUNDING;
2742
2743 p_to.DATE_FUNDING_REQUIRED := p_from.DATE_FUNDING_REQUIRED;
2744
2745 p_to.DATE_ACCEPTED := p_from.DATE_ACCEPTED;
2746
2747 p_to.DATE_DELIVERY_EXPECTED := p_from.DATE_DELIVERY_EXPECTED;
2748
2749 p_to.OEC := p_from.OEC;
2750
2751 p_to.CAPITAL_AMOUNT := p_from.CAPITAL_AMOUNT;
2752
2753 p_to.RESIDUAL_GRNTY_AMOUNT := p_from.RESIDUAL_GRNTY_AMOUNT;
2754
2755 p_to.RESIDUAL_CODE := p_from.RESIDUAL_CODE;
2756
2757 p_to.RVI_PREMIUM := p_from.RVI_PREMIUM;
2758
2759 p_to.CREDIT_NATURE := p_from.CREDIT_NATURE;
2760
2761 p_to.CAPITALIZED_INTEREST := p_from.CAPITALIZED_INTEREST;
2762
2763 p_to.CAPITAL_REDUCTION_PERCENT := p_from.CAPITAL_REDUCTION_PERCENT;
2764
2765 p_to.DATE_PAY_INVESTOR_START := p_from.DATE_PAY_INVESTOR_START;
2766
2767 p_to.PAY_INVESTOR_FREQUENCY := p_from.PAY_INVESTOR_FREQUENCY;
2768
2769 p_to.PAY_INVESTOR_EVENT := p_from.PAY_INVESTOR_EVENT;
2770
2771 p_to.PAY_INVESTOR_REMITTANCE_DAYS := p_from.PAY_INVESTOR_REMITTANCE_DAYS;
2772 p_to.FEE_TYPE := p_from.FEE_TYPE;
2773 --Bug# 3143522: 11.5.10
2774 --subsidy
2775 p_to.SUBSIDY_ID := p_from.SUBSIDY_ID;
2776 --p_to.SUBSIDIZED_OEC := p_from.SUBSIDIZED_OEC;
2777 --p_to.SUBSIDIZED_CAP_AMOUNT := p_from.SUBSIDIZED_CAP_AMOUNT;
2778 p_to.SUBSIDY_OVERRIDE_AMOUNT := p_from.SUBSIDY_OVERRIDE_AMOUNT;
2779 --financed fee
2780 p_to.PRE_TAX_YIELD := p_from.PRE_TAX_YIELD;
2781 p_to.AFTER_TAX_YIELD := p_from.AFTER_TAX_YIELD;
2782 p_to.IMPLICIT_INTEREST_RATE := p_from.IMPLICIT_INTEREST_RATE;
2783 p_to.IMPLICIT_NON_IDC_INTEREST_RATE := p_from.IMPLICIT_NON_IDC_INTEREST_RATE;
2784 p_to.PRE_TAX_IRR := p_from.PRE_TAX_IRR;
2785 p_to.AFTER_TAX_IRR := p_from.AFTER_TAX_IRR;
2786 --quote
2787 p_to.SUB_PRE_TAX_YIELD := p_from.SUB_PRE_TAX_YIELD;
2788 p_to.SUB_AFTER_TAX_YIELD := p_from.SUB_AFTER_TAX_YIELD;
2789 p_to.SUB_IMPL_INTEREST_RATE := p_from.SUB_IMPL_INTEREST_RATE;
2790 p_to.SUB_IMPL_NON_IDC_INT_RATE := p_from.SUB_IMPL_NON_IDC_INT_RATE;
2791 p_to.SUB_PRE_TAX_IRR := p_from.SUB_PRE_TAX_IRR;
2792 p_to.SUB_AFTER_TAX_IRR := p_from.SUB_AFTER_TAX_IRR;
2793 --Bug# 2994971 :
2794 p_to.ITEM_INSURANCE_CATEGORY := p_from.ITEM_INSURANCE_CATEGORY;
2795 --bug# 3973640: 11.5.10+
2796 p_to.QTE_ID := p_from.QTE_ID;
2797 p_to.FUNDING_DATE := p_from.FUNDING_DATE;
2798 p_to.STREAM_TYPE_SUBCLASS := p_from.STREAM_TYPE_SUBCLASS;
2799 --Bug# 4419339 OKLH
2800 p_to.DATE_FUNDING_EXPECTED := p_from.DATE_FUNDING_EXPECTED;
2801 p_to.MANUFACTURER_NAME := p_from.MANUFACTURER_NAME;
2802 p_to.MODEL_NUMBER := p_from.MODEL_NUMBER;
2803 p_to.DOWN_PAYMENT_RECEIVER_CODE := p_from.DOWN_PAYMENT_RECEIVER_CODE;
2804 p_to.CAPITALIZE_DOWN_PAYMENT_YN := p_from.CAPITALIZE_DOWN_PAYMENT_YN;
2805 --Bug#4373029
2806 p_to.FEE_PURPOSE_CODE := p_from.FEE_PURPOSE_CODE;
2807 p_to.TERMINATION_VALUE := p_from.TERMINATION_VALUE;
2808 --Bug# 4631549
2809 p_to.EXPECTED_ASSET_COST := p_from.EXPECTED_ASSET_COST;
2810 p_to.ORIG_CONTRACT_LINE_ID := p_from.ORIG_CONTRACT_LINE_ID;
2811 --Added by JJUNEJA
2812 p_to.ORIGINATION_INCOME := p_from.ORIGINATION_INCOME;
2813 --Added by jjuneja
2814 --Bug# 16344245
2815 p_to.AMOUNT_BALANCE_LEGACY := p_from.AMOUNT_BALANCE_LEGACY;
2816 p_to.DT_EFFECTIVE_BALANCE_LEGACY := p_from.DT_EFFECTIVE_BALANCE_LEGACY;
2817 END migrate;
2818
2819 PROCEDURE migrate (
2820 p_from IN kle_rec_type,
2821 p_to IN OUT NOCOPY okl_k_lines_h_rec_type
2822 ) IS
2823 BEGIN
2824
2825 p_to.ID := p_from.ID;
2826
2827 p_to.KLE_ID := p_from.KLE_ID;
2828
2829 p_to.STY_ID := p_from.STY_ID;
2830
2831 p_to.OBJECT_VERSION_NUMBER := p_from.OBJECT_VERSION_NUMBER;
2832
2833 p_to.LAO_AMOUNT := p_from.LAO_AMOUNT;
2834
2835 p_to.FEE_CHARGE := p_from.FEE_CHARGE;
2836
2837 p_to.TITLE_DATE := p_from.TITLE_DATE;
2838
2839 p_to.DATE_RESIDUAL_LAST_REVIEW := p_from.DATE_RESIDUAL_LAST_REVIEW;
2840
2841 p_to.DATE_LAST_REAMORTISATION := p_from.DATE_LAST_REAMORTISATION;
2842
2843 p_to.TERMINATION_PURCHASE_AMOUNT := p_from.TERMINATION_PURCHASE_AMOUNT;
2844
2845 p_to.DATE_LAST_CLEANUP := p_from.DATE_LAST_CLEANUP;
2846
2847 p_to.REMARKETED_AMOUNT := p_from.REMARKETED_AMOUNT;
2848
2849 p_to.DATE_REMARKETED := p_from.DATE_REMARKETED;
2850
2851 p_to.REMARKET_MARGIN := p_from.REMARKET_MARGIN;
2852
2853 p_to.REPURCHASED_AMOUNT := p_from.REPURCHASED_AMOUNT;
2854
2855 p_to.DATE_REPURCHASED := p_from.DATE_REPURCHASED;
2856
2857 p_to.GAIN_LOSS := p_from.GAIN_LOSS;
2858
2859 p_to.FLOOR_AMOUNT := p_from.FLOOR_AMOUNT;
2860
2861 p_to.PREVIOUS_CONTRACT := p_from.PREVIOUS_CONTRACT;
2862
2863 p_to.TRACKED_RESIDUAL := p_from.TRACKED_RESIDUAL;
2864
2865 p_to.DATE_TITLE_RECEIVED := p_from.DATE_TITLE_RECEIVED;
2866
2867 p_to.ESTIMATED_OEC := p_from.ESTIMATED_OEC;
2868
2869 p_to.RESIDUAL_PERCENTAGE := p_from.RESIDUAL_PERCENTAGE;
2870
2871 p_to.CAPITAL_REDUCTION := p_from.CAPITAL_REDUCTION;
2872
2873 p_to.VENDOR_ADVANCE_PAID := p_from.VENDOR_ADVANCE_PAID;
2874
2875 p_to.TRADEIN_AMOUNT := p_from.TRADEIN_AMOUNT;
2876
2877 p_to.DELIVERED_DATE := p_from.DELIVERED_DATE;
2878
2879 p_to.YEAR_OF_MANUFACTURE := p_from.YEAR_OF_MANUFACTURE;
2880
2881 p_to.INITIAL_DIRECT_COST := p_from.INITIAL_DIRECT_COST;
2882
2883 p_to.OCCUPANCY := p_from.OCCUPANCY;
2884
2885 p_to.DATE_LAST_INSPECTION := p_from.DATE_LAST_INSPECTION;
2886
2887 p_to.DATE_NEXT_INSPECTION_DUE := p_from.DATE_NEXT_INSPECTION_DUE;
2888
2889 p_to.WEIGHTED_AVERAGE_LIFE := p_from.WEIGHTED_AVERAGE_LIFE;
2890
2891 p_to.BOND_EQUIVALENT_YIELD := p_from.BOND_EQUIVALENT_YIELD;
2892
2893 p_to.REFINANCE_AMOUNT := p_from.REFINANCE_AMOUNT;
2894
2895 p_to.YEAR_BUILT := p_from.YEAR_BUILT;
2896
2897 p_to.COVERAGE_RATIO := p_from.COVERAGE_RATIO;
2898
2899 p_to.GROSS_SQUARE_FOOTAGE := p_from.GROSS_SQUARE_FOOTAGE;
2900
2901 p_to.NET_RENTABLE := p_from.NET_RENTABLE;
2902
2903 p_to.DATE_LETTER_ACCEPTANCE := p_from.DATE_LETTER_ACCEPTANCE;
2904
2905 p_to.DATE_COMMITMENT_EXPIRATION := p_from.DATE_COMMITMENT_EXPIRATION;
2906
2907 p_to.DATE_APPRAISAL := p_from.DATE_APPRAISAL;
2908
2909 p_to.APPRAISAL_VALUE := p_from.APPRAISAL_VALUE;
2910
2911 p_to.RESIDUAL_VALUE := p_from.RESIDUAL_VALUE;
2912
2913 p_to.PERCENT := p_from.PERCENT;
2914
2915 p_to.COVERAGE := p_from.COVERAGE;
2916
2917 p_to.LRV_AMOUNT := p_from.LRV_AMOUNT;
2918
2919 p_to.AMOUNT := p_from.AMOUNT;
2920
2921 p_to.LRS_PERCENT := p_from.LRS_PERCENT;
2922
2923 p_to.EVERGREEN_PERCENT := p_from.EVERGREEN_PERCENT;
2924
2925 p_to.PERCENT_STAKE := p_from.PERCENT_STAKE;
2926
2927 p_to.AMOUNT_STAKE := p_from.AMOUNT_STAKE;
2928
2929 p_to.DATE_SOLD := p_from.DATE_SOLD;
2930
2931 p_to.STY_ID_FOR := p_from.STY_ID_FOR;
2932
2933 p_to.ATTRIBUTE_CATEGORY := p_from.ATTRIBUTE_CATEGORY;
2934
2935 p_to.ATTRIBUTE1 := p_from.ATTRIBUTE1;
2936
2937 p_to.ATTRIBUTE2 := p_from.ATTRIBUTE2;
2938
2939 p_to.ATTRIBUTE3 := p_from.ATTRIBUTE3;
2940
2941 p_to.ATTRIBUTE4 := p_from.ATTRIBUTE4;
2942
2943 p_to.ATTRIBUTE5 := p_from.ATTRIBUTE5;
2944
2945 p_to.ATTRIBUTE6 := p_from.ATTRIBUTE6;
2946
2947 p_to.ATTRIBUTE7 := p_from.ATTRIBUTE7;
2948
2949 p_to.ATTRIBUTE8 := p_from.ATTRIBUTE8;
2950
2951 p_to.ATTRIBUTE9 := p_from.ATTRIBUTE9;
2952
2953 p_to.ATTRIBUTE10 := p_from.ATTRIBUTE10;
2954
2955 p_to.ATTRIBUTE11 := p_from.ATTRIBUTE11;
2956
2957 p_to.ATTRIBUTE12 := p_from.ATTRIBUTE12;
2958
2959 p_to.ATTRIBUTE13 := p_from.ATTRIBUTE13;
2960
2961 p_to.ATTRIBUTE14 := p_from.ATTRIBUTE14;
2962
2963 p_to.ATTRIBUTE15 := p_from.ATTRIBUTE15;
2964
2965 p_to.CREATED_BY := p_from.CREATED_BY;
2966
2967 p_to.CREATION_DATE := p_from.CREATION_DATE;
2968
2969 p_to.LAST_UPDATED_BY := p_from.LAST_UPDATED_BY;
2970
2971 p_to.LAST_UPDATE_DATE := p_from.LAST_UPDATE_DATE;
2972
2973 p_to.LAST_UPDATE_LOGIN := p_from.LAST_UPDATE_LOGIN;
2974
2975 p_to.NTY_CODE := p_from.NTY_CODE;
2976
2977 p_to.FCG_CODE := p_from.FCG_CODE;
2978
2979 p_to.PRC_CODE := p_from.PRC_CODE;
2980
2981 p_to.RE_LEASE_YN := p_from.RE_LEASE_YN;
2982
2983 p_to.PRESCRIBED_ASSET_YN := p_from.PRESCRIBED_ASSET_YN;
2984
2985 p_to.CREDIT_TENANT_YN := p_from.CREDIT_TENANT_YN;
2986
2987 p_to.SECURED_DEAL_YN := p_from.SECURED_DEAL_YN;
2988
2989 p_to.CLG_ID := p_from.CLG_ID;
2990
2991 p_to.DATE_FUNDING := p_from.DATE_FUNDING;
2992
2993 p_to.DATE_FUNDING_REQUIRED := p_from.DATE_FUNDING_REQUIRED;
2994
2995 p_to.DATE_ACCEPTED := p_from.DATE_ACCEPTED;
2996
2997 p_to.DATE_DELIVERY_EXPECTED := p_from.DATE_DELIVERY_EXPECTED;
2998
2999 p_to.OEC := p_from.OEC;
3000
3001 p_to.CAPITAL_AMOUNT := p_from.CAPITAL_AMOUNT;
3002
3003 p_to.RESIDUAL_GRNTY_AMOUNT := p_from.RESIDUAL_GRNTY_AMOUNT;
3004
3005 p_to.RESIDUAL_CODE := p_from.RESIDUAL_CODE;
3006
3007 p_to.RVI_PREMIUM := p_from.RVI_PREMIUM;
3008
3009 p_to.CREDIT_NATURE := p_from.CREDIT_NATURE;
3010
3011 p_to.CAPITALIZED_INTEREST := p_from.CAPITALIZED_INTEREST;
3012
3013 p_to.DATE_PAY_INVESTOR_START := p_from.DATE_PAY_INVESTOR_START;
3014
3015 p_to.PAY_INVESTOR_FREQUENCY := p_from.PAY_INVESTOR_FREQUENCY;
3016
3017 p_to.PAY_INVESTOR_EVENT := p_from.PAY_INVESTOR_EVENT;
3018
3019 p_to.PAY_INVESTOR_REMITTANCE_DAYS := p_from.PAY_INVESTOR_REMITTANCE_DAYS;
3020
3021 p_to.FEE_TYPE := p_from.FEE_TYPE;
3022 --Bug# 3143522: 11.5.10
3023 --subsidy
3024 p_to.SUBSIDY_ID := p_from.SUBSIDY_ID;
3025 --p_to.SUBSIDIZED_OEC := p_from.SUBSIDIZED_OEC;
3026 --p_to.SUBSIDIZED_CAP_AMOUNT := p_from.SUBSIDIZED_CAP_AMOUNT;
3027 p_to.SUBSIDY_OVERRIDE_AMOUNT := p_from.SUBSIDY_OVERRIDE_AMOUNT;
3028 --financed fee
3029 p_to.PRE_TAX_YIELD := p_from.PRE_TAX_YIELD;
3030 p_to.AFTER_TAX_YIELD := p_from.AFTER_TAX_YIELD;
3031 p_to.IMPLICIT_INTEREST_RATE := p_from.IMPLICIT_INTEREST_RATE;
3032 p_to.IMPLICIT_NON_IDC_INTEREST_RATE := p_from.IMPLICIT_NON_IDC_INTEREST_RATE;
3033 p_to.PRE_TAX_IRR := p_from.PRE_TAX_IRR;
3034 p_to.AFTER_TAX_IRR := p_from.AFTER_TAX_IRR;
3035 --quote
3036 p_to.SUB_PRE_TAX_YIELD := p_from.SUB_PRE_TAX_YIELD;
3037 p_to.SUB_AFTER_TAX_YIELD := p_from.SUB_AFTER_TAX_YIELD;
3038 p_to.SUB_IMPL_INTEREST_RATE := p_from.SUB_IMPL_INTEREST_RATE;
3039 p_to.SUB_IMPL_NON_IDC_INT_RATE := p_from.SUB_IMPL_NON_IDC_INT_RATE;
3040 p_to.SUB_PRE_TAX_IRR := p_from.SUB_PRE_TAX_IRR;
3041 p_to.SUB_AFTER_TAX_IRR := p_from.SUB_AFTER_TAX_IRR;
3042 --Bug# 2994971
3043 p_to.ITEM_INSURANCE_CATEGORY := p_from.ITEM_INSURANCE_CATEGORY;
3044 --Bug# 3973640 :11.5.10+
3045 p_to.QTE_ID := p_from.QTE_ID;
3046 p_to.FUNDING_DATE := p_from.FUNDING_DATE;
3047 p_to.STREAM_TYPE_SUBCLASS := p_from.STREAM_TYPE_SUBCLASS;
3048 --Bug# 4419339 OKLH
3049 p_to.DATE_FUNDING_EXPECTED := p_from.DATE_FUNDING_EXPECTED;
3050 p_to.MANUFACTURER_NAME := p_from.MANUFACTURER_NAME;
3051 p_to.MODEL_NUMBER := p_from.MODEL_NUMBER;
3052 p_to.DOWN_PAYMENT_RECEIVER_CODE := p_from.DOWN_PAYMENT_RECEIVER_CODE;
3053 p_to.CAPITALIZE_DOWN_PAYMENT_YN := p_from.CAPITALIZE_DOWN_PAYMENT_YN;
3054 --Bug#4373029
3055 p_to.FEE_PURPOSE_CODE := p_from.FEE_PURPOSE_CODE;
3056 p_to.TERMINATION_VALUE := p_from.TERMINATION_VALUE;
3057 --Bug# 4631549
3058 p_to.EXPECTED_ASSET_COST := p_from.EXPECTED_ASSET_COST;
3059 p_to.ORIG_CONTRACT_LINE_ID := p_from.ORIG_CONTRACT_LINE_ID;
3060 --Bug# 16344245
3061 p_to.ORIGINATION_INCOME := p_from.ORIGINATION_INCOME;
3062 p_to.AMOUNT_BALANCE_LEGACY := p_from.AMOUNT_BALANCE_LEGACY;
3063 p_to.DT_EFFECTIVE_BALANCE_LEGACY := p_from.DT_EFFECTIVE_BALANCE_LEGACY;
3064
3065 END migrate;
3066
3067
3068
3069 ---------------------------------------------------------------------------
3070 -- PROCEDURE validate_row
3071 ---------------------------------------------------------------------------
3072
3073 --------------------------------------
3074 -- validate_row for: OKL_K_LINES_V --
3075 --------------------------------------
3076
3077 PROCEDURE validate_row(
3078
3079 p_api_version IN NUMBER,
3080 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
3081 x_return_status OUT NOCOPY VARCHAR2,
3082 x_msg_count OUT NOCOPY NUMBER,
3083 x_msg_data OUT NOCOPY VARCHAR2,
3084 p_klev_rec IN klev_rec_type) IS
3085
3086 l_api_version CONSTANT NUMBER := 1;
3087 l_api_name CONSTANT VARCHAR2(30) := 'rec_validate_row';
3088 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3089 l_klev_rec klev_rec_type := p_klev_rec;
3090 BEGIN
3091 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3092 G_PKG_NAME,
3093 p_init_msg_list,
3094 l_api_version,
3095 p_api_version,
3096 '_PVT',
3097 x_return_status);
3098
3099 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3100 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3101 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3102 RAISE OKC_API.G_EXCEPTION_ERROR;
3103 END IF;
3104
3105
3106 --- Validate all non-missing attributes (Item Level Validation)
3107 l_return_status := Validate_Attributes(l_klev_rec);
3108 --- If any errors happen abort API
3109
3110 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3111 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3112 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3113 RAISE OKC_API.G_EXCEPTION_ERROR;
3114 END IF;
3115
3116
3117 l_return_status := Validate_Record(l_klev_rec);
3118
3119 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3120 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3121 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3122 RAISE OKC_API.G_EXCEPTION_ERROR;
3123 END IF;
3124
3125
3126 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3127
3128 EXCEPTION
3129 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3130 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3131 (
3132 l_api_name,
3133 G_PKG_NAME,
3134 'OKC_API.G_RET_STS_ERROR',
3135 x_msg_count,
3136 x_msg_data,
3137 '_PVT'
3138 );
3139 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3140 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3141 (
3142 l_api_name,
3143 G_PKG_NAME,
3144 'OKC_API.G_RET_STS_UNEXP_ERROR',
3145 x_msg_count,
3146 x_msg_data,
3147 '_PVT'
3148 );
3149 WHEN OTHERS THEN
3150 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3151 (
3152 l_api_name,
3153 G_PKG_NAME,
3154 'OTHERS',
3155 x_msg_count,
3156 x_msg_data,
3157 '_PVT'
3158 );
3159
3160 END validate_row;
3161 ------------------------------------------
3162 -- PL/SQL TBL validate_row for: OKL_K_LINES_V --
3163 ------------------------------------------
3164
3165 PROCEDURE validate_row(
3166
3167 p_api_version IN NUMBER,
3168 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
3169 x_return_status OUT NOCOPY VARCHAR2,
3170 x_msg_count OUT NOCOPY NUMBER,
3171 x_msg_data OUT NOCOPY VARCHAR2,
3172 p_klev_tbl IN klev_tbl_type) IS
3173
3174 l_api_version CONSTANT NUMBER := 1;
3175 l_api_name CONSTANT VARCHAR2(30) := 'tbl_validate_row';
3176 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3177 i NUMBER := 0;
3178 BEGIN
3179 OKC_API.init_msg_list(p_init_msg_list);
3180 -- Make sure PL/SQL table has records in it before passing
3181 IF (p_klev_tbl.COUNT > 0) THEN
3182 i := p_klev_tbl.FIRST;
3183 LOOP
3184 validate_row (
3185 p_api_version => p_api_version,
3186 p_init_msg_list => OKC_API.G_FALSE,
3187 x_return_status => x_return_status,
3188 x_msg_count => x_msg_count,
3189 x_msg_data => x_msg_data,
3190 p_klev_rec => p_klev_tbl(i));
3191 EXIT WHEN (i = p_klev_tbl.LAST);
3192 i := p_klev_tbl.NEXT(i);
3193 END LOOP;
3194 END IF;
3195
3196 EXCEPTION
3197 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3198 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3199 (
3200 l_api_name,
3201 G_PKG_NAME,
3202 'OKC_API.G_RET_STS_ERROR',
3203 x_msg_count,
3204 x_msg_data,
3205 '_PVT'
3206 );
3207 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3208 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3209 (
3210 l_api_name,
3211 G_PKG_NAME,
3212 'OKC_API.G_RET_STS_UNEXP_ERROR',
3213 x_msg_count,
3214 x_msg_data,
3215 '_PVT'
3216 );
3217 WHEN OTHERS THEN
3218 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3219 (
3220 l_api_name,
3221 G_PKG_NAME,
3222 'OTHERS',
3223 x_msg_count,
3224 x_msg_data,
3225 '_PVT'
3226 );
3227
3228 END validate_row;
3229
3230
3231 ---------------------------------------------------------------------------
3232 -- PROCEDURE insert_row
3233 ---------------------------------------------------------------------------
3234
3235
3236 ------------------------------------
3237 -- insert_row for: OKL_K_LINES_H --
3238 ------------------------------------
3239
3240 PROCEDURE insert_row(
3241
3242 p_api_version IN NUMBER,
3243 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
3244 x_return_status OUT NOCOPY VARCHAR2,
3245 x_msg_count OUT NOCOPY NUMBER,
3246 x_msg_data OUT NOCOPY VARCHAR2,
3247 p_okl_k_lines_h_rec IN okl_k_lines_h_rec_type,
3248 x_okl_k_lines_h_rec OUT NOCOPY okl_k_lines_h_rec_type) IS
3249
3250 l_api_version CONSTANT NUMBER := 1;
3251 l_api_name CONSTANT VARCHAR2(30) := 'rec_insert_row';
3252 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3253 l_okl_k_lines_h_rec okl_k_lines_h_rec_type := p_okl_k_lines_h_rec;
3254 l_def_okl_k_lines_h_rec okl_k_lines_h_rec_type;
3255 ----------------------------------------
3256 -- Set_Attributes for: OKL_K_LINES_H --
3257 ----------------------------------------
3258 FUNCTION Set_Attributes (
3259 p_okl_k_lines_h_rec IN okl_k_lines_h_rec_type,
3260 x_okl_k_lines_h_rec OUT NOCOPY okl_k_lines_h_rec_type
3261 ) RETURN VARCHAR2 IS
3262 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3263 BEGIN
3264 x_okl_k_lines_h_rec := p_okl_k_lines_h_rec;
3265 RETURN(l_return_status);
3266 END Set_Attributes;
3267 BEGIN
3268
3269 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3270 p_init_msg_list,
3271 '_PVT',
3272 x_return_status);
3273
3274 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3275 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3276 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3277 RAISE OKC_API.G_EXCEPTION_ERROR;
3278 END IF;
3279
3280 --- Setting item attributes
3281 l_return_status := Set_Attributes(
3282 p_okl_k_lines_h_rec, -- IN
3283 l_okl_k_lines_h_rec); -- OUT
3284 --- If any errors happen abort API
3285
3286 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3287 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3288 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3289 RAISE OKC_API.G_EXCEPTION_ERROR;
3290 END IF;
3291
3292 INSERT INTO OKL_K_LINES_H(
3293 ID,
3294 MAJOR_VERSION,
3295 KLE_ID,
3296 STY_ID,
3297 OBJECT_VERSION_NUMBER,
3298 LAO_AMOUNT,
3299 FEE_CHARGE,
3300 TITLE_DATE,
3301 DATE_RESIDUAL_LAST_REVIEW,
3302 DATE_LAST_REAMORTISATION,
3303 TERMINATION_PURCHASE_AMOUNT,
3304 DATE_LAST_CLEANUP,
3305 REMARKETED_AMOUNT,
3306 DATE_REMARKETED,
3307 REMARKET_MARGIN,
3308 REPURCHASED_AMOUNT,
3309 DATE_REPURCHASED,
3310 GAIN_LOSS,
3311 FLOOR_AMOUNT,
3312 PREVIOUS_CONTRACT,
3313 TRACKED_RESIDUAL,
3314 DATE_TITLE_RECEIVED,
3315 ESTIMATED_OEC,
3316 RESIDUAL_PERCENTAGE,
3317 CAPITAL_REDUCTION,
3318 VENDOR_ADVANCE_PAID,
3319 TRADEIN_AMOUNT,
3320 DELIVERED_DATE,
3321 YEAR_OF_MANUFACTURE,
3322 INITIAL_DIRECT_COST,
3323 OCCUPANCY,
3324 DATE_LAST_INSPECTION,
3325 DATE_NEXT_INSPECTION_DUE,
3326 WEIGHTED_AVERAGE_LIFE,
3327 BOND_EQUIVALENT_YIELD,
3328 REFINANCE_AMOUNT,
3329 YEAR_BUILT,
3330 COVERAGE_RATIO,
3331 GROSS_SQUARE_FOOTAGE,
3332 NET_RENTABLE,
3333 DATE_LETTER_ACCEPTANCE,
3334 DATE_COMMITMENT_EXPIRATION,
3335 DATE_APPRAISAL,
3336 APPRAISAL_VALUE,
3337 RESIDUAL_VALUE,
3338 PERCENT,
3339 COVERAGE,
3340 LRV_AMOUNT,
3341 AMOUNT,
3342 LRS_PERCENT,
3343 EVERGREEN_PERCENT,
3344 PERCENT_STAKE,
3345 AMOUNT_STAKE,
3346 DATE_SOLD,
3347 STY_ID_FOR,
3348 ATTRIBUTE_CATEGORY,
3349 ATTRIBUTE1,
3350 ATTRIBUTE2,
3351 ATTRIBUTE3,
3352 ATTRIBUTE4,
3353 ATTRIBUTE5,
3354 ATTRIBUTE6,
3355 ATTRIBUTE7,
3356 ATTRIBUTE8,
3357 ATTRIBUTE9,
3358 ATTRIBUTE10,
3359 ATTRIBUTE11,
3360 ATTRIBUTE12,
3361 ATTRIBUTE13,
3362 ATTRIBUTE14,
3363 ATTRIBUTE15,
3364 CREATED_BY,
3365 CREATION_DATE,
3366 LAST_UPDATED_BY,
3367 LAST_UPDATE_DATE,
3368 LAST_UPDATE_LOGIN,
3369 NTY_CODE,
3370 FCG_CODE,
3371 PRC_CODE,
3372 RE_LEASE_YN,
3373 PRESCRIBED_ASSET_YN,
3374 CREDIT_TENANT_YN,
3375 SECURED_DEAL_YN,
3376 CLG_ID,
3377 DATE_FUNDING,
3378 DATE_FUNDING_REQUIRED,
3379 DATE_ACCEPTED,
3380 DATE_DELIVERY_EXPECTED,
3381 OEC,
3382 CAPITAL_AMOUNT,
3383 RESIDUAL_GRNTY_AMOUNT,
3384 RESIDUAL_CODE,
3385 RVI_PREMIUM,
3386 CREDIT_NATURE,
3387 CAPITALIZED_INTEREST,
3388 CAPITAL_REDUCTION_PERCENT,
3389 --Bug# 2697681 11.5.9
3390 DATE_PAY_INVESTOR_START,
3391 PAY_INVESTOR_FREQUENCY,
3392 PAY_INVESTOR_EVENT,
3393 PAY_INVESTOR_REMITTANCE_DAYS,
3394 --financed fees
3395 FEE_TYPE,
3396 --Bug# 3143522 : 11.5.10
3397 --subsidy
3398 SUBSIDY_ID,
3399 --SUBSIDIZED_OEC,
3400 --SUBSIDIZED_CAP_AMOUNT,
3401 SUBSIDY_OVERRIDE_AMOUNT,
3402 --financed fee
3403 PRE_TAX_YIELD,
3404 AFTER_TAX_YIELD,
3405 IMPLICIT_INTEREST_RATE,
3406 IMPLICIT_NON_IDC_INTEREST_RATE,
3407 PRE_TAX_IRR,
3408 AFTER_TAX_IRR,
3409 --quote
3410 SUB_PRE_TAX_YIELD,
3411 SUB_AFTER_TAX_YIELD,
3412 SUB_IMPL_INTEREST_RATE,
3413 SUB_IMPL_NON_IDC_INT_RATE,
3414 SUB_PRE_TAX_IRR,
3415 SUB_AFTER_TAX_IRR,
3416 --Bug# 2994971
3417 ITEM_INSURANCE_CATEGORY,
3418 --Bug# 3973640 :11.5.10+
3419 QTE_ID,
3420 FUNDING_DATE,
3421 STREAM_TYPE_SUBCLASS,
3422 --Bug# 4419339 OKLH
3423 DATE_FUNDING_EXPECTED,
3424 MANUFACTURER_NAME,
3425 MODEL_NUMBER,
3426 DOWN_PAYMENT_RECEIVER_CODE,
3427 CAPITALIZE_DOWN_PAYMENT_YN,
3428 --Bug#4373029
3429 FEE_PURPOSE_CODE,
3430 TERMINATION_VALUE,
3431 --Bug# 4631549
3432 EXPECTED_ASSET_COST,
3433 ORIG_CONTRACT_LINE_ID,
3434 --Bug# 16344245
3435 ORIGINATION_INCOME,
3436 AMOUNT_BALANCE_LEGACY,
3437 DT_EFFECTIVE_BALANCE_LEGACY
3438
3439 )
3440 VALUES (
3441 l_okl_k_lines_h_rec.ID,
3442 l_okl_k_lines_h_rec.MAJOR_VERSION,
3443 l_okl_k_lines_h_rec.KLE_ID,
3444 l_okl_k_lines_h_rec.STY_ID,
3445 l_okl_k_lines_h_rec.OBJECT_VERSION_NUMBER,
3446 l_okl_k_lines_h_rec.LAO_AMOUNT,
3447 l_okl_k_lines_h_rec.FEE_CHARGE,
3448 l_okl_k_lines_h_rec.TITLE_DATE,
3449 l_okl_k_lines_h_rec.DATE_RESIDUAL_LAST_REVIEW,
3450 l_okl_k_lines_h_rec.DATE_LAST_REAMORTISATION,
3451 l_okl_k_lines_h_rec.TERMINATION_PURCHASE_AMOUNT,
3452 l_okl_k_lines_h_rec.DATE_LAST_CLEANUP,
3453 l_okl_k_lines_h_rec.REMARKETED_AMOUNT,
3454 l_okl_k_lines_h_rec.DATE_REMARKETED,
3455 l_okl_k_lines_h_rec.REMARKET_MARGIN,
3456 l_okl_k_lines_h_rec.REPURCHASED_AMOUNT,
3457 l_okl_k_lines_h_rec.DATE_REPURCHASED,
3458 l_okl_k_lines_h_rec.GAIN_LOSS,
3459 l_okl_k_lines_h_rec.FLOOR_AMOUNT,
3460 l_okl_k_lines_h_rec.PREVIOUS_CONTRACT,
3461 l_okl_k_lines_h_rec.TRACKED_RESIDUAL,
3462 l_okl_k_lines_h_rec.DATE_TITLE_RECEIVED,
3463 l_okl_k_lines_h_rec.ESTIMATED_OEC,
3464 l_okl_k_lines_h_rec.RESIDUAL_PERCENTAGE,
3465 l_okl_k_lines_h_rec.CAPITAL_REDUCTION,
3466 l_okl_k_lines_h_rec.VENDOR_ADVANCE_PAID,
3467 l_okl_k_lines_h_rec.TRADEIN_AMOUNT,
3468 l_okl_k_lines_h_rec.DELIVERED_DATE,
3469 l_okl_k_lines_h_rec.YEAR_OF_MANUFACTURE,
3470 l_okl_k_lines_h_rec.INITIAL_DIRECT_COST,
3471 l_okl_k_lines_h_rec.OCCUPANCY,
3472 l_okl_k_lines_h_rec.DATE_LAST_INSPECTION,
3473 l_okl_k_lines_h_rec.DATE_NEXT_INSPECTION_DUE,
3474 l_okl_k_lines_h_rec.WEIGHTED_AVERAGE_LIFE,
3475 l_okl_k_lines_h_rec.BOND_EQUIVALENT_YIELD,
3476 l_okl_k_lines_h_rec.REFINANCE_AMOUNT,
3477 l_okl_k_lines_h_rec.YEAR_BUILT,
3478 l_okl_k_lines_h_rec.COVERAGE_RATIO,
3479 l_okl_k_lines_h_rec.GROSS_SQUARE_FOOTAGE,
3480 l_okl_k_lines_h_rec.NET_RENTABLE,
3481 l_okl_k_lines_h_rec.DATE_LETTER_ACCEPTANCE,
3482 l_okl_k_lines_h_rec.DATE_COMMITMENT_EXPIRATION,
3483 l_okl_k_lines_h_rec.DATE_APPRAISAL,
3484 l_okl_k_lines_h_rec.APPRAISAL_VALUE,
3485 l_okl_k_lines_h_rec.RESIDUAL_VALUE,
3486 l_okl_k_lines_h_rec.PERCENT,
3487 l_okl_k_lines_h_rec.COVERAGE,
3488 l_okl_k_lines_h_rec.LRV_AMOUNT,
3489 l_okl_k_lines_h_rec.AMOUNT,
3490 l_okl_k_lines_h_rec.LRS_PERCENT,
3491 l_okl_k_lines_h_rec.EVERGREEN_PERCENT,
3492 l_okl_k_lines_h_rec.PERCENT_STAKE,
3493 l_okl_k_lines_h_rec.AMOUNT_STAKE,
3494 l_okl_k_lines_h_rec.DATE_SOLD,
3495 l_okl_k_lines_h_rec.STY_ID_FOR,
3496 l_okl_k_lines_h_rec.ATTRIBUTE_CATEGORY,
3497 l_okl_k_lines_h_rec.ATTRIBUTE1,
3498 l_okl_k_lines_h_rec.ATTRIBUTE2,
3499 l_okl_k_lines_h_rec.ATTRIBUTE3,
3500 l_okl_k_lines_h_rec.ATTRIBUTE4,
3501 l_okl_k_lines_h_rec.ATTRIBUTE5,
3502 l_okl_k_lines_h_rec.ATTRIBUTE6,
3503 l_okl_k_lines_h_rec.ATTRIBUTE7,
3504 l_okl_k_lines_h_rec.ATTRIBUTE8,
3505 l_okl_k_lines_h_rec.ATTRIBUTE9,
3506 l_okl_k_lines_h_rec.ATTRIBUTE10,
3507 l_okl_k_lines_h_rec.ATTRIBUTE11,
3508 l_okl_k_lines_h_rec.ATTRIBUTE12,
3509 l_okl_k_lines_h_rec.ATTRIBUTE13,
3510 l_okl_k_lines_h_rec.ATTRIBUTE14,
3511 l_okl_k_lines_h_rec.ATTRIBUTE15,
3512 l_okl_k_lines_h_rec.CREATED_BY,
3513 l_okl_k_lines_h_rec.CREATION_DATE,
3514 l_okl_k_lines_h_rec.LAST_UPDATED_BY,
3515 l_okl_k_lines_h_rec.LAST_UPDATE_DATE,
3516 l_okl_k_lines_h_rec.LAST_UPDATE_LOGIN,
3517 l_okl_k_lines_h_rec.NTY_CODE,
3518 l_okl_k_lines_h_rec.FCG_CODE,
3519 l_okl_k_lines_h_rec.PRC_CODE,
3520 l_okl_k_lines_h_rec.RE_LEASE_YN,
3521 l_okl_k_lines_h_rec.PRESCRIBED_ASSET_YN,
3522 l_okl_k_lines_h_rec.CREDIT_TENANT_YN,
3523 l_okl_k_lines_h_rec.SECURED_DEAL_YN,
3524 l_okl_k_lines_h_rec.CLG_ID,
3525 l_okl_k_lines_h_rec.DATE_FUNDING,
3526 l_okl_k_lines_h_rec.DATE_FUNDING_REQUIRED,
3527 l_okl_k_lines_h_rec.DATE_ACCEPTED,
3528 l_okl_k_lines_h_rec.DATE_DELIVERY_EXPECTED,
3529 l_okl_k_lines_h_rec.OEC,
3530 l_okl_k_lines_h_rec.CAPITAL_AMOUNT,
3531 l_okl_k_lines_h_rec.RESIDUAL_GRNTY_AMOUNT,
3532 l_okl_k_lines_h_rec.RESIDUAL_CODE,
3533 l_okl_k_lines_h_rec.RVI_PREMIUM,
3534 l_okl_k_lines_h_rec.CREDIT_NATURE,
3535 l_okl_k_lines_h_rec.CAPITALIZED_INTEREST,
3536 l_okl_k_lines_h_rec.CAPITAL_REDUCTION_PERCENT,
3537 --Bug# 2697681 11.5.9
3538 l_okl_k_lines_h_rec.DATE_PAY_INVESTOR_START,
3539 l_okl_k_lines_h_rec.PAY_INVESTOR_FREQUENCY,
3540 l_okl_k_lines_h_rec.PAY_INVESTOR_EVENT,
3541 l_okl_k_lines_h_rec.PAY_INVESTOR_REMITTANCE_DAYS,
3542 --financed fees
3543 l_okl_k_lines_h_rec.FEE_TYPE,
3544 --Bug# 3143522: 11.5.10
3545 --subsidy
3546 l_okl_k_lines_h_rec.SUBSIDY_ID,
3547 --l_okl_k_lines_h_rec.SUBSIDIZED_OEC,
3548 --l_okl_k_lines_h_rec.SUBSIDIZED_CAP_AMOUNT,
3549 l_okl_k_lines_h_rec.SUBSIDY_OVERRIDE_AMOUNT,
3550 --financed fee
3551 l_okl_k_lines_h_rec.PRE_TAX_YIELD,
3552 l_okl_k_lines_h_rec.AFTER_TAX_YIELD,
3553 l_okl_k_lines_h_rec.IMPLICIT_INTEREST_RATE,
3554 l_okl_k_lines_h_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
3555 l_okl_k_lines_h_rec.PRE_TAX_IRR,
3556 l_okl_k_lines_h_rec.AFTER_TAX_IRR,
3557 --quote
3558 l_okl_k_lines_h_rec.SUB_PRE_TAX_YIELD,
3559 l_okl_k_lines_h_rec.SUB_AFTER_TAX_YIELD,
3560 l_okl_k_lines_h_rec.SUB_IMPL_INTEREST_RATE,
3561 l_okl_k_lines_h_rec.SUB_IMPL_NON_IDC_INT_RATE,
3562 l_okl_k_lines_h_rec.SUB_PRE_TAX_IRR,
3563 l_okl_k_lines_h_rec.SUB_AFTER_TAX_IRR,
3564 --Bug#2994971
3565 l_okl_k_lines_h_rec.ITEM_INSURANCE_CATEGORY,
3566 --Bug# 3973640: 11.5.10+
3567 l_okl_k_lines_h_rec.QTE_ID,
3568 l_okl_k_lines_h_rec.FUNDING_DATE,
3569 l_okl_k_lines_h_rec.STREAM_TYPE_SUBCLASS,
3570 --Bug# 4419339 OKLH
3571 l_okl_k_lines_h_rec.DATE_FUNDING_EXPECTED,
3572 l_okl_k_lines_h_rec.MANUFACTURER_NAME,
3573 l_okl_k_lines_h_rec.MODEL_NUMBER,
3574 l_okl_k_lines_h_rec.DOWN_PAYMENT_RECEIVER_CODE,
3575 l_okl_k_lines_h_rec.CAPITALIZE_DOWN_PAYMENT_YN,
3576 --Bug#4373029
3577 l_okl_k_lines_h_rec.FEE_PURPOSE_CODE,
3578 l_okl_k_lines_h_rec.TERMINATION_VALUE,
3579 --Bug# 4631549
3580 l_okl_k_lines_h_rec.EXPECTED_ASSET_COST,
3581 l_okl_k_lines_h_rec.ORIG_CONTRACT_LINE_ID,
3582 --Bug# 16344245
3583 l_okl_k_lines_h_rec.ORIGINATION_INCOME,
3584 l_okl_k_lines_h_rec.AMOUNT_BALANCE_LEGACY,
3585 l_okl_k_lines_h_rec.DT_EFFECTIVE_BALANCE_LEGACY
3586
3587 );
3588 -- Set OUT values
3589 x_okl_k_lines_h_rec := l_okl_k_lines_h_rec;
3590 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3591
3592 EXCEPTION
3593 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3594 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3595 (
3596 l_api_name,
3597 G_PKG_NAME,
3598 'OKC_API.G_RET_STS_ERROR',
3599 x_msg_count,
3600 x_msg_data,
3601 '_PVT'
3602 );
3603 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3604 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3605 (
3606 l_api_name,
3607 G_PKG_NAME,
3608 'OKC_API.G_RET_STS_UNEXP_ERROR',
3609 x_msg_count,
3610 x_msg_data,
3611 '_PVT'
3612 );
3613 WHEN OTHERS THEN
3614 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3615 (
3616 l_api_name,
3617 G_PKG_NAME,
3618 'OTHERS',
3619 x_msg_count,
3620 x_msg_data,
3621 '_PVT'
3622 );
3623
3624 END insert_row;
3625
3626 ------------------------------------
3627 -- insert_row for: OKL_K_LINES --
3628 ------------------------------------
3629
3630 PROCEDURE insert_row(
3631
3632 p_api_version IN NUMBER,
3633 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
3634 x_return_status OUT NOCOPY VARCHAR2,
3635 x_msg_count OUT NOCOPY NUMBER,
3636 x_msg_data OUT NOCOPY VARCHAR2,
3637 p_kle_rec IN kle_rec_type,
3638 x_kle_rec OUT NOCOPY kle_rec_type) IS
3639
3640 l_api_version CONSTANT NUMBER := 1;
3641 l_api_name CONSTANT VARCHAR2(30) := 'rec_insert_row';
3642 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3643 l_kle_rec kle_rec_type := p_kle_rec;
3644 l_def_kle_rec kle_rec_type;
3645 ----------------------------------------
3646 -- Set_Attributes for: OKL_K_LINES --
3647 ----------------------------------------
3648 FUNCTION Set_Attributes (
3649 p_kle_rec IN kle_rec_type,
3650 x_kle_rec OUT NOCOPY kle_rec_type
3651 ) RETURN VARCHAR2 IS
3652 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3653 BEGIN
3654 x_kle_rec := p_kle_rec;
3655 --Added by jjuneja
3656 --in case the Fee_type is income then setting origination income to 0 if it is null
3657 IF(x_kle_rec.FEE_TYPE = 'INCOME') THEN
3658 x_kle_rec.ORIGINATION_INCOME := NVL(x_kle_rec.ORIGINATION_INCOME,0);
3659 END IF;
3660 --End of addition by jjuneja
3661
3662 RETURN(l_return_status);
3663 END Set_Attributes;
3664 BEGIN
3665
3666 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3667 p_init_msg_list,
3668 '_PVT',
3669 x_return_status);
3670
3671 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3672 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3673 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3674 RAISE OKC_API.G_EXCEPTION_ERROR;
3675 END IF;
3676
3677 --- Setting item attributes
3678 l_return_status := Set_Attributes(
3679 p_kle_rec, -- IN
3680 l_kle_rec); -- OUT
3681 --- If any errors happen abort API
3682
3683 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3684 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3685 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3686 RAISE OKC_API.G_EXCEPTION_ERROR;
3687 END IF;
3688
3689 INSERT INTO OKL_K_LINES(
3690 ID,
3691 KLE_ID,
3692 STY_ID,
3693 OBJECT_VERSION_NUMBER,
3694 LAO_AMOUNT,
3695 FEE_CHARGE,
3696 TITLE_DATE,
3697 DATE_RESIDUAL_LAST_REVIEW,
3698 DATE_LAST_REAMORTISATION,
3699 TERMINATION_PURCHASE_AMOUNT,
3700 DATE_LAST_CLEANUP,
3701 REMARKETED_AMOUNT,
3702 DATE_REMARKETED,
3703 REMARKET_MARGIN,
3704 REPURCHASED_AMOUNT,
3705 DATE_REPURCHASED,
3706 GAIN_LOSS,
3707 FLOOR_AMOUNT,
3708 PREVIOUS_CONTRACT,
3709 TRACKED_RESIDUAL,
3710 DATE_TITLE_RECEIVED,
3711 ESTIMATED_OEC,
3712 RESIDUAL_PERCENTAGE,
3713 CAPITAL_REDUCTION,
3714 VENDOR_ADVANCE_PAID,
3715 TRADEIN_AMOUNT,
3716 DELIVERED_DATE,
3717 YEAR_OF_MANUFACTURE,
3718 INITIAL_DIRECT_COST,
3719 OCCUPANCY,
3720 DATE_LAST_INSPECTION,
3721 DATE_NEXT_INSPECTION_DUE,
3722 WEIGHTED_AVERAGE_LIFE,
3723 BOND_EQUIVALENT_YIELD,
3724 REFINANCE_AMOUNT,
3725 YEAR_BUILT,
3726 COVERAGE_RATIO,
3727 GROSS_SQUARE_FOOTAGE,
3728 NET_RENTABLE,
3729 DATE_LETTER_ACCEPTANCE,
3730 DATE_COMMITMENT_EXPIRATION,
3731 DATE_APPRAISAL,
3732 APPRAISAL_VALUE,
3733 RESIDUAL_VALUE,
3734 PERCENT,
3735 COVERAGE,
3736 LRV_AMOUNT,
3737 AMOUNT,
3738 LRS_PERCENT,
3739 EVERGREEN_PERCENT,
3740 PERCENT_STAKE,
3741 AMOUNT_STAKE,
3742 DATE_SOLD,
3743 STY_ID_FOR,
3744 ATTRIBUTE_CATEGORY,
3745 ATTRIBUTE1,
3746 ATTRIBUTE2,
3747 ATTRIBUTE3,
3748 ATTRIBUTE4,
3749 ATTRIBUTE5,
3750 ATTRIBUTE6,
3751 ATTRIBUTE7,
3752 ATTRIBUTE8,
3753 ATTRIBUTE9,
3754 ATTRIBUTE10,
3755 ATTRIBUTE11,
3756 ATTRIBUTE12,
3757 ATTRIBUTE13,
3758 ATTRIBUTE14,
3759 ATTRIBUTE15,
3760 CREATED_BY,
3761 CREATION_DATE,
3762 LAST_UPDATED_BY,
3763 LAST_UPDATE_DATE,
3764 LAST_UPDATE_LOGIN,
3765 NTY_CODE,
3766 FCG_CODE,
3767 PRC_CODE,
3768 RE_LEASE_YN,
3769 PRESCRIBED_ASSET_YN,
3770 CREDIT_TENANT_YN,
3771 SECURED_DEAL_YN,
3772 CLG_ID,
3773 DATE_FUNDING,
3774 DATE_FUNDING_REQUIRED,
3775 DATE_ACCEPTED,
3776 DATE_DELIVERY_EXPECTED,
3777 OEC,
3778 CAPITAL_AMOUNT,
3779 RESIDUAL_GRNTY_AMOUNT,
3780 RESIDUAL_CODE,
3781 RVI_PREMIUM,
3782 CREDIT_NATURE,
3783 CAPITALIZED_INTEREST,
3784 CAPITAL_REDUCTION_PERCENT,
3785 --Bug# 2697681 11.5.9
3786 DATE_PAY_INVESTOR_START,
3787 PAY_INVESTOR_FREQUENCY,
3788 PAY_INVESTOR_EVENT,
3789 PAY_INVESTOR_REMITTANCE_DAYS,
3790 --financed fees
3791 FEE_TYPE,
3792 -- Bug# 3143522 : 11.5.10
3793 --subsidy
3794 SUBSIDY_ID,
3795 --SUBSIDIZED_OEC,
3796 --SUBSIDIZED_CAP_AMOUNT,
3797 SUBSIDY_OVERRIDE_AMOUNT,
3798 --financed fee
3799 PRE_TAX_YIELD,
3800 AFTER_TAX_YIELD,
3801 IMPLICIT_INTEREST_RATE,
3802 IMPLICIT_NON_IDC_INTEREST_RATE,
3803 PRE_TAX_IRR,
3804 AFTER_TAX_IRR,
3805 --quote
3806 SUB_PRE_TAX_YIELD,
3807 SUB_AFTER_TAX_YIELD,
3808 SUB_IMPL_INTEREST_RATE,
3809 SUB_IMPL_NON_IDC_INT_RATE,
3810 SUB_PRE_TAX_IRR,
3811 SUB_AFTER_TAX_IRR,
3812 --Bug# 2994971
3813 ITEM_INSURANCE_CATEGORY,
3814 -- Bug# 3973640 :11.5.10+
3815 QTE_ID,
3816 FUNDING_DATE,
3817 STREAM_TYPE_SUBCLASS,
3818 --Bug# 4419339 OKLH
3819 DATE_FUNDING_EXPECTED,
3820 MANUFACTURER_NAME,
3821 MODEL_NUMBER,
3822 DOWN_PAYMENT_RECEIVER_CODE,
3823 CAPITALIZE_DOWN_PAYMENT_YN,
3824 --Bug#4373029
3825 FEE_PURPOSE_CODE,
3826 TERMINATION_VALUE,
3827 --Bug# 4631549
3828 EXPECTED_ASSET_COST,
3829 ORIG_CONTRACT_LINE_ID,
3830 --Added by jjuneja
3831 ORIGINATION_INCOME,
3832 --End of addition by jjuneja
3833 --Bug# 16344245
3834 AMOUNT_BALANCE_LEGACY,
3835 DT_EFFECTIVE_BALANCE_LEGACY
3836 )
3837 VALUES (
3838 l_kle_rec.ID,
3839 l_kle_rec.KLE_ID,
3840 l_kle_rec.STY_ID,
3841 l_kle_rec.OBJECT_VERSION_NUMBER,
3842 l_kle_rec.LAO_AMOUNT,
3843 l_kle_rec.FEE_CHARGE,
3844 l_kle_rec.TITLE_DATE,
3845 l_kle_rec.DATE_RESIDUAL_LAST_REVIEW,
3846 l_kle_rec.DATE_LAST_REAMORTISATION,
3847 l_kle_rec.TERMINATION_PURCHASE_AMOUNT,
3848 l_kle_rec.DATE_LAST_CLEANUP,
3849 l_kle_rec.REMARKETED_AMOUNT,
3850 l_kle_rec.DATE_REMARKETED,
3851 l_kle_rec.REMARKET_MARGIN,
3852 l_kle_rec.REPURCHASED_AMOUNT,
3853 l_kle_rec.DATE_REPURCHASED,
3854 l_kle_rec.GAIN_LOSS,
3855 l_kle_rec.FLOOR_AMOUNT,
3856 l_kle_rec.PREVIOUS_CONTRACT,
3857 l_kle_rec.TRACKED_RESIDUAL,
3858 l_kle_rec.DATE_TITLE_RECEIVED,
3859 l_kle_rec.ESTIMATED_OEC,
3860 l_kle_rec.RESIDUAL_PERCENTAGE,
3861 l_kle_rec.CAPITAL_REDUCTION,
3862 l_kle_rec.VENDOR_ADVANCE_PAID,
3863 l_kle_rec.TRADEIN_AMOUNT,
3864 l_kle_rec.DELIVERED_DATE,
3865 l_kle_rec.YEAR_OF_MANUFACTURE,
3866 l_kle_rec.INITIAL_DIRECT_COST,
3867 l_kle_rec.OCCUPANCY,
3868 l_kle_rec.DATE_LAST_INSPECTION,
3869 l_kle_rec.DATE_NEXT_INSPECTION_DUE,
3870 l_kle_rec.WEIGHTED_AVERAGE_LIFE,
3871 l_kle_rec.BOND_EQUIVALENT_YIELD,
3872 l_kle_rec.REFINANCE_AMOUNT,
3873 l_kle_rec.YEAR_BUILT,
3874 l_kle_rec.COVERAGE_RATIO,
3875 l_kle_rec.GROSS_SQUARE_FOOTAGE,
3876 l_kle_rec.NET_RENTABLE,
3877 l_kle_rec.DATE_LETTER_ACCEPTANCE,
3878 l_kle_rec.DATE_COMMITMENT_EXPIRATION,
3879 l_kle_rec.DATE_APPRAISAL,
3880 l_kle_rec.APPRAISAL_VALUE,
3881 l_kle_rec.RESIDUAL_VALUE,
3882 l_kle_rec.PERCENT,
3883 l_kle_rec.COVERAGE,
3884 l_kle_rec.LRV_AMOUNT,
3885 l_kle_rec.AMOUNT,
3886 l_kle_rec.LRS_PERCENT,
3887 l_kle_rec.EVERGREEN_PERCENT,
3888 l_kle_rec.PERCENT_STAKE,
3889 l_kle_rec.AMOUNT_STAKE,
3890 l_kle_rec.DATE_SOLD,
3891 l_kle_rec.STY_ID_FOR,
3892 l_kle_rec.ATTRIBUTE_CATEGORY,
3893 l_kle_rec.ATTRIBUTE1,
3894 l_kle_rec.ATTRIBUTE2,
3895 l_kle_rec.ATTRIBUTE3,
3896 l_kle_rec.ATTRIBUTE4,
3897 l_kle_rec.ATTRIBUTE5,
3898 l_kle_rec.ATTRIBUTE6,
3899 l_kle_rec.ATTRIBUTE7,
3900 l_kle_rec.ATTRIBUTE8,
3901 l_kle_rec.ATTRIBUTE9,
3902 l_kle_rec.ATTRIBUTE10,
3903 l_kle_rec.ATTRIBUTE11,
3904 l_kle_rec.ATTRIBUTE12,
3905 l_kle_rec.ATTRIBUTE13,
3906 l_kle_rec.ATTRIBUTE14,
3907 l_kle_rec.ATTRIBUTE15,
3908 l_kle_rec.CREATED_BY,
3909 l_kle_rec.CREATION_DATE,
3910 l_kle_rec.LAST_UPDATED_BY,
3911 l_kle_rec.LAST_UPDATE_DATE,
3912 l_kle_rec.LAST_UPDATE_LOGIN,
3913 l_kle_rec.NTY_CODE,
3914 l_kle_rec.FCG_CODE,
3915 l_kle_rec.PRC_CODE,
3916 l_kle_rec.RE_LEASE_YN,
3917 l_kle_rec.PRESCRIBED_ASSET_YN,
3918 l_kle_rec.CREDIT_TENANT_YN,
3919 l_kle_rec.SECURED_DEAL_YN,
3920 l_kle_rec.CLG_ID,
3921 l_kle_rec.DATE_FUNDING,
3922 l_kle_rec.DATE_FUNDING_REQUIRED,
3923 l_kle_rec.DATE_ACCEPTED,
3924 l_kle_rec.DATE_DELIVERY_EXPECTED,
3925 l_kle_rec.OEC,
3926 l_kle_rec.CAPITAL_AMOUNT,
3927 l_kle_rec.RESIDUAL_GRNTY_AMOUNT,
3928 l_kle_rec.RESIDUAL_CODE,
3929 l_kle_rec.RVI_PREMIUM,
3930 l_kle_rec.CREDIT_NATURE,
3931 l_kle_rec.CAPITALIZED_INTEREST,
3932 l_kle_rec.CAPITAL_REDUCTION_PERCENT,
3933 --Bug# 2697681 11.5.9
3934 l_kle_rec.DATE_PAY_INVESTOR_START,
3935 l_kle_rec.PAY_INVESTOR_FREQUENCY,
3936 l_kle_rec.PAY_INVESTOR_EVENT,
3937 l_kle_rec.PAY_INVESTOR_REMITTANCE_DAYS,
3938 --financed fees
3939 l_kle_rec.FEE_TYPE,
3940 --Bug# 3143522: 11.5.10
3941 --subsidy
3942 l_kle_rec.SUBSIDY_ID,
3943 --l_kle_rec.SUBSIDIZED_OEC,
3944 --l_kle_rec.SUBSIDIZED_CAP_AMOUNT,
3945 l_kle_rec.SUBSIDY_OVERRIDE_AMOUNT,
3946 --financed fee
3947 l_kle_rec.PRE_TAX_YIELD,
3948 l_kle_rec.AFTER_TAX_YIELD,
3949 l_kle_rec.IMPLICIT_INTEREST_RATE,
3950 l_kle_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
3951 l_kle_rec.PRE_TAX_IRR,
3952 l_kle_rec.AFTER_TAX_IRR,
3953 --quotes
3954 l_kle_rec.SUB_PRE_TAX_YIELD,
3955 l_kle_rec.SUB_AFTER_TAX_YIELD,
3956 l_kle_rec.SUB_IMPL_INTEREST_RATE,
3957 l_kle_rec.SUB_IMPL_NON_IDC_INT_RATE,
3958 l_kle_rec.SUB_PRE_TAX_IRR,
3959 l_kle_rec.SUB_AFTER_TAX_IRR,
3960 --Bug# 2994971
3961 l_kle_rec.ITEM_INSURANCE_CATEGORY,
3962 --Bug# 3973640 :11.5.10+
3963 l_kle_rec.QTE_ID,
3964 l_kle_rec.FUNDING_DATE,
3965 l_kle_rec.STREAM_TYPE_SUBCLASS,
3966 --Bug# 4419339 OKLH
3967 l_kle_rec.DATE_FUNDING_EXPECTED,
3968 l_kle_rec.MANUFACTURER_NAME,
3969 l_kle_rec.MODEL_NUMBER,
3970 l_kle_rec.DOWN_PAYMENT_RECEIVER_CODE,
3971 l_kle_rec.CAPITALIZE_DOWN_PAYMENT_YN,
3972 --Bug# 4373029
3973 l_kle_rec.FEE_PURPOSE_CODE,
3974 l_kle_rec.TERMINATION_VALUE,
3975 --Bug# 4631549
3976 l_kle_rec.EXPECTED_ASSET_COST,
3977 l_kle_rec.ORIG_CONTRACT_LINE_ID,
3978 --Added by jjuneja
3979 l_kle_rec.ORIGINATION_INCOME,
3980 --End of addition by jjuneja
3981 --Bug# 16344245
3982 l_kle_rec.AMOUNT_BALANCE_LEGACY,
3983 l_kle_rec.DT_EFFECTIVE_BALANCE_LEGACY
3984 );
3985 -- Set OUT values
3986 x_kle_rec := l_kle_rec;
3987 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3988
3989 EXCEPTION
3990 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3991 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3992 (
3993 l_api_name,
3994 G_PKG_NAME,
3995 'OKC_API.G_RET_STS_ERROR',
3996 x_msg_count,
3997 x_msg_data,
3998 '_PVT'
3999 );
4000 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4001 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4002 (
4003 l_api_name,
4004 G_PKG_NAME,
4005 'OKC_API.G_RET_STS_UNEXP_ERROR',
4006 x_msg_count,
4007 x_msg_data,
4008 '_PVT'
4009 );
4010 WHEN OTHERS THEN
4011 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4012 (
4013 l_api_name,
4014 G_PKG_NAME,
4015 'OTHERS',
4016 x_msg_count,
4017 x_msg_data,
4018 '_PVT'
4019 );
4020
4021 END insert_row;
4022
4023 ------------------------------------
4024 -- insert_row for: OKL_K_LINES_V --
4025 ------------------------------------
4026
4027 PROCEDURE insert_row(
4028
4029 p_api_version IN NUMBER,
4030 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
4031 x_return_status OUT NOCOPY VARCHAR2,
4032 x_msg_count OUT NOCOPY NUMBER,
4033 x_msg_data OUT NOCOPY VARCHAR2,
4034 p_klev_rec IN klev_rec_type,
4035 x_klev_rec OUT NOCOPY klev_rec_type) IS
4036
4037 l_api_version CONSTANT NUMBER := 1;
4038 l_api_name CONSTANT VARCHAR2(30) := 'rec_insert_row';
4039 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4040 l_klev_rec klev_rec_type;
4041 l_def_klev_rec klev_rec_type;
4042 l_kle_rec kle_rec_type;
4043 lx_kle_rec kle_rec_type;
4044 -------------------------------
4045 -- FUNCTION fill_who_columns --
4046 -------------------------------
4047 FUNCTION fill_who_columns (
4048 p_klev_rec IN klev_rec_type
4049 ) RETURN klev_rec_type IS
4050 l_klev_rec klev_rec_type := p_klev_rec;
4051 BEGIN
4052 l_klev_rec.CREATION_DATE := SYSDATE;
4053 l_klev_rec.CREATED_BY := FND_GLOBAL.USER_ID;
4054 l_klev_rec.LAST_UPDATE_DATE := SYSDATE;
4055 l_klev_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
4056 l_klev_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
4057 RETURN(l_klev_rec);
4058 END fill_who_columns;
4059 ----------------------------------------
4060 -- Set_Attributes for: OKL_K_LINES_V --
4061 ----------------------------------------
4062 FUNCTION Set_Attributes (
4063 p_klev_rec IN klev_rec_type,
4064 x_klev_rec OUT NOCOPY klev_rec_type
4065 ) RETURN VARCHAR2 IS
4066 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4067 BEGIN
4068 x_klev_rec := p_klev_rec;
4069 x_klev_rec.OBJECT_VERSION_NUMBER := 1;
4070 RETURN(l_return_status);
4071 END Set_Attributes;
4072 BEGIN
4073 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
4074 G_PKG_NAME,
4075 p_init_msg_list,
4076 l_api_version,
4077 p_api_version,
4078 '_PVT',
4079 x_return_status);
4080
4081 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4082 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4083 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4084 RAISE OKC_API.G_EXCEPTION_ERROR;
4085 END IF;
4086
4087 l_klev_rec := null_out_defaults(p_klev_rec);
4088
4089 -- Set primary key value
4090 -- modified by Miroslav Samoilenko
4091 if ( l_klev_rec.ID is null) then
4092 l_klev_rec.ID := get_seq_id;
4093 end if;
4094
4095 --- Setting item attributes
4096 l_return_status := Set_Attributes(
4097 l_klev_rec, -- IN
4098 l_def_klev_rec); -- OUT
4099 --- If any errors happen abort API
4100
4101 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4102 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4103 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4104 RAISE OKC_API.G_EXCEPTION_ERROR;
4105 END IF;
4106
4107 l_def_klev_rec := fill_who_columns(l_def_klev_rec);
4108 --- Validate all non-missing attributes (Item Level Validation)
4109 l_return_status := Validate_Attributes(l_def_klev_rec);
4110 --- If any errors happen abort API
4111
4112 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4113 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4114 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4115 RAISE OKC_API.G_EXCEPTION_ERROR;
4116 END IF;
4117
4118 l_return_status := Validate_Record(l_def_klev_rec);
4119
4120 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4121 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4122 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4123 RAISE OKC_API.G_EXCEPTION_ERROR;
4124 END IF;
4125
4126 --------------------------------------
4127 -- Move VIEW record to "Child" records
4128 --------------------------------------
4129 migrate(l_def_klev_rec, l_kle_rec);
4130 --------------------------------------------
4131 -- Call the INSERT_ROW for each child record
4132 --------------------------------------------
4133 insert_row(
4134 l_api_version,
4135 p_init_msg_list,
4136 x_return_status,
4137 x_msg_count,
4138 x_msg_data,
4139 l_kle_rec,
4140 lx_kle_rec
4141 );
4142
4143 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4144 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4145 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
4146 RAISE OKC_API.G_EXCEPTION_ERROR;
4147 END IF;
4148
4149 migrate(lx_kle_rec, l_def_klev_rec);
4150 -- Set OUT values
4151 x_klev_rec := l_def_klev_rec;
4152 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
4153
4154 EXCEPTION
4155 WHEN OKC_API.G_EXCEPTION_ERROR THEN
4156 x_return_status := OKC_API.HANDLE_EXCEPTIONS
4157 (
4158 l_api_name,
4159 G_PKG_NAME,
4160 'OKC_API.G_RET_STS_ERROR',
4161 x_msg_count,
4162 x_msg_data,
4163 '_PVT'
4164 );
4165 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4166 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4167 (
4168 l_api_name,
4169 G_PKG_NAME,
4170 'OKC_API.G_RET_STS_UNEXP_ERROR',
4171 x_msg_count,
4172 x_msg_data,
4173 '_PVT'
4174 );
4175 WHEN OTHERS THEN
4176 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4177 (
4178 l_api_name,
4179 G_PKG_NAME,
4180 'OTHERS',
4181 x_msg_count,
4182 x_msg_data,
4183 '_PVT'
4184 );
4185
4186 END insert_row;
4187
4188 ----------------------------------------
4189 -- PL/SQL TBL insert_row for: OKL_K_LINES_V --
4190 ----------------------------------------
4191
4192 PROCEDURE insert_row(
4193
4194 p_api_version IN NUMBER,
4195 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
4196 x_return_status OUT NOCOPY VARCHAR2,
4197 x_msg_count OUT NOCOPY NUMBER,
4198 x_msg_data OUT NOCOPY VARCHAR2,
4199 p_klev_tbl IN klev_tbl_type,
4200 x_klev_tbl OUT NOCOPY klev_tbl_type) IS
4201
4202 l_api_version CONSTANT NUMBER := 1;
4203 l_api_name CONSTANT VARCHAR2(30) := 'tbl_insert_row';
4204 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4205 i NUMBER := 0;
4206 BEGIN
4207 OKC_API.init_msg_list(p_init_msg_list);
4208 -- Make sure PL/SQL table has records in it before passing
4209 IF (p_klev_tbl.COUNT > 0) THEN
4210 i := p_klev_tbl.FIRST;
4211 LOOP
4212 insert_row (
4213 p_api_version => p_api_version,
4214 p_init_msg_list => OKC_API.G_FALSE,
4215 x_return_status => x_return_status,
4216 x_msg_count => x_msg_count,
4217 x_msg_data => x_msg_data,
4218 p_klev_rec => p_klev_tbl(i),
4219 x_klev_rec => x_klev_tbl(i));
4220 EXIT WHEN (i = p_klev_tbl.LAST);
4221 i := p_klev_tbl.NEXT(i);
4222 END LOOP;
4223 END IF;
4224
4225 EXCEPTION
4226 WHEN OKC_API.G_EXCEPTION_ERROR THEN
4227 x_return_status := OKC_API.HANDLE_EXCEPTIONS
4228 (
4229 l_api_name,
4230 G_PKG_NAME,
4231 'OKC_API.G_RET_STS_ERROR',
4232 x_msg_count,
4233 x_msg_data,
4234 '_PVT'
4235 );
4236 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4237 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4238 (
4239 l_api_name,
4240 G_PKG_NAME,
4241 'OKC_API.G_RET_STS_UNEXP_ERROR',
4242 x_msg_count,
4243 x_msg_data,
4244 '_PVT'
4245 );
4246 WHEN OTHERS THEN
4247 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4248 (
4249 l_api_name,
4250 G_PKG_NAME,
4251 'OTHERS',
4252 x_msg_count,
4253 x_msg_data,
4254 '_PVT'
4255 );
4256
4257 END insert_row;
4258
4259
4260 ---------------------------------------------------------------------------
4261 -- PROCEDURE lock_row
4262 ---------------------------------------------------------------------------
4263
4264 --------------------------------
4265 -- lock_row for: OKL_K_LINES --
4266 --------------------------------
4267
4268 PROCEDURE lock_row(
4269
4270 p_api_version IN NUMBER,
4271 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
4272 x_return_status OUT NOCOPY VARCHAR2,
4273 x_msg_count OUT NOCOPY NUMBER,
4274 x_msg_data OUT NOCOPY VARCHAR2,
4275 p_kle_rec IN kle_rec_type) IS
4276
4277 E_Resource_Busy EXCEPTION;
4278 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
4279 CURSOR lock_csr (p_kle_rec IN kle_rec_type) IS
4280 SELECT OBJECT_VERSION_NUMBER
4281 FROM OKL_K_LINES
4282 WHERE ID = p_kle_rec.id
4283 AND OBJECT_VERSION_NUMBER = p_kle_rec.object_version_number
4284 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
4285
4286 CURSOR lchk_csr (p_kle_rec IN kle_rec_type) IS
4287 SELECT OBJECT_VERSION_NUMBER
4288 FROM OKL_K_LINES
4289 WHERE ID = p_kle_rec.id;
4290 l_api_version CONSTANT NUMBER := 1;
4291 l_api_name CONSTANT VARCHAR2(30) := 'rec_lock_row';
4292 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4293 l_object_version_number OKL_K_LINES.OBJECT_VERSION_NUMBER%TYPE;
4294 lc_object_version_number OKL_K_LINES.OBJECT_VERSION_NUMBER%TYPE;
4295 l_row_notfound BOOLEAN := FALSE;
4296 lc_row_notfound BOOLEAN := FALSE;
4297 BEGIN
4298 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
4299 p_init_msg_list,
4300 '_PVT',
4301 x_return_status);
4302
4303 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4304 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4305 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4306 RAISE OKC_API.G_EXCEPTION_ERROR;
4307 END IF;
4308
4309 BEGIN
4310 OPEN lock_csr(p_kle_rec);
4311 FETCH lock_csr INTO l_object_version_number;
4312 l_row_notfound := lock_csr%NOTFOUND;
4313 CLOSE lock_csr;
4314 EXCEPTION
4315 WHEN E_Resource_Busy THEN
4316 IF (lock_csr%ISOPEN) THEN
4317 CLOSE lock_csr;
4318 END IF;
4319 OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
4320 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
4321 END;
4322
4323 IF ( l_row_notfound ) THEN
4324 OPEN lchk_csr(p_kle_rec);
4325 FETCH lchk_csr INTO lc_object_version_number;
4326 lc_row_notfound := lchk_csr%NOTFOUND;
4327 CLOSE lchk_csr;
4328 END IF;
4329 IF (lc_row_notfound) THEN
4330 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
4331 RAISE OKC_API.G_EXCEPTION_ERROR;
4332 ELSIF lc_object_version_number > p_kle_rec.object_version_number THEN
4333 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
4334 RAISE OKC_API.G_EXCEPTION_ERROR;
4335 ELSIF lc_object_version_number <> p_kle_rec.object_version_number THEN
4336 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
4337 RAISE OKC_API.G_EXCEPTION_ERROR;
4338 ELSIF lc_object_version_number = -1 THEN
4339 OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
4340 RAISE OKC_API.G_EXCEPTION_ERROR;
4341 END IF;
4342 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
4343
4344 EXCEPTION
4345 WHEN OKC_API.G_EXCEPTION_ERROR THEN
4346 x_return_status := OKC_API.HANDLE_EXCEPTIONS
4347 (
4348 l_api_name,
4349 G_PKG_NAME,
4350 'OKC_API.G_RET_STS_ERROR',
4351 x_msg_count,
4352 x_msg_data,
4353 '_PVT'
4354 );
4355 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4356 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4357 (
4358 l_api_name,
4359 G_PKG_NAME,
4360 'OKC_API.G_RET_STS_UNEXP_ERROR',
4361 x_msg_count,
4362 x_msg_data,
4363 '_PVT'
4364 );
4365 WHEN OTHERS THEN
4366 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4367 (
4368 l_api_name,
4369 G_PKG_NAME,
4370 'OTHERS',
4371 x_msg_count,
4372 x_msg_data,
4373 '_PVT'
4374 );
4375
4376 END lock_row;
4377
4378 ----------------------------------
4379 -- lock_row for: OKL_K_LINES_V --
4380 ----------------------------------
4381
4382 PROCEDURE lock_row(
4383
4384 p_api_version IN NUMBER,
4385 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
4386 x_return_status OUT NOCOPY VARCHAR2,
4387 x_msg_count OUT NOCOPY NUMBER,
4388 x_msg_data OUT NOCOPY VARCHAR2,
4389 p_klev_rec IN klev_rec_type) IS
4390
4391 l_api_version CONSTANT NUMBER := 1;
4392 l_api_name CONSTANT VARCHAR2(30) := 'rec_lock_row';
4393 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4394 l_kle_rec kle_rec_type;
4395 BEGIN
4396 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
4397 G_PKG_NAME,
4398 p_init_msg_list,
4399 l_api_version,
4400 p_api_version,
4401 '_PVT',
4402 x_return_status);
4403
4404 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4405 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4406 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4407 RAISE OKC_API.G_EXCEPTION_ERROR;
4408 END IF;
4409
4410 --------------------------------------
4411 -- Move VIEW record to "Child" records
4412 --------------------------------------
4413 migrate(p_klev_rec, l_kle_rec);
4414 --------------------------------------------
4415 -- Call the LOCK_ROW for each child record
4416 --------------------------------------------
4417 lock_row(
4418 l_api_version,
4419 p_init_msg_list,
4420 x_return_status,
4421 x_msg_count,
4422 x_msg_data,
4423 l_kle_rec
4424 );
4425
4426 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4427 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4428 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
4429 RAISE OKC_API.G_EXCEPTION_ERROR;
4430 END IF;
4431
4432 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
4433
4434 EXCEPTION
4435 WHEN OKC_API.G_EXCEPTION_ERROR THEN
4436 x_return_status := OKC_API.HANDLE_EXCEPTIONS
4437 (
4438 l_api_name,
4439 G_PKG_NAME,
4440 'OKC_API.G_RET_STS_ERROR',
4441 x_msg_count,
4442 x_msg_data,
4443 '_PVT'
4444 );
4445 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4446 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4447 (
4448 l_api_name,
4449 G_PKG_NAME,
4450 'OKC_API.G_RET_STS_UNEXP_ERROR',
4451 x_msg_count,
4452 x_msg_data,
4453 '_PVT'
4454 );
4455 WHEN OTHERS THEN
4456 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4457 (
4458 l_api_name,
4459 G_PKG_NAME,
4460 'OTHERS',
4461 x_msg_count,
4462 x_msg_data,
4463 '_PVT'
4464 );
4465
4466 END lock_row;
4467 --------------------------------------
4468 -- PL/SQL TBL lock_row for: OKL_K_LINES_V --
4469 --------------------------------------
4470
4471 PROCEDURE lock_row(
4472
4473 p_api_version IN NUMBER,
4474 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
4475 x_return_status OUT NOCOPY VARCHAR2,
4476 x_msg_count OUT NOCOPY NUMBER,
4477 x_msg_data OUT NOCOPY VARCHAR2,
4478 p_klev_tbl IN klev_tbl_type) IS
4479
4480 l_api_version CONSTANT NUMBER := 1;
4481 l_api_name CONSTANT VARCHAR2(30) := 'tbl_lock_row';
4482 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4483 i NUMBER := 0;
4484 BEGIN
4485 OKC_API.init_msg_list(p_init_msg_list);
4486 -- Make sure PL/SQL table has records in it before passing
4487 IF (p_klev_tbl.COUNT > 0) THEN
4488 i := p_klev_tbl.FIRST;
4489 LOOP
4490 lock_row (
4491 p_api_version => p_api_version,
4492 p_init_msg_list => OKC_API.G_FALSE,
4493 x_return_status => x_return_status,
4494 x_msg_count => x_msg_count,
4495 x_msg_data => x_msg_data,
4496 p_klev_rec => p_klev_tbl(i));
4497 EXIT WHEN (i = p_klev_tbl.LAST);
4498 i := p_klev_tbl.NEXT(i);
4499 END LOOP;
4500 END IF;
4501
4502 EXCEPTION
4503 WHEN OKC_API.G_EXCEPTION_ERROR THEN
4504 x_return_status := OKC_API.HANDLE_EXCEPTIONS
4505 (
4506 l_api_name,
4507 G_PKG_NAME,
4508 'OKC_API.G_RET_STS_ERROR',
4509 x_msg_count,
4510 x_msg_data,
4511 '_PVT'
4512 );
4513 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4514 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4515 (
4516 l_api_name,
4517 G_PKG_NAME,
4518 'OKC_API.G_RET_STS_UNEXP_ERROR',
4519 x_msg_count,
4520 x_msg_data,
4521 '_PVT'
4522 );
4523 WHEN OTHERS THEN
4524 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4525 (
4526 l_api_name,
4527 G_PKG_NAME,
4528 'OTHERS',
4529 x_msg_count,
4530 x_msg_data,
4531 '_PVT'
4532 );
4533
4534 END lock_row;
4535
4536
4537 ---------------------------------------------------------------------------
4538 -- PROCEDURE update_row
4539 ---------------------------------------------------------------------------
4540
4541 ----------------------------------
4542 -- update_row for: OKL_K_LINES --
4543 ----------------------------------
4544
4545 PROCEDURE update_row(
4546
4547 p_api_version IN NUMBER,
4548 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
4549 x_return_status OUT NOCOPY VARCHAR2,
4550 x_msg_count OUT NOCOPY NUMBER,
4551 x_msg_data OUT NOCOPY VARCHAR2,
4552 p_kle_rec IN kle_rec_type,
4553 x_kle_rec OUT NOCOPY kle_rec_type) IS
4554
4555 l_api_version CONSTANT NUMBER := 1;
4556 l_api_name CONSTANT VARCHAR2(30) := 'rec_update_row';
4557 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4558 l_kle_rec kle_rec_type := p_kle_rec;
4559 l_def_kle_rec kle_rec_type;
4560 l_row_notfound BOOLEAN := TRUE;
4561 l_okl_k_lines_h_rec okl_k_lines_h_rec_type;
4562 lx_okl_k_lines_h_rec okl_k_lines_h_rec_type;
4563 ----------------------------------
4564 -- FUNCTION populate_new_record --
4565 ----------------------------------
4566 FUNCTION populate_new_record (
4567 p_kle_rec IN kle_rec_type,
4568 x_kle_rec OUT NOCOPY kle_rec_type
4569 ) RETURN VARCHAR2 IS
4570 l_kle_rec kle_rec_type;
4571 l_row_notfound BOOLEAN := TRUE;
4572 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4573 BEGIN
4574 x_kle_rec := p_kle_rec;
4575 -- Get current database values
4576 l_kle_rec := get_rec(p_kle_rec, l_row_notfound);
4577 IF (l_row_notfound) THEN
4578 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
4579 END IF;
4580 -- Move the "old" record to the history record:
4581 -- (1) to get the "old" version
4582 -- (2) to avoid 2 hits to the database
4583 migrate(l_kle_rec, l_okl_k_lines_h_rec);
4584
4585 IF (x_kle_rec.ID = OKC_API.G_MISS_NUM) THEN
4586 x_kle_rec.ID := l_kle_rec.ID;
4587 END IF;
4588
4589 IF (x_kle_rec.KLE_ID = OKC_API.G_MISS_NUM) THEN
4590 x_kle_rec.KLE_ID := l_kle_rec.KLE_ID;
4591 END IF;
4592
4593 IF (x_kle_rec.STY_ID = OKC_API.G_MISS_NUM) THEN
4594 x_kle_rec.STY_ID := l_kle_rec.STY_ID;
4595 END IF;
4596
4597 IF (x_kle_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) THEN
4598 x_kle_rec.OBJECT_VERSION_NUMBER := l_kle_rec.OBJECT_VERSION_NUMBER;
4599 END IF;
4600
4601 IF (x_kle_rec.LAO_AMOUNT = OKC_API.G_MISS_NUM) THEN
4602 x_kle_rec.LAO_AMOUNT := l_kle_rec.LAO_AMOUNT;
4603 END IF;
4604
4605 IF (x_kle_rec.FEE_CHARGE = OKC_API.G_MISS_NUM) THEN
4606 x_kle_rec.FEE_CHARGE := l_kle_rec.FEE_CHARGE;
4607 END IF;
4608
4609 IF (x_kle_rec.TITLE_DATE = OKC_API.G_MISS_DATE) THEN
4610 x_kle_rec.TITLE_DATE := l_kle_rec.TITLE_DATE;
4611 END IF;
4612
4613 IF (x_kle_rec.DATE_RESIDUAL_LAST_REVIEW = OKC_API.G_MISS_DATE) THEN
4614 x_kle_rec.DATE_RESIDUAL_LAST_REVIEW := l_kle_rec.DATE_RESIDUAL_LAST_REVIEW;
4615 END IF;
4616
4617 IF (x_kle_rec.DATE_LAST_REAMORTISATION = OKC_API.G_MISS_DATE) THEN
4618 x_kle_rec.DATE_LAST_REAMORTISATION := l_kle_rec.DATE_LAST_REAMORTISATION;
4619 END IF;
4620
4621 IF (x_kle_rec.TERMINATION_PURCHASE_AMOUNT = OKC_API.G_MISS_NUM) THEN
4622 x_kle_rec.TERMINATION_PURCHASE_AMOUNT := l_kle_rec.TERMINATION_PURCHASE_AMOUNT;
4623 END IF;
4624
4625 IF (x_kle_rec.DATE_LAST_CLEANUP = OKC_API.G_MISS_DATE) THEN
4626 x_kle_rec.DATE_LAST_CLEANUP := l_kle_rec.DATE_LAST_CLEANUP;
4627 END IF;
4628
4629 IF (x_kle_rec.REMARKETED_AMOUNT = OKC_API.G_MISS_NUM) THEN
4630 x_kle_rec.REMARKETED_AMOUNT := l_kle_rec.REMARKETED_AMOUNT;
4631 END IF;
4632
4633 IF (x_kle_rec.DATE_REMARKETED = OKC_API.G_MISS_DATE) THEN
4634 x_kle_rec.DATE_REMARKETED := l_kle_rec.DATE_REMARKETED;
4635 END IF;
4636
4637 IF (x_kle_rec.REMARKET_MARGIN = OKC_API.G_MISS_NUM) THEN
4638 x_kle_rec.REMARKET_MARGIN := l_kle_rec.REMARKET_MARGIN;
4639 END IF;
4640
4641 IF (x_kle_rec.REPURCHASED_AMOUNT = OKC_API.G_MISS_NUM) THEN
4642 x_kle_rec.REPURCHASED_AMOUNT := l_kle_rec.REPURCHASED_AMOUNT;
4643 END IF;
4644
4645 IF (x_kle_rec.DATE_REPURCHASED = OKC_API.G_MISS_DATE) THEN
4646 x_kle_rec.DATE_REPURCHASED := l_kle_rec.DATE_REPURCHASED;
4647 END IF;
4648
4649 IF (x_kle_rec.GAIN_LOSS = OKC_API.G_MISS_NUM) THEN
4650 x_kle_rec.GAIN_LOSS := l_kle_rec.GAIN_LOSS;
4651 END IF;
4652
4653 IF (x_kle_rec.FLOOR_AMOUNT = OKC_API.G_MISS_NUM) THEN
4654 x_kle_rec.FLOOR_AMOUNT := l_kle_rec.FLOOR_AMOUNT;
4655 END IF;
4656
4657 IF (x_kle_rec.PREVIOUS_CONTRACT = OKC_API.G_MISS_CHAR) THEN
4658 x_kle_rec.PREVIOUS_CONTRACT := l_kle_rec.PREVIOUS_CONTRACT;
4659 END IF;
4660
4661 IF (x_kle_rec.TRACKED_RESIDUAL = OKC_API.G_MISS_NUM) THEN
4662 x_kle_rec.TRACKED_RESIDUAL := l_kle_rec.TRACKED_RESIDUAL;
4663 END IF;
4664
4665 IF (x_kle_rec.DATE_TITLE_RECEIVED = OKC_API.G_MISS_DATE) THEN
4666 x_kle_rec.DATE_TITLE_RECEIVED := l_kle_rec.DATE_TITLE_RECEIVED;
4667 END IF;
4668
4669 IF (x_kle_rec.ESTIMATED_OEC = OKC_API.G_MISS_NUM) THEN
4670 x_kle_rec.ESTIMATED_OEC := l_kle_rec.ESTIMATED_OEC;
4671 END IF;
4672
4673 IF (x_kle_rec.RESIDUAL_PERCENTAGE = OKC_API.G_MISS_NUM) THEN
4674 x_kle_rec.RESIDUAL_PERCENTAGE := l_kle_rec.RESIDUAL_PERCENTAGE;
4675 END IF;
4676
4677 IF (x_kle_rec.CAPITAL_REDUCTION = OKC_API.G_MISS_NUM) THEN
4678 x_kle_rec.CAPITAL_REDUCTION := l_kle_rec.CAPITAL_REDUCTION;
4679 END IF;
4680
4681 IF (x_kle_rec.VENDOR_ADVANCE_PAID = OKC_API.G_MISS_NUM) THEN
4682 x_kle_rec.VENDOR_ADVANCE_PAID := l_kle_rec.VENDOR_ADVANCE_PAID;
4683 END IF;
4684
4685 IF (x_kle_rec.TRADEIN_AMOUNT = OKC_API.G_MISS_NUM) THEN
4686 x_kle_rec.TRADEIN_AMOUNT := l_kle_rec.TRADEIN_AMOUNT;
4687 END IF;
4688
4689 IF (x_kle_rec.DELIVERED_DATE = OKC_API.G_MISS_DATE) THEN
4690 x_kle_rec.DELIVERED_DATE := l_kle_rec.DELIVERED_DATE;
4691 END IF;
4692
4693 IF (x_kle_rec.YEAR_OF_MANUFACTURE = OKC_API.G_MISS_CHAR) THEN
4694 x_kle_rec.YEAR_OF_MANUFACTURE := l_kle_rec.YEAR_OF_MANUFACTURE;
4695 END IF;
4696
4697 IF (x_kle_rec.INITIAL_DIRECT_COST = OKC_API.G_MISS_NUM) THEN
4698 x_kle_rec.INITIAL_DIRECT_COST := l_kle_rec.INITIAL_DIRECT_COST;
4699 END IF;
4700
4701 IF (x_kle_rec.OCCUPANCY = OKC_API.G_MISS_NUM) THEN
4702 x_kle_rec.OCCUPANCY := l_kle_rec.OCCUPANCY;
4703 END IF;
4704
4705 IF (x_kle_rec.DATE_LAST_INSPECTION = OKC_API.G_MISS_DATE) THEN
4706 x_kle_rec.DATE_LAST_INSPECTION := l_kle_rec.DATE_LAST_INSPECTION;
4707 END IF;
4708
4709 IF (x_kle_rec.DATE_NEXT_INSPECTION_DUE = OKC_API.G_MISS_DATE) THEN
4710 x_kle_rec.DATE_NEXT_INSPECTION_DUE := l_kle_rec.DATE_NEXT_INSPECTION_DUE;
4711 END IF;
4712
4713 IF (x_kle_rec.WEIGHTED_AVERAGE_LIFE = OKC_API.G_MISS_NUM) THEN
4714 x_kle_rec.WEIGHTED_AVERAGE_LIFE := l_kle_rec.WEIGHTED_AVERAGE_LIFE;
4715 END IF;
4716
4717 IF (x_kle_rec.BOND_EQUIVALENT_YIELD = OKC_API.G_MISS_NUM) THEN
4718 x_kle_rec.BOND_EQUIVALENT_YIELD := l_kle_rec.BOND_EQUIVALENT_YIELD;
4719 END IF;
4720
4721 IF (x_kle_rec.REFINANCE_AMOUNT = OKC_API.G_MISS_NUM) THEN
4722 x_kle_rec.REFINANCE_AMOUNT := l_kle_rec.REFINANCE_AMOUNT;
4723 END IF;
4724
4725 IF (x_kle_rec.YEAR_BUILT = OKC_API.G_MISS_NUM) THEN
4726 x_kle_rec.YEAR_BUILT := l_kle_rec.YEAR_BUILT;
4727 END IF;
4728
4729 IF (x_kle_rec.COVERAGE_RATIO = OKC_API.G_MISS_NUM) THEN
4730 x_kle_rec.COVERAGE_RATIO := l_kle_rec.COVERAGE_RATIO;
4731 END IF;
4732
4733 IF (x_kle_rec.GROSS_SQUARE_FOOTAGE = OKC_API.G_MISS_NUM) THEN
4734 x_kle_rec.GROSS_SQUARE_FOOTAGE := l_kle_rec.GROSS_SQUARE_FOOTAGE;
4735 END IF;
4736
4737 IF (x_kle_rec.NET_RENTABLE = OKC_API.G_MISS_NUM) THEN
4738 x_kle_rec.NET_RENTABLE := l_kle_rec.NET_RENTABLE;
4739 END IF;
4740
4741 IF (x_kle_rec.DATE_LETTER_ACCEPTANCE = OKC_API.G_MISS_DATE) THEN
4742 x_kle_rec.DATE_LETTER_ACCEPTANCE := l_kle_rec.DATE_LETTER_ACCEPTANCE;
4743 END IF;
4744
4745 IF (x_kle_rec.DATE_COMMITMENT_EXPIRATION = OKC_API.G_MISS_DATE) THEN
4746 x_kle_rec.DATE_COMMITMENT_EXPIRATION := l_kle_rec.DATE_COMMITMENT_EXPIRATION;
4747 END IF;
4748
4749 IF (x_kle_rec.DATE_APPRAISAL = OKC_API.G_MISS_DATE) THEN
4750 x_kle_rec.DATE_APPRAISAL := l_kle_rec.DATE_APPRAISAL;
4751 END IF;
4752
4753 IF (x_kle_rec.APPRAISAL_VALUE = OKC_API.G_MISS_NUM) THEN
4754 x_kle_rec.APPRAISAL_VALUE := l_kle_rec.APPRAISAL_VALUE;
4755 END IF;
4756
4757 IF (x_kle_rec.RESIDUAL_VALUE = OKC_API.G_MISS_NUM) THEN
4758 x_kle_rec.RESIDUAL_VALUE := l_kle_rec.RESIDUAL_VALUE;
4759 END IF;
4760
4761 IF (x_kle_rec.PERCENT = OKC_API.G_MISS_NUM) THEN
4762 x_kle_rec.PERCENT := l_kle_rec.PERCENT;
4763 END IF;
4764
4765 IF (x_kle_rec.COVERAGE = OKC_API.G_MISS_NUM) THEN
4766 x_kle_rec.COVERAGE := l_kle_rec.COVERAGE;
4767 END IF;
4768
4769 IF (x_kle_rec.LRV_AMOUNT = OKC_API.G_MISS_NUM) THEN
4770 x_kle_rec.LRV_AMOUNT := l_kle_rec.LRV_AMOUNT;
4771 END IF;
4772
4773 IF (x_kle_rec.AMOUNT = OKC_API.G_MISS_NUM) THEN
4774 x_kle_rec.AMOUNT := l_kle_rec.AMOUNT;
4775 END IF;
4776
4777 IF (x_kle_rec.LRS_PERCENT = OKC_API.G_MISS_NUM) THEN
4778 x_kle_rec.LRS_PERCENT := l_kle_rec.LRS_PERCENT;
4779 END IF;
4780
4781 IF (x_kle_rec.EVERGREEN_PERCENT = OKC_API.G_MISS_NUM) THEN
4782 x_kle_rec.EVERGREEN_PERCENT := l_kle_rec.EVERGREEN_PERCENT;
4783 END IF;
4784
4785 IF (x_kle_rec.PERCENT_STAKE = OKC_API.G_MISS_NUM) THEN
4786 x_kle_rec.PERCENT_STAKE := l_kle_rec.PERCENT_STAKE;
4787 END IF;
4788
4789 IF (x_kle_rec.AMOUNT_STAKE = OKC_API.G_MISS_NUM) THEN
4790 x_kle_rec.AMOUNT_STAKE := l_kle_rec.AMOUNT_STAKE;
4791 END IF;
4792
4793 IF (x_kle_rec.DATE_SOLD = OKC_API.G_MISS_DATE) THEN
4794 x_kle_rec.DATE_SOLD := l_kle_rec.DATE_SOLD;
4795 END IF;
4796
4797 IF (x_kle_rec.STY_ID_FOR = OKC_API.G_MISS_NUM) THEN
4798 x_kle_rec.STY_ID_FOR := l_kle_rec.STY_ID_FOR;
4799 END IF;
4800
4801 IF (x_kle_rec.ATTRIBUTE_CATEGORY = OKC_API.G_MISS_CHAR) THEN
4802 x_kle_rec.ATTRIBUTE_CATEGORY := l_kle_rec.ATTRIBUTE_CATEGORY;
4803 END IF;
4804
4805 IF (x_kle_rec.ATTRIBUTE1 = OKC_API.G_MISS_CHAR) THEN
4806 x_kle_rec.ATTRIBUTE1 := l_kle_rec.ATTRIBUTE1;
4807 END IF;
4808
4809 IF (x_kle_rec.ATTRIBUTE2 = OKC_API.G_MISS_CHAR) THEN
4810 x_kle_rec.ATTRIBUTE2 := l_kle_rec.ATTRIBUTE2;
4811 END IF;
4812
4813 IF (x_kle_rec.ATTRIBUTE3 = OKC_API.G_MISS_CHAR) THEN
4814 x_kle_rec.ATTRIBUTE3 := l_kle_rec.ATTRIBUTE3;
4815 END IF;
4816
4817 IF (x_kle_rec.ATTRIBUTE4 = OKC_API.G_MISS_CHAR) THEN
4818 x_kle_rec.ATTRIBUTE4 := l_kle_rec.ATTRIBUTE4;
4819 END IF;
4820
4821 IF (x_kle_rec.ATTRIBUTE5 = OKC_API.G_MISS_CHAR) THEN
4822 x_kle_rec.ATTRIBUTE5 := l_kle_rec.ATTRIBUTE5;
4823 END IF;
4824
4825 IF (x_kle_rec.ATTRIBUTE6 = OKC_API.G_MISS_CHAR) THEN
4826 x_kle_rec.ATTRIBUTE6 := l_kle_rec.ATTRIBUTE6;
4827 END IF;
4828
4829 IF (x_kle_rec.ATTRIBUTE7 = OKC_API.G_MISS_CHAR) THEN
4830 x_kle_rec.ATTRIBUTE7 := l_kle_rec.ATTRIBUTE7;
4831 END IF;
4832
4833 IF (x_kle_rec.ATTRIBUTE8 = OKC_API.G_MISS_CHAR) THEN
4834 x_kle_rec.ATTRIBUTE8 := l_kle_rec.ATTRIBUTE8;
4835 END IF;
4836
4837 IF (x_kle_rec.ATTRIBUTE9 = OKC_API.G_MISS_CHAR) THEN
4838 x_kle_rec.ATTRIBUTE9 := l_kle_rec.ATTRIBUTE9;
4839 END IF;
4840
4841 IF (x_kle_rec.ATTRIBUTE10 = OKC_API.G_MISS_CHAR) THEN
4842 x_kle_rec.ATTRIBUTE10 := l_kle_rec.ATTRIBUTE10;
4843 END IF;
4844
4845 IF (x_kle_rec.ATTRIBUTE11 = OKC_API.G_MISS_CHAR) THEN
4846 x_kle_rec.ATTRIBUTE11 := l_kle_rec.ATTRIBUTE11;
4847 END IF;
4848
4849 IF (x_kle_rec.ATTRIBUTE12 = OKC_API.G_MISS_CHAR) THEN
4850 x_kle_rec.ATTRIBUTE12 := l_kle_rec.ATTRIBUTE12;
4851 END IF;
4852
4853 IF (x_kle_rec.ATTRIBUTE13 = OKC_API.G_MISS_CHAR) THEN
4854 x_kle_rec.ATTRIBUTE13 := l_kle_rec.ATTRIBUTE13;
4855 END IF;
4856
4857 IF (x_kle_rec.ATTRIBUTE14 = OKC_API.G_MISS_CHAR) THEN
4858 x_kle_rec.ATTRIBUTE14 := l_kle_rec.ATTRIBUTE14;
4859 END IF;
4860
4861 IF (x_kle_rec.ATTRIBUTE15 = OKC_API.G_MISS_CHAR) THEN
4862 x_kle_rec.ATTRIBUTE15 := l_kle_rec.ATTRIBUTE15;
4863 END IF;
4864
4865 IF (x_kle_rec.CREATED_BY = OKC_API.G_MISS_NUM) THEN
4866 x_kle_rec.CREATED_BY := l_kle_rec.CREATED_BY;
4867 END IF;
4868
4869 IF (x_kle_rec.CREATION_DATE = OKC_API.G_MISS_DATE) THEN
4870 x_kle_rec.CREATION_DATE := l_kle_rec.CREATION_DATE;
4871 END IF;
4872
4873 IF (x_kle_rec.LAST_UPDATED_BY = OKC_API.G_MISS_NUM) THEN
4874 x_kle_rec.LAST_UPDATED_BY := l_kle_rec.LAST_UPDATED_BY;
4875 END IF;
4876
4877 IF (x_kle_rec.LAST_UPDATE_DATE = OKC_API.G_MISS_DATE) THEN
4878 x_kle_rec.LAST_UPDATE_DATE := l_kle_rec.LAST_UPDATE_DATE;
4879 END IF;
4880
4881 IF (x_kle_rec.LAST_UPDATE_LOGIN = OKC_API.G_MISS_NUM) THEN
4882 x_kle_rec.LAST_UPDATE_LOGIN := l_kle_rec.LAST_UPDATE_LOGIN;
4883 END IF;
4884
4885 IF (x_kle_rec.NTY_CODE = OKC_API.G_MISS_CHAR) THEN
4886 x_kle_rec.NTY_CODE := l_kle_rec.NTY_CODE;
4887 END IF;
4888
4889 IF (x_kle_rec.FCG_CODE = OKC_API.G_MISS_CHAR) THEN
4890 x_kle_rec.FCG_CODE := l_kle_rec.FCG_CODE;
4891 END IF;
4892
4893 IF (x_kle_rec.PRC_CODE = OKC_API.G_MISS_CHAR) THEN
4894 x_kle_rec.PRC_CODE := l_kle_rec.PRC_CODE;
4895 END IF;
4896
4897 IF (x_kle_rec.RE_LEASE_YN = OKC_API.G_MISS_CHAR) THEN
4898 x_kle_rec.RE_LEASE_YN := l_kle_rec.RE_LEASE_YN;
4899 END IF;
4900
4901 IF (x_kle_rec.PRESCRIBED_ASSET_YN = OKC_API.G_MISS_CHAR) THEN
4902 x_kle_rec.PRESCRIBED_ASSET_YN := l_kle_rec.PRESCRIBED_ASSET_YN;
4903 END IF;
4904
4905 IF (x_kle_rec.CREDIT_TENANT_YN = OKC_API.G_MISS_CHAR) THEN
4906 x_kle_rec.CREDIT_TENANT_YN := l_kle_rec.CREDIT_TENANT_YN;
4907 END IF;
4908
4909 IF (x_kle_rec.SECURED_DEAL_YN = OKC_API.G_MISS_CHAR) THEN
4910 x_kle_rec.SECURED_DEAL_YN := l_kle_rec.SECURED_DEAL_YN;
4911 END IF;
4912
4913 IF (x_kle_rec.CLG_ID = OKC_API.G_MISS_NUM) THEN
4914 x_kle_rec.CLG_ID := l_kle_rec.CLG_ID;
4915 END IF;
4916
4917 IF (x_kle_rec.DATE_FUNDING = OKC_API.G_MISS_DATE) THEN
4918 x_kle_rec.DATE_FUNDING := l_kle_rec.DATE_FUNDING;
4919 END IF;
4920
4921 IF (x_kle_rec.DATE_FUNDING_REQUIRED = OKC_API.G_MISS_DATE) THEN
4922 x_kle_rec.DATE_FUNDING_REQUIRED := l_kle_rec.DATE_FUNDING_REQUIRED;
4923 END IF;
4924
4925 IF (x_kle_rec.DATE_ACCEPTED = OKC_API.G_MISS_DATE) THEN
4926 x_kle_rec.DATE_ACCEPTED := l_kle_rec.DATE_ACCEPTED;
4927 END IF;
4928
4929 IF (x_kle_rec.DATE_DELIVERY_EXPECTED = OKC_API.G_MISS_DATE) THEN
4930 x_kle_rec.DATE_DELIVERY_EXPECTED := l_kle_rec.DATE_DELIVERY_EXPECTED;
4931 END IF;
4932
4933 IF (x_kle_rec.OEC = OKC_API.G_MISS_NUM) THEN
4934 x_kle_rec.OEC := l_kle_rec.OEC;
4935 END IF;
4936
4937 IF (x_kle_rec.CAPITAL_AMOUNT = OKC_API.G_MISS_NUM) THEN
4938 x_kle_rec.CAPITAL_AMOUNT := l_kle_rec.CAPITAL_AMOUNT;
4939 END IF;
4940
4941 IF (x_kle_rec.RESIDUAL_GRNTY_AMOUNT = OKC_API.G_MISS_NUM) THEN
4942 x_kle_rec.RESIDUAL_GRNTY_AMOUNT := l_kle_rec.RESIDUAL_GRNTY_AMOUNT;
4943 END IF;
4944
4945 IF (x_kle_rec.RESIDUAL_CODE = OKC_API.G_MISS_CHAR) THEN
4946 x_kle_rec.RESIDUAL_CODE := l_kle_rec.RESIDUAL_CODE;
4947 END IF;
4948
4949 IF (x_kle_rec.RVI_PREMIUM = OKC_API.G_MISS_NUM) THEN
4950 x_kle_rec.RVI_PREMIUM := l_kle_rec.RVI_PREMIUM;
4951 END IF;
4952
4953 IF (x_kle_rec.CREDIT_NATURE = OKC_API.G_MISS_CHAR) THEN
4954 x_kle_rec.CREDIT_NATURE := l_kle_rec.CREDIT_NATURE;
4955 END IF;
4956
4957 IF (x_kle_rec.CAPITALIZED_INTEREST = OKC_API.G_MISS_NUM) THEN
4958 x_kle_rec.CAPITALIZED_INTEREST := l_kle_rec.CAPITALIZED_INTEREST;
4959 END IF;
4960
4961 IF (x_kle_rec.CAPITAL_REDUCTION_PERCENT = OKC_API.G_MISS_NUM) THEN
4962 x_kle_rec.CAPITAL_REDUCTION_PERCENT := l_kle_rec.CAPITAL_REDUCTION_PERCENT;
4963 END IF;
4964
4965 IF (x_kle_rec.DATE_PAY_INVESTOR_START = OKC_API.G_MISS_DATE) THEN
4966 x_kle_rec.DATE_PAY_INVESTOR_START := l_kle_rec.DATE_PAY_INVESTOR_START;
4967 END IF;
4968
4969 IF (x_kle_rec.PAY_INVESTOR_FREQUENCY = OKC_API.G_MISS_CHAR) THEN
4970 x_kle_rec.PAY_INVESTOR_FREQUENCY := l_kle_rec.PAY_INVESTOR_FREQUENCY;
4971 END IF;
4972
4973 IF (x_kle_rec.PAY_INVESTOR_EVENT = OKC_API.G_MISS_CHAR) THEN
4974 x_kle_rec.PAY_INVESTOR_EVENT := l_kle_rec.PAY_INVESTOR_EVENT;
4975 END IF;
4976
4977 IF (x_kle_rec.PAY_INVESTOR_REMITTANCE_DAYS = OKC_API.G_MISS_NUM) THEN
4978 x_kle_rec.PAY_INVESTOR_REMITTANCE_DAYS := l_kle_rec.PAY_INVESTOR_REMITTANCE_DAYS;
4979 END IF;
4980
4981 IF (x_kle_rec.FEE_TYPE = OKC_API.G_MISS_CHAR) THEN
4982 x_kle_rec.FEE_TYPE := l_kle_rec.FEE_TYPE;
4983 END IF;
4984
4985 --Bug# 3143522: 11.5.10
4986 --subsidy
4987 IF (x_kle_rec.SUBSIDY_ID = OKL_API.G_MISS_NUM) THEN
4988 x_kle_rec.SUBSIDY_ID := l_kle_rec.SUBSIDY_ID;
4989 END IF;
4990 --IF (x_kle_rec.SUBSIDIZED_OEC = OKL_API.G_MISS_NUM) THEN
4991 --x_kle_rec.SUBSIDIZED_OEC := l_kle_rec.SUBSIDIZED_OEC;
4992 --END IF;
4993 --IF (x_kle_rec.SUBSIDIZED_CAP_AMOUNT = OKL_API.G_MISS_NUM) THEN
4994 --x_kle_rec.SUBSIDIZED_CAP_AMOUNT := l_kle_rec.SUBSIDIZED_CAP_AMOUNT;
4995 --END IF;
4996 IF (x_kle_rec.SUBSIDY_OVERRIDE_AMOUNT = OKL_API.G_MISS_NUM) THEN
4997 x_kle_rec.SUBSIDY_OVERRIDE_AMOUNT := l_kle_rec.SUBSIDY_OVERRIDE_AMOUNT;
4998 END IF;
4999 --financed fee
5000 IF (x_kle_rec.PRE_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5001 x_kle_rec.PRE_TAX_YIELD := l_kle_rec.PRE_TAX_YIELD;
5002 END IF;
5003 IF (x_kle_rec.AFTER_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5004 x_kle_rec.AFTER_TAX_YIELD := l_kle_rec.AFTER_TAX_YIELD;
5005 END IF;
5006 IF (x_kle_rec.IMPLICIT_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
5007 x_kle_rec.IMPLICIT_INTEREST_RATE := l_kle_rec.IMPLICIT_INTEREST_RATE;
5008 END IF;
5009 IF (x_kle_rec.IMPLICIT_NON_IDC_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
5010 x_kle_rec.IMPLICIT_NON_IDC_INTEREST_RATE := l_kle_rec.IMPLICIT_NON_IDC_INTEREST_RATE;
5011 END IF;
5012 IF (x_kle_rec.PRE_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5013 x_kle_rec.PRE_TAX_IRR := l_kle_rec.PRE_TAX_IRR;
5014 END IF;
5015 IF (x_kle_rec.AFTER_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5016 x_kle_rec.AFTER_TAX_IRR := l_kle_rec.AFTER_TAX_IRR;
5017 END IF;
5018 --quote
5019 IF (x_kle_rec.SUB_PRE_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5020 x_kle_rec.SUB_PRE_TAX_YIELD := l_kle_rec.SUB_PRE_TAX_YIELD;
5021 END IF;
5022 IF (x_kle_rec.SUB_AFTER_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5023 x_kle_rec.SUB_AFTER_TAX_YIELD := l_kle_rec.SUB_AFTER_TAX_YIELD;
5024 END IF;
5025 IF (x_kle_rec.SUB_IMPL_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
5026 x_kle_rec.SUB_IMPL_INTEREST_RATE := l_kle_rec.SUB_IMPL_INTEREST_RATE;
5027 END IF;
5028 IF (x_kle_rec.SUB_IMPL_NON_IDC_INT_RATE = OKL_API.G_MISS_NUM) THEN
5029 x_kle_rec.SUB_IMPL_NON_IDC_INT_RATE := l_kle_rec.SUB_IMPL_NON_IDC_INT_RATE;
5030 END IF;
5031 IF (x_kle_rec.SUB_PRE_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5032 x_kle_rec.SUB_PRE_TAX_IRR := l_kle_rec.SUB_PRE_TAX_IRR;
5033 END IF;
5034 IF (x_kle_rec.SUB_AFTER_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5035 x_kle_rec.SUB_AFTER_TAX_IRR := l_kle_rec.SUB_AFTER_TAX_IRR;
5036 END IF;
5037 --Bug# 2994971
5038 IF (x_kle_rec.ITEM_INSURANCE_CATEGORY = OKL_API.G_MISS_NUM) THEN
5039 x_kle_rec.ITEM_INSURANCE_CATEGORY := l_kle_rec.ITEM_INSURANCE_CATEGORY;
5040 END IF;
5041 --Bug# 3973640 :11.5.10+
5042 IF (x_kle_rec.QTE_ID = OKL_API.G_MISS_NUM) THEN
5043 x_kle_rec.QTE_ID := l_kle_rec.QTE_ID;
5044 END IF;
5045 IF (x_kle_rec.FUNDING_DATE = OKL_API.G_MISS_DATE) THEN
5046 x_kle_rec.FUNDING_DATE := l_kle_rec.FUNDING_DATE;
5047 END IF;
5048 IF (x_kle_rec.STREAM_TYPE_SUBCLASS = OKL_API.G_MISS_CHAR) THEN
5049 x_kle_rec.STREAM_TYPE_SUBCLASS := l_kle_rec.STREAM_TYPE_SUBCLASS;
5050 END IF;
5051
5052 --Bug# 4419339 OKLH
5053 IF (x_kle_rec.DATE_FUNDING_EXPECTED = OKL_API.G_MISS_DATE) THEN
5054 x_kle_rec.DATE_FUNDING_EXPECTED := l_kle_rec.DATE_FUNDING_EXPECTED;
5055 END IF;
5056
5057 IF (x_kle_rec.MANUFACTURER_NAME = OKL_API.G_MISS_CHAR) THEN
5058 x_kle_rec.MANUFACTURER_NAME := l_kle_rec.MANUFACTURER_NAME;
5059 END IF;
5060
5061 IF (x_kle_rec.MODEL_NUMBER = OKL_API.G_MISS_CHAR) THEN
5062 x_kle_rec.MODEL_NUMBER := l_kle_rec.MODEL_NUMBER;
5063 END IF;
5064
5065 IF (x_kle_rec.DOWN_PAYMENT_RECEIVER_CODE = OKL_API.G_MISS_CHAR) THEN
5066 x_kle_rec.DOWN_PAYMENT_RECEIVER_CODE := l_kle_rec.DOWN_PAYMENT_RECEIVER_CODE;
5067 END IF;
5068
5069 IF (x_kle_rec.CAPITALIZE_DOWN_PAYMENT_YN = OKL_API.G_MISS_CHAR) THEN
5070 x_kle_rec.CAPITALIZE_DOWN_PAYMENT_YN := l_kle_rec.CAPITALIZE_DOWN_PAYMENT_YN;
5071 END IF;
5072
5073 IF (x_kle_rec.FEE_PURPOSE_CODE = OKL_API.G_MISS_CHAR) THEN
5074 x_kle_rec.FEE_PURPOSE_CODE := l_kle_rec.FEE_PURPOSE_CODE;
5075 END IF;
5076
5077 IF (x_kle_rec.TERMINATION_VALUE = OKL_API.G_MISS_NUM) THEN
5078 x_kle_rec.TERMINATION_VALUE := l_kle_rec.TERMINATION_VALUE;
5079 END IF;
5080
5081 --Bug# 4631549
5082 IF (x_kle_rec.EXPECTED_ASSET_COST = OKL_API.G_MISS_NUM) THEN
5083 x_kle_rec.EXPECTED_ASSET_COST := l_kle_rec.EXPECTED_ASSET_COST;
5084 END IF;
5085
5086 IF (x_kle_rec.ORIG_CONTRACT_LINE_ID = OKL_API.G_MISS_NUM) THEN
5087 x_kle_rec.ORIG_CONTRACT_LINE_ID := l_kle_rec.ORIG_CONTRACT_LINE_ID;
5088 END IF;
5089
5090 --Added by JJUNEJA
5091 IF (x_kle_rec.ORIGINATION_INCOME = OKL_API.G_MISS_NUM) THEN
5092 x_kle_rec.ORIGINATION_INCOME := l_kle_rec.ORIGINATION_INCOME;
5093 END IF;
5094 --End of addition by JJUNEJA
5095
5096 --Bug# 16344245
5097 IF (x_kle_rec.AMOUNT_BALANCE_LEGACY = OKL_API.G_MISS_NUM) THEN
5098 x_kle_rec.AMOUNT_BALANCE_LEGACY := l_kle_rec.AMOUNT_BALANCE_LEGACY;
5099 END IF;
5100
5101 IF (x_kle_rec.DT_EFFECTIVE_BALANCE_LEGACY = OKL_API.G_MISS_DATE) THEN
5102 x_kle_rec.DT_EFFECTIVE_BALANCE_LEGACY := l_kle_rec.DT_EFFECTIVE_BALANCE_LEGACY;
5103 END IF;
5104
5105 RETURN(l_return_status);
5106 END populate_new_record;
5107 --------------------------------------
5108 -- Set_Attributes for: OKL_K_LINES --
5109 --------------------------------------
5110 FUNCTION Set_Attributes (
5111 p_kle_rec IN kle_rec_type,
5112 x_kle_rec OUT NOCOPY kle_rec_type
5113 ) RETURN VARCHAR2 IS
5114 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5115 BEGIN
5116 x_kle_rec := p_kle_rec;
5117 --Added by jjuneja
5118 --in case the Fee_type is income then setting origination income to 0 if it is null
5119 IF(x_kle_rec.FEE_TYPE = 'INCOME') THEN
5120 x_kle_rec.ORIGINATION_INCOME := NVL(x_kle_rec.ORIGINATION_INCOME,0);
5121 END IF;
5122
5123 --End of addition by jjuneja
5124 RETURN(l_return_status);
5125 END Set_Attributes;
5126 BEGIN
5127 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
5128 p_init_msg_list,
5129 '_PVT',
5130 x_return_status);
5131
5132 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5133 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5134 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5135 RAISE OKC_API.G_EXCEPTION_ERROR;
5136 END IF;
5137
5138 --- Setting item attributes
5139 l_return_status := Set_Attributes(
5140 p_kle_rec, -- IN
5141 l_kle_rec); -- OUT
5142 --- If any errors happen abort API
5143
5144 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5145 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5146 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5147 RAISE OKC_API.G_EXCEPTION_ERROR;
5148 END IF;
5149
5150 l_return_status := populate_new_record(l_kle_rec, l_def_kle_rec);
5151
5152 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5153 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5154 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5155 RAISE OKC_API.G_EXCEPTION_ERROR;
5156 END IF;
5157
5158 UPDATE OKL_K_LINES
5159 SET
5160 ID = l_def_kle_rec.ID,
5161 KLE_ID = l_def_kle_rec.KLE_ID,
5162 STY_ID = l_def_kle_rec.STY_ID,
5163 OBJECT_VERSION_NUMBER = l_def_kle_rec.OBJECT_VERSION_NUMBER,
5164 LAO_AMOUNT = l_def_kle_rec.LAO_AMOUNT,
5165 FEE_CHARGE = l_def_kle_rec.FEE_CHARGE,
5166 TITLE_DATE = l_def_kle_rec.TITLE_DATE,
5167 DATE_RESIDUAL_LAST_REVIEW = l_def_kle_rec.DATE_RESIDUAL_LAST_REVIEW,
5168 DATE_LAST_REAMORTISATION = l_def_kle_rec.DATE_LAST_REAMORTISATION,
5169 TERMINATION_PURCHASE_AMOUNT = l_def_kle_rec.TERMINATION_PURCHASE_AMOUNT,
5170 DATE_LAST_CLEANUP = l_def_kle_rec.DATE_LAST_CLEANUP,
5171 REMARKETED_AMOUNT = l_def_kle_rec.REMARKETED_AMOUNT,
5172 DATE_REMARKETED = l_def_kle_rec.DATE_REMARKETED,
5173 REMARKET_MARGIN = l_def_kle_rec.REMARKET_MARGIN,
5174 REPURCHASED_AMOUNT = l_def_kle_rec.REPURCHASED_AMOUNT,
5175 DATE_REPURCHASED = l_def_kle_rec.DATE_REPURCHASED,
5176 GAIN_LOSS = l_def_kle_rec.GAIN_LOSS,
5177 FLOOR_AMOUNT = l_def_kle_rec.FLOOR_AMOUNT,
5178 PREVIOUS_CONTRACT = l_def_kle_rec.PREVIOUS_CONTRACT,
5179 TRACKED_RESIDUAL = l_def_kle_rec.TRACKED_RESIDUAL,
5180 DATE_TITLE_RECEIVED = l_def_kle_rec.DATE_TITLE_RECEIVED,
5181 ESTIMATED_OEC = l_def_kle_rec.ESTIMATED_OEC,
5182 RESIDUAL_PERCENTAGE = l_def_kle_rec.RESIDUAL_PERCENTAGE,
5183 CAPITAL_REDUCTION = l_def_kle_rec.CAPITAL_REDUCTION,
5184 VENDOR_ADVANCE_PAID = l_def_kle_rec.VENDOR_ADVANCE_PAID,
5185 TRADEIN_AMOUNT = l_def_kle_rec.TRADEIN_AMOUNT,
5186 DELIVERED_DATE = l_def_kle_rec.DELIVERED_DATE,
5187 YEAR_OF_MANUFACTURE = l_def_kle_rec.YEAR_OF_MANUFACTURE,
5188 INITIAL_DIRECT_COST = l_def_kle_rec.INITIAL_DIRECT_COST,
5189 OCCUPANCY = l_def_kle_rec.OCCUPANCY,
5190 DATE_LAST_INSPECTION = l_def_kle_rec.DATE_LAST_INSPECTION,
5191 DATE_NEXT_INSPECTION_DUE = l_def_kle_rec.DATE_NEXT_INSPECTION_DUE,
5192 WEIGHTED_AVERAGE_LIFE = l_def_kle_rec.WEIGHTED_AVERAGE_LIFE,
5193 BOND_EQUIVALENT_YIELD = l_def_kle_rec.BOND_EQUIVALENT_YIELD,
5194 REFINANCE_AMOUNT = l_def_kle_rec.REFINANCE_AMOUNT,
5195 YEAR_BUILT = l_def_kle_rec.YEAR_BUILT,
5196 COVERAGE_RATIO = l_def_kle_rec.COVERAGE_RATIO,
5197 GROSS_SQUARE_FOOTAGE = l_def_kle_rec.GROSS_SQUARE_FOOTAGE,
5198 NET_RENTABLE = l_def_kle_rec.NET_RENTABLE,
5199 DATE_LETTER_ACCEPTANCE = l_def_kle_rec.DATE_LETTER_ACCEPTANCE,
5200 DATE_COMMITMENT_EXPIRATION = l_def_kle_rec.DATE_COMMITMENT_EXPIRATION,
5201 DATE_APPRAISAL = l_def_kle_rec.DATE_APPRAISAL,
5202 APPRAISAL_VALUE = l_def_kle_rec.APPRAISAL_VALUE,
5203 RESIDUAL_VALUE = l_def_kle_rec.RESIDUAL_VALUE,
5204 PERCENT = l_def_kle_rec.PERCENT,
5205 COVERAGE = l_def_kle_rec.COVERAGE,
5206 LRV_AMOUNT = l_def_kle_rec.LRV_AMOUNT,
5207 AMOUNT = l_def_kle_rec.AMOUNT,
5208 LRS_PERCENT = l_def_kle_rec.LRS_PERCENT,
5209 EVERGREEN_PERCENT = l_def_kle_rec.EVERGREEN_PERCENT,
5210 PERCENT_STAKE = l_def_kle_rec.PERCENT_STAKE,
5211 AMOUNT_STAKE = l_def_kle_rec.AMOUNT_STAKE,
5212 DATE_SOLD = l_def_kle_rec.DATE_SOLD,
5213 STY_ID_FOR = l_def_kle_rec.STY_ID_FOR,
5214 ATTRIBUTE_CATEGORY = l_def_kle_rec.ATTRIBUTE_CATEGORY,
5215 ATTRIBUTE1 = l_def_kle_rec.ATTRIBUTE1,
5216 ATTRIBUTE2 = l_def_kle_rec.ATTRIBUTE2,
5217 ATTRIBUTE3 = l_def_kle_rec.ATTRIBUTE3,
5218 ATTRIBUTE4 = l_def_kle_rec.ATTRIBUTE4,
5219 ATTRIBUTE5 = l_def_kle_rec.ATTRIBUTE5,
5220 ATTRIBUTE6 = l_def_kle_rec.ATTRIBUTE6,
5221 ATTRIBUTE7 = l_def_kle_rec.ATTRIBUTE7,
5222 ATTRIBUTE8 = l_def_kle_rec.ATTRIBUTE8,
5223 ATTRIBUTE9 = l_def_kle_rec.ATTRIBUTE9,
5224 ATTRIBUTE10 = l_def_kle_rec.ATTRIBUTE10,
5225 ATTRIBUTE11 = l_def_kle_rec.ATTRIBUTE11,
5226 ATTRIBUTE12 = l_def_kle_rec.ATTRIBUTE12,
5227 ATTRIBUTE13 = l_def_kle_rec.ATTRIBUTE13,
5228 ATTRIBUTE14 = l_def_kle_rec.ATTRIBUTE14,
5229 ATTRIBUTE15 = l_def_kle_rec.ATTRIBUTE15,
5230 CREATED_BY = l_def_kle_rec.CREATED_BY,
5231 CREATION_DATE = l_def_kle_rec.CREATION_DATE,
5232 LAST_UPDATED_BY = l_def_kle_rec.LAST_UPDATED_BY,
5233 LAST_UPDATE_DATE = l_def_kle_rec.LAST_UPDATE_DATE,
5234 LAST_UPDATE_LOGIN = l_def_kle_rec.LAST_UPDATE_LOGIN,
5235 NTY_CODE = l_def_kle_rec.NTY_CODE,
5236 FCG_CODE = l_def_kle_rec.FCG_CODE,
5237 PRC_CODE = l_def_kle_rec.PRC_CODE,
5238 RE_LEASE_YN = l_def_kle_rec.RE_LEASE_YN,
5239 PRESCRIBED_ASSET_YN = l_def_kle_rec.PRESCRIBED_ASSET_YN,
5240 CREDIT_TENANT_YN = l_def_kle_rec.CREDIT_TENANT_YN,
5241 SECURED_DEAL_YN = l_def_kle_rec.SECURED_DEAL_YN,
5242 CLG_ID = l_def_kle_rec.CLG_ID,
5243 DATE_FUNDING = l_def_kle_rec.DATE_FUNDING,
5244 DATE_FUNDING_REQUIRED = l_def_kle_rec.DATE_FUNDING_REQUIRED,
5245 DATE_ACCEPTED = l_def_kle_rec.DATE_ACCEPTED,
5246 DATE_DELIVERY_EXPECTED = l_def_kle_rec.DATE_DELIVERY_EXPECTED,
5247 OEC = l_def_kle_rec.OEC,
5248 CAPITAL_AMOUNT = l_def_kle_rec.CAPITAL_AMOUNT,
5249 RESIDUAL_GRNTY_AMOUNT = l_def_kle_rec.RESIDUAL_GRNTY_AMOUNT,
5250 RESIDUAL_CODE = l_def_kle_rec.RESIDUAL_CODE,
5251 RVI_PREMIUM = l_def_kle_rec.RVI_PREMIUM,
5252 CREDIT_NATURE = l_def_kle_rec.CREDIT_NATURE,
5253 CAPITALIZED_INTEREST = l_def_kle_rec.CAPITALIZED_INTEREST,
5254 CAPITAL_REDUCTION_PERCENT = l_def_kle_rec.CAPITAL_REDUCTION_PERCENT,
5255 --Bug# 2697681 11.5.9
5256 DATE_PAY_INVESTOR_START = l_def_kle_rec.DATE_PAY_INVESTOR_START,
5257 PAY_INVESTOR_FREQUENCY = l_def_kle_rec.PAY_INVESTOR_FREQUENCY,
5258 PAY_INVESTOR_EVENT = l_def_kle_rec.PAY_INVESTOR_EVENT,
5259 PAY_INVESTOR_REMITTANCE_DAYS = l_def_kle_rec.PAY_INVESTOR_REMITTANCE_DAYS,
5260 --financed fees
5261 FEE_TYPE = l_def_kle_rec.FEE_TYPE,
5262 --Bug# 3143522 : 11.5.10
5263 --subsidy
5264 SUBSIDY_ID = l_def_kle_rec.SUBSIDY_ID,
5265 --SUBSIDIZED_OEC = l_def_kle_rec.SUBSIDIZED_OEC,
5266 --SUBSIDIZED_CAP_AMOUNT = l_def_kle_rec.SUBSIDIZED_CAP_AMOUNT,
5267 SUBSIDY_OVERRIDE_AMOUNT = l_def_kle_rec.SUBSIDY_OVERRIDE_AMOUNT,
5268 --financed fee
5269 PRE_TAX_YIELD = l_def_kle_rec.PRE_TAX_YIELD,
5270 AFTER_TAX_YIELD = l_def_kle_rec.AFTER_TAX_YIELD,
5271 IMPLICIT_INTEREST_RATE = l_def_kle_rec.IMPLICIT_INTEREST_RATE,
5272 IMPLICIT_NON_IDC_INTEREST_RATE = l_def_kle_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
5273 PRE_TAX_IRR = l_def_kle_rec.PRE_TAX_IRR,
5274 AFTER_TAX_IRR = l_def_kle_rec.AFTER_TAX_IRR,
5275 --quote
5276 SUB_PRE_TAX_YIELD = l_def_kle_rec.SUB_PRE_TAX_YIELD,
5277 SUB_AFTER_TAX_YIELD = l_def_kle_rec.SUB_AFTER_TAX_YIELD,
5278 SUB_IMPL_INTEREST_RATE = l_def_kle_rec.SUB_IMPL_INTEREST_RATE,
5279 SUB_IMPL_NON_IDC_INT_RATE = l_def_kle_rec.SUB_IMPL_NON_IDC_INT_RATE,
5280 SUB_PRE_TAX_IRR = l_def_kle_rec.SUB_PRE_TAX_IRR,
5281 SUB_AFTER_TAX_IRR = l_def_kle_rec.SUB_AFTER_TAX_IRR,
5282 --Bug# 2994971
5283 ITEM_INSURANCE_CATEGORY = l_def_kle_rec.ITEM_INSURANCE_CATEGORY,
5284 --Bug# 3973640 :11.5.10+
5285 QTE_ID = l_def_kle_rec.QTE_ID,
5286 FUNDING_DATE = l_def_kle_rec.FUNDING_DATE,
5287 STREAM_TYPE_SUBCLASS = l_def_kle_rec.STREAM_TYPE_SUBCLASS,
5288 --Bug# 4419339 OKLH
5289 DATE_FUNDING_EXPECTED = l_def_kle_rec.DATE_FUNDING_EXPECTED,
5290 MANUFACTURER_NAME = l_def_kle_rec.MANUFACTURER_NAME,
5291 MODEL_NUMBER = l_def_kle_rec.MODEL_NUMBER,
5292 DOWN_PAYMENT_RECEIVER_CODE = l_def_kle_rec.DOWN_PAYMENT_RECEIVER_CODE,
5293 CAPITALIZE_DOWN_PAYMENT_YN = l_def_kle_rec.CAPITALIZE_DOWN_PAYMENT_YN,
5294 FEE_PURPOSE_CODE = l_def_kle_rec.FEE_PURPOSE_CODE,
5295 TERMINATION_VALUE = l_def_kle_rec.TERMINATION_VALUE,
5296 --Bug# 4631549
5297 EXPECTED_ASSET_COST = l_def_kle_rec.EXPECTED_ASSET_COST,
5298 ORIG_CONTRACT_LINE_ID = l_def_kle_rec.ORIG_CONTRACT_LINE_ID,
5299 --Added by JJUNEJA
5300 ORIGINATION_INCOME = l_def_kle_rec.ORIGINATION_INCOME,
5301 --End of addition by JJUNEJA
5302 --Bug# 16344245
5303 AMOUNT_BALANCE_LEGACY = l_def_kle_rec.AMOUNT_BALANCE_LEGACY,
5304 DT_EFFECTIVE_BALANCE_LEGACY = l_def_kle_rec.DT_EFFECTIVE_BALANCE_LEGACY
5305
5306 WHERE ID = l_def_kle_rec.id;
5307
5308 -- Insert into History table
5309 /*
5310 insert_row(
5311 l_api_version,
5312 p_init_msg_list,
5313 x_return_status,
5314 x_msg_count,
5315 x_msg_data,
5316 l_okl_k_lines_h_rec,
5317 lx_okl_k_lines_h_rec
5318 );
5319
5320 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5321 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5322 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
5323 RAISE OKC_API.G_EXCEPTION_ERROR;
5324 END IF;
5325
5326 */
5327 x_kle_rec := l_def_kle_rec;
5328 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
5329
5330 EXCEPTION
5331 WHEN OKC_API.G_EXCEPTION_ERROR THEN
5332 x_return_status := OKC_API.HANDLE_EXCEPTIONS
5333 (
5334 l_api_name,
5335 G_PKG_NAME,
5336 'OKC_API.G_RET_STS_ERROR',
5337 x_msg_count,
5338 x_msg_data,
5339 '_PVT'
5340 );
5341 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
5342 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5343 (
5344 l_api_name,
5345 G_PKG_NAME,
5346 'OKC_API.G_RET_STS_UNEXP_ERROR',
5347 x_msg_count,
5348 x_msg_data,
5349 '_PVT'
5350 );
5351 WHEN OTHERS THEN
5352 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5353 (
5354 l_api_name,
5355 G_PKG_NAME,
5356 'OTHERS',
5357 x_msg_count,
5358 x_msg_data,
5359 '_PVT'
5360 );
5361
5362 END update_row;
5363
5364 ------------------------------------
5365 -- update_row for: OKL_K_LINES_V --
5366 ------------------------------------
5367
5368 PROCEDURE update_row(
5369
5370 p_api_version IN NUMBER,
5371 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
5372 x_return_status OUT NOCOPY VARCHAR2,
5373 x_msg_count OUT NOCOPY NUMBER,
5374 x_msg_data OUT NOCOPY VARCHAR2,
5375 p_klev_rec IN klev_rec_type,
5376 x_klev_rec OUT NOCOPY klev_rec_type) IS
5377
5378 l_api_version CONSTANT NUMBER := 1;
5379 l_api_name CONSTANT VARCHAR2(30) := 'rec_update_row';
5380 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5381 l_klev_rec klev_rec_type := p_klev_rec;
5382 l_def_klev_rec klev_rec_type;
5383 l_kle_rec kle_rec_type;
5384 lx_kle_rec kle_rec_type;
5385 -------------------------------
5386 -- FUNCTION fill_who_columns --
5387 -------------------------------
5388 FUNCTION fill_who_columns (
5389 p_klev_rec IN klev_rec_type
5390 ) RETURN klev_rec_type IS
5391 l_klev_rec klev_rec_type := p_klev_rec;
5392 BEGIN
5393 l_klev_rec.LAST_UPDATE_DATE := SYSDATE;
5394 l_klev_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
5395 l_klev_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
5396 RETURN(l_klev_rec);
5397 END fill_who_columns;
5398 ----------------------------------
5399 -- FUNCTION populate_new_record --
5400 ----------------------------------
5401 FUNCTION populate_new_record (
5402 p_klev_rec IN klev_rec_type,
5403 x_klev_rec OUT NOCOPY klev_rec_type
5404 ) RETURN VARCHAR2 IS
5405 l_klev_rec klev_rec_type;
5406 l_row_notfound BOOLEAN := TRUE;
5407 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5408 BEGIN
5409 x_klev_rec := p_klev_rec;
5410 -- Get current database values
5411 l_klev_rec := get_rec(p_klev_rec, l_row_notfound);
5412 IF (l_row_notfound) THEN
5413 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5414 END IF;
5415
5416
5417 IF (x_klev_rec.ID = OKC_API.G_MISS_NUM) THEN
5418 x_klev_rec.ID := l_klev_rec.ID;
5419 END IF;
5420
5421 IF (x_klev_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) THEN
5422 x_klev_rec.OBJECT_VERSION_NUMBER := l_klev_rec.OBJECT_VERSION_NUMBER;
5423 END IF;
5424
5425 IF (x_klev_rec.KLE_ID = OKC_API.G_MISS_NUM) THEN
5426 x_klev_rec.KLE_ID := l_klev_rec.KLE_ID;
5427 END IF;
5428
5429 IF (x_klev_rec.STY_ID = OKC_API.G_MISS_NUM) THEN
5430 x_klev_rec.STY_ID := l_klev_rec.STY_ID;
5431 END IF;
5432
5433 IF (x_klev_rec.PRC_CODE = OKC_API.G_MISS_CHAR) THEN
5434 x_klev_rec.PRC_CODE := l_klev_rec.PRC_CODE;
5435 END IF;
5436
5437 IF (x_klev_rec.FCG_CODE = OKC_API.G_MISS_CHAR) THEN
5438 x_klev_rec.FCG_CODE := l_klev_rec.FCG_CODE;
5439 END IF;
5440
5441 IF (x_klev_rec.NTY_CODE = OKC_API.G_MISS_CHAR) THEN
5442 x_klev_rec.NTY_CODE := l_klev_rec.NTY_CODE;
5443 END IF;
5444
5445 IF (x_klev_rec.ESTIMATED_OEC = OKC_API.G_MISS_NUM) THEN
5446 x_klev_rec.ESTIMATED_OEC := l_klev_rec.ESTIMATED_OEC;
5447 END IF;
5448
5449 IF (x_klev_rec.LAO_AMOUNT = OKC_API.G_MISS_NUM) THEN
5450 x_klev_rec.LAO_AMOUNT := l_klev_rec.LAO_AMOUNT;
5451 END IF;
5452
5453 IF (x_klev_rec.TITLE_DATE = OKC_API.G_MISS_DATE) THEN
5454 x_klev_rec.TITLE_DATE := l_klev_rec.TITLE_DATE;
5455 END IF;
5456
5457 IF (x_klev_rec.FEE_CHARGE = OKC_API.G_MISS_NUM) THEN
5458 x_klev_rec.FEE_CHARGE := l_klev_rec.FEE_CHARGE;
5459 END IF;
5460
5461 IF (x_klev_rec.LRS_PERCENT = OKC_API.G_MISS_NUM) THEN
5462 x_klev_rec.LRS_PERCENT := l_klev_rec.LRS_PERCENT;
5463 END IF;
5464
5465 IF (x_klev_rec.INITIAL_DIRECT_COST = OKC_API.G_MISS_NUM) THEN
5466 x_klev_rec.INITIAL_DIRECT_COST := l_klev_rec.INITIAL_DIRECT_COST;
5467 END IF;
5468
5469 IF (x_klev_rec.PERCENT_STAKE = OKC_API.G_MISS_NUM) THEN
5470 x_klev_rec.PERCENT_STAKE := l_klev_rec.PERCENT_STAKE;
5471 END IF;
5472
5473 IF (x_klev_rec.PERCENT = OKC_API.G_MISS_NUM) THEN
5474 x_klev_rec.PERCENT := l_klev_rec.PERCENT;
5475 END IF;
5476
5477 IF (x_klev_rec.EVERGREEN_PERCENT = OKC_API.G_MISS_NUM) THEN
5478 x_klev_rec.EVERGREEN_PERCENT := l_klev_rec.EVERGREEN_PERCENT;
5479 END IF;
5480
5481 IF (x_klev_rec.AMOUNT_STAKE = OKC_API.G_MISS_NUM) THEN
5482 x_klev_rec.AMOUNT_STAKE := l_klev_rec.AMOUNT_STAKE;
5483 END IF;
5484
5485 IF (x_klev_rec.OCCUPANCY = OKC_API.G_MISS_NUM) THEN
5486 x_klev_rec.OCCUPANCY := l_klev_rec.OCCUPANCY;
5487 END IF;
5488
5489 IF (x_klev_rec.COVERAGE = OKC_API.G_MISS_NUM) THEN
5490 x_klev_rec.COVERAGE := l_klev_rec.COVERAGE;
5491 END IF;
5492
5493 IF (x_klev_rec.RESIDUAL_PERCENTAGE = OKC_API.G_MISS_NUM) THEN
5494 x_klev_rec.RESIDUAL_PERCENTAGE := l_klev_rec.RESIDUAL_PERCENTAGE;
5495 END IF;
5496
5497 IF (x_klev_rec.DATE_LAST_INSPECTION = OKC_API.G_MISS_DATE) THEN
5498 x_klev_rec.DATE_LAST_INSPECTION := l_klev_rec.DATE_LAST_INSPECTION;
5499 END IF;
5500
5501 IF (x_klev_rec.DATE_SOLD = OKC_API.G_MISS_DATE) THEN
5502 x_klev_rec.DATE_SOLD := l_klev_rec.DATE_SOLD;
5503 END IF;
5504
5505 IF (x_klev_rec.LRV_AMOUNT = OKC_API.G_MISS_NUM) THEN
5506 x_klev_rec.LRV_AMOUNT := l_klev_rec.LRV_AMOUNT;
5507 END IF;
5508
5509 IF (x_klev_rec.CAPITAL_REDUCTION = OKC_API.G_MISS_NUM) THEN
5510 x_klev_rec.CAPITAL_REDUCTION := l_klev_rec.CAPITAL_REDUCTION;
5511 END IF;
5512
5513 IF (x_klev_rec.DATE_NEXT_INSPECTION_DUE = OKC_API.G_MISS_DATE) THEN
5514 x_klev_rec.DATE_NEXT_INSPECTION_DUE := l_klev_rec.DATE_NEXT_INSPECTION_DUE;
5515 END IF;
5516
5517 IF (x_klev_rec.DATE_RESIDUAL_LAST_REVIEW = OKC_API.G_MISS_DATE) THEN
5518 x_klev_rec.DATE_RESIDUAL_LAST_REVIEW := l_klev_rec.DATE_RESIDUAL_LAST_REVIEW;
5519 END IF;
5520
5521 IF (x_klev_rec.DATE_LAST_REAMORTISATION = OKC_API.G_MISS_DATE) THEN
5522 x_klev_rec.DATE_LAST_REAMORTISATION := l_klev_rec.DATE_LAST_REAMORTISATION;
5523 END IF;
5524
5525 IF (x_klev_rec.VENDOR_ADVANCE_PAID = OKC_API.G_MISS_NUM) THEN
5526 x_klev_rec.VENDOR_ADVANCE_PAID := l_klev_rec.VENDOR_ADVANCE_PAID;
5527 END IF;
5528
5529 IF (x_klev_rec.WEIGHTED_AVERAGE_LIFE = OKC_API.G_MISS_NUM) THEN
5530 x_klev_rec.WEIGHTED_AVERAGE_LIFE := l_klev_rec.WEIGHTED_AVERAGE_LIFE;
5531 END IF;
5532
5533 IF (x_klev_rec.TRADEIN_AMOUNT = OKC_API.G_MISS_NUM) THEN
5534 x_klev_rec.TRADEIN_AMOUNT := l_klev_rec.TRADEIN_AMOUNT;
5535 END IF;
5536
5537 IF (x_klev_rec.BOND_EQUIVALENT_YIELD = OKC_API.G_MISS_NUM) THEN
5538 x_klev_rec.BOND_EQUIVALENT_YIELD := l_klev_rec.BOND_EQUIVALENT_YIELD;
5539 END IF;
5540
5541 IF (x_klev_rec.TERMINATION_PURCHASE_AMOUNT = OKC_API.G_MISS_NUM) THEN
5542 x_klev_rec.TERMINATION_PURCHASE_AMOUNT := l_klev_rec.TERMINATION_PURCHASE_AMOUNT;
5543 END IF;
5544
5545 IF (x_klev_rec.REFINANCE_AMOUNT = OKC_API.G_MISS_NUM) THEN
5546 x_klev_rec.REFINANCE_AMOUNT := l_klev_rec.REFINANCE_AMOUNT;
5547 END IF;
5548
5549 IF (x_klev_rec.YEAR_BUILT = OKC_API.G_MISS_NUM) THEN
5550 x_klev_rec.YEAR_BUILT := l_klev_rec.YEAR_BUILT;
5551 END IF;
5552
5553 IF (x_klev_rec.DELIVERED_DATE = OKC_API.G_MISS_DATE) THEN
5554 x_klev_rec.DELIVERED_DATE := l_klev_rec.DELIVERED_DATE;
5555 END IF;
5556
5557 IF (x_klev_rec.CREDIT_TENANT_YN = OKC_API.G_MISS_CHAR) THEN
5558 x_klev_rec.CREDIT_TENANT_YN := l_klev_rec.CREDIT_TENANT_YN;
5559 END IF;
5560
5561 IF (x_klev_rec.DATE_LAST_CLEANUP = OKC_API.G_MISS_DATE) THEN
5562 x_klev_rec.DATE_LAST_CLEANUP := l_klev_rec.DATE_LAST_CLEANUP;
5563 END IF;
5564
5565 IF (x_klev_rec.YEAR_OF_MANUFACTURE = OKC_API.G_MISS_CHAR) THEN
5566 x_klev_rec.YEAR_OF_MANUFACTURE := l_klev_rec.YEAR_OF_MANUFACTURE;
5567 END IF;
5568
5569 IF (x_klev_rec.COVERAGE_RATIO = OKC_API.G_MISS_NUM) THEN
5570 x_klev_rec.COVERAGE_RATIO := l_klev_rec.COVERAGE_RATIO;
5571 END IF;
5572
5573 IF (x_klev_rec.REMARKETED_AMOUNT = OKC_API.G_MISS_NUM) THEN
5574 x_klev_rec.REMARKETED_AMOUNT := l_klev_rec.REMARKETED_AMOUNT;
5575 END IF;
5576
5577 IF (x_klev_rec.GROSS_SQUARE_FOOTAGE = OKC_API.G_MISS_NUM) THEN
5578 x_klev_rec.GROSS_SQUARE_FOOTAGE := l_klev_rec.GROSS_SQUARE_FOOTAGE;
5579 END IF;
5580
5581 IF (x_klev_rec.PRESCRIBED_ASSET_YN = OKC_API.G_MISS_CHAR) THEN
5582 x_klev_rec.PRESCRIBED_ASSET_YN := l_klev_rec.PRESCRIBED_ASSET_YN;
5583 END IF;
5584
5585 IF (x_klev_rec.DATE_REMARKETED = OKC_API.G_MISS_DATE) THEN
5586 x_klev_rec.DATE_REMARKETED := l_klev_rec.DATE_REMARKETED;
5587 END IF;
5588
5589 IF (x_klev_rec.NET_RENTABLE = OKC_API.G_MISS_NUM) THEN
5590 x_klev_rec.NET_RENTABLE := l_klev_rec.NET_RENTABLE;
5591 END IF;
5592
5593 IF (x_klev_rec.REMARKET_MARGIN = OKC_API.G_MISS_NUM) THEN
5594 x_klev_rec.REMARKET_MARGIN := l_klev_rec.REMARKET_MARGIN;
5595 END IF;
5596
5597 IF (x_klev_rec.DATE_LETTER_ACCEPTANCE = OKC_API.G_MISS_DATE) THEN
5598 x_klev_rec.DATE_LETTER_ACCEPTANCE := l_klev_rec.DATE_LETTER_ACCEPTANCE;
5599 END IF;
5600
5601 IF (x_klev_rec.REPURCHASED_AMOUNT = OKC_API.G_MISS_NUM) THEN
5602 x_klev_rec.REPURCHASED_AMOUNT := l_klev_rec.REPURCHASED_AMOUNT;
5603 END IF;
5604
5605 IF (x_klev_rec.DATE_COMMITMENT_EXPIRATION = OKC_API.G_MISS_DATE) THEN
5606 x_klev_rec.DATE_COMMITMENT_EXPIRATION := l_klev_rec.DATE_COMMITMENT_EXPIRATION;
5607 END IF;
5608
5609 IF (x_klev_rec.DATE_REPURCHASED = OKC_API.G_MISS_DATE) THEN
5610 x_klev_rec.DATE_REPURCHASED := l_klev_rec.DATE_REPURCHASED;
5611 END IF;
5612
5613 IF (x_klev_rec.DATE_APPRAISAL = OKC_API.G_MISS_DATE) THEN
5614 x_klev_rec.DATE_APPRAISAL := l_klev_rec.DATE_APPRAISAL;
5615 END IF;
5616
5617 IF (x_klev_rec.RESIDUAL_VALUE = OKC_API.G_MISS_NUM) THEN
5618 x_klev_rec.RESIDUAL_VALUE := l_klev_rec.RESIDUAL_VALUE;
5619 END IF;
5620
5621 IF (x_klev_rec.APPRAISAL_VALUE = OKC_API.G_MISS_NUM) THEN
5622 x_klev_rec.APPRAISAL_VALUE := l_klev_rec.APPRAISAL_VALUE;
5623 END IF;
5624
5625 IF (x_klev_rec.SECURED_DEAL_YN = OKC_API.G_MISS_CHAR) THEN
5626 x_klev_rec.SECURED_DEAL_YN := l_klev_rec.SECURED_DEAL_YN;
5627 END IF;
5628
5629 IF (x_klev_rec.GAIN_LOSS = OKC_API.G_MISS_NUM) THEN
5630 x_klev_rec.GAIN_LOSS := l_klev_rec.GAIN_LOSS;
5631 END IF;
5632
5633 IF (x_klev_rec.FLOOR_AMOUNT = OKC_API.G_MISS_NUM) THEN
5634 x_klev_rec.FLOOR_AMOUNT := l_klev_rec.FLOOR_AMOUNT;
5635 END IF;
5636
5637 IF (x_klev_rec.RE_LEASE_YN = OKC_API.G_MISS_CHAR) THEN
5638 x_klev_rec.RE_LEASE_YN := l_klev_rec.RE_LEASE_YN;
5639 END IF;
5640
5641 IF (x_klev_rec.PREVIOUS_CONTRACT = OKC_API.G_MISS_CHAR) THEN
5642 x_klev_rec.PREVIOUS_CONTRACT := l_klev_rec.PREVIOUS_CONTRACT;
5643 END IF;
5644
5645 IF (x_klev_rec.TRACKED_RESIDUAL = OKC_API.G_MISS_NUM) THEN
5646 x_klev_rec.TRACKED_RESIDUAL := l_klev_rec.TRACKED_RESIDUAL;
5647 END IF;
5648
5649 IF (x_klev_rec.DATE_TITLE_RECEIVED = OKC_API.G_MISS_DATE) THEN
5650 x_klev_rec.DATE_TITLE_RECEIVED := l_klev_rec.DATE_TITLE_RECEIVED;
5651 END IF;
5652
5653 IF (x_klev_rec.AMOUNT = OKC_API.G_MISS_NUM) THEN
5654 x_klev_rec.AMOUNT := l_klev_rec.AMOUNT;
5655 END IF;
5656
5657 IF (x_klev_rec.ATTRIBUTE_CATEGORY = OKC_API.G_MISS_CHAR) THEN
5658 x_klev_rec.ATTRIBUTE_CATEGORY := l_klev_rec.ATTRIBUTE_CATEGORY;
5659 END IF;
5660
5661 IF (x_klev_rec.ATTRIBUTE1 = OKC_API.G_MISS_CHAR) THEN
5662 x_klev_rec.ATTRIBUTE1 := l_klev_rec.ATTRIBUTE1;
5663 END IF;
5664
5665 IF (x_klev_rec.ATTRIBUTE2 = OKC_API.G_MISS_CHAR) THEN
5666 x_klev_rec.ATTRIBUTE2 := l_klev_rec.ATTRIBUTE2;
5667 END IF;
5668
5669 IF (x_klev_rec.ATTRIBUTE3 = OKC_API.G_MISS_CHAR) THEN
5670 x_klev_rec.ATTRIBUTE3 := l_klev_rec.ATTRIBUTE3;
5671 END IF;
5672
5673 IF (x_klev_rec.ATTRIBUTE4 = OKC_API.G_MISS_CHAR) THEN
5674 x_klev_rec.ATTRIBUTE4 := l_klev_rec.ATTRIBUTE4;
5675 END IF;
5676
5677 IF (x_klev_rec.ATTRIBUTE5 = OKC_API.G_MISS_CHAR) THEN
5678 x_klev_rec.ATTRIBUTE5 := l_klev_rec.ATTRIBUTE5;
5679 END IF;
5680
5681 IF (x_klev_rec.ATTRIBUTE6 = OKC_API.G_MISS_CHAR) THEN
5682 x_klev_rec.ATTRIBUTE6 := l_klev_rec.ATTRIBUTE6;
5683 END IF;
5684
5685 IF (x_klev_rec.ATTRIBUTE7 = OKC_API.G_MISS_CHAR) THEN
5686 x_klev_rec.ATTRIBUTE7 := l_klev_rec.ATTRIBUTE7;
5687 END IF;
5688
5689 IF (x_klev_rec.ATTRIBUTE8 = OKC_API.G_MISS_CHAR) THEN
5690 x_klev_rec.ATTRIBUTE8 := l_klev_rec.ATTRIBUTE8;
5691 END IF;
5692
5693 IF (x_klev_rec.ATTRIBUTE9 = OKC_API.G_MISS_CHAR) THEN
5694 x_klev_rec.ATTRIBUTE9 := l_klev_rec.ATTRIBUTE9;
5695 END IF;
5696
5697 IF (x_klev_rec.ATTRIBUTE10 = OKC_API.G_MISS_CHAR) THEN
5698 x_klev_rec.ATTRIBUTE10 := l_klev_rec.ATTRIBUTE10;
5699 END IF;
5700
5701 IF (x_klev_rec.ATTRIBUTE11 = OKC_API.G_MISS_CHAR) THEN
5702 x_klev_rec.ATTRIBUTE11 := l_klev_rec.ATTRIBUTE11;
5703 END IF;
5704
5705 IF (x_klev_rec.ATTRIBUTE12 = OKC_API.G_MISS_CHAR) THEN
5706 x_klev_rec.ATTRIBUTE12 := l_klev_rec.ATTRIBUTE12;
5707 END IF;
5708
5709 IF (x_klev_rec.ATTRIBUTE13 = OKC_API.G_MISS_CHAR) THEN
5710 x_klev_rec.ATTRIBUTE13 := l_klev_rec.ATTRIBUTE13;
5711 END IF;
5712
5713 IF (x_klev_rec.ATTRIBUTE14 = OKC_API.G_MISS_CHAR) THEN
5714 x_klev_rec.ATTRIBUTE14 := l_klev_rec.ATTRIBUTE14;
5715 END IF;
5716
5717 IF (x_klev_rec.ATTRIBUTE15 = OKC_API.G_MISS_CHAR) THEN
5718 x_klev_rec.ATTRIBUTE15 := l_klev_rec.ATTRIBUTE15;
5719 END IF;
5720
5721 IF (x_klev_rec.STY_ID_FOR = OKC_API.G_MISS_NUM) THEN
5722 x_klev_rec.STY_ID_FOR := l_klev_rec.STY_ID_FOR;
5723 END IF;
5724
5725 IF (x_klev_rec.CLG_ID = OKC_API.G_MISS_NUM) THEN
5726 x_klev_rec.CLG_ID := l_klev_rec.CLG_ID;
5727 END IF;
5728
5729 IF (x_klev_rec.CREATED_BY = OKC_API.G_MISS_NUM) THEN
5730 x_klev_rec.CREATED_BY := l_klev_rec.CREATED_BY;
5731 END IF;
5732
5733 IF (x_klev_rec.CREATION_DATE = OKC_API.G_MISS_DATE) THEN
5734 x_klev_rec.CREATION_DATE := l_klev_rec.CREATION_DATE;
5735 END IF;
5736
5737 IF (x_klev_rec.LAST_UPDATED_BY = OKC_API.G_MISS_NUM) THEN
5738 x_klev_rec.LAST_UPDATED_BY := l_klev_rec.LAST_UPDATED_BY;
5739 END IF;
5740
5741 IF (x_klev_rec.LAST_UPDATE_DATE = OKC_API.G_MISS_DATE) THEN
5742 x_klev_rec.LAST_UPDATE_DATE := l_klev_rec.LAST_UPDATE_DATE;
5743 END IF;
5744
5745 IF (x_klev_rec.LAST_UPDATE_LOGIN = OKC_API.G_MISS_NUM) THEN
5746 x_klev_rec.LAST_UPDATE_LOGIN := l_klev_rec.LAST_UPDATE_LOGIN;
5747 END IF;
5748
5749 IF (x_klev_rec.DATE_FUNDING = OKC_API.G_MISS_DATE) THEN
5750 x_klev_rec.DATE_FUNDING := l_klev_rec.DATE_FUNDING;
5751 END IF;
5752
5753 IF (x_klev_rec.DATE_FUNDING_REQUIRED = OKC_API.G_MISS_DATE) THEN
5754 x_klev_rec.DATE_FUNDING_REQUIRED := l_klev_rec.DATE_FUNDING_REQUIRED;
5755 END IF;
5756
5757 IF (x_klev_rec.DATE_ACCEPTED = OKC_API.G_MISS_DATE) THEN
5758 x_klev_rec.DATE_ACCEPTED := l_klev_rec.DATE_ACCEPTED;
5759 END IF;
5760
5761 IF (x_klev_rec.DATE_DELIVERY_EXPECTED = OKC_API.G_MISS_DATE) THEN
5762 x_klev_rec.DATE_DELIVERY_EXPECTED := l_klev_rec.DATE_DELIVERY_EXPECTED;
5763 END IF;
5764
5765 IF (x_klev_rec.OEC = OKC_API.G_MISS_NUM) THEN
5766 x_klev_rec.OEC := l_klev_rec.OEC;
5767 END IF;
5768
5769 IF (x_klev_rec.CAPITAL_AMOUNT = OKC_API.G_MISS_NUM) THEN
5770 x_klev_rec.CAPITAL_AMOUNT := l_klev_rec.CAPITAL_AMOUNT;
5771 END IF;
5772
5773 IF (x_klev_rec.RESIDUAL_GRNTY_AMOUNT = OKC_API.G_MISS_NUM) THEN
5774 x_klev_rec.RESIDUAL_GRNTY_AMOUNT := l_klev_rec.RESIDUAL_GRNTY_AMOUNT;
5775 END IF;
5776
5777 IF (x_klev_rec.RESIDUAL_CODE = OKC_API.G_MISS_CHAR) THEN
5778 x_klev_rec.RESIDUAL_CODE := l_klev_rec.RESIDUAL_CODE;
5779 END IF;
5780
5781 IF (x_klev_rec.RVI_PREMIUM = OKC_API.G_MISS_NUM) THEN
5782 x_klev_rec.RVI_PREMIUM := l_klev_rec.RVI_PREMIUM;
5783 END IF;
5784
5785 IF (x_klev_rec.CREDIT_NATURE = OKC_API.G_MISS_CHAR) THEN
5786 x_klev_rec.CREDIT_NATURE := l_klev_rec.CREDIT_NATURE;
5787 END IF;
5788
5789 IF (x_klev_rec.CAPITALIZED_INTEREST = OKC_API.G_MISS_NUM) THEN
5790 x_klev_rec.CAPITALIZED_INTEREST := l_klev_rec.CAPITALIZED_INTEREST;
5791 END IF;
5792
5793 IF (x_klev_rec.CAPITAL_REDUCTION_PERCENT = OKC_API.G_MISS_NUM) THEN
5794 x_klev_rec.CAPITAL_REDUCTION_PERCENT := l_klev_rec.CAPITAL_REDUCTION_PERCENT;
5795 END IF;
5796
5797 IF (x_klev_rec.DATE_PAY_INVESTOR_START = OKC_API.G_MISS_DATE) THEN
5798 x_klev_rec.DATE_PAY_INVESTOR_START := l_klev_rec.DATE_PAY_INVESTOR_START;
5799 END IF;
5800
5801 IF (x_klev_rec.PAY_INVESTOR_FREQUENCY = OKC_API.G_MISS_CHAR) THEN
5802 x_klev_rec.PAY_INVESTOR_FREQUENCY := l_klev_rec.PAY_INVESTOR_FREQUENCY;
5803 END IF;
5804
5805 IF (x_klev_rec.PAY_INVESTOR_EVENT = OKC_API.G_MISS_CHAR) THEN
5806 x_klev_rec.PAY_INVESTOR_EVENT := l_klev_rec.PAY_INVESTOR_EVENT;
5807 END IF;
5808
5809 IF (x_klev_rec.PAY_INVESTOR_REMITTANCE_DAYS = OKC_API.G_MISS_NUM) THEN
5810 x_klev_rec.PAY_INVESTOR_REMITTANCE_DAYS := l_klev_rec.PAY_INVESTOR_REMITTANCE_DAYS;
5811 END IF;
5812 IF (x_klev_rec.FEE_TYPE = OKC_API.G_MISS_CHAR) THEN
5813 x_klev_rec.FEE_TYPE := l_klev_rec.FEE_TYPE;
5814 END IF;
5815 --Bug# 3143522: 11.5.10
5816 --subsidy
5817 IF (x_klev_rec.SUBSIDY_ID = OKL_API.G_MISS_NUM) THEN
5818 x_klev_rec.SUBSIDY_ID := l_klev_rec.SUBSIDY_ID;
5819 END IF;
5820 --IF (x_klev_rec.SUBSIDIZED_OEC = OKL_API.G_MISS_NUM) THEN
5821 --x_klev_rec.SUBSIDIZED_OEC := l_klev_rec.SUBSIDIZED_OEC;
5822 --END IF;
5823 --IF (x_klev_rec.SUBSIDIZED_CAP_AMOUNT = OKL_API.G_MISS_NUM) THEN
5824 --x_klev_rec.SUBSIDIZED_CAP_AMOUNT := l_klev_rec.SUBSIDIZED_CAP_AMOUNT;
5825 --END IF;
5826 IF (x_klev_rec.SUBSIDY_OVERRIDE_AMOUNT = OKL_API.G_MISS_NUM) THEN
5827 x_klev_rec.SUBSIDY_OVERRIDE_AMOUNT := l_klev_rec.SUBSIDY_OVERRIDE_AMOUNT;
5828 END IF;
5829 --financed fee
5830 IF (x_klev_rec.PRE_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5831 x_klev_rec.PRE_TAX_YIELD := l_klev_rec.PRE_TAX_YIELD;
5832 END IF;
5833 IF (x_klev_rec.AFTER_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5834 x_klev_rec.AFTER_TAX_YIELD := l_klev_rec.AFTER_TAX_YIELD;
5835 END IF;
5836 IF (x_klev_rec.IMPLICIT_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
5837 x_klev_rec.IMPLICIT_INTEREST_RATE := l_klev_rec.IMPLICIT_INTEREST_RATE;
5838 END IF;
5839 IF (x_klev_rec.IMPLICIT_NON_IDC_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
5840 x_klev_rec.IMPLICIT_NON_IDC_INTEREST_RATE := l_klev_rec.IMPLICIT_NON_IDC_INTEREST_RATE;
5841 END IF;
5842 IF (x_klev_rec.PRE_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5843 x_klev_rec.PRE_TAX_IRR := l_klev_rec.PRE_TAX_IRR;
5844 END IF;
5845 IF (x_klev_rec.AFTER_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5846 x_klev_rec.AFTER_TAX_IRR := l_klev_rec.AFTER_TAX_IRR;
5847 END IF;
5848 --quote
5849 IF (x_klev_rec.SUB_PRE_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5850 x_klev_rec.SUB_PRE_TAX_YIELD := l_klev_rec.SUB_PRE_TAX_YIELD;
5851 END IF;
5852 IF (x_klev_rec.SUB_AFTER_TAX_YIELD = OKL_API.G_MISS_NUM) THEN
5853 x_klev_rec.SUB_AFTER_TAX_YIELD := l_klev_rec.SUB_AFTER_TAX_YIELD;
5854 END IF;
5855 IF (x_klev_rec.SUB_IMPL_INTEREST_RATE = OKL_API.G_MISS_NUM) THEN
5856 x_klev_rec.SUB_IMPL_INTEREST_RATE := l_klev_rec.SUB_IMPL_INTEREST_RATE;
5857 END IF;
5858 IF (x_klev_rec.SUB_IMPL_NON_IDC_INT_RATE = OKL_API.G_MISS_NUM) THEN
5859 x_klev_rec.SUB_IMPL_NON_IDC_INT_RATE := l_klev_rec.SUB_IMPL_NON_IDC_INT_RATE;
5860 END IF;
5861 IF (x_klev_rec.SUB_PRE_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5862 x_klev_rec.SUB_PRE_TAX_IRR := l_klev_rec.SUB_PRE_TAX_IRR;
5863 END IF;
5864 IF (x_klev_rec.SUB_AFTER_TAX_IRR = OKL_API.G_MISS_NUM) THEN
5865 x_klev_rec.SUB_AFTER_TAX_IRR := l_klev_rec.SUB_AFTER_TAX_IRR;
5866 END IF;
5867 --Bug# 2994971
5868 IF (x_klev_rec.ITEM_INSURANCE_CATEGORY = OKL_API.G_MISS_NUM) THEN
5869 x_klev_rec.ITEM_INSURANCE_CATEGORY := l_klev_rec.ITEM_INSURANCE_CATEGORY;
5870 END IF;
5871 --Bug# 3973640 :11.5.10+
5872 IF (x_klev_rec.QTE_ID = OKL_API.G_MISS_NUM) THEN
5873 x_klev_rec.QTE_ID := l_klev_rec.QTE_ID;
5874 END IF;
5875 IF (x_klev_rec.FUNDING_DATE = OKL_API.G_MISS_DATE) THEN
5876 x_klev_rec.FUNDING_DATE := l_klev_rec.FUNDING_DATE;
5877 END IF;
5878 IF (x_klev_rec.STREAM_TYPE_SUBCLASS = OKL_API.G_MISS_CHAR) THEN
5879 x_klev_rec.STREAM_TYPE_SUBCLASS := l_klev_rec.STREAM_TYPE_SUBCLASS;
5880 END IF;
5881
5882 --Bug# 4419339 OKLH
5883 IF (x_klev_rec.DATE_FUNDING_EXPECTED = OKL_API.G_MISS_DATE) THEN
5884 x_klev_rec.DATE_FUNDING_EXPECTED := l_klev_rec.DATE_FUNDING_EXPECTED;
5885 END IF;
5886
5887 IF (x_klev_rec.MANUFACTURER_NAME = OKL_API.G_MISS_CHAR) THEN
5888 x_klev_rec.MANUFACTURER_NAME := l_klev_rec.MANUFACTURER_NAME;
5889 END IF;
5890
5891 IF (x_klev_rec.MODEL_NUMBER = OKL_API.G_MISS_CHAR) THEN
5892 x_klev_rec.MODEL_NUMBER := l_klev_rec.MODEL_NUMBER;
5893 END IF;
5894
5895 IF (x_klev_rec.DOWN_PAYMENT_RECEIVER_CODE = OKL_API.G_MISS_CHAR) THEN
5896 x_klev_rec.DOWN_PAYMENT_RECEIVER_CODE := l_klev_rec.DOWN_PAYMENT_RECEIVER_CODE;
5897 END IF;
5898
5899 IF (x_klev_rec.CAPITALIZE_DOWN_PAYMENT_YN = OKL_API.G_MISS_CHAR) THEN
5900 x_klev_rec.CAPITALIZE_DOWN_PAYMENT_YN := l_klev_rec.CAPITALIZE_DOWN_PAYMENT_YN;
5901 END IF;
5902
5903 IF (x_klev_rec.FEE_PURPOSE_CODE = OKL_API.G_MISS_CHAR) THEN
5904 x_klev_rec.FEE_PURPOSE_CODE := l_klev_rec.FEE_PURPOSE_CODE;
5905 END IF;
5906
5907 IF (x_klev_rec.TERMINATION_VALUE = OKL_API.G_MISS_NUM) THEN
5908 x_klev_rec.TERMINATION_VALUE := l_klev_rec.TERMINATION_VALUE;
5909 END IF;
5910
5911 --Bug# 4631549
5912 IF (x_klev_rec.EXPECTED_ASSET_COST = OKL_API.G_MISS_NUM) THEN
5913 x_klev_rec.EXPECTED_ASSET_COST := l_klev_rec.EXPECTED_ASSET_COST;
5914 END IF;
5915
5916 IF (x_klev_rec.ORIG_CONTRACT_LINE_ID = OKL_API.G_MISS_NUM) THEN
5917 x_klev_rec.ORIG_CONTRACT_LINE_ID := l_klev_rec.ORIG_CONTRACT_LINE_ID;
5918 END IF;
5919
5920 --Added by JJUNEJA
5921 IF (x_klev_rec.ORIGINATION_INCOME = OKL_API.G_MISS_NUM) THEN
5922 x_klev_rec.ORIGINATION_INCOME := l_klev_rec.ORIGINATION_INCOME;
5923 END IF;
5924 --End of addition by JJUNEJA
5925
5926 --Bug# 16344245
5927 IF (x_klev_rec.AMOUNT_BALANCE_LEGACY = OKL_API.G_MISS_NUM) THEN
5928 x_klev_rec.AMOUNT_BALANCE_LEGACY := l_klev_rec.AMOUNT_BALANCE_LEGACY;
5929 END IF;
5930
5931 IF (x_klev_rec.DT_EFFECTIVE_BALANCE_LEGACY = OKL_API.G_MISS_DATE) THEN
5932 x_klev_rec.DT_EFFECTIVE_BALANCE_LEGACY := l_klev_rec.DT_EFFECTIVE_BALANCE_LEGACY;
5933 END IF;
5934
5935 RETURN(l_return_status);
5936 END populate_new_record;
5937 ----------------------------------------
5938 -- Set_Attributes for: OKL_K_LINES_V --
5939 ----------------------------------------
5940 FUNCTION Set_Attributes (
5941 p_klev_rec IN klev_rec_type,
5942 x_klev_rec OUT NOCOPY klev_rec_type
5943 ) RETURN VARCHAR2 IS
5944 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5945 BEGIN
5946 x_klev_rec := p_klev_rec;
5947 x_klev_rec.OBJECT_VERSION_NUMBER := NVL(x_klev_rec.OBJECT_VERSION_NUMBER, 0) + 1;
5948 RETURN(l_return_status);
5949 END Set_Attributes;
5950 BEGIN
5951 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
5952 G_PKG_NAME,
5953 p_init_msg_list,
5954 l_api_version,
5955 p_api_version,
5956 '_PVT',
5957 x_return_status);
5958
5959 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5960 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5961 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5962 RAISE OKC_API.G_EXCEPTION_ERROR;
5963 END IF;
5964
5965 --- Setting item attributes
5966 l_return_status := Set_Attributes(
5967 p_klev_rec, -- IN
5968 l_klev_rec); -- OUT
5969 --- If any errors happen abort API
5970
5971 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5972 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5973 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5974 RAISE OKC_API.G_EXCEPTION_ERROR;
5975 END IF;
5976
5977 l_return_status := populate_new_record(l_klev_rec, l_def_klev_rec);
5978
5979 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5980 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5981 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5982 RAISE OKC_API.G_EXCEPTION_ERROR;
5983 END IF;
5984
5985 l_def_klev_rec := fill_who_columns(l_def_klev_rec);
5986 --- Validate all non-missing attributes (Item Level Validation)
5987 l_return_status := Validate_Attributes(l_def_klev_rec);
5988 --- If any errors happen abort API
5989
5990 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5991 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5992 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5993 RAISE OKC_API.G_EXCEPTION_ERROR;
5994 END IF;
5995
5996 l_return_status := Validate_Record(l_def_klev_rec);
5997
5998 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5999 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
6000 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
6001 RAISE OKC_API.G_EXCEPTION_ERROR;
6002 END IF;
6003
6004
6005 --------------------------------------
6006 -- Move VIEW record to "Child" records
6007 --------------------------------------
6008 migrate(l_def_klev_rec, l_kle_rec);
6009 --------------------------------------------
6010 -- Call the UPDATE_ROW for each child record
6011 --------------------------------------------
6012 update_row(
6013 l_api_version,
6014 p_init_msg_list,
6015 x_return_status,
6016 x_msg_count,
6017 x_msg_data,
6018 l_kle_rec,
6019 lx_kle_rec
6020 );
6021
6022 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
6023 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
6024 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
6025 RAISE OKC_API.G_EXCEPTION_ERROR;
6026 END IF;
6027
6028 migrate(lx_kle_rec, l_def_klev_rec);
6029 x_klev_rec := l_def_klev_rec;
6030 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
6031
6032 EXCEPTION
6033 WHEN OKC_API.G_EXCEPTION_ERROR THEN
6034 x_return_status := OKC_API.HANDLE_EXCEPTIONS
6035 (
6036 l_api_name,
6037 G_PKG_NAME,
6038 'OKC_API.G_RET_STS_ERROR',
6039 x_msg_count,
6040 x_msg_data,
6041 '_PVT'
6042 );
6043 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
6044 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6045 (
6046 l_api_name,
6047 G_PKG_NAME,
6048 'OKC_API.G_RET_STS_UNEXP_ERROR',
6049 x_msg_count,
6050 x_msg_data,
6051 '_PVT'
6052 );
6053 WHEN OTHERS THEN
6054 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6055 (
6056 l_api_name,
6057 G_PKG_NAME,
6058 'OTHERS',
6059 x_msg_count,
6060 x_msg_data,
6061 '_PVT'
6062 );
6063
6064 END update_row;
6065 ----------------------------------------
6066 -- PL/SQL TBL update_row for: OKL_K_LINES_V --
6067 ----------------------------------------
6068
6069 PROCEDURE update_row(
6070
6071 p_api_version IN NUMBER,
6072 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
6073 x_return_status OUT NOCOPY VARCHAR2,
6074 x_msg_count OUT NOCOPY NUMBER,
6075 x_msg_data OUT NOCOPY VARCHAR2,
6076 p_klev_tbl IN klev_tbl_type,
6077 x_klev_tbl OUT NOCOPY klev_tbl_type) IS
6078
6079 l_api_version CONSTANT NUMBER := 1;
6080 l_api_name CONSTANT VARCHAR2(30) := 'tbl_update_row';
6081 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
6082 i NUMBER := 0;
6083 BEGIN
6084 OKC_API.init_msg_list(p_init_msg_list);
6085 -- Make sure PL/SQL table has records in it before passing
6086 IF (p_klev_tbl.COUNT > 0) THEN
6087 i := p_klev_tbl.FIRST;
6088 LOOP
6089 update_row (
6090 p_api_version => p_api_version,
6091 p_init_msg_list => OKC_API.G_FALSE,
6092 x_return_status => x_return_status,
6093 x_msg_count => x_msg_count,
6094 x_msg_data => x_msg_data,
6095 p_klev_rec => p_klev_tbl(i),
6096 x_klev_rec => x_klev_tbl(i));
6097 EXIT WHEN (i = p_klev_tbl.LAST);
6098 i := p_klev_tbl.NEXT(i);
6099 END LOOP;
6100 END IF;
6101
6102 EXCEPTION
6103 WHEN OKC_API.G_EXCEPTION_ERROR THEN
6104 x_return_status := OKC_API.HANDLE_EXCEPTIONS
6105 (
6106 l_api_name,
6107 G_PKG_NAME,
6108 'OKC_API.G_RET_STS_ERROR',
6109 x_msg_count,
6110 x_msg_data,
6111 '_PVT'
6112 );
6113 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
6114 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6115 (
6116 l_api_name,
6117 G_PKG_NAME,
6118 'OKC_API.G_RET_STS_UNEXP_ERROR',
6119 x_msg_count,
6120 x_msg_data,
6121 '_PVT'
6122 );
6123 WHEN OTHERS THEN
6124 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6125 (
6126 l_api_name,
6127 G_PKG_NAME,
6128 'OTHERS',
6129 x_msg_count,
6130 x_msg_data,
6131 '_PVT'
6132 );
6133
6134 END update_row;
6135
6136
6137
6138 ---------------------------------------------------------------------------
6139 -- PROCEDURE delete_row
6140 ---------------------------------------------------------------------------
6141
6142 ----------------------------------
6143 -- delete_row for: OKL_K_LINES --
6144 ----------------------------------
6145
6146 PROCEDURE delete_row(
6147
6148 p_api_version IN NUMBER,
6149 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
6150 x_return_status OUT NOCOPY VARCHAR2,
6151 x_msg_count OUT NOCOPY NUMBER,
6152 x_msg_data OUT NOCOPY VARCHAR2,
6153 p_kle_rec IN kle_rec_type) IS
6154
6155 l_api_version CONSTANT NUMBER := 1;
6156 l_api_name CONSTANT VARCHAR2(30) := 'rec_delete_row';
6157 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
6158 l_kle_rec kle_rec_type:= p_kle_rec;
6159 l_row_notfound BOOLEAN := TRUE;
6160 l_okl_k_lines_h_rec okl_k_lines_h_rec_type;
6161 lx_okl_k_lines_h_rec okl_k_lines_h_rec_type;
6162 BEGIN
6163 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
6164 p_init_msg_list,
6165 '_PVT',
6166 x_return_status);
6167
6168 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
6169 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
6170 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
6171 RAISE OKC_API.G_EXCEPTION_ERROR;
6172 END IF;
6173
6174 /*
6175 -- Insert into History table
6176 l_kle_rec := get_rec(l_kle_rec, l_row_notfound);
6177 IF (l_row_notfound) THEN
6178 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
6179 END IF;
6180 migrate(l_kle_rec, l_okl_k_lines_h_rec);
6181 insert_row(
6182 l_api_version,
6183 p_init_msg_list,
6184 x_return_status,
6185 x_msg_count,
6186 x_msg_data,
6187 l_okl_k_lines_h_rec,
6188 lx_okl_k_lines_h_rec
6189 );
6190
6191 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
6192 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
6193 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
6194 RAISE OKC_API.G_EXCEPTION_ERROR;
6195 END IF;
6196 */
6197 DELETE FROM OKL_K_LINES
6198 WHERE ID = l_kle_rec.id;
6199
6200 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
6201
6202 EXCEPTION
6203 WHEN OKC_API.G_EXCEPTION_ERROR THEN
6204 x_return_status := OKC_API.HANDLE_EXCEPTIONS
6205 (
6206 l_api_name,
6207 G_PKG_NAME,
6208 'OKC_API.G_RET_STS_ERROR',
6209 x_msg_count,
6210 x_msg_data,
6211 '_PVT'
6212 );
6213 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
6214 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6215 (
6216 l_api_name,
6217 G_PKG_NAME,
6218 'OKC_API.G_RET_STS_UNEXP_ERROR',
6219 x_msg_count,
6220 x_msg_data,
6221 '_PVT'
6222 );
6223 WHEN OTHERS THEN
6224 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6225 (
6226 l_api_name,
6227 G_PKG_NAME,
6228 'OTHERS',
6229 x_msg_count,
6230 x_msg_data,
6231 '_PVT'
6232 );
6233
6234 END delete_row;
6235
6236 PROCEDURE delete_row(
6237
6238 p_api_version IN NUMBER,
6239 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
6240 x_return_status OUT NOCOPY VARCHAR2,
6241 x_msg_count OUT NOCOPY NUMBER,
6242 x_msg_data OUT NOCOPY VARCHAR2,
6243 p_klev_rec IN klev_rec_type) IS
6244
6245 l_api_version CONSTANT NUMBER := 1;
6246 l_api_name CONSTANT VARCHAR2(30) := 'rec_delete_row';
6247 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
6248 l_klev_rec klev_rec_type := p_klev_rec;
6249 l_kle_rec kle_rec_type;
6250 BEGIN
6251 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
6252 G_PKG_NAME,
6253 p_init_msg_list,
6254 l_api_version,
6255 p_api_version,
6256 '_PVT',
6257 x_return_status);
6258
6259 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
6260 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
6261 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
6262 RAISE OKC_API.G_EXCEPTION_ERROR;
6263 END IF;
6264
6265 --------------------------------------
6266 -- Move VIEW record to "Child" records
6267 --------------------------------------
6268 migrate(l_klev_rec, l_kle_rec);
6269 --------------------------------------------
6270 -- Call the DELETE_ROW for each child record
6271 --------------------------------------------
6272 delete_row(
6273 l_api_version,
6274 p_init_msg_list,
6275 x_return_status,
6276 x_msg_count,
6277 x_msg_data,
6278 l_kle_rec
6279 );
6280
6281 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
6282 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
6283 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
6284 RAISE OKC_API.G_EXCEPTION_ERROR;
6285 END IF;
6286
6287 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
6288
6289 EXCEPTION
6290 WHEN OKC_API.G_EXCEPTION_ERROR THEN
6291 x_return_status := OKC_API.HANDLE_EXCEPTIONS
6292 (
6293 l_api_name,
6294 G_PKG_NAME,
6295 'OKC_API.G_RET_STS_ERROR',
6296 x_msg_count,
6297 x_msg_data,
6298 '_PVT'
6299 );
6300 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
6301 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6302 (
6303 l_api_name,
6304 G_PKG_NAME,
6305 'OKC_API.G_RET_STS_UNEXP_ERROR',
6306 x_msg_count,
6307 x_msg_data,
6308 '_PVT'
6309 );
6310 WHEN OTHERS THEN
6311 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6312 (
6313 l_api_name,
6314 G_PKG_NAME,
6315 'OTHERS',
6316 x_msg_count,
6317 x_msg_data,
6318 '_PVT'
6319 );
6320
6321 END delete_row;
6322 ----------------------------------------
6323 -- PL/SQL TBL delete_row for: OKL_K_LINES_V --
6324 ----------------------------------------
6325
6326 PROCEDURE delete_row(
6327
6328 p_api_version IN NUMBER,
6329 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
6330 x_return_status OUT NOCOPY VARCHAR2,
6331 x_msg_count OUT NOCOPY NUMBER,
6332 x_msg_data OUT NOCOPY VARCHAR2,
6333 p_klev_tbl IN klev_tbl_type) IS
6334
6335 l_api_version CONSTANT NUMBER := 1;
6336 l_api_name CONSTANT VARCHAR2(30) := 'tbl_delete_row';
6337 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
6338 i NUMBER := 0;
6339 BEGIN
6340 OKC_API.init_msg_list(p_init_msg_list);
6341 -- Make sure PL/SQL table has records in it before passing
6342 IF (p_klev_tbl.COUNT > 0) THEN
6343 i := p_klev_tbl.FIRST;
6344 LOOP
6345 delete_row (
6346 p_api_version => p_api_version,
6347 p_init_msg_list => OKC_API.G_FALSE,
6348 x_return_status => x_return_status,
6349 x_msg_count => x_msg_count,
6350 x_msg_data => x_msg_data,
6351 p_klev_rec => p_klev_tbl(i));
6352 EXIT WHEN (i = p_klev_tbl.LAST);
6353 i := p_klev_tbl.NEXT(i);
6354 END LOOP;
6355 END IF;
6356
6357 EXCEPTION
6358 WHEN OKC_API.G_EXCEPTION_ERROR THEN
6359 x_return_status := OKC_API.HANDLE_EXCEPTIONS
6360 (
6361 l_api_name,
6362 G_PKG_NAME,
6363 'OKC_API.G_RET_STS_ERROR',
6364 x_msg_count,
6365 x_msg_data,
6366 '_PVT'
6367 );
6368 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
6369 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6370 (
6371 l_api_name,
6372 G_PKG_NAME,
6373 'OKC_API.G_RET_STS_UNEXP_ERROR',
6374 x_msg_count,
6375 x_msg_data,
6376 '_PVT'
6377 );
6378 WHEN OTHERS THEN
6379 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
6380 (
6381 l_api_name,
6382 G_PKG_NAME,
6383 'OTHERS',
6384 x_msg_count,
6385 x_msg_data,
6386 '_PVT'
6387 );
6388
6389 END delete_row;
6390
6391
6392 ---------------------------------------------------------------------------
6393 -- PROCEDURE versioning
6394 ---------------------------------------------------------------------------
6395
6396 FUNCTION create_version(
6397 p_chr_id IN NUMBER,
6398 p_major_version IN NUMBER) RETURN VARCHAR2 IS
6399
6400 l_return_status VARCHAR2(1):= OKC_API.G_RET_STS_SUCCESS;
6401
6402 BEGIN
6403 INSERT INTO OKL_K_LINES_H
6404 (
6405 major_version,
6406 ID,
6407 KLE_ID,
6408 STY_ID,
6409 OBJECT_VERSION_NUMBER,
6410 LAO_AMOUNT,
6411 FEE_CHARGE,
6412 TITLE_DATE,
6413 DATE_RESIDUAL_LAST_REVIEW,
6414 DATE_LAST_REAMORTISATION,
6415 TERMINATION_PURCHASE_AMOUNT,
6416 DATE_LAST_CLEANUP,
6417 REMARKETED_AMOUNT,
6418 DATE_REMARKETED,
6419 REMARKET_MARGIN,
6420 REPURCHASED_AMOUNT,
6421 DATE_REPURCHASED,
6422 GAIN_LOSS,
6423 FLOOR_AMOUNT,
6424 PREVIOUS_CONTRACT,
6425 TRACKED_RESIDUAL,
6426 DATE_TITLE_RECEIVED,
6427 ESTIMATED_OEC,
6428 RESIDUAL_PERCENTAGE,
6429 CAPITAL_REDUCTION,
6430 VENDOR_ADVANCE_PAID,
6431 TRADEIN_AMOUNT,
6432 DELIVERED_DATE,
6433 YEAR_OF_MANUFACTURE,
6434 INITIAL_DIRECT_COST,
6435 OCCUPANCY,
6436 DATE_LAST_INSPECTION,
6437 DATE_NEXT_INSPECTION_DUE,
6438 WEIGHTED_AVERAGE_LIFE,
6439 BOND_EQUIVALENT_YIELD,
6440 REFINANCE_AMOUNT,
6441 YEAR_BUILT,
6442 COVERAGE_RATIO,
6443 GROSS_SQUARE_FOOTAGE,
6444 NET_RENTABLE,
6445 DATE_LETTER_ACCEPTANCE,
6446 DATE_COMMITMENT_EXPIRATION,
6447 DATE_APPRAISAL,
6448 APPRAISAL_VALUE,
6449 RESIDUAL_VALUE,
6450 PERCENT,
6451 COVERAGE,
6452 LRV_AMOUNT,
6453 AMOUNT,
6454 LRS_PERCENT,
6455 EVERGREEN_PERCENT,
6456 PERCENT_STAKE,
6457 AMOUNT_STAKE,
6458 DATE_SOLD,
6459 STY_ID_FOR,
6460 ATTRIBUTE_CATEGORY,
6461 ATTRIBUTE1,
6462 ATTRIBUTE2,
6463 ATTRIBUTE3,
6464 ATTRIBUTE4,
6465 ATTRIBUTE5,
6466 ATTRIBUTE6,
6467 ATTRIBUTE7,
6468 ATTRIBUTE8,
6469 ATTRIBUTE9,
6470 ATTRIBUTE10,
6471 ATTRIBUTE11,
6472 ATTRIBUTE12,
6473 ATTRIBUTE13,
6474 ATTRIBUTE14,
6475 ATTRIBUTE15,
6476 CREATED_BY,
6477 CREATION_DATE,
6478 LAST_UPDATED_BY,
6479 LAST_UPDATE_DATE,
6480 LAST_UPDATE_LOGIN,
6481 NTY_CODE,
6482 FCG_CODE,
6483 PRC_CODE,
6484 RE_LEASE_YN,
6485 PRESCRIBED_ASSET_YN,
6486 CREDIT_TENANT_YN,
6487 SECURED_DEAL_YN,
6488 CLG_ID,
6489 DATE_FUNDING,
6490 DATE_FUNDING_REQUIRED,
6491 DATE_ACCEPTED,
6492 DATE_DELIVERY_EXPECTED,
6493 OEC,
6494 CAPITAL_AMOUNT,
6495 RESIDUAL_GRNTY_AMOUNT,
6496 RESIDUAL_CODE,
6497 RVI_PREMIUM,
6498 CREDIT_NATURE,
6499 CAPITALIZED_INTEREST,
6500 CAPITAL_REDUCTION_PERCENT,
6501 --Bug# 2697681 11.5.9
6502 DATE_PAY_INVESTOR_START,
6503 PAY_INVESTOR_FREQUENCY,
6504 PAY_INVESTOR_EVENT,
6505 PAY_INVESTOR_REMITTANCE_DAYS,
6506 --financed fees
6507 FEE_TYPE,
6508 --Bug#3143522 : 11.5.10
6509 --subsidy
6510 SUBSIDY_ID,
6511 --SUBSIDIZED_OEC,
6512 --SUBSIDIZED_CAP_AMOUNT,
6513 SUBSIDY_OVERRIDE_AMOUNT,
6514 --financed fee
6515 PRE_TAX_YIELD,
6516 AFTER_TAX_YIELD,
6517 IMPLICIT_INTEREST_RATE,
6518 IMPLICIT_NON_IDC_INTEREST_RATE,
6519 PRE_TAX_IRR,
6520 AFTER_TAX_IRR,
6521 --quote
6522 SUB_PRE_TAX_YIELD,
6523 SUB_AFTER_TAX_YIELD,
6524 SUB_IMPL_INTEREST_RATE,
6525 SUB_IMPL_NON_IDC_INT_RATE,
6526 SUB_PRE_TAX_IRR,
6527 SUB_AFTER_TAX_IRR,
6528 --Bug# 2994971
6529 ITEM_INSURANCE_CATEGORY,
6530 --Bug# 3973640 :11.5.10+
6531 QTE_ID,
6532 FUNDING_DATE,
6533 STREAM_TYPE_SUBCLASS,
6534 --Bug# 4419339 OKLH
6535 DATE_FUNDING_EXPECTED,
6536 MANUFACTURER_NAME,
6537 MODEL_NUMBER,
6538 DOWN_PAYMENT_RECEIVER_CODE,
6539 CAPITALIZE_DOWN_PAYMENT_YN,
6540 --Bug#4373029
6541 FEE_PURPOSE_CODE,
6542 TERMINATION_VALUE,
6543 --Bug# 4631549
6544 EXPECTED_ASSET_COST,
6545 ORIG_CONTRACT_LINE_ID,
6546 --Bug# 16344245
6547 ORIGINATION_INCOME,
6548 AMOUNT_BALANCE_LEGACY,
6549 DT_EFFECTIVE_BALANCE_LEGACY
6550
6551 )
6552 SELECT
6553 p_major_version,
6554 ID,
6555 KLE_ID,
6556 STY_ID,
6557 OBJECT_VERSION_NUMBER,
6558 LAO_AMOUNT,
6559 FEE_CHARGE,
6560 TITLE_DATE,
6561 DATE_RESIDUAL_LAST_REVIEW,
6562 DATE_LAST_REAMORTISATION,
6563 TERMINATION_PURCHASE_AMOUNT,
6564 DATE_LAST_CLEANUP,
6565 REMARKETED_AMOUNT,
6566 DATE_REMARKETED,
6567 REMARKET_MARGIN,
6568 REPURCHASED_AMOUNT,
6569 DATE_REPURCHASED,
6570 GAIN_LOSS,
6571 FLOOR_AMOUNT,
6572 PREVIOUS_CONTRACT,
6573 TRACKED_RESIDUAL,
6574 DATE_TITLE_RECEIVED,
6575 ESTIMATED_OEC,
6576 RESIDUAL_PERCENTAGE,
6577 CAPITAL_REDUCTION,
6578 VENDOR_ADVANCE_PAID,
6579 TRADEIN_AMOUNT,
6580 DELIVERED_DATE,
6581 YEAR_OF_MANUFACTURE,
6582 INITIAL_DIRECT_COST,
6583 OCCUPANCY,
6584 DATE_LAST_INSPECTION,
6585 DATE_NEXT_INSPECTION_DUE,
6586 WEIGHTED_AVERAGE_LIFE,
6587 BOND_EQUIVALENT_YIELD,
6588 REFINANCE_AMOUNT,
6589 YEAR_BUILT,
6590 COVERAGE_RATIO,
6591 GROSS_SQUARE_FOOTAGE,
6592 NET_RENTABLE,
6593 DATE_LETTER_ACCEPTANCE,
6594 DATE_COMMITMENT_EXPIRATION,
6595 DATE_APPRAISAL,
6596 APPRAISAL_VALUE,
6597 RESIDUAL_VALUE,
6598 PERCENT,
6599 COVERAGE,
6600 LRV_AMOUNT,
6601 AMOUNT,
6602 LRS_PERCENT,
6603 EVERGREEN_PERCENT,
6604 PERCENT_STAKE,
6605 AMOUNT_STAKE,
6606 DATE_SOLD,
6607 STY_ID_FOR,
6608 ATTRIBUTE_CATEGORY,
6609 ATTRIBUTE1,
6610 ATTRIBUTE2,
6611 ATTRIBUTE3,
6612 ATTRIBUTE4,
6613 ATTRIBUTE5,
6614 ATTRIBUTE6,
6615 ATTRIBUTE7,
6616 ATTRIBUTE8,
6617 ATTRIBUTE9,
6618 ATTRIBUTE10,
6619 ATTRIBUTE11,
6620 ATTRIBUTE12,
6621 ATTRIBUTE13,
6622 ATTRIBUTE14,
6623 ATTRIBUTE15,
6624 CREATED_BY,
6625 CREATION_DATE,
6626 LAST_UPDATED_BY,
6627 LAST_UPDATE_DATE,
6628 LAST_UPDATE_LOGIN,
6629 NTY_CODE,
6630 FCG_CODE,
6631 PRC_CODE,
6632 RE_LEASE_YN,
6633 PRESCRIBED_ASSET_YN,
6634 CREDIT_TENANT_YN,
6635 SECURED_DEAL_YN,
6636 CLG_ID,
6637 DATE_FUNDING,
6638 DATE_FUNDING_REQUIRED,
6639 DATE_ACCEPTED,
6640 DATE_DELIVERY_EXPECTED,
6641 OEC,
6642 CAPITAL_AMOUNT,
6643 RESIDUAL_GRNTY_AMOUNT,
6644 RESIDUAL_CODE,
6645 RVI_PREMIUM,
6646 CREDIT_NATURE,
6647 CAPITALIZED_INTEREST,
6648 CAPITAL_REDUCTION_PERCENT,
6649 --Bug# 2697681 11.5.9
6650 DATE_PAY_INVESTOR_START,
6651 PAY_INVESTOR_FREQUENCY,
6652 PAY_INVESTOR_EVENT,
6653 PAY_INVESTOR_REMITTANCE_DAYS,
6654 --financed fees
6655 FEE_TYPE,
6656 --Bug#3143522 : 11.5.10
6657 --subsidy
6658 SUBSIDY_ID,
6659 --SUBSIDIZED_OEC,
6660 --SUBSIDIZED_CAP_AMOUNT,
6661 SUBSIDY_OVERRIDE_AMOUNT,
6662 --financed fee
6663 PRE_TAX_YIELD,
6664 AFTER_TAX_YIELD,
6665 IMPLICIT_INTEREST_RATE,
6666 IMPLICIT_NON_IDC_INTEREST_RATE,
6667 PRE_TAX_IRR,
6668 AFTER_TAX_IRR,
6669 --quote
6670 SUB_PRE_TAX_YIELD,
6671 SUB_AFTER_TAX_YIELD,
6672 SUB_IMPL_INTEREST_RATE,
6673 SUB_IMPL_NON_IDC_INT_RATE,
6674 SUB_PRE_TAX_IRR,
6675 SUB_AFTER_TAX_IRR,
6676 --Bug# 2994971
6677 ITEM_INSURANCE_CATEGORY,
6678 --Bug# 3973640 : 11.5.10+
6679 QTE_ID,
6680 FUNDING_DATE,
6681 STREAM_TYPE_SUBCLASS,
6682 --Bug# 4419339 OKLH
6683 DATE_FUNDING_EXPECTED,
6684 MANUFACTURER_NAME,
6685 MODEL_NUMBER,
6686 DOWN_PAYMENT_RECEIVER_CODE,
6687 CAPITALIZE_DOWN_PAYMENT_YN,
6688 FEE_PURPOSE_CODE,
6689 TERMINATION_VALUE,
6690 --Bug# 4631549
6691 EXPECTED_ASSET_COST,
6692 ORIG_CONTRACT_LINE_ID,
6693 --Bug# 16344245
6694 ORIGINATION_INCOME,
6695 AMOUNT_BALANCE_LEGACY,
6696 DT_EFFECTIVE_BALANCE_LEGACY
6697
6698 FROM OKL_K_LINES
6699 WHERE id in (select id from okc_k_lines_b where dnz_chr_id = p_chr_id);
6700
6701 RETURN l_return_status;
6702 EXCEPTION
6703 -- other appropriate handlers
6704 WHEN OTHERS THEN
6705 -- store SQL error message on message stack
6706 OKC_API.SET_MESSAGE(p_app_name => okc_version_pvt.G_APP_NAME,
6707 p_msg_name => okc_version_pvt.G_UNEXPECTED_ERROR,
6708 p_token1 => okc_version_pvt.G_SQLCODE_TOKEN,
6709 p_token1_value => sqlcode,
6710 p_token2 => okc_version_pvt.G_SQLERRM_TOKEN,
6711 p_token2_value => sqlerrm);
6712
6713 -- notify UNEXPECTED error
6714 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
6715 return l_return_status;
6716 END create_version;
6717
6718 FUNCTION restore_version(
6719 p_chr_id IN NUMBER,
6720 p_major_version IN NUMBER) RETURN VARCHAR2 IS
6721
6722 l_return_status VARCHAR2(1):= OKC_API.G_RET_STS_SUCCESS;
6723
6724 BEGIN
6725 INSERT INTO OKL_K_LINES
6726 (
6727 ID,
6728 KLE_ID,
6729 STY_ID,
6730 OBJECT_VERSION_NUMBER,
6731 LAO_AMOUNT,
6732 FEE_CHARGE,
6733 TITLE_DATE,
6734 DATE_RESIDUAL_LAST_REVIEW,
6735 DATE_LAST_REAMORTISATION,
6736 TERMINATION_PURCHASE_AMOUNT,
6737 DATE_LAST_CLEANUP,
6738 REMARKETED_AMOUNT,
6739 DATE_REMARKETED,
6740 REMARKET_MARGIN,
6741 REPURCHASED_AMOUNT,
6742 DATE_REPURCHASED,
6743 GAIN_LOSS,
6744 FLOOR_AMOUNT,
6745 PREVIOUS_CONTRACT,
6746 TRACKED_RESIDUAL,
6747 DATE_TITLE_RECEIVED,
6748 ESTIMATED_OEC,
6749 RESIDUAL_PERCENTAGE,
6750 CAPITAL_REDUCTION,
6751 VENDOR_ADVANCE_PAID,
6752 TRADEIN_AMOUNT,
6753 DELIVERED_DATE,
6754 YEAR_OF_MANUFACTURE,
6755 INITIAL_DIRECT_COST,
6756 OCCUPANCY,
6757 DATE_LAST_INSPECTION,
6758 DATE_NEXT_INSPECTION_DUE,
6759 WEIGHTED_AVERAGE_LIFE,
6760 BOND_EQUIVALENT_YIELD,
6761 REFINANCE_AMOUNT,
6762 YEAR_BUILT,
6763 COVERAGE_RATIO,
6764 GROSS_SQUARE_FOOTAGE,
6765 NET_RENTABLE,
6766 DATE_LETTER_ACCEPTANCE,
6767 DATE_COMMITMENT_EXPIRATION,
6768 DATE_APPRAISAL,
6769 APPRAISAL_VALUE,
6770 RESIDUAL_VALUE,
6771 PERCENT,
6772 COVERAGE,
6773 LRV_AMOUNT,
6774 AMOUNT,
6775 LRS_PERCENT,
6776 EVERGREEN_PERCENT,
6777 PERCENT_STAKE,
6778 AMOUNT_STAKE,
6779 DATE_SOLD,
6780 STY_ID_FOR,
6781 ATTRIBUTE_CATEGORY,
6782 ATTRIBUTE1,
6783 ATTRIBUTE2,
6784 ATTRIBUTE3,
6785 ATTRIBUTE4,
6786 ATTRIBUTE5,
6787 ATTRIBUTE6,
6788 ATTRIBUTE7,
6789 ATTRIBUTE8,
6790 ATTRIBUTE9,
6791 ATTRIBUTE10,
6792 ATTRIBUTE11,
6793 ATTRIBUTE12,
6794 ATTRIBUTE13,
6795 ATTRIBUTE14,
6796 ATTRIBUTE15,
6797 CREATED_BY,
6798 CREATION_DATE,
6799 LAST_UPDATED_BY,
6800 LAST_UPDATE_DATE,
6801 LAST_UPDATE_LOGIN,
6802 NTY_CODE,
6803 FCG_CODE,
6804 PRC_CODE,
6805 RE_LEASE_YN,
6806 PRESCRIBED_ASSET_YN,
6807 CREDIT_TENANT_YN,
6808 SECURED_DEAL_YN,
6809 CLG_ID,
6810 DATE_FUNDING,
6811 DATE_FUNDING_REQUIRED,
6812 DATE_ACCEPTED,
6813 DATE_DELIVERY_EXPECTED,
6814 OEC,
6815 CAPITAL_AMOUNT,
6816 RESIDUAL_GRNTY_AMOUNT,
6817 RESIDUAL_CODE,
6818 RVI_PREMIUM,
6819 CREDIT_NATURE,
6820 CAPITALIZED_INTEREST,
6821 CAPITAL_REDUCTION_PERCENT,
6822 --Bug# 2697681 11.5.9
6823 DATE_PAY_INVESTOR_START,
6824 PAY_INVESTOR_FREQUENCY,
6825 PAY_INVESTOR_EVENT,
6826 PAY_INVESTOR_REMITTANCE_DAYS,
6827 --financed fees
6828 FEE_TYPE,
6829 --Bug#3143522 : 11.5.10
6830 --subsidy
6831 SUBSIDY_ID,
6832 --SUBSIDIZED_OEC,
6833 --SUBSIDIZED_CAP_AMOUNT,
6834 SUBSIDY_OVERRIDE_AMOUNT,
6835 --financed fee
6836 PRE_TAX_YIELD,
6837 AFTER_TAX_YIELD,
6838 IMPLICIT_INTEREST_RATE,
6839 IMPLICIT_NON_IDC_INTEREST_RATE,
6840 PRE_TAX_IRR,
6841 AFTER_TAX_IRR,
6842 --quote
6843 SUB_PRE_TAX_YIELD,
6844 SUB_AFTER_TAX_YIELD,
6845 SUB_IMPL_INTEREST_RATE,
6846 SUB_IMPL_NON_IDC_INT_RATE,
6847 SUB_PRE_TAX_IRR,
6848 SUB_AFTER_TAX_IRR,
6849 --Bug# 2994971
6850 ITEM_INSURANCE_CATEGORY,
6851 --Bug# 3973640:11.5.10+
6852 QTE_ID,
6853 FUNDING_DATE,
6854 STREAM_TYPE_SUBCLASS,
6855 --Bug# 4419339 OKLH
6856 DATE_FUNDING_EXPECTED,
6857 MANUFACTURER_NAME,
6858 MODEL_NUMBER,
6859 DOWN_PAYMENT_RECEIVER_CODE,
6860 CAPITALIZE_DOWN_PAYMENT_YN,
6861 --Bug#4373029
6862 FEE_PURPOSE_CODE,
6863 TERMINATION_VALUE,
6864 --Bug# 4631549
6865 EXPECTED_ASSET_COST ,
6866 ORIG_CONTRACT_LINE_ID,
6867 --Bug# 16344245
6868 ORIGINATION_INCOME,
6869 AMOUNT_BALANCE_LEGACY,
6870 DT_EFFECTIVE_BALANCE_LEGACY
6871
6872 )
6873 SELECT
6874 ID,
6875 KLE_ID,
6876 STY_ID,
6877 OBJECT_VERSION_NUMBER,
6878 LAO_AMOUNT,
6879 FEE_CHARGE,
6880 TITLE_DATE,
6881 DATE_RESIDUAL_LAST_REVIEW,
6882 DATE_LAST_REAMORTISATION,
6883 TERMINATION_PURCHASE_AMOUNT,
6884 DATE_LAST_CLEANUP,
6885 REMARKETED_AMOUNT,
6886 DATE_REMARKETED,
6887 REMARKET_MARGIN,
6888 REPURCHASED_AMOUNT,
6889 DATE_REPURCHASED,
6890 GAIN_LOSS,
6891 FLOOR_AMOUNT,
6892 PREVIOUS_CONTRACT,
6893 TRACKED_RESIDUAL,
6894 DATE_TITLE_RECEIVED,
6895 ESTIMATED_OEC,
6896 RESIDUAL_PERCENTAGE,
6897 CAPITAL_REDUCTION,
6898 VENDOR_ADVANCE_PAID,
6899 TRADEIN_AMOUNT,
6900 DELIVERED_DATE,
6901 YEAR_OF_MANUFACTURE,
6902 INITIAL_DIRECT_COST,
6903 OCCUPANCY,
6904 DATE_LAST_INSPECTION,
6905 DATE_NEXT_INSPECTION_DUE,
6906 WEIGHTED_AVERAGE_LIFE,
6907 BOND_EQUIVALENT_YIELD,
6908 REFINANCE_AMOUNT,
6909 YEAR_BUILT,
6910 COVERAGE_RATIO,
6911 GROSS_SQUARE_FOOTAGE,
6912 NET_RENTABLE,
6913 DATE_LETTER_ACCEPTANCE,
6914 DATE_COMMITMENT_EXPIRATION,
6915 DATE_APPRAISAL,
6916 APPRAISAL_VALUE,
6917 RESIDUAL_VALUE,
6918 PERCENT,
6919 COVERAGE,
6920 LRV_AMOUNT,
6921 AMOUNT,
6922 LRS_PERCENT,
6923 EVERGREEN_PERCENT,
6924 PERCENT_STAKE,
6925 AMOUNT_STAKE,
6926 DATE_SOLD,
6927 STY_ID_FOR,
6928 ATTRIBUTE_CATEGORY,
6929 ATTRIBUTE1,
6930 ATTRIBUTE2,
6931 ATTRIBUTE3,
6932 ATTRIBUTE4,
6933 ATTRIBUTE5,
6934 ATTRIBUTE6,
6935 ATTRIBUTE7,
6936 ATTRIBUTE8,
6937 ATTRIBUTE9,
6938 ATTRIBUTE10,
6939 ATTRIBUTE11,
6940 ATTRIBUTE12,
6941 ATTRIBUTE13,
6942 ATTRIBUTE14,
6943 ATTRIBUTE15,
6944 CREATED_BY,
6945 CREATION_DATE,
6946 LAST_UPDATED_BY,
6947 LAST_UPDATE_DATE,
6948 LAST_UPDATE_LOGIN,
6949 NTY_CODE,
6950 FCG_CODE,
6951 PRC_CODE,
6952 RE_LEASE_YN,
6953 PRESCRIBED_ASSET_YN,
6954 CREDIT_TENANT_YN,
6955 SECURED_DEAL_YN,
6956 CLG_ID,
6957 DATE_FUNDING,
6958 DATE_FUNDING_REQUIRED,
6959 DATE_ACCEPTED,
6960 DATE_DELIVERY_EXPECTED,
6961 OEC,
6962 CAPITAL_AMOUNT,
6963 RESIDUAL_GRNTY_AMOUNT,
6964 RESIDUAL_CODE,
6965 RVI_PREMIUM,
6966 CREDIT_NATURE,
6967 CAPITALIZED_INTEREST,
6968 CAPITAL_REDUCTION_PERCENT,
6969 --Bug# 2697681 11.5.9
6970 DATE_PAY_INVESTOR_START,
6971 PAY_INVESTOR_FREQUENCY,
6972 PAY_INVESTOR_EVENT,
6973 PAY_INVESTOR_REMITTANCE_DAYS,
6974 --financed fees
6975 FEE_TYPE,
6976 --Bug#3143522 11.5.10
6977 --subsidy
6978 SUBSIDY_ID,
6979 --SUBSIDIZED_OEC,
6980 --SUBSIDIZED_CAP_AMOUNT,
6981 SUBSIDY_OVERRIDE_AMOUNT,
6982 --financed fee
6983 PRE_TAX_YIELD,
6984 AFTER_TAX_YIELD,
6985 IMPLICIT_INTEREST_RATE,
6986 IMPLICIT_NON_IDC_INTEREST_RATE,
6987 PRE_TAX_IRR,
6988 AFTER_TAX_IRR,
6989 --quote
6990 SUB_PRE_TAX_YIELD,
6991 SUB_AFTER_TAX_YIELD,
6992 SUB_IMPL_INTEREST_RATE,
6993 SUB_IMPL_NON_IDC_INT_RATE,
6994 SUB_PRE_TAX_IRR,
6995 SUB_AFTER_TAX_IRR,
6996 --Bug#2994971
6997 ITEM_INSURANCE_CATEGORY,
6998 --Bug# 3973640 :11.5.10+
6999 QTE_ID,
7000 FUNDING_DATE,
7001 STREAM_TYPE_SUBCLASS,
7002 --Bug# 4419339 :OKLH
7003 DATE_FUNDING_EXPECTED,
7004 MANUFACTURER_NAME,
7005 MODEL_NUMBER,
7006 DOWN_PAYMENT_RECEIVER_CODE,
7007 CAPITALIZE_DOWN_PAYMENT_YN,
7008 --Bug# 4373029 : OKLH Sales Tax
7009 FEE_PURPOSE_CODE,
7010 TERMINATION_VALUE,
7011 --Bug# 4631549
7012 EXPECTED_ASSET_COST,
7013 ORIG_CONTRACT_LINE_ID,
7014 --Bug# 16344245
7015 ORIGINATION_INCOME,
7016 AMOUNT_BALANCE_LEGACY,
7017 DT_EFFECTIVE_BALANCE_LEGACY
7018
7019 FROM OKL_K_LINES_H
7020 WHERE id in (select id from okc_k_lines_b where dnz_chr_id = p_chr_id) and major_version = p_major_version;
7021
7022
7023 RETURN l_return_status;
7024 EXCEPTION
7025 -- other appropriate handlers
7026 WHEN OTHERS THEN
7027 -- store SQL error message on message stack
7028 OKC_API.SET_MESSAGE(p_app_name => okc_version_pvt.G_APP_NAME,
7029 p_msg_name => okc_version_pvt.G_UNEXPECTED_ERROR,
7030 p_token1 => okc_version_pvt.G_SQLCODE_TOKEN,
7031 p_token1_value => sqlcode,
7032 p_token2 => okc_version_pvt.G_SQLERRM_TOKEN,
7033 p_token2_value => sqlerrm);
7034
7035 -- notify UNEXPECTED error
7036 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
7037 return l_return_status;
7038 END restore_version;
7039
7040
7041 END OKL_KLE_PVT;