[Home] [Help]
PACKAGE BODY: APPS.OKL_KHR_PVT
Source
1 Package Body OKL_KHR_PVT AS
2 /* $Header: OKLSKHRB.pls 120.4 2006/11/10 06:20:06 dpsingh noship $ */
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_HEADERS_V';
13
14 G_EXCEPTION_HALT_VALIDATION exception;
15
16
17 -- ********************* HAND CODED VALIDATION ********************************
18
19 -- Start of comments
20 --
21 -- Procedure Name : validate_khr_id
22 -- Description : validates precense of the khr_id for the record
23 -- Business Rules : required field
24 -- Parameters :
25 -- Version :
26 -- End of comments
27 procedure validate_khr_id(x_return_status OUT NOCOPY VARCHAR2,
28 p_khrv_rec IN khrv_rec_type) is
29 l_dummy_var VARCHAR2(1) := '?';
30 Cursor l_chrv_csr Is
31 select 'x'
32 from OKC_K_HEADERS_B
33 where ID = p_khrv_rec.khr_id;
34 begin
35 -- initialize return status
36 x_return_status := OKC_API.G_RET_STS_SUCCESS;
37
38 -- enforce foreign key, if data exists
39 if (p_khrv_rec.khr_id <> OKC_API.G_MISS_NUM) AND (p_khrv_rec.khr_id IS NOT NULL) then
40 Open l_chrv_csr;
41 Fetch l_chrv_csr Into l_dummy_var;
42 Close l_chrv_csr;
43
44 -- if l_dummy_var still set to default, data was not found
45 If (l_dummy_var = '?') Then
46 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
47 p_msg_name => g_no_parent_record,
48 p_token1 => g_col_name_token,
49 p_token1_value=> 'khr_id',
50 p_token2 => g_child_table_token,
51 p_token2_value=> G_VIEW,
52 p_token3 => g_parent_table_token,
53 p_token3_value=> 'OKL_K_HEADERS_V');
54 -- notify caller of an error
55 x_return_status := OKC_API.G_RET_STS_ERROR;
56 End If;
57 end if;
58 exception
59 when G_EXCEPTION_HALT_VALIDATION then
60 -- no processing necessary; validation can continue with the next column
61 null;
62
63 when OTHERS then
64 -- store SQL error message on message stack for caller
65 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
66 p_msg_name => G_UNEXPECTED_ERROR,
67 p_token1 => g_sqlcode_token,
68 p_token1_value => sqlcode,
69 p_token2 => g_sqlerrm_token,
70 p_token2_value => sqlerrm);
71 -- notify caller of an error
72 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
73 end validate_khr_id;
74
75
76 -- Start of comments
77 --
78 -- Procedure Name : validate_pdt_id
79 -- Description : validates precense of the pdt_id for the record
80 -- Business Rules : required field
81 -- Parameters :
82 -- Version :
83 -- End of comments
84 procedure validate_pdt_id(x_return_status OUT NOCOPY VARCHAR2,
85 p_khrv_rec IN khrv_rec_type) is
86 l_dummy_var VARCHAR2(1) := '?';
87 Cursor l_chrv_csr Is
88 select 'x'
89 from OKL_PRODUCTS
90 where ID = p_khrv_rec.pdt_id;
91 begin
92 -- initialize return status
93 x_return_status := OKC_API.G_RET_STS_SUCCESS;
94
95 -- enforce foreign key, if data exists
96 if (p_khrv_rec.pdt_id <> OKC_API.G_MISS_NUM) AND (p_khrv_rec.pdt_id IS NOT NULL) then
97 Open l_chrv_csr;
98 Fetch l_chrv_csr Into l_dummy_var;
99 Close l_chrv_csr;
100
101 -- if l_dummy_var still set to default, data was not found
102 If (l_dummy_var = '?') Then
103 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
104 p_msg_name => g_no_parent_record,
105 p_token1 => g_col_name_token,
106 p_token1_value=> 'pdt_id',
107 p_token2 => g_child_table_token,
108 p_token2_value=> G_VIEW,
109 p_token3 => g_parent_table_token,
110 p_token3_value=> 'OKL_K_HEADERS_V');
111 -- notify caller of an error
112 x_return_status := OKC_API.G_RET_STS_ERROR;
113 End If;
114 end if;
115 exception
116 when G_EXCEPTION_HALT_VALIDATION then
117 -- no processing necessary; validation can continue with the next column
118 null;
119
120 when OTHERS then
121 -- store SQL error message on message stack for caller
122 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
123 p_msg_name => G_UNEXPECTED_ERROR,
124 p_token1 => g_sqlcode_token,
125 p_token1_value => sqlcode,
126 p_token2 => g_sqlerrm_token,
127 p_token2_value => sqlerrm);
128 -- notify caller of an error
129 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
130 end validate_pdt_id;
131
132
133 -- Added by dpsingh
134 ---------------------------------------------------------------------------
135 -- PROCEDURE Validate_LE_Id
136 ---------------------------------------------------------------------------
137 -- Start of comments
138 --
139 -- Procedure Name : Validate_LE_Id
140 -- Description :
141 -- Business Rules :
142 -- Parameters :
143 -- Version : 1.0
144 -- End of comments
145 ---------------------------------------------------------------------------
146 PROCEDURE Validate_LE_Id(p_khrv_rec IN khrv_rec_type
147 ,x_return_status OUT NOCOPY VARCHAR2)
148 IS
149 l_exists NUMBER(1);
150 item_not_found_error EXCEPTION;
151
152 BEGIN
153
154 x_return_status := Okc_Api.G_RET_STS_SUCCESS;
155
156 IF (p_khrv_rec.legal_entity_id IS NOT NULL) AND
157 (p_khrv_rec.legal_entity_id <> Okl_Api.G_MISS_NUM) THEN
158 l_exists := OKL_LEGAL_ENTITY_UTIL.check_le_id_exists(p_khrv_rec.legal_entity_id) ;
159 IF (l_exists<>1) THEN
160 Okc_Api.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'LEGAL_ENTITY_ID');
161 RAISE item_not_found_error;
162 END IF;
163 END IF;
164
165 EXCEPTION
166 WHEN item_not_found_error THEN
167 x_return_status := Okc_Api.G_RET_STS_ERROR;
168
169 WHEN OTHERS THEN
170 -- store SQL error message on message stack for caller
171 Okc_Api.SET_MESSAGE(p_app_name => g_app_name
172 ,p_msg_name => g_unexpected_error
173 ,p_token1 => g_sqlcode_token
174 ,p_token1_value => SQLCODE
175 ,p_token2 => g_sqlerrm_token
176 ,p_token2_value => SQLERRM);
177
178 -- notify caller of an UNEXPECTED error
179 x_return_status := Okc_Api.G_RET_STS_UNEXP_ERROR;
180
181 END Validate_LE_Id;
182
183 -- Start of comments
184 --
185 -- Procedure Name : validate_AMD_CODE
186 -- Description :
187 -- Business Rules : lookup OKL_ACCEPTANCE_METHOD
188 -- Parameters :
189 -- Version : 1.0
190 -- End of comments
191 PROCEDURE validate_AMD_CODE(x_return_status OUT NOCOPY VARCHAR2,
192 p_khrv_rec IN khrv_rec_type) is
193 Begin
194 -- initialize return status
195 x_return_status := OKC_API.G_RET_STS_SUCCESS;
196
197 -- enforce foreign key if data exists
198 If (p_khrv_rec.AMD_CODE <> OKC_API.G_MISS_CHAR and
199 p_khrv_rec.AMD_CODE IS NOT NULL)
200 Then
201 -- Check if the value is a valid code from lookup table
202 x_return_status := OKC_UTIL.check_lookup_code('OKL_ACCEPTANCE_METHOD',
203 p_khrv_rec.AMD_CODE);
204 If (x_return_status = OKC_API.G_RET_STS_ERROR) Then
205 --set error message in message stack
206 OKC_API.SET_MESSAGE(
207 p_app_name => G_APP_NAME,
208 p_msg_name => G_INVALID_VALUE,
209 p_token1 => G_COL_NAME_TOKEN,
210 p_token1_value => 'ACCEPTANCE_METHOD');
211 raise G_EXCEPTION_HALT_VALIDATION;
212 Elsif (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
213 raise G_EXCEPTION_HALT_VALIDATION;
214 End If;
215 End If;
216 exception
217 when OTHERS then
218 -- store SQL error message on message stack
219 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
220 p_msg_name => g_unexpected_error,
221 p_token1 => g_sqlcode_token,
222 p_token1_value => sqlcode,
223 p_token2 => g_sqlerrm_token,
224 p_token2_value => sqlerrm);
225 -- notify caller of an error as UNEXPETED error
226 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
227 End validate_AMD_CODE;
228
229
230 -- Start of comments
231 --
232 -- Procedure Name : validate_GENERATE_ACCRUAL_YN
233 -- Description :
234 -- Business Rules : Y/N field
235 -- Parameters :
236 -- Version : 1.0
237 -- End of comments
238 PROCEDURE validate_GENERATE_ACCRUAL_YN(x_return_status OUT NOCOPY VARCHAR2,
239 p_khrv_rec IN khrv_rec_type) is
240 Begin
241 -- initialize return status
242 x_return_status := OKC_API.G_RET_STS_SUCCESS;
243 If (p_khrv_rec.GENERATE_ACCRUAL_YN <> OKC_API.G_MISS_CHAR and
244 p_khrv_rec.GENERATE_ACCRUAL_YN IS NOT NULL)
245 Then
246 -- check allowed values
247 If (upper(p_khrv_rec.GENERATE_ACCRUAL_YN) NOT IN ('Y','N')) Then
248 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
249 p_msg_name => g_invalid_value,
250 p_token1 => g_col_name_token,
251 p_token1_value => 'GENERATE_ACCRUAL_YN');
252 -- notify caller of an error
253 x_return_status := OKC_API.G_RET_STS_ERROR;
254 End If;
255 End If;
256 exception
257 when OTHERS then
258 -- store SQL error message on message stack
259 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
260 p_msg_name => g_unexpected_error,
261 p_token1 => g_sqlcode_token,
262 p_token1_value => sqlcode,
263 p_token2 => g_sqlerrm_token,
264 p_token2_value => sqlerrm);
265 -- notify caller of an error as UNEXPETED error
266 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
267 End validate_GENERATE_ACCRUAL_YN;
268
269
270 -- Start of comments
271 --
272 -- Procedure Name : validate_GENERATE_ACCRUAL_OVERRIDE_YN
273 -- Description :
274 -- Business Rules : Y/N field
275 -- Parameters :
276 -- Version : 1.0
277 -- End of comments
278 PROCEDURE validate_ACCRUAL_OVERRIDE_YN(x_return_status OUT NOCOPY VARCHAR2,
279 p_khrv_rec IN khrv_rec_type) is
280 Begin
281 -- initialize return status
282 x_return_status := OKC_API.G_RET_STS_SUCCESS;
283 If (p_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN <> OKC_API.G_MISS_CHAR and
284 p_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN IS NOT NULL)
285 Then
286 -- check allowed values
287 If (upper(p_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN) NOT IN ('Y','N')) Then
288 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
289 p_msg_name => g_invalid_value,
290 p_token1 => g_col_name_token,
291 p_token1_value => 'GENERATE_ACCRUAL_OVERRIDE_YN');
292 -- notify caller of an error
293 x_return_status := OKC_API.G_RET_STS_ERROR;
294 End If;
295 End If;
296 exception
297 when OTHERS then
298 -- store SQL error message on message stack
299 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
300 p_msg_name => g_unexpected_error,
301 p_token1 => g_sqlcode_token,
302 p_token1_value => sqlcode,
303 p_token2 => g_sqlerrm_token,
304 p_token2_value => sqlerrm);
305 -- notify caller of an error as UNEXPETED error
306 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
307 End validate_ACCRUAL_OVERRIDE_YN;
308
309 -- Start of comments
310 --
311 -- Procedure Name : validate_CREDIT_ACT_YN
312 -- Description :
313 -- Business Rules : Y/N field
314 -- Parameters :
315 -- Version : 1.0
316 -- End of comments
317 PROCEDURE validate_CREDIT_ACT_YN(x_return_status OUT NOCOPY VARCHAR2,
318 p_khrv_rec IN khrv_rec_type) is
319 Begin
320 -- initialize return status
321 x_return_status := OKC_API.G_RET_STS_SUCCESS;
322 If (p_khrv_rec.CREDIT_ACT_YN <> OKC_API.G_MISS_CHAR and
323 p_khrv_rec.CREDIT_ACT_YN IS NOT NULL)
324 Then
325 -- check allowed values
326 If (upper(p_khrv_rec.CREDIT_ACT_YN) NOT IN ('Y','N')) Then
327 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
328 p_msg_name => g_invalid_value,
329 p_token1 => g_col_name_token,
330 p_token1_value => 'CREDIT_ACT_YN');
331 -- notify caller of an error
332 x_return_status := OKC_API.G_RET_STS_ERROR;
333 End If;
334 End If;
335 exception
336 when OTHERS then
337 -- store SQL error message on message stack
338 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
339 p_msg_name => g_unexpected_error,
340 p_token1 => g_sqlcode_token,
341 p_token1_value => sqlcode,
342 p_token2 => g_sqlerrm_token,
343 p_token2_value => sqlerrm);
344 -- notify caller of an error as UNEXPETED error
345 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
346 End validate_CREDIT_ACT_YN;
347
348 -- Start of comments
349 --
350 -- Procedure Name : validate_CONVERTED_ACCOUNT_YN
351 -- Description :
352 -- Business Rules : Y/N field
353 -- Parameters :
354 -- Version : 1.0
355 -- End of comments
356 PROCEDURE validate_CONVERTED_ACCOUNT_YN(x_return_status OUT NOCOPY VARCHAR2,
357 p_khrv_rec IN khrv_rec_type) is
358 Begin
359 -- initialize return status
360 x_return_status := OKC_API.G_RET_STS_SUCCESS;
361 If (p_khrv_rec.CONVERTED_ACCOUNT_YN <> OKC_API.G_MISS_CHAR and
362 p_khrv_rec.CONVERTED_ACCOUNT_YN IS NOT NULL)
363 Then
364 -- check allowed values
365 If (upper(p_khrv_rec.CONVERTED_ACCOUNT_YN) NOT IN ('Y','N')) Then
366 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
367 p_msg_name => g_invalid_value,
368 p_token1 => g_col_name_token,
369 p_token1_value => 'CONVERTED_ACCOUNT_YN');
370 -- notify caller of an error
371 x_return_status := OKC_API.G_RET_STS_ERROR;
372 End If;
373 End If;
374 exception
375 when OTHERS then
376 -- store SQL error message on message stack
377 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
378 p_msg_name => g_unexpected_error,
379 p_token1 => g_sqlcode_token,
380 p_token1_value => sqlcode,
381 p_token2 => g_sqlerrm_token,
382 p_token2_value => sqlerrm);
383 -- notify caller of an error as UNEXPETED error
384 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
385 End validate_CONVERTED_ACCOUNT_YN;
386
387 -- Start of comments
388 --
389 -- Procedure Name : validate_SYNDICATABLE_YN
390 -- Description :
391 -- Business Rules : Y/N field
392 -- Parameters :
393 -- Version : 1.0
394 -- End of comments
395 PROCEDURE validate_SYNDICATABLE_YN(x_return_status OUT NOCOPY VARCHAR2,
396 p_khrv_rec IN khrv_rec_type) is
397 Begin
398 -- initialize return status
399 x_return_status := OKC_API.G_RET_STS_SUCCESS;
400 If (p_khrv_rec.SYNDICATABLE_YN <> OKC_API.G_MISS_CHAR and
401 p_khrv_rec.SYNDICATABLE_YN IS NOT NULL)
402 Then
403 -- check allowed values
404 If (upper(p_khrv_rec.SYNDICATABLE_YN) NOT IN ('Y','N')) Then
405 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
406 p_msg_name => g_invalid_value,
407 p_token1 => g_col_name_token,
408 p_token1_value => 'SYNDICATABLE_YN');
409 -- notify caller of an error
410 x_return_status := OKC_API.G_RET_STS_ERROR;
411 End If;
412 End If;
413 exception
414 when OTHERS then
415 -- store SQL error message on message stack
416 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
417 p_msg_name => g_unexpected_error,
418 p_token1 => g_sqlcode_token,
419 p_token1_value => sqlcode,
420 p_token2 => g_sqlerrm_token,
421 p_token2_value => sqlerrm);
422 -- notify caller of an error as UNEXPETED error
423 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
424 End validate_SYNDICATABLE_YN;
425
426 -- Start of comments
427 --
428 -- Procedure Name : validate_SALESTYPE_YN
429 -- Description :
430 -- Business Rules : Y/N field
431 -- Parameters :
432 -- Version : 1.0
433 -- End of comments
434 PROCEDURE validate_SALESTYPE_YN(x_return_status OUT NOCOPY VARCHAR2,
435 p_khrv_rec IN khrv_rec_type) is
436 Begin
437 -- initialize return status
438 x_return_status := OKC_API.G_RET_STS_SUCCESS;
439 If (p_khrv_rec.SALESTYPE_YN <> OKC_API.G_MISS_CHAR and
440 p_khrv_rec.SALESTYPE_YN IS NOT NULL)
441 Then
442 -- check allowed values
443 If (upper(p_khrv_rec.SALESTYPE_YN) NOT IN ('Y','N')) Then
444 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
445 p_msg_name => g_invalid_value,
446 p_token1 => g_col_name_token,
447 p_token1_value => 'SALESTYPE_YN');
448 -- notify caller of an error
449 x_return_status := OKC_API.G_RET_STS_ERROR;
450 End If;
451 End If;
452 exception
453 when OTHERS then
454 -- store SQL error message on message stack
455 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
456 p_msg_name => g_unexpected_error,
457 p_token1 => g_sqlcode_token,
458 p_token1_value => sqlcode,
459 p_token2 => g_sqlerrm_token,
460 p_token2_value => sqlerrm);
461 -- notify caller of an error as UNEXPETED error
462 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
463 End validate_SALESTYPE_YN;
464
465 -- Start of comments
466 --
467 -- Procedure Name : validate_deal_type
468 -- Description :
469 -- Business Rules :
470 -- Parameters :
471 -- Version : 1.0
472 -- End of comments
473 PROCEDURE validate_DEAL_TYPE(x_return_status OUT NOCOPY VARCHAR2,
474 p_khrv_rec IN khrv_rec_type) is
475 Begin
476 -- initialize return status
477 x_return_status := OKC_API.G_RET_STS_SUCCESS;
478
479 -- enforce foreign key if data exists
480 If (p_khrv_rec.deal_type <> OKC_API.G_MISS_CHAR and
481 p_khrv_rec.deal_type IS NOT NULL)
482 Then
483 -- Check if the value is a valid code from lookup table
484 x_return_status := OKC_UTIL.check_lookup_code('OKL_BOOK_CLASS', p_khrv_rec.deal_type);
485 If (x_return_status = OKC_API.G_RET_STS_ERROR) Then
486 --set error message in message stack
487 OKC_API.SET_MESSAGE(
488 p_app_name => G_APP_NAME,
489 p_msg_name => G_INVALID_VALUE,
490 p_token1 => G_COL_NAME_TOKEN,
491 p_token1_value => 'DEAL_TYPE');
492 raise G_EXCEPTION_HALT_VALIDATION;
493 Elsif (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
494 raise G_EXCEPTION_HALT_VALIDATION;
495 End If;
496 End If;
497 exception
498 when OTHERS then
499 -- store SQL error message on message stack
500 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
501 p_msg_name => g_unexpected_error,
502 p_token1 => g_sqlcode_token,
503 p_token1_value => sqlcode,
504 p_token2 => g_sqlerrm_token,
505 p_token2_value => sqlerrm);
506 -- notify caller of an error as UNEXPETED error
507 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
508 End validate_DEAL_TYPE;
509 -- Start of comments
510 --
511 -- Procedure Name : validate_PREFUND_ELIGIBLE_YN
512 -- Description :
513 -- Business Rules : Y/N field
514 -- Parameters :
515 -- Version : 1.0
516 -- End of comments
517 PROCEDURE validate_PREFUND_ELIGIBLE_YN(x_return_status OUT NOCOPY VARCHAR2,
518 p_khrv_rec IN khrv_rec_type) is
519 Begin
520 -- initialize return status
521 x_return_status := OKC_API.G_RET_STS_SUCCESS;
522 If (p_khrv_rec.PREFUNDING_ELIGIBLE_YN <> OKC_API.G_MISS_CHAR and
523 p_khrv_rec.PREFUNDING_ELIGIBLE_YN IS NOT NULL)
524 Then
525 -- check allowed values
526 If (upper(p_khrv_rec.PREFUNDING_ELIGIBLE_YN) NOT IN ('Y','N')) Then
527 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
528 p_msg_name => g_invalid_value,
529 p_token1 => g_col_name_token,
530 p_token1_value => 'PREFUNDING_ELIGIBLE_YN');
531 -- notify caller of an error
532 x_return_status := OKC_API.G_RET_STS_ERROR;
533 End If;
534 End If;
535 exception
536 when OTHERS then
537 -- store SQL error message on message stack
538 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
539 p_msg_name => g_unexpected_error,
540 p_token1 => g_sqlcode_token,
541 p_token1_value => sqlcode,
542 p_token2 => g_sqlerrm_token,
543 p_token2_value => sqlerrm);
544 -- notify caller of an error as UNEXPETED error
545 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
546 End validate_PREFUND_ELIGIBLE_YN;
547
548 -- Start of comments
549 --
550 -- Procedure Name : validate_REVOLVING_CREDIT_YN
551 -- Description :
552 -- Business Rules : Y/N field
553 -- Parameters :
554 -- Version : 1.0
555 -- End of comments
556 PROCEDURE validate_REVOLVING_CREDIT_YN(x_return_status OUT NOCOPY VARCHAR2,
557 p_khrv_rec IN khrv_rec_type) is
558 Begin
559 -- initialize return status
560 x_return_status := OKC_API.G_RET_STS_SUCCESS;
561 If (p_khrv_rec.REVOLVING_CREDIT_YN <> OKC_API.G_MISS_CHAR and
562 p_khrv_rec.REVOLVING_CREDIT_YN IS NOT NULL)
563 Then
564 -- check allowed values
565 If (upper(p_khrv_rec.REVOLVING_CREDIT_YN) NOT IN ('Y','N')) Then
566 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
567 p_msg_name => g_invalid_value,
568 p_token1 => g_col_name_token,
569 p_token1_value => 'REVOLVING_CREDIT_YN');
570 -- notify caller of an error
571 x_return_status := OKC_API.G_RET_STS_ERROR;
572 End If;
573 End If;
574 exception
575 when OTHERS then
576 -- store SQL error message on message stack
577 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
578 p_msg_name => g_unexpected_error,
579 p_token1 => g_sqlcode_token,
580 p_token1_value => sqlcode,
581 p_token2 => g_sqlerrm_token,
582 p_token2_value => sqlerrm);
583 -- notify caller of an error as UNEXPETED error
584 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
585 End validate_REVOLVING_CREDIT_YN;
586
587 --Bug# 2697681 schema changes 11.5.9
588 -- Start of comments
589 --
590 -- Procedure Name : validate_CURRENCY_CONV_TYPE
591 -- Description :
592 -- Business Rules : Y/N field
593 -- Parameters :
594 -- Version : 1.0
595 -- End of comments
596 PROCEDURE validate_CURRENCY_CONV_TYPE(x_return_status OUT NOCOPY VARCHAR2,
597 p_khrv_rec IN khrv_rec_type) is
598
599 --cursor to chk currency type fk
600 cursor curr_conv_type_csr (p_curr_cotyp in varchar2) is
601 select '!'
602 from gl_daily_conversion_types
603 where conversion_type = p_curr_cotyp;
604
605 l_valid_convert_type varchar2(1) default '?';
606 Begin
607 -- initialize return status
608 x_return_status := OKC_API.G_RET_STS_SUCCESS;
609 If (p_khrv_rec.CURRENCY_CONVERSION_TYPE <> OKC_API.G_MISS_CHAR and
610 p_khrv_rec.CURRENCY_CONVERSION_TYPE IS NOT NULL)
611 Then
612 -- check allowed values
613 l_valid_convert_type := '?';
614 open curr_conv_type_csr(p_curr_cotyp => p_khrv_rec.CURRENCY_CONVERSION_TYPE);
615 Fetch curr_conv_type_csr into l_valid_convert_type;
616 If curr_conv_type_csr%NOTFOUND then
617 Null;
618 End If;
619 Close curr_conv_type_csr;
620
621 If (l_valid_convert_type = '?') Then
622 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
623 p_msg_name => g_invalid_value,
624 p_token1 => g_col_name_token,
625 p_token1_value => 'CURRENCY_CONVERSION_TYPE');
626 -- notify caller of an error
627 x_return_status := OKC_API.G_RET_STS_ERROR;
628 End If;
629 End If;
630 exception
631 when OTHERS then
632 -- store SQL error message on message stack
633 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
634 p_msg_name => g_unexpected_error,
635 p_token1 => g_sqlcode_token,
636 p_token1_value => sqlcode,
637 p_token2 => g_sqlerrm_token,
638 p_token2_value => sqlerrm);
639 -- notify caller of an error as UNEXPETED error
640 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
641 End validate_CURRENCY_CONV_TYPE;
642
643 -- Start of comments
644 --
645 -- Procedure Name : validate_MULTI_GAAP_YN
646 -- Description :
647 -- Business Rules : Y/N field
648 -- Parameters :
649 -- Version : 1.0
650 -- End of comments
651 PROCEDURE validate_MULTI_GAAP_YN(x_return_status OUT NOCOPY VARCHAR2,
652 p_khrv_rec IN khrv_rec_type) is
653 Begin
654 -- initialize return status
655 x_return_status := OKC_API.G_RET_STS_SUCCESS;
656 If (p_khrv_rec.MULTI_GAAP_YN <> OKC_API.G_MISS_CHAR and
657 p_khrv_rec.MULTI_GAAP_YN IS NOT NULL)
658 Then
659 -- check allowed values
660 If (upper(p_khrv_rec.MULTI_GAAP_YN) NOT IN ('Y','N')) Then
661 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
662 p_msg_name => g_invalid_value,
663 p_token1 => g_col_name_token,
664 p_token1_value => 'MULTI_GAAP_YN');
665 -- notify caller of an error
666 x_return_status := OKC_API.G_RET_STS_ERROR;
667 End If;
668 End If;
669 exception
670 when OTHERS then
671 -- store SQL error message on message stack
672 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
673 p_msg_name => g_unexpected_error,
674 p_token1 => g_sqlcode_token,
675 p_token1_value => sqlcode,
676 p_token2 => g_sqlerrm_token,
677 p_token2_value => sqlerrm);
678 -- notify caller of an error as UNEXPETED error
679 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
680 End validate_MULTI_GAAP_YN;
681
682 -- Start of comments
683 --
684 -- Procedure Name : validate_ASSIGNABLE_YN
685 -- Description :
686 -- Business Rules : Y/N field
687 -- Parameters :
688 -- Version : 1.0
689 -- End of comments
690 PROCEDURE validate_ASSIGNABLE_YN(x_return_status OUT NOCOPY VARCHAR2,
691 p_khrv_rec IN khrv_rec_type) is
692 Begin
693 -- initialize return status
694 x_return_status := OKC_API.G_RET_STS_SUCCESS;
695 If (p_khrv_rec.ASSIGNABLE_YN <> OKC_API.G_MISS_CHAR and
696 p_khrv_rec.ASSIGNABLE_YN IS NOT NULL)
697 Then
698 -- check allowed values
699 If (upper(p_khrv_rec.ASSIGNABLE_YN) NOT IN ('Y','N')) Then
700 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
701 p_msg_name => g_invalid_value,
702 p_token1 => g_col_name_token,
703 p_token1_value => 'ASSIGNABLE_YN');
704 -- notify caller of an error
705 x_return_status := OKC_API.G_RET_STS_ERROR;
706 End If;
707 End If;
708 exception
709 when OTHERS then
710 -- store SQL error message on message stack
711 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
712 p_msg_name => g_unexpected_error,
713 p_token1 => g_sqlcode_token,
714 p_token1_value => sqlcode,
715 p_token2 => g_sqlerrm_token,
716 p_token2_value => sqlerrm);
717 -- notify caller of an error as UNEXPETED error
718 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
719 End validate_ASSIGNABLE_YN;
720
721 -- Start of comments
722 --
723 -- Procedure Name : validate_crs_id
724 -- Description : validates presence of the crs_id for the record
725 -- Business Rules : required field
726 -- Parameters :
727 -- Version :
728 -- End of comments
729 procedure validate_crs_id(x_return_status OUT NOCOPY VARCHAR2,
730 p_khrv_rec IN khrv_rec_type) is
731 l_dummy_var VARCHAR2(1) := '?';
732 Cursor l_chrv_csr Is
733 select 'x'
734 from OKL_VP_CHANGE_REQUESTS
735 where ID = p_khrv_rec.crs_id;
736 begin
737 -- initialize return status
738 x_return_status := OKC_API.G_RET_STS_SUCCESS;
739
740 -- enforce foreign key, if data exists
741 if (p_khrv_rec.crs_id <> OKC_API.G_MISS_NUM) AND (p_khrv_rec.crs_id IS NOT NULL) then
742 Open l_chrv_csr;
743 Fetch l_chrv_csr Into l_dummy_var;
744 Close l_chrv_csr;
745
746 -- if l_dummy_var still set to default, data was not found
747 If (l_dummy_var = '?') Then
748 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
749 p_msg_name => g_no_parent_record,
750 p_token1 => g_col_name_token,
751 p_token1_value => 'crs_id',
752 p_token2 => g_child_table_token,
753 p_token2_value => G_VIEW,
754 p_token3 => g_parent_table_token,
755 p_token3_value => 'OKL_K_HEADERS_V');
756 -- notify caller of an error
757 x_return_status := OKC_API.G_RET_STS_ERROR;
758 End If;
759 end if;
760 exception
761 when G_EXCEPTION_HALT_VALIDATION then
762 -- no processing necessary; validation can continue with the next column
763 null;
764
765 when OTHERS then
766 -- store SQL error message on message stack for caller
767 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
768 p_msg_name => G_UNEXPECTED_ERROR,
769 p_token1 => g_sqlcode_token,
770 p_token1_value => sqlcode,
771 p_token2 => g_sqlerrm_token,
772 p_token2_value => sqlerrm);
773 -- notify caller of an error
774 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
775 end validate_crs_id;
776
777
778 -- Start of comments
779 --
780 -- Procedure Name : validate_template_type_code
781 -- Description :
782 -- Business Rules :
783 -- Parameters :
784 -- Version : 1.0
785 -- End of comments
786 PROCEDURE validate_TEMPLATE_TYPE_CODE(x_return_status OUT NOCOPY VARCHAR2,
787 p_khrv_rec IN khrv_rec_type) is
788 Begin
789 -- initialize return status
790 x_return_status := OKC_API.G_RET_STS_SUCCESS;
791
792 -- enforce foreign key if data exists
793 If (p_khrv_rec.template_type_code <> OKC_API.G_MISS_CHAR and
794 p_khrv_rec.template_type_code IS NOT NULL)
795 Then
796 -- Check if the value is a valid code from lookup table
797 x_return_status := OKC_UTIL.check_lookup_code('OKL_TEMPLATE_TYPE', p_khrv_rec.template_type_code);
798 If (x_return_status = OKC_API.G_RET_STS_ERROR) Then
799 --set error message in message stack
800 OKC_API.SET_MESSAGE(
801 p_app_name => G_APP_NAME,
802 p_msg_name => G_INVALID_VALUE,
803 p_token1 => G_COL_NAME_TOKEN,
804 p_token1_value => 'TEMPLATE_TYPE_CODE');
805 raise G_EXCEPTION_HALT_VALIDATION;
806 Elsif (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
807 raise G_EXCEPTION_HALT_VALIDATION;
808 End If;
809 End If;
810 exception
811 when OTHERS then
812 -- store SQL error message on message stack
813 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
814 p_msg_name => g_unexpected_error,
815 p_token1 => g_sqlcode_token,
816 p_token1_value => sqlcode,
817 p_token2 => g_sqlerrm_token,
818 p_token2_value => sqlerrm);
819 -- notify caller of an error as UNEXPETED error
820 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
821 End validate_TEMPLATE_TYPE_CODE;
822
823 --Bug# 4558486: start
824 -- Start of comments
825 --
826 -- Procedure Name : validate_DFF_attributes
827 -- Description :
828 -- Business Rules : DFF validation
829 -- Parameters :
830 -- Version : 1.0
831 -- End of comments
832 PROCEDURE validate_DFF_attributes
833 (x_return_status OUT NOCOPY VARCHAR2,
834 p_khrv_rec IN khrv_rec_type) is
835
836 l_segment_values_rec Okl_DFlex_Util_Pvt.DFF_Rec_type;
837 l_msg_count NUMBER;
838 l_msg_data VARCHAR2(2000);
839 l_appl_short_name VARCHAR2(30) := 'OKL';
840 l_desc_flex_name VARCHAR2(30) := 'OKL_K_HEADERS_DF';
841 l_segment_partial_name VARCHAR2(30) := 'ATTRIBUTE';
842 Begin
843 -- initialize return status
844 x_return_status := OKL_API.G_RET_STS_SUCCESS;
845
846 l_segment_values_rec.attribute_category := p_khrv_rec.attribute_category;
847 l_segment_values_rec.attribute1 := p_khrv_rec.attribute1;
848 l_segment_values_rec.attribute2 := p_khrv_rec.attribute2;
849 l_segment_values_rec.attribute3 := p_khrv_rec.attribute3;
850 l_segment_values_rec.attribute4 := p_khrv_rec.attribute4;
851 l_segment_values_rec.attribute5 := p_khrv_rec.attribute5;
852 l_segment_values_rec.attribute6 := p_khrv_rec.attribute6;
853 l_segment_values_rec.attribute7 := p_khrv_rec.attribute7;
854 l_segment_values_rec.attribute8 := p_khrv_rec.attribute8;
855 l_segment_values_rec.attribute9 := p_khrv_rec.attribute9;
856 l_segment_values_rec.attribute10 := p_khrv_rec.attribute10;
857 l_segment_values_rec.attribute11 := p_khrv_rec.attribute11;
858 l_segment_values_rec.attribute12 := p_khrv_rec.attribute12;
859 l_segment_values_rec.attribute13 := p_khrv_rec.attribute13;
860 l_segment_values_rec.attribute14 := p_khrv_rec.attribute14;
861 l_segment_values_rec.attribute15 := p_khrv_rec.attribute15;
862
863 okl_dflex_util_pvt.validate_desc_flex
864 (p_api_version => 1.0
865 ,p_init_msg_list => OKL_API.G_FALSE
866 ,x_return_status => x_return_status
867 ,x_msg_count => l_msg_count
868 ,x_msg_data => l_msg_data
869 ,p_appl_short_name => l_appl_short_name
870 ,p_descflex_name => l_desc_flex_name
871 ,p_segment_partial_name => l_segment_partial_name
872 ,p_segment_values_rec => l_segment_values_rec);
873
874 -- check return status
875 IF (x_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
876 RAISE G_EXCEPTION_HALT_VALIDATION;
877 END IF;
878
879 exception
880 when G_EXCEPTION_HALT_VALIDATION THEN
881 x_return_status := OKL_API.G_RET_STS_ERROR;
882
883 when OTHERS then
884 -- store SQL error message on message stack
885 OKL_API.SET_MESSAGE(p_app_name => g_app_name,
886 p_msg_name => g_unexpected_error,
887 p_token1 => g_sqlcode_token,
888 p_token1_value => sqlcode,
889 p_token2 => g_sqlerrm_token,
890 p_token2_value => sqlerrm);
891 -- notify caller of an error as UNEXPETED error
892 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
893 End validate_DFF_attributes;
894 --Bug# 4558486: end
895
896 -- ********************* END OF HAND CODED VALIDATION ********************************
897
898 -- Start of comments
899 --
900 -- Procedure Name : validate_ID
901 -- Description : validates precense of the ID for the record
902 -- Business Rules : required field
903 -- Parameters :
904 -- Version :
905 -- End of comments
906 procedure validate_ID(x_return_status OUT NOCOPY VARCHAR2,
907 p_khrv_rec IN khrv_rec_type
908 ) is
909 begin
910 -- initialize return status
911 x_return_status := OKC_API.G_RET_STS_SUCCESS;
912
913 -- data is required
914 if (p_khrv_rec.ID = OKC_API.G_MISS_NUM) OR (p_khrv_rec.ID IS NULL) then
915 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'ID');
916
917 -- notify caller of an error
918 x_return_status := OKC_API.G_RET_STS_ERROR;
919
920 -- halt further validation of this column
921 raise G_EXCEPTION_HALT_VALIDATION;
922 end if;
923 exception
924 when G_EXCEPTION_HALT_VALIDATION then
925 -- no processing necessary; validation can continue with the next column
926 null;
927
928 when OTHERS then
929 -- store SQL error message on message stack for caller
930 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
931 p_msg_name => G_UNEXPECTED_ERROR,
932 p_token1 => g_sqlcode_token,
933 p_token1_value => sqlcode,
934 p_token2 => g_sqlerrm_token,
935 p_token2_value => sqlerrm);
936 -- notify caller of an error
937 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
938 end validate_ID;
939
940 -- Start of comments
941 --
942 -- Procedure Name : validate_OBJECT_VERSION_NUMBER
943 -- Description : validates precense of the OBJECT_VERSION_NUMBER for the record
944 -- Business Rules : required field
945 -- Parameters :
946 -- Version :
947 -- End of comments
948 procedure validate_OBJECT_VERSION_NUMBER(x_return_status OUT NOCOPY VARCHAR2,
949 p_khrv_rec IN khrv_rec_type
950 ) is
951 begin
952 -- initialize return status
953 x_return_status := OKC_API.G_RET_STS_SUCCESS;
954
955 -- data is required
956 if (p_khrv_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) OR (p_khrv_rec.OBJECT_VERSION_NUMBER IS NULL) then
957 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'OBJECT_VERSION_NUMBER');
958
959 -- notify caller of an error
960 x_return_status := OKC_API.G_RET_STS_ERROR;
961
962 -- halt further validation of this column
963 raise G_EXCEPTION_HALT_VALIDATION;
964 end if;
965 exception
966 when G_EXCEPTION_HALT_VALIDATION then
967 -- no processing necessary; validation can continue with the next column
968 null;
969
970 when OTHERS then
971 -- store SQL error message on message stack for caller
972 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
973 p_msg_name => G_UNEXPECTED_ERROR,
974 p_token1 => g_sqlcode_token,
975 p_token1_value => sqlcode,
976 p_token2 => g_sqlerrm_token,
977 p_token2_value => sqlerrm);
978 -- notify caller of an error
979 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
980 end validate_OBJECT_VERSION_NUMBER;
981
982 ---------------------------------------------
983 -- Validate_Attributes for: OKL_K_HEADERS_V --
984 ---------------------------------------------
985 FUNCTION Validate_Attributes (
986 p_khrv_rec IN khrv_rec_type
987 ) RETURN VARCHAR2 IS
988 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
989 x_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
990 BEGIN
991
992
993 -- call each column-level validation
994 -- do not validate id because it will be set up automatically
995
996 /*
997 validate_ID(x_return_status => l_return_status,
998 p_khrv_rec => p_khrv_rec);
999
1000 -- store the highest degree of error
1001 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1002 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1003 x_return_status := l_return_status;
1004 end if;
1005 end if;
1006 */
1007 validate_OBJECT_VERSION_NUMBER(x_return_status => l_return_status,
1008 p_khrv_rec => p_khrv_rec);
1009
1010 -- store the highest degree of error
1011 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1012 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1013 x_return_status := l_return_status;
1014 end if;
1015 end if;
1016
1017 validate_KHR_ID(x_return_status => l_return_status,
1018 p_khrv_rec => p_khrv_rec);
1019
1020 -- store the highest degree of error
1021 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1022 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1023 x_return_status := l_return_status;
1024 end if;
1025 end if;
1026
1027 validate_PDT_ID(x_return_status => l_return_status,
1028 p_khrv_rec => p_khrv_rec);
1029
1030 -- store the highest degree of error
1031 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1032 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1033 x_return_status := l_return_status;
1034 end if;
1035 end if;
1036
1037 validate_AMD_CODE(x_return_status => l_return_status,
1038 p_khrv_rec => p_khrv_rec);
1039
1040 -- store the highest degree of error
1041 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1042 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1043 x_return_status := l_return_status;
1044 end if;
1045 end if;
1046
1047 validate_GENERATE_ACCRUAL_YN(x_return_status => l_return_status,
1048 p_khrv_rec => p_khrv_rec);
1049
1050 -- store the highest degree of error
1051 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1052 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1053 x_return_status := l_return_status;
1054 end if;
1055 end if;
1056
1057 validate_ACCRUAL_OVERRIDE_YN(x_return_status => l_return_status,
1058 p_khrv_rec => p_khrv_rec);
1059
1060 -- store the highest degree of error
1061 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1062 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1063 x_return_status := l_return_status;
1064 end if;
1065 end if;
1066
1067 validate_CREDIT_ACT_YN(x_return_status => l_return_status,
1068 p_khrv_rec => p_khrv_rec);
1069
1070 -- store the highest degree of error
1071 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1072 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1073 x_return_status := l_return_status;
1074 end if;
1075 end if;
1076
1077 validate_CONVERTED_ACCOUNT_YN(x_return_status => l_return_status,
1078 p_khrv_rec => p_khrv_rec);
1079
1080 -- store the highest degree of error
1081 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1082 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1083 x_return_status := l_return_status;
1084 end if;
1085 end if;
1086
1087 validate_SYNDICATABLE_YN(x_return_status => l_return_status,
1088 p_khrv_rec => p_khrv_rec);
1089
1090 -- store the highest degree of error
1091 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1092 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1093 x_return_status := l_return_status;
1094 end if;
1095 end if;
1096
1097 validate_SALESTYPE_YN(x_return_status => l_return_status,
1098 p_khrv_rec => p_khrv_rec);
1099
1100 -- store the highest degree of error
1101 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1102 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1103 x_return_status := l_return_status;
1104 end if;
1105 end if;
1106
1107
1108 validate_DEAL_TYPE(x_return_status => l_return_status,
1109 p_khrv_rec => p_khrv_rec);
1110
1111 -- store the highest degree of error
1112 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1113 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1114 x_return_status := l_return_status;
1115 end if;
1116 end if;
1117
1118 validate_PREFUND_ELIGIBLE_YN(x_return_status => l_return_status,
1119 p_khrv_rec => p_khrv_rec);
1120
1121 -- store the highest degree of error
1122 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1123 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1124 x_return_status := l_return_status;
1125 end if;
1126 end if;
1127
1128 validate_revolving_credit_YN(x_return_status => l_return_status,
1129 p_khrv_rec => p_khrv_rec);
1130
1131 -- store the highest degree of error
1132 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1133 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1134 x_return_status := l_return_status;
1135 end if;
1136 end if;
1137
1138 --Bug# 4558486
1139 -- ***
1140 -- DFF Attributes
1141 -- ***
1142 if ( NVL(p_khrv_rec.validate_dff_yn,OKL_API.G_MISS_CHAR) = 'Y') then
1143 validate_DFF_attributes
1144 (x_return_status => l_return_status,
1145 p_khrv_rec => p_khrv_rec);
1146
1147 -- store the highest degree of error
1148 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1149 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1150 x_return_status := l_return_status;
1151 end if;
1152 end if;
1153 end if;
1154
1155 --Added by dpsingh
1156
1157 -- Validate_LE_Id
1158 Validate_LE_Id(p_khrv_rec => p_khrv_rec,
1159 x_return_status => l_return_status);
1160 if (l_return_status <> OKC_API.G_RET_STS_SUCCESS) then
1161 if (x_return_status <> OKC_API.G_RET_STS_UNEXP_ERROR) then
1162 x_return_status := l_return_status;
1163 end if;
1164 end if;
1165
1166 -- return status to caller
1167 return x_return_status;
1168 exception
1169 when OTHERS then
1170 -- store SQL error message on message stack for caller
1171 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
1172 p_msg_name => G_UNEXPECTED_ERROR,
1173 p_token1 => g_sqlcode_token,
1174 p_token1_value => sqlcode,
1175 p_token2 => g_sqlerrm_token,
1176 p_token2_value => sqlerrm);
1177 -- notify caller of an error
1178 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1179 -- return status to caller
1180 return x_return_status;
1181 END Validate_Attributes;
1182
1183 -- --------------------------------------------------------------------------
1184 -- End of column level validations
1185 -- --------------------------------------------------------------------------
1186
1187 ---------------------------------------------------------------------------
1188 -- FUNCTION get_seq_id
1189 ---------------------------------------------------------------------------
1190 FUNCTION get_seq_id RETURN NUMBER IS
1191 BEGIN
1192 RETURN(okc_p_util.raw_to_number(sys_guid()));
1193 END get_seq_id;
1194
1195 ---------------------------------------------------------------------------
1196 -- PROCEDURE qc
1197 ---------------------------------------------------------------------------
1198 PROCEDURE qc IS
1199 BEGIN
1200 null;
1201 END qc;
1202
1203 ---------------------------------------------------------------------------
1204 -- PROCEDURE change_version
1205 ---------------------------------------------------------------------------
1206 PROCEDURE change_version IS
1207 BEGIN
1208 null;
1209 END change_version;
1210
1211 ---------------------------------------------------------------------------
1212 -- PROCEDURE api_copy
1213 ---------------------------------------------------------------------------
1214 PROCEDURE api_copy IS
1215 BEGIN
1216 null;
1217 END api_copy;
1218
1219
1220 ---------------------------------------------------------------------------
1221 -- FUNCTION get_rec for: OKL_K_HEADERS
1222 ---------------------------------------------------------------------------
1223 FUNCTION get_rec (
1224 p_khr_rec IN khr_rec_type,
1225 x_no_data_found OUT NOCOPY BOOLEAN
1226 ) RETURN khr_rec_type IS
1227 CURSOR okl_k_headers_pk_csr (p_id IN NUMBER) IS
1228 SELECT
1229 ID,
1230 ISG_ID,
1231 KHR_ID,
1232 PDT_ID,
1233 OBJECT_VERSION_NUMBER,
1234 DATE_FIRST_ACTIVITY,
1235 SYNDICATABLE_YN,
1236 SALESTYPE_YN,
1237 DATE_REFINANCED,
1238 DATE_CONVERSION_EFFECTIVE,
1239 DATE_DEAL_TRANSFERRED,
1240 TERM_DURATION,
1241 DATETIME_PROPOSAL_EFFECTIVE,
1242 DATETIME_PROPOSAL_INEFFECTIVE,
1243 DATE_PROPOSAL_ACCEPTED,
1244 ATTRIBUTE_CATEGORY,
1245 ATTRIBUTE1,
1246 ATTRIBUTE2,
1247 ATTRIBUTE3,
1248 ATTRIBUTE4,
1249 ATTRIBUTE5,
1250 ATTRIBUTE6,
1251 ATTRIBUTE7,
1252 ATTRIBUTE8,
1253 ATTRIBUTE9,
1254 ATTRIBUTE10,
1255 ATTRIBUTE11,
1256 ATTRIBUTE12,
1257 ATTRIBUTE13,
1258 ATTRIBUTE14,
1259 ATTRIBUTE15,
1260 CREATED_BY,
1261 CREATION_DATE,
1262 LAST_UPDATED_BY,
1263 LAST_UPDATE_DATE,
1264 LAST_UPDATE_LOGIN,
1265 AMD_CODE,
1266 GENERATE_ACCRUAL_YN,
1267 GENERATE_ACCRUAL_OVERRIDE_YN,
1268 CREDIT_ACT_YN,
1269 CONVERTED_ACCOUNT_YN,
1270 PRE_TAX_YIELD,
1271 AFTER_TAX_YIELD,
1272 IMPLICIT_INTEREST_RATE,
1273 IMPLICIT_NON_IDC_INTEREST_RATE,
1274 TARGET_PRE_TAX_YIELD,
1275 TARGET_AFTER_TAX_YIELD,
1276 TARGET_IMPLICIT_INTEREST_RATE,
1277 TARGET_IMPLICIT_NONIDC_INTRATE,
1278 DATE_LAST_INTERIM_INTEREST_CAL,
1279 DEAL_TYPE,
1280 PRE_TAX_IRR,
1281 AFTER_TAX_IRR,
1282 EXPECTED_DELIVERY_DATE,
1283 ACCEPTED_DATE,
1284 PREFUNDING_ELIGIBLE_YN,
1285 REVOLVING_CREDIT_YN,
1286 --Bug# 2697681 schema changes 11.5.9
1287 CURRENCY_CONVERSION_TYPE,
1288 CURRENCY_CONVERSION_RATE,
1289 CURRENCY_CONVERSION_DATE,
1290 MULTI_GAAP_YN,
1291 RECOURSE_CODE,
1292 LESSOR_SERV_ORG_CODE,
1293 ASSIGNABLE_YN,
1294 SECURITIZED_CODE,
1295 SECURITIZATION_TYPE,
1296 --Bug#3143522 : 11.5.10
1297 --subsidy
1298 SUB_PRE_TAX_YIELD,
1299 SUB_AFTER_TAX_YIELD,
1300 SUB_IMPL_INTEREST_RATE,
1301 SUB_IMPL_NON_IDC_INT_RATE,
1302 SUB_PRE_TAX_IRR,
1303 SUB_AFTER_TAX_IRR,
1304 --Bug# 3973640 : 11.5.10+
1305 TOT_CL_TRANSFER_AMT,
1306 TOT_CL_NET_TRANSFER_AMT,
1307 TOT_CL_LIMIT,
1308 TOT_CL_FUNDING_AMT,
1309 CRS_ID,
1310 TEMPLATE_TYPE_CODE,
1311 --Bug# 4419339 OKLH Schema Sales Quote
1312 DATE_FUNDING_EXPECTED ,
1313 DATE_TRADEIN,
1314 TRADEIN_AMOUNT,
1315 TRADEIN_DESCRIPTION,
1316 --Added by dpsingh for LE uptake
1317 LEGAL_ENTITY_ID
1318 FROM OKL_K_HEADERS
1319 WHERE OKL_K_HEADERS.id = p_id;
1320
1321 l_khr_rec khr_rec_type;
1322 BEGIN
1323
1324 x_no_data_found := TRUE;
1325 -- Get current database values
1326 OPEN okl_k_headers_pk_csr (p_khr_rec.id);
1327 FETCH okl_k_headers_pk_csr INTO
1328 l_khr_rec.ID,
1329 l_khr_rec.ISG_ID,
1330 l_khr_rec.KHR_ID,
1331 l_khr_rec.PDT_ID,
1332 l_khr_rec.OBJECT_VERSION_NUMBER,
1333 l_khr_rec.DATE_FIRST_ACTIVITY,
1334 l_khr_rec.SYNDICATABLE_YN,
1335 l_khr_rec.SALESTYPE_YN,
1336 l_khr_rec.DATE_REFINANCED,
1337 l_khr_rec.DATE_CONVERSION_EFFECTIVE,
1338 l_khr_rec.DATE_DEAL_TRANSFERRED,
1339 l_khr_rec.TERM_DURATION,
1340 l_khr_rec.DATETIME_PROPOSAL_EFFECTIVE,
1341 l_khr_rec.DATETIME_PROPOSAL_INEFFECTIVE,
1342 l_khr_rec.DATE_PROPOSAL_ACCEPTED,
1343 l_khr_rec.ATTRIBUTE_CATEGORY,
1344 l_khr_rec.ATTRIBUTE1,
1345 l_khr_rec.ATTRIBUTE2,
1346 l_khr_rec.ATTRIBUTE3,
1347 l_khr_rec.ATTRIBUTE4,
1348 l_khr_rec.ATTRIBUTE5,
1349 l_khr_rec.ATTRIBUTE6,
1350 l_khr_rec.ATTRIBUTE7,
1351 l_khr_rec.ATTRIBUTE8,
1352 l_khr_rec.ATTRIBUTE9,
1353 l_khr_rec.ATTRIBUTE10,
1354 l_khr_rec.ATTRIBUTE11,
1355 l_khr_rec.ATTRIBUTE12,
1356 l_khr_rec.ATTRIBUTE13,
1357 l_khr_rec.ATTRIBUTE14,
1358 l_khr_rec.ATTRIBUTE15,
1359 l_khr_rec.CREATED_BY,
1360 l_khr_rec.CREATION_DATE,
1361 l_khr_rec.LAST_UPDATED_BY,
1362 l_khr_rec.LAST_UPDATE_DATE,
1363 l_khr_rec.LAST_UPDATE_LOGIN,
1364 l_khr_rec.AMD_CODE,
1365 l_khr_rec.GENERATE_ACCRUAL_YN,
1366 l_khr_rec.GENERATE_ACCRUAL_OVERRIDE_YN,
1367 l_khr_rec.CREDIT_ACT_YN,
1368 l_khr_rec.CONVERTED_ACCOUNT_YN,
1369 l_khr_rec.PRE_TAX_YIELD,
1370 l_khr_rec.AFTER_TAX_YIELD,
1371 l_khr_rec.IMPLICIT_INTEREST_RATE,
1372 l_khr_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
1373 l_khr_rec.TARGET_PRE_TAX_YIELD,
1374 l_khr_rec.TARGET_AFTER_TAX_YIELD,
1375 l_khr_rec.TARGET_IMPLICIT_INTEREST_RATE,
1376 l_khr_rec.TARGET_IMPLICIT_NONIDC_INTRATE,
1377 l_khr_rec.DATE_LAST_INTERIM_INTEREST_CAL,
1378 l_khr_rec.DEAL_TYPE,
1379 l_khr_rec.PRE_TAX_IRR,
1380 l_khr_rec.AFTER_TAX_IRR,
1381 l_khr_rec.EXPECTED_DELIVERY_DATE,
1382 l_khr_rec.ACCEPTED_DATE,
1383 l_khr_rec.PREFUNDING_ELIGIBLE_YN,
1384 l_khr_rec.REVOLVING_CREDIT_YN,
1385 --Bug# 2697681 schema changes 11.5.9
1386 l_khr_rec.CURRENCY_CONVERSION_TYPE,
1387 l_khr_rec.CURRENCY_CONVERSION_RATE,
1388 l_khr_rec.CURRENCY_CONVERSION_DATE,
1389 l_khr_rec.MULTI_GAAP_YN,
1390 l_khr_rec.RECOURSE_CODE,
1391 l_khr_rec.LESSOR_SERV_ORG_CODE,
1392 l_khr_rec.ASSIGNABLE_YN,
1393 l_khr_rec.SECURITIZED_CODE,
1394 l_khr_rec.SECURITIZATION_TYPE,
1395 --Bug#3143522 : 11.5.10
1396 --subsidy
1397 l_khr_rec.SUB_PRE_TAX_YIELD,
1398 l_khr_rec.SUB_AFTER_TAX_YIELD,
1399 l_khr_rec.SUB_IMPL_INTEREST_RATE,
1400 l_khr_rec.SUB_IMPL_NON_IDC_INT_RATE,
1401 l_khr_rec.SUB_PRE_TAX_IRR,
1402 l_khr_rec.SUB_AFTER_TAX_IRR,
1403 --Bug# 3973640 : 11.5.10+
1404 l_khr_rec.TOT_CL_TRANSFER_AMT,
1405 l_khr_rec.TOT_CL_NET_TRANSFER_AMT,
1406 l_khr_rec.TOT_CL_LIMIT,
1407 l_khr_rec.TOT_CL_FUNDING_AMT,
1408 l_khr_rec.CRS_ID,
1409 l_khr_rec.TEMPLATE_TYPE_CODE,
1410 --Bug# 4419339 OKLH Schema Sales Quote
1411 l_khr_rec.DATE_FUNDING_EXPECTED ,
1412 l_khr_rec.DATE_TRADEIN,
1413 l_khr_rec.TRADEIN_AMOUNT,
1414 l_khr_rec.TRADEIN_DESCRIPTION,
1415 --Added by dpsingh for LE uptake
1416 l_khr_rec.LEGAL_ENTITY_ID ;
1417 x_no_data_found := okl_k_headers_pk_csr%NOTFOUND;
1418 CLOSE okl_k_headers_pk_csr;
1419 RETURN(l_khr_rec);
1420 END get_rec;
1421
1422 FUNCTION get_rec (
1423 p_khr_rec IN khr_rec_type
1424 ) RETURN khr_rec_type IS
1425 l_row_notfound BOOLEAN := TRUE;
1426 BEGIN
1427 RETURN(get_rec(p_khr_rec, l_row_notfound));
1428 END get_rec;
1429
1430
1431 ---------------------------------------------------------------------------
1432 -- FUNCTION get_rec for: OKL_K_HEADERS_H
1433 ---------------------------------------------------------------------------
1434 FUNCTION get_rec (
1435 p_okl_k_headers_h_rec IN okl_k_headers_h_rec_type,
1436 x_no_data_found OUT NOCOPY BOOLEAN
1437 ) RETURN okl_k_headers_h_rec_type IS
1438 CURSOR okl_k_headers_h_pk_csr (p_id IN NUMBER) IS
1439 SELECT
1440 ID,
1441 MAJOR_VERSION,
1442 ISG_ID,
1443 KHR_ID,
1444 PDT_ID,
1445 OBJECT_VERSION_NUMBER,
1446 DATE_FIRST_ACTIVITY,
1447 SYNDICATABLE_YN,
1448 SALESTYPE_YN,
1449 DATE_REFINANCED,
1450 DATE_CONVERSION_EFFECTIVE,
1451 DATE_DEAL_TRANSFERRED,
1452 TERM_DURATION,
1453 DATETIME_PROPOSAL_EFFECTIVE,
1454 DATETIME_PROPOSAL_INEFFECTIVE,
1455 DATE_PROPOSAL_ACCEPTED,
1456 ATTRIBUTE_CATEGORY,
1457 ATTRIBUTE1,
1458 ATTRIBUTE2,
1459 ATTRIBUTE3,
1460 ATTRIBUTE4,
1461 ATTRIBUTE5,
1462 ATTRIBUTE6,
1463 ATTRIBUTE7,
1464 ATTRIBUTE8,
1465 ATTRIBUTE9,
1466 ATTRIBUTE10,
1467 ATTRIBUTE11,
1468 ATTRIBUTE12,
1469 ATTRIBUTE13,
1470 ATTRIBUTE14,
1471 ATTRIBUTE15,
1472 CREATED_BY,
1473 CREATION_DATE,
1474 LAST_UPDATED_BY,
1475 LAST_UPDATE_DATE,
1476 LAST_UPDATE_LOGIN,
1477 AMD_CODE,
1478 GENERATE_ACCRUAL_YN,
1479 GENERATE_ACCRUAL_OVERRIDE_YN,
1480 CREDIT_ACT_YN,
1481 CONVERTED_ACCOUNT_YN,
1482 PRE_TAX_YIELD,
1483 AFTER_TAX_YIELD,
1484 IMPLICIT_INTEREST_RATE,
1485 IMPLICIT_NON_IDC_INTEREST_RATE,
1486 TARGET_PRE_TAX_YIELD,
1487 TARGET_AFTER_TAX_YIELD,
1488 TARGET_IMPLICIT_INTEREST_RATE,
1489 TARGET_IMPLICIT_NONIDC_INTRATE,
1490 DATE_LAST_INTERIM_INTEREST_CAL,
1491 DEAL_TYPE,
1492 PRE_TAX_IRR,
1493 AFTER_TAX_IRR,
1494 EXPECTED_DELIVERY_DATE,
1495 ACCEPTED_DATE,
1496 PREFUNDING_ELIGIBLE_YN,
1497 REVOLVING_CREDIT_YN,
1498 --Bug# 2697681 schema changes 11.5.9
1499 CURRENCY_CONVERSION_TYPE,
1500 CURRENCY_CONVERSION_RATE,
1501 CURRENCY_CONVERSION_DATE,
1502 MULTI_GAAP_YN,
1503 RECOURSE_CODE,
1504 LESSOR_SERV_ORG_CODE,
1505 ASSIGNABLE_YN,
1506 SECURITIZED_CODE,
1507 SECURITIZATION_TYPE,
1508 --Bug#3143522 : 11.5.10
1509 --subsidy
1510 SUB_PRE_TAX_YIELD,
1511 SUB_AFTER_TAX_YIELD,
1512 SUB_IMPL_INTEREST_RATE,
1513 SUB_IMPL_NON_IDC_INT_RATE,
1514 SUB_PRE_TAX_IRR,
1515 SUB_AFTER_TAX_IRR,
1516 --Bug# 3973640 : 11.5.10+
1517 TOT_CL_TRANSFER_AMT,
1518 TOT_CL_NET_TRANSFER_AMT,
1519 TOT_CL_LIMIT,
1520 TOT_CL_FUNDING_AMT,
1521 CRS_ID,
1522 TEMPLATE_TYPE_CODE,
1523 --Bug# 4419339 OKLH Schema Sales Quote
1524 DATE_FUNDING_EXPECTED ,
1525 DATE_TRADEIN,
1526 TRADEIN_AMOUNT,
1527 TRADEIN_DESCRIPTION,
1528 --Added by dpsingh for LE uptake
1529 LEGAL_ENTITY_ID
1530 FROM OKL_K_HEADERS_H
1531 WHERE OKL_K_HEADERS_H.id = p_id;
1532 l_okl_k_headers_h_rec okl_k_headers_h_rec_type;
1533 BEGIN
1534
1535 x_no_data_found := TRUE;
1536 -- Get current database values
1537 OPEN okl_k_headers_h_pk_csr (p_okl_k_headers_h_rec.id);
1538 FETCH okl_k_headers_h_pk_csr INTO
1539 l_okl_k_headers_h_rec.ID,
1540 l_okl_k_headers_h_rec.MAJOR_VERSION,
1541 l_okl_k_headers_h_rec.ISG_ID,
1542 l_okl_k_headers_h_rec.KHR_ID,
1543 l_okl_k_headers_h_rec.PDT_ID,
1544 l_okl_k_headers_h_rec.OBJECT_VERSION_NUMBER,
1545 l_okl_k_headers_h_rec.DATE_FIRST_ACTIVITY,
1546 l_okl_k_headers_h_rec.SYNDICATABLE_YN,
1547 l_okl_k_headers_h_rec.SALESTYPE_YN,
1548 l_okl_k_headers_h_rec.DATE_REFINANCED,
1549 l_okl_k_headers_h_rec.DATE_CONVERSION_EFFECTIVE,
1550 l_okl_k_headers_h_rec.DATE_DEAL_TRANSFERRED,
1551 l_okl_k_headers_h_rec.TERM_DURATION,
1552 l_okl_k_headers_h_rec.DATETIME_PROPOSAL_EFFECTIVE,
1553 l_okl_k_headers_h_rec.DATETIME_PROPOSAL_INEFFECTIVE,
1554 l_okl_k_headers_h_rec.DATE_PROPOSAL_ACCEPTED,
1555 l_okl_k_headers_h_rec.ATTRIBUTE_CATEGORY,
1556 l_okl_k_headers_h_rec.ATTRIBUTE1,
1557 l_okl_k_headers_h_rec.ATTRIBUTE2,
1558 l_okl_k_headers_h_rec.ATTRIBUTE3,
1559 l_okl_k_headers_h_rec.ATTRIBUTE4,
1560 l_okl_k_headers_h_rec.ATTRIBUTE5,
1561 l_okl_k_headers_h_rec.ATTRIBUTE6,
1562 l_okl_k_headers_h_rec.ATTRIBUTE7,
1563 l_okl_k_headers_h_rec.ATTRIBUTE8,
1564 l_okl_k_headers_h_rec.ATTRIBUTE9,
1565 l_okl_k_headers_h_rec.ATTRIBUTE10,
1566 l_okl_k_headers_h_rec.ATTRIBUTE11,
1567 l_okl_k_headers_h_rec.ATTRIBUTE12,
1568 l_okl_k_headers_h_rec.ATTRIBUTE13,
1569 l_okl_k_headers_h_rec.ATTRIBUTE14,
1570 l_okl_k_headers_h_rec.ATTRIBUTE15,
1571 l_okl_k_headers_h_rec.CREATED_BY,
1572 l_okl_k_headers_h_rec.CREATION_DATE,
1573 l_okl_k_headers_h_rec.LAST_UPDATED_BY,
1574 l_okl_k_headers_h_rec.LAST_UPDATE_DATE,
1575 l_okl_k_headers_h_rec.LAST_UPDATE_LOGIN,
1576 l_okl_k_headers_h_rec.AMD_CODE,
1577 l_okl_k_headers_h_rec.GENERATE_ACCRUAL_YN,
1578 l_okl_k_headers_h_rec.GENERATE_ACCRUAL_OVERRIDE_YN,
1579 l_okl_k_headers_h_rec.CREDIT_ACT_YN,
1580 l_okl_k_headers_h_rec.CONVERTED_ACCOUNT_YN,
1581 l_okl_k_headers_h_rec.PRE_TAX_YIELD,
1582 l_okl_k_headers_h_rec.AFTER_TAX_YIELD,
1583 l_okl_k_headers_h_rec.IMPLICIT_INTEREST_RATE,
1584 l_okl_k_headers_h_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
1585 l_okl_k_headers_h_rec.TARGET_PRE_TAX_YIELD,
1586 l_okl_k_headers_h_rec.TARGET_AFTER_TAX_YIELD,
1587 l_okl_k_headers_h_rec.TARGET_IMPLICIT_INTEREST_RATE,
1588 l_okl_k_headers_h_rec.TARGET_IMPLICIT_NONIDC_INTRATE,
1589 l_okl_k_headers_h_rec.DATE_LAST_INTERIM_INTEREST_CAL,
1590 l_okl_k_headers_h_rec.DEAL_TYPE,
1591 l_okl_k_headers_h_rec.PRE_TAX_IRR,
1592 l_okl_k_headers_h_rec.AFTER_TAX_IRR,
1593 l_okl_k_headers_h_rec.EXPECTED_DELIVERY_DATE,
1594 l_okl_k_headers_h_rec.ACCEPTED_DATE,
1595 l_okl_k_headers_h_rec.PREFUNDING_ELIGIBLE_YN,
1596 l_okl_k_headers_h_rec.REVOLVING_CREDIT_YN,
1597 --Bug# 2697681 schema changes 11.5.9
1598 l_okl_k_headers_h_rec.CURRENCY_CONVERSION_TYPE,
1599 l_okl_k_headers_h_rec.CURRENCY_CONVERSION_RATE,
1600 l_okl_k_headers_h_rec.CURRENCY_CONVERSION_DATE,
1601 l_okl_k_headers_h_rec.MULTI_GAAP_YN,
1602 l_okl_k_headers_h_rec.RECOURSE_CODE,
1603 l_okl_k_headers_h_rec.LESSOR_SERV_ORG_CODE,
1604 l_okl_k_headers_h_rec.ASSIGNABLE_YN,
1605 l_okl_k_headers_h_rec.SECURITIZED_CODE,
1606 l_okl_k_headers_h_rec.SECURITIZATION_TYPE,
1607 --Bug#3143522 : 11.5.10
1608 --subsidy
1609 l_okl_k_headers_h_rec.SUB_PRE_TAX_YIELD,
1610 l_okl_k_headers_h_rec.SUB_AFTER_TAX_YIELD,
1611 l_okl_k_headers_h_rec.SUB_IMPL_INTEREST_RATE,
1612 l_okl_k_headers_h_rec.SUB_IMPL_NON_IDC_INT_RATE,
1613 l_okl_k_headers_h_rec.SUB_PRE_TAX_IRR,
1614 l_okl_k_headers_h_rec.SUB_AFTER_TAX_IRR,
1615 --Bug# 3973640 : 11.5.10+
1616 l_okl_k_headers_h_rec.TOT_CL_TRANSFER_AMT,
1617 l_okl_k_headers_h_rec.TOT_CL_NET_TRANSFER_AMT,
1618 l_okl_k_headers_h_rec.TOT_CL_LIMIT,
1619 l_okl_k_headers_h_rec.TOT_CL_FUNDING_AMT,
1620 l_okl_k_headers_h_rec.CRS_ID,
1621 l_okl_k_headers_h_rec.TEMPLATE_TYPE_CODE,
1622 --Bug# 4419339 OKLH Schema Sales Quote
1623 l_okl_k_headers_h_rec.DATE_FUNDING_EXPECTED ,
1624 l_okl_k_headers_h_rec.DATE_TRADEIN,
1625 l_okl_k_headers_h_rec.TRADEIN_AMOUNT,
1626 l_okl_k_headers_h_rec.TRADEIN_DESCRIPTION,
1627 --Added by dpsingh for LE uptake
1628 l_okl_k_headers_h_rec.LEGAL_ENTITY_ID
1629 ;
1630 x_no_data_found := okl_k_headers_h_pk_csr%NOTFOUND;
1631 CLOSE okl_k_headers_h_pk_csr;
1632 RETURN(l_okl_k_headers_h_rec);
1633 END get_rec;
1634
1635 FUNCTION get_rec (
1636 p_okl_k_headers_h_rec IN okl_k_headers_h_rec_type
1637 ) RETURN okl_k_headers_h_rec_type IS
1638 l_row_notfound BOOLEAN := TRUE;
1639 BEGIN
1640 RETURN(get_rec(p_okl_k_headers_h_rec, l_row_notfound));
1641 END get_rec;
1642
1643
1644 ---------------------------------------------------------------------------
1645 -- FUNCTION get_rec for: OKL_K_HEADERS_V
1646 ---------------------------------------------------------------------------
1647 FUNCTION get_rec (
1648 p_khrv_rec IN khrv_rec_type,
1649 x_no_data_found OUT NOCOPY BOOLEAN
1650 ) RETURN khrv_rec_type IS
1651 CURSOR okl_k_headers_v_pk_csr (p_id IN NUMBER) IS
1652 SELECT
1653 ID,
1654 OBJECT_VERSION_NUMBER,
1655 ISG_ID,
1656 KHR_ID,
1657 PDT_ID,
1658 AMD_CODE,
1659 DATE_FIRST_ACTIVITY,
1660 GENERATE_ACCRUAL_YN,
1661 GENERATE_ACCRUAL_OVERRIDE_YN,
1662 DATE_REFINANCED,
1663 CREDIT_ACT_YN,
1664 TERM_DURATION,
1665 CONVERTED_ACCOUNT_YN,
1666 DATE_CONVERSION_EFFECTIVE,
1667 SYNDICATABLE_YN,
1668 SALESTYPE_YN,
1669 DATE_DEAL_TRANSFERRED,
1670 DATETIME_PROPOSAL_EFFECTIVE,
1671 DATETIME_PROPOSAL_INEFFECTIVE,
1672 DATE_PROPOSAL_ACCEPTED,
1673 ATTRIBUTE_CATEGORY,
1674 ATTRIBUTE1,
1675 ATTRIBUTE2,
1676 ATTRIBUTE3,
1677 ATTRIBUTE4,
1678 ATTRIBUTE5,
1679 ATTRIBUTE6,
1680 ATTRIBUTE7,
1681 ATTRIBUTE8,
1682 ATTRIBUTE9,
1683 ATTRIBUTE10,
1684 ATTRIBUTE11,
1685 ATTRIBUTE12,
1686 ATTRIBUTE13,
1687 ATTRIBUTE14,
1688 ATTRIBUTE15,
1689 CREATED_BY,
1690 CREATION_DATE,
1691 LAST_UPDATED_BY,
1692 LAST_UPDATE_DATE,
1693 LAST_UPDATE_LOGIN,
1694 PRE_TAX_YIELD,
1695 AFTER_TAX_YIELD,
1696 IMPLICIT_INTEREST_RATE,
1697 IMPLICIT_NON_IDC_INTEREST_RATE,
1698 TARGET_PRE_TAX_YIELD,
1699 TARGET_AFTER_TAX_YIELD,
1700 TARGET_IMPLICIT_INTEREST_RATE,
1701 TARGET_IMPLICIT_NONIDC_INTRATE,
1702 DATE_LAST_INTERIM_INTEREST_CAL,
1703 DEAL_TYPE,
1704 PRE_TAX_IRR,
1705 AFTER_TAX_IRR,
1706 EXPECTED_DELIVERY_DATE,
1707 ACCEPTED_DATE,
1708 PREFUNDING_ELIGIBLE_YN,
1709 REVOLVING_CREDIT_YN,
1710 --Bug# 2697681 schema changes 11.5.9
1711 CURRENCY_CONVERSION_TYPE,
1712 CURRENCY_CONVERSION_RATE,
1713 CURRENCY_CONVERSION_DATE,
1714 MULTI_GAAP_YN,
1715 RECOURSE_CODE,
1716 LESSOR_SERV_ORG_CODE,
1717 ASSIGNABLE_YN,
1718 SECURITIZED_CODE,
1719 SECURITIZATION_TYPE,
1720 --Bug#3143522 : 11.5.10
1721 --subsidy
1722 SUB_PRE_TAX_YIELD,
1723 SUB_AFTER_TAX_YIELD,
1724 SUB_IMPL_INTEREST_RATE,
1725 SUB_IMPL_NON_IDC_INT_RATE,
1726 SUB_PRE_TAX_IRR,
1727 SUB_AFTER_TAX_IRR,
1728 --Bug# 3973640 11.5.10+ schema
1729 TOT_CL_TRANSFER_AMT,
1730 TOT_CL_NET_TRANSFER_AMT,
1731 TOT_CL_LIMIT,
1732 TOT_CL_FUNDING_AMT,
1733 CRS_ID,
1734 TEMPLATE_TYPE_CODE,
1735 --Bug# 4419339 OKLH Schema Sales Quote
1736 DATE_FUNDING_EXPECTED ,
1737 DATE_TRADEIN,
1738 TRADEIN_AMOUNT,
1739 TRADEIN_DESCRIPTION,
1740 --Added by dpsingh for LE uptake
1741 LEGAL_ENTITY_ID
1742 FROM OKL_K_HEADERS_V
1743 WHERE OKL_K_HEADERS_V.id = p_id;
1744
1745 l_khrv_rec khrv_rec_type;
1746 BEGIN
1747
1748 x_no_data_found := TRUE;
1749 -- Get current database values
1750 OPEN okl_k_headers_v_pk_csr (p_khrv_rec.id);
1751 FETCH okl_k_headers_v_pk_csr INTO
1752 l_khrv_rec.ID,
1753 l_khrv_rec.OBJECT_VERSION_NUMBER,
1754 l_khrv_rec.ISG_ID,
1755 l_khrv_rec.KHR_ID,
1756 l_khrv_rec.PDT_ID,
1757 l_khrv_rec.AMD_CODE,
1758 l_khrv_rec.DATE_FIRST_ACTIVITY,
1759 l_khrv_rec.GENERATE_ACCRUAL_YN,
1760 l_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN,
1761 l_khrv_rec.DATE_REFINANCED,
1762 l_khrv_rec.CREDIT_ACT_YN,
1763 l_khrv_rec.TERM_DURATION,
1764 l_khrv_rec.CONVERTED_ACCOUNT_YN,
1765 l_khrv_rec.DATE_CONVERSION_EFFECTIVE,
1766 l_khrv_rec.SYNDICATABLE_YN,
1767 l_khrv_rec.SALESTYPE_YN,
1768 l_khrv_rec.DATE_DEAL_TRANSFERRED,
1769 l_khrv_rec.DATETIME_PROPOSAL_EFFECTIVE,
1770 l_khrv_rec.DATETIME_PROPOSAL_INEFFECTIVE,
1771 l_khrv_rec.DATE_PROPOSAL_ACCEPTED,
1772 l_khrv_rec.ATTRIBUTE_CATEGORY,
1773 l_khrv_rec.ATTRIBUTE1,
1774 l_khrv_rec.ATTRIBUTE2,
1775 l_khrv_rec.ATTRIBUTE3,
1776 l_khrv_rec.ATTRIBUTE4,
1777 l_khrv_rec.ATTRIBUTE5,
1778 l_khrv_rec.ATTRIBUTE6,
1779 l_khrv_rec.ATTRIBUTE7,
1780 l_khrv_rec.ATTRIBUTE8,
1781 l_khrv_rec.ATTRIBUTE9,
1782 l_khrv_rec.ATTRIBUTE10,
1783 l_khrv_rec.ATTRIBUTE11,
1784 l_khrv_rec.ATTRIBUTE12,
1785 l_khrv_rec.ATTRIBUTE13,
1786 l_khrv_rec.ATTRIBUTE14,
1787 l_khrv_rec.ATTRIBUTE15,
1788 l_khrv_rec.CREATED_BY,
1789 l_khrv_rec.CREATION_DATE,
1790 l_khrv_rec.LAST_UPDATED_BY,
1791 l_khrv_rec.LAST_UPDATE_DATE,
1792 l_khrv_rec.LAST_UPDATE_LOGIN,
1793 l_khrv_rec.PRE_TAX_YIELD,
1794 l_khrv_rec.AFTER_TAX_YIELD,
1795 l_khrv_rec.IMPLICIT_INTEREST_RATE,
1796 l_khrv_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
1797 l_khrv_rec.TARGET_PRE_TAX_YIELD,
1798 l_khrv_rec.TARGET_AFTER_TAX_YIELD,
1799 l_khrv_rec.TARGET_IMPLICIT_INTEREST_RATE,
1800 l_khrv_rec.TARGET_IMPLICIT_NONIDC_INTRATE,
1801 l_khrv_rec.DATE_LAST_INTERIM_INTEREST_CAL,
1802 l_khrv_rec.DEAL_TYPE,
1803 l_khrv_rec.PRE_TAX_IRR,
1804 l_khrv_rec.AFTER_TAX_IRR,
1805 l_khrv_rec.EXPECTED_DELIVERY_DATE,
1806 l_khrv_rec.ACCEPTED_DATE,
1807 l_khrv_rec.PREFUNDING_ELIGIBLE_YN,
1808 l_khrv_rec.REVOLVING_CREDIT_YN,
1809 --Bug# 2697681 schema changes 11.5.9
1810 l_khrv_rec.CURRENCY_CONVERSION_TYPE,
1811 l_khrv_rec.CURRENCY_CONVERSION_RATE,
1812 l_khrv_rec.CURRENCY_CONVERSION_DATE,
1813 l_khrv_rec.MULTI_GAAP_YN,
1814 l_khrv_rec.RECOURSE_CODE,
1815 l_khrv_rec.LESSOR_SERV_ORG_CODE,
1816 l_khrv_rec.ASSIGNABLE_YN,
1817 l_khrv_rec.SECURITIZED_CODE,
1818 l_khrv_rec.SECURITIZATION_TYPE,
1819 --Bug#3143522 : 11.5.10
1820 --subsidy
1821 l_khrv_rec.SUB_PRE_TAX_YIELD,
1822 l_khrv_rec.SUB_AFTER_TAX_YIELD,
1823 l_khrv_rec.SUB_IMPL_INTEREST_RATE,
1824 l_khrv_rec.SUB_IMPL_NON_IDC_INT_RATE,
1825 l_khrv_rec.SUB_PRE_TAX_IRR,
1826 l_khrv_rec.SUB_AFTER_TAX_IRR,
1827 --Bug# 3973640 11.5.10+ schema
1828 l_khrv_rec.TOT_CL_TRANSFER_AMT,
1829 l_khrv_rec.TOT_CL_NET_TRANSFER_AMT,
1830 l_khrv_rec.TOT_CL_LIMIT,
1831 l_khrv_rec.TOT_CL_FUNDING_AMT,
1832 l_khrv_rec.CRS_ID,
1833 l_khrv_rec.TEMPLATE_TYPE_CODE,
1834 --Bug# 4419339 OKLH Schema Sales Quote
1835 l_khrv_rec.DATE_FUNDING_EXPECTED ,
1836 l_khrv_rec.DATE_TRADEIN,
1837 l_khrv_rec.TRADEIN_AMOUNT,
1838 l_khrv_rec.TRADEIN_DESCRIPTION,
1839 --Added by dpsingh for LE uptake
1840 l_khrv_rec.LEGAL_ENTITY_ID ;
1841 x_no_data_found := okl_k_headers_v_pk_csr%NOTFOUND;
1842 CLOSE okl_k_headers_v_pk_csr;
1843 RETURN(l_khrv_rec);
1844 END get_rec;
1845
1846 FUNCTION get_rec (
1847 p_khrv_rec IN khrv_rec_type
1848 ) RETURN khrv_rec_type IS
1849 l_row_notfound BOOLEAN := TRUE;
1850 BEGIN
1851 RETURN(get_rec(p_khrv_rec, l_row_notfound));
1852 END get_rec;
1853
1854
1855 -----------------------------------------------------
1856 -- FUNCTION null_out_defaults for: OKL_K_HEADERS_V --
1857 -----------------------------------------------------
1858 FUNCTION null_out_defaults (
1859 p_khrv_rec IN khrv_rec_type
1860 ) RETURN khrv_rec_type IS
1861 l_khrv_rec khrv_rec_type := p_khrv_rec;
1862 BEGIN
1863
1864 IF (l_khrv_rec.ID = OKC_API.G_MISS_NUM) THEN
1865 l_khrv_rec.ID := NULL;
1866 END IF;
1867
1868 IF (l_khrv_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) THEN
1869 l_khrv_rec.OBJECT_VERSION_NUMBER := NULL;
1870 END IF;
1871
1872 IF (l_khrv_rec.ISG_ID = OKC_API.G_MISS_NUM) THEN
1873 l_khrv_rec.ISG_ID := NULL;
1874 END IF;
1875
1876 IF (l_khrv_rec.KHR_ID = OKC_API.G_MISS_NUM) THEN
1877 l_khrv_rec.KHR_ID := NULL;
1878 END IF;
1879
1880 IF (l_khrv_rec.PDT_ID = OKC_API.G_MISS_NUM) THEN
1881 l_khrv_rec.PDT_ID := NULL;
1882 END IF;
1883
1884 IF (l_khrv_rec.AMD_CODE = OKC_API.G_MISS_CHAR) THEN
1885 l_khrv_rec.AMD_CODE := NULL;
1886 END IF;
1887
1888 IF (l_khrv_rec.DATE_FIRST_ACTIVITY = OKC_API.G_MISS_DATE) THEN
1889 l_khrv_rec.DATE_FIRST_ACTIVITY := NULL;
1890 END IF;
1891
1892 IF (l_khrv_rec.GENERATE_ACCRUAL_YN = OKC_API.G_MISS_CHAR) THEN
1893 l_khrv_rec.GENERATE_ACCRUAL_YN := NULL;
1894 END IF;
1895
1896 IF (l_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN = OKC_API.G_MISS_CHAR) THEN
1897 l_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN := NULL;
1898 END IF;
1899
1900 IF (l_khrv_rec.DATE_REFINANCED = OKC_API.G_MISS_DATE) THEN
1901 l_khrv_rec.DATE_REFINANCED := NULL;
1902 END IF;
1903
1904 IF (l_khrv_rec.CREDIT_ACT_YN = OKC_API.G_MISS_CHAR) THEN
1905 l_khrv_rec.CREDIT_ACT_YN := NULL;
1906 END IF;
1907
1908 IF (l_khrv_rec.TERM_DURATION = OKC_API.G_MISS_NUM) THEN
1909 l_khrv_rec.TERM_DURATION := NULL;
1910 END IF;
1911
1912 IF (l_khrv_rec.CONVERTED_ACCOUNT_YN = OKC_API.G_MISS_CHAR) THEN
1913 l_khrv_rec.CONVERTED_ACCOUNT_YN := NULL;
1914 END IF;
1915
1916 IF (l_khrv_rec.DATE_CONVERSION_EFFECTIVE = OKC_API.G_MISS_DATE) THEN
1917 l_khrv_rec.DATE_CONVERSION_EFFECTIVE := NULL;
1918 END IF;
1919
1920 IF (l_khrv_rec.SYNDICATABLE_YN = OKC_API.G_MISS_CHAR) THEN
1921 l_khrv_rec.SYNDICATABLE_YN := NULL;
1922 END IF;
1923
1924 IF (l_khrv_rec.SALESTYPE_YN = OKC_API.G_MISS_CHAR) THEN
1925 l_khrv_rec.SALESTYPE_YN := NULL;
1926 END IF;
1927
1928 IF (l_khrv_rec.DATE_DEAL_TRANSFERRED = OKC_API.G_MISS_DATE) THEN
1929 l_khrv_rec.DATE_DEAL_TRANSFERRED := NULL;
1930 END IF;
1931
1932 IF (l_khrv_rec.DATETIME_PROPOSAL_EFFECTIVE = OKC_API.G_MISS_DATE) THEN
1933 l_khrv_rec.DATETIME_PROPOSAL_EFFECTIVE := NULL;
1934 END IF;
1935
1936 IF (l_khrv_rec.DATETIME_PROPOSAL_INEFFECTIVE = OKC_API.G_MISS_DATE) THEN
1937 l_khrv_rec.DATETIME_PROPOSAL_INEFFECTIVE := NULL;
1938 END IF;
1939
1940 IF (l_khrv_rec.DATE_PROPOSAL_ACCEPTED = OKC_API.G_MISS_DATE) THEN
1941 l_khrv_rec.DATE_PROPOSAL_ACCEPTED := NULL;
1942 END IF;
1943
1944 IF (l_khrv_rec.ATTRIBUTE_CATEGORY = OKC_API.G_MISS_CHAR) THEN
1945 l_khrv_rec.ATTRIBUTE_CATEGORY := NULL;
1946 END IF;
1947
1948 IF (l_khrv_rec.ATTRIBUTE1 = OKC_API.G_MISS_CHAR) THEN
1949 l_khrv_rec.ATTRIBUTE1 := NULL;
1950 END IF;
1951
1952 IF (l_khrv_rec.ATTRIBUTE2 = OKC_API.G_MISS_CHAR) THEN
1953 l_khrv_rec.ATTRIBUTE2 := NULL;
1954 END IF;
1955
1956 IF (l_khrv_rec.ATTRIBUTE3 = OKC_API.G_MISS_CHAR) THEN
1957 l_khrv_rec.ATTRIBUTE3 := NULL;
1958 END IF;
1959
1960 IF (l_khrv_rec.ATTRIBUTE4 = OKC_API.G_MISS_CHAR) THEN
1961 l_khrv_rec.ATTRIBUTE4 := NULL;
1962 END IF;
1963
1964 IF (l_khrv_rec.ATTRIBUTE5 = OKC_API.G_MISS_CHAR) THEN
1965 l_khrv_rec.ATTRIBUTE5 := NULL;
1966 END IF;
1967
1968 IF (l_khrv_rec.ATTRIBUTE6 = OKC_API.G_MISS_CHAR) THEN
1969 l_khrv_rec.ATTRIBUTE6 := NULL;
1970 END IF;
1971
1972 IF (l_khrv_rec.ATTRIBUTE7 = OKC_API.G_MISS_CHAR) THEN
1973 l_khrv_rec.ATTRIBUTE7 := NULL;
1974 END IF;
1975
1976 IF (l_khrv_rec.ATTRIBUTE8 = OKC_API.G_MISS_CHAR) THEN
1977 l_khrv_rec.ATTRIBUTE8 := NULL;
1978 END IF;
1979
1980 IF (l_khrv_rec.ATTRIBUTE9 = OKC_API.G_MISS_CHAR) THEN
1981 l_khrv_rec.ATTRIBUTE9 := NULL;
1982 END IF;
1983
1984 IF (l_khrv_rec.ATTRIBUTE10 = OKC_API.G_MISS_CHAR) THEN
1985 l_khrv_rec.ATTRIBUTE10 := NULL;
1986 END IF;
1987
1988 IF (l_khrv_rec.ATTRIBUTE11 = OKC_API.G_MISS_CHAR) THEN
1989 l_khrv_rec.ATTRIBUTE11 := NULL;
1990 END IF;
1991
1992 IF (l_khrv_rec.ATTRIBUTE12 = OKC_API.G_MISS_CHAR) THEN
1993 l_khrv_rec.ATTRIBUTE12 := NULL;
1994 END IF;
1995
1996 IF (l_khrv_rec.ATTRIBUTE13 = OKC_API.G_MISS_CHAR) THEN
1997 l_khrv_rec.ATTRIBUTE13 := NULL;
1998 END IF;
1999
2000 IF (l_khrv_rec.ATTRIBUTE14 = OKC_API.G_MISS_CHAR) THEN
2001 l_khrv_rec.ATTRIBUTE14 := NULL;
2002 END IF;
2003
2004 IF (l_khrv_rec.ATTRIBUTE15 = OKC_API.G_MISS_CHAR) THEN
2005 l_khrv_rec.ATTRIBUTE15 := NULL;
2006 END IF;
2007
2008 IF (l_khrv_rec.CREATED_BY = OKC_API.G_MISS_NUM) THEN
2009 l_khrv_rec.CREATED_BY := NULL;
2010 END IF;
2011
2012 IF (l_khrv_rec.CREATION_DATE = OKC_API.G_MISS_DATE) THEN
2013 l_khrv_rec.CREATION_DATE := NULL;
2014 END IF;
2015
2016 IF (l_khrv_rec.LAST_UPDATED_BY = OKC_API.G_MISS_NUM) THEN
2017 l_khrv_rec.LAST_UPDATED_BY := NULL;
2018 END IF;
2019
2020 IF (l_khrv_rec.LAST_UPDATE_DATE = OKC_API.G_MISS_DATE) THEN
2021 l_khrv_rec.LAST_UPDATE_DATE := NULL;
2022 END IF;
2023
2024 IF (l_khrv_rec.LAST_UPDATE_LOGIN = OKC_API.G_MISS_NUM) THEN
2025 l_khrv_rec.LAST_UPDATE_LOGIN := NULL;
2026 END IF;
2027
2028 IF (l_khrv_rec.PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
2029 l_khrv_rec.PRE_TAX_YIELD := NULL;
2030 END IF;
2031
2032 IF (l_khrv_rec.AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
2033 l_khrv_rec.AFTER_TAX_YIELD := NULL;
2034 END IF;
2035
2036 IF (l_khrv_rec.IMPLICIT_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
2037 l_khrv_rec.IMPLICIT_INTEREST_RATE := NULL;
2038 END IF;
2039
2040 IF (l_khrv_rec.IMPLICIT_NON_IDC_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
2041 l_khrv_rec.IMPLICIT_NON_IDC_INTEREST_RATE := NULL;
2042 END IF;
2043
2044 IF (l_khrv_rec.TARGET_PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
2045 l_khrv_rec.TARGET_PRE_TAX_YIELD := NULL;
2046 END IF;
2047
2048 IF (l_khrv_rec.TARGET_AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
2049 l_khrv_rec.TARGET_AFTER_TAX_YIELD := NULL;
2050 END IF;
2051
2052 IF (l_khrv_rec.TARGET_IMPLICIT_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
2053 l_khrv_rec.TARGET_IMPLICIT_INTEREST_RATE := NULL;
2054 END IF;
2055
2056 IF (l_khrv_rec.TARGET_IMPLICIT_NONIDC_INTRATE = OKC_API.G_MISS_NUM) THEN
2057 l_khrv_rec.TARGET_IMPLICIT_NONIDC_INTRATE := NULL;
2058 END IF;
2059
2060 IF (l_khrv_rec.DATE_LAST_INTERIM_INTEREST_CAL = OKC_API.G_MISS_DATE) THEN
2061 l_khrv_rec.DATE_LAST_INTERIM_INTEREST_CAL := NULL;
2062 END IF;
2063
2064 IF (l_khrv_rec.DEAL_TYPE = OKC_API.G_MISS_CHAR) THEN
2065 l_khrv_rec.DEAL_TYPE := NULL;
2066 END IF;
2067
2068 IF (l_khrv_rec.PRE_TAX_IRR = OKC_API.G_MISS_NUM) THEN
2069 l_khrv_rec.PRE_TAX_IRR := NULL;
2070 END IF;
2071
2072 IF (l_khrv_rec.AFTER_TAX_IRR = OKC_API.G_MISS_NUM) THEN
2073 l_khrv_rec.AFTER_TAX_IRR := NULL;
2074 END IF;
2075
2076 IF (l_khrv_rec.EXPECTED_DELIVERY_DATE = OKC_API.G_MISS_DATE) THEN
2077 l_khrv_rec.EXPECTED_DELIVERY_DATE := NULL;
2078 END IF;
2079
2080 IF (l_khrv_rec.ACCEPTED_DATE = OKC_API.G_MISS_DATE) THEN
2081 l_khrv_rec.ACCEPTED_DATE := NULL;
2082 END IF;
2083
2084 IF (l_khrv_rec.PREFUNDING_ELIGIBLE_YN = OKC_API.G_MISS_CHAR) THEN
2085 l_khrv_rec.PREFUNDING_ELIGIBLE_YN := NULL;
2086 END IF;
2087
2088 IF (l_khrv_rec.REVOLVING_CREDIT_YN = OKC_API.G_MISS_CHAR) THEN
2089 l_khrv_rec.REVOLVING_CREDIT_YN := NULL;
2090 END IF;
2091
2092 --Bug# 2697681 schema changes 11.5.9
2093 IF (l_khrv_rec.CURRENCY_CONVERSION_TYPE = OKC_API.G_MISS_CHAR) THEN
2094 l_khrv_rec.CURRENCY_CONVERSION_TYPE := NULL;
2095 END IF;
2096
2097 IF (l_khrv_rec.CURRENCY_CONVERSION_RATE = OKC_API.G_MISS_NUM) THEN
2098 l_khrv_rec.CURRENCY_CONVERSION_RATE := NULL;
2099 END IF;
2100
2101 IF (l_khrv_rec.CURRENCY_CONVERSION_DATE = OKC_API.G_MISS_DATE) THEN
2102 l_khrv_rec.CURRENCY_CONVERSION_DATE := NULL;
2103 END IF;
2104
2105 IF (l_khrv_rec.MULTI_GAAP_YN = OKC_API.G_MISS_CHAR) THEN
2106 l_khrv_rec.MULTI_GAAP_YN := NULL;
2107 END IF;
2108
2109 IF (l_khrv_rec.RECOURSE_CODE = OKC_API.G_MISS_CHAR) THEN
2110 l_khrv_rec.RECOURSE_CODE := NULL;
2111 END IF;
2112
2113 IF (l_khrv_rec.LESSOR_SERV_ORG_CODE = OKC_API.G_MISS_CHAR) THEN
2114 l_khrv_rec.LESSOR_SERV_ORG_CODE := NULL;
2115 END IF;
2116
2117 IF (l_khrv_rec.ASSIGNABLE_YN = OKC_API.G_MISS_CHAR) THEN
2118 l_khrv_rec.ASSIGNABLE_YN := NULL;
2119 END IF;
2120
2121 IF (l_khrv_rec.SECURITIZED_CODE = OKC_API.G_MISS_CHAR) THEN
2122 l_khrv_rec.SECURITIZED_CODE := NULL;
2123 END IF;
2124
2125 IF (l_khrv_rec.SECURITIZATION_TYPE = OKC_API.G_MISS_CHAR) THEN
2126 l_khrv_rec.SECURITIZATION_TYPE := NULL;
2127 END IF;
2128 --Bug#3143522 : 11.5.10
2129 --subsidy
2130 IF (l_khrv_rec.SUB_PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
2131 l_khrv_rec.SUB_PRE_TAX_YIELD := NULL;
2132 END IF;
2133 IF (l_khrv_rec.SUB_AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
2134 l_khrv_rec.SUB_AFTER_TAX_YIELD := NULL;
2135 END IF;
2136 IF (l_khrv_rec.SUB_IMPL_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
2137 l_khrv_rec.SUB_IMPL_INTEREST_RATE := NULL;
2138 END IF;
2139 IF (l_khrv_rec.SUB_IMPL_NON_IDC_INT_RATE = OKC_API.G_MISS_NUM) THEN
2140 l_khrv_rec.SUB_IMPL_NON_IDC_INT_RATE := NULL;
2141 END IF;
2142 IF (l_khrv_rec.SUB_PRE_TAX_IRR = OKC_API.G_MISS_NUM) THEN
2143 l_khrv_rec.SUB_PRE_TAX_IRR := NULL;
2144 END IF;
2145 IF (l_khrv_rec.SUB_AFTER_TAX_IRR = OKC_API.G_MISS_NUM) THEN
2146 l_khrv_rec.SUB_AFTER_TAX_IRR := NULL;
2147 END IF;
2148 --Bug# 3973640 : 11.5.10+ schema changes
2149 IF (l_khrv_rec.TOT_CL_TRANSFER_AMT = OKC_API.G_MISS_NUM) THEN
2150 l_khrv_rec.TOT_CL_TRANSFER_AMT := NULL;
2151 END IF;
2152 IF (l_khrv_rec.TOT_CL_NET_TRANSFER_AMT = OKC_API.G_MISS_NUM) THEN
2153 l_khrv_rec.TOT_CL_NET_TRANSFER_AMT := NULL;
2154 END IF;
2155 IF (l_khrv_rec.TOT_CL_LIMIT = OKC_API.G_MISS_NUM) THEN
2156 l_khrv_rec.TOT_CL_LIMIT := NULL;
2157 END IF;
2158 IF (l_khrv_rec.TOT_CL_FUNDING_AMT = OKC_API.G_MISS_NUM) THEN
2159 l_khrv_rec.TOT_CL_FUNDING_AMT := NULL;
2160 END IF;
2161 IF (l_khrv_rec.CRS_ID = OKC_API.G_MISS_NUM) THEN
2162 l_khrv_rec.CRS_ID := NULL;
2163 END IF;
2164 IF (l_khrv_rec.TEMPLATE_TYPE_CODE = OKC_API.G_MISS_CHAR) THEN
2165 l_khrv_rec.TEMPLATE_TYPE_CODE := NULL;
2166 END IF;
2167 --Bug# 4419339 OKLH Schema Sales Quote
2168 IF (l_khrv_rec.DATE_FUNDING_EXPECTED = OKC_API.G_MISS_DATE) THEN
2169 l_khrv_rec.DATE_FUNDING_EXPECTED := NULL;
2170 END IF;
2171
2172 IF (l_khrv_rec.DATE_TRADEIN = OKC_API.G_MISS_DATE) THEN
2173 l_khrv_rec.DATE_TRADEIN := NULL;
2174 END IF;
2175
2176 IF (l_khrv_rec.TRADEIN_AMOUNT = OKC_API.G_MISS_NUM) THEN
2177 l_khrv_rec.TRADEIN_AMOUNT := NULL;
2178 END IF;
2179
2180 IF (l_khrv_rec.TRADEIN_DESCRIPTION = OKC_API.G_MISS_CHAR) THEN
2181 l_khrv_rec.TRADEIN_DESCRIPTION := NULL;
2182 END IF;
2183
2184 --Added by dpsingh for LE uptake
2185 IF (l_khrv_rec.LEGAL_ENTITY_ID = OKL_API.G_MISS_NUM) THEN
2186 l_khrv_rec.LEGAL_ENTITY_ID := NULL;
2187 END IF;
2188
2189 RETURN(l_khrv_rec);
2190 END null_out_defaults;
2191
2192 ---------------------------------------------------------------------------
2193 -- PROCEDURE Validate_Record
2194 ---------------------------------------------------------------------------
2195
2196
2197 -----------------------------------------
2198 -- Validate_Record for: OKL_K_HEADERS_V --
2199 -----------------------------------------
2200 FUNCTION Validate_Record (
2201 p_khrv_rec IN khrv_rec_type
2202 ) RETURN VARCHAR2 IS
2203 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2204 BEGIN
2205 RETURN (l_return_status);
2206 END Validate_Record;
2207
2208
2209 ---------------------------------------------------------------------------
2210 -- PROCEDURE Migrate
2211 ---------------------------------------------------------------------------
2212
2213 PROCEDURE migrate (
2214 p_from IN khrv_rec_type,
2215 p_to IN OUT NOCOPY khr_rec_type
2216 ) IS
2217 BEGIN
2218
2219 p_to.ID := p_from.ID;
2220
2221 p_to.ISG_ID := p_from.ISG_ID;
2222
2223 p_to.KHR_ID := p_from.KHR_ID;
2224
2225 p_to.PDT_ID := p_from.PDT_ID;
2226
2227 p_to.OBJECT_VERSION_NUMBER := p_from.OBJECT_VERSION_NUMBER;
2228
2229 p_to.DATE_FIRST_ACTIVITY := p_from.DATE_FIRST_ACTIVITY;
2230
2231 p_to.SYNDICATABLE_YN := p_from.SYNDICATABLE_YN;
2232
2233 p_to.SALESTYPE_YN := p_from.SALESTYPE_YN;
2234
2235 p_to.DATE_REFINANCED := p_from.DATE_REFINANCED;
2236
2237 p_to.DATE_CONVERSION_EFFECTIVE := p_from.DATE_CONVERSION_EFFECTIVE;
2238
2239 p_to.DATE_DEAL_TRANSFERRED := p_from.DATE_DEAL_TRANSFERRED;
2240
2241 p_to.TERM_DURATION := p_from.TERM_DURATION;
2242
2243 p_to.DATETIME_PROPOSAL_EFFECTIVE := p_from.DATETIME_PROPOSAL_EFFECTIVE;
2244
2245 p_to.DATETIME_PROPOSAL_INEFFECTIVE := p_from.DATETIME_PROPOSAL_INEFFECTIVE;
2246
2247 p_to.DATE_PROPOSAL_ACCEPTED := p_from.DATE_PROPOSAL_ACCEPTED;
2248
2249 p_to.ATTRIBUTE_CATEGORY := p_from.ATTRIBUTE_CATEGORY;
2250
2251 p_to.ATTRIBUTE1 := p_from.ATTRIBUTE1;
2252
2253 p_to.ATTRIBUTE2 := p_from.ATTRIBUTE2;
2254
2255 p_to.ATTRIBUTE3 := p_from.ATTRIBUTE3;
2256
2257 p_to.ATTRIBUTE4 := p_from.ATTRIBUTE4;
2258
2259 p_to.ATTRIBUTE5 := p_from.ATTRIBUTE5;
2260
2261 p_to.ATTRIBUTE6 := p_from.ATTRIBUTE6;
2262
2263 p_to.ATTRIBUTE7 := p_from.ATTRIBUTE7;
2264
2265 p_to.ATTRIBUTE8 := p_from.ATTRIBUTE8;
2266
2267 p_to.ATTRIBUTE9 := p_from.ATTRIBUTE9;
2268
2269 p_to.ATTRIBUTE10 := p_from.ATTRIBUTE10;
2270
2271 p_to.ATTRIBUTE11 := p_from.ATTRIBUTE11;
2272
2273 p_to.ATTRIBUTE12 := p_from.ATTRIBUTE12;
2274
2275 p_to.ATTRIBUTE13 := p_from.ATTRIBUTE13;
2276
2277 p_to.ATTRIBUTE14 := p_from.ATTRIBUTE14;
2278
2279 p_to.ATTRIBUTE15 := p_from.ATTRIBUTE15;
2280
2281 p_to.CREATED_BY := p_from.CREATED_BY;
2282
2283 p_to.CREATION_DATE := p_from.CREATION_DATE;
2284
2285 p_to.LAST_UPDATED_BY := p_from.LAST_UPDATED_BY;
2286
2287 p_to.LAST_UPDATE_DATE := p_from.LAST_UPDATE_DATE;
2288
2289 p_to.LAST_UPDATE_LOGIN := p_from.LAST_UPDATE_LOGIN;
2290
2291 p_to.AMD_CODE := p_from.AMD_CODE;
2292
2293 p_to.GENERATE_ACCRUAL_YN := p_from.GENERATE_ACCRUAL_YN;
2294
2295 p_to.GENERATE_ACCRUAL_OVERRIDE_YN := p_from.GENERATE_ACCRUAL_OVERRIDE_YN;
2296
2297 p_to.CREDIT_ACT_YN := p_from.CREDIT_ACT_YN;
2298
2299 p_to.CONVERTED_ACCOUNT_YN := p_from.CONVERTED_ACCOUNT_YN;
2300
2301 p_to.PRE_TAX_YIELD := p_from.PRE_TAX_YIELD;
2302
2303 p_to.AFTER_TAX_YIELD := p_from.AFTER_TAX_YIELD;
2304
2305 p_to.IMPLICIT_INTEREST_RATE := p_from.IMPLICIT_INTEREST_RATE;
2306
2307 p_to.IMPLICIT_NON_IDC_INTEREST_RATE := p_from.IMPLICIT_NON_IDC_INTEREST_RATE;
2308
2309 p_to.TARGET_PRE_TAX_YIELD := p_from.TARGET_PRE_TAX_YIELD;
2310
2311 p_to.TARGET_AFTER_TAX_YIELD := p_from.TARGET_AFTER_TAX_YIELD;
2312
2313 p_to.TARGET_IMPLICIT_INTEREST_RATE := p_from.TARGET_IMPLICIT_INTEREST_RATE;
2314
2315 p_to.TARGET_IMPLICIT_NONIDC_INTRATE := p_from.TARGET_IMPLICIT_NONIDC_INTRATE;
2316
2317 p_to.DATE_LAST_INTERIM_INTEREST_CAL := p_from.DATE_LAST_INTERIM_INTEREST_CAL;
2318
2319 p_to.DEAL_TYPE := p_from.DEAL_TYPE;
2320
2321 p_to.PRE_TAX_IRR := p_from.PRE_TAX_IRR;
2322
2323 p_to.AFTER_TAX_IRR := p_from.AFTER_TAX_IRR;
2324
2325 p_to.EXPECTED_DELIVERY_DATE := p_from.EXPECTED_DELIVERY_DATE;
2326
2327 p_to.ACCEPTED_DATE := p_from.ACCEPTED_DATE;
2328
2329 p_to.PREFUNDING_ELIGIBLE_YN := p_from.PREFUNDING_ELIGIBLE_YN;
2330
2331 p_to.REVOLVING_CREDIT_YN := p_from.REVOLVING_CREDIT_YN;
2332
2333 --Bug# 2697681 schema changes 11.5.9
2334 p_to.CURRENCY_CONVERSION_TYPE := p_from.CURRENCY_CONVERSION_TYPE;
2335 p_to.CURRENCY_CONVERSION_RATE := p_from.CURRENCY_CONVERSION_RATE;
2336 p_to.CURRENCY_CONVERSION_DATE := p_from.CURRENCY_CONVERSION_DATE;
2337 p_to.MULTI_GAAP_YN := p_from.MULTI_GAAP_YN;
2338 p_to.RECOURSE_CODE := p_from.RECOURSE_CODE;
2339 p_to.LESSOR_SERV_ORG_CODE := p_from.LESSOR_SERV_ORG_CODE;
2340 p_to.ASSIGNABLE_YN := p_from.ASSIGNABLE_YN;
2341 p_to.SECURITIZED_CODE := p_from.SECURITIZED_CODE;
2342 p_to.SECURITIZATION_TYPE := p_from.SECURITIZATION_TYPE;
2343 --Bug#3143522 : 11.5.10
2344 --subsidy
2345 p_to.SUB_PRE_TAX_YIELD := p_from.SUB_PRE_TAX_YIELD;
2346 p_to.SUB_AFTER_TAX_YIELD := p_from.SUB_AFTER_TAX_YIELD;
2347 p_to.SUB_IMPL_INTEREST_RATE := p_from.SUB_IMPL_INTEREST_RATE;
2348 p_to.SUB_IMPL_NON_IDC_INT_RATE := p_from.SUB_IMPL_NON_IDC_INT_RATE;
2349 p_to.SUB_PRE_TAX_IRR := p_from.SUB_PRE_TAX_IRR;
2350 p_to.SUB_AFTER_TAX_IRR := p_from.SUB_AFTER_TAX_IRR;
2351 --Bug# 3973640 : 11.5.10+ schema changes
2352 p_to.TOT_CL_TRANSFER_AMT := p_from.TOT_CL_TRANSFER_AMT;
2353 p_to.TOT_CL_NET_TRANSFER_AMT := p_from.TOT_CL_NET_TRANSFER_AMT;
2354 p_to.TOT_CL_LIMIT := p_from.TOT_CL_LIMIT;
2355 p_to.TOT_CL_FUNDING_AMT := p_from.TOT_CL_FUNDING_AMT;
2356 p_to.CRS_ID := p_from.CRS_ID;
2357 p_to.TEMPLATE_TYPE_CODE := p_from.TEMPLATE_TYPE_CODE;
2358 --Bug# 4419339 OKLH Schema Sales Quote
2359 p_to.DATE_FUNDING_EXPECTED := p_from.DATE_FUNDING_EXPECTED;
2360 p_to.DATE_TRADEIN := p_from.DATE_TRADEIN;
2361 p_to.TRADEIN_AMOUNT := p_from.TRADEIN_AMOUNT;
2362 p_to.TRADEIN_DESCRIPTION := p_from.TRADEIN_DESCRIPTION;
2363 --Added by dpsingh for LE uptake
2364 p_to.LEGAL_ENTITY_ID := p_from.LEGAL_ENTITY_ID;
2365
2366
2367 END migrate;
2368
2369 PROCEDURE migrate (
2370 p_from IN khr_rec_type,
2371 p_to IN OUT NOCOPY khrv_rec_type
2372 ) IS
2373 BEGIN
2374
2375 p_to.ID := p_from.ID;
2376
2377 p_to.ISG_ID := p_from.ISG_ID;
2378
2379 p_to.KHR_ID := p_from.KHR_ID;
2380
2381 p_to.PDT_ID := p_from.PDT_ID;
2382
2383 p_to.OBJECT_VERSION_NUMBER := p_from.OBJECT_VERSION_NUMBER;
2384
2385 p_to.DATE_FIRST_ACTIVITY := p_from.DATE_FIRST_ACTIVITY;
2386
2387 p_to.SYNDICATABLE_YN := p_from.SYNDICATABLE_YN;
2388
2389 p_to.SALESTYPE_YN := p_from.SALESTYPE_YN;
2390
2391 p_to.DATE_REFINANCED := p_from.DATE_REFINANCED;
2392
2393 p_to.DATE_CONVERSION_EFFECTIVE := p_from.DATE_CONVERSION_EFFECTIVE;
2394
2395 p_to.DATE_DEAL_TRANSFERRED := p_from.DATE_DEAL_TRANSFERRED;
2396
2397 p_to.TERM_DURATION := p_from.TERM_DURATION;
2398
2399 p_to.DATETIME_PROPOSAL_EFFECTIVE := p_from.DATETIME_PROPOSAL_EFFECTIVE;
2400
2401 p_to.DATETIME_PROPOSAL_INEFFECTIVE := p_from.DATETIME_PROPOSAL_INEFFECTIVE;
2402
2403 p_to.DATE_PROPOSAL_ACCEPTED := p_from.DATE_PROPOSAL_ACCEPTED;
2404
2405 p_to.ATTRIBUTE_CATEGORY := p_from.ATTRIBUTE_CATEGORY;
2406
2407 p_to.ATTRIBUTE1 := p_from.ATTRIBUTE1;
2408
2409 p_to.ATTRIBUTE2 := p_from.ATTRIBUTE2;
2410
2411 p_to.ATTRIBUTE3 := p_from.ATTRIBUTE3;
2412
2413 p_to.ATTRIBUTE4 := p_from.ATTRIBUTE4;
2414
2415 p_to.ATTRIBUTE5 := p_from.ATTRIBUTE5;
2416
2417 p_to.ATTRIBUTE6 := p_from.ATTRIBUTE6;
2418
2419 p_to.ATTRIBUTE7 := p_from.ATTRIBUTE7;
2420
2421 p_to.ATTRIBUTE8 := p_from.ATTRIBUTE8;
2422
2423 p_to.ATTRIBUTE9 := p_from.ATTRIBUTE9;
2424
2425 p_to.ATTRIBUTE10 := p_from.ATTRIBUTE10;
2426
2427 p_to.ATTRIBUTE11 := p_from.ATTRIBUTE11;
2428
2429 p_to.ATTRIBUTE12 := p_from.ATTRIBUTE12;
2430
2431 p_to.ATTRIBUTE13 := p_from.ATTRIBUTE13;
2432
2433 p_to.ATTRIBUTE14 := p_from.ATTRIBUTE14;
2434
2435 p_to.ATTRIBUTE15 := p_from.ATTRIBUTE15;
2436
2437 p_to.CREATED_BY := p_from.CREATED_BY;
2438
2439 p_to.CREATION_DATE := p_from.CREATION_DATE;
2440
2441 p_to.LAST_UPDATED_BY := p_from.LAST_UPDATED_BY;
2442
2443 p_to.LAST_UPDATE_DATE := p_from.LAST_UPDATE_DATE;
2444
2445 p_to.LAST_UPDATE_LOGIN := p_from.LAST_UPDATE_LOGIN;
2446
2447 p_to.AMD_CODE := p_from.AMD_CODE;
2448
2449 p_to.GENERATE_ACCRUAL_YN := p_from.GENERATE_ACCRUAL_YN;
2450
2451 p_to.GENERATE_ACCRUAL_OVERRIDE_YN := p_from.GENERATE_ACCRUAL_OVERRIDE_YN;
2452
2453 p_to.CREDIT_ACT_YN := p_from.CREDIT_ACT_YN;
2454
2455 p_to.CONVERTED_ACCOUNT_YN := p_from.CONVERTED_ACCOUNT_YN;
2456
2457 p_to.PRE_TAX_YIELD := p_from.PRE_TAX_YIELD;
2458
2459 p_to.AFTER_TAX_YIELD := p_from.AFTER_TAX_YIELD;
2460
2461 p_to.IMPLICIT_INTEREST_RATE := p_from.IMPLICIT_INTEREST_RATE;
2462
2463 p_to.IMPLICIT_NON_IDC_INTEREST_RATE := p_from.IMPLICIT_NON_IDC_INTEREST_RATE;
2464
2465 p_to.TARGET_PRE_TAX_YIELD := p_from.TARGET_PRE_TAX_YIELD;
2466
2467 p_to.TARGET_AFTER_TAX_YIELD := p_from.TARGET_AFTER_TAX_YIELD;
2468
2469 p_to.TARGET_IMPLICIT_INTEREST_RATE := p_from.TARGET_IMPLICIT_INTEREST_RATE;
2470
2471 p_to.TARGET_IMPLICIT_NONIDC_INTRATE := p_from.TARGET_IMPLICIT_NONIDC_INTRATE;
2472
2473 p_to.DATE_LAST_INTERIM_INTEREST_CAL := p_from.DATE_LAST_INTERIM_INTEREST_CAL;
2474
2475 p_to.DEAL_TYPE := p_from.DEAL_TYPE;
2476
2477 p_to.PRE_TAX_IRR := p_from.PRE_TAX_IRR;
2478
2479 p_to.AFTER_TAX_IRR := p_from.AFTER_TAX_IRR;
2480
2481 p_to.EXPECTED_DELIVERY_DATE := p_from.EXPECTED_DELIVERY_DATE;
2482
2483 p_to.ACCEPTED_DATE := p_from.ACCEPTED_DATE;
2484
2485 p_to.PREFUNDING_ELIGIBLE_YN := p_from.PREFUNDING_ELIGIBLE_YN;
2486
2487 p_to.REVOLVING_CREDIT_YN := p_from.REVOLVING_CREDIT_YN;
2488
2489 --Bug# 2697681 schema changes 11.5.9
2490 p_to.CURRENCY_CONVERSION_TYPE := p_from.CURRENCY_CONVERSION_TYPE;
2491 p_to.CURRENCY_CONVERSION_RATE := p_from.CURRENCY_CONVERSION_RATE;
2492 p_to.CURRENCY_CONVERSION_DATE := p_from.CURRENCY_CONVERSION_DATE;
2493 p_to.MULTI_GAAP_YN := p_from.MULTI_GAAP_YN;
2494 p_to.RECOURSE_CODE := p_from.RECOURSE_CODE;
2495 p_to.LESSOR_SERV_ORG_CODE := p_from.LESSOR_SERV_ORG_CODE;
2496 p_to.ASSIGNABLE_YN := p_from.ASSIGNABLE_YN;
2497 p_to.SECURITIZED_CODE := p_from.SECURITIZED_CODE;
2498 p_to.SECURITIZATION_TYPE := p_from.SECURITIZATION_TYPE;
2499 --Bug# 3143522: 11.5.10
2500 --subsidy
2501 p_to.SUB_PRE_TAX_YIELD := p_from.SUB_PRE_TAX_YIELD;
2502 p_to.SUB_AFTER_TAX_YIELD := p_from.SUB_AFTER_TAX_YIELD;
2503 p_to.SUB_IMPL_INTEREST_RATE := p_from.SUB_IMPL_INTEREST_RATE;
2504 p_to.SUB_IMPL_NON_IDC_INT_RATE := p_from.SUB_IMPL_NON_IDC_INT_RATE;
2505 p_to.SUB_PRE_TAX_IRR := p_from.SUB_PRE_TAX_IRR;
2506 p_to.SUB_AFTER_TAX_IRR := p_from.SUB_AFTER_TAX_IRR;
2507 --Bug# 3973640 : 11.5.10+ schema changes
2508 p_to.TOT_CL_TRANSFER_AMT := p_from.TOT_CL_TRANSFER_AMT;
2509 p_to.TOT_CL_NET_TRANSFER_AMT := p_from.TOT_CL_NET_TRANSFER_AMT;
2510 p_to.TOT_CL_LIMIT := p_from.TOT_CL_LIMIT;
2511 p_to.TOT_CL_FUNDING_AMT := p_from.TOT_CL_FUNDING_AMT;
2512 p_to.CRS_ID := p_from.CRS_ID;
2513 p_to.TEMPLATE_TYPE_CODE := p_from.TEMPLATE_TYPE_CODE;
2514 --Bug# 4419339 OKLH Schema Sales Quote
2515 p_to.DATE_FUNDING_EXPECTED := p_from.DATE_FUNDING_EXPECTED;
2516 p_to.DATE_TRADEIN := p_from.DATE_TRADEIN;
2517 p_to.TRADEIN_AMOUNT := p_from.TRADEIN_AMOUNT;
2518 p_to.TRADEIN_DESCRIPTION := p_from.TRADEIN_DESCRIPTION;
2519 --Added by dpsingh for LE uptake
2520 p_to.LEGAL_ENTITY_ID := p_from.LEGAL_ENTITY_ID;
2521 END migrate;
2522
2523 PROCEDURE migrate (
2524 p_from IN khr_rec_type,
2525 p_to IN OUT NOCOPY okl_k_headers_h_rec_type
2526 ) IS
2527 BEGIN
2528
2529 p_to.ID := p_from.ID;
2530
2531 p_to.ISG_ID := p_from.ISG_ID;
2532
2533 p_to.KHR_ID := p_from.KHR_ID;
2534
2535 p_to.PDT_ID := p_from.PDT_ID;
2536
2537 p_to.OBJECT_VERSION_NUMBER := p_from.OBJECT_VERSION_NUMBER;
2538
2539 p_to.DATE_FIRST_ACTIVITY := p_from.DATE_FIRST_ACTIVITY;
2540
2541 p_to.SYNDICATABLE_YN := p_from.SYNDICATABLE_YN;
2542
2543 p_to.SALESTYPE_YN := p_from.SALESTYPE_YN;
2544
2545 p_to.DATE_REFINANCED := p_from.DATE_REFINANCED;
2546
2547 p_to.DATE_CONVERSION_EFFECTIVE := p_from.DATE_CONVERSION_EFFECTIVE;
2548
2549 p_to.DATE_DEAL_TRANSFERRED := p_from.DATE_DEAL_TRANSFERRED;
2550
2551 p_to.TERM_DURATION := p_from.TERM_DURATION;
2552
2553 p_to.DATETIME_PROPOSAL_EFFECTIVE := p_from.DATETIME_PROPOSAL_EFFECTIVE;
2554
2555 p_to.DATETIME_PROPOSAL_INEFFECTIVE := p_from.DATETIME_PROPOSAL_INEFFECTIVE;
2556
2557 p_to.DATE_PROPOSAL_ACCEPTED := p_from.DATE_PROPOSAL_ACCEPTED;
2558
2559 p_to.ATTRIBUTE_CATEGORY := p_from.ATTRIBUTE_CATEGORY;
2560
2561 p_to.ATTRIBUTE1 := p_from.ATTRIBUTE1;
2562
2563 p_to.ATTRIBUTE2 := p_from.ATTRIBUTE2;
2564
2565 p_to.ATTRIBUTE3 := p_from.ATTRIBUTE3;
2566
2567 p_to.ATTRIBUTE4 := p_from.ATTRIBUTE4;
2568
2569 p_to.ATTRIBUTE5 := p_from.ATTRIBUTE5;
2570
2571 p_to.ATTRIBUTE6 := p_from.ATTRIBUTE6;
2572
2573 p_to.ATTRIBUTE7 := p_from.ATTRIBUTE7;
2574
2575 p_to.ATTRIBUTE8 := p_from.ATTRIBUTE8;
2576
2577 p_to.ATTRIBUTE9 := p_from.ATTRIBUTE9;
2578
2579 p_to.ATTRIBUTE10 := p_from.ATTRIBUTE10;
2580
2581 p_to.ATTRIBUTE11 := p_from.ATTRIBUTE11;
2582
2583 p_to.ATTRIBUTE12 := p_from.ATTRIBUTE12;
2584
2585 p_to.ATTRIBUTE13 := p_from.ATTRIBUTE13;
2586
2587 p_to.ATTRIBUTE14 := p_from.ATTRIBUTE14;
2588
2589 p_to.ATTRIBUTE15 := p_from.ATTRIBUTE15;
2590
2591 p_to.CREATED_BY := p_from.CREATED_BY;
2592
2593 p_to.CREATION_DATE := p_from.CREATION_DATE;
2594
2595 p_to.LAST_UPDATED_BY := p_from.LAST_UPDATED_BY;
2596
2597 p_to.LAST_UPDATE_DATE := p_from.LAST_UPDATE_DATE;
2598
2599 p_to.LAST_UPDATE_LOGIN := p_from.LAST_UPDATE_LOGIN;
2600
2601 p_to.AMD_CODE := p_from.AMD_CODE;
2602
2603 p_to.GENERATE_ACCRUAL_YN := p_from.GENERATE_ACCRUAL_YN;
2604
2605 p_to.GENERATE_ACCRUAL_OVERRIDE_YN := p_from.GENERATE_ACCRUAL_OVERRIDE_YN;
2606
2607 p_to.CREDIT_ACT_YN := p_from.CREDIT_ACT_YN;
2608
2609 p_to.CONVERTED_ACCOUNT_YN := p_from.CONVERTED_ACCOUNT_YN;
2610
2611 p_to.PRE_TAX_YIELD := p_from.PRE_TAX_YIELD;
2612
2613 p_to.AFTER_TAX_YIELD := p_from.AFTER_TAX_YIELD;
2614
2615 p_to.IMPLICIT_INTEREST_RATE := p_from.IMPLICIT_INTEREST_RATE;
2616
2617 p_to.IMPLICIT_NON_IDC_INTEREST_RATE := p_from.IMPLICIT_NON_IDC_INTEREST_RATE;
2618
2619 p_to.TARGET_PRE_TAX_YIELD := p_from.TARGET_PRE_TAX_YIELD;
2620
2621 p_to.TARGET_AFTER_TAX_YIELD := p_from.TARGET_AFTER_TAX_YIELD;
2622
2623 p_to.TARGET_IMPLICIT_INTEREST_RATE := p_from.TARGET_IMPLICIT_INTEREST_RATE;
2624
2625 p_to.TARGET_IMPLICIT_NONIDC_INTRATE := p_from.TARGET_IMPLICIT_NONIDC_INTRATE;
2626
2627 p_to.DATE_LAST_INTERIM_INTEREST_CAL := p_from.DATE_LAST_INTERIM_INTEREST_CAL;
2628
2629 p_to.DEAL_TYPE := p_from.DEAL_TYPE;
2630
2631 p_to.PRE_TAX_IRR := p_from.PRE_TAX_IRR;
2632
2633 p_to.AFTER_TAX_IRR := p_from.AFTER_TAX_IRR;
2634
2635 p_to.EXPECTED_DELIVERY_DATE := p_from.EXPECTED_DELIVERY_DATE;
2636
2637 p_to.ACCEPTED_DATE := p_from.ACCEPTED_DATE;
2638
2639 p_to.PREFUNDING_ELIGIBLE_YN := p_from.PREFUNDING_ELIGIBLE_YN;
2640
2641 p_to.REVOLVING_CREDIT_YN := p_from.REVOLVING_CREDIT_YN;
2642
2643 --Bug# 2697681 schema changes 11.5.9
2644 p_to.CURRENCY_CONVERSION_TYPE := p_from.CURRENCY_CONVERSION_TYPE;
2645 p_to.CURRENCY_CONVERSION_RATE := p_from.CURRENCY_CONVERSION_RATE;
2646 p_to.CURRENCY_CONVERSION_DATE := p_from.CURRENCY_CONVERSION_DATE;
2647 p_to.MULTI_GAAP_YN := p_from.MULTI_GAAP_YN;
2648 p_to.RECOURSE_CODE := p_from.RECOURSE_CODE;
2649 p_to.LESSOR_SERV_ORG_CODE := p_from.LESSOR_SERV_ORG_CODE;
2650 p_to.ASSIGNABLE_YN := p_from.ASSIGNABLE_YN;
2651 p_to.SECURITIZED_CODE := p_from.SECURITIZED_CODE;
2652 p_to.SECURITIZATION_TYPE := p_from.SECURITIZATION_TYPE;
2653 --Bug#3143522 : 11.5.10
2654 --subsidy
2655 p_to.SUB_PRE_TAX_YIELD := p_from.SUB_PRE_TAX_YIELD;
2656 p_to.SUB_AFTER_TAX_YIELD := p_from.SUB_AFTER_TAX_YIELD;
2657 p_to.SUB_IMPL_INTEREST_RATE := p_from.SUB_IMPL_INTEREST_RATE;
2658 p_to.SUB_IMPL_NON_IDC_INT_RATE := p_from.SUB_IMPL_NON_IDC_INT_RATE;
2659 p_to.SUB_PRE_TAX_IRR := p_from.SUB_PRE_TAX_IRR;
2660 p_to.SUB_AFTER_TAX_IRR := p_from.SUB_AFTER_TAX_IRR;
2661 --Bug# 3973640 : 11.5.10+ schema changes
2662 p_to.TOT_CL_TRANSFER_AMT := p_from.TOT_CL_TRANSFER_AMT;
2663 p_to.TOT_CL_NET_TRANSFER_AMT := p_from.TOT_CL_NET_TRANSFER_AMT;
2664 p_to.TOT_CL_LIMIT := p_from.TOT_CL_LIMIT;
2665 p_to.TOT_CL_FUNDING_AMT := p_from.TOT_CL_FUNDING_AMT;
2666 p_to.CRS_ID := p_from.CRS_ID;
2667 p_to.TEMPLATE_TYPE_CODE := p_from.TEMPLATE_TYPE_CODE;
2668 --Bug# 4419339 OKLH Schema Sales Quote
2669 p_to.DATE_FUNDING_EXPECTED := p_from.DATE_FUNDING_EXPECTED;
2670 p_to.DATE_TRADEIN := p_from.DATE_TRADEIN;
2671 p_to.TRADEIN_AMOUNT := p_from.TRADEIN_AMOUNT;
2672 p_to.TRADEIN_DESCRIPTION := p_from.TRADEIN_DESCRIPTION;
2673 --Added by dpsingh for LE uptake
2674 p_to.LEGAL_ENTITY_ID := p_from.LEGAL_ENTITY_ID;
2675 END migrate;
2676
2677
2678
2679 ---------------------------------------------------------------------------
2680 -- PROCEDURE validate_row
2681 ---------------------------------------------------------------------------
2682
2683 --------------------------------------
2684 -- validate_row for: OKL_K_HEADERS_V --
2685 --------------------------------------
2686
2687 PROCEDURE validate_row(
2688
2689 p_api_version IN NUMBER,
2690 p_init_msg_list IN VARCHAR2 ,
2691 x_return_status OUT NOCOPY VARCHAR2,
2692 x_msg_count OUT NOCOPY NUMBER,
2693 x_msg_data OUT NOCOPY VARCHAR2,
2694 p_khrv_rec IN khrv_rec_type) IS
2695
2696 l_api_version CONSTANT NUMBER := 1;
2697 l_api_name CONSTANT VARCHAR2(30) := 'rec_validate_row';
2698 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2699 l_khrv_rec khrv_rec_type := p_khrv_rec;
2700 BEGIN
2701 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2702 G_PKG_NAME,
2703 p_init_msg_list,
2704 l_api_version,
2705 p_api_version,
2706 '_PVT',
2707 x_return_status);
2708
2709 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2710 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2711 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2712 RAISE OKC_API.G_EXCEPTION_ERROR;
2713 END IF;
2714
2715
2716 --- Validate all non-missing attributes (Item Level Validation)
2717 l_return_status := Validate_Attributes(l_khrv_rec);
2718 --- If any errors happen abort API
2719
2720 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2721 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2722 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2723 RAISE OKC_API.G_EXCEPTION_ERROR;
2724 END IF;
2725
2726
2727 l_return_status := Validate_Record(l_khrv_rec);
2728
2729 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2730 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2731 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2732 RAISE OKC_API.G_EXCEPTION_ERROR;
2733 END IF;
2734
2735
2736 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2737
2738 EXCEPTION
2739 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2740 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2741 (
2742 l_api_name,
2743 G_PKG_NAME,
2744 'OKC_API.G_RET_STS_ERROR',
2745 x_msg_count,
2746 x_msg_data,
2747 '_PVT'
2748 );
2749 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2750 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2751 (
2752 l_api_name,
2753 G_PKG_NAME,
2754 'OKC_API.G_RET_STS_UNEXP_ERROR',
2755 x_msg_count,
2756 x_msg_data,
2757 '_PVT'
2758 );
2759 WHEN OTHERS THEN
2760 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2761 (
2762 l_api_name,
2763 G_PKG_NAME,
2764 'OTHERS',
2765 x_msg_count,
2766 x_msg_data,
2767 '_PVT'
2768 );
2769
2770 END validate_row;
2771 ------------------------------------------
2772 -- PL/SQL TBL validate_row for: OKL_K_HEADERS_V --
2773 ------------------------------------------
2774
2775 PROCEDURE validate_row(
2776
2777 p_api_version IN NUMBER,
2778 p_init_msg_list IN VARCHAR2,
2779 x_return_status OUT NOCOPY VARCHAR2,
2780 x_msg_count OUT NOCOPY NUMBER,
2781 x_msg_data OUT NOCOPY VARCHAR2,
2782 p_khrv_tbl IN khrv_tbl_type) IS
2783
2784 l_api_version CONSTANT NUMBER := 1;
2785 l_api_name CONSTANT VARCHAR2(30) := 'tbl_validate_row';
2786 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2787 i NUMBER := 0;
2788 BEGIN
2789 OKC_API.init_msg_list(p_init_msg_list);
2790 -- Make sure PL/SQL table has records in it before passing
2791 IF (p_khrv_tbl.COUNT > 0) THEN
2792 i := p_khrv_tbl.FIRST;
2793 LOOP
2794 validate_row (
2795 p_api_version => p_api_version,
2796 p_init_msg_list => OKC_API.G_FALSE,
2797 x_return_status => x_return_status,
2798 x_msg_count => x_msg_count,
2799 x_msg_data => x_msg_data,
2800 p_khrv_rec => p_khrv_tbl(i));
2801 EXIT WHEN (i = p_khrv_tbl.LAST);
2802 i := p_khrv_tbl.NEXT(i);
2803 END LOOP;
2804 END IF;
2805
2806 EXCEPTION
2807 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2808 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2809 (
2810 l_api_name,
2811 G_PKG_NAME,
2812 'OKC_API.G_RET_STS_ERROR',
2813 x_msg_count,
2814 x_msg_data,
2815 '_PVT'
2816 );
2817 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2818 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2819 (
2820 l_api_name,
2821 G_PKG_NAME,
2822 'OKC_API.G_RET_STS_UNEXP_ERROR',
2823 x_msg_count,
2824 x_msg_data,
2825 '_PVT'
2826 );
2827 WHEN OTHERS THEN
2828 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2829 (
2830 l_api_name,
2831 G_PKG_NAME,
2832 'OTHERS',
2833 x_msg_count,
2834 x_msg_data,
2835 '_PVT'
2836 );
2837
2838 END validate_row;
2839
2840
2841 ---------------------------------------------------------------------------
2842 -- PROCEDURE insert_row
2843 ---------------------------------------------------------------------------
2844
2845
2846 ------------------------------------
2847 -- insert_row for: OKL_K_HEADERS_H --
2848 ------------------------------------
2849
2850 PROCEDURE insert_row(
2851
2852 p_api_version IN NUMBER,
2853 p_init_msg_list IN VARCHAR2,
2854 x_return_status OUT NOCOPY VARCHAR2,
2855 x_msg_count OUT NOCOPY NUMBER,
2856 x_msg_data OUT NOCOPY VARCHAR2,
2857 p_okl_k_headers_h_rec IN okl_k_headers_h_rec_type,
2858 x_okl_k_headers_h_rec OUT NOCOPY okl_k_headers_h_rec_type) IS
2859
2860 l_api_version CONSTANT NUMBER := 1;
2861 l_api_name CONSTANT VARCHAR2(30) := 'rec_insert_row';
2862 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2863 l_okl_k_headers_h_rec okl_k_headers_h_rec_type := p_okl_k_headers_h_rec;
2864 l_def_okl_k_headers_h_rec okl_k_headers_h_rec_type;
2865 ----------------------------------------
2866 -- Set_Attributes for: OKL_K_HEADERS_H --
2867 ----------------------------------------
2868 FUNCTION Set_Attributes (
2869 p_okl_k_headers_h_rec IN okl_k_headers_h_rec_type,
2870 x_okl_k_headers_h_rec OUT NOCOPY okl_k_headers_h_rec_type
2871 ) RETURN VARCHAR2 IS
2872 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2873 BEGIN
2874 x_okl_k_headers_h_rec := p_okl_k_headers_h_rec;
2875 RETURN(l_return_status);
2876 END Set_Attributes;
2877 BEGIN
2878
2879 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2880 p_init_msg_list,
2881 '_PVT',
2882 x_return_status);
2883
2884 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2885 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2886 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2887 RAISE OKC_API.G_EXCEPTION_ERROR;
2888 END IF;
2889
2890 --- Setting item attributes
2891 l_return_status := Set_Attributes(
2892 p_okl_k_headers_h_rec, -- IN
2893 l_okl_k_headers_h_rec); -- OUT
2894 --- If any errors happen abort API
2895
2896 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2897 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2898 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2899 RAISE OKC_API.G_EXCEPTION_ERROR;
2900 END IF;
2901
2902 INSERT INTO OKL_K_HEADERS_H(
2903 ID,
2904 MAJOR_VERSION,
2905 ISG_ID,
2906 KHR_ID,
2907 PDT_ID,
2908 OBJECT_VERSION_NUMBER,
2909 DATE_FIRST_ACTIVITY,
2910 SYNDICATABLE_YN,
2911 SALESTYPE_YN,
2912 DATE_REFINANCED,
2913 DATE_CONVERSION_EFFECTIVE,
2914 DATE_DEAL_TRANSFERRED,
2915 TERM_DURATION,
2916 DATETIME_PROPOSAL_EFFECTIVE,
2917 DATETIME_PROPOSAL_INEFFECTIVE,
2918 DATE_PROPOSAL_ACCEPTED,
2919 ATTRIBUTE_CATEGORY,
2920 ATTRIBUTE1,
2921 ATTRIBUTE2,
2922 ATTRIBUTE3,
2923 ATTRIBUTE4,
2924 ATTRIBUTE5,
2925 ATTRIBUTE6,
2926 ATTRIBUTE7,
2927 ATTRIBUTE8,
2928 ATTRIBUTE9,
2929 ATTRIBUTE10,
2930 ATTRIBUTE11,
2931 ATTRIBUTE12,
2932 ATTRIBUTE13,
2933 ATTRIBUTE14,
2934 ATTRIBUTE15,
2935 CREATED_BY,
2936 CREATION_DATE,
2937 LAST_UPDATED_BY,
2938 LAST_UPDATE_DATE,
2939 LAST_UPDATE_LOGIN,
2940 AMD_CODE,
2941 GENERATE_ACCRUAL_YN,
2942 GENERATE_ACCRUAL_OVERRIDE_YN,
2943 CREDIT_ACT_YN,
2944 CONVERTED_ACCOUNT_YN,
2945 PRE_TAX_YIELD,
2946 AFTER_TAX_YIELD,
2947 IMPLICIT_INTEREST_RATE,
2948 IMPLICIT_NON_IDC_INTEREST_RATE,
2949 TARGET_PRE_TAX_YIELD,
2950 TARGET_AFTER_TAX_YIELD,
2951 TARGET_IMPLICIT_INTEREST_RATE,
2952 TARGET_IMPLICIT_NONIDC_INTRATE,
2953 DATE_LAST_INTERIM_INTEREST_CAL,
2954 DEAL_TYPE,
2955 PRE_TAX_IRR,
2956 AFTER_TAX_IRR,
2957 EXPECTED_DELIVERY_DATE,
2958 ACCEPTED_DATE,
2959 PREFUNDING_ELIGIBLE_YN,
2960 REVOLVING_CREDIT_YN,
2961 --Bug# 2697681 schema changes 11.5.9
2962 CURRENCY_CONVERSION_TYPE,
2963 CURRENCY_CONVERSION_RATE,
2964 CURRENCY_CONVERSION_DATE,
2965 MULTI_GAAP_YN,
2966 RECOURSE_CODE,
2967 LESSOR_SERV_ORG_CODE,
2968 ASSIGNABLE_YN,
2969 SECURITIZED_CODE,
2970 SECURITIZATION_TYPE,
2971 --Bug#3143522 : 11.5.10
2972 --subsidy
2973 SUB_PRE_TAX_YIELD,
2974 SUB_AFTER_TAX_YIELD,
2975 SUB_IMPL_INTEREST_RATE,
2976 SUB_IMPL_NON_IDC_INT_RATE,
2977 SUB_PRE_TAX_IRR,
2978 SUB_AFTER_TAX_IRR,
2979 --Bug# 3973640 : 11.5.10+ schema
2980 TOT_CL_TRANSFER_AMT,
2981 TOT_CL_NET_TRANSFER_AMT,
2982 TOT_CL_LIMIT,
2983 TOT_CL_FUNDING_AMT,
2984 CRS_ID,
2985 TEMPLATE_TYPE_CODE,
2986 --Bug# 4419339 OKLH Schema Sales Quote
2987 DATE_FUNDING_EXPECTED,
2988 DATE_TRADEIN,
2989 TRADEIN_AMOUNT,
2990 TRADEIN_DESCRIPTION,
2991 --Added by dpsingh for LE uptake
2992 LEGAL_ENTITY_ID
2993 )
2994 VALUES (
2995 l_okl_k_headers_h_rec.ID,
2996 l_okl_k_headers_h_rec.MAJOR_VERSION,
2997 l_okl_k_headers_h_rec.ISG_ID,
2998 l_okl_k_headers_h_rec.KHR_ID,
2999 l_okl_k_headers_h_rec.PDT_ID,
3000 l_okl_k_headers_h_rec.OBJECT_VERSION_NUMBER,
3001 l_okl_k_headers_h_rec.DATE_FIRST_ACTIVITY,
3002 l_okl_k_headers_h_rec.SYNDICATABLE_YN,
3003 l_okl_k_headers_h_rec.SALESTYPE_YN,
3004 l_okl_k_headers_h_rec.DATE_REFINANCED,
3005 l_okl_k_headers_h_rec.DATE_CONVERSION_EFFECTIVE,
3006 l_okl_k_headers_h_rec.DATE_DEAL_TRANSFERRED,
3007 l_okl_k_headers_h_rec.TERM_DURATION,
3008 l_okl_k_headers_h_rec.DATETIME_PROPOSAL_EFFECTIVE,
3009 l_okl_k_headers_h_rec.DATETIME_PROPOSAL_INEFFECTIVE,
3010 l_okl_k_headers_h_rec.DATE_PROPOSAL_ACCEPTED,
3011 l_okl_k_headers_h_rec.ATTRIBUTE_CATEGORY,
3012 l_okl_k_headers_h_rec.ATTRIBUTE1,
3013 l_okl_k_headers_h_rec.ATTRIBUTE2,
3014 l_okl_k_headers_h_rec.ATTRIBUTE3,
3015 l_okl_k_headers_h_rec.ATTRIBUTE4,
3016 l_okl_k_headers_h_rec.ATTRIBUTE5,
3017 l_okl_k_headers_h_rec.ATTRIBUTE6,
3018 l_okl_k_headers_h_rec.ATTRIBUTE7,
3019 l_okl_k_headers_h_rec.ATTRIBUTE8,
3020 l_okl_k_headers_h_rec.ATTRIBUTE9,
3021 l_okl_k_headers_h_rec.ATTRIBUTE10,
3022 l_okl_k_headers_h_rec.ATTRIBUTE11,
3023 l_okl_k_headers_h_rec.ATTRIBUTE12,
3024 l_okl_k_headers_h_rec.ATTRIBUTE13,
3025 l_okl_k_headers_h_rec.ATTRIBUTE14,
3026 l_okl_k_headers_h_rec.ATTRIBUTE15,
3027 l_okl_k_headers_h_rec.CREATED_BY,
3028 l_okl_k_headers_h_rec.CREATION_DATE,
3029 l_okl_k_headers_h_rec.LAST_UPDATED_BY,
3030 l_okl_k_headers_h_rec.LAST_UPDATE_DATE,
3031 l_okl_k_headers_h_rec.LAST_UPDATE_LOGIN,
3032 l_okl_k_headers_h_rec.AMD_CODE,
3033 l_okl_k_headers_h_rec.GENERATE_ACCRUAL_YN,
3034 l_okl_k_headers_h_rec.GENERATE_ACCRUAL_OVERRIDE_YN,
3035 l_okl_k_headers_h_rec.CREDIT_ACT_YN,
3036 l_okl_k_headers_h_rec.CONVERTED_ACCOUNT_YN,
3037 l_okl_k_headers_h_rec.PRE_TAX_YIELD,
3038 l_okl_k_headers_h_rec.AFTER_TAX_YIELD,
3039 l_okl_k_headers_h_rec.IMPLICIT_INTEREST_RATE,
3040 l_okl_k_headers_h_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
3041 l_okl_k_headers_h_rec.TARGET_PRE_TAX_YIELD,
3042 l_okl_k_headers_h_rec.TARGET_AFTER_TAX_YIELD,
3043 l_okl_k_headers_h_rec.TARGET_IMPLICIT_INTEREST_RATE,
3044 l_okl_k_headers_h_rec.TARGET_IMPLICIT_NONIDC_INTRATE,
3045 l_okl_k_headers_h_rec.DATE_LAST_INTERIM_INTEREST_CAL,
3046 l_okl_k_headers_h_rec.DEAL_TYPE,
3047 l_okl_k_headers_h_rec.PRE_TAX_IRR,
3048 l_okl_k_headers_h_rec.AFTER_TAX_IRR,
3049 l_okl_k_headers_h_rec.EXPECTED_DELIVERY_DATE,
3050 l_okl_k_headers_h_rec.ACCEPTED_DATE,
3051 l_okl_k_headers_h_rec.PREFUNDING_ELIGIBLE_YN,
3052 l_okl_k_headers_h_rec.REVOLVING_CREDIT_YN,
3053 --Bug# 2697681 schema changes 11.5.9
3054 l_okl_k_headers_h_rec.CURRENCY_CONVERSION_TYPE,
3055 l_okl_k_headers_h_rec.CURRENCY_CONVERSION_RATE,
3056 l_okl_k_headers_h_rec.CURRENCY_CONVERSION_DATE,
3057 l_okl_k_headers_h_rec.MULTI_GAAP_YN,
3058 l_okl_k_headers_h_rec.RECOURSE_CODE,
3059 l_okl_k_headers_h_rec.LESSOR_SERV_ORG_CODE,
3060 l_okl_k_headers_h_rec.ASSIGNABLE_YN,
3061 l_okl_k_headers_h_rec.SECURITIZED_CODE,
3062 l_okl_k_headers_h_rec.SECURITIZATION_TYPE,
3063 --Bug#3143522 : 11.5.10
3064 --subsidy
3065 l_okl_k_headers_h_rec.SUB_PRE_TAX_YIELD,
3066 l_okl_k_headers_h_rec.SUB_AFTER_TAX_YIELD,
3067 l_okl_k_headers_h_rec.SUB_IMPL_INTEREST_RATE,
3068 l_okl_k_headers_h_rec.SUB_IMPL_NON_IDC_INT_RATE,
3069 l_okl_k_headers_h_rec.SUB_PRE_TAX_IRR,
3070 l_okl_k_headers_h_rec.SUB_AFTER_TAX_IRR,
3071 --Bug# 3973640 : 11.5.10+ schema
3072 l_okl_k_headers_h_rec.TOT_CL_TRANSFER_AMT,
3073 l_okl_k_headers_h_rec.TOT_CL_NET_TRANSFER_AMT,
3074 l_okl_k_headers_h_rec.TOT_CL_LIMIT,
3075 l_okl_k_headers_h_rec.TOT_CL_FUNDING_AMT,
3076 l_okl_k_headers_h_rec.CRS_ID,
3077 l_okl_k_headers_h_rec.TEMPLATE_TYPE_CODE,
3078 --Bug# 4419339 OKLH Schema Sales Quote
3079 l_okl_k_headers_h_rec.DATE_FUNDING_EXPECTED,
3080 l_okl_k_headers_h_rec.DATE_TRADEIN,
3081 l_okl_k_headers_h_rec.TRADEIN_AMOUNT,
3082 l_okl_k_headers_h_rec.TRADEIN_DESCRIPTION,
3083 --Added by dpsingh for LE uptake
3084 l_okl_k_headers_h_rec.LEGAL_ENTITY_ID);
3085 -- Set OUT values
3086 x_okl_k_headers_h_rec := l_okl_k_headers_h_rec;
3087 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3088
3089 EXCEPTION
3090 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3091 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3092 (
3093 l_api_name,
3094 G_PKG_NAME,
3095 'OKC_API.G_RET_STS_ERROR',
3096 x_msg_count,
3097 x_msg_data,
3098 '_PVT'
3099 );
3100 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3101 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3102 (
3103 l_api_name,
3104 G_PKG_NAME,
3105 'OKC_API.G_RET_STS_UNEXP_ERROR',
3106 x_msg_count,
3107 x_msg_data,
3108 '_PVT'
3109 );
3110 WHEN OTHERS THEN
3111 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3112 (
3113 l_api_name,
3114 G_PKG_NAME,
3115 'OTHERS',
3116 x_msg_count,
3117 x_msg_data,
3118 '_PVT'
3119 );
3120
3121 END insert_row;
3122
3123 ------------------------------------
3124 -- insert_row for: OKL_K_HEADERS --
3125 ------------------------------------
3126
3127 PROCEDURE insert_row(
3128
3129 p_api_version IN NUMBER,
3130 p_init_msg_list IN VARCHAR2,
3131 x_return_status OUT NOCOPY VARCHAR2,
3132 x_msg_count OUT NOCOPY NUMBER,
3133 x_msg_data OUT NOCOPY VARCHAR2,
3134 p_khr_rec IN khr_rec_type,
3135 x_khr_rec OUT NOCOPY khr_rec_type) IS
3136
3137 l_api_version CONSTANT NUMBER := 1;
3138 l_api_name CONSTANT VARCHAR2(30) := 'rec_insert_row';
3139 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3140 l_khr_rec khr_rec_type := p_khr_rec;
3141 l_def_khr_rec khr_rec_type;
3142 ----------------------------------------
3143 -- Set_Attributes for: OKL_K_HEADERS --
3144 ----------------------------------------
3145 FUNCTION Set_Attributes (
3146 p_khr_rec IN khr_rec_type,
3147 x_khr_rec OUT NOCOPY khr_rec_type
3148 ) RETURN VARCHAR2 IS
3149 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3150 BEGIN
3151 x_khr_rec := p_khr_rec;
3152 RETURN(l_return_status);
3153 END Set_Attributes;
3154 BEGIN
3155
3156 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3157 p_init_msg_list,
3158 '_PVT',
3159 x_return_status);
3160
3161 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3162 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3163 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3164 RAISE OKC_API.G_EXCEPTION_ERROR;
3165 END IF;
3166
3167 --- Setting item attributes
3168 l_return_status := Set_Attributes(
3169 p_khr_rec, -- IN
3170 l_khr_rec); -- OUT
3171 --- If any errors happen abort API
3172
3173 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3174 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3175 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3176 RAISE OKC_API.G_EXCEPTION_ERROR;
3177 END IF;
3178
3179 INSERT INTO OKL_K_HEADERS(
3180 ID,
3181 ISG_ID,
3182 KHR_ID,
3183 PDT_ID,
3184 OBJECT_VERSION_NUMBER,
3185 DATE_FIRST_ACTIVITY,
3186 SYNDICATABLE_YN,
3187 SALESTYPE_YN,
3188 DATE_REFINANCED,
3189 DATE_CONVERSION_EFFECTIVE,
3190 DATE_DEAL_TRANSFERRED,
3191 TERM_DURATION,
3192 DATETIME_PROPOSAL_EFFECTIVE,
3193 DATETIME_PROPOSAL_INEFFECTIVE,
3194 DATE_PROPOSAL_ACCEPTED,
3195 ATTRIBUTE_CATEGORY,
3196 ATTRIBUTE1,
3197 ATTRIBUTE2,
3198 ATTRIBUTE3,
3199 ATTRIBUTE4,
3200 ATTRIBUTE5,
3201 ATTRIBUTE6,
3202 ATTRIBUTE7,
3203 ATTRIBUTE8,
3204 ATTRIBUTE9,
3205 ATTRIBUTE10,
3206 ATTRIBUTE11,
3207 ATTRIBUTE12,
3208 ATTRIBUTE13,
3209 ATTRIBUTE14,
3210 ATTRIBUTE15,
3211 CREATED_BY,
3212 CREATION_DATE,
3213 LAST_UPDATED_BY,
3214 LAST_UPDATE_DATE,
3215 LAST_UPDATE_LOGIN,
3216 AMD_CODE,
3217 GENERATE_ACCRUAL_YN,
3218 GENERATE_ACCRUAL_OVERRIDE_YN,
3219 CREDIT_ACT_YN,
3220 CONVERTED_ACCOUNT_YN,
3221 PRE_TAX_YIELD,
3222 AFTER_TAX_YIELD,
3223 IMPLICIT_INTEREST_RATE,
3224 IMPLICIT_NON_IDC_INTEREST_RATE,
3225 TARGET_PRE_TAX_YIELD,
3226 TARGET_AFTER_TAX_YIELD,
3227 TARGET_IMPLICIT_INTEREST_RATE,
3228 TARGET_IMPLICIT_NONIDC_INTRATE,
3229 DATE_LAST_INTERIM_INTEREST_CAL,
3230 DEAL_TYPE,
3231 PRE_TAX_IRR,
3232 AFTER_TAX_IRR,
3233 EXPECTED_DELIVERY_DATE,
3234 ACCEPTED_DATE,
3235 PREFUNDING_ELIGIBLE_YN,
3236 REVOLVING_CREDIT_YN,
3237 --Bug# 2697681 schema changes 11.5.9
3238 CURRENCY_CONVERSION_TYPE,
3239 CURRENCY_CONVERSION_RATE,
3240 CURRENCY_CONVERSION_DATE,
3241 MULTI_GAAP_YN,
3242 RECOURSE_CODE,
3243 LESSOR_SERV_ORG_CODE,
3244 ASSIGNABLE_YN,
3245 SECURITIZED_CODE,
3246 SECURITIZATION_TYPE,
3247 --Bug#3143522 : 11.5.10
3248 --subsidy
3249 SUB_PRE_TAX_YIELD,
3250 SUB_AFTER_TAX_YIELD,
3251 SUB_IMPL_INTEREST_RATE,
3252 SUB_IMPL_NON_IDC_INT_RATE,
3253 SUB_PRE_TAX_IRR,
3254 SUB_AFTER_TAX_IRR,
3255 --Bug# 3973640 : 11.5.10+ schema
3256 TOT_CL_TRANSFER_AMT,
3257 TOT_CL_NET_TRANSFER_AMT,
3258 TOT_CL_LIMIT,
3259 TOT_CL_FUNDING_AMT,
3260 -- Schema Change for Vendor Enhancements
3261 CRS_ID,
3262 TEMPLATE_TYPE_CODE,
3263 --Bug# 4419339 OKLH Schema Sales Quote
3264 DATE_FUNDING_EXPECTED,
3265 DATE_TRADEIN,
3266 TRADEIN_AMOUNT,
3267 TRADEIN_DESCRIPTION,
3268 --Added by dpsingh for LE uptake
3269 LEGAL_ENTITY_ID
3270 )
3271 VALUES (
3272 l_khr_rec.ID,
3273 l_khr_rec.ISG_ID,
3274 l_khr_rec.KHR_ID,
3275 l_khr_rec.PDT_ID,
3276 l_khr_rec.OBJECT_VERSION_NUMBER,
3277 l_khr_rec.DATE_FIRST_ACTIVITY,
3278 l_khr_rec.SYNDICATABLE_YN,
3279 l_khr_rec.SALESTYPE_YN,
3280 l_khr_rec.DATE_REFINANCED,
3281 l_khr_rec.DATE_CONVERSION_EFFECTIVE,
3282 l_khr_rec.DATE_DEAL_TRANSFERRED,
3283 l_khr_rec.TERM_DURATION,
3284 l_khr_rec.DATETIME_PROPOSAL_EFFECTIVE,
3285 l_khr_rec.DATETIME_PROPOSAL_INEFFECTIVE,
3286 l_khr_rec.DATE_PROPOSAL_ACCEPTED,
3287 l_khr_rec.ATTRIBUTE_CATEGORY,
3288 l_khr_rec.ATTRIBUTE1,
3289 l_khr_rec.ATTRIBUTE2,
3290 l_khr_rec.ATTRIBUTE3,
3291 l_khr_rec.ATTRIBUTE4,
3292 l_khr_rec.ATTRIBUTE5,
3293 l_khr_rec.ATTRIBUTE6,
3294 l_khr_rec.ATTRIBUTE7,
3295 l_khr_rec.ATTRIBUTE8,
3296 l_khr_rec.ATTRIBUTE9,
3297 l_khr_rec.ATTRIBUTE10,
3298 l_khr_rec.ATTRIBUTE11,
3299 l_khr_rec.ATTRIBUTE12,
3300 l_khr_rec.ATTRIBUTE13,
3301 l_khr_rec.ATTRIBUTE14,
3302 l_khr_rec.ATTRIBUTE15,
3303 l_khr_rec.CREATED_BY,
3304 l_khr_rec.CREATION_DATE,
3305 l_khr_rec.LAST_UPDATED_BY,
3306 l_khr_rec.LAST_UPDATE_DATE,
3307 l_khr_rec.LAST_UPDATE_LOGIN,
3308 l_khr_rec.AMD_CODE,
3309 l_khr_rec.GENERATE_ACCRUAL_YN,
3310 l_khr_rec.GENERATE_ACCRUAL_OVERRIDE_YN,
3311 l_khr_rec.CREDIT_ACT_YN,
3312 l_khr_rec.CONVERTED_ACCOUNT_YN,
3313 l_khr_rec.PRE_TAX_YIELD,
3314 l_khr_rec.AFTER_TAX_YIELD,
3315 l_khr_rec.IMPLICIT_INTEREST_RATE,
3316 l_khr_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
3317 l_khr_rec.TARGET_PRE_TAX_YIELD,
3318 l_khr_rec.TARGET_AFTER_TAX_YIELD,
3319 l_khr_rec.TARGET_IMPLICIT_INTEREST_RATE,
3320 l_khr_rec.TARGET_IMPLICIT_NONIDC_INTRATE,
3321 l_khr_rec.DATE_LAST_INTERIM_INTEREST_CAL,
3322 l_khr_rec.DEAL_TYPE,
3323 l_khr_rec.PRE_TAX_IRR,
3324 l_khr_rec.AFTER_TAX_IRR,
3325 l_khr_rec.EXPECTED_DELIVERY_DATE,
3326 l_khr_rec.ACCEPTED_DATE,
3327 l_khr_rec.PREFUNDING_ELIGIBLE_YN,
3328 l_khr_rec.REVOLVING_CREDIT_YN,
3329 --Bug# 2697681 schema changes 11.5.9
3330 l_khr_rec.CURRENCY_CONVERSION_TYPE,
3331 l_khr_rec.CURRENCY_CONVERSION_RATE,
3332 l_khr_rec.CURRENCY_CONVERSION_DATE,
3333 l_khr_rec.MULTI_GAAP_YN,
3334 l_khr_rec.RECOURSE_CODE,
3335 l_khr_rec.LESSOR_SERV_ORG_CODE,
3336 l_khr_rec.ASSIGNABLE_YN,
3337 l_khr_rec.SECURITIZED_CODE,
3338 l_khr_rec.SECURITIZATION_TYPE,
3339 --Bug#3143522 : 11.5.10
3340 --subsidy
3341 l_khr_rec.SUB_PRE_TAX_YIELD,
3342 l_khr_rec.SUB_AFTER_TAX_YIELD,
3343 l_khr_rec.SUB_IMPL_INTEREST_RATE,
3344 l_khr_rec.SUB_IMPL_NON_IDC_INT_RATE,
3345 l_khr_rec.SUB_PRE_TAX_IRR,
3346 l_khr_rec.SUB_AFTER_TAX_IRR,
3347 --Bug# 3973640 : 11.5.10+ schema
3348 l_khr_rec.TOT_CL_TRANSFER_AMT,
3349 l_khr_rec.TOT_CL_NET_TRANSFER_AMT,
3350 l_khr_rec.TOT_CL_LIMIT,
3351 l_khr_rec.TOT_CL_FUNDING_AMT,
3352 -- Schema Change for Vendor Enhancements
3353 l_khr_rec.CRS_ID,
3354 l_khr_rec.TEMPLATE_TYPE_CODE,
3355 --Bug# 4419339 OKLH Schema Sales Quote
3356 l_khr_rec.DATE_FUNDING_EXPECTED,
3357 l_khr_rec.DATE_TRADEIN,
3358 l_khr_rec.TRADEIN_AMOUNT,
3359 l_khr_rec.TRADEIN_DESCRIPTION,
3360 --Added by dpsingh for LE uptake
3361 l_khr_rec.LEGAL_ENTITY_ID);
3362 -- Set OUT values
3363 x_khr_rec := l_khr_rec;
3364 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3365
3366 EXCEPTION
3367 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3368 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3369 (
3370 l_api_name,
3371 G_PKG_NAME,
3372 'OKC_API.G_RET_STS_ERROR',
3373 x_msg_count,
3374 x_msg_data,
3375 '_PVT'
3376 );
3377 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3378 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3379 (
3380 l_api_name,
3381 G_PKG_NAME,
3382 'OKC_API.G_RET_STS_UNEXP_ERROR',
3383 x_msg_count,
3384 x_msg_data,
3385 '_PVT'
3386 );
3387 WHEN OTHERS THEN
3388 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3389 (
3390 l_api_name,
3391 G_PKG_NAME,
3392 'OTHERS',
3393 x_msg_count,
3394 x_msg_data,
3395 '_PVT'
3396 );
3397
3398 END insert_row;
3399
3400 ------------------------------------
3401 -- insert_row for: OKL_K_HEADERS_V --
3402 ------------------------------------
3403
3404 PROCEDURE insert_row(
3405
3406 p_api_version IN NUMBER,
3407 p_init_msg_list IN VARCHAR2,
3408 x_return_status OUT NOCOPY VARCHAR2,
3409 x_msg_count OUT NOCOPY NUMBER,
3410 x_msg_data OUT NOCOPY VARCHAR2,
3411 p_khrv_rec IN khrv_rec_type,
3412 x_khrv_rec OUT NOCOPY khrv_rec_type) IS
3413
3414 l_api_version CONSTANT NUMBER := 1;
3415 l_api_name CONSTANT VARCHAR2(30) := 'rec_insert_row';
3416 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3417 l_khrv_rec khrv_rec_type;
3418 l_def_khrv_rec khrv_rec_type;
3419 l_khr_rec khr_rec_type;
3420 lx_khr_rec khr_rec_type;
3421 -------------------------------
3422 -- FUNCTION fill_who_columns --
3423 -------------------------------
3424 FUNCTION fill_who_columns (
3425 p_khrv_rec IN khrv_rec_type
3426 ) RETURN khrv_rec_type IS
3427 l_khrv_rec khrv_rec_type := p_khrv_rec;
3428 BEGIN
3429 l_khrv_rec.CREATION_DATE := SYSDATE;
3430 l_khrv_rec.CREATED_BY := FND_GLOBAL.USER_ID;
3431 l_khrv_rec.LAST_UPDATE_DATE := SYSDATE;
3432 l_khrv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
3433 l_khrv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
3434 RETURN(l_khrv_rec);
3435 END fill_who_columns;
3436 ----------------------------------------
3437 -- Set_Attributes for: OKL_K_HEADERS_V --
3438 ----------------------------------------
3439 FUNCTION Set_Attributes (
3440 p_khrv_rec IN khrv_rec_type,
3441 x_khrv_rec OUT NOCOPY khrv_rec_type
3442 ) RETURN VARCHAR2 IS
3443 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3444 BEGIN
3445 x_khrv_rec := p_khrv_rec;
3446 x_khrv_rec.OBJECT_VERSION_NUMBER := 1;
3447 RETURN(l_return_status);
3448 END Set_Attributes;
3449 BEGIN
3450 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3451 G_PKG_NAME,
3452 p_init_msg_list,
3453 l_api_version,
3454 p_api_version,
3455 '_PVT',
3456 x_return_status);
3457
3458 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3459 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3460 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3461 RAISE OKC_API.G_EXCEPTION_ERROR;
3462 END IF;
3463
3464 l_khrv_rec := null_out_defaults(p_khrv_rec);
3465
3466 -- Set primary key value
3467 -- modified by Miroslav Samoilenko
3468 if ( l_khrv_rec.ID is null) then
3469 l_khrv_rec.ID := get_seq_id;
3470 end if;
3471
3472 --- Setting item attributes
3473 l_return_status := Set_Attributes(
3474 l_khrv_rec, -- IN
3475 l_def_khrv_rec); -- OUT
3476 --- If any errors happen abort API
3477
3478 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3479 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3480 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3481 RAISE OKC_API.G_EXCEPTION_ERROR;
3482 END IF;
3483
3484 l_def_khrv_rec := fill_who_columns(l_def_khrv_rec);
3485 --- Validate all non-missing attributes (Item Level Validation)
3486 l_return_status := Validate_Attributes(l_def_khrv_rec);
3487 --- If any errors happen abort API
3488
3489 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3490 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3491 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3492 RAISE OKC_API.G_EXCEPTION_ERROR;
3493 END IF;
3494
3495 l_return_status := Validate_Record(l_def_khrv_rec);
3496
3497 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3498 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3499 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3500 RAISE OKC_API.G_EXCEPTION_ERROR;
3501 END IF;
3502
3503 --------------------------------------
3504 -- Move VIEW record to "Child" records
3505 --------------------------------------
3506 migrate(l_def_khrv_rec, l_khr_rec);
3507 --------------------------------------------
3508 -- Call the INSERT_ROW for each child record
3509 --------------------------------------------
3510 insert_row(
3511 l_api_version,
3512 p_init_msg_list,
3513 x_return_status,
3514 x_msg_count,
3515 x_msg_data,
3516 l_khr_rec,
3517 lx_khr_rec
3518 );
3519
3520 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3521 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3522 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
3523 RAISE OKC_API.G_EXCEPTION_ERROR;
3524 END IF;
3525
3526 migrate(lx_khr_rec, l_def_khrv_rec);
3527 -- Set OUT values
3528 x_khrv_rec := l_def_khrv_rec;
3529 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3530
3531 EXCEPTION
3532 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3533 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3534 (
3535 l_api_name,
3536 G_PKG_NAME,
3537 'OKC_API.G_RET_STS_ERROR',
3538 x_msg_count,
3539 x_msg_data,
3540 '_PVT'
3541 );
3542 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3543 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3544 (
3545 l_api_name,
3546 G_PKG_NAME,
3547 'OKC_API.G_RET_STS_UNEXP_ERROR',
3548 x_msg_count,
3549 x_msg_data,
3550 '_PVT'
3551 );
3552 WHEN OTHERS THEN
3553 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3554 (
3555 l_api_name,
3556 G_PKG_NAME,
3557 'OTHERS',
3558 x_msg_count,
3559 x_msg_data,
3560 '_PVT'
3561 );
3562
3563 END insert_row;
3564
3565 ----------------------------------------
3566 -- PL/SQL TBL insert_row for: OKL_K_HEADERS_V --
3567 ----------------------------------------
3568
3569 PROCEDURE insert_row(
3570
3571 p_api_version IN NUMBER,
3572 p_init_msg_list IN VARCHAR2,
3573 x_return_status OUT NOCOPY VARCHAR2,
3574 x_msg_count OUT NOCOPY NUMBER,
3575 x_msg_data OUT NOCOPY VARCHAR2,
3576 p_khrv_tbl IN khrv_tbl_type,
3577 x_khrv_tbl OUT NOCOPY khrv_tbl_type) IS
3578
3579 l_api_version CONSTANT NUMBER := 1;
3580 l_api_name CONSTANT VARCHAR2(30) := 'tbl_insert_row';
3581 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3582 i NUMBER := 0;
3583 BEGIN
3584 OKC_API.init_msg_list(p_init_msg_list);
3585 -- Make sure PL/SQL table has records in it before passing
3586 IF (p_khrv_tbl.COUNT > 0) THEN
3587 i := p_khrv_tbl.FIRST;
3588 LOOP
3589 insert_row (
3590 p_api_version => p_api_version,
3591 p_init_msg_list => OKC_API.G_FALSE,
3592 x_return_status => x_return_status,
3593 x_msg_count => x_msg_count,
3594 x_msg_data => x_msg_data,
3595 p_khrv_rec => p_khrv_tbl(i),
3596 x_khrv_rec => x_khrv_tbl(i));
3597 EXIT WHEN (i = p_khrv_tbl.LAST);
3598 i := p_khrv_tbl.NEXT(i);
3599 END LOOP;
3600 END IF;
3601
3602 EXCEPTION
3603 WHEN OKC_API.G_EXCEPTION_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_ERROR',
3609 x_msg_count,
3610 x_msg_data,
3611 '_PVT'
3612 );
3613 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3614 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3615 (
3616 l_api_name,
3617 G_PKG_NAME,
3618 'OKC_API.G_RET_STS_UNEXP_ERROR',
3619 x_msg_count,
3620 x_msg_data,
3621 '_PVT'
3622 );
3623 WHEN OTHERS THEN
3624 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3625 (
3626 l_api_name,
3627 G_PKG_NAME,
3628 'OTHERS',
3629 x_msg_count,
3630 x_msg_data,
3631 '_PVT'
3632 );
3633
3634 END insert_row;
3635
3636
3637 ---------------------------------------------------------------------------
3638 -- PROCEDURE lock_row
3639 ---------------------------------------------------------------------------
3640
3641 --------------------------------
3642 -- lock_row for: OKL_K_HEADERS --
3643 --------------------------------
3644
3645 PROCEDURE lock_row(
3646
3647 p_api_version IN NUMBER,
3648 p_init_msg_list IN VARCHAR2,
3649 x_return_status OUT NOCOPY VARCHAR2,
3650 x_msg_count OUT NOCOPY NUMBER,
3651 x_msg_data OUT NOCOPY VARCHAR2,
3652 p_khr_rec IN khr_rec_type) IS
3653
3654 E_Resource_Busy EXCEPTION;
3655 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
3656 CURSOR lock_csr (p_khr_rec IN khr_rec_type) IS
3657 SELECT OBJECT_VERSION_NUMBER
3658 FROM OKL_K_HEADERS
3659 WHERE ID = p_khr_rec.id
3660 AND OBJECT_VERSION_NUMBER = p_khr_rec.object_version_number
3661 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
3662
3663 CURSOR lchk_csr (p_khr_rec IN khr_rec_type) IS
3664 SELECT OBJECT_VERSION_NUMBER
3665 FROM OKL_K_HEADERS
3666 WHERE ID = p_khr_rec.id;
3667 l_api_version CONSTANT NUMBER := 1;
3668 l_api_name CONSTANT VARCHAR2(30) := 'rec_lock_row';
3669 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3670 l_object_version_number OKL_K_HEADERS.OBJECT_VERSION_NUMBER%TYPE;
3671 lc_object_version_number OKL_K_HEADERS.OBJECT_VERSION_NUMBER%TYPE;
3672 l_row_notfound BOOLEAN := FALSE;
3673 lc_row_notfound BOOLEAN := FALSE;
3674 BEGIN
3675 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3676 p_init_msg_list,
3677 '_PVT',
3678 x_return_status);
3679
3680 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3681 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3682 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3683 RAISE OKC_API.G_EXCEPTION_ERROR;
3684 END IF;
3685
3686 BEGIN
3687 OPEN lock_csr(p_khr_rec);
3688 FETCH lock_csr INTO l_object_version_number;
3689 l_row_notfound := lock_csr%NOTFOUND;
3690 CLOSE lock_csr;
3691 EXCEPTION
3692 WHEN E_Resource_Busy THEN
3693 IF (lock_csr%ISOPEN) THEN
3694 CLOSE lock_csr;
3695 END IF;
3696 OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
3697 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
3698 END;
3699
3700 IF ( l_row_notfound ) THEN
3701 OPEN lchk_csr(p_khr_rec);
3702 FETCH lchk_csr INTO lc_object_version_number;
3703 lc_row_notfound := lchk_csr%NOTFOUND;
3704 CLOSE lchk_csr;
3705 END IF;
3706 IF (lc_row_notfound) THEN
3707 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
3708 RAISE OKC_API.G_EXCEPTION_ERROR;
3709 ELSIF lc_object_version_number > p_khr_rec.object_version_number THEN
3710 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
3711 RAISE OKC_API.G_EXCEPTION_ERROR;
3712 ELSIF lc_object_version_number <> p_khr_rec.object_version_number THEN
3713 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
3714 RAISE OKC_API.G_EXCEPTION_ERROR;
3715 ELSIF lc_object_version_number = -1 THEN
3716 OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
3717 RAISE OKC_API.G_EXCEPTION_ERROR;
3718 END IF;
3719 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3720
3721 EXCEPTION
3722 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3723 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3724 (
3725 l_api_name,
3726 G_PKG_NAME,
3727 'OKC_API.G_RET_STS_ERROR',
3728 x_msg_count,
3729 x_msg_data,
3730 '_PVT'
3731 );
3732 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3733 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3734 (
3735 l_api_name,
3736 G_PKG_NAME,
3737 'OKC_API.G_RET_STS_UNEXP_ERROR',
3738 x_msg_count,
3739 x_msg_data,
3740 '_PVT'
3741 );
3742 WHEN OTHERS THEN
3743 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3744 (
3745 l_api_name,
3746 G_PKG_NAME,
3747 'OTHERS',
3748 x_msg_count,
3749 x_msg_data,
3750 '_PVT'
3751 );
3752
3753 END lock_row;
3754
3755 ----------------------------------
3756 -- lock_row for: OKL_K_HEADERS_V --
3757 ----------------------------------
3758
3759 PROCEDURE lock_row(
3760
3761 p_api_version IN NUMBER,
3762 p_init_msg_list IN VARCHAR2,
3763 x_return_status OUT NOCOPY VARCHAR2,
3764 x_msg_count OUT NOCOPY NUMBER,
3765 x_msg_data OUT NOCOPY VARCHAR2,
3766 p_khrv_rec IN khrv_rec_type) IS
3767
3768 l_api_version CONSTANT NUMBER := 1;
3769 l_api_name CONSTANT VARCHAR2(30) := 'rec_lock_row';
3770 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3771 l_khr_rec khr_rec_type;
3772 BEGIN
3773 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3774 G_PKG_NAME,
3775 p_init_msg_list,
3776 l_api_version,
3777 p_api_version,
3778 '_PVT',
3779 x_return_status);
3780
3781 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3782 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3783 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3784 RAISE OKC_API.G_EXCEPTION_ERROR;
3785 END IF;
3786
3787 --------------------------------------
3788 -- Move VIEW record to "Child" records
3789 --------------------------------------
3790 migrate(p_khrv_rec, l_khr_rec);
3791 --------------------------------------------
3792 -- Call the LOCK_ROW for each child record
3793 --------------------------------------------
3794 lock_row(
3795 l_api_version,
3796 p_init_msg_list,
3797 x_return_status,
3798 x_msg_count,
3799 x_msg_data,
3800 l_khr_rec
3801 );
3802
3803 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3804 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3805 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
3806 RAISE OKC_API.G_EXCEPTION_ERROR;
3807 END IF;
3808
3809 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3810
3811 EXCEPTION
3812 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3813 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3814 (
3815 l_api_name,
3816 G_PKG_NAME,
3817 'OKC_API.G_RET_STS_ERROR',
3818 x_msg_count,
3819 x_msg_data,
3820 '_PVT'
3821 );
3822 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3823 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3824 (
3825 l_api_name,
3826 G_PKG_NAME,
3827 'OKC_API.G_RET_STS_UNEXP_ERROR',
3828 x_msg_count,
3829 x_msg_data,
3830 '_PVT'
3831 );
3832 WHEN OTHERS THEN
3833 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3834 (
3835 l_api_name,
3836 G_PKG_NAME,
3837 'OTHERS',
3838 x_msg_count,
3839 x_msg_data,
3840 '_PVT'
3841 );
3842
3843 END lock_row;
3844 --------------------------------------
3845 -- PL/SQL TBL lock_row for: OKL_K_HEADERS_V --
3846 --------------------------------------
3847
3848 PROCEDURE lock_row(
3849
3850 p_api_version IN NUMBER,
3851 p_init_msg_list IN VARCHAR2,
3852 x_return_status OUT NOCOPY VARCHAR2,
3853 x_msg_count OUT NOCOPY NUMBER,
3854 x_msg_data OUT NOCOPY VARCHAR2,
3855 p_khrv_tbl IN khrv_tbl_type) IS
3856
3857 l_api_version CONSTANT NUMBER := 1;
3858 l_api_name CONSTANT VARCHAR2(30) := 'tbl_lock_row';
3859 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3860 i NUMBER := 0;
3861 BEGIN
3862 OKC_API.init_msg_list(p_init_msg_list);
3863 -- Make sure PL/SQL table has records in it before passing
3864 IF (p_khrv_tbl.COUNT > 0) THEN
3865 i := p_khrv_tbl.FIRST;
3866 LOOP
3867 lock_row (
3868 p_api_version => p_api_version,
3869 p_init_msg_list => OKC_API.G_FALSE,
3870 x_return_status => x_return_status,
3871 x_msg_count => x_msg_count,
3872 x_msg_data => x_msg_data,
3873 p_khrv_rec => p_khrv_tbl(i));
3874 EXIT WHEN (i = p_khrv_tbl.LAST);
3875 i := p_khrv_tbl.NEXT(i);
3876 END LOOP;
3877 END IF;
3878
3879 EXCEPTION
3880 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3881 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3882 (
3883 l_api_name,
3884 G_PKG_NAME,
3885 'OKC_API.G_RET_STS_ERROR',
3886 x_msg_count,
3887 x_msg_data,
3888 '_PVT'
3889 );
3890 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3891 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3892 (
3893 l_api_name,
3894 G_PKG_NAME,
3895 'OKC_API.G_RET_STS_UNEXP_ERROR',
3896 x_msg_count,
3897 x_msg_data,
3898 '_PVT'
3899 );
3900 WHEN OTHERS THEN
3901 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3902 (
3903 l_api_name,
3904 G_PKG_NAME,
3905 'OTHERS',
3906 x_msg_count,
3907 x_msg_data,
3908 '_PVT'
3909 );
3910
3911 END lock_row;
3912
3913
3914 ---------------------------------------------------------------------------
3915 -- PROCEDURE update_row
3916 ---------------------------------------------------------------------------
3917
3918 ----------------------------------
3919 -- update_row for: OKL_K_HEADERS --
3920 ----------------------------------
3921
3922 PROCEDURE update_row(
3923
3924 p_api_version IN NUMBER,
3925 p_init_msg_list IN VARCHAR2,
3926 x_return_status OUT NOCOPY VARCHAR2,
3927 x_msg_count OUT NOCOPY NUMBER,
3928 x_msg_data OUT NOCOPY VARCHAR2,
3929 p_khr_rec IN khr_rec_type,
3930 x_khr_rec OUT NOCOPY khr_rec_type) IS
3931
3932 l_api_version CONSTANT NUMBER := 1;
3933 l_api_name CONSTANT VARCHAR2(30) := 'rec_update_row';
3934 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3935 l_khr_rec khr_rec_type := p_khr_rec;
3936 l_def_khr_rec khr_rec_type;
3937 l_row_notfound BOOLEAN := TRUE;
3938 l_okl_k_headers_h_rec okl_k_headers_h_rec_type;
3939 lx_okl_k_headers_h_rec okl_k_headers_h_rec_type;
3940 ----------------------------------
3941 -- FUNCTION populate_new_record --
3942 ----------------------------------
3943 FUNCTION populate_new_record (
3944 p_khr_rec IN khr_rec_type,
3945 x_khr_rec OUT NOCOPY khr_rec_type
3946 ) RETURN VARCHAR2 IS
3947 l_khr_rec khr_rec_type;
3948 l_row_notfound BOOLEAN := TRUE;
3949 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3950 BEGIN
3951 x_khr_rec := p_khr_rec;
3952 -- Get current database values
3953 l_khr_rec := get_rec(p_khr_rec, l_row_notfound);
3954 IF (l_row_notfound) THEN
3955 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
3956 END IF;
3957 -- Move the "old" record to the history record:
3958 -- (1) to get the "old" version
3959 -- (2) to avoid 2 hits to the database
3960 migrate(l_khr_rec, l_okl_k_headers_h_rec);
3961
3962 IF (x_khr_rec.ID = OKC_API.G_MISS_NUM) THEN
3963 x_khr_rec.ID := l_khr_rec.ID;
3964 END IF;
3965
3966 IF (x_khr_rec.ISG_ID = OKC_API.G_MISS_NUM) THEN
3967 x_khr_rec.ISG_ID := l_khr_rec.ISG_ID;
3968 END IF;
3969
3970 IF (x_khr_rec.KHR_ID = OKC_API.G_MISS_NUM) THEN
3971 x_khr_rec.KHR_ID := l_khr_rec.KHR_ID;
3972 END IF;
3973
3974 IF (x_khr_rec.PDT_ID = OKC_API.G_MISS_NUM) THEN
3975 x_khr_rec.PDT_ID := l_khr_rec.PDT_ID;
3976 END IF;
3977
3978 IF (x_khr_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) THEN
3979 x_khr_rec.OBJECT_VERSION_NUMBER := l_khr_rec.OBJECT_VERSION_NUMBER;
3980 END IF;
3981
3982 IF (x_khr_rec.DATE_FIRST_ACTIVITY = OKC_API.G_MISS_DATE) THEN
3983 x_khr_rec.DATE_FIRST_ACTIVITY := l_khr_rec.DATE_FIRST_ACTIVITY;
3984 END IF;
3985
3986 IF (x_khr_rec.SYNDICATABLE_YN = OKC_API.G_MISS_CHAR) THEN
3987 x_khr_rec.SYNDICATABLE_YN := l_khr_rec.SYNDICATABLE_YN;
3988 END IF;
3989
3990 IF (x_khr_rec.SALESTYPE_YN = OKC_API.G_MISS_CHAR) THEN
3991 x_khr_rec.SALESTYPE_YN := l_khr_rec.SALESTYPE_YN;
3992 END IF;
3993
3994 IF (x_khr_rec.DATE_REFINANCED = OKC_API.G_MISS_DATE) THEN
3995 x_khr_rec.DATE_REFINANCED := l_khr_rec.DATE_REFINANCED;
3996 END IF;
3997
3998 IF (x_khr_rec.DATE_CONVERSION_EFFECTIVE = OKC_API.G_MISS_DATE) THEN
3999 x_khr_rec.DATE_CONVERSION_EFFECTIVE := l_khr_rec.DATE_CONVERSION_EFFECTIVE;
4000 END IF;
4001
4002 IF (x_khr_rec.DATE_DEAL_TRANSFERRED = OKC_API.G_MISS_DATE) THEN
4003 x_khr_rec.DATE_DEAL_TRANSFERRED := l_khr_rec.DATE_DEAL_TRANSFERRED;
4004 END IF;
4005
4006 IF (x_khr_rec.TERM_DURATION = OKC_API.G_MISS_NUM) THEN
4007 x_khr_rec.TERM_DURATION := l_khr_rec.TERM_DURATION;
4008 END IF;
4009
4010 IF (x_khr_rec.DATETIME_PROPOSAL_EFFECTIVE = OKC_API.G_MISS_DATE) THEN
4011 x_khr_rec.DATETIME_PROPOSAL_EFFECTIVE := l_khr_rec.DATETIME_PROPOSAL_EFFECTIVE;
4012 END IF;
4013
4014 IF (x_khr_rec.DATETIME_PROPOSAL_INEFFECTIVE = OKC_API.G_MISS_DATE) THEN
4015 x_khr_rec.DATETIME_PROPOSAL_INEFFECTIVE := l_khr_rec.DATETIME_PROPOSAL_INEFFECTIVE;
4016 END IF;
4017
4018 IF (x_khr_rec.DATE_PROPOSAL_ACCEPTED = OKC_API.G_MISS_DATE) THEN
4019 x_khr_rec.DATE_PROPOSAL_ACCEPTED := l_khr_rec.DATE_PROPOSAL_ACCEPTED;
4020 END IF;
4021
4022 IF (x_khr_rec.ATTRIBUTE_CATEGORY = OKC_API.G_MISS_CHAR) THEN
4023 x_khr_rec.ATTRIBUTE_CATEGORY := l_khr_rec.ATTRIBUTE_CATEGORY;
4024 END IF;
4025
4026 IF (x_khr_rec.ATTRIBUTE1 = OKC_API.G_MISS_CHAR) THEN
4027 x_khr_rec.ATTRIBUTE1 := l_khr_rec.ATTRIBUTE1;
4028 END IF;
4029
4030 IF (x_khr_rec.ATTRIBUTE2 = OKC_API.G_MISS_CHAR) THEN
4031 x_khr_rec.ATTRIBUTE2 := l_khr_rec.ATTRIBUTE2;
4032 END IF;
4033
4034 IF (x_khr_rec.ATTRIBUTE3 = OKC_API.G_MISS_CHAR) THEN
4035 x_khr_rec.ATTRIBUTE3 := l_khr_rec.ATTRIBUTE3;
4036 END IF;
4037
4038 IF (x_khr_rec.ATTRIBUTE4 = OKC_API.G_MISS_CHAR) THEN
4039 x_khr_rec.ATTRIBUTE4 := l_khr_rec.ATTRIBUTE4;
4040 END IF;
4041
4042 IF (x_khr_rec.ATTRIBUTE5 = OKC_API.G_MISS_CHAR) THEN
4043 x_khr_rec.ATTRIBUTE5 := l_khr_rec.ATTRIBUTE5;
4044 END IF;
4045
4046 IF (x_khr_rec.ATTRIBUTE6 = OKC_API.G_MISS_CHAR) THEN
4047 x_khr_rec.ATTRIBUTE6 := l_khr_rec.ATTRIBUTE6;
4048 END IF;
4049
4050 IF (x_khr_rec.ATTRIBUTE7 = OKC_API.G_MISS_CHAR) THEN
4051 x_khr_rec.ATTRIBUTE7 := l_khr_rec.ATTRIBUTE7;
4052 END IF;
4053
4054 IF (x_khr_rec.ATTRIBUTE8 = OKC_API.G_MISS_CHAR) THEN
4055 x_khr_rec.ATTRIBUTE8 := l_khr_rec.ATTRIBUTE8;
4056 END IF;
4057
4058 IF (x_khr_rec.ATTRIBUTE9 = OKC_API.G_MISS_CHAR) THEN
4059 x_khr_rec.ATTRIBUTE9 := l_khr_rec.ATTRIBUTE9;
4060 END IF;
4061
4062 IF (x_khr_rec.ATTRIBUTE10 = OKC_API.G_MISS_CHAR) THEN
4063 x_khr_rec.ATTRIBUTE10 := l_khr_rec.ATTRIBUTE10;
4064 END IF;
4065
4066 IF (x_khr_rec.ATTRIBUTE11 = OKC_API.G_MISS_CHAR) THEN
4067 x_khr_rec.ATTRIBUTE11 := l_khr_rec.ATTRIBUTE11;
4068 END IF;
4069
4070 IF (x_khr_rec.ATTRIBUTE12 = OKC_API.G_MISS_CHAR) THEN
4071 x_khr_rec.ATTRIBUTE12 := l_khr_rec.ATTRIBUTE12;
4072 END IF;
4073
4074 IF (x_khr_rec.ATTRIBUTE13 = OKC_API.G_MISS_CHAR) THEN
4075 x_khr_rec.ATTRIBUTE13 := l_khr_rec.ATTRIBUTE13;
4076 END IF;
4077
4078 IF (x_khr_rec.ATTRIBUTE14 = OKC_API.G_MISS_CHAR) THEN
4079 x_khr_rec.ATTRIBUTE14 := l_khr_rec.ATTRIBUTE14;
4080 END IF;
4081
4082 IF (x_khr_rec.ATTRIBUTE15 = OKC_API.G_MISS_CHAR) THEN
4083 x_khr_rec.ATTRIBUTE15 := l_khr_rec.ATTRIBUTE15;
4084 END IF;
4085
4086 IF (x_khr_rec.CREATED_BY = OKC_API.G_MISS_NUM) THEN
4087 x_khr_rec.CREATED_BY := l_khr_rec.CREATED_BY;
4088 END IF;
4089
4090 IF (x_khr_rec.CREATION_DATE = OKC_API.G_MISS_DATE) THEN
4091 x_khr_rec.CREATION_DATE := l_khr_rec.CREATION_DATE;
4092 END IF;
4093
4094 IF (x_khr_rec.LAST_UPDATED_BY = OKC_API.G_MISS_NUM) THEN
4095 x_khr_rec.LAST_UPDATED_BY := l_khr_rec.LAST_UPDATED_BY;
4096 END IF;
4097
4098 IF (x_khr_rec.LAST_UPDATE_DATE = OKC_API.G_MISS_DATE) THEN
4099 x_khr_rec.LAST_UPDATE_DATE := l_khr_rec.LAST_UPDATE_DATE;
4100 END IF;
4101
4102 IF (x_khr_rec.LAST_UPDATE_LOGIN = OKC_API.G_MISS_NUM) THEN
4103 x_khr_rec.LAST_UPDATE_LOGIN := l_khr_rec.LAST_UPDATE_LOGIN;
4104 END IF;
4105
4106 IF (x_khr_rec.AMD_CODE = OKC_API.G_MISS_CHAR) THEN
4107 x_khr_rec.AMD_CODE := l_khr_rec.AMD_CODE;
4108 END IF;
4109
4110 IF (x_khr_rec.GENERATE_ACCRUAL_YN = OKC_API.G_MISS_CHAR) THEN
4111 x_khr_rec.GENERATE_ACCRUAL_YN := l_khr_rec.GENERATE_ACCRUAL_YN;
4112 END IF;
4113
4114 IF (x_khr_rec.GENERATE_ACCRUAL_OVERRIDE_YN = OKC_API.G_MISS_CHAR) THEN
4115 x_khr_rec.GENERATE_ACCRUAL_OVERRIDE_YN := l_khr_rec.GENERATE_ACCRUAL_OVERRIDE_YN;
4116 END IF;
4117
4118 IF (x_khr_rec.CREDIT_ACT_YN = OKC_API.G_MISS_CHAR) THEN
4119 x_khr_rec.CREDIT_ACT_YN := l_khr_rec.CREDIT_ACT_YN;
4120 END IF;
4121
4122 IF (x_khr_rec.CONVERTED_ACCOUNT_YN = OKC_API.G_MISS_CHAR) THEN
4123 x_khr_rec.CONVERTED_ACCOUNT_YN := l_khr_rec.CONVERTED_ACCOUNT_YN;
4124 END IF;
4125
4126 IF (x_khr_rec.PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4127 x_khr_rec.PRE_TAX_YIELD := l_khr_rec.PRE_TAX_YIELD;
4128 END IF;
4129
4130 IF (x_khr_rec.AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4131 x_khr_rec.AFTER_TAX_YIELD := l_khr_rec.AFTER_TAX_YIELD;
4132 END IF;
4133
4134 IF (x_khr_rec.IMPLICIT_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4135 x_khr_rec.IMPLICIT_INTEREST_RATE := l_khr_rec.IMPLICIT_INTEREST_RATE;
4136 END IF;
4137
4138 IF (x_khr_rec.IMPLICIT_NON_IDC_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4139 x_khr_rec.IMPLICIT_NON_IDC_INTEREST_RATE := l_khr_rec.IMPLICIT_NON_IDC_INTEREST_RATE;
4140 END IF;
4141
4142 IF (x_khr_rec.TARGET_PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4143 x_khr_rec.TARGET_PRE_TAX_YIELD := l_khr_rec.TARGET_PRE_TAX_YIELD;
4144 END IF;
4145
4146 IF (x_khr_rec.TARGET_AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4147 x_khr_rec.TARGET_AFTER_TAX_YIELD := l_khr_rec.TARGET_AFTER_TAX_YIELD;
4148 END IF;
4149
4150 IF (x_khr_rec.TARGET_IMPLICIT_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4151 x_khr_rec.TARGET_IMPLICIT_INTEREST_RATE := l_khr_rec.TARGET_IMPLICIT_INTEREST_RATE;
4152 END IF;
4153
4154 IF (x_khr_rec.TARGET_IMPLICIT_NONIDC_INTRATE = OKC_API.G_MISS_NUM) THEN
4155 x_khr_rec.TARGET_IMPLICIT_NONIDC_INTRATE := l_khr_rec.TARGET_IMPLICIT_NONIDC_INTRATE;
4156 END IF;
4157
4158 IF (x_khr_rec.DATE_LAST_INTERIM_INTEREST_CAL = OKC_API.G_MISS_DATE) THEN
4159 x_khr_rec.DATE_LAST_INTERIM_INTEREST_CAL := l_khr_rec.DATE_LAST_INTERIM_INTEREST_CAL;
4160 END IF;
4161
4162 IF (x_khr_rec.DEAL_TYPE = OKC_API.G_MISS_CHAR) THEN
4163 x_khr_rec.DEAL_TYPE := l_khr_rec.DEAL_TYPE;
4164 END IF;
4165
4166 IF (x_khr_rec.PRE_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4167 x_khr_rec.PRE_TAX_IRR := l_khr_rec.PRE_TAX_IRR;
4168 END IF;
4169
4170 IF (x_khr_rec.AFTER_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4171 x_khr_rec.AFTER_TAX_IRR := l_khr_rec.AFTER_TAX_IRR;
4172 END IF;
4173
4174 IF (x_khr_rec.EXPECTED_DELIVERY_DATE = OKC_API.G_MISS_DATE) THEN
4175 x_khr_rec.EXPECTED_DELIVERY_DATE := l_khr_rec.EXPECTED_DELIVERY_DATE;
4176 END IF;
4177
4178 IF (x_khr_rec.ACCEPTED_DATE = OKC_API.G_MISS_DATE) THEN
4179 x_khr_rec.ACCEPTED_DATE := l_khr_rec.ACCEPTED_DATE;
4180 END IF;
4181
4182 IF (x_khr_rec.PREFUNDING_ELIGIBLE_YN = OKC_API.G_MISS_CHAR) THEN
4183 x_khr_rec.PREFUNDING_ELIGIBLE_YN := l_khr_rec.PREFUNDING_ELIGIBLE_YN;
4184 END IF;
4185
4186 IF (x_khr_rec.REVOLVING_CREDIT_YN = OKC_API.G_MISS_CHAR) THEN
4187 x_khr_rec.REVOLVING_CREDIT_YN := l_khr_rec.REVOLVING_CREDIT_YN;
4188 END IF;
4189 --Bug# 2697681 schema changes 11.5.9
4190 IF (x_khr_rec.CURRENCY_CONVERSION_TYPE = OKC_API.G_MISS_CHAR) THEN
4191 x_khr_rec.CURRENCY_CONVERSION_TYPE := l_khr_rec.CURRENCY_CONVERSION_TYPE;
4192 END IF;
4193
4194 IF (x_khr_rec.CURRENCY_CONVERSION_RATE = OKC_API.G_MISS_NUM) THEN
4195 x_khr_rec.CURRENCY_CONVERSION_RATE := l_khr_rec.CURRENCY_CONVERSION_RATE;
4196 END IF;
4197
4198 IF (x_khr_rec.CURRENCY_CONVERSION_DATE = OKC_API.G_MISS_DATE) THEN
4199 x_khr_rec.CURRENCY_CONVERSION_DATE := l_khr_rec.CURRENCY_CONVERSION_DATE;
4200 END IF;
4201
4202 IF (x_khr_rec.MULTI_GAAP_YN = OKC_API.G_MISS_CHAR) THEN
4203 x_khr_rec.MULTI_GAAP_YN := l_khr_rec.MULTI_GAAP_YN;
4204 END IF;
4205
4206 IF (x_khr_rec.RECOURSE_CODE = OKC_API.G_MISS_CHAR) THEN
4207 x_khr_rec.RECOURSE_CODE := l_khr_rec.RECOURSE_CODE;
4208 END IF;
4209
4210 IF (x_khr_rec.LESSOR_SERV_ORG_CODE = OKC_API.G_MISS_CHAR) THEN
4211 x_khr_rec.LESSOR_SERV_ORG_CODE := l_khr_rec.LESSOR_SERV_ORG_CODE;
4212 END IF;
4213
4214 IF (x_khr_rec.ASSIGNABLE_YN = OKC_API.G_MISS_CHAR) THEN
4215 x_khr_rec.ASSIGNABLE_YN := l_khr_rec.ASSIGNABLE_YN;
4216 END IF;
4217
4218 IF (x_khr_rec.SECURITIZED_CODE = OKC_API.G_MISS_CHAR) THEN
4219 x_khr_rec.SECURITIZED_CODE := l_khr_rec.SECURITIZED_CODE;
4220 END IF;
4221
4222 IF (x_khr_rec.SECURITIZATION_TYPE = OKC_API.G_MISS_CHAR) THEN
4223 x_khr_rec.SECURITIZATION_TYPE := l_khr_rec.SECURITIZATION_TYPE;
4224 END IF;
4225 --Bug# 3143522: 11.5.10
4226 --subsidy
4227 IF (x_khr_rec.SUB_PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4228 x_khr_rec.SUB_PRE_TAX_YIELD := l_khr_rec.SUB_PRE_TAX_YIELD;
4229 END IF;
4230 IF (x_khr_rec.SUB_AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4231 x_khr_rec.SUB_AFTER_TAX_YIELD := l_khr_rec.SUB_AFTER_TAX_YIELD;
4232 END IF;
4233 IF (x_khr_rec.SUB_IMPL_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4234 x_khr_rec.SUB_IMPL_INTEREST_RATE := l_khr_rec.SUB_IMPL_INTEREST_RATE;
4235 END IF;
4236 IF (x_khr_rec.SUB_IMPL_NON_IDC_INT_RATE = OKC_API.G_MISS_NUM) THEN
4237 x_khr_rec.SUB_IMPL_NON_IDC_INT_RATE := l_khr_rec.SUB_IMPL_NON_IDC_INT_RATE;
4238 END IF;
4239 IF (x_khr_rec.SUB_PRE_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4240 x_khr_rec.SUB_PRE_TAX_IRR := l_khr_rec.SUB_PRE_TAX_IRR;
4241 END IF;
4242 IF (x_khr_rec.SUB_AFTER_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4243 x_khr_rec.SUB_AFTER_TAX_IRR := l_khr_rec.SUB_AFTER_TAX_IRR;
4244 END IF;
4245 --Bug# 3973640 : 11.5.10+ schema
4246 IF (x_khr_rec.TOT_CL_TRANSFER_AMT = OKC_API.G_MISS_NUM) THEN
4247 x_khr_rec.TOT_CL_TRANSFER_AMT := l_khr_rec.TOT_CL_TRANSFER_AMT;
4248 END IF;
4249 IF (x_khr_rec.TOT_CL_NET_TRANSFER_AMT = OKC_API.G_MISS_NUM) THEN
4250 x_khr_rec.TOT_CL_NET_TRANSFER_AMT := l_khr_rec.TOT_CL_NET_TRANSFER_AMT;
4251 END IF;
4252 IF (x_khr_rec.TOT_CL_LIMIT = OKC_API.G_MISS_NUM) THEN
4253 x_khr_rec.TOT_CL_LIMIT := l_khr_rec.TOT_CL_LIMIT;
4254 END IF;
4255 IF (x_khr_rec.TOT_CL_FUNDING_AMT = OKC_API.G_MISS_NUM) THEN
4256 x_khr_rec.TOT_CL_FUNDING_AMT := l_khr_rec.TOT_CL_FUNDING_AMT;
4257 END IF;
4258 IF (x_khr_rec.CRS_ID = OKC_API.G_MISS_NUM) THEN
4259 x_khr_rec.CRS_ID := l_khr_rec.CRS_ID;
4260 END IF;
4261 IF (x_khr_rec.TEMPLATE_TYPE_CODE = OKC_API.G_MISS_CHAR) THEN
4262 x_khr_rec.TEMPLATE_TYPE_CODE := l_khr_rec.TEMPLATE_TYPE_CODE;
4263 END IF;
4264 --Bug# 4419339 OKLH Schema Sales Quote
4265 IF (x_khr_rec.DATE_FUNDING_EXPECTED = OKC_API.G_MISS_DATE) THEN
4266 x_khr_rec.DATE_FUNDING_EXPECTED := l_khr_rec.DATE_FUNDING_EXPECTED;
4267 END IF;
4268 IF (x_khr_rec.DATE_TRADEIN = OKC_API.G_MISS_DATE) THEN
4269 x_khr_rec.DATE_TRADEIN := l_khr_rec.DATE_TRADEIN;
4270 END IF;
4271 IF (x_khr_rec.TRADEIN_AMOUNT = OKC_API.G_MISS_NUM) THEN
4272 x_khr_rec.TRADEIN_AMOUNT := l_khr_rec.TRADEIN_AMOUNT;
4273 END IF;
4274 IF (x_khr_rec.TRADEIN_DESCRIPTION = OKC_API.G_MISS_CHAR) THEN
4275 x_khr_rec.TRADEIN_DESCRIPTION := l_khr_rec.TRADEIN_DESCRIPTION;
4276 END IF;
4277 --Added by dpsingh for LE uptake
4278 IF (x_khr_rec.LEGAL_ENTITY_ID = OKL_API.G_MISS_NUM) THEN
4279 x_khr_rec.LEGAL_ENTITY_ID := l_khr_rec.LEGAL_ENTITY_ID;
4280 END IF;
4281 RETURN(l_return_status);
4282 END populate_new_record;
4283 --------------------------------------
4284 -- Set_Attributes for: OKL_K_HEADERS --
4285 --------------------------------------
4286 FUNCTION Set_Attributes (
4287 p_khr_rec IN khr_rec_type,
4288 x_khr_rec OUT NOCOPY khr_rec_type
4289 ) RETURN VARCHAR2 IS
4290 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4291 BEGIN
4292 x_khr_rec := p_khr_rec;
4293 RETURN(l_return_status);
4294 END Set_Attributes;
4295 BEGIN
4296 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
4297 p_init_msg_list,
4298 '_PVT',
4299 x_return_status);
4300
4301 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4302 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4303 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4304 RAISE OKC_API.G_EXCEPTION_ERROR;
4305 END IF;
4306
4307 --- Setting item attributes
4308 l_return_status := Set_Attributes(
4309 p_khr_rec, -- IN
4310 l_khr_rec); -- OUT
4311 --- If any errors happen abort API
4312
4313 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4314 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4315 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4316 RAISE OKC_API.G_EXCEPTION_ERROR;
4317 END IF;
4318
4319 l_return_status := populate_new_record(l_khr_rec, l_def_khr_rec);
4320
4321 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4322 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4323 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4324 RAISE OKC_API.G_EXCEPTION_ERROR;
4325 END IF;
4326
4327 UPDATE OKL_K_HEADERS
4328 SET
4329 ID = l_def_khr_rec.ID,
4330 ISG_ID = l_def_khr_rec.ISG_ID,
4331 KHR_ID = l_def_khr_rec.KHR_ID,
4332 PDT_ID = l_def_khr_rec.PDT_ID,
4333 OBJECT_VERSION_NUMBER = l_def_khr_rec.OBJECT_VERSION_NUMBER,
4334 DATE_FIRST_ACTIVITY = l_def_khr_rec.DATE_FIRST_ACTIVITY,
4335 SYNDICATABLE_YN = l_def_khr_rec.SYNDICATABLE_YN,
4336 SALESTYPE_YN = l_def_khr_rec.SALESTYPE_YN,
4337 DATE_REFINANCED = l_def_khr_rec.DATE_REFINANCED,
4338 DATE_CONVERSION_EFFECTIVE = l_def_khr_rec.DATE_CONVERSION_EFFECTIVE,
4339 DATE_DEAL_TRANSFERRED = l_def_khr_rec.DATE_DEAL_TRANSFERRED,
4340 TERM_DURATION = l_def_khr_rec.TERM_DURATION,
4341 DATETIME_PROPOSAL_EFFECTIVE = l_def_khr_rec.DATETIME_PROPOSAL_EFFECTIVE,
4342 DATETIME_PROPOSAL_INEFFECTIVE = l_def_khr_rec.DATETIME_PROPOSAL_INEFFECTIVE,
4343 DATE_PROPOSAL_ACCEPTED = l_def_khr_rec.DATE_PROPOSAL_ACCEPTED,
4344 ATTRIBUTE_CATEGORY = l_def_khr_rec.ATTRIBUTE_CATEGORY,
4345 ATTRIBUTE1 = l_def_khr_rec.ATTRIBUTE1,
4346 ATTRIBUTE2 = l_def_khr_rec.ATTRIBUTE2,
4347 ATTRIBUTE3 = l_def_khr_rec.ATTRIBUTE3,
4348 ATTRIBUTE4 = l_def_khr_rec.ATTRIBUTE4,
4349 ATTRIBUTE5 = l_def_khr_rec.ATTRIBUTE5,
4350 ATTRIBUTE6 = l_def_khr_rec.ATTRIBUTE6,
4351 ATTRIBUTE7 = l_def_khr_rec.ATTRIBUTE7,
4352 ATTRIBUTE8 = l_def_khr_rec.ATTRIBUTE8,
4353 ATTRIBUTE9 = l_def_khr_rec.ATTRIBUTE9,
4354 ATTRIBUTE10 = l_def_khr_rec.ATTRIBUTE10,
4355 ATTRIBUTE11 = l_def_khr_rec.ATTRIBUTE11,
4356 ATTRIBUTE12 = l_def_khr_rec.ATTRIBUTE12,
4357 ATTRIBUTE13 = l_def_khr_rec.ATTRIBUTE13,
4358 ATTRIBUTE14 = l_def_khr_rec.ATTRIBUTE14,
4359 ATTRIBUTE15 = l_def_khr_rec.ATTRIBUTE15,
4360 CREATED_BY = l_def_khr_rec.CREATED_BY,
4361 CREATION_DATE = l_def_khr_rec.CREATION_DATE,
4362 LAST_UPDATED_BY = l_def_khr_rec.LAST_UPDATED_BY,
4363 LAST_UPDATE_DATE = l_def_khr_rec.LAST_UPDATE_DATE,
4364 LAST_UPDATE_LOGIN = l_def_khr_rec.LAST_UPDATE_LOGIN,
4365 AMD_CODE = l_def_khr_rec.AMD_CODE,
4366 GENERATE_ACCRUAL_YN = l_def_khr_rec.GENERATE_ACCRUAL_YN,
4367 GENERATE_ACCRUAL_OVERRIDE_YN = l_def_khr_rec.GENERATE_ACCRUAL_OVERRIDE_YN,
4368 CREDIT_ACT_YN = l_def_khr_rec.CREDIT_ACT_YN,
4369 CONVERTED_ACCOUNT_YN = l_def_khr_rec.CONVERTED_ACCOUNT_YN,
4370 PRE_TAX_YIELD = l_def_khr_rec.PRE_TAX_YIELD,
4371 AFTER_TAX_YIELD = l_def_khr_rec.AFTER_TAX_YIELD,
4372 IMPLICIT_INTEREST_RATE = l_def_khr_rec.IMPLICIT_INTEREST_RATE,
4373 IMPLICIT_NON_IDC_INTEREST_RATE = l_def_khr_rec.IMPLICIT_NON_IDC_INTEREST_RATE,
4374 TARGET_PRE_TAX_YIELD = l_def_khr_rec.TARGET_PRE_TAX_YIELD,
4375 TARGET_AFTER_TAX_YIELD = l_def_khr_rec.TARGET_AFTER_TAX_YIELD,
4376 TARGET_IMPLICIT_INTEREST_RATE = l_def_khr_rec.TARGET_IMPLICIT_INTEREST_RATE,
4377 TARGET_IMPLICIT_NONIDC_INTRATE = l_def_khr_rec.TARGET_IMPLICIT_NONIDC_INTRATE,
4378 DATE_LAST_INTERIM_INTEREST_CAL = l_def_khr_rec.DATE_LAST_INTERIM_INTEREST_CAL,
4379 DEAL_TYPE = l_def_khr_rec.DEAL_TYPE,
4380 PRE_TAX_IRR = l_def_khr_rec.PRE_TAX_IRR,
4381 AFTER_TAX_IRR = l_def_khr_rec.AFTER_TAX_IRR,
4382 EXPECTED_DELIVERY_DATE = l_def_khr_rec.EXPECTED_DELIVERY_DATE,
4383 ACCEPTED_DATE = l_def_khr_rec.ACCEPTED_DATE,
4384 PREFUNDING_ELIGIBLE_YN = l_def_khr_rec.PREFUNDING_ELIGIBLE_YN,
4385 REVOLVING_CREDIT_YN = l_def_khr_rec.REVOLVING_CREDIT_YN,
4386 --Bug# 2697681 schema changes 11.5.9
4387 CURRENCY_CONVERSION_TYPE = l_def_khr_rec.CURRENCY_CONVERSION_TYPE,
4388 CURRENCY_CONVERSION_RATE = l_def_khr_rec.CURRENCY_CONVERSION_RATE,
4389 CURRENCY_CONVERSION_DATE = l_def_khr_rec.CURRENCY_CONVERSION_DATE,
4390 MULTI_GAAP_YN = l_def_khr_rec.MULTI_GAAP_YN,
4391 RECOURSE_CODE = l_def_khr_rec.RECOURSE_CODE,
4392 LESSOR_SERV_ORG_CODE = l_def_khr_rec.LESSOR_SERV_ORG_CODE,
4393 ASSIGNABLE_YN = l_def_khr_rec.ASSIGNABLE_YN,
4394 SECURITIZED_CODE = l_def_khr_rec.SECURITIZED_CODE,
4395 SECURITIZATION_TYPE = l_def_khr_rec.SECURITIZATION_TYPE,
4396 --Bug# 3143522 : 11.5.10
4397 --subsidy
4398 SUB_PRE_TAX_YIELD = l_def_khr_rec.SUB_PRE_TAX_YIELD,
4399 SUB_AFTER_TAX_YIELD = l_def_khr_rec.SUB_AFTER_TAX_YIELD,
4400 SUB_IMPL_INTEREST_RATE = l_def_khr_rec.SUB_IMPL_INTEREST_RATE,
4401 SUB_IMPL_NON_IDC_INT_RATE = l_def_khr_rec.SUB_IMPL_NON_IDC_INT_RATE,
4402 SUB_PRE_TAX_IRR = l_def_khr_rec.SUB_PRE_TAX_IRR,
4403 SUB_AFTER_TAX_IRR = l_def_khr_rec.SUB_AFTER_TAX_IRR,
4404 --Bug# 3973640 : 11.5.10+ schema
4405 TOT_CL_TRANSFER_AMT = l_def_khr_rec.TOT_CL_TRANSFER_AMT,
4406 TOT_CL_NET_TRANSFER_AMT = l_def_khr_rec.TOT_CL_NET_TRANSFER_AMT,
4407 TOT_CL_LIMIT = l_def_khr_rec.TOT_CL_LIMIT,
4408 TOT_CL_FUNDING_AMT = l_def_khr_rec.TOT_CL_FUNDING_AMT,
4409 CRS_ID = l_def_khr_rec.CRS_ID,
4410 TEMPLATE_TYPE_CODE = l_def_khr_rec.TEMPLATE_TYPE_CODE,
4411 --Bug# 4419339 OKLH Schema Sales Quote
4412 DATE_FUNDING_EXPECTED = l_def_khr_rec.DATE_FUNDING_EXPECTED,
4413 DATE_TRADEIN = l_def_khr_rec.DATE_TRADEIN,
4414 TRADEIN_AMOUNT = l_def_khr_rec.TRADEIN_AMOUNT,
4415 TRADEIN_DESCRIPTION = l_def_khr_rec.TRADEIN_DESCRIPTION,
4416 --Added by dpsingh for LE uptake
4417 LEGAL_ENTITY_ID = l_def_khr_rec.LEGAL_ENTITY_ID
4418 WHERE ID = l_def_khr_rec.id;
4419
4420 -- Insert into History table
4421 /*
4422 insert_row(
4423 l_api_version,
4424 p_init_msg_list,
4425 x_return_status,
4426 x_msg_count,
4427 x_msg_data,
4428 l_okl_k_headers_h_rec,
4429 lx_okl_k_headers_h_rec
4430 );
4431
4432 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4433 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4434 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
4435 RAISE OKC_API.G_EXCEPTION_ERROR;
4436 END IF;
4437
4438 */
4439 x_khr_rec := l_def_khr_rec;
4440 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
4441
4442 EXCEPTION
4443 WHEN OKC_API.G_EXCEPTION_ERROR THEN
4444 x_return_status := OKC_API.HANDLE_EXCEPTIONS
4445 (
4446 l_api_name,
4447 G_PKG_NAME,
4448 'OKC_API.G_RET_STS_ERROR',
4449 x_msg_count,
4450 x_msg_data,
4451 '_PVT'
4452 );
4453 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4454 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4455 (
4456 l_api_name,
4457 G_PKG_NAME,
4458 'OKC_API.G_RET_STS_UNEXP_ERROR',
4459 x_msg_count,
4460 x_msg_data,
4461 '_PVT'
4462 );
4463 WHEN OTHERS THEN
4464 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4465 (
4466 l_api_name,
4467 G_PKG_NAME,
4468 'OTHERS',
4469 x_msg_count,
4470 x_msg_data,
4471 '_PVT'
4472 );
4473
4474 END update_row;
4475
4476 ------------------------------------
4477 -- update_row for: OKL_K_HEADERS_V --
4478 ------------------------------------
4479
4480 PROCEDURE update_row(
4481
4482 p_api_version IN NUMBER,
4483 p_init_msg_list IN VARCHAR2,
4484 x_return_status OUT NOCOPY VARCHAR2,
4485 x_msg_count OUT NOCOPY NUMBER,
4486 x_msg_data OUT NOCOPY VARCHAR2,
4487 p_khrv_rec IN khrv_rec_type,
4488 x_khrv_rec OUT NOCOPY khrv_rec_type) IS
4489
4490 l_api_version CONSTANT NUMBER := 1;
4491 l_api_name CONSTANT VARCHAR2(30) := 'rec_update_row';
4492 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4493 l_khrv_rec khrv_rec_type := p_khrv_rec;
4494 l_def_khrv_rec khrv_rec_type;
4495 l_khr_rec khr_rec_type;
4496 lx_khr_rec khr_rec_type;
4497 -------------------------------
4498 -- FUNCTION fill_who_columns --
4499 -------------------------------
4500 FUNCTION fill_who_columns (
4501 p_khrv_rec IN khrv_rec_type
4502 ) RETURN khrv_rec_type IS
4503 l_khrv_rec khrv_rec_type := p_khrv_rec;
4504 BEGIN
4505 l_khrv_rec.LAST_UPDATE_DATE := SYSDATE;
4506 l_khrv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
4507 l_khrv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
4508 RETURN(l_khrv_rec);
4509 END fill_who_columns;
4510 ----------------------------------
4511 -- FUNCTION populate_new_record --
4512 ----------------------------------
4513 FUNCTION populate_new_record (
4514 p_khrv_rec IN khrv_rec_type,
4515 x_khrv_rec OUT NOCOPY khrv_rec_type
4516 ) RETURN VARCHAR2 IS
4517 l_khrv_rec khrv_rec_type;
4518 l_row_notfound BOOLEAN := TRUE;
4519 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4520 BEGIN
4521 x_khrv_rec := p_khrv_rec;
4522 -- Get current database values
4523 l_khrv_rec := get_rec(p_khrv_rec, l_row_notfound);
4524 IF (l_row_notfound) THEN
4525 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
4526 END IF;
4527
4528
4529 IF (x_khrv_rec.ID = OKC_API.G_MISS_NUM) THEN
4530 x_khrv_rec.ID := l_khrv_rec.ID;
4531 END IF;
4532
4533 IF (x_khrv_rec.OBJECT_VERSION_NUMBER = OKC_API.G_MISS_NUM) THEN
4534 x_khrv_rec.OBJECT_VERSION_NUMBER := l_khrv_rec.OBJECT_VERSION_NUMBER;
4535 END IF;
4536
4537 IF (x_khrv_rec.ISG_ID = OKC_API.G_MISS_NUM) THEN
4538 x_khrv_rec.ISG_ID := l_khrv_rec.ISG_ID;
4539 END IF;
4540
4541 IF (x_khrv_rec.KHR_ID = OKC_API.G_MISS_NUM) THEN
4542 x_khrv_rec.KHR_ID := l_khrv_rec.KHR_ID;
4543 END IF;
4544
4545 IF (x_khrv_rec.PDT_ID = OKC_API.G_MISS_NUM) THEN
4546 x_khrv_rec.PDT_ID := l_khrv_rec.PDT_ID;
4547 END IF;
4548
4549 IF (x_khrv_rec.AMD_CODE = OKC_API.G_MISS_CHAR) THEN
4550 x_khrv_rec.AMD_CODE := l_khrv_rec.AMD_CODE;
4551 END IF;
4552
4553 IF (x_khrv_rec.DATE_FIRST_ACTIVITY = OKC_API.G_MISS_DATE) THEN
4554 x_khrv_rec.DATE_FIRST_ACTIVITY := l_khrv_rec.DATE_FIRST_ACTIVITY;
4555 END IF;
4556
4557 IF (x_khrv_rec.GENERATE_ACCRUAL_YN = OKC_API.G_MISS_CHAR) THEN
4558 x_khrv_rec.GENERATE_ACCRUAL_YN := l_khrv_rec.GENERATE_ACCRUAL_YN;
4559 END IF;
4560
4561 IF (x_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN = OKC_API.G_MISS_CHAR) THEN
4562 x_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN := l_khrv_rec.GENERATE_ACCRUAL_OVERRIDE_YN;
4563 END IF;
4564
4565 IF (x_khrv_rec.DATE_REFINANCED = OKC_API.G_MISS_DATE) THEN
4566 x_khrv_rec.DATE_REFINANCED := l_khrv_rec.DATE_REFINANCED;
4567 END IF;
4568
4569 IF (x_khrv_rec.CREDIT_ACT_YN = OKC_API.G_MISS_CHAR) THEN
4570 x_khrv_rec.CREDIT_ACT_YN := l_khrv_rec.CREDIT_ACT_YN;
4571 END IF;
4572
4573 IF (x_khrv_rec.TERM_DURATION = OKC_API.G_MISS_NUM) THEN
4574 x_khrv_rec.TERM_DURATION := l_khrv_rec.TERM_DURATION;
4575 END IF;
4576
4577 IF (x_khrv_rec.CONVERTED_ACCOUNT_YN = OKC_API.G_MISS_CHAR) THEN
4578 x_khrv_rec.CONVERTED_ACCOUNT_YN := l_khrv_rec.CONVERTED_ACCOUNT_YN;
4579 END IF;
4580
4581 IF (x_khrv_rec.DATE_CONVERSION_EFFECTIVE = OKC_API.G_MISS_DATE) THEN
4582 x_khrv_rec.DATE_CONVERSION_EFFECTIVE := l_khrv_rec.DATE_CONVERSION_EFFECTIVE;
4583 END IF;
4584
4585 IF (x_khrv_rec.SYNDICATABLE_YN = OKC_API.G_MISS_CHAR) THEN
4586 x_khrv_rec.SYNDICATABLE_YN := l_khrv_rec.SYNDICATABLE_YN;
4587 END IF;
4588
4589 IF (x_khrv_rec.SALESTYPE_YN = OKC_API.G_MISS_CHAR) THEN
4590 x_khrv_rec.SALESTYPE_YN := l_khrv_rec.SALESTYPE_YN;
4591 END IF;
4592
4593 IF (x_khrv_rec.DATE_DEAL_TRANSFERRED = OKC_API.G_MISS_DATE) THEN
4594 x_khrv_rec.DATE_DEAL_TRANSFERRED := l_khrv_rec.DATE_DEAL_TRANSFERRED;
4595 END IF;
4596
4597 IF (x_khrv_rec.DATETIME_PROPOSAL_EFFECTIVE = OKC_API.G_MISS_DATE) THEN
4598 x_khrv_rec.DATETIME_PROPOSAL_EFFECTIVE := l_khrv_rec.DATETIME_PROPOSAL_EFFECTIVE;
4599 END IF;
4600
4601 IF (x_khrv_rec.DATETIME_PROPOSAL_INEFFECTIVE = OKC_API.G_MISS_DATE) THEN
4602 x_khrv_rec.DATETIME_PROPOSAL_INEFFECTIVE := l_khrv_rec.DATETIME_PROPOSAL_INEFFECTIVE;
4603 END IF;
4604
4605 IF (x_khrv_rec.DATE_PROPOSAL_ACCEPTED = OKC_API.G_MISS_DATE) THEN
4606 x_khrv_rec.DATE_PROPOSAL_ACCEPTED := l_khrv_rec.DATE_PROPOSAL_ACCEPTED;
4607 END IF;
4608
4609 IF (x_khrv_rec.ATTRIBUTE_CATEGORY = OKC_API.G_MISS_CHAR) THEN
4610 x_khrv_rec.ATTRIBUTE_CATEGORY := l_khrv_rec.ATTRIBUTE_CATEGORY;
4611 END IF;
4612
4613 IF (x_khrv_rec.ATTRIBUTE1 = OKC_API.G_MISS_CHAR) THEN
4614 x_khrv_rec.ATTRIBUTE1 := l_khrv_rec.ATTRIBUTE1;
4615 END IF;
4616
4617 IF (x_khrv_rec.ATTRIBUTE2 = OKC_API.G_MISS_CHAR) THEN
4618 x_khrv_rec.ATTRIBUTE2 := l_khrv_rec.ATTRIBUTE2;
4619 END IF;
4620
4621 IF (x_khrv_rec.ATTRIBUTE3 = OKC_API.G_MISS_CHAR) THEN
4622 x_khrv_rec.ATTRIBUTE3 := l_khrv_rec.ATTRIBUTE3;
4623 END IF;
4624
4625 IF (x_khrv_rec.ATTRIBUTE4 = OKC_API.G_MISS_CHAR) THEN
4626 x_khrv_rec.ATTRIBUTE4 := l_khrv_rec.ATTRIBUTE4;
4627 END IF;
4628
4629 IF (x_khrv_rec.ATTRIBUTE5 = OKC_API.G_MISS_CHAR) THEN
4630 x_khrv_rec.ATTRIBUTE5 := l_khrv_rec.ATTRIBUTE5;
4631 END IF;
4632
4633 IF (x_khrv_rec.ATTRIBUTE6 = OKC_API.G_MISS_CHAR) THEN
4634 x_khrv_rec.ATTRIBUTE6 := l_khrv_rec.ATTRIBUTE6;
4635 END IF;
4636
4637 IF (x_khrv_rec.ATTRIBUTE7 = OKC_API.G_MISS_CHAR) THEN
4638 x_khrv_rec.ATTRIBUTE7 := l_khrv_rec.ATTRIBUTE7;
4639 END IF;
4640
4641 IF (x_khrv_rec.ATTRIBUTE8 = OKC_API.G_MISS_CHAR) THEN
4642 x_khrv_rec.ATTRIBUTE8 := l_khrv_rec.ATTRIBUTE8;
4643 END IF;
4644
4645 IF (x_khrv_rec.ATTRIBUTE9 = OKC_API.G_MISS_CHAR) THEN
4646 x_khrv_rec.ATTRIBUTE9 := l_khrv_rec.ATTRIBUTE9;
4647 END IF;
4648
4649 IF (x_khrv_rec.ATTRIBUTE10 = OKC_API.G_MISS_CHAR) THEN
4650 x_khrv_rec.ATTRIBUTE10 := l_khrv_rec.ATTRIBUTE10;
4651 END IF;
4652
4653 IF (x_khrv_rec.ATTRIBUTE11 = OKC_API.G_MISS_CHAR) THEN
4654 x_khrv_rec.ATTRIBUTE11 := l_khrv_rec.ATTRIBUTE11;
4655 END IF;
4656
4657 IF (x_khrv_rec.ATTRIBUTE12 = OKC_API.G_MISS_CHAR) THEN
4658 x_khrv_rec.ATTRIBUTE12 := l_khrv_rec.ATTRIBUTE12;
4659 END IF;
4660
4661 IF (x_khrv_rec.ATTRIBUTE13 = OKC_API.G_MISS_CHAR) THEN
4662 x_khrv_rec.ATTRIBUTE13 := l_khrv_rec.ATTRIBUTE13;
4663 END IF;
4664
4665 IF (x_khrv_rec.ATTRIBUTE14 = OKC_API.G_MISS_CHAR) THEN
4666 x_khrv_rec.ATTRIBUTE14 := l_khrv_rec.ATTRIBUTE14;
4667 END IF;
4668
4669 IF (x_khrv_rec.ATTRIBUTE15 = OKC_API.G_MISS_CHAR) THEN
4670 x_khrv_rec.ATTRIBUTE15 := l_khrv_rec.ATTRIBUTE15;
4671 END IF;
4672
4673 IF (x_khrv_rec.CREATED_BY = OKC_API.G_MISS_NUM) THEN
4674 x_khrv_rec.CREATED_BY := l_khrv_rec.CREATED_BY;
4675 END IF;
4676
4677 IF (x_khrv_rec.CREATION_DATE = OKC_API.G_MISS_DATE) THEN
4678 x_khrv_rec.CREATION_DATE := l_khrv_rec.CREATION_DATE;
4679 END IF;
4680
4681 IF (x_khrv_rec.LAST_UPDATED_BY = OKC_API.G_MISS_NUM) THEN
4682 x_khrv_rec.LAST_UPDATED_BY := l_khrv_rec.LAST_UPDATED_BY;
4683 END IF;
4684
4685 IF (x_khrv_rec.LAST_UPDATE_DATE = OKC_API.G_MISS_DATE) THEN
4686 x_khrv_rec.LAST_UPDATE_DATE := l_khrv_rec.LAST_UPDATE_DATE;
4687 END IF;
4688
4689 IF (x_khrv_rec.LAST_UPDATE_LOGIN = OKC_API.G_MISS_NUM) THEN
4690 x_khrv_rec.LAST_UPDATE_LOGIN := l_khrv_rec.LAST_UPDATE_LOGIN;
4691 END IF;
4692
4693 IF (x_khrv_rec.PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4694 x_khrv_rec.PRE_TAX_YIELD := l_khrv_rec.PRE_TAX_YIELD;
4695 END IF;
4696
4697 IF (x_khrv_rec.AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4698 x_khrv_rec.AFTER_TAX_YIELD := l_khrv_rec.AFTER_TAX_YIELD;
4699 END IF;
4700
4701 IF (x_khrv_rec.IMPLICIT_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4702 x_khrv_rec.IMPLICIT_INTEREST_RATE := l_khrv_rec.IMPLICIT_INTEREST_RATE;
4703 END IF;
4704
4705 IF (x_khrv_rec.IMPLICIT_NON_IDC_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4706 x_khrv_rec.IMPLICIT_NON_IDC_INTEREST_RATE := l_khrv_rec.IMPLICIT_NON_IDC_INTEREST_RATE;
4707 END IF;
4708
4709 IF (x_khrv_rec.TARGET_PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4710 x_khrv_rec.TARGET_PRE_TAX_YIELD := l_khrv_rec.TARGET_PRE_TAX_YIELD;
4711 END IF;
4712
4713 IF (x_khrv_rec.TARGET_AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4714 x_khrv_rec.TARGET_AFTER_TAX_YIELD := l_khrv_rec.TARGET_AFTER_TAX_YIELD;
4715 END IF;
4716
4717 IF (x_khrv_rec.TARGET_IMPLICIT_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4718 x_khrv_rec.TARGET_IMPLICIT_INTEREST_RATE := l_khrv_rec.TARGET_IMPLICIT_INTEREST_RATE;
4719 END IF;
4720
4721 IF (x_khrv_rec.TARGET_IMPLICIT_NONIDC_INTRATE = OKC_API.G_MISS_NUM) THEN
4722 x_khrv_rec.TARGET_IMPLICIT_NONIDC_INTRATE := l_khrv_rec.TARGET_IMPLICIT_NONIDC_INTRATE;
4723 END IF;
4724
4725 IF (x_khrv_rec.DATE_LAST_INTERIM_INTEREST_CAL = OKC_API.G_MISS_DATE) THEN
4726 x_khrv_rec.DATE_LAST_INTERIM_INTEREST_CAL := l_khrv_rec.DATE_LAST_INTERIM_INTEREST_CAL;
4727 END IF;
4728
4729 IF (x_khrv_rec.DEAL_TYPE = OKC_API.G_MISS_CHAR) THEN
4730 x_khrv_rec.DEAL_TYPE := l_khrv_rec.DEAL_TYPE;
4731 END IF;
4732
4733 IF (x_khrv_rec.PRE_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4734 x_khrv_rec.PRE_TAX_IRR := l_khrv_rec.PRE_TAX_IRR;
4735 END IF;
4736
4737 IF (x_khrv_rec.AFTER_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4738 x_khrv_rec.AFTER_TAX_IRR := l_khrv_rec.AFTER_TAX_IRR;
4739 END IF;
4740
4741 IF (x_khrv_rec.EXPECTED_DELIVERY_DATE = OKC_API.G_MISS_DATE) THEN
4742 x_khrv_rec.EXPECTED_DELIVERY_DATE := l_khrv_rec.EXPECTED_DELIVERY_DATE;
4743 END IF;
4744
4745 IF (x_khrv_rec.ACCEPTED_DATE = OKC_API.G_MISS_DATE) THEN
4746 x_khrv_rec.ACCEPTED_DATE := l_khrv_rec.ACCEPTED_DATE;
4747 END IF;
4748
4749 IF (x_khrv_rec.PREFUNDING_ELIGIBLE_YN = OKC_API.G_MISS_CHAR) THEN
4750 x_khrv_rec.PREFUNDING_ELIGIBLE_YN := l_khrv_rec.PREFUNDING_ELIGIBLE_YN;
4751 END IF;
4752
4753 IF (x_khrv_rec.REVOLVING_CREDIT_YN = OKC_API.G_MISS_CHAR) THEN
4754 x_khrv_rec.REVOLVING_CREDIT_YN := l_khrv_rec.REVOLVING_CREDIT_YN;
4755 END IF;
4756
4757 --Bug# 2697681 schema changes 11.5.9
4758 IF (x_khrv_rec.CURRENCY_CONVERSION_TYPE = OKC_API.G_MISS_CHAR) THEN
4759 x_khrv_rec.CURRENCY_CONVERSION_TYPE := l_khrv_rec.CURRENCY_CONVERSION_TYPE;
4760 END IF;
4761
4762 IF (x_khrv_rec.CURRENCY_CONVERSION_RATE = OKC_API.G_MISS_NUM) THEN
4763 x_khrv_rec.CURRENCY_CONVERSION_RATE := l_khrv_rec.CURRENCY_CONVERSION_RATE;
4764 END IF;
4765
4766 IF (x_khrv_rec.CURRENCY_CONVERSION_DATE = OKC_API.G_MISS_DATE) THEN
4767 x_khrv_rec.CURRENCY_CONVERSION_DATE := l_khrv_rec.CURRENCY_CONVERSION_DATE;
4768 END IF;
4769
4770 IF (x_khrv_rec.MULTI_GAAP_YN = OKC_API.G_MISS_CHAR) THEN
4771 x_khrv_rec.MULTI_GAAP_YN := l_khrv_rec.MULTI_GAAP_YN;
4772 END IF;
4773
4774 IF (x_khrv_rec.RECOURSE_CODE = OKC_API.G_MISS_CHAR) THEN
4775 x_khrv_rec.RECOURSE_CODE := l_khrv_rec.RECOURSE_CODE;
4776 END IF;
4777
4778 IF (x_khrv_rec.LESSOR_SERV_ORG_CODE = OKC_API.G_MISS_CHAR) THEN
4779 x_khrv_rec.LESSOR_SERV_ORG_CODE := l_khrv_rec.LESSOR_SERV_ORG_CODE;
4780 END IF;
4781
4782 IF (x_khrv_rec.ASSIGNABLE_YN = OKC_API.G_MISS_CHAR) THEN
4783 x_khrv_rec.ASSIGNABLE_YN := l_khrv_rec.ASSIGNABLE_YN;
4784 END IF;
4785
4786 IF (x_khrv_rec.SECURITIZED_CODE = OKC_API.G_MISS_CHAR) THEN
4787 x_khrv_rec.SECURITIZED_CODE := l_khrv_rec.SECURITIZED_CODE;
4788 END IF;
4789
4790 IF (x_khrv_rec.SECURITIZATION_TYPE = OKC_API.G_MISS_CHAR) THEN
4791 x_khrv_rec.SECURITIZATION_TYPE := l_khrv_rec.SECURITIZATION_TYPE;
4792 END IF;
4793
4794 --Bug# 3143522 : 11.5.10
4795 --subsidy
4796 IF (x_khrv_rec.SUB_PRE_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4797 x_khrv_rec.SUB_PRE_TAX_YIELD := l_khrv_rec.SUB_PRE_TAX_YIELD;
4798 END IF;
4799 IF (x_khrv_rec.SUB_AFTER_TAX_YIELD = OKC_API.G_MISS_NUM) THEN
4800 x_khrv_rec.SUB_AFTER_TAX_YIELD := l_khrv_rec.SUB_AFTER_TAX_YIELD;
4801 END IF;
4802 IF (x_khrv_rec.SUB_IMPL_INTEREST_RATE = OKC_API.G_MISS_NUM) THEN
4803 x_khrv_rec.SUB_IMPL_INTEREST_RATE := l_khrv_rec.SUB_IMPL_INTEREST_RATE;
4804 END IF;
4805 IF (x_khrv_rec.SUB_IMPL_NON_IDC_INT_RATE = OKC_API.G_MISS_NUM) THEN
4806 x_khrv_rec.SUB_IMPL_NON_IDC_INT_RATE := l_khrv_rec.SUB_IMPL_NON_IDC_INT_RATE;
4807 END IF;
4808 IF (x_khrv_rec.SUB_PRE_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4809 x_khrv_rec.SUB_PRE_TAX_IRR := l_khrv_rec.SUB_PRE_TAX_IRR;
4810 END IF;
4811 IF (x_khrv_rec.SUB_AFTER_TAX_IRR = OKC_API.G_MISS_NUM) THEN
4812 x_khrv_rec.SUB_AFTER_TAX_IRR := l_khrv_rec.SUB_AFTER_TAX_IRR;
4813 END IF;
4814 --Bug# 3973640 : 11.5.10+ schema changes
4815 IF (x_khrv_rec.TOT_CL_TRANSFER_AMT = OKC_API.G_MISS_NUM) THEN
4816 x_khrv_rec.TOT_CL_TRANSFER_AMT := l_khrv_rec.TOT_CL_TRANSFER_AMT;
4817 END IF;
4818 IF (x_khrv_rec.TOT_CL_NET_TRANSFER_AMT = OKC_API.G_MISS_NUM) THEN
4819 x_khrv_rec.TOT_CL_NET_TRANSFER_AMT := l_khrv_rec.TOT_CL_NET_TRANSFER_AMT;
4820 END IF;
4821 IF (x_khrv_rec.TOT_CL_LIMIT = OKC_API.G_MISS_NUM) THEN
4822 x_khrv_rec.TOT_CL_LIMIT := l_khrv_rec.TOT_CL_LIMIT;
4823 END IF;
4824 IF (x_khrv_rec.TOT_CL_FUNDING_AMT = OKC_API.G_MISS_NUM) THEN
4825 x_khrv_rec.TOT_CL_FUNDING_AMT := l_khrv_rec.TOT_CL_FUNDING_AMT;
4826 END IF;
4827 IF (x_khrv_rec.CRS_ID = OKC_API.G_MISS_NUM) THEN
4828 x_khrv_rec.CRS_ID := l_khrv_rec.CRS_ID;
4829 END IF;
4830 IF (x_khrv_rec.TEMPLATE_TYPE_CODE = OKC_API.G_MISS_CHAR) THEN
4831 x_khrv_rec.TEMPLATE_TYPE_CODE := l_khrv_rec.TEMPLATE_TYPE_CODE;
4832 END IF;
4833 --Bug# 4419339 OKLH Schema Sales Quote
4834 IF (x_khrv_rec.DATE_FUNDING_EXPECTED = OKC_API.G_MISS_DATE) THEN
4835 x_khrv_rec.DATE_FUNDING_EXPECTED := l_khrv_rec.DATE_FUNDING_EXPECTED;
4836 END IF;
4837 IF (x_khrv_rec.DATE_TRADEIN = OKC_API.G_MISS_DATE) THEN
4838 x_khrv_rec.DATE_TRADEIN := l_khrv_rec.DATE_TRADEIN;
4839 END IF;
4840 IF (x_khrv_rec.TRADEIN_AMOUNT = OKC_API.G_MISS_NUM) THEN
4841 x_khrv_rec.TRADEIN_AMOUNT := l_khrv_rec.TRADEIN_AMOUNT;
4842 END IF;
4843 IF (x_khrv_rec.TRADEIN_DESCRIPTION = OKC_API.G_MISS_CHAR) THEN
4844 x_khrv_rec.TRADEIN_DESCRIPTION := l_khrv_rec.TRADEIN_DESCRIPTION;
4845 END IF;
4846 --Added by dpsingh for LE uptake
4847 IF (x_khrv_rec.LEGAL_ENTITY_ID = OKL_API.G_MISS_NUM) THEN
4848 x_khrv_rec.LEGAL_ENTITY_ID := l_khrv_rec.LEGAL_ENTITY_ID;
4849 END IF;
4850
4851 RETURN(l_return_status);
4852 END populate_new_record;
4853 ----------------------------------------
4854 -- Set_Attributes for: OKL_K_HEADERS_V --
4855 ----------------------------------------
4856 FUNCTION Set_Attributes (
4857 p_khrv_rec IN khrv_rec_type,
4858 x_khrv_rec OUT NOCOPY khrv_rec_type
4859 ) RETURN VARCHAR2 IS
4860 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4861 BEGIN
4862 x_khrv_rec := p_khrv_rec;
4863 x_khrv_rec.OBJECT_VERSION_NUMBER := NVL(x_khrv_rec.OBJECT_VERSION_NUMBER, 0) + 1;
4864 RETURN(l_return_status);
4865 END Set_Attributes;
4866 BEGIN
4867 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
4868 G_PKG_NAME,
4869 p_init_msg_list,
4870 l_api_version,
4871 p_api_version,
4872 '_PVT',
4873 x_return_status);
4874
4875 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4876 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4877 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4878 RAISE OKC_API.G_EXCEPTION_ERROR;
4879 END IF;
4880
4881 --- Setting item attributes
4882 l_return_status := Set_Attributes(
4883 p_khrv_rec, -- IN
4884 l_khrv_rec); -- OUT
4885 --- If any errors happen abort API
4886
4887 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4888 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4889 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4890 RAISE OKC_API.G_EXCEPTION_ERROR;
4891 END IF;
4892
4893 l_return_status := populate_new_record(l_khrv_rec, l_def_khrv_rec);
4894
4895 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4896 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4897 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4898 RAISE OKC_API.G_EXCEPTION_ERROR;
4899 END IF;
4900
4901 l_def_khrv_rec := fill_who_columns(l_def_khrv_rec);
4902 --- Validate all non-missing attributes (Item Level Validation)
4903 l_return_status := Validate_Attributes(l_def_khrv_rec);
4904 --- If any errors happen abort API
4905
4906 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4907 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4908 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4909 RAISE OKC_API.G_EXCEPTION_ERROR;
4910 END IF;
4911
4912 l_return_status := Validate_Record(l_def_khrv_rec);
4913
4914 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4915 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4916 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
4917 RAISE OKC_API.G_EXCEPTION_ERROR;
4918 END IF;
4919
4920
4921 --------------------------------------
4922 -- Move VIEW record to "Child" records
4923 --------------------------------------
4924 migrate(l_def_khrv_rec, l_khr_rec);
4925 --------------------------------------------
4926 -- Call the UPDATE_ROW for each child record
4927 --------------------------------------------
4928 update_row(
4929 l_api_version,
4930 p_init_msg_list,
4931 x_return_status,
4932 x_msg_count,
4933 x_msg_data,
4934 l_khr_rec,
4935 lx_khr_rec
4936 );
4937
4938 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4939 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4940 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
4941 RAISE OKC_API.G_EXCEPTION_ERROR;
4942 END IF;
4943
4944 migrate(lx_khr_rec, l_def_khrv_rec);
4945 x_khrv_rec := l_def_khrv_rec;
4946 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
4947
4948 EXCEPTION
4949 WHEN OKC_API.G_EXCEPTION_ERROR THEN
4950 x_return_status := OKC_API.HANDLE_EXCEPTIONS
4951 (
4952 l_api_name,
4953 G_PKG_NAME,
4954 'OKC_API.G_RET_STS_ERROR',
4955 x_msg_count,
4956 x_msg_data,
4957 '_PVT'
4958 );
4959 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4960 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4961 (
4962 l_api_name,
4963 G_PKG_NAME,
4964 'OKC_API.G_RET_STS_UNEXP_ERROR',
4965 x_msg_count,
4966 x_msg_data,
4967 '_PVT'
4968 );
4969 WHEN OTHERS THEN
4970 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4971 (
4972 l_api_name,
4973 G_PKG_NAME,
4974 'OTHERS',
4975 x_msg_count,
4976 x_msg_data,
4977 '_PVT'
4978 );
4979
4980 END update_row;
4981 ----------------------------------------
4982 -- PL/SQL TBL update_row for: OKL_K_HEADERS_V --
4983 ----------------------------------------
4984
4985 PROCEDURE update_row(
4986
4987 p_api_version IN NUMBER,
4988 p_init_msg_list IN VARCHAR2,
4989 x_return_status OUT NOCOPY VARCHAR2,
4990 x_msg_count OUT NOCOPY NUMBER,
4991 x_msg_data OUT NOCOPY VARCHAR2,
4992 p_khrv_tbl IN khrv_tbl_type,
4993 x_khrv_tbl OUT NOCOPY khrv_tbl_type) IS
4994
4995 l_api_version CONSTANT NUMBER := 1;
4996 l_api_name CONSTANT VARCHAR2(30) := 'tbl_update_row';
4997 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4998 i NUMBER := 0;
4999 BEGIN
5000 OKC_API.init_msg_list(p_init_msg_list);
5001 -- Make sure PL/SQL table has records in it before passing
5002 IF (p_khrv_tbl.COUNT > 0) THEN
5003 i := p_khrv_tbl.FIRST;
5004 LOOP
5005 update_row (
5006 p_api_version => p_api_version,
5007 p_init_msg_list => OKC_API.G_FALSE,
5008 x_return_status => x_return_status,
5009 x_msg_count => x_msg_count,
5010 x_msg_data => x_msg_data,
5011 p_khrv_rec => p_khrv_tbl(i),
5012 x_khrv_rec => x_khrv_tbl(i));
5013 EXIT WHEN (i = p_khrv_tbl.LAST);
5014 i := p_khrv_tbl.NEXT(i);
5015 END LOOP;
5016 END IF;
5017
5018 EXCEPTION
5019 WHEN OKC_API.G_EXCEPTION_ERROR THEN
5020 x_return_status := OKC_API.HANDLE_EXCEPTIONS
5021 (
5022 l_api_name,
5023 G_PKG_NAME,
5024 'OKC_API.G_RET_STS_ERROR',
5025 x_msg_count,
5026 x_msg_data,
5027 '_PVT'
5028 );
5029 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
5030 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5031 (
5032 l_api_name,
5033 G_PKG_NAME,
5034 'OKC_API.G_RET_STS_UNEXP_ERROR',
5035 x_msg_count,
5036 x_msg_data,
5037 '_PVT'
5038 );
5039 WHEN OTHERS THEN
5040 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5041 (
5042 l_api_name,
5043 G_PKG_NAME,
5044 'OTHERS',
5045 x_msg_count,
5046 x_msg_data,
5047 '_PVT'
5048 );
5049
5050 END update_row;
5051
5052
5053
5054 ---------------------------------------------------------------------------
5055 -- PROCEDURE delete_row
5056 ---------------------------------------------------------------------------
5057
5058 ----------------------------------
5059 -- delete_row for: OKL_K_HEADERS --
5060 ----------------------------------
5061
5062 PROCEDURE delete_row(
5063
5064 p_api_version IN NUMBER,
5065 p_init_msg_list IN VARCHAR2,
5066 x_return_status OUT NOCOPY VARCHAR2,
5067 x_msg_count OUT NOCOPY NUMBER,
5068 x_msg_data OUT NOCOPY VARCHAR2,
5069 p_khr_rec IN khr_rec_type) IS
5070
5071 l_api_version CONSTANT NUMBER := 1;
5072 l_api_name CONSTANT VARCHAR2(30) := 'rec_delete_row';
5073 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5074 l_khr_rec khr_rec_type:= p_khr_rec;
5075 l_row_notfound BOOLEAN := TRUE;
5076 l_okl_k_headers_h_rec okl_k_headers_h_rec_type;
5077 lx_okl_k_headers_h_rec okl_k_headers_h_rec_type;
5078 BEGIN
5079 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
5080 p_init_msg_list,
5081 '_PVT',
5082 x_return_status);
5083
5084 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5085 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5086 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5087 RAISE OKC_API.G_EXCEPTION_ERROR;
5088 END IF;
5089 --Bug # 2522268
5090 /*-------removed as we do not do implicit versioning on delete------------------
5091 -- Insert into History table
5092 l_khr_rec := get_rec(l_khr_rec, l_row_notfound);
5093 IF (l_row_notfound) THEN
5094 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5095 END IF;
5096 migrate(l_khr_rec, l_okl_k_headers_h_rec);
5097 insert_row(
5098 l_api_version,
5099 p_init_msg_list,
5100 x_return_status,
5101 x_msg_count,
5102 x_msg_data,
5103 l_okl_k_headers_h_rec,
5104 lx_okl_k_headers_h_rec
5105 );
5106
5107 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5108 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5109 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
5110 RAISE OKC_API.G_EXCEPTION_ERROR;
5111 END IF;
5112 -------removed as we do not do implicit versioning on delete-----------------*/
5113 --Bug # 2522268
5114 DELETE FROM OKL_K_HEADERS
5115 WHERE ID = l_khr_rec.id;
5116
5117 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
5118
5119 EXCEPTION
5120 WHEN OKC_API.G_EXCEPTION_ERROR THEN
5121 x_return_status := OKC_API.HANDLE_EXCEPTIONS
5122 (
5123 l_api_name,
5124 G_PKG_NAME,
5125 'OKC_API.G_RET_STS_ERROR',
5126 x_msg_count,
5127 x_msg_data,
5128 '_PVT'
5129 );
5130 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
5131 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5132 (
5133 l_api_name,
5134 G_PKG_NAME,
5135 'OKC_API.G_RET_STS_UNEXP_ERROR',
5136 x_msg_count,
5137 x_msg_data,
5138 '_PVT'
5139 );
5140 WHEN OTHERS THEN
5141 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5142 (
5143 l_api_name,
5144 G_PKG_NAME,
5145 'OTHERS',
5146 x_msg_count,
5147 x_msg_data,
5148 '_PVT'
5149 );
5150
5151 END delete_row;
5152
5153 PROCEDURE delete_row(
5154
5155 p_api_version IN NUMBER,
5156 p_init_msg_list IN VARCHAR2,
5157 x_return_status OUT NOCOPY VARCHAR2,
5158 x_msg_count OUT NOCOPY NUMBER,
5159 x_msg_data OUT NOCOPY VARCHAR2,
5160 p_khrv_rec IN khrv_rec_type) IS
5161
5162 l_api_version CONSTANT NUMBER := 1;
5163 l_api_name CONSTANT VARCHAR2(30) := 'rec_delete_row';
5164 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5165 l_khrv_rec khrv_rec_type := p_khrv_rec;
5166 l_khr_rec khr_rec_type;
5167 BEGIN
5168 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
5169 G_PKG_NAME,
5170 p_init_msg_list,
5171 l_api_version,
5172 p_api_version,
5173 '_PVT',
5174 x_return_status);
5175
5176 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5177 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5178 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
5179 RAISE OKC_API.G_EXCEPTION_ERROR;
5180 END IF;
5181
5182 --------------------------------------
5183 -- Move VIEW record to "Child" records
5184 --------------------------------------
5185 migrate(l_khrv_rec, l_khr_rec);
5186 --------------------------------------------
5187 -- Call the DELETE_ROW for each child record
5188 --------------------------------------------
5189 delete_row(
5190 l_api_version,
5191 p_init_msg_list,
5192 x_return_status,
5193 x_msg_count,
5194 x_msg_data,
5195 l_khr_rec
5196 );
5197
5198 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
5199 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
5200 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
5201 RAISE OKC_API.G_EXCEPTION_ERROR;
5202 END IF;
5203
5204 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
5205
5206 EXCEPTION
5207 WHEN OKC_API.G_EXCEPTION_ERROR THEN
5208 x_return_status := OKC_API.HANDLE_EXCEPTIONS
5209 (
5210 l_api_name,
5211 G_PKG_NAME,
5212 'OKC_API.G_RET_STS_ERROR',
5213 x_msg_count,
5214 x_msg_data,
5215 '_PVT'
5216 );
5217 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
5218 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5219 (
5220 l_api_name,
5221 G_PKG_NAME,
5222 'OKC_API.G_RET_STS_UNEXP_ERROR',
5223 x_msg_count,
5224 x_msg_data,
5225 '_PVT'
5226 );
5227 WHEN OTHERS THEN
5228 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5229 (
5230 l_api_name,
5231 G_PKG_NAME,
5232 'OTHERS',
5233 x_msg_count,
5234 x_msg_data,
5235 '_PVT'
5236 );
5237
5238 END delete_row;
5239 ----------------------------------------
5240 -- PL/SQL TBL delete_row for: OKL_K_HEADERS_V --
5241 ----------------------------------------
5242
5243 PROCEDURE delete_row(
5244
5245 p_api_version IN NUMBER,
5246 p_init_msg_list IN VARCHAR2,
5247 x_return_status OUT NOCOPY VARCHAR2,
5248 x_msg_count OUT NOCOPY NUMBER,
5249 x_msg_data OUT NOCOPY VARCHAR2,
5250 p_khrv_tbl IN khrv_tbl_type) IS
5251
5252 l_api_version CONSTANT NUMBER := 1;
5253 l_api_name CONSTANT VARCHAR2(30) := 'tbl_delete_row';
5254 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5255 i NUMBER := 0;
5256 BEGIN
5257 OKC_API.init_msg_list(p_init_msg_list);
5258 -- Make sure PL/SQL table has records in it before passing
5259 IF (p_khrv_tbl.COUNT > 0) THEN
5260 i := p_khrv_tbl.FIRST;
5261 LOOP
5262 delete_row (
5263 p_api_version => p_api_version,
5264 p_init_msg_list => OKC_API.G_FALSE,
5265 x_return_status => x_return_status,
5266 x_msg_count => x_msg_count,
5267 x_msg_data => x_msg_data,
5268 p_khrv_rec => p_khrv_tbl(i));
5269 EXIT WHEN (i = p_khrv_tbl.LAST);
5270 i := p_khrv_tbl.NEXT(i);
5271 END LOOP;
5272 END IF;
5273
5274 EXCEPTION
5275 WHEN OKC_API.G_EXCEPTION_ERROR THEN
5276 x_return_status := OKC_API.HANDLE_EXCEPTIONS
5277 (
5278 l_api_name,
5279 G_PKG_NAME,
5280 'OKC_API.G_RET_STS_ERROR',
5281 x_msg_count,
5282 x_msg_data,
5283 '_PVT'
5284 );
5285 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
5286 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5287 (
5288 l_api_name,
5289 G_PKG_NAME,
5290 'OKC_API.G_RET_STS_UNEXP_ERROR',
5291 x_msg_count,
5292 x_msg_data,
5293 '_PVT'
5294 );
5295 WHEN OTHERS THEN
5296 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
5297 (
5298 l_api_name,
5299 G_PKG_NAME,
5300 'OTHERS',
5301 x_msg_count,
5302 x_msg_data,
5303 '_PVT'
5304 );
5305
5306 END delete_row;
5307
5308
5309 ---------------------------------------------------------------------------
5310 -- PROCEDURE versioning
5311 ---------------------------------------------------------------------------
5312
5313 FUNCTION create_version(
5314 p_khr_id IN NUMBER,
5315 p_major_version IN NUMBER) RETURN VARCHAR2 IS
5316
5317 l_return_status VARCHAR2(1):= OKC_API.G_RET_STS_SUCCESS;
5318
5319 BEGIN
5320 INSERT INTO OKL_K_HEADERS_H
5321 (
5322 major_version,
5323 ID,
5324 ISG_ID,
5325 KHR_ID,
5326 PDT_ID,
5327 OBJECT_VERSION_NUMBER,
5328 DATE_FIRST_ACTIVITY,
5329 SYNDICATABLE_YN,
5330 SALESTYPE_YN,
5331 DATE_REFINANCED,
5332 DATE_CONVERSION_EFFECTIVE,
5333 DATE_DEAL_TRANSFERRED,
5334 TERM_DURATION,
5335 DATETIME_PROPOSAL_EFFECTIVE,
5336 DATETIME_PROPOSAL_INEFFECTIVE,
5337 DATE_PROPOSAL_ACCEPTED,
5338 ATTRIBUTE_CATEGORY,
5339 ATTRIBUTE1,
5340 ATTRIBUTE2,
5341 ATTRIBUTE3,
5342 ATTRIBUTE4,
5343 ATTRIBUTE5,
5344 ATTRIBUTE6,
5345 ATTRIBUTE7,
5346 ATTRIBUTE8,
5347 ATTRIBUTE9,
5348 ATTRIBUTE10,
5349 ATTRIBUTE11,
5350 ATTRIBUTE12,
5351 ATTRIBUTE13,
5352 ATTRIBUTE14,
5353 ATTRIBUTE15,
5354 CREATED_BY,
5355 CREATION_DATE,
5356 LAST_UPDATED_BY,
5357 LAST_UPDATE_DATE,
5358 LAST_UPDATE_LOGIN,
5359 AMD_CODE,
5360 GENERATE_ACCRUAL_YN,
5361 GENERATE_ACCRUAL_OVERRIDE_YN,
5362 CREDIT_ACT_YN,
5363 CONVERTED_ACCOUNT_YN,
5364 PRE_TAX_YIELD,
5365 AFTER_TAX_YIELD,
5366 IMPLICIT_INTEREST_RATE,
5367 IMPLICIT_NON_IDC_INTEREST_RATE,
5368 TARGET_PRE_TAX_YIELD,
5369 TARGET_AFTER_TAX_YIELD,
5370 TARGET_IMPLICIT_INTEREST_RATE,
5371 TARGET_IMPLICIT_NONIDC_INTRATE,
5372 DATE_LAST_INTERIM_INTEREST_CAL,
5373 DEAL_TYPE,
5374 PRE_TAX_IRR,
5375 AFTER_TAX_IRR,
5376 EXPECTED_DELIVERY_DATE,
5377 ACCEPTED_DATE,
5378 PREFUNDING_ELIGIBLE_YN,
5379 REVOLVING_CREDIT_YN,
5380 --Bug# 2697681 schema changes 11.5.9
5381 CURRENCY_CONVERSION_TYPE,
5382 CURRENCY_CONVERSION_RATE,
5383 CURRENCY_CONVERSION_DATE,
5384 MULTI_GAAP_YN,
5385 RECOURSE_CODE,
5386 LESSOR_SERV_ORG_CODE,
5387 ASSIGNABLE_YN,
5388 SECURITIZED_CODE,
5389 SECURITIZATION_TYPE,
5390 --Bug# 3143522 :11.5.10
5391 --subsidy
5392 SUB_PRE_TAX_YIELD,
5393 SUB_AFTER_TAX_YIELD,
5394 SUB_IMPL_INTEREST_RATE,
5395 SUB_IMPL_NON_IDC_INT_RATE,
5396 SUB_PRE_TAX_IRR,
5397 SUB_AFTER_TAX_IRR,
5398 --Bug# 3973640 : 11.5.10+ schema
5399 TOT_CL_TRANSFER_AMT,
5400 TOT_CL_NET_TRANSFER_AMT,
5401 TOT_CL_LIMIT,
5402 TOT_CL_FUNDING_AMT ,
5403 CRS_ID,
5404 TEMPLATE_TYPE_CODE ,
5405 --Bug# 4419339 OKLH Schema Sales Quote
5406 DATE_FUNDING_EXPECTED,
5407 DATE_TRADEIN,
5408 TRADEIN_AMOUNT,
5409 TRADEIN_DESCRIPTION,
5410 --Added by dpsingh for LE uptake
5411 LEGAL_ENTITY_ID
5412 )
5413 SELECT
5414 p_major_version,
5415 ID,
5416 ISG_ID,
5417 KHR_ID,
5418 PDT_ID,
5419 OBJECT_VERSION_NUMBER,
5420 DATE_FIRST_ACTIVITY,
5421 SYNDICATABLE_YN,
5422 SALESTYPE_YN,
5423 DATE_REFINANCED,
5424 DATE_CONVERSION_EFFECTIVE,
5425 DATE_DEAL_TRANSFERRED,
5426 TERM_DURATION,
5427 DATETIME_PROPOSAL_EFFECTIVE,
5428 DATETIME_PROPOSAL_INEFFECTIVE,
5429 DATE_PROPOSAL_ACCEPTED,
5430 ATTRIBUTE_CATEGORY,
5431 ATTRIBUTE1,
5432 ATTRIBUTE2,
5433 ATTRIBUTE3,
5434 ATTRIBUTE4,
5435 ATTRIBUTE5,
5436 ATTRIBUTE6,
5437 ATTRIBUTE7,
5438 ATTRIBUTE8,
5439 ATTRIBUTE9,
5440 ATTRIBUTE10,
5441 ATTRIBUTE11,
5442 ATTRIBUTE12,
5443 ATTRIBUTE13,
5444 ATTRIBUTE14,
5445 ATTRIBUTE15,
5446 CREATED_BY,
5447 CREATION_DATE,
5448 LAST_UPDATED_BY,
5449 LAST_UPDATE_DATE,
5450 LAST_UPDATE_LOGIN,
5451 AMD_CODE,
5452 GENERATE_ACCRUAL_YN,
5453 GENERATE_ACCRUAL_OVERRIDE_YN,
5454 CREDIT_ACT_YN,
5455 CONVERTED_ACCOUNT_YN,
5456 PRE_TAX_YIELD,
5457 AFTER_TAX_YIELD,
5458 IMPLICIT_INTEREST_RATE,
5459 IMPLICIT_NON_IDC_INTEREST_RATE,
5460 TARGET_PRE_TAX_YIELD,
5461 TARGET_AFTER_TAX_YIELD,
5462 TARGET_IMPLICIT_INTEREST_RATE,
5463 TARGET_IMPLICIT_NONIDC_INTRATE,
5464 DATE_LAST_INTERIM_INTEREST_CAL,
5465 DEAL_TYPE,
5466 PRE_TAX_IRR,
5467 AFTER_TAX_IRR,
5468 EXPECTED_DELIVERY_DATE,
5469 ACCEPTED_DATE,
5470 PREFUNDING_ELIGIBLE_YN,
5471 REVOLVING_CREDIT_YN,
5472 --Bug# 2697681 schema changes 11.5.9
5473 CURRENCY_CONVERSION_TYPE,
5474 CURRENCY_CONVERSION_RATE,
5475 CURRENCY_CONVERSION_DATE,
5476 MULTI_GAAP_YN,
5477 RECOURSE_CODE,
5478 LESSOR_SERV_ORG_CODE,
5479 ASSIGNABLE_YN,
5480 SECURITIZED_CODE,
5481 SECURITIZATION_TYPE,
5482 --Bug#3143522 : 11.5.10
5483 --subsidy
5484 SUB_PRE_TAX_YIELD,
5485 SUB_AFTER_TAX_YIELD,
5486 SUB_IMPL_INTEREST_RATE,
5487 SUB_IMPL_NON_IDC_INT_RATE,
5488 SUB_PRE_TAX_IRR,
5489 SUB_AFTER_TAX_IRR,
5490 --Bug# 3973640 : 11.5.10+ schema
5491 TOT_CL_TRANSFER_AMT,
5492 TOT_CL_NET_TRANSFER_AMT,
5493 TOT_CL_LIMIT,
5494 TOT_CL_FUNDING_AMT,
5495 CRS_ID,
5496 TEMPLATE_TYPE_CODE,
5497 --Bug# 4419339 OKLH Schema Sales Quote
5498 DATE_FUNDING_EXPECTED,
5499 DATE_TRADEIN,
5500 TRADEIN_AMOUNT,
5501 TRADEIN_DESCRIPTION,
5502 --Added by dpsingh for LE uptake
5503 LEGAL_ENTITY_ID
5504 FROM OKL_K_HEADERS
5505 WHERE id = p_khr_id;
5506
5507 RETURN l_return_status;
5508 EXCEPTION
5509 -- other appropriate handlers
5510 WHEN OTHERS THEN
5511 -- store SQL error message on message stack
5512 OKC_API.SET_MESSAGE(p_app_name => okc_version_pvt.G_APP_NAME,
5513 p_msg_name => okc_version_pvt.G_UNEXPECTED_ERROR,
5514 p_token1 => okc_version_pvt.G_SQLCODE_TOKEN,
5515 p_token1_value => sqlcode,
5516 p_token2 => okc_version_pvt.G_SQLERRM_TOKEN,
5517 p_token2_value => sqlerrm);
5518
5519 -- notify UNEXPECTED error
5520 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5521 return l_return_status;
5522 END create_version;
5523
5524 FUNCTION restore_version(
5525 p_khr_id IN NUMBER,
5526 p_major_version IN NUMBER) RETURN VARCHAR2 IS
5527
5528 l_return_status VARCHAR2(1):= OKC_API.G_RET_STS_SUCCESS;
5529
5530 BEGIN
5531 INSERT INTO OKL_K_HEADERS
5532 (
5533 ID,
5534 ISG_ID,
5535 KHR_ID,
5536 PDT_ID,
5537 OBJECT_VERSION_NUMBER,
5538 DATE_FIRST_ACTIVITY,
5539 SYNDICATABLE_YN,
5540 SALESTYPE_YN,
5541 DATE_REFINANCED,
5542 DATE_CONVERSION_EFFECTIVE,
5543 DATE_DEAL_TRANSFERRED,
5544 TERM_DURATION,
5545 DATETIME_PROPOSAL_EFFECTIVE,
5546 DATETIME_PROPOSAL_INEFFECTIVE,
5547 DATE_PROPOSAL_ACCEPTED,
5548 ATTRIBUTE_CATEGORY,
5549 ATTRIBUTE1,
5550 ATTRIBUTE2,
5551 ATTRIBUTE3,
5552 ATTRIBUTE4,
5553 ATTRIBUTE5,
5554 ATTRIBUTE6,
5555 ATTRIBUTE7,
5556 ATTRIBUTE8,
5557 ATTRIBUTE9,
5558 ATTRIBUTE10,
5559 ATTRIBUTE11,
5560 ATTRIBUTE12,
5561 ATTRIBUTE13,
5562 ATTRIBUTE14,
5563 ATTRIBUTE15,
5564 CREATED_BY,
5565 CREATION_DATE,
5566 LAST_UPDATED_BY,
5567 LAST_UPDATE_DATE,
5568 LAST_UPDATE_LOGIN,
5569 AMD_CODE,
5570 GENERATE_ACCRUAL_YN,
5571 GENERATE_ACCRUAL_OVERRIDE_YN,
5572 CREDIT_ACT_YN,
5573 CONVERTED_ACCOUNT_YN,
5574 PRE_TAX_YIELD,
5575 AFTER_TAX_YIELD,
5576 IMPLICIT_INTEREST_RATE,
5577 IMPLICIT_NON_IDC_INTEREST_RATE,
5578 TARGET_PRE_TAX_YIELD,
5579 TARGET_AFTER_TAX_YIELD,
5580 TARGET_IMPLICIT_INTEREST_RATE,
5581 TARGET_IMPLICIT_NONIDC_INTRATE,
5582 DATE_LAST_INTERIM_INTEREST_CAL,
5583 DEAL_TYPE,
5584 PRE_TAX_IRR,
5585 AFTER_TAX_IRR,
5586 EXPECTED_DELIVERY_DATE,
5587 ACCEPTED_DATE,
5588 PREFUNDING_ELIGIBLE_YN,
5589 REVOLVING_CREDIT_YN,
5590 --Bug# 2697681 schema changes 11.5.9
5591 CURRENCY_CONVERSION_TYPE,
5592 CURRENCY_CONVERSION_RATE,
5593 CURRENCY_CONVERSION_DATE,
5594 MULTI_GAAP_YN,
5595 RECOURSE_CODE,
5596 LESSOR_SERV_ORG_CODE,
5597 ASSIGNABLE_YN,
5598 SECURITIZED_CODE,
5599 SECURITIZATION_TYPE,
5600 --Bug# 3143522 :11.5.10
5601 --subsidy
5602 SUB_PRE_TAX_YIELD,
5603 SUB_AFTER_TAX_YIELD,
5604 SUB_IMPL_INTEREST_RATE,
5605 SUB_IMPL_NON_IDC_INT_RATE,
5606 SUB_PRE_TAX_IRR,
5607 SUB_AFTER_TAX_IRR,
5608 --Bug# 3973640 : 11.5.10+ schema
5609 TOT_CL_TRANSFER_AMT,
5610 TOT_CL_NET_TRANSFER_AMT,
5611 TOT_CL_LIMIT,
5612 TOT_CL_FUNDING_AMT,
5613 CRS_ID,
5614 TEMPLATE_TYPE_CODE,
5615 --Bug# 4419339 OKLH Schema Sales Quote
5616 DATE_FUNDING_EXPECTED,
5617 DATE_TRADEIN,
5618 TRADEIN_AMOUNT,
5619 TRADEIN_DESCRIPTION,
5620 --Added by dpsingh for LE uptake
5621 LEGAL_ENTITY_ID)
5622 SELECT
5623 ID,
5624 ISG_ID,
5625 KHR_ID,
5626 PDT_ID,
5627 OBJECT_VERSION_NUMBER,
5628 DATE_FIRST_ACTIVITY,
5629 SYNDICATABLE_YN,
5630 SALESTYPE_YN,
5631 DATE_REFINANCED,
5632 DATE_CONVERSION_EFFECTIVE,
5633 DATE_DEAL_TRANSFERRED,
5634 TERM_DURATION,
5635 DATETIME_PROPOSAL_EFFECTIVE,
5636 DATETIME_PROPOSAL_INEFFECTIVE,
5637 DATE_PROPOSAL_ACCEPTED,
5638 ATTRIBUTE_CATEGORY,
5639 ATTRIBUTE1,
5640 ATTRIBUTE2,
5641 ATTRIBUTE3,
5642 ATTRIBUTE4,
5643 ATTRIBUTE5,
5644 ATTRIBUTE6,
5645 ATTRIBUTE7,
5646 ATTRIBUTE8,
5647 ATTRIBUTE9,
5648 ATTRIBUTE10,
5649 ATTRIBUTE11,
5650 ATTRIBUTE12,
5651 ATTRIBUTE13,
5652 ATTRIBUTE14,
5653 ATTRIBUTE15,
5654 CREATED_BY,
5655 CREATION_DATE,
5656 LAST_UPDATED_BY,
5657 LAST_UPDATE_DATE,
5658 LAST_UPDATE_LOGIN,
5659 AMD_CODE,
5660 GENERATE_ACCRUAL_YN,
5661 GENERATE_ACCRUAL_OVERRIDE_YN,
5662 CREDIT_ACT_YN,
5663 CONVERTED_ACCOUNT_YN,
5664 PRE_TAX_YIELD,
5665 AFTER_TAX_YIELD,
5666 IMPLICIT_INTEREST_RATE,
5667 IMPLICIT_NON_IDC_INTEREST_RATE,
5668 TARGET_PRE_TAX_YIELD,
5669 TARGET_AFTER_TAX_YIELD,
5670 TARGET_IMPLICIT_INTEREST_RATE,
5671 TARGET_IMPLICIT_NONIDC_INTRATE,
5672 DATE_LAST_INTERIM_INTEREST_CAL,
5673 DEAL_TYPE,
5674 PRE_TAX_IRR,
5675 AFTER_TAX_IRR,
5676 EXPECTED_DELIVERY_DATE,
5677 ACCEPTED_DATE,
5678 PREFUNDING_ELIGIBLE_YN,
5679 REVOLVING_CREDIT_YN,
5680 --Bug# 2697681 schema changes 11.5.9
5681 CURRENCY_CONVERSION_TYPE,
5682 CURRENCY_CONVERSION_RATE,
5683 CURRENCY_CONVERSION_DATE,
5684 MULTI_GAAP_YN,
5685 RECOURSE_CODE,
5686 LESSOR_SERV_ORG_CODE,
5687 ASSIGNABLE_YN,
5688 SECURITIZED_CODE,
5689 SECURITIZATION_TYPE,
5690 --Bug# 3143522 : 11.5.10
5691 --subsidy
5692 SUB_PRE_TAX_YIELD,
5693 SUB_AFTER_TAX_YIELD,
5694 SUB_IMPL_INTEREST_RATE,
5695 SUB_IMPL_NON_IDC_INT_RATE,
5696 SUB_PRE_TAX_IRR,
5697 SUB_AFTER_TAX_IRR,
5698 --Bug# 3973640 : 11.5.10+ schema
5699 TOT_CL_TRANSFER_AMT,
5700 TOT_CL_NET_TRANSFER_AMT,
5701 TOT_CL_LIMIT,
5702 TOT_CL_FUNDING_AMT,
5703 CRS_ID,
5704 TEMPLATE_TYPE_CODE,
5705 --Bug# 4419339 OKLH Schema Sales Quote
5706 DATE_FUNDING_EXPECTED,
5707 DATE_TRADEIN,
5708 TRADEIN_AMOUNT,
5709 TRADEIN_DESCRIPTION,
5710 --Added by dpsingh for LE uptake
5711 LEGAL_ENTITY_ID
5712 FROM OKL_K_HEADERS_H
5713 WHERE id = p_khr_id and major_version = p_major_version;
5714
5715 RETURN l_return_status;
5716 EXCEPTION
5717 -- other appropriate handlers
5718 WHEN OTHERS THEN
5719 -- store SQL error message on message stack
5720 OKC_API.SET_MESSAGE(p_app_name => okc_version_pvt.G_APP_NAME,
5721 p_msg_name => okc_version_pvt.G_UNEXPECTED_ERROR,
5722 p_token1 => okc_version_pvt.G_SQLCODE_TOKEN,
5723 p_token1_value => sqlcode,
5724 p_token2 => okc_version_pvt.G_SQLERRM_TOKEN,
5725 p_token2_value => sqlerrm);
5726
5727 -- notify UNEXPECTED error
5728 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5729 return l_return_status;
5730 END restore_version;
5731
5732
5733 END OKL_KHR_PVT;