[Home] [Help]
PACKAGE BODY: APPS.OKL_CNR_PVT
Source
1 PACKAGE BODY Okl_Cnr_Pvt AS
2 /* $Header: OKLSCNRB.pls 120.5 2007/08/08 12:44:37 arajagop noship $ */
3 ---------------------------------------------------------------------------
4 -- PROCEDURE validate_id
5 ---------------------------------------------------------------------------
6 PROCEDURE validate_id (p_cnrv_rec IN cnrv_rec_type,
7 x_return_status OUT NOCOPY VARCHAR2) IS
8
9 BEGIN
10 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
11 --Check for Null
12 IF p_cnrv_rec.id = Okl_Api.G_MISS_NUM OR
13 p_cnrv_rec.id IS NULL
14 THEN
15
16 x_return_status := Okl_Api.G_RET_STS_ERROR;
17 --set error message in message stack
18 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
19 p_msg_name => G_REQUIRED_VALUE,
20 p_token1 => G_COL_NAME_TOKEN,
21 p_token1_value => 'id');
22 RAISE G_EXCEPTION_HALT_VALIDATION;
23
24 END IF;
25 END validate_id;
26
27 ---------------------------------------------------------------------------
28 -- PROCEDURE validate_org_id
29 ---------------------------------------------------------------------------
30
31 PROCEDURE validate_org_id (p_cnrv_rec IN cnrv_rec_type,
32 x_return_status OUT NOCOPY VARCHAR2) IS
33 BEGIN
34 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
35
36 x_return_status := Okl_Util.check_org_id(p_cnrv_rec.org_id);
37
38 END validate_org_id;
39
40
41 ---------------------------------------------------------------------------
42 -- PROCEDURE validate_object_version_number
43 ---------------------------------------------------------------------------
44 PROCEDURE validate_object_version_number (p_cnrv_rec IN cnrv_rec_type,
45 x_return_status OUT NOCOPY VARCHAR2) IS
46
47 BEGIN
48 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
49 --Check for Null
50 IF p_cnrv_rec.object_version_number = Okl_Api.G_MISS_NUM OR
51 p_cnrv_rec.object_version_number IS NULL
52 THEN
53
54 x_return_status := Okl_Api.G_RET_STS_ERROR;
55 --set error message in message stack
56 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
57 p_msg_name => G_REQUIRED_VALUE,
58 p_token1 => G_COL_NAME_TOKEN,
59 p_token1_value => 'object_version_number');
60 RAISE G_EXCEPTION_HALT_VALIDATION;
61
62 END IF;
63 END validate_object_version_number;
64
65 ---------------------------------------------------------------------------
66 -- PROCEDURE validate_date_consolidated
67 ---------------------------------------------------------------------------
68 PROCEDURE validate_date_consolidated (p_cnrv_rec IN cnrv_rec_type,
69 x_return_status OUT NOCOPY VARCHAR2) IS
70
71 BEGIN
72 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
73 --Check for Null
74 IF p_cnrv_rec.date_consolidated = Okl_Api.G_MISS_DATE OR
75 p_cnrv_rec.date_consolidated IS NULL
76 THEN
77
78 x_return_status := Okl_Api.G_RET_STS_ERROR;
79 --set error message in message stack
80 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
81 p_msg_name => G_REQUIRED_VALUE,
82 p_token1 => G_COL_NAME_TOKEN,
83 p_token1_value => 'date_consolidated');
84 RAISE G_EXCEPTION_HALT_VALIDATION;
85
86 END IF;
87 END validate_date_consolidated;
88
89 ---------------------------------------------------------------------------
90 -- PROCEDURE validate_currency_code
91 ---------------------------------------------------------------------------
92 PROCEDURE validate_currency_code(p_cnrv_rec IN cnrv_rec_type,
93 x_return_status OUT NOCOPY VARCHAR2) IS
94 l_dummy_var VARCHAR2(1) := '0';
95
96 CURSOR l_currency_code_csr IS
97 SELECT '1'
98 FROM FND_CURRENCIES_VL
99 WHERE currency_code = p_cnrv_rec.currency_code;
100
101
102 BEGIN
103 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
104 --Check for Null
105 IF p_cnrv_rec.currency_code = Okl_Api.G_MISS_CHAR OR
106 p_cnrv_rec.currency_code IS NULL
107 THEN
108
109 x_return_status := Okl_Api.G_RET_STS_ERROR;
110 --set error message in message stack
111 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
112 p_msg_name => G_REQUIRED_VALUE,
113 p_token1 => G_COL_NAME_TOKEN,
114 p_token1_value => 'currency_code');
115 RAISE G_EXCEPTION_HALT_VALIDATION;
116
117 END IF;
118
119
120 IF (p_cnrv_rec.currency_code IS NOT NULL) THEN
121 OPEN l_currency_code_csr;
122 FETCH l_currency_code_csr INTO l_dummy_var;
123 CLOSE l_currency_code_csr;
124
125 IF (l_dummy_var <> '1') THEN
126 x_return_status := Okl_Api.G_RET_STS_ERROR;
127 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
128 p_msg_name => G_NO_PARENT_RECORD,
129 p_token1 => G_COL_NAME_TOKEN,
130 p_token1_value => 'CURRENCY_CODE_FOR',
131 p_token2 => G_CHILD_TABLE_TOKEN,
132 p_token2_value => G_VIEW,
133 p_token3 => G_PARENT_TABLE_TOKEN,
134 p_token3_value => 'OKL_CNSLD_AR_HDRS_V' );
135
136 RAISE G_EXCEPTION_HALT_VALIDATION;
137 END IF;
138 END IF;
139
140 END validate_currency_code;
141
142 -- for LE Uptake project 08-11-2006
143 ---------------------------------------------------------------------------
144 -- PROCEDURE validate_legal_entity_id
145 ---------------------------------------------------------------------------
146 PROCEDURE validate_legal_entity_id (p_cnrv_rec IN cnrv_rec_type,
147 x_return_status OUT NOCOPY VARCHAR2) IS
148 l_exists NUMBER(1);
149 item_not_found_error EXCEPTION;
150 BEGIN
151 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
152 IF (p_cnrv_rec.legal_entity_id IS NOT NULL) THEN
153 l_exists := OKL_LEGAL_ENTITY_UTIL.check_le_id_exists(p_cnrv_rec.legal_entity_id);
154 IF(l_exists<>1) THEN
155 Okc_Api.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'LEGAL_ENTITY_ID');
156 RAISE item_not_found_error;
157 END IF;
158 END IF;
159 EXCEPTION
160 WHEN item_not_found_error THEN
161 x_return_status := Okc_Api.G_RET_STS_ERROR;
162
163 WHEN OTHERS THEN
164 -- store SQL error message on message stack for caller
165 Okc_Api.SET_MESSAGE(p_app_name => g_app_name
166 ,p_msg_name => g_unexpected_error
167 ,p_token1 => g_sqlcode_token
168 ,p_token1_value =>SQLCODE
169 ,p_token2 => g_sqlerrm_token
170 ,p_token2_value =>SQLERRM);
171
172 -- notify caller of an UNEXPECTED error
173 x_return_status := Okc_Api.G_RET_STS_UNEXP_ERROR;
174 END validate_legal_entity_id;
175
176 -- for LE Uptake project 08-11-2006
177
178 /*** view undefined *****
179 ---------------------------------------------------------------------------
180 -- PROCEDURE validate_ibt_id
181 ---------------------------------------------------------------------------
182 PROCEDURE validate_ibt_id(p_cnrv_rec IN cnrv_rec_type,
183 x_return_status OUT NOCOPY VARCHAR2) IS
184 l_dummy_var VARCHAR2(1) := '0';
185
186 CURSOR l_ibt_id_csr IS
187 SELECT '1'
188 FROM OKX_BILL_TOS_V
189 WHERE id = p_cnrv_rec.ibt_id;
190
191
192 BEGIN
193 x_return_status := Okl_api.G_RET_STS_SUCCESS;
194
195 --Check for Null
196 IF p_cnrv_rec.ibt_id = Okl_api.G_MISS_NUM OR
197 p_cnrv_rec.ibt_id IS NULL
198 THEN
199
200 x_return_status := Okl_api.G_RET_STS_ERROR;
201 --set error message in message stack
202 Okl_api.SET_MESSAGE(p_app_name => G_APP_NAME,
203 p_msg_name => G_REQUIRED_VALUE,
204 p_token1 => G_COL_NAME_TOKEN,
205 p_token1_value => 'ibt_id');
206 RAISE G_EXCEPTION_HALT_VALIDATION;
207
208 END IF;
209
210 IF (p_cnrv_rec.ibt_id IS NOT NULL) THEN
211 OPEN l_ibt_id_csr;
212 FETCH l_ibt_id_csr INTO l_dummy_var;
213 CLOSE l_ibt_id_csr;
214
215 IF (l_dummy_var <> '1') THEN
216 x_return_status := Okl_api.G_RET_STS_ERROR;
217 Okl_api.SET_MESSAGE(p_app_name => G_APP_NAME,
218 p_msg_name => G_NO_PARENT_RECORD,
219 p_token1 => G_COL_NAME_TOKEN,
220 p_token1_value => 'IBT_ID_FOR',
221 p_token2 => G_CHILD_TABLE_TOKEN,
222 p_token2_value => G_VIEW,
223 p_token3 => G_PARENT_TABLE_TOKEN,
224 p_token3_value => 'OKL_CNSLD_AR_HDRS_V' );
225
226 RAISE G_EXCEPTION_HALT_VALIDATION;
227 END IF;
228 END IF;
229
230 END validate_ibt_id;
231 *********** View Undefined ***********/
232
233 /******** View undefined ******
234 ---------------------------------------------------------------------------
235 -- PROCEDURE validate_ixx_id
236 ---------------------------------------------------------------------------
237 PROCEDURE validate_ixx_id(p_cnrv_rec IN cnrv_rec_type,
238 x_return_status OUT NOCOPY VARCHAR2) IS
239 l_dummy_var VARCHAR2(1) := '0';
240
241 CURSOR l_ixx_id_csr IS
242 SELECT '1'
243 FROM OKX_CSTR_ACCTS_V
244 WHERE id = p_cnrv_rec.ixx_id;
245
246
247 BEGIN
248 x_return_status := Okl_api.G_RET_STS_SUCCESS;
249
250 --Check for Null
251 IF p_cnrv_rec.ixx_id = Okl_api.G_MISS_NUM OR
252 p_cnrv_rec.ixx_id IS NULL
253 THEN
254
255 x_return_status := Okl_api.G_RET_STS_ERROR;
256 --set error message in message stack
257 Okl_api.SET_MESSAGE(p_app_name => G_APP_NAME,
258 p_msg_name => G_REQUIRED_VALUE,
259 p_token1 => G_COL_NAME_TOKEN,
260 p_token1_value => 'ixx_id');
261 RAISE G_EXCEPTION_HALT_VALIDATION;
262
263 END IF;
264
265 IF (p_cnrv_rec.ixx_id IS NOT NULL) THEN
266 OPEN l_ixx_id_csr;
267 FETCH l_ixx_id_csr INTO l_dummy_var;
268 CLOSE l_ixx_id_csr;
269
270 IF (l_dummy_var <> '1') THEN
271 x_return_status := Okl_api.G_RET_STS_ERROR;
272 Okl_api.SET_MESSAGE(p_app_name => G_APP_NAME,
273 p_msg_name => G_NO_PARENT_RECORD,
274 p_token1 => G_COL_NAME_TOKEN,
275 p_token1_value => 'IXX_ID_FOR',
276 p_token2 => G_CHILD_TABLE_TOKEN,
277 p_token2_value => G_VIEW,
278 p_token3 => G_PARENT_TABLE_TOKEN,
279 p_token3_value => 'OKL_CNSLD_AR_HDRS_V' );
280
281 RAISE G_EXCEPTION_HALT_VALIDATION;
282 END IF;
283 END IF;
284
285 END validate_ixx_id;
286 *********** View Undefined ***********/
287 /******* View undefined *****
288 ---------------------------------------------------------------------------
289 -- PROCEDURE validate_irm_id
290 ---------------------------------------------------------------------------
291 PROCEDURE validate_irm_id(p_cnrv_rec IN cnrv_rec_type,
292 x_return_status OUT NOCOPY VARCHAR2) IS
293 l_dummy_var VARCHAR2(1) := '0';
294
295 CURSOR l_irm_id_csr IS
296 SELECT '1'
297 FROM OKX_RECEIPT_METHODS_V
298 WHERE id = p_cnrv_rec.irm_id;
299
300
301 BEGIN
302 x_return_status := Okl_api.G_RET_STS_SUCCESS;
303
304 --Check for Null
305 IF p_cnrv_rec.irm_id = Okl_api.G_MISS_NUM OR
306 p_cnrv_rec.irm_id IS NULL
307 THEN
308
309 x_return_status := Okl_api.G_RET_STS_ERROR;
310 --set error message in message stack
311 Okl_api.SET_MESSAGE(p_app_name => G_APP_NAME,
312 p_msg_name => G_REQUIRED_VALUE,
313 p_token1 => G_COL_NAME_TOKEN,
314 p_token1_value => 'irm_id');
315 RAISE G_EXCEPTION_HALT_VALIDATION;
316
317 END IF;
318
319
320
321 IF (p_cnrv_rec.irm_id IS NOT NULL) THEN
322 OPEN l_irm_id_csr;
323 FETCH l_irm_id_csr INTO l_dummy_var;
324 CLOSE l_irm_id_csr;
325
326 IF (l_dummy_var <> '1') THEN
327 x_return_status := Okl_api.G_RET_STS_ERROR;
328 Okl_api.SET_MESSAGE(p_app_name => G_APP_NAME,
329 p_msg_name => G_NO_PARENT_RECORD,
330 p_token1 => G_COL_NAME_TOKEN,
331 p_token1_value => 'IRM_ID_FOR',
332 p_token2 => G_CHILD_TABLE_TOKEN,
333 p_token2_value => G_VIEW,
334 p_token3 => G_PARENT_TABLE_TOKEN,
335 p_token3_value => 'OKL_CNSLD_AR_HDRS_V' );
336
337 RAISE G_EXCEPTION_HALT_VALIDATION;
338 END IF;
339 END IF;
340
341 END validate_irm_id;
342 *********** View Undefined ***********/
343
344 ---------------------------------------------------------------------------
345 -- PROCEDURE validate_inf_id
346 ---------------------------------------------------------------------------
347 PROCEDURE validate_inf_id(p_cnrv_rec IN cnrv_rec_type,
348 x_return_status OUT NOCOPY VARCHAR2) IS
349 l_dummy_var VARCHAR2(1) := '0';
350
351 CURSOR l_inf_id_csr IS
352 SELECT '1'
353 FROM OKL_INVOICE_FORMATS_V
354 WHERE id = p_cnrv_rec.inf_id;
355
356
357 BEGIN
358 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
359
360 IF (p_cnrv_rec.inf_id IS NOT NULL) THEN
361 OPEN l_inf_id_csr;
362 FETCH l_inf_id_csr INTO l_dummy_var;
363 CLOSE l_inf_id_csr;
364
365 IF (l_dummy_var <> '1') THEN
366 x_return_status := Okl_Api.G_RET_STS_ERROR;
367 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
368 p_msg_name => G_NO_PARENT_RECORD,
369 p_token1 => G_COL_NAME_TOKEN,
370 p_token1_value => 'INF_ID_FOR',
371 p_token2 => G_CHILD_TABLE_TOKEN,
372 p_token2_value => G_VIEW,
373 p_token3 => G_PARENT_TABLE_TOKEN,
374 p_token3_value => 'OKL_CNSLD_AR_HDRS_V' );
375
376 RAISE G_EXCEPTION_HALT_VALIDATION;
377 END IF;
378 END IF;
379
380 END validate_inf_id;
381
382 ---------------------------------------------------------------------------
383 -- FUNCTION get_seq_id
384 ---------------------------------------------------------------------------
385 FUNCTION get_seq_id RETURN NUMBER IS
386 BEGIN
387 RETURN(Okc_P_Util.raw_to_number(sys_guid()));
388 END get_seq_id;
389
390 ---------------------------------------------------------------------------
391 -- PROCEDURE qc
392 ---------------------------------------------------------------------------
393 PROCEDURE qc IS
394 BEGIN
395 NULL;
396 END qc;
397
398 ---------------------------------------------------------------------------
399 -- PROCEDURE change_version
400 ---------------------------------------------------------------------------
401 PROCEDURE change_version IS
402 BEGIN
403 NULL;
404 END change_version;
405
406 ---------------------------------------------------------------------------
407 -- PROCEDURE api_copy
408 ---------------------------------------------------------------------------
409 PROCEDURE api_copy IS
410 BEGIN
411 NULL;
412 END api_copy;
413
414 ---------------------------------------------------------------------------
415 -- PROCEDURE add_language
416 ---------------------------------------------------------------------------
417 PROCEDURE add_language IS
418 BEGIN
419 DELETE FROM OKL_CNSLD_AR_HDRS_TL T
420 WHERE NOT EXISTS (
421 SELECT NULL
425
422 FROM OKL_CNSLD_AR_HDRS_ALL_B B --fixed bug 3321017 by kmotepal
423 WHERE B.ID = T.ID
424 );
426 UPDATE OKL_CNSLD_AR_HDRS_TL T SET (
427 PRIVATE_LABEL_LOGO_URL) = (SELECT
428 B.PRIVATE_LABEL_LOGO_URL
429 FROM OKL_CNSLD_AR_HDRS_TL B
430 WHERE B.ID = T.ID
431 AND B.LANGUAGE = T.SOURCE_LANG)
432 WHERE (
433 T.ID,
434 T.LANGUAGE)
435 IN (SELECT
436 SUBT.ID,
437 SUBT.LANGUAGE
438 FROM OKL_CNSLD_AR_HDRS_TL SUBB, OKL_CNSLD_AR_HDRS_TL SUBT
439 WHERE SUBB.ID = SUBT.ID
440 AND SUBB.LANGUAGE = SUBT.SOURCE_LANG
441 AND (SUBB.PRIVATE_LABEL_LOGO_URL <> SUBT.PRIVATE_LABEL_LOGO_URL
442 OR (SUBB.PRIVATE_LABEL_LOGO_URL IS NULL AND SUBT.PRIVATE_LABEL_LOGO_URL IS NOT NULL)
443 OR (SUBB.PRIVATE_LABEL_LOGO_URL IS NOT NULL AND SUBT.PRIVATE_LABEL_LOGO_URL IS NULL)
444 ));
445
446 INSERT INTO OKL_CNSLD_AR_HDRS_TL (
447 ID,
448 LANGUAGE,
449 SOURCE_LANG,
450 SFWT_FLAG,
451 PRIVATE_LABEL_LOGO_URL,
452 CREATED_BY,
453 CREATION_DATE,
454 LAST_UPDATED_BY,
455 LAST_UPDATE_DATE,
456 LAST_UPDATE_LOGIN)
457 SELECT
458 B.ID,
459 L.LANGUAGE_CODE,
460 B.SOURCE_LANG,
461 B.SFWT_FLAG,
462 B.PRIVATE_LABEL_LOGO_URL,
463 B.CREATED_BY,
464 B.CREATION_DATE,
465 B.LAST_UPDATED_BY,
466 B.LAST_UPDATE_DATE,
467 B.LAST_UPDATE_LOGIN
468 FROM OKL_CNSLD_AR_HDRS_TL B, FND_LANGUAGES L
469 WHERE L.INSTALLED_FLAG IN ('I', 'B')
470 AND B.LANGUAGE = USERENV('LANG')
471 AND NOT EXISTS(
472 SELECT NULL
473 FROM OKL_CNSLD_AR_HDRS_TL T
474 WHERE T.ID = B.ID
475 AND T.LANGUAGE = L.LANGUAGE_CODE
476 );
477
478 END add_language;
479
480 ---------------------------------------------------------------------------
481 -- FUNCTION get_rec for: OKL_CNSLD_AR_HDRS_B
482 ---------------------------------------------------------------------------
483 FUNCTION get_rec (
484 p_cnr_rec IN cnr_rec_type,
485 x_no_data_found OUT NOCOPY BOOLEAN
486 ) RETURN cnr_rec_type IS
487 CURSOR okl_cnsld_ar_hdrs_b_pk_csr (p_id IN NUMBER) IS
488 SELECT
489 ID,
490 CONSOLIDATED_INVOICE_NUMBER,
491 TRX_STATUS_CODE,
492 CURRENCY_CODE,
493 SET_OF_BOOKS_ID,
494 IBT_ID,
495 IXX_ID,
496 IRM_ID,
497 INF_ID,
498 AMOUNT,
499 DATE_CONSOLIDATED,
500 INVOICE_PULL_YN,
501 OBJECT_VERSION_NUMBER,
502 REQUEST_ID,
503 PROGRAM_APPLICATION_ID,
504 PROGRAM_ID,
505 PROGRAM_UPDATE_DATE,
506 ORG_ID,
507 DUE_DATE,
508 ATTRIBUTE_CATEGORY,
509 ATTRIBUTE1,
510 ATTRIBUTE2,
511 ATTRIBUTE3,
512 ATTRIBUTE4,
513 ATTRIBUTE5,
514 ATTRIBUTE6,
515 ATTRIBUTE7,
516 ATTRIBUTE8,
517 ATTRIBUTE9,
518 ATTRIBUTE10,
519 ATTRIBUTE11,
520 ATTRIBUTE12,
521 ATTRIBUTE13,
522 ATTRIBUTE14,
523 ATTRIBUTE15,
524 CREATED_BY,
525 CREATION_DATE,
526 LAST_UPDATED_BY,
527 LAST_UPDATE_DATE,
528 LAST_UPDATE_LOGIN,
529 LEGAL_ENTITY_ID -- for LE Uptake project 08-11-2006
530 FROM Okl_Cnsld_Ar_Hdrs_B
531 WHERE okl_cnsld_ar_hdrs_b.id = p_id;
532 l_okl_cnsld_ar_hdrs_b_pk okl_cnsld_ar_hdrs_b_pk_csr%ROWTYPE;
533 l_cnr_rec cnr_rec_type;
534 BEGIN
535 x_no_data_found := TRUE;
536 -- Get current database values
537 OPEN okl_cnsld_ar_hdrs_b_pk_csr (p_cnr_rec.id);
538 FETCH okl_cnsld_ar_hdrs_b_pk_csr INTO
539 l_cnr_rec.ID,
540 l_cnr_rec.CONSOLIDATED_INVOICE_NUMBER,
541 l_cnr_rec.TRX_STATUS_CODE,
542 l_cnr_rec.CURRENCY_CODE,
543 l_cnr_rec.SET_OF_BOOKS_ID,
544 l_cnr_rec.IBT_ID,
545 l_cnr_rec.IXX_ID,
546 l_cnr_rec.IRM_ID,
547 l_cnr_rec.INF_ID,
548 l_cnr_rec.AMOUNT,
549 l_cnr_rec.DATE_CONSOLIDATED,
550 l_cnr_rec.INVOICE_PULL_YN,
551 l_cnr_rec.OBJECT_VERSION_NUMBER,
552 l_cnr_rec.REQUEST_ID,
553 l_cnr_rec.PROGRAM_APPLICATION_ID,
554 l_cnr_rec.PROGRAM_ID,
555 l_cnr_rec.PROGRAM_UPDATE_DATE,
556 l_cnr_rec.ORG_ID,
557 l_cnr_rec.DUE_DATE,
558 l_cnr_rec.ATTRIBUTE_CATEGORY,
562 l_cnr_rec.ATTRIBUTE4,
559 l_cnr_rec.ATTRIBUTE1,
560 l_cnr_rec.ATTRIBUTE2,
561 l_cnr_rec.ATTRIBUTE3,
563 l_cnr_rec.ATTRIBUTE5,
564 l_cnr_rec.ATTRIBUTE6,
565 l_cnr_rec.ATTRIBUTE7,
566 l_cnr_rec.ATTRIBUTE8,
567 l_cnr_rec.ATTRIBUTE9,
568 l_cnr_rec.ATTRIBUTE10,
569 l_cnr_rec.ATTRIBUTE11,
570 l_cnr_rec.ATTRIBUTE12,
571 l_cnr_rec.ATTRIBUTE13,
572 l_cnr_rec.ATTRIBUTE14,
573 l_cnr_rec.ATTRIBUTE15,
574 l_cnr_rec.CREATED_BY,
575 l_cnr_rec.CREATION_DATE,
576 l_cnr_rec.LAST_UPDATED_BY,
577 l_cnr_rec.LAST_UPDATE_DATE,
578 l_cnr_rec.LAST_UPDATE_LOGIN,
579 l_cnr_rec.LEGAL_ENTITY_ID; -- for LE Uptake project 08-11-2006
580 x_no_data_found := okl_cnsld_ar_hdrs_b_pk_csr%NOTFOUND;
581 CLOSE okl_cnsld_ar_hdrs_b_pk_csr;
582 RETURN(l_cnr_rec);
583 END get_rec;
584
585 FUNCTION get_rec (
586 p_cnr_rec IN cnr_rec_type
587 ) RETURN cnr_rec_type IS
588 l_row_notfound BOOLEAN := TRUE;
589 BEGIN
590 RETURN(get_rec(p_cnr_rec, l_row_notfound));
591 END get_rec;
592 ---------------------------------------------------------------------------
593 -- FUNCTION get_rec for: OKL_CNSLD_AR_HDRS_TL
594 ---------------------------------------------------------------------------
595 FUNCTION get_rec (
596 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type,
597 x_no_data_found OUT NOCOPY BOOLEAN
598 ) RETURN okl_cnsld_ar_hdrs_tl_rec_type IS
599 CURSOR okl_cnsld_ar_hdrs_tl_pk_csr (p_id IN NUMBER,
600 p_language IN VARCHAR2) IS
601 SELECT
602 ID,
603 LANGUAGE,
604 SOURCE_LANG,
605 SFWT_FLAG,
606 PRIVATE_LABEL_LOGO_URL,
607 CREATED_BY,
608 CREATION_DATE,
609 LAST_UPDATED_BY,
610 LAST_UPDATE_DATE,
611 LAST_UPDATE_LOGIN
612 FROM Okl_Cnsld_Ar_Hdrs_Tl
613 WHERE okl_cnsld_ar_hdrs_tl.id = p_id
614 AND okl_cnsld_ar_hdrs_tl.LANGUAGE = p_language;
615 l_okl_cnsld_ar_hdrs_tl_pk okl_cnsld_ar_hdrs_tl_pk_csr%ROWTYPE;
616 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
617 BEGIN
618 x_no_data_found := TRUE;
619 -- Get current database values
620 OPEN okl_cnsld_ar_hdrs_tl_pk_csr (p_okl_cnsld_ar_hdrs_tl_rec.id,
621 p_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE);
622 FETCH okl_cnsld_ar_hdrs_tl_pk_csr INTO
623 l_okl_cnsld_ar_hdrs_tl_rec.ID,
624 l_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE,
625 l_okl_cnsld_ar_hdrs_tl_rec.SOURCE_LANG,
626 l_okl_cnsld_ar_hdrs_tl_rec.SFWT_FLAG,
627 l_okl_cnsld_ar_hdrs_tl_rec.PRIVATE_LABEL_LOGO_URL,
628 l_okl_cnsld_ar_hdrs_tl_rec.CREATED_BY,
629 l_okl_cnsld_ar_hdrs_tl_rec.CREATION_DATE,
630 l_okl_cnsld_ar_hdrs_tl_rec.LAST_UPDATED_BY,
631 l_okl_cnsld_ar_hdrs_tl_rec.LAST_UPDATE_DATE,
632 l_okl_cnsld_ar_hdrs_tl_rec.LAST_UPDATE_LOGIN;
633 x_no_data_found := okl_cnsld_ar_hdrs_tl_pk_csr%NOTFOUND;
634 CLOSE okl_cnsld_ar_hdrs_tl_pk_csr;
635 RETURN(l_okl_cnsld_ar_hdrs_tl_rec);
636 END get_rec;
637
638 FUNCTION get_rec (
639 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type
640 ) RETURN okl_cnsld_ar_hdrs_tl_rec_type IS
641 l_row_notfound BOOLEAN := TRUE;
642 BEGIN
643 RETURN(get_rec(p_okl_cnsld_ar_hdrs_tl_rec, l_row_notfound));
644 END get_rec;
645 ---------------------------------------------------------------------------
646 -- FUNCTION get_rec for: OKL_CNSLD_AR_HDRS_V
647 ---------------------------------------------------------------------------
648 FUNCTION get_rec (
649 p_cnrv_rec IN cnrv_rec_type,
650 x_no_data_found OUT NOCOPY BOOLEAN
651 ) RETURN cnrv_rec_type IS
652 CURSOR okl_cnrv_pk_csr (p_id IN NUMBER) IS
653 SELECT
654 ID,
655 OBJECT_VERSION_NUMBER,
656 SFWT_FLAG,
657 IBT_ID,
658 IXX_ID,
659 CURRENCY_CODE,
660 IRM_ID,
661 INF_ID,
662 SET_OF_BOOKS_ID,
663 CONSOLIDATED_INVOICE_NUMBER,
664 TRX_STATUS_CODE,
665 INVOICE_PULL_YN,
666 DATE_CONSOLIDATED,
667 PRIVATE_LABEL_LOGO_URL,
668 AMOUNT,
669 DUE_DATE,
670 ATTRIBUTE_CATEGORY,
671 ATTRIBUTE1,
672 ATTRIBUTE2,
673 ATTRIBUTE3,
674 ATTRIBUTE4,
675 ATTRIBUTE5,
676 ATTRIBUTE6,
677 ATTRIBUTE7,
678 ATTRIBUTE8,
679 ATTRIBUTE9,
680 ATTRIBUTE10,
681 ATTRIBUTE11,
682 ATTRIBUTE12,
683 ATTRIBUTE13,
684 ATTRIBUTE14,
685 ATTRIBUTE15,
686 REQUEST_ID,
690 ORG_ID,
687 PROGRAM_APPLICATION_ID,
688 PROGRAM_ID,
689 PROGRAM_UPDATE_DATE,
691 CREATED_BY,
692 CREATION_DATE,
693 LAST_UPDATED_BY,
694 LAST_UPDATE_DATE,
695 LAST_UPDATE_LOGIN,
696 LEGAL_ENTITY_ID -- for LE Uptake project 08-11-2006
697 FROM Okl_Cnsld_Ar_Hdrs_V
698 WHERE okl_cnsld_ar_hdrs_v.id = p_id;
699 l_okl_cnrv_pk okl_cnrv_pk_csr%ROWTYPE;
700 l_cnrv_rec cnrv_rec_type;
701 BEGIN
702 x_no_data_found := TRUE;
703 -- Get current database values
704 OPEN okl_cnrv_pk_csr (p_cnrv_rec.id);
705 FETCH okl_cnrv_pk_csr INTO
706 l_cnrv_rec.ID,
707 l_cnrv_rec.OBJECT_VERSION_NUMBER,
708 l_cnrv_rec.SFWT_FLAG,
709 l_cnrv_rec.IBT_ID,
710 l_cnrv_rec.IXX_ID,
711 l_cnrv_rec.CURRENCY_CODE,
712 l_cnrv_rec.IRM_ID,
713 l_cnrv_rec.INF_ID,
714 l_cnrv_rec.SET_OF_BOOKS_ID,
715 l_cnrv_rec.CONSOLIDATED_INVOICE_NUMBER,
716 l_cnrv_rec.TRX_STATUS_CODE,
717 l_cnrv_rec.INVOICE_PULL_YN,
718 l_cnrv_rec.DATE_CONSOLIDATED,
719 l_cnrv_rec.PRIVATE_LABEL_LOGO_URL,
720 l_cnrv_rec.AMOUNT,
721 l_cnrv_rec.DUE_DATE,
722 l_cnrv_rec.ATTRIBUTE_CATEGORY,
723 l_cnrv_rec.ATTRIBUTE1,
724 l_cnrv_rec.ATTRIBUTE2,
725 l_cnrv_rec.ATTRIBUTE3,
726 l_cnrv_rec.ATTRIBUTE4,
727 l_cnrv_rec.ATTRIBUTE5,
728 l_cnrv_rec.ATTRIBUTE6,
729 l_cnrv_rec.ATTRIBUTE7,
730 l_cnrv_rec.ATTRIBUTE8,
731 l_cnrv_rec.ATTRIBUTE9,
732 l_cnrv_rec.ATTRIBUTE10,
733 l_cnrv_rec.ATTRIBUTE11,
734 l_cnrv_rec.ATTRIBUTE12,
735 l_cnrv_rec.ATTRIBUTE13,
736 l_cnrv_rec.ATTRIBUTE14,
737 l_cnrv_rec.ATTRIBUTE15,
738 l_cnrv_rec.REQUEST_ID,
739 l_cnrv_rec.PROGRAM_APPLICATION_ID,
740 l_cnrv_rec.PROGRAM_ID,
741 l_cnrv_rec.PROGRAM_UPDATE_DATE,
742 l_cnrv_rec.ORG_ID,
743 l_cnrv_rec.CREATED_BY,
744 l_cnrv_rec.CREATION_DATE,
745 l_cnrv_rec.LAST_UPDATED_BY,
746 l_cnrv_rec.LAST_UPDATE_DATE,
747 l_cnrv_rec.LAST_UPDATE_LOGIN,
748 l_cnrv_rec.LEGAL_ENTITY_ID; -- for LE Uptake project 08-11-2006
749 x_no_data_found := okl_cnrv_pk_csr%NOTFOUND;
750 CLOSE okl_cnrv_pk_csr;
751 RETURN(l_cnrv_rec);
752 END get_rec;
753
754 FUNCTION get_rec (
755 p_cnrv_rec IN cnrv_rec_type
756 ) RETURN cnrv_rec_type IS
757 l_row_notfound BOOLEAN := TRUE;
758 BEGIN
759 RETURN(get_rec(p_cnrv_rec, l_row_notfound));
760 END get_rec;
761
762 ---------------------------------------------------------
763 -- FUNCTION null_out_defaults for: OKL_CNSLD_AR_HDRS_V --
764 ---------------------------------------------------------
765 FUNCTION null_out_defaults (
766 p_cnrv_rec IN cnrv_rec_type
767 ) RETURN cnrv_rec_type IS
768 l_cnrv_rec cnrv_rec_type := p_cnrv_rec;
769 BEGIN
770 IF (l_cnrv_rec.object_version_number = Okc_Api.G_MISS_NUM) THEN
771 l_cnrv_rec.object_version_number := NULL;
772 END IF;
773 IF (l_cnrv_rec.sfwt_flag = Okc_Api.G_MISS_CHAR) THEN
774 l_cnrv_rec.sfwt_flag := NULL;
775 END IF;
776 IF (l_cnrv_rec.ibt_id = Okc_Api.G_MISS_NUM) THEN
777 l_cnrv_rec.ibt_id := NULL;
778 END IF;
779 IF (l_cnrv_rec.ixx_id = Okc_Api.G_MISS_NUM) THEN
780 l_cnrv_rec.ixx_id := NULL;
781 END IF;
782 IF (l_cnrv_rec.currency_code = Okc_Api.G_MISS_CHAR) THEN
783 l_cnrv_rec.currency_code := NULL;
784 END IF;
785 IF (l_cnrv_rec.irm_id = Okc_Api.G_MISS_NUM) THEN
786 l_cnrv_rec.irm_id := NULL;
787 END IF;
788 IF (l_cnrv_rec.inf_id = Okc_Api.G_MISS_NUM) THEN
789 l_cnrv_rec.inf_id := NULL;
790 END IF;
791 IF (l_cnrv_rec.set_of_books_id = Okc_Api.G_MISS_NUM) THEN
792 l_cnrv_rec.set_of_books_id := NULL;
793 END IF;
794 IF (l_cnrv_rec.consolidated_invoice_number = Okc_Api.G_MISS_CHAR) THEN
795 l_cnrv_rec.consolidated_invoice_number := NULL;
796 END IF;
797 IF (l_cnrv_rec.trx_status_code = Okc_Api.G_MISS_CHAR) THEN
798 l_cnrv_rec.trx_status_code := NULL;
799 END IF;
800 IF (l_cnrv_rec.invoice_pull_yn = Okc_Api.G_MISS_CHAR) THEN
801 l_cnrv_rec.invoice_pull_yn := NULL;
802 END IF;
803 IF (l_cnrv_rec.date_consolidated = Okc_Api.G_MISS_DATE) THEN
804 l_cnrv_rec.date_consolidated := NULL;
805 END IF;
806 IF (l_cnrv_rec.private_label_logo_url = Okc_Api.G_MISS_CHAR) THEN
807 l_cnrv_rec.private_label_logo_url := NULL;
808 END IF;
809 IF (l_cnrv_rec.amount = Okc_Api.G_MISS_NUM) THEN
810 l_cnrv_rec.amount := NULL;
811 END IF;
812 IF (l_cnrv_rec.due_date = Okc_Api.G_MISS_DATE) THEN
813 l_cnrv_rec.due_date := NULL;
814 END IF;
815 IF (l_cnrv_rec.attribute_category = Okc_Api.G_MISS_CHAR) THEN
819 l_cnrv_rec.attribute1 := NULL;
816 l_cnrv_rec.attribute_category := NULL;
817 END IF;
818 IF (l_cnrv_rec.attribute1 = Okc_Api.G_MISS_CHAR) THEN
820 END IF;
821 IF (l_cnrv_rec.attribute2 = Okc_Api.G_MISS_CHAR) THEN
822 l_cnrv_rec.attribute2 := NULL;
823 END IF;
824 IF (l_cnrv_rec.attribute3 = Okc_Api.G_MISS_CHAR) THEN
825 l_cnrv_rec.attribute3 := NULL;
826 END IF;
827 IF (l_cnrv_rec.attribute4 = Okc_Api.G_MISS_CHAR) THEN
828 l_cnrv_rec.attribute4 := NULL;
829 END IF;
830 IF (l_cnrv_rec.attribute5 = Okc_Api.G_MISS_CHAR) THEN
831 l_cnrv_rec.attribute5 := NULL;
832 END IF;
833 IF (l_cnrv_rec.attribute6 = Okc_Api.G_MISS_CHAR) THEN
834 l_cnrv_rec.attribute6 := NULL;
835 END IF;
836 IF (l_cnrv_rec.attribute7 = Okc_Api.G_MISS_CHAR) THEN
837 l_cnrv_rec.attribute7 := NULL;
838 END IF;
839 IF (l_cnrv_rec.attribute8 = Okc_Api.G_MISS_CHAR) THEN
840 l_cnrv_rec.attribute8 := NULL;
841 END IF;
842 IF (l_cnrv_rec.attribute9 = Okc_Api.G_MISS_CHAR) THEN
843 l_cnrv_rec.attribute9 := NULL;
844 END IF;
845 IF (l_cnrv_rec.attribute10 = Okc_Api.G_MISS_CHAR) THEN
846 l_cnrv_rec.attribute10 := NULL;
847 END IF;
848 IF (l_cnrv_rec.attribute11 = Okc_Api.G_MISS_CHAR) THEN
849 l_cnrv_rec.attribute11 := NULL;
850 END IF;
851 IF (l_cnrv_rec.attribute12 = Okc_Api.G_MISS_CHAR) THEN
852 l_cnrv_rec.attribute12 := NULL;
853 END IF;
854 IF (l_cnrv_rec.attribute13 = Okc_Api.G_MISS_CHAR) THEN
855 l_cnrv_rec.attribute13 := NULL;
856 END IF;
857 IF (l_cnrv_rec.attribute14 = Okc_Api.G_MISS_CHAR) THEN
858 l_cnrv_rec.attribute14 := NULL;
859 END IF;
860 IF (l_cnrv_rec.attribute15 = Okc_Api.G_MISS_CHAR) THEN
861 l_cnrv_rec.attribute15 := NULL;
862 END IF;
863 IF (l_cnrv_rec.request_id = Okc_Api.G_MISS_NUM) THEN
864 l_cnrv_rec.request_id := NULL;
865 END IF;
866 IF (l_cnrv_rec.program_application_id = Okc_Api.G_MISS_NUM) THEN
867 l_cnrv_rec.program_application_id := NULL;
868 END IF;
869 IF (l_cnrv_rec.program_id = Okc_Api.G_MISS_NUM) THEN
870 l_cnrv_rec.program_id := NULL;
871 END IF;
872 IF (l_cnrv_rec.program_update_date = Okc_Api.G_MISS_DATE) THEN
873 l_cnrv_rec.program_update_date := NULL;
874 END IF;
875 IF (l_cnrv_rec.org_id = Okc_Api.G_MISS_NUM) THEN
876 l_cnrv_rec.org_id := NULL;
877 END IF;
878 IF (l_cnrv_rec.created_by = Okc_Api.G_MISS_NUM) THEN
879 l_cnrv_rec.created_by := NULL;
880 END IF;
881 IF (l_cnrv_rec.creation_date = Okc_Api.G_MISS_DATE) THEN
882 l_cnrv_rec.creation_date := NULL;
883 END IF;
884 IF (l_cnrv_rec.last_updated_by = Okc_Api.G_MISS_NUM) THEN
885 l_cnrv_rec.last_updated_by := NULL;
886 END IF;
887 IF (l_cnrv_rec.last_update_date = Okc_Api.G_MISS_DATE) THEN
888 l_cnrv_rec.last_update_date := NULL;
889 END IF;
890 IF (l_cnrv_rec.last_update_login = Okc_Api.G_MISS_NUM) THEN
891 l_cnrv_rec.last_update_login := NULL;
892 END IF;
893 -- for LE Uptake project 08-11-2006
894 IF (l_cnrv_rec.legal_entity_id = Okc_Api.G_MISS_NUM) THEN
895 l_cnrv_rec.legal_entity_id := NULL;
896 END IF;
897 -- for LE Uptake project 08-11-2006
898 RETURN(l_cnrv_rec);
899 END null_out_defaults;
900 ---------------------------------------------------------------------------
901 -- PROCEDURE Validate_Attributes
902 ---------------------------------------------------------------------------
903 -------------------------------------------------
904 -- Validate_Attributes for:OKL_CNSLD_AR_HDRS_V --
905 -------------------------------------------------
906 FUNCTION Validate_Attributes (
907 p_cnrv_rec IN cnrv_rec_type
908 ) RETURN VARCHAR2 IS
909 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
910 -- Added 04/19/2001 -- Sunil Mathew
911 x_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
912 BEGIN
913 -- Added 04/19/2001 -- Sunil Mathew
914 validate_currency_code(p_cnrv_rec, x_return_status);
915 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
916 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
917 l_return_status := x_return_status;
918 RAISE G_EXCEPTION_HALT_VALIDATION;
919 ELSE
920 l_return_status := x_return_status; -- record that there was an error
921 END IF;
922 END IF;
923 -- for LE Uptake project 08-11-2006
924 IF ( p_cnrv_rec.legal_entity_id = Okl_Api.G_MISS_NUM OR p_cnrv_rec.legal_entity_id IS NULL)
925 THEN
926 RAISE G_EXCEPTION_HALT_VALIDATION;
927 ELSE
928 validate_legal_entity_id(p_cnrv_rec, x_return_status);
929 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
930 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
931 l_return_status := x_return_status;
932 RAISE G_EXCEPTION_HALT_VALIDATION;
933 ELSE
934 l_return_status := x_return_status; -- record that there was an error
935 END IF;
936 END IF;
937 END IF;
938 -- for LE Uptake project 08-11-2006
939 -- validate_isob_id(p_cnrv_rec, x_return_status);
940 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
941 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
945 l_return_status := x_return_status; -- record that there was an error
942 l_return_status := x_return_status;
943 RAISE G_EXCEPTION_HALT_VALIDATION;
944 ELSE
946 END IF;
947 END IF;
948
949 -- validate_ibt_id(p_cnrv_rec, x_return_status);
950 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
951 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
952 l_return_status := x_return_status;
953 RAISE G_EXCEPTION_HALT_VALIDATION;
954 ELSE
955 l_return_status := x_return_status; -- record that there was an error
956 END IF;
957 END IF;
958
959 -- validate_ixx_id(p_cnrv_rec, x_return_status);
960 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
961 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
962 l_return_status := x_return_status;
963 RAISE G_EXCEPTION_HALT_VALIDATION;
964 ELSE
965 l_return_status := x_return_status; -- record that there was an error
966 END IF;
967 END IF;
968
969 -- validate_irm_id(p_cnrv_rec, x_return_status);
970 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
971 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
972 l_return_status := x_return_status;
973 RAISE G_EXCEPTION_HALT_VALIDATION;
974 ELSE
975 l_return_status := x_return_status; -- record that there was an error
976 END IF;
977 END IF;
978
979 validate_inf_id(p_cnrv_rec, x_return_status);
980 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
981 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
982 l_return_status := x_return_status;
983 RAISE G_EXCEPTION_HALT_VALIDATION;
984 ELSE
985 l_return_status := x_return_status; -- record that there was an error
986 END IF;
987 END IF;
988
989 validate_org_id(p_cnrv_rec, x_return_status);
990 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
991 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
992 l_return_status := x_return_status;
993 RAISE G_EXCEPTION_HALT_VALIDATION;
994 ELSE
995 l_return_status := x_return_status; -- record that there was an error
996 END IF;
997 END IF;
998
999 -- End Addition 04/19/2001 -- Sunil Mathew
1000
1001 IF p_cnrv_rec.id = Okc_Api.G_MISS_NUM OR
1002 p_cnrv_rec.id IS NULL
1003 THEN
1004 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'id');
1005 l_return_status := Okc_Api.G_RET_STS_ERROR;
1006 ELSIF p_cnrv_rec.object_version_number = Okc_Api.G_MISS_NUM OR
1007 p_cnrv_rec.object_version_number IS NULL
1008 THEN
1009 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'object_version_number');
1010 l_return_status := Okc_Api.G_RET_STS_ERROR;
1011 ELSIF p_cnrv_rec.ibt_id = Okc_Api.G_MISS_NUM OR
1012 p_cnrv_rec.ibt_id IS NULL
1013 THEN
1014 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'ibt_id');
1015 l_return_status := Okc_Api.G_RET_STS_ERROR;
1016 ELSIF p_cnrv_rec.ixx_id = Okc_Api.G_MISS_NUM OR
1017 p_cnrv_rec.ixx_id IS NULL
1018 THEN
1019 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'ixx_id');
1020 l_return_status := Okc_Api.G_RET_STS_ERROR;
1021 ELSIF p_cnrv_rec.currency_code = Okc_Api.G_MISS_CHAR OR
1022 p_cnrv_rec.currency_code IS NULL
1023 THEN
1024 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'currency_code');
1025 l_return_status := Okc_Api.G_RET_STS_ERROR;
1026 ELSIF p_cnrv_rec.irm_id = Okc_Api.G_MISS_NUM OR
1027 p_cnrv_rec.irm_id IS NULL
1028 THEN
1029 NULL;
1030 ELSIF p_cnrv_rec.set_of_books_id = Okc_Api.G_MISS_NUM OR
1031 p_cnrv_rec.set_of_books_id IS NULL
1032 THEN
1033 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'set_of_books_id');
1034 l_return_status := Okc_Api.G_RET_STS_ERROR;
1035 ELSIF p_cnrv_rec.trx_status_code = Okc_Api.G_MISS_CHAR OR
1036 p_cnrv_rec.trx_status_code IS NULL
1037 THEN
1038 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'trx_status_code');
1039 l_return_status := Okc_Api.G_RET_STS_ERROR;
1040 ELSIF p_cnrv_rec.date_consolidated = Okc_Api.G_MISS_DATE OR
1041 p_cnrv_rec.date_consolidated IS NULL
1042 THEN
1043 Okc_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'date_consolidated');
1044 l_return_status := Okc_Api.G_RET_STS_ERROR;
1045 END IF;
1046 RETURN(l_return_status);
1047 END Validate_Attributes;
1048
1049 ---------------------------------------------------------------------------
1050 -- PROCEDURE Validate_Record
1051 ---------------------------------------------------------------------------
1052 ---------------------------------------------
1053 -- Validate_Record for:OKL_CNSLD_AR_HDRS_V --
1054 ---------------------------------------------
1055 FUNCTION Validate_Record (
1056 p_cnrv_rec IN cnrv_rec_type
1057 ) RETURN VARCHAR2 IS
1058 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1059 BEGIN
1060 RETURN (l_return_status);
1061 END Validate_Record;
1062
1066 PROCEDURE migrate (
1063 ---------------------------------------------------------------------------
1064 -- PROCEDURE Migrate
1065 ---------------------------------------------------------------------------
1067 p_from IN cnrv_rec_type,
1068 p_to OUT NOCOPY cnr_rec_type
1069 ) IS
1070 BEGIN
1071 p_to.id := p_from.id;
1072 p_to.consolidated_invoice_number := p_from.consolidated_invoice_number;
1073 p_to.trx_status_code := p_from.trx_status_code;
1074 p_to.currency_code := p_from.currency_code;
1075 p_to.set_of_books_id := p_from.set_of_books_id;
1076 p_to.ibt_id := p_from.ibt_id;
1077 p_to.ixx_id := p_from.ixx_id;
1078 p_to.irm_id := p_from.irm_id;
1079 p_to.inf_id := p_from.inf_id;
1080 p_to.amount := p_from.amount;
1081 p_to.date_consolidated := p_from.date_consolidated;
1082 p_to.invoice_pull_yn := p_from.invoice_pull_yn;
1083 p_to.object_version_number := p_from.object_version_number;
1084 p_to.request_id := p_from.request_id;
1085 p_to.program_application_id := p_from.program_application_id;
1086 p_to.program_id := p_from.program_id;
1087 p_to.program_update_date := p_from.program_update_date;
1088 p_to.org_id := p_from.org_id;
1089 p_to.due_date := p_from.due_date;
1090 p_to.attribute_category := p_from.attribute_category;
1091 p_to.attribute1 := p_from.attribute1;
1092 p_to.attribute2 := p_from.attribute2;
1093 p_to.attribute3 := p_from.attribute3;
1094 p_to.attribute4 := p_from.attribute4;
1095 p_to.attribute5 := p_from.attribute5;
1096 p_to.attribute6 := p_from.attribute6;
1097 p_to.attribute7 := p_from.attribute7;
1098 p_to.attribute8 := p_from.attribute8;
1099 p_to.attribute9 := p_from.attribute9;
1100 p_to.attribute10 := p_from.attribute10;
1101 p_to.attribute11 := p_from.attribute11;
1102 p_to.attribute12 := p_from.attribute12;
1103 p_to.attribute13 := p_from.attribute13;
1104 p_to.attribute14 := p_from.attribute14;
1105 p_to.attribute15 := p_from.attribute15;
1106 p_to.created_by := p_from.created_by;
1107 p_to.creation_date := p_from.creation_date;
1108 p_to.last_updated_by := p_from.last_updated_by;
1109 p_to.last_update_date := p_from.last_update_date;
1110 p_to.last_update_login := p_from.last_update_login;
1111 p_to.legal_entity_id := p_from.legal_entity_id; -- for LE Uptake project 08-11-2006
1112 END migrate;
1113 PROCEDURE migrate (
1114 p_from IN cnr_rec_type,
1115 p_to OUT NOCOPY cnrv_rec_type
1116 ) IS
1117 BEGIN
1118 p_to.id := p_from.id;
1119 p_to.consolidated_invoice_number := p_from.consolidated_invoice_number;
1120 p_to.trx_status_code := p_from.trx_status_code;
1121 p_to.currency_code := p_from.currency_code;
1122 p_to.set_of_books_id := p_from.set_of_books_id;
1123 p_to.ibt_id := p_from.ibt_id;
1124 p_to.ixx_id := p_from.ixx_id;
1125 p_to.irm_id := p_from.irm_id;
1126 p_to.inf_id := p_from.inf_id;
1127 p_to.amount := p_from.amount;
1128 p_to.date_consolidated := p_from.date_consolidated;
1129 p_to.invoice_pull_yn := p_from.invoice_pull_yn;
1130 p_to.object_version_number := p_from.object_version_number;
1131 p_to.request_id := p_from.request_id;
1132 p_to.program_application_id := p_from.program_application_id;
1133 p_to.program_id := p_from.program_id;
1134 p_to.program_update_date := p_from.program_update_date;
1135 p_to.org_id := p_from.org_id;
1136 p_to.due_date := p_from.due_date;
1137 p_to.attribute_category := p_from.attribute_category;
1138 p_to.attribute1 := p_from.attribute1;
1139 p_to.attribute2 := p_from.attribute2;
1140 p_to.attribute3 := p_from.attribute3;
1141 p_to.attribute4 := p_from.attribute4;
1142 p_to.attribute5 := p_from.attribute5;
1143 p_to.attribute6 := p_from.attribute6;
1144 p_to.attribute7 := p_from.attribute7;
1145 p_to.attribute8 := p_from.attribute8;
1146 p_to.attribute9 := p_from.attribute9;
1147 p_to.attribute10 := p_from.attribute10;
1148 p_to.attribute11 := p_from.attribute11;
1149 p_to.attribute12 := p_from.attribute12;
1150 p_to.attribute13 := p_from.attribute13;
1151 p_to.attribute14 := p_from.attribute14;
1152 p_to.attribute15 := p_from.attribute15;
1153 p_to.created_by := p_from.created_by;
1154 p_to.creation_date := p_from.creation_date;
1155 p_to.last_updated_by := p_from.last_updated_by;
1156 p_to.last_update_date := p_from.last_update_date;
1157 p_to.last_update_login := p_from.last_update_login;
1158 p_to.legal_entity_id := p_from.legal_entity_id; -- for LE Uptake project 08-11-2006
1159 END migrate;
1160 PROCEDURE migrate (
1161 p_from IN cnrv_rec_type,
1162 p_to OUT NOCOPY okl_cnsld_ar_hdrs_tl_rec_type
1163 ) IS
1164 BEGIN
1165 p_to.id := p_from.id;
1166 p_to.sfwt_flag := p_from.sfwt_flag;
1167 p_to.private_label_logo_url := p_from.private_label_logo_url;
1168 p_to.created_by := p_from.created_by;
1169 p_to.creation_date := p_from.creation_date;
1170 p_to.last_updated_by := p_from.last_updated_by;
1171 p_to.last_update_date := p_from.last_update_date;
1172 p_to.last_update_login := p_from.last_update_login;
1173 END migrate;
1174 PROCEDURE migrate (
1175 p_from IN okl_cnsld_ar_hdrs_tl_rec_type,
1176 p_to OUT NOCOPY cnrv_rec_type
1177 ) IS
1178 BEGIN
1179 p_to.id := p_from.id;
1180 p_to.sfwt_flag := p_from.sfwt_flag;
1184 p_to.last_updated_by := p_from.last_updated_by;
1181 p_to.private_label_logo_url := p_from.private_label_logo_url;
1182 p_to.created_by := p_from.created_by;
1183 p_to.creation_date := p_from.creation_date;
1185 p_to.last_update_date := p_from.last_update_date;
1186 p_to.last_update_login := p_from.last_update_login;
1187 END migrate;
1188
1189 ---------------------------------------------------------------------------
1190 -- PROCEDURE validate_row
1191 ---------------------------------------------------------------------------
1192 ------------------------------------------
1193 -- validate_row for:OKL_CNSLD_AR_HDRS_V --
1194 ------------------------------------------
1195 PROCEDURE validate_row(
1196 p_api_version IN NUMBER,
1197 p_init_msg_list IN VARCHAR2,
1198 x_return_status OUT NOCOPY VARCHAR2,
1199 x_msg_count OUT NOCOPY NUMBER,
1200 x_msg_data OUT NOCOPY VARCHAR2,
1201 p_cnrv_rec IN cnrv_rec_type) IS
1202
1203 l_api_version CONSTANT NUMBER := 1;
1204 l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
1205 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1206 l_cnrv_rec cnrv_rec_type := p_cnrv_rec;
1207 l_cnr_rec cnr_rec_type;
1208 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
1209 BEGIN
1210 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
1211 G_PKG_NAME,
1212 p_init_msg_list,
1213 l_api_version,
1214 p_api_version,
1215 '_PVT',
1216 x_return_status);
1217 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1218 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1219 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1220 RAISE Okc_Api.G_EXCEPTION_ERROR;
1221 END IF;
1222 --- Validate all non-missing attributes (Item Level Validation)
1223 l_return_status := Validate_Attributes(l_cnrv_rec);
1224 --- If any errors happen abort API
1225 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1226 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1227 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1228 RAISE Okc_Api.G_EXCEPTION_ERROR;
1229 END IF;
1230 l_return_status := Validate_Record(l_cnrv_rec);
1231 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1232 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1233 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1234 RAISE Okc_Api.G_EXCEPTION_ERROR;
1235 END IF;
1236 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1237 EXCEPTION
1238 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
1239 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
1240 (
1241 l_api_name,
1242 G_PKG_NAME,
1243 'OKC_API.G_RET_STS_ERROR',
1244 x_msg_count,
1245 x_msg_data,
1246 '_PVT'
1247 );
1248 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1249 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1250 (
1251 l_api_name,
1252 G_PKG_NAME,
1253 'OKC_API.G_RET_STS_UNEXP_ERROR',
1254 x_msg_count,
1255 x_msg_data,
1256 '_PVT'
1257 );
1258 WHEN OTHERS THEN
1259 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1260 (
1261 l_api_name,
1262 G_PKG_NAME,
1263 'OTHERS',
1264 x_msg_count,
1265 x_msg_data,
1266 '_PVT'
1267 );
1268 END validate_row;
1269 ------------------------------------------
1270 -- PL/SQL TBL validate_row for:CNRV_TBL --
1271 ------------------------------------------
1272 PROCEDURE validate_row(
1273 p_api_version IN NUMBER,
1274 p_init_msg_list IN VARCHAR2,
1275 x_return_status OUT NOCOPY VARCHAR2,
1276 x_msg_count OUT NOCOPY NUMBER,
1277 x_msg_data OUT NOCOPY VARCHAR2,
1278 p_cnrv_tbl IN cnrv_tbl_type) IS
1279
1280 l_api_version CONSTANT NUMBER := 1;
1281 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
1282 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1283 i NUMBER := 0;
1284 BEGIN
1285 Okc_Api.init_msg_list(p_init_msg_list);
1286 -- Make sure PL/SQL table has records in it before passing
1287 IF (p_cnrv_tbl.COUNT > 0) THEN
1288 i := p_cnrv_tbl.FIRST;
1289 LOOP
1290 validate_row (
1291 p_api_version => p_api_version,
1292 p_init_msg_list => Okc_Api.G_FALSE,
1293 x_return_status => x_return_status,
1294 x_msg_count => x_msg_count,
1295 x_msg_data => x_msg_data,
1296 p_cnrv_rec => p_cnrv_tbl(i));
1297 EXIT WHEN (i = p_cnrv_tbl.LAST);
1298 i := p_cnrv_tbl.NEXT(i);
1299 END LOOP;
1303 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
1300 END IF;
1301 EXCEPTION
1302 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
1304 (
1305 l_api_name,
1306 G_PKG_NAME,
1307 'OKC_API.G_RET_STS_ERROR',
1308 x_msg_count,
1309 x_msg_data,
1310 '_PVT'
1311 );
1312 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1313 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1314 (
1315 l_api_name,
1316 G_PKG_NAME,
1317 'OKC_API.G_RET_STS_UNEXP_ERROR',
1318 x_msg_count,
1319 x_msg_data,
1320 '_PVT'
1321 );
1322 WHEN OTHERS THEN
1323 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1324 (
1325 l_api_name,
1326 G_PKG_NAME,
1327 'OTHERS',
1328 x_msg_count,
1329 x_msg_data,
1330 '_PVT'
1331 );
1332 END validate_row;
1333
1334 ---------------------------------------------------------------------------
1335 -- PROCEDURE insert_row
1336 ---------------------------------------------------------------------------
1337 ----------------------------------------
1338 -- insert_row for:OKL_CNSLD_AR_HDRS_B --
1339 ----------------------------------------
1340 PROCEDURE insert_row(
1341 p_init_msg_list IN VARCHAR2,
1342 x_return_status OUT NOCOPY VARCHAR2,
1343 x_msg_count OUT NOCOPY NUMBER,
1344 x_msg_data OUT NOCOPY VARCHAR2,
1345 p_cnr_rec IN cnr_rec_type,
1346 x_cnr_rec OUT NOCOPY cnr_rec_type) IS
1347
1348 l_api_version CONSTANT NUMBER := 1;
1349 l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
1350 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1351 l_cnr_rec cnr_rec_type := p_cnr_rec;
1352 l_def_cnr_rec cnr_rec_type;
1353 --------------------------------------------
1354 -- Set_Attributes for:OKL_CNSLD_AR_HDRS_B --
1355 --------------------------------------------
1356 FUNCTION Set_Attributes (
1357 p_cnr_rec IN cnr_rec_type,
1358 x_cnr_rec OUT NOCOPY cnr_rec_type
1359 ) RETURN VARCHAR2 IS
1360 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1361 BEGIN
1362 x_cnr_rec := p_cnr_rec;
1363 RETURN(l_return_status);
1364 END Set_Attributes;
1365 BEGIN
1366 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
1367 p_init_msg_list,
1368 '_PVT',
1369 x_return_status);
1370 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1371 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1372 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1373 RAISE Okc_Api.G_EXCEPTION_ERROR;
1374 END IF;
1375 --- Setting item attributes
1376 l_return_status := Set_Attributes(
1377 p_cnr_rec, -- IN
1378 l_cnr_rec); -- OUT
1379 --- If any errors happen abort API
1380 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1381 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1382 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1383 RAISE Okc_Api.G_EXCEPTION_ERROR;
1384 END IF;
1385 INSERT INTO OKL_CNSLD_AR_HDRS_B(
1386 id,
1387 consolidated_invoice_number,
1388 trx_status_code,
1389 currency_code,
1390 set_of_books_id,
1391 ibt_id,
1392 ixx_id,
1393 irm_id,
1394 inf_id,
1395 amount,
1396 date_consolidated,
1397 invoice_pull_yn,
1398 object_version_number,
1399 request_id,
1400 program_application_id,
1401 program_id,
1402 program_update_date,
1403 org_id,
1404 due_date,
1405 attribute_category,
1406 attribute1,
1407 attribute2,
1408 attribute3,
1409 attribute4,
1410 attribute5,
1411 attribute6,
1412 attribute7,
1413 attribute8,
1414 attribute9,
1415 attribute10,
1416 attribute11,
1417 attribute12,
1418 attribute13,
1419 attribute14,
1420 attribute15,
1421 created_by,
1422 creation_date,
1423 last_updated_by,
1424 last_update_date,
1425 last_update_login,
1426 legal_entity_id) -- for LE Uptake project 08-11-2006
1427 VALUES (
1428 l_cnr_rec.id,
1429 l_cnr_rec.consolidated_invoice_number,
1430 l_cnr_rec.trx_status_code,
1431 l_cnr_rec.currency_code,
1432 l_cnr_rec.set_of_books_id,
1433 l_cnr_rec.ibt_id,
1434 l_cnr_rec.ixx_id,
1435 l_cnr_rec.irm_id,
1436 l_cnr_rec.inf_id,
1437 l_cnr_rec.amount,
1438 l_cnr_rec.date_consolidated,
1439 l_cnr_rec.invoice_pull_yn,
1440 l_cnr_rec.object_version_number,
1441 l_cnr_rec.request_id,
1442 l_cnr_rec.program_application_id,
1443 l_cnr_rec.program_id,
1447 l_cnr_rec.attribute_category,
1444 l_cnr_rec.program_update_date,
1445 l_cnr_rec.org_id,
1446 l_cnr_rec.due_date,
1448 l_cnr_rec.attribute1,
1449 l_cnr_rec.attribute2,
1450 l_cnr_rec.attribute3,
1451 l_cnr_rec.attribute4,
1452 l_cnr_rec.attribute5,
1453 l_cnr_rec.attribute6,
1454 l_cnr_rec.attribute7,
1455 l_cnr_rec.attribute8,
1456 l_cnr_rec.attribute9,
1457 l_cnr_rec.attribute10,
1458 l_cnr_rec.attribute11,
1459 l_cnr_rec.attribute12,
1460 l_cnr_rec.attribute13,
1461 l_cnr_rec.attribute14,
1462 l_cnr_rec.attribute15,
1463 l_cnr_rec.created_by,
1464 l_cnr_rec.creation_date,
1465 l_cnr_rec.last_updated_by,
1466 l_cnr_rec.last_update_date,
1467 l_cnr_rec.last_update_login,
1468 l_cnr_rec.legal_entity_id); -- for LE Uptake project 08-11-2006
1469 -- Set OUT values
1470 x_cnr_rec := l_cnr_rec;
1471 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1472 EXCEPTION
1473 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
1474 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
1475 (
1476 l_api_name,
1477 G_PKG_NAME,
1478 'OKC_API.G_RET_STS_ERROR',
1479 x_msg_count,
1480 x_msg_data,
1481 '_PVT'
1482 );
1483 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1484 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1485 (
1486 l_api_name,
1487 G_PKG_NAME,
1488 'OKC_API.G_RET_STS_UNEXP_ERROR',
1489 x_msg_count,
1490 x_msg_data,
1491 '_PVT'
1492 );
1493 WHEN OTHERS THEN
1494 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1495 (
1496 l_api_name,
1497 G_PKG_NAME,
1498 'OTHERS',
1499 x_msg_count,
1500 x_msg_data,
1501 '_PVT'
1502 );
1503 END insert_row;
1504 -----------------------------------------
1505 -- insert_row for:OKL_CNSLD_AR_HDRS_TL --
1506 -----------------------------------------
1507 PROCEDURE insert_row(
1508 p_init_msg_list IN VARCHAR2,
1509 x_return_status OUT NOCOPY VARCHAR2,
1510 x_msg_count OUT NOCOPY NUMBER,
1511 x_msg_data OUT NOCOPY VARCHAR2,
1512 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type,
1513 x_okl_cnsld_ar_hdrs_tl_rec OUT NOCOPY okl_cnsld_ar_hdrs_tl_rec_type) IS
1514
1515 l_api_version CONSTANT NUMBER := 1;
1516 l_api_name CONSTANT VARCHAR2(30) := 'TL_insert_row';
1517 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1518 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type := p_okl_cnsld_ar_hdrs_tl_rec;
1519 ldefoklcnsldarhdrstlrec okl_cnsld_ar_hdrs_tl_rec_type;
1520 CURSOR get_languages IS
1521 SELECT *
1522 FROM FND_LANGUAGES
1523 WHERE INSTALLED_FLAG IN ('I', 'B');
1524 ---------------------------------------------
1525 -- Set_Attributes for:OKL_CNSLD_AR_HDRS_TL --
1526 ---------------------------------------------
1527 FUNCTION Set_Attributes (
1528 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type,
1529 x_okl_cnsld_ar_hdrs_tl_rec OUT NOCOPY okl_cnsld_ar_hdrs_tl_rec_type
1530 ) RETURN VARCHAR2 IS
1531 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1532 BEGIN
1533 x_okl_cnsld_ar_hdrs_tl_rec := p_okl_cnsld_ar_hdrs_tl_rec;
1534 x_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE := USERENV('LANG');
1535 x_okl_cnsld_ar_hdrs_tl_rec.SOURCE_LANG := USERENV('LANG');
1536 RETURN(l_return_status);
1537 END Set_Attributes;
1538 BEGIN
1539 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
1540 p_init_msg_list,
1541 '_PVT',
1542 x_return_status);
1543 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1544 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1545 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1546 RAISE Okc_Api.G_EXCEPTION_ERROR;
1547 END IF;
1548 --- Setting item attributes
1549 l_return_status := Set_Attributes(
1550 p_okl_cnsld_ar_hdrs_tl_rec, -- IN
1551 l_okl_cnsld_ar_hdrs_tl_rec); -- OUT
1552 --- If any errors happen abort API
1553 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1554 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1555 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1556 RAISE Okc_Api.G_EXCEPTION_ERROR;
1557 END IF;
1558 FOR l_lang_rec IN get_languages LOOP
1559 l_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE := l_lang_rec.language_code;
1560 INSERT INTO OKL_CNSLD_AR_HDRS_TL(
1561 id,
1562 LANGUAGE,
1563 source_lang,
1564 sfwt_flag,
1565 private_label_logo_url,
1566 created_by,
1567 creation_date,
1568 last_updated_by,
1569 last_update_date,
1570 last_update_login)
1571 VALUES (
1572 l_okl_cnsld_ar_hdrs_tl_rec.id,
1573 l_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE,
1577 l_okl_cnsld_ar_hdrs_tl_rec.created_by,
1574 l_okl_cnsld_ar_hdrs_tl_rec.source_lang,
1575 l_okl_cnsld_ar_hdrs_tl_rec.sfwt_flag,
1576 l_okl_cnsld_ar_hdrs_tl_rec.private_label_logo_url,
1578 l_okl_cnsld_ar_hdrs_tl_rec.creation_date,
1579 l_okl_cnsld_ar_hdrs_tl_rec.last_updated_by,
1580 l_okl_cnsld_ar_hdrs_tl_rec.last_update_date,
1581 l_okl_cnsld_ar_hdrs_tl_rec.last_update_login);
1582 END LOOP;
1583 -- Set OUT values
1584 x_okl_cnsld_ar_hdrs_tl_rec := l_okl_cnsld_ar_hdrs_tl_rec;
1585 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1586 EXCEPTION
1587 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
1588 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
1589 (
1590 l_api_name,
1591 G_PKG_NAME,
1592 'OKC_API.G_RET_STS_ERROR',
1593 x_msg_count,
1594 x_msg_data,
1595 '_PVT'
1596 );
1597 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1598 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1599 (
1600 l_api_name,
1601 G_PKG_NAME,
1602 'OKC_API.G_RET_STS_UNEXP_ERROR',
1603 x_msg_count,
1604 x_msg_data,
1605 '_PVT'
1606 );
1607 WHEN OTHERS THEN
1608 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1609 (
1610 l_api_name,
1611 G_PKG_NAME,
1612 'OTHERS',
1613 x_msg_count,
1614 x_msg_data,
1615 '_PVT'
1616 );
1617 END insert_row;
1618 ----------------------------------------
1619 -- insert_row for:OKL_CNSLD_AR_HDRS_V --
1620 ----------------------------------------
1621 PROCEDURE insert_row(
1622 p_api_version IN NUMBER,
1623 p_init_msg_list IN VARCHAR2,
1624 x_return_status OUT NOCOPY VARCHAR2,
1625 x_msg_count OUT NOCOPY NUMBER,
1626 x_msg_data OUT NOCOPY VARCHAR2,
1627 p_cnrv_rec IN cnrv_rec_type,
1628 x_cnrv_rec OUT NOCOPY cnrv_rec_type) IS
1629
1630 l_api_version CONSTANT NUMBER := 1;
1631 l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1632 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1633 l_cnrv_rec cnrv_rec_type;
1634 l_def_cnrv_rec cnrv_rec_type;
1635 l_cnr_rec cnr_rec_type;
1636 lx_cnr_rec cnr_rec_type;
1637 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
1638 lx_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
1639 -------------------------------
1640 -- FUNCTION fill_who_columns --
1641 -------------------------------
1642 FUNCTION fill_who_columns (
1643 p_cnrv_rec IN cnrv_rec_type
1644 ) RETURN cnrv_rec_type IS
1645 l_cnrv_rec cnrv_rec_type := p_cnrv_rec;
1646 BEGIN
1647 l_cnrv_rec.CREATION_DATE := SYSDATE;
1648 l_cnrv_rec.CREATED_BY := Fnd_Global.USER_ID;
1649 l_cnrv_rec.LAST_UPDATE_DATE := SYSDATE;
1650 l_cnrv_rec.LAST_UPDATED_BY := Fnd_Global.USER_ID;
1651 l_cnrv_rec.LAST_UPDATE_LOGIN := Fnd_Global.LOGIN_ID;
1652 RETURN(l_cnrv_rec);
1653 END fill_who_columns;
1654 --------------------------------------------
1655 -- Set_Attributes for:OKL_CNSLD_AR_HDRS_V --
1656 --------------------------------------------
1657 FUNCTION Set_Attributes (
1658 p_cnrv_rec IN cnrv_rec_type,
1659 x_cnrv_rec OUT NOCOPY cnrv_rec_type
1660 ) RETURN VARCHAR2 IS
1661 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1662 BEGIN
1663 x_cnrv_rec := p_cnrv_rec;
1664 x_cnrv_rec.OBJECT_VERSION_NUMBER := 1;
1665 x_cnrv_rec.SFWT_FLAG := 'N';
1666
1667 IF (x_cnrv_rec.request_id IS NULL OR x_cnrv_rec.request_id = Okl_Api.G_MISS_NUM) THEN
1668 SELECT
1669 DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
1670 DECODE(Fnd_Global.PROG_APPL_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
1671 DECODE(Fnd_Global.CONC_PROGRAM_ID,-1,NULL,Fnd_Global.CONC_PROGRAM_ID),
1672 DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,SYSDATE)
1673 INTO
1674 x_cnrv_rec.request_id,
1675 x_cnrv_rec.program_application_id,
1676 x_cnrv_rec.program_id,
1677 x_cnrv_rec.program_update_date
1678 FROM dual;
1679 END IF;
1680
1681 RETURN(l_return_status);
1682 END Set_Attributes;
1683 BEGIN
1684 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
1685 G_PKG_NAME,
1686 p_init_msg_list,
1687 l_api_version,
1688 p_api_version,
1689 '_PVT',
1690 x_return_status);
1691 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1692 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1693 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1694 RAISE Okc_Api.G_EXCEPTION_ERROR;
1695 END IF;
1696 l_cnrv_rec := null_out_defaults(p_cnrv_rec);
1697 -- Set primary key value
1698 l_cnrv_rec.ID := get_seq_id;
1699 --- Setting item attributes
1703 --- If any errors happen abort API
1700 l_return_status := Set_Attributes(
1701 l_cnrv_rec, -- IN
1702 l_def_cnrv_rec); -- OUT
1704 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1705 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1706 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1707 RAISE Okc_Api.G_EXCEPTION_ERROR;
1708 END IF;
1709 l_def_cnrv_rec := fill_who_columns(l_def_cnrv_rec);
1710 --- Validate all non-missing attributes (Item Level Validation)
1711 l_return_status := Validate_Attributes(l_def_cnrv_rec);
1712 --- If any errors happen abort API
1713 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1714 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1715 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1716 RAISE Okc_Api.G_EXCEPTION_ERROR;
1717 END IF;
1718 l_return_status := Validate_Record(l_def_cnrv_rec);
1719 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1720 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1721 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1722 RAISE Okc_Api.G_EXCEPTION_ERROR;
1723 END IF;
1724 --------------------------------------
1725 -- Move VIEW record to "Child" records
1726 --------------------------------------
1727 migrate(l_def_cnrv_rec, l_cnr_rec);
1728 migrate(l_def_cnrv_rec, l_okl_cnsld_ar_hdrs_tl_rec);
1729 --------------------------------------------
1730 -- Call the INSERT_ROW for each child record
1731 --------------------------------------------
1732 insert_row(
1733 p_init_msg_list,
1734 x_return_status,
1735 x_msg_count,
1736 x_msg_data,
1737 l_cnr_rec,
1738 lx_cnr_rec
1739 );
1740 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1741 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1742 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1743 RAISE Okc_Api.G_EXCEPTION_ERROR;
1744 END IF;
1745 migrate(lx_cnr_rec, l_def_cnrv_rec);
1746 insert_row(
1747 p_init_msg_list,
1748 x_return_status,
1749 x_msg_count,
1750 x_msg_data,
1751 l_okl_cnsld_ar_hdrs_tl_rec,
1752 lx_okl_cnsld_ar_hdrs_tl_rec
1753 );
1754 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1755 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1756 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1757 RAISE Okc_Api.G_EXCEPTION_ERROR;
1758 END IF;
1759 migrate(lx_okl_cnsld_ar_hdrs_tl_rec, l_def_cnrv_rec);
1760 -- Set OUT values
1761 x_cnrv_rec := l_def_cnrv_rec;
1762 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1763 EXCEPTION
1764 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
1765 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
1766 (
1767 l_api_name,
1768 G_PKG_NAME,
1769 'OKC_API.G_RET_STS_ERROR',
1770 x_msg_count,
1771 x_msg_data,
1772 '_PVT'
1773 );
1774 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1775 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1776 (
1777 l_api_name,
1778 G_PKG_NAME,
1779 'OKC_API.G_RET_STS_UNEXP_ERROR',
1780 x_msg_count,
1781 x_msg_data,
1782 '_PVT'
1783 );
1784 WHEN OTHERS THEN
1785 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1786 (
1787 l_api_name,
1788 G_PKG_NAME,
1789 'OTHERS',
1790 x_msg_count,
1791 x_msg_data,
1792 '_PVT'
1793 );
1794 END insert_row;
1795 ----------------------------------------
1796 -- PL/SQL TBL insert_row for:CNRV_TBL --
1797 ----------------------------------------
1798 PROCEDURE insert_row(
1799 p_api_version IN NUMBER,
1800 p_init_msg_list IN VARCHAR2,
1801 x_return_status OUT NOCOPY VARCHAR2,
1802 x_msg_count OUT NOCOPY NUMBER,
1803 x_msg_data OUT NOCOPY VARCHAR2,
1804 p_cnrv_tbl IN cnrv_tbl_type,
1805 x_cnrv_tbl OUT NOCOPY cnrv_tbl_type) IS
1806
1807 l_api_version CONSTANT NUMBER := 1;
1808 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1809 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1810 i NUMBER := 0;
1811 BEGIN
1812 Okc_Api.init_msg_list(p_init_msg_list);
1813 -- Make sure PL/SQL table has records in it before passing
1814 IF (p_cnrv_tbl.COUNT > 0) THEN
1815 i := p_cnrv_tbl.FIRST;
1816 LOOP
1817 insert_row (
1818 p_api_version => p_api_version,
1819 p_init_msg_list => Okc_Api.G_FALSE,
1820 x_return_status => x_return_status,
1821 x_msg_count => x_msg_count,
1822 x_msg_data => x_msg_data,
1823 p_cnrv_rec => p_cnrv_tbl(i),
1824 x_cnrv_rec => x_cnrv_tbl(i));
1825 EXIT WHEN (i = p_cnrv_tbl.LAST);
1826 i := p_cnrv_tbl.NEXT(i);
1827 END LOOP;
1828 END IF;
1829 EXCEPTION
1830 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
1834 G_PKG_NAME,
1831 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
1832 (
1833 l_api_name,
1835 'OKC_API.G_RET_STS_ERROR',
1836 x_msg_count,
1837 x_msg_data,
1838 '_PVT'
1839 );
1840 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1841 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1842 (
1843 l_api_name,
1844 G_PKG_NAME,
1845 'OKC_API.G_RET_STS_UNEXP_ERROR',
1846 x_msg_count,
1847 x_msg_data,
1848 '_PVT'
1849 );
1850 WHEN OTHERS THEN
1851 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1852 (
1853 l_api_name,
1854 G_PKG_NAME,
1855 'OTHERS',
1856 x_msg_count,
1857 x_msg_data,
1858 '_PVT'
1859 );
1860 END insert_row;
1861
1862 ---------------------------------------------------------------------------
1863 -- PROCEDURE lock_row
1864 ---------------------------------------------------------------------------
1865 --------------------------------------
1866 -- lock_row for:OKL_CNSLD_AR_HDRS_B --
1867 --------------------------------------
1868 PROCEDURE lock_row(
1869 p_init_msg_list IN VARCHAR2,
1870 x_return_status OUT NOCOPY VARCHAR2,
1871 x_msg_count OUT NOCOPY NUMBER,
1872 x_msg_data OUT NOCOPY VARCHAR2,
1873 p_cnr_rec IN cnr_rec_type) IS
1874
1875 E_Resource_Busy EXCEPTION;
1876 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1877 CURSOR lock_csr (p_cnr_rec IN cnr_rec_type) IS
1878 SELECT OBJECT_VERSION_NUMBER
1879 FROM OKL_CNSLD_AR_HDRS_B
1880 WHERE ID = p_cnr_rec.id
1881 AND OBJECT_VERSION_NUMBER = p_cnr_rec.object_version_number
1882 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
1883
1884 CURSOR lchk_csr (p_cnr_rec IN cnr_rec_type) IS
1885 SELECT OBJECT_VERSION_NUMBER
1886 FROM OKL_CNSLD_AR_HDRS_B
1887 WHERE ID = p_cnr_rec.id;
1888 l_api_version CONSTANT NUMBER := 1;
1889 l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
1890 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1891 l_object_version_number OKL_CNSLD_AR_HDRS_B.OBJECT_VERSION_NUMBER%TYPE;
1892 lc_object_version_number OKL_CNSLD_AR_HDRS_B.OBJECT_VERSION_NUMBER%TYPE;
1893 l_row_notfound BOOLEAN := FALSE;
1894 lc_row_notfound BOOLEAN := FALSE;
1895 BEGIN
1896 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
1897 p_init_msg_list,
1898 '_PVT',
1899 x_return_status);
1900 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
1901 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1902 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
1903 RAISE Okc_Api.G_EXCEPTION_ERROR;
1904 END IF;
1905 BEGIN
1906 OPEN lock_csr(p_cnr_rec);
1907 FETCH lock_csr INTO l_object_version_number;
1908 l_row_notfound := lock_csr%NOTFOUND;
1909 CLOSE lock_csr;
1910 EXCEPTION
1911 WHEN E_Resource_Busy THEN
1912 IF (lock_csr%ISOPEN) THEN
1913 CLOSE lock_csr;
1914 END IF;
1915 Okc_Api.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1916 RAISE App_Exceptions.RECORD_LOCK_EXCEPTION;
1917 END;
1918
1919 IF ( l_row_notfound ) THEN
1920 OPEN lchk_csr(p_cnr_rec);
1921 FETCH lchk_csr INTO lc_object_version_number;
1922 lc_row_notfound := lchk_csr%NOTFOUND;
1923 CLOSE lchk_csr;
1924 END IF;
1925 IF (lc_row_notfound) THEN
1926 Okc_Api.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1927 RAISE Okc_Api.G_EXCEPTION_ERROR;
1928 ELSIF lc_object_version_number > p_cnr_rec.object_version_number THEN
1929 Okc_Api.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1930 RAISE Okc_Api.G_EXCEPTION_ERROR;
1931 ELSIF lc_object_version_number <> p_cnr_rec.object_version_number THEN
1932 Okc_Api.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1933 RAISE Okc_Api.G_EXCEPTION_ERROR;
1934 ELSIF lc_object_version_number = -1 THEN
1935 Okc_Api.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1936 RAISE Okc_Api.G_EXCEPTION_ERROR;
1937 END IF;
1938 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1939 EXCEPTION
1940 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
1941 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
1942 (
1943 l_api_name,
1944 G_PKG_NAME,
1945 'OKC_API.G_RET_STS_ERROR',
1946 x_msg_count,
1947 x_msg_data,
1948 '_PVT'
1949 );
1950 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1951 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1952 (
1953 l_api_name,
1954 G_PKG_NAME,
1955 'OKC_API.G_RET_STS_UNEXP_ERROR',
1956 x_msg_count,
1957 x_msg_data,
1958 '_PVT'
1959 );
1960 WHEN OTHERS THEN
1961 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
1962 (
1963 l_api_name,
1964 G_PKG_NAME,
1965 'OTHERS',
1966 x_msg_count,
1970 END lock_row;
1967 x_msg_data,
1968 '_PVT'
1969 );
1971 ---------------------------------------
1972 -- lock_row for:OKL_CNSLD_AR_HDRS_TL --
1973 ---------------------------------------
1974 PROCEDURE lock_row(
1975 p_init_msg_list IN VARCHAR2,
1976 x_return_status OUT NOCOPY VARCHAR2,
1977 x_msg_count OUT NOCOPY NUMBER,
1978 x_msg_data OUT NOCOPY VARCHAR2,
1979 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type) IS
1980
1981 E_Resource_Busy EXCEPTION;
1982 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1983 CURSOR lock_csr (p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type) IS
1984 SELECT *
1985 FROM OKL_CNSLD_AR_HDRS_TL
1986 WHERE ID = p_okl_cnsld_ar_hdrs_tl_rec.id
1987 FOR UPDATE NOWAIT;
1988
1989 l_api_version CONSTANT NUMBER := 1;
1990 l_api_name CONSTANT VARCHAR2(30) := 'TL_lock_row';
1991 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
1992 l_lock_var lock_csr%ROWTYPE;
1993 l_row_notfound BOOLEAN := FALSE;
1994 lc_row_notfound BOOLEAN := FALSE;
1995 BEGIN
1996 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
1997 p_init_msg_list,
1998 '_PVT',
1999 x_return_status);
2000 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2001 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2002 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2003 RAISE Okc_Api.G_EXCEPTION_ERROR;
2004 END IF;
2005 BEGIN
2006 OPEN lock_csr(p_okl_cnsld_ar_hdrs_tl_rec);
2007 FETCH lock_csr INTO l_lock_var;
2008 l_row_notfound := lock_csr%NOTFOUND;
2009 CLOSE lock_csr;
2010 EXCEPTION
2011 WHEN E_Resource_Busy THEN
2012 IF (lock_csr%ISOPEN) THEN
2013 CLOSE lock_csr;
2014 END IF;
2015 Okc_Api.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
2016 RAISE App_Exceptions.RECORD_LOCK_EXCEPTION;
2017 END;
2018
2019 IF ( l_row_notfound ) THEN
2020 Okc_Api.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
2021 RAISE Okc_Api.G_EXCEPTION_ERROR;
2022 END IF;
2023 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2024 EXCEPTION
2025 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
2026 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
2027 (
2028 l_api_name,
2029 G_PKG_NAME,
2030 'OKC_API.G_RET_STS_ERROR',
2031 x_msg_count,
2032 x_msg_data,
2033 '_PVT'
2034 );
2035 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2036 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2037 (
2038 l_api_name,
2039 G_PKG_NAME,
2040 'OKC_API.G_RET_STS_UNEXP_ERROR',
2041 x_msg_count,
2042 x_msg_data,
2043 '_PVT'
2044 );
2045 WHEN OTHERS THEN
2046 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2047 (
2048 l_api_name,
2049 G_PKG_NAME,
2050 'OTHERS',
2051 x_msg_count,
2052 x_msg_data,
2053 '_PVT'
2054 );
2055 END lock_row;
2056 --------------------------------------
2057 -- lock_row for:OKL_CNSLD_AR_HDRS_V --
2058 --------------------------------------
2059 PROCEDURE lock_row(
2060 p_api_version IN NUMBER,
2061 p_init_msg_list IN VARCHAR2,
2062 x_return_status OUT NOCOPY VARCHAR2,
2063 x_msg_count OUT NOCOPY NUMBER,
2064 x_msg_data OUT NOCOPY VARCHAR2,
2065 p_cnrv_rec IN cnrv_rec_type) IS
2066
2067 l_api_version CONSTANT NUMBER := 1;
2068 l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
2069 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2070 l_cnr_rec cnr_rec_type;
2071 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
2072 BEGIN
2073 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
2074 G_PKG_NAME,
2075 p_init_msg_list,
2076 l_api_version,
2077 p_api_version,
2078 '_PVT',
2079 x_return_status);
2080 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2081 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2082 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2083 RAISE Okc_Api.G_EXCEPTION_ERROR;
2084 END IF;
2085 --------------------------------------
2086 -- Move VIEW record to "Child" records
2087 --------------------------------------
2088 migrate(p_cnrv_rec, l_cnr_rec);
2089 migrate(p_cnrv_rec, l_okl_cnsld_ar_hdrs_tl_rec);
2090 --------------------------------------------
2091 -- Call the LOCK_ROW for each child record
2092 --------------------------------------------
2093 lock_row(
2097 x_msg_data,
2094 p_init_msg_list,
2095 x_return_status,
2096 x_msg_count,
2098 l_cnr_rec
2099 );
2100 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2101 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2102 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2103 RAISE Okc_Api.G_EXCEPTION_ERROR;
2104 END IF;
2105 lock_row(
2106 p_init_msg_list,
2107 x_return_status,
2108 x_msg_count,
2109 x_msg_data,
2110 l_okl_cnsld_ar_hdrs_tl_rec
2111 );
2112 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2113 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2114 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2115 RAISE Okc_Api.G_EXCEPTION_ERROR;
2116 END IF;
2117 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2118 EXCEPTION
2119 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
2120 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
2121 (
2122 l_api_name,
2123 G_PKG_NAME,
2124 'OKC_API.G_RET_STS_ERROR',
2125 x_msg_count,
2126 x_msg_data,
2127 '_PVT'
2128 );
2129 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2130 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2131 (
2132 l_api_name,
2133 G_PKG_NAME,
2134 'OKC_API.G_RET_STS_UNEXP_ERROR',
2135 x_msg_count,
2136 x_msg_data,
2137 '_PVT'
2138 );
2139 WHEN OTHERS THEN
2140 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2141 (
2142 l_api_name,
2143 G_PKG_NAME,
2144 'OTHERS',
2145 x_msg_count,
2146 x_msg_data,
2147 '_PVT'
2148 );
2149 END lock_row;
2150 --------------------------------------
2151 -- PL/SQL TBL lock_row for:CNRV_TBL --
2152 --------------------------------------
2153 PROCEDURE lock_row(
2154 p_api_version IN NUMBER,
2155 p_init_msg_list IN VARCHAR2,
2156 x_return_status OUT NOCOPY VARCHAR2,
2157 x_msg_count OUT NOCOPY NUMBER,
2158 x_msg_data OUT NOCOPY VARCHAR2,
2159 p_cnrv_tbl IN cnrv_tbl_type) IS
2160
2161 l_api_version CONSTANT NUMBER := 1;
2162 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
2163 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2164 i NUMBER := 0;
2165 BEGIN
2166 Okc_Api.init_msg_list(p_init_msg_list);
2167 -- Make sure PL/SQL table has records in it before passing
2168 IF (p_cnrv_tbl.COUNT > 0) THEN
2169 i := p_cnrv_tbl.FIRST;
2170 LOOP
2171 lock_row (
2172 p_api_version => p_api_version,
2173 p_init_msg_list => Okc_Api.G_FALSE,
2174 x_return_status => x_return_status,
2175 x_msg_count => x_msg_count,
2176 x_msg_data => x_msg_data,
2177 p_cnrv_rec => p_cnrv_tbl(i));
2178 EXIT WHEN (i = p_cnrv_tbl.LAST);
2179 i := p_cnrv_tbl.NEXT(i);
2180 END LOOP;
2181 END IF;
2182 EXCEPTION
2183 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
2184 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
2185 (
2186 l_api_name,
2187 G_PKG_NAME,
2188 'OKC_API.G_RET_STS_ERROR',
2189 x_msg_count,
2190 x_msg_data,
2191 '_PVT'
2192 );
2193 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2194 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2195 (
2196 l_api_name,
2197 G_PKG_NAME,
2198 'OKC_API.G_RET_STS_UNEXP_ERROR',
2199 x_msg_count,
2200 x_msg_data,
2201 '_PVT'
2202 );
2203 WHEN OTHERS THEN
2204 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2205 (
2206 l_api_name,
2207 G_PKG_NAME,
2208 'OTHERS',
2209 x_msg_count,
2210 x_msg_data,
2211 '_PVT'
2212 );
2213 END lock_row;
2214
2215 ---------------------------------------------------------------------------
2216 -- PROCEDURE update_row
2217 ---------------------------------------------------------------------------
2218 ----------------------------------------
2219 -- update_row for:OKL_CNSLD_AR_HDRS_B --
2220 ----------------------------------------
2221 PROCEDURE update_row(
2222 p_init_msg_list IN VARCHAR2,
2223 x_return_status OUT NOCOPY VARCHAR2,
2224 x_msg_count OUT NOCOPY NUMBER,
2225 x_msg_data OUT NOCOPY VARCHAR2,
2226 p_cnr_rec IN cnr_rec_type,
2227 x_cnr_rec OUT NOCOPY cnr_rec_type) IS
2228
2229 l_api_version CONSTANT NUMBER := 1;
2230 l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
2231 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2232 l_cnr_rec cnr_rec_type := p_cnr_rec;
2233 l_def_cnr_rec cnr_rec_type;
2234 l_row_notfound BOOLEAN := TRUE;
2238 FUNCTION populate_new_record (
2235 ----------------------------------
2236 -- FUNCTION populate_new_record --
2237 ----------------------------------
2239 p_cnr_rec IN cnr_rec_type,
2240 x_cnr_rec OUT NOCOPY cnr_rec_type
2241 ) RETURN VARCHAR2 IS
2242 l_cnr_rec cnr_rec_type;
2243 l_row_notfound BOOLEAN := TRUE;
2244 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2245 BEGIN
2246 x_cnr_rec := p_cnr_rec;
2247 -- Get current database values
2248 l_cnr_rec := get_rec(p_cnr_rec, l_row_notfound);
2249 IF (l_row_notfound) THEN
2250 l_return_status := Okc_Api.G_RET_STS_UNEXP_ERROR;
2251 END IF;
2252 IF (x_cnr_rec.id = Okc_Api.G_MISS_NUM)
2253 THEN
2254 x_cnr_rec.id := l_cnr_rec.id;
2255 END IF;
2256 IF (x_cnr_rec.consolidated_invoice_number = Okc_Api.G_MISS_CHAR)
2257 THEN
2258 x_cnr_rec.consolidated_invoice_number := l_cnr_rec.consolidated_invoice_number;
2259 END IF;
2260 IF (x_cnr_rec.trx_status_code = Okc_Api.G_MISS_CHAR)
2261 THEN
2262 x_cnr_rec.trx_status_code := l_cnr_rec.trx_status_code;
2263 END IF;
2264 IF (x_cnr_rec.currency_code = Okc_Api.G_MISS_CHAR)
2265 THEN
2266 x_cnr_rec.currency_code := l_cnr_rec.currency_code;
2267 END IF;
2268 IF (x_cnr_rec.set_of_books_id = Okc_Api.G_MISS_NUM)
2269 THEN
2270 x_cnr_rec.set_of_books_id := l_cnr_rec.set_of_books_id;
2271 END IF;
2272 IF (x_cnr_rec.ibt_id = Okc_Api.G_MISS_NUM)
2273 THEN
2274 x_cnr_rec.ibt_id := l_cnr_rec.ibt_id;
2275 END IF;
2276 IF (x_cnr_rec.ixx_id = Okc_Api.G_MISS_NUM)
2277 THEN
2278 x_cnr_rec.ixx_id := l_cnr_rec.ixx_id;
2279 END IF;
2280 IF (x_cnr_rec.irm_id = Okc_Api.G_MISS_NUM)
2281 THEN
2282 x_cnr_rec.irm_id := l_cnr_rec.irm_id;
2283 END IF;
2284 IF (x_cnr_rec.inf_id = Okc_Api.G_MISS_NUM)
2285 THEN
2286 x_cnr_rec.inf_id := l_cnr_rec.inf_id;
2287 END IF;
2288 IF (x_cnr_rec.amount = Okc_Api.G_MISS_NUM)
2289 THEN
2290 x_cnr_rec.amount := l_cnr_rec.amount;
2291 END IF;
2292 IF (x_cnr_rec.date_consolidated = Okc_Api.G_MISS_DATE)
2293 THEN
2294 x_cnr_rec.date_consolidated := l_cnr_rec.date_consolidated;
2295 END IF;
2296 IF (x_cnr_rec.invoice_pull_yn = Okc_Api.G_MISS_CHAR)
2297 THEN
2298 x_cnr_rec.invoice_pull_yn := l_cnr_rec.invoice_pull_yn;
2299 END IF;
2300 IF (x_cnr_rec.object_version_number = Okc_Api.G_MISS_NUM)
2301 THEN
2302 x_cnr_rec.object_version_number := l_cnr_rec.object_version_number;
2303 END IF;
2304 IF (x_cnr_rec.request_id = Okc_Api.G_MISS_NUM)
2305 THEN
2306 x_cnr_rec.request_id := l_cnr_rec.request_id;
2307 END IF;
2308 IF (x_cnr_rec.program_application_id = Okc_Api.G_MISS_NUM)
2309 THEN
2310 x_cnr_rec.program_application_id := l_cnr_rec.program_application_id;
2311 END IF;
2312 IF (x_cnr_rec.program_id = Okc_Api.G_MISS_NUM)
2313 THEN
2314 x_cnr_rec.program_id := l_cnr_rec.program_id;
2315 END IF;
2316 IF (x_cnr_rec.program_update_date = Okc_Api.G_MISS_DATE)
2317 THEN
2318 x_cnr_rec.program_update_date := l_cnr_rec.program_update_date;
2319 END IF;
2320 IF (x_cnr_rec.org_id = Okc_Api.G_MISS_NUM)
2321 THEN
2322 x_cnr_rec.org_id := l_cnr_rec.org_id;
2323 END IF;
2324 IF (x_cnr_rec.due_date = Okc_Api.G_MISS_DATE)
2325 THEN
2326 x_cnr_rec.due_date := l_cnr_rec.due_date;
2327 END IF;
2328 IF (x_cnr_rec.attribute_category = Okc_Api.G_MISS_CHAR)
2329 THEN
2330 x_cnr_rec.attribute_category := l_cnr_rec.attribute_category;
2331 END IF;
2332 IF (x_cnr_rec.attribute1 = Okc_Api.G_MISS_CHAR)
2333 THEN
2334 x_cnr_rec.attribute1 := l_cnr_rec.attribute1;
2335 END IF;
2336 IF (x_cnr_rec.attribute2 = Okc_Api.G_MISS_CHAR)
2337 THEN
2338 x_cnr_rec.attribute2 := l_cnr_rec.attribute2;
2339 END IF;
2340 IF (x_cnr_rec.attribute3 = Okc_Api.G_MISS_CHAR)
2341 THEN
2342 x_cnr_rec.attribute3 := l_cnr_rec.attribute3;
2343 END IF;
2344 IF (x_cnr_rec.attribute4 = Okc_Api.G_MISS_CHAR)
2345 THEN
2346 x_cnr_rec.attribute4 := l_cnr_rec.attribute4;
2347 END IF;
2348 IF (x_cnr_rec.attribute5 = Okc_Api.G_MISS_CHAR)
2349 THEN
2350 x_cnr_rec.attribute5 := l_cnr_rec.attribute5;
2351 END IF;
2352 IF (x_cnr_rec.attribute6 = Okc_Api.G_MISS_CHAR)
2353 THEN
2354 x_cnr_rec.attribute6 := l_cnr_rec.attribute6;
2355 END IF;
2356 IF (x_cnr_rec.attribute7 = Okc_Api.G_MISS_CHAR)
2357 THEN
2358 x_cnr_rec.attribute7 := l_cnr_rec.attribute7;
2359 END IF;
2360 IF (x_cnr_rec.attribute8 = Okc_Api.G_MISS_CHAR)
2361 THEN
2362 x_cnr_rec.attribute8 := l_cnr_rec.attribute8;
2363 END IF;
2364 IF (x_cnr_rec.attribute9 = Okc_Api.G_MISS_CHAR)
2365 THEN
2366 x_cnr_rec.attribute9 := l_cnr_rec.attribute9;
2367 END IF;
2368 IF (x_cnr_rec.attribute10 = Okc_Api.G_MISS_CHAR)
2369 THEN
2373 THEN
2370 x_cnr_rec.attribute10 := l_cnr_rec.attribute10;
2371 END IF;
2372 IF (x_cnr_rec.attribute11 = Okc_Api.G_MISS_CHAR)
2374 x_cnr_rec.attribute11 := l_cnr_rec.attribute11;
2375 END IF;
2376 IF (x_cnr_rec.attribute12 = Okc_Api.G_MISS_CHAR)
2377 THEN
2378 x_cnr_rec.attribute12 := l_cnr_rec.attribute12;
2379 END IF;
2380 IF (x_cnr_rec.attribute13 = Okc_Api.G_MISS_CHAR)
2381 THEN
2382 x_cnr_rec.attribute13 := l_cnr_rec.attribute13;
2383 END IF;
2384 IF (x_cnr_rec.attribute14 = Okc_Api.G_MISS_CHAR)
2385 THEN
2386 x_cnr_rec.attribute14 := l_cnr_rec.attribute14;
2387 END IF;
2388 IF (x_cnr_rec.attribute15 = Okc_Api.G_MISS_CHAR)
2389 THEN
2390 x_cnr_rec.attribute15 := l_cnr_rec.attribute15;
2391 END IF;
2392 IF (x_cnr_rec.created_by = Okc_Api.G_MISS_NUM)
2393 THEN
2394 x_cnr_rec.created_by := l_cnr_rec.created_by;
2395 END IF;
2396 IF (x_cnr_rec.creation_date = Okc_Api.G_MISS_DATE)
2397 THEN
2398 x_cnr_rec.creation_date := l_cnr_rec.creation_date;
2399 END IF;
2400 IF (x_cnr_rec.last_updated_by = Okc_Api.G_MISS_NUM)
2401 THEN
2402 x_cnr_rec.last_updated_by := l_cnr_rec.last_updated_by;
2403 END IF;
2404 IF (x_cnr_rec.last_update_date = Okc_Api.G_MISS_DATE)
2405 THEN
2406 x_cnr_rec.last_update_date := l_cnr_rec.last_update_date;
2407 END IF;
2408 IF (x_cnr_rec.last_update_login = Okc_Api.G_MISS_NUM)
2409 THEN
2410 x_cnr_rec.last_update_login := l_cnr_rec.last_update_login;
2411 END IF;
2412 -- for LE Uptake project 08-11-2006
2413 IF (x_cnr_rec.legal_entity_id = Okc_Api.G_MISS_NUM)
2414 THEN
2415 x_cnr_rec.legal_entity_id := l_cnr_rec.legal_entity_id;
2416 END IF;
2417 -- for LE Uptake project 08-11-2006
2418 RETURN(l_return_status);
2419 END populate_new_record;
2420 --------------------------------------------
2421 -- Set_Attributes for:OKL_CNSLD_AR_HDRS_B --
2422 --------------------------------------------
2423 FUNCTION Set_Attributes (
2424 p_cnr_rec IN cnr_rec_type,
2425 x_cnr_rec OUT NOCOPY cnr_rec_type
2426 ) RETURN VARCHAR2 IS
2427 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2428 BEGIN
2429 x_cnr_rec := p_cnr_rec;
2430 RETURN(l_return_status);
2431 END Set_Attributes;
2432 BEGIN
2433 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
2434 p_init_msg_list,
2435 '_PVT',
2436 x_return_status);
2437 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2438 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2439 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2440 RAISE Okc_Api.G_EXCEPTION_ERROR;
2441 END IF;
2442 --- Setting item attributes
2443 l_return_status := Set_Attributes(
2444 p_cnr_rec, -- IN
2445 l_cnr_rec); -- OUT
2446 --- If any errors happen abort API
2447 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2448 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2449 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2450 RAISE Okc_Api.G_EXCEPTION_ERROR;
2451 END IF;
2452 l_return_status := populate_new_record(l_cnr_rec, l_def_cnr_rec);
2453 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2454 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2455 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2456 RAISE Okc_Api.G_EXCEPTION_ERROR;
2457 END IF;
2458 UPDATE OKL_CNSLD_AR_HDRS_B
2459 SET CONSOLIDATED_INVOICE_NUMBER = l_def_cnr_rec.consolidated_invoice_number,
2460 TRX_STATUS_CODE = l_def_cnr_rec.trx_status_code,
2461 CURRENCY_CODE = l_def_cnr_rec.currency_code,
2462 SET_OF_BOOKS_ID = l_def_cnr_rec.set_of_books_id,
2463 IBT_ID = l_def_cnr_rec.ibt_id,
2464 IXX_ID = l_def_cnr_rec.ixx_id,
2465 IRM_ID = l_def_cnr_rec.irm_id,
2466 INF_ID = l_def_cnr_rec.inf_id,
2467 AMOUNT = l_def_cnr_rec.amount,
2468 DATE_CONSOLIDATED = l_def_cnr_rec.date_consolidated,
2469 INVOICE_PULL_YN = l_def_cnr_rec.invoice_pull_yn,
2470 OBJECT_VERSION_NUMBER = l_def_cnr_rec.object_version_number,
2471 REQUEST_ID = l_def_cnr_rec.request_id,
2472 PROGRAM_APPLICATION_ID = l_def_cnr_rec.program_application_id,
2473 PROGRAM_ID = l_def_cnr_rec.program_id,
2474 PROGRAM_UPDATE_DATE = l_def_cnr_rec.program_update_date,
2475 ORG_ID = l_def_cnr_rec.org_id,
2476 DUE_DATE = l_def_cnr_rec.due_date,
2477 ATTRIBUTE_CATEGORY = l_def_cnr_rec.attribute_category,
2478 ATTRIBUTE1 = l_def_cnr_rec.attribute1,
2479 ATTRIBUTE2 = l_def_cnr_rec.attribute2,
2480 ATTRIBUTE3 = l_def_cnr_rec.attribute3,
2481 ATTRIBUTE4 = l_def_cnr_rec.attribute4,
2482 ATTRIBUTE5 = l_def_cnr_rec.attribute5,
2483 ATTRIBUTE6 = l_def_cnr_rec.attribute6,
2484 ATTRIBUTE7 = l_def_cnr_rec.attribute7,
2485 ATTRIBUTE8 = l_def_cnr_rec.attribute8,
2486 ATTRIBUTE9 = l_def_cnr_rec.attribute9,
2487 ATTRIBUTE10 = l_def_cnr_rec.attribute10,
2488 ATTRIBUTE11 = l_def_cnr_rec.attribute11,
2492 ATTRIBUTE15 = l_def_cnr_rec.attribute15,
2489 ATTRIBUTE12 = l_def_cnr_rec.attribute12,
2490 ATTRIBUTE13 = l_def_cnr_rec.attribute13,
2491 ATTRIBUTE14 = l_def_cnr_rec.attribute14,
2493 CREATED_BY = l_def_cnr_rec.created_by,
2494 CREATION_DATE = l_def_cnr_rec.creation_date,
2495 LAST_UPDATED_BY = l_def_cnr_rec.last_updated_by,
2496 LAST_UPDATE_DATE = l_def_cnr_rec.last_update_date,
2497 LAST_UPDATE_LOGIN = l_def_cnr_rec.last_update_login,
2498 LEGAL_ENTITY_ID = l_def_cnr_rec.legal_entity_id -- for LE Uptake project 08-11-2006
2499 WHERE ID = l_def_cnr_rec.id;
2500
2501 x_cnr_rec := l_def_cnr_rec;
2502 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2503 EXCEPTION
2504 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
2505 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
2506 (
2507 l_api_name,
2508 G_PKG_NAME,
2509 'OKC_API.G_RET_STS_ERROR',
2510 x_msg_count,
2511 x_msg_data,
2512 '_PVT'
2513 );
2514 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2515 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2516 (
2517 l_api_name,
2518 G_PKG_NAME,
2519 'OKC_API.G_RET_STS_UNEXP_ERROR',
2520 x_msg_count,
2521 x_msg_data,
2522 '_PVT'
2523 );
2524 WHEN OTHERS THEN
2525 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2526 (
2527 l_api_name,
2528 G_PKG_NAME,
2529 'OTHERS',
2530 x_msg_count,
2531 x_msg_data,
2532 '_PVT'
2533 );
2534 END update_row;
2535 -----------------------------------------
2536 -- update_row for:OKL_CNSLD_AR_HDRS_TL --
2537 -----------------------------------------
2538 PROCEDURE update_row(
2539 p_init_msg_list IN VARCHAR2,
2540 x_return_status OUT NOCOPY VARCHAR2,
2541 x_msg_count OUT NOCOPY NUMBER,
2542 x_msg_data OUT NOCOPY VARCHAR2,
2543 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type,
2544 x_okl_cnsld_ar_hdrs_tl_rec OUT NOCOPY okl_cnsld_ar_hdrs_tl_rec_type) IS
2545
2546 l_api_version CONSTANT NUMBER := 1;
2547 l_api_name CONSTANT VARCHAR2(30) := 'TL_update_row';
2548 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2549 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type := p_okl_cnsld_ar_hdrs_tl_rec;
2550 ldefoklcnsldarhdrstlrec okl_cnsld_ar_hdrs_tl_rec_type;
2551 l_row_notfound BOOLEAN := TRUE;
2552 ----------------------------------
2553 -- FUNCTION populate_new_record --
2554 ----------------------------------
2555 FUNCTION populate_new_record (
2556 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type,
2557 x_okl_cnsld_ar_hdrs_tl_rec OUT NOCOPY okl_cnsld_ar_hdrs_tl_rec_type
2558 ) RETURN VARCHAR2 IS
2559 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
2560 l_row_notfound BOOLEAN := TRUE;
2561 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2562 BEGIN
2563 x_okl_cnsld_ar_hdrs_tl_rec := p_okl_cnsld_ar_hdrs_tl_rec;
2564 -- Get current database values
2565 l_okl_cnsld_ar_hdrs_tl_rec := get_rec(p_okl_cnsld_ar_hdrs_tl_rec, l_row_notfound);
2566 IF (l_row_notfound) THEN
2567 l_return_status := Okc_Api.G_RET_STS_UNEXP_ERROR;
2568 END IF;
2569 IF (x_okl_cnsld_ar_hdrs_tl_rec.id = Okc_Api.G_MISS_NUM)
2570 THEN
2571 x_okl_cnsld_ar_hdrs_tl_rec.id := l_okl_cnsld_ar_hdrs_tl_rec.id;
2572 END IF;
2573 IF (x_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE = Okc_Api.G_MISS_CHAR)
2574 THEN
2575 x_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE := l_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE;
2576 END IF;
2577 IF (x_okl_cnsld_ar_hdrs_tl_rec.source_lang = Okc_Api.G_MISS_CHAR)
2578 THEN
2579 x_okl_cnsld_ar_hdrs_tl_rec.source_lang := l_okl_cnsld_ar_hdrs_tl_rec.source_lang;
2580 END IF;
2581 IF (x_okl_cnsld_ar_hdrs_tl_rec.sfwt_flag = Okc_Api.G_MISS_CHAR)
2582 THEN
2583 x_okl_cnsld_ar_hdrs_tl_rec.sfwt_flag := l_okl_cnsld_ar_hdrs_tl_rec.sfwt_flag;
2584 END IF;
2585 IF (x_okl_cnsld_ar_hdrs_tl_rec.private_label_logo_url = Okc_Api.G_MISS_CHAR)
2586 THEN
2587 x_okl_cnsld_ar_hdrs_tl_rec.private_label_logo_url := l_okl_cnsld_ar_hdrs_tl_rec.private_label_logo_url;
2588 END IF;
2589 IF (x_okl_cnsld_ar_hdrs_tl_rec.created_by = Okc_Api.G_MISS_NUM)
2590 THEN
2591 x_okl_cnsld_ar_hdrs_tl_rec.created_by := l_okl_cnsld_ar_hdrs_tl_rec.created_by;
2592 END IF;
2593 IF (x_okl_cnsld_ar_hdrs_tl_rec.creation_date = Okc_Api.G_MISS_DATE)
2594 THEN
2595 x_okl_cnsld_ar_hdrs_tl_rec.creation_date := l_okl_cnsld_ar_hdrs_tl_rec.creation_date;
2596 END IF;
2597 IF (x_okl_cnsld_ar_hdrs_tl_rec.last_updated_by = Okc_Api.G_MISS_NUM)
2598 THEN
2599 x_okl_cnsld_ar_hdrs_tl_rec.last_updated_by := l_okl_cnsld_ar_hdrs_tl_rec.last_updated_by;
2600 END IF;
2601 IF (x_okl_cnsld_ar_hdrs_tl_rec.last_update_date = Okc_Api.G_MISS_DATE)
2602 THEN
2603 x_okl_cnsld_ar_hdrs_tl_rec.last_update_date := l_okl_cnsld_ar_hdrs_tl_rec.last_update_date;
2604 END IF;
2605 IF (x_okl_cnsld_ar_hdrs_tl_rec.last_update_login = Okc_Api.G_MISS_NUM)
2606 THEN
2610 END populate_new_record;
2607 x_okl_cnsld_ar_hdrs_tl_rec.last_update_login := l_okl_cnsld_ar_hdrs_tl_rec.last_update_login;
2608 END IF;
2609 RETURN(l_return_status);
2611 ---------------------------------------------
2612 -- Set_Attributes for:OKL_CNSLD_AR_HDRS_TL --
2613 ---------------------------------------------
2614 FUNCTION Set_Attributes (
2615 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type,
2616 x_okl_cnsld_ar_hdrs_tl_rec OUT NOCOPY okl_cnsld_ar_hdrs_tl_rec_type
2617 ) RETURN VARCHAR2 IS
2618 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2619 BEGIN
2620 x_okl_cnsld_ar_hdrs_tl_rec := p_okl_cnsld_ar_hdrs_tl_rec;
2621 x_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE := USERENV('LANG');
2622 x_okl_cnsld_ar_hdrs_tl_rec.SOURCE_LANG := USERENV('LANG');
2623 RETURN(l_return_status);
2624 END Set_Attributes;
2625 BEGIN
2626 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
2627 p_init_msg_list,
2628 '_PVT',
2629 x_return_status);
2630 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2631 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2632 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2633 RAISE Okc_Api.G_EXCEPTION_ERROR;
2634 END IF;
2635 --- Setting item attributes
2636 l_return_status := Set_Attributes(
2637 p_okl_cnsld_ar_hdrs_tl_rec, -- IN
2638 l_okl_cnsld_ar_hdrs_tl_rec); -- OUT
2639 --- If any errors happen abort API
2640 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2641 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2642 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2643 RAISE Okc_Api.G_EXCEPTION_ERROR;
2644 END IF;
2645 l_return_status := populate_new_record(l_okl_cnsld_ar_hdrs_tl_rec, ldefoklcnsldarhdrstlrec);
2646 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2647 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2648 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2649 RAISE Okc_Api.G_EXCEPTION_ERROR;
2650 END IF;
2651 UPDATE OKL_CNSLD_AR_HDRS_TL
2652 SET PRIVATE_LABEL_LOGO_URL = ldefoklcnsldarhdrstlrec.private_label_logo_url,
2653 CREATED_BY = ldefoklcnsldarhdrstlrec.created_by,
2654 CREATION_DATE = ldefoklcnsldarhdrstlrec.creation_date,
2655 LAST_UPDATED_BY = ldefoklcnsldarhdrstlrec.last_updated_by,
2656 LAST_UPDATE_DATE = ldefoklcnsldarhdrstlrec.last_update_date,
2657 LAST_UPDATE_LOGIN = ldefoklcnsldarhdrstlrec.last_update_login
2658 WHERE ID = ldefoklcnsldarhdrstlrec.id
2659 --AND SOURCE_LANG = USERENV('LANG');
2660 AND USERENV('LANG') in (SOURCE_LANG, LANGUAGE);
2661
2662 UPDATE OKL_CNSLD_AR_HDRS_TL
2663 SET SFWT_FLAG = 'Y'
2664 WHERE ID = ldefoklcnsldarhdrstlrec.id
2665 AND SOURCE_LANG <> USERENV('LANG');
2666
2667 x_okl_cnsld_ar_hdrs_tl_rec := ldefoklcnsldarhdrstlrec;
2668 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2669 EXCEPTION
2670 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
2671 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
2672 (
2673 l_api_name,
2674 G_PKG_NAME,
2675 'OKC_API.G_RET_STS_ERROR',
2676 x_msg_count,
2677 x_msg_data,
2678 '_PVT'
2679 );
2680 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2681 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2682 (
2683 l_api_name,
2684 G_PKG_NAME,
2685 'OKC_API.G_RET_STS_UNEXP_ERROR',
2686 x_msg_count,
2687 x_msg_data,
2688 '_PVT'
2689 );
2690 WHEN OTHERS THEN
2691 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
2692 (
2693 l_api_name,
2694 G_PKG_NAME,
2695 'OTHERS',
2696 x_msg_count,
2697 x_msg_data,
2698 '_PVT'
2699 );
2700 END update_row;
2701 ----------------------------------------
2702 -- update_row for:OKL_CNSLD_AR_HDRS_V --
2703 ----------------------------------------
2704 PROCEDURE update_row(
2705 p_api_version IN NUMBER,
2706 p_init_msg_list IN VARCHAR2,
2707 x_return_status OUT NOCOPY VARCHAR2,
2708 x_msg_count OUT NOCOPY NUMBER,
2709 x_msg_data OUT NOCOPY VARCHAR2,
2710 p_cnrv_rec IN cnrv_rec_type,
2711 x_cnrv_rec OUT NOCOPY cnrv_rec_type) IS
2712
2713 l_api_version CONSTANT NUMBER := 1;
2714 l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2715 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2716 l_cnrv_rec cnrv_rec_type := p_cnrv_rec;
2717 l_def_cnrv_rec cnrv_rec_type;
2718 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
2719 lx_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
2720 l_cnr_rec cnr_rec_type;
2721 lx_cnr_rec cnr_rec_type;
2722 -------------------------------
2723 -- FUNCTION fill_who_columns --
2724 -------------------------------
2725 FUNCTION fill_who_columns (
2726 p_cnrv_rec IN cnrv_rec_type
2727 ) RETURN cnrv_rec_type IS
2731 l_cnrv_rec.LAST_UPDATED_BY := Fnd_Global.USER_ID;
2728 l_cnrv_rec cnrv_rec_type := p_cnrv_rec;
2729 BEGIN
2730 l_cnrv_rec.LAST_UPDATE_DATE := SYSDATE;
2732 l_cnrv_rec.LAST_UPDATE_LOGIN := Fnd_Global.LOGIN_ID;
2733 RETURN(l_cnrv_rec);
2734 END fill_who_columns;
2735 ----------------------------------
2736 -- FUNCTION populate_new_record --
2737 ----------------------------------
2738 FUNCTION populate_new_record (
2739 p_cnrv_rec IN cnrv_rec_type,
2740 x_cnrv_rec OUT NOCOPY cnrv_rec_type
2741 ) RETURN VARCHAR2 IS
2742 l_cnrv_rec cnrv_rec_type;
2743 l_row_notfound BOOLEAN := TRUE;
2744 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2745 BEGIN
2746 x_cnrv_rec := p_cnrv_rec;
2747 -- Get current database values
2748 l_cnrv_rec := get_rec(p_cnrv_rec, l_row_notfound);
2749 IF (l_row_notfound) THEN
2750 l_return_status := Okc_Api.G_RET_STS_UNEXP_ERROR;
2751 END IF;
2752 IF (x_cnrv_rec.id = Okc_Api.G_MISS_NUM)
2753 THEN
2754 x_cnrv_rec.id := l_cnrv_rec.id;
2755 END IF;
2756 IF (x_cnrv_rec.object_version_number = Okc_Api.G_MISS_NUM)
2757 THEN
2758 x_cnrv_rec.object_version_number := l_cnrv_rec.object_version_number;
2759 END IF;
2760 IF (x_cnrv_rec.sfwt_flag = Okc_Api.G_MISS_CHAR)
2761 THEN
2762 x_cnrv_rec.sfwt_flag := l_cnrv_rec.sfwt_flag;
2763 END IF;
2764 IF (x_cnrv_rec.ibt_id = Okc_Api.G_MISS_NUM)
2765 THEN
2766 x_cnrv_rec.ibt_id := l_cnrv_rec.ibt_id;
2767 END IF;
2768 IF (x_cnrv_rec.ixx_id = Okc_Api.G_MISS_NUM)
2769 THEN
2770 x_cnrv_rec.ixx_id := l_cnrv_rec.ixx_id;
2771 END IF;
2772 IF (x_cnrv_rec.currency_code = Okc_Api.G_MISS_CHAR)
2773 THEN
2774 x_cnrv_rec.currency_code := l_cnrv_rec.currency_code;
2775 END IF;
2776 IF (x_cnrv_rec.irm_id = Okc_Api.G_MISS_NUM)
2777 THEN
2778 x_cnrv_rec.irm_id := l_cnrv_rec.irm_id;
2779 END IF;
2780 IF (x_cnrv_rec.inf_id = Okc_Api.G_MISS_NUM)
2781 THEN
2782 x_cnrv_rec.inf_id := l_cnrv_rec.inf_id;
2783 END IF;
2784 IF (x_cnrv_rec.set_of_books_id = Okc_Api.G_MISS_NUM)
2785 THEN
2786 x_cnrv_rec.set_of_books_id := l_cnrv_rec.set_of_books_id;
2787 END IF;
2788 IF (x_cnrv_rec.consolidated_invoice_number = Okc_Api.G_MISS_CHAR)
2789 THEN
2790 x_cnrv_rec.consolidated_invoice_number := l_cnrv_rec.consolidated_invoice_number;
2791 END IF;
2792 IF (x_cnrv_rec.trx_status_code = Okc_Api.G_MISS_CHAR)
2793 THEN
2794 x_cnrv_rec.trx_status_code := l_cnrv_rec.trx_status_code;
2795 END IF;
2796 IF (x_cnrv_rec.invoice_pull_yn = Okc_Api.G_MISS_CHAR)
2797 THEN
2798 x_cnrv_rec.invoice_pull_yn := l_cnrv_rec.invoice_pull_yn;
2799 END IF;
2800 IF (x_cnrv_rec.date_consolidated = Okc_Api.G_MISS_DATE)
2801 THEN
2802 x_cnrv_rec.date_consolidated := l_cnrv_rec.date_consolidated;
2803 END IF;
2804 IF (x_cnrv_rec.private_label_logo_url = Okc_Api.G_MISS_CHAR)
2805 THEN
2806 x_cnrv_rec.private_label_logo_url := l_cnrv_rec.private_label_logo_url;
2807 END IF;
2808 IF (x_cnrv_rec.amount = Okc_Api.G_MISS_NUM)
2809 THEN
2810 x_cnrv_rec.amount := l_cnrv_rec.amount;
2811 END IF;
2812 IF (x_cnrv_rec.due_date = Okc_Api.G_MISS_DATE)
2813 THEN
2814 x_cnrv_rec.due_date := l_cnrv_rec.due_date;
2815 END IF;
2816 IF (x_cnrv_rec.attribute_category = Okc_Api.G_MISS_CHAR)
2817 THEN
2818 x_cnrv_rec.attribute_category := l_cnrv_rec.attribute_category;
2819 END IF;
2820 IF (x_cnrv_rec.attribute1 = Okc_Api.G_MISS_CHAR)
2821 THEN
2822 x_cnrv_rec.attribute1 := l_cnrv_rec.attribute1;
2823 END IF;
2824 IF (x_cnrv_rec.attribute2 = Okc_Api.G_MISS_CHAR)
2825 THEN
2826 x_cnrv_rec.attribute2 := l_cnrv_rec.attribute2;
2827 END IF;
2828 IF (x_cnrv_rec.attribute3 = Okc_Api.G_MISS_CHAR)
2829 THEN
2830 x_cnrv_rec.attribute3 := l_cnrv_rec.attribute3;
2831 END IF;
2832 IF (x_cnrv_rec.attribute4 = Okc_Api.G_MISS_CHAR)
2833 THEN
2834 x_cnrv_rec.attribute4 := l_cnrv_rec.attribute4;
2835 END IF;
2836 IF (x_cnrv_rec.attribute5 = Okc_Api.G_MISS_CHAR)
2837 THEN
2838 x_cnrv_rec.attribute5 := l_cnrv_rec.attribute5;
2839 END IF;
2840 IF (x_cnrv_rec.attribute6 = Okc_Api.G_MISS_CHAR)
2841 THEN
2842 x_cnrv_rec.attribute6 := l_cnrv_rec.attribute6;
2843 END IF;
2844 IF (x_cnrv_rec.attribute7 = Okc_Api.G_MISS_CHAR)
2845 THEN
2846 x_cnrv_rec.attribute7 := l_cnrv_rec.attribute7;
2847 END IF;
2848 IF (x_cnrv_rec.attribute8 = Okc_Api.G_MISS_CHAR)
2849 THEN
2850 x_cnrv_rec.attribute8 := l_cnrv_rec.attribute8;
2851 END IF;
2852 IF (x_cnrv_rec.attribute9 = Okc_Api.G_MISS_CHAR)
2853 THEN
2854 x_cnrv_rec.attribute9 := l_cnrv_rec.attribute9;
2855 END IF;
2856 IF (x_cnrv_rec.attribute10 = Okc_Api.G_MISS_CHAR)
2857 THEN
2858 x_cnrv_rec.attribute10 := l_cnrv_rec.attribute10;
2859 END IF;
2863 END IF;
2860 IF (x_cnrv_rec.attribute11 = Okc_Api.G_MISS_CHAR)
2861 THEN
2862 x_cnrv_rec.attribute11 := l_cnrv_rec.attribute11;
2864 IF (x_cnrv_rec.attribute12 = Okc_Api.G_MISS_CHAR)
2865 THEN
2866 x_cnrv_rec.attribute12 := l_cnrv_rec.attribute12;
2867 END IF;
2868 IF (x_cnrv_rec.attribute13 = Okc_Api.G_MISS_CHAR)
2869 THEN
2870 x_cnrv_rec.attribute13 := l_cnrv_rec.attribute13;
2871 END IF;
2872 IF (x_cnrv_rec.attribute14 = Okc_Api.G_MISS_CHAR)
2873 THEN
2874 x_cnrv_rec.attribute14 := l_cnrv_rec.attribute14;
2875 END IF;
2876 IF (x_cnrv_rec.attribute15 = Okc_Api.G_MISS_CHAR)
2877 THEN
2878 x_cnrv_rec.attribute15 := l_cnrv_rec.attribute15;
2879 END IF;
2880 IF (x_cnrv_rec.request_id = Okc_Api.G_MISS_NUM)
2881 THEN
2882 x_cnrv_rec.request_id := l_cnrv_rec.request_id;
2883 END IF;
2884 IF (x_cnrv_rec.program_application_id = Okc_Api.G_MISS_NUM)
2885 THEN
2886 x_cnrv_rec.program_application_id := l_cnrv_rec.program_application_id;
2887 END IF;
2888 IF (x_cnrv_rec.program_id = Okc_Api.G_MISS_NUM)
2889 THEN
2890 x_cnrv_rec.program_id := l_cnrv_rec.program_id;
2891 END IF;
2892 IF (x_cnrv_rec.program_update_date = Okc_Api.G_MISS_DATE)
2893 THEN
2894 x_cnrv_rec.program_update_date := l_cnrv_rec.program_update_date;
2895 END IF;
2896 IF (x_cnrv_rec.org_id = Okc_Api.G_MISS_NUM)
2897 THEN
2898 x_cnrv_rec.org_id := l_cnrv_rec.org_id;
2899 END IF;
2900 IF (x_cnrv_rec.created_by = Okc_Api.G_MISS_NUM)
2901 THEN
2902 x_cnrv_rec.created_by := l_cnrv_rec.created_by;
2903 END IF;
2904 IF (x_cnrv_rec.creation_date = Okc_Api.G_MISS_DATE)
2905 THEN
2906 x_cnrv_rec.creation_date := l_cnrv_rec.creation_date;
2907 END IF;
2908 IF (x_cnrv_rec.last_updated_by = Okc_Api.G_MISS_NUM)
2909 THEN
2910 x_cnrv_rec.last_updated_by := l_cnrv_rec.last_updated_by;
2911 END IF;
2912 IF (x_cnrv_rec.last_update_date = Okc_Api.G_MISS_DATE)
2913 THEN
2914 x_cnrv_rec.last_update_date := l_cnrv_rec.last_update_date;
2915 END IF;
2916 IF (x_cnrv_rec.last_update_login = Okc_Api.G_MISS_NUM)
2917 THEN
2918 x_cnrv_rec.last_update_login := l_cnrv_rec.last_update_login;
2919 END IF;
2920 -- for LE Uptake project 08-11-2006
2921 IF (x_cnrv_rec.legal_entity_id = Okc_Api.G_MISS_NUM)
2922 THEN
2923 x_cnrv_rec.legal_entity_id := l_cnrv_rec.legal_entity_id;
2924 END IF;
2925 -- for LE Uptake project 08-11-2006
2926 RETURN(l_return_status);
2927 END populate_new_record;
2928 --------------------------------------------
2929 -- Set_Attributes for:OKL_CNSLD_AR_HDRS_V --
2930 --------------------------------------------
2931 FUNCTION Set_Attributes (
2932 p_cnrv_rec IN cnrv_rec_type,
2933 x_cnrv_rec OUT NOCOPY cnrv_rec_type
2934 ) RETURN VARCHAR2 IS
2935 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
2936 BEGIN
2937 x_cnrv_rec := p_cnrv_rec;
2938 x_cnrv_rec.OBJECT_VERSION_NUMBER := NVL(x_cnrv_rec.OBJECT_VERSION_NUMBER, 0) + 1;
2939 IF (x_cnrv_rec.request_id IS NULL OR x_cnrv_rec.request_id = Okl_Api.G_MISS_NUM) THEN
2940 -- Begin Post-Generation Change
2941 SELECT
2942 NVL(DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
2943 x_cnrv_rec.request_id),
2944 NVL(DECODE(Fnd_Global.PROG_APPL_ID, -1,NULL,Fnd_Global.PROG_APPL_ID),
2945 x_cnrv_rec.program_application_id),
2946 NVL(DECODE(Fnd_Global.CONC_PROGRAM_ID,-1,NULL,Fnd_Global.CONC_PROGRAM_ID),
2947 x_cnrv_rec.program_id),
2948 DECODE(DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,SYSDATE),
2949 NULL,x_cnrv_rec.program_update_date,SYSDATE)
2950 INTO
2951 x_cnrv_rec.request_id,
2952 x_cnrv_rec.program_application_id,
2953 x_cnrv_rec.program_id,
2954 x_cnrv_rec.program_update_date
2955 FROM dual;
2956 -- End Post-Generation Change
2957 END IF;
2958
2959 RETURN(l_return_status);
2960 END Set_Attributes;
2961 BEGIN
2962 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
2963 G_PKG_NAME,
2964 p_init_msg_list,
2965 l_api_version,
2966 p_api_version,
2967 '_PVT',
2968 x_return_status);
2969 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2970 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2971 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2972 RAISE Okc_Api.G_EXCEPTION_ERROR;
2973 END IF;
2974 --- Setting item attributes
2975 l_return_status := Set_Attributes(
2976 p_cnrv_rec, -- IN
2977 l_cnrv_rec); -- OUT
2978 --- If any errors happen abort API
2979 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2980 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2981 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2985 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2982 RAISE Okc_Api.G_EXCEPTION_ERROR;
2983 END IF;
2984 l_return_status := populate_new_record(l_cnrv_rec, l_def_cnrv_rec);
2986 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2987 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2988 RAISE Okc_Api.G_EXCEPTION_ERROR;
2989 END IF;
2990 l_def_cnrv_rec := fill_who_columns(l_def_cnrv_rec);
2991 --- Validate all non-missing attributes (Item Level Validation)
2992 l_return_status := Validate_Attributes(l_def_cnrv_rec);
2993 --- If any errors happen abort API
2994 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
2995 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2996 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
2997 RAISE Okc_Api.G_EXCEPTION_ERROR;
2998 END IF;
2999 l_return_status := Validate_Record(l_def_cnrv_rec);
3000 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3001 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3002 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3003 RAISE Okc_Api.G_EXCEPTION_ERROR;
3004 END IF;
3005
3006 --------------------------------------
3007 -- Move VIEW record to "Child" records
3008 --------------------------------------
3009 migrate(l_def_cnrv_rec, l_okl_cnsld_ar_hdrs_tl_rec);
3010 migrate(l_def_cnrv_rec, l_cnr_rec);
3011 --------------------------------------------
3012 -- Call the UPDATE_ROW for each child record
3013 --------------------------------------------
3014 update_row(
3015 p_init_msg_list,
3016 x_return_status,
3017 x_msg_count,
3018 x_msg_data,
3019 l_okl_cnsld_ar_hdrs_tl_rec,
3020 lx_okl_cnsld_ar_hdrs_tl_rec
3021 );
3022 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3023 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3024 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3025 RAISE Okc_Api.G_EXCEPTION_ERROR;
3026 END IF;
3027 migrate(lx_okl_cnsld_ar_hdrs_tl_rec, l_def_cnrv_rec);
3028 update_row(
3029 p_init_msg_list,
3030 x_return_status,
3031 x_msg_count,
3032 x_msg_data,
3033 l_cnr_rec,
3034 lx_cnr_rec
3035 );
3036 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3037 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3038 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3039 RAISE Okc_Api.G_EXCEPTION_ERROR;
3040 END IF;
3041 migrate(lx_cnr_rec, l_def_cnrv_rec);
3042 x_cnrv_rec := l_def_cnrv_rec;
3043 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3044 EXCEPTION
3045 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
3046 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
3047 (
3048 l_api_name,
3049 G_PKG_NAME,
3050 'OKC_API.G_RET_STS_ERROR',
3051 x_msg_count,
3052 x_msg_data,
3053 '_PVT'
3054 );
3055 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3056 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3057 (
3058 l_api_name,
3059 G_PKG_NAME,
3060 'OKC_API.G_RET_STS_UNEXP_ERROR',
3061 x_msg_count,
3062 x_msg_data,
3063 '_PVT'
3064 );
3065 WHEN OTHERS THEN
3066 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3067 (
3068 l_api_name,
3069 G_PKG_NAME,
3070 'OTHERS',
3071 x_msg_count,
3072 x_msg_data,
3073 '_PVT'
3074 );
3075 END update_row;
3076 ----------------------------------------
3077 -- PL/SQL TBL update_row for:CNRV_TBL --
3078 ----------------------------------------
3079 PROCEDURE update_row(
3080 p_api_version IN NUMBER,
3081 p_init_msg_list IN VARCHAR2,
3082 x_return_status OUT NOCOPY VARCHAR2,
3083 x_msg_count OUT NOCOPY NUMBER,
3084 x_msg_data OUT NOCOPY VARCHAR2,
3085 p_cnrv_tbl IN cnrv_tbl_type,
3086 x_cnrv_tbl OUT NOCOPY cnrv_tbl_type) IS
3087
3088 l_api_version CONSTANT NUMBER := 1;
3089 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
3090 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
3091 i NUMBER := 0;
3092 BEGIN
3093 Okc_Api.init_msg_list(p_init_msg_list);
3094 -- Make sure PL/SQL table has records in it before passing
3095 IF (p_cnrv_tbl.COUNT > 0) THEN
3096 i := p_cnrv_tbl.FIRST;
3097 LOOP
3098 update_row (
3099 p_api_version => p_api_version,
3100 p_init_msg_list => Okc_Api.G_FALSE,
3101 x_return_status => x_return_status,
3102 x_msg_count => x_msg_count,
3103 x_msg_data => x_msg_data,
3104 p_cnrv_rec => p_cnrv_tbl(i),
3105 x_cnrv_rec => x_cnrv_tbl(i));
3106 EXIT WHEN (i = p_cnrv_tbl.LAST);
3107 i := p_cnrv_tbl.NEXT(i);
3108 END LOOP;
3109 END IF;
3110 EXCEPTION
3111 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
3115 G_PKG_NAME,
3112 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
3113 (
3114 l_api_name,
3116 'OKC_API.G_RET_STS_ERROR',
3117 x_msg_count,
3118 x_msg_data,
3119 '_PVT'
3120 );
3121 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3122 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3123 (
3124 l_api_name,
3125 G_PKG_NAME,
3126 'OKC_API.G_RET_STS_UNEXP_ERROR',
3127 x_msg_count,
3128 x_msg_data,
3129 '_PVT'
3130 );
3131 WHEN OTHERS THEN
3132 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3133 (
3134 l_api_name,
3135 G_PKG_NAME,
3136 'OTHERS',
3137 x_msg_count,
3138 x_msg_data,
3139 '_PVT'
3140 );
3141 END update_row;
3142
3143 ---------------------------------------------------------------------------
3144 -- PROCEDURE delete_row
3145 ---------------------------------------------------------------------------
3146 ----------------------------------------
3147 -- delete_row for:OKL_CNSLD_AR_HDRS_B --
3148 ----------------------------------------
3149 PROCEDURE delete_row(
3150 p_init_msg_list IN VARCHAR2,
3151 x_return_status OUT NOCOPY VARCHAR2,
3152 x_msg_count OUT NOCOPY NUMBER,
3153 x_msg_data OUT NOCOPY VARCHAR2,
3154 p_cnr_rec IN cnr_rec_type) IS
3155
3156 l_api_version CONSTANT NUMBER := 1;
3157 l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
3158 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
3159 l_cnr_rec cnr_rec_type:= p_cnr_rec;
3160 l_row_notfound BOOLEAN := TRUE;
3161 BEGIN
3162 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
3163 p_init_msg_list,
3164 '_PVT',
3165 x_return_status);
3166 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3167 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3168 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3169 RAISE Okc_Api.G_EXCEPTION_ERROR;
3170 END IF;
3171 DELETE FROM OKL_CNSLD_AR_HDRS_B
3172 WHERE ID = l_cnr_rec.id;
3173
3174 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3175 EXCEPTION
3176 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
3177 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
3178 (
3179 l_api_name,
3180 G_PKG_NAME,
3181 'OKC_API.G_RET_STS_ERROR',
3182 x_msg_count,
3183 x_msg_data,
3184 '_PVT'
3185 );
3186 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3187 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3188 (
3189 l_api_name,
3190 G_PKG_NAME,
3191 'OKC_API.G_RET_STS_UNEXP_ERROR',
3192 x_msg_count,
3193 x_msg_data,
3194 '_PVT'
3195 );
3196 WHEN OTHERS THEN
3197 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3198 (
3199 l_api_name,
3200 G_PKG_NAME,
3201 'OTHERS',
3202 x_msg_count,
3203 x_msg_data,
3204 '_PVT'
3205 );
3206 END delete_row;
3207 -----------------------------------------
3208 -- delete_row for:OKL_CNSLD_AR_HDRS_TL --
3209 -----------------------------------------
3210 PROCEDURE delete_row(
3211 p_init_msg_list IN VARCHAR2,
3212 x_return_status OUT NOCOPY VARCHAR2,
3213 x_msg_count OUT NOCOPY NUMBER,
3214 x_msg_data OUT NOCOPY VARCHAR2,
3215 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type) IS
3216
3217 l_api_version CONSTANT NUMBER := 1;
3218 l_api_name CONSTANT VARCHAR2(30) := 'TL_delete_row';
3219 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
3220 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type:= p_okl_cnsld_ar_hdrs_tl_rec;
3221 l_row_notfound BOOLEAN := TRUE;
3222 ---------------------------------------------
3223 -- Set_Attributes for:OKL_CNSLD_AR_HDRS_TL --
3224 ---------------------------------------------
3225 FUNCTION Set_Attributes (
3226 p_okl_cnsld_ar_hdrs_tl_rec IN okl_cnsld_ar_hdrs_tl_rec_type,
3227 x_okl_cnsld_ar_hdrs_tl_rec OUT NOCOPY okl_cnsld_ar_hdrs_tl_rec_type
3228 ) RETURN VARCHAR2 IS
3229 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
3230 BEGIN
3231 x_okl_cnsld_ar_hdrs_tl_rec := p_okl_cnsld_ar_hdrs_tl_rec;
3232 x_okl_cnsld_ar_hdrs_tl_rec.LANGUAGE := USERENV('LANG');
3233 RETURN(l_return_status);
3234 END Set_Attributes;
3235 BEGIN
3236 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
3237 p_init_msg_list,
3238 '_PVT',
3239 x_return_status);
3240 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3241 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3242 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3246 l_return_status := Set_Attributes(
3243 RAISE Okc_Api.G_EXCEPTION_ERROR;
3244 END IF;
3245 --- Setting item attributes
3247 p_okl_cnsld_ar_hdrs_tl_rec, -- IN
3248 l_okl_cnsld_ar_hdrs_tl_rec); -- OUT
3249 --- If any errors happen abort API
3250 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3251 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3252 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3253 RAISE Okc_Api.G_EXCEPTION_ERROR;
3254 END IF;
3255 DELETE FROM OKL_CNSLD_AR_HDRS_TL
3256 WHERE ID = l_okl_cnsld_ar_hdrs_tl_rec.id;
3257
3258 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3259 EXCEPTION
3260 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
3261 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
3262 (
3263 l_api_name,
3264 G_PKG_NAME,
3265 'OKC_API.G_RET_STS_ERROR',
3266 x_msg_count,
3267 x_msg_data,
3268 '_PVT'
3269 );
3270 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3271 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3272 (
3273 l_api_name,
3274 G_PKG_NAME,
3275 'OKC_API.G_RET_STS_UNEXP_ERROR',
3276 x_msg_count,
3277 x_msg_data,
3278 '_PVT'
3279 );
3280 WHEN OTHERS THEN
3281 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3282 (
3283 l_api_name,
3284 G_PKG_NAME,
3285 'OTHERS',
3286 x_msg_count,
3287 x_msg_data,
3288 '_PVT'
3289 );
3290 END delete_row;
3291 ----------------------------------------
3292 -- delete_row for:OKL_CNSLD_AR_HDRS_V --
3293 ----------------------------------------
3294 PROCEDURE delete_row(
3295 p_api_version IN NUMBER,
3296 p_init_msg_list IN VARCHAR2,
3297 x_return_status OUT NOCOPY VARCHAR2,
3298 x_msg_count OUT NOCOPY NUMBER,
3299 x_msg_data OUT NOCOPY VARCHAR2,
3300 p_cnrv_rec IN cnrv_rec_type) IS
3301
3302 l_api_version CONSTANT NUMBER := 1;
3303 l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
3304 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
3305 l_cnrv_rec cnrv_rec_type := p_cnrv_rec;
3306 l_okl_cnsld_ar_hdrs_tl_rec okl_cnsld_ar_hdrs_tl_rec_type;
3307 l_cnr_rec cnr_rec_type;
3308 BEGIN
3309 l_return_status := Okc_Api.START_ACTIVITY(l_api_name,
3310 G_PKG_NAME,
3311 p_init_msg_list,
3312 l_api_version,
3313 p_api_version,
3314 '_PVT',
3315 x_return_status);
3316 IF (l_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3317 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3318 ELSIF (l_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3319 RAISE Okc_Api.G_EXCEPTION_ERROR;
3320 END IF;
3321 --------------------------------------
3322 -- Move VIEW record to "Child" records
3323 --------------------------------------
3324 migrate(l_cnrv_rec, l_okl_cnsld_ar_hdrs_tl_rec);
3325 migrate(l_cnrv_rec, l_cnr_rec);
3326 --------------------------------------------
3327 -- Call the DELETE_ROW for each child record
3328 --------------------------------------------
3329 delete_row(
3330 p_init_msg_list,
3331 x_return_status,
3332 x_msg_count,
3333 x_msg_data,
3334 l_okl_cnsld_ar_hdrs_tl_rec
3335 );
3336 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3337 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3338 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3339 RAISE Okc_Api.G_EXCEPTION_ERROR;
3340 END IF;
3341 delete_row(
3342 p_init_msg_list,
3343 x_return_status,
3344 x_msg_count,
3345 x_msg_data,
3346 l_cnr_rec
3347 );
3348 IF (x_return_status = Okc_Api.G_RET_STS_UNEXP_ERROR) THEN
3349 RAISE Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3350 ELSIF (x_return_status = Okc_Api.G_RET_STS_ERROR) THEN
3351 RAISE Okc_Api.G_EXCEPTION_ERROR;
3352 END IF;
3353 Okc_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3354 EXCEPTION
3355 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
3356 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
3357 (
3358 l_api_name,
3359 G_PKG_NAME,
3360 'OKC_API.G_RET_STS_ERROR',
3361 x_msg_count,
3362 x_msg_data,
3363 '_PVT'
3364 );
3365 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3366 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3367 (
3368 l_api_name,
3369 G_PKG_NAME,
3370 'OKC_API.G_RET_STS_UNEXP_ERROR',
3371 x_msg_count,
3372 x_msg_data,
3373 '_PVT'
3374 );
3375 WHEN OTHERS THEN
3376 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3377 (
3378 l_api_name,
3379 G_PKG_NAME,
3380 'OTHERS',
3381 x_msg_count,
3382 x_msg_data,
3383 '_PVT'
3384 );
3385 END delete_row;
3386 ----------------------------------------
3387 -- PL/SQL TBL delete_row for:CNRV_TBL --
3388 ----------------------------------------
3389 PROCEDURE delete_row(
3390 p_api_version IN NUMBER,
3391 p_init_msg_list IN VARCHAR2,
3392 x_return_status OUT NOCOPY VARCHAR2,
3393 x_msg_count OUT NOCOPY NUMBER,
3394 x_msg_data OUT NOCOPY VARCHAR2,
3395 p_cnrv_tbl IN cnrv_tbl_type) IS
3396
3397 l_api_version CONSTANT NUMBER := 1;
3398 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
3399 l_return_status VARCHAR2(1) := Okc_Api.G_RET_STS_SUCCESS;
3400 i NUMBER := 0;
3401 BEGIN
3402 Okc_Api.init_msg_list(p_init_msg_list);
3403 -- Make sure PL/SQL table has records in it before passing
3404 IF (p_cnrv_tbl.COUNT > 0) THEN
3405 i := p_cnrv_tbl.FIRST;
3406 LOOP
3407 delete_row (
3408 p_api_version => p_api_version,
3409 p_init_msg_list => Okc_Api.G_FALSE,
3410 x_return_status => x_return_status,
3411 x_msg_count => x_msg_count,
3412 x_msg_data => x_msg_data,
3413 p_cnrv_rec => p_cnrv_tbl(i));
3414 EXIT WHEN (i = p_cnrv_tbl.LAST);
3415 i := p_cnrv_tbl.NEXT(i);
3416 END LOOP;
3417 END IF;
3418 EXCEPTION
3419 WHEN Okc_Api.G_EXCEPTION_ERROR THEN
3420 x_return_status := Okc_Api.HANDLE_EXCEPTIONS
3421 (
3422 l_api_name,
3423 G_PKG_NAME,
3424 'OKC_API.G_RET_STS_ERROR',
3425 x_msg_count,
3426 x_msg_data,
3427 '_PVT'
3428 );
3429 WHEN Okc_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3430 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3431 (
3432 l_api_name,
3433 G_PKG_NAME,
3434 'OKC_API.G_RET_STS_UNEXP_ERROR',
3435 x_msg_count,
3436 x_msg_data,
3437 '_PVT'
3438 );
3439 WHEN OTHERS THEN
3440 x_return_status :=Okc_Api.HANDLE_EXCEPTIONS
3441 (
3442 l_api_name,
3443 G_PKG_NAME,
3444 'OTHERS',
3445 x_msg_count,
3446 x_msg_data,
3447 '_PVT'
3448 );
3449 END delete_row;
3450
3451
3452 END Okl_Cnr_Pvt;