[Home] [Help]
PACKAGE BODY: APPS.OKL_TIL_PVT
Source
1 PACKAGE BODY Okl_Til_Pvt AS
2 /* $Header: OKLSTILB.pls 120.12 2008/05/15 18:20:01 sechawla ship $ */
3
4
5 ---------------------------------------------------------------------------
6 -- PROCEDURE validate_line_number
7 ---------------------------------------------------------------------------
8 PROCEDURE validate_line_number (p_tilv_rec IN tilv_rec_type,
9 x_return_status OUT NOCOPY VARCHAR2) IS
10 BEGIN
11 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
12
13 IF p_tilv_rec.line_number = Okl_Api.G_MISS_NUM OR
14 p_tilv_rec.line_number IS NULL
15 THEN
16
17 x_return_status := Okl_Api.G_RET_STS_ERROR;
18 --set error message in message stack
19 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
20 p_msg_name => G_REQUIRED_VALUE,
21 p_token1 => G_COL_NAME_TOKEN,
22 p_token1_value => 'line_number');
23 --RAISE G_EXCEPTION_HALT_VALIDATION;
24
25 END IF;
26 END validate_line_number;
27
28 ---------------------------------------------------------------------------
29 -- PROCEDURE validate_org_id
30 ---------------------------------------------------------------------------
31
32 PROCEDURE validate_org_id (p_tilv_rec IN tilv_rec_type,
33 x_return_status OUT NOCOPY VARCHAR2) IS
34 BEGIN
35 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
36 IF (p_tilv_rec.org_id IS NOT NULL) THEN
37 x_return_status := Okl_Util.check_org_id(p_tilv_rec.org_id);
38 END IF;
39 END validate_org_id;
40
41
42 ---------------------------------------------------------------------------
43 -- PROCEDURE validate_inventory_org_id
44 ---------------------------------------------------------------------------
45
46 PROCEDURE validate_inventory_org_id (p_tilv_rec IN tilv_rec_type,
47 x_return_status OUT NOCOPY VARCHAR2) IS
48 BEGIN
49 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
50 IF (p_tilv_rec.inventory_org_id IS NOT NULL) THEN
51 x_return_status := Okl_Util.check_org_id(p_tilv_rec.inventory_org_id);
52 END IF;
53
54 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
55 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
56 p_msg_name => G_REQUIRED_VALUE,
57 p_token1 => G_COL_NAME_TOKEN,
58 p_token1_value => 'INVENTORY_ORG_ID');
59 END IF;
60
61 END validate_inventory_org_id;
62
63 ---------------------------------------------------------------------------
64 -- PROCEDURE validate_id
65 ---------------------------------------------------------------------------
66 PROCEDURE validate_id (p_tilv_rec IN tilv_rec_type,
67 x_return_status OUT NOCOPY VARCHAR2) IS
68 BEGIN
69 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
70
71 IF p_tilv_rec.id = Okl_Api.G_MISS_NUM OR
72 p_tilv_rec.id IS NULL
73 THEN
74
75 x_return_status := Okl_Api.G_RET_STS_ERROR;
76 --set error message in message stack
77 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
78 p_msg_name => G_REQUIRED_VALUE,
79 p_token1 => G_COL_NAME_TOKEN,
80 p_token1_value => 'id');
81 --RAISE G_EXCEPTION_HALT_VALIDATION;
82
83 END IF;
84 END validate_id;
85
86
87 ---------------------------------------------------------------------------
88 -- PROCEDURE validate_object_version_number
89 ---------------------------------------------------------------------------
90 PROCEDURE validate_object_version_number (p_tilv_rec IN tilv_rec_type,
91 x_return_status OUT NOCOPY VARCHAR2) IS
92 BEGIN
93 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
94
95 IF p_tilv_rec.object_version_number = Okl_Api.G_MISS_NUM OR
96 p_tilv_rec.object_version_number IS NULL
97 THEN
98
99 x_return_status := Okl_Api.G_RET_STS_ERROR;
100
101 --set error message in message stack
102 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
103 p_msg_name => G_REQUIRED_VALUE,
104 p_token1 => G_COL_NAME_TOKEN,
105 p_token1_value => 'object_version_number');
106 --RAISE G_EXCEPTION_HALT_VALIDATION;
107 END IF;
108
109 END validate_object_version_number;
110
111
112 ---------------------------------------------------------------------------
113 -- PROCEDURE validate_inv_receiv_line_code
114 ---------------------------------------------------------------------------
115 PROCEDURE validate_inv_receiv_line_code (p_tilv_rec IN tilv_rec_type,
116 x_return_status OUT NOCOPY VARCHAR2) IS
117
118 BEGIN
119 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
120
121 IF p_tilv_rec.inv_receiv_line_code = Okl_Api.G_MISS_CHAR OR
122 p_tilv_rec.inv_receiv_line_code IS NULL
123 THEN
124 x_return_status := Okl_Api.G_RET_STS_ERROR;
125
126 --set error message in message stack
127 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
128 p_msg_name => G_REQUIRED_VALUE,
129 p_token1 => G_COL_NAME_TOKEN,
130 p_token1_value => 'inv_receiv_line_code');
131 --RAISE G_EXCEPTION_HALT_VALIDATION;
132
133 END IF;
134
135
136 --Check FK
137 -- x_return_status := Okl_Util.check_fnd_lookup_code('INV_RECEIV_LINE_CODE', p_tilv_rec.inv_receiv_line_code);
138 --start: 26-02-07 gkhuntet x_return_status is always set to 'S' so commented.
139 -- x_return_status := 'S';
140 --end: 26-02-07 gkhuntet
141 END validate_inv_receiv_line_code;
142 ----------------------------------------------------
143 ---------------------------------------------------------------------------
144 -- PROCEDURE validate_tai_id
145 ---------------------------------------------------------------------------
146 PROCEDURE validate_tai_id (p_tilv_rec IN tilv_rec_type,
147 x_return_status OUT NOCOPY VARCHAR2) IS
148 l_dummy_var VARCHAR2(1) := '0';
149
150 CURSOR l_tai_id_csr IS
151 SELECT '1'
152 FROM OKL_TRX_AR_INVOICES_B
153 WHERE id = p_tilv_rec.tai_id;
154
155
156 BEGIN
157 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
158
159 IF p_tilv_rec.tai_id = Okl_Api.G_MISS_NUM OR
160 p_tilv_rec.tai_id IS NULL
161 THEN
162 x_return_status := Okl_Api.G_RET_STS_ERROR;
163
164 --set error message in message stack
165 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
166 p_msg_name => G_REQUIRED_VALUE,
167 p_token1 => G_COL_NAME_TOKEN,
168 p_token1_value => 'tai_id');
169 --RAISE G_EXCEPTION_HALT_VALIDATION;
170
171 END IF;
172
173
174
175 OPEN l_tai_id_csr;
176 FETCH l_tai_id_csr INTO l_dummy_var;
177 CLOSE l_tai_id_csr;
178
179 IF (l_dummy_var <> '1') THEN
180 x_return_status := Okl_Api.G_RET_STS_ERROR;
181 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
182 p_msg_name => G_NO_PARENT_RECORD,
183 p_token1 => G_COL_NAME_TOKEN,
184 p_token1_value => 'TAI_ID_FOR',
185 p_token2 => G_CHILD_TABLE_TOKEN,
186 p_token2_value => G_VIEW,
187 p_token3 => G_PARENT_TABLE_TOKEN,
188 p_token3_value => 'OKL_TXL_AR_INV_LNS_V' );
189
190 RAISE G_EXCEPTION_HALT_VALIDATION;
191 END IF;
192
193
194 END validate_tai_id;
195
196 ----------------------------------------------------
197 ---------------------------------------------------------------------------
198 -- PROCEDURE validate_kle_id
199 ---------------------------------------------------------------------------
200 PROCEDURE validate_kle_id (p_tilv_rec IN tilv_rec_type,
201 x_return_status OUT NOCOPY VARCHAR2) IS
202 l_dummy_var VARCHAR2(1) := '0';
203
204 -- sjalasut commented the cursor. see new cursor below
205 /*
206 CURSOR l_kle_id_csr IS
207 SELECT '1'
208 FROM OKC_K_LINES_B
209 WHERE id = p_tilv_rec.kle_id;
210 */
211 -- sjalasut: new cursor to validate that the asset and the contract are related
212 -- fix for bug 2783255
213 -- since the contract and the asset lov are org stripped, no need of org_id here
214 -- in the where clause
215 -- sjalasut: start of code changes
216 CURSOR l_kle_id_csr IS
217 SELECT '1'
218 FROM OKC_K_LINES_B line,
219 OKL_TRX_AR_INVOICES_B invoice
220 WHERE
221 line.id = p_tilv_rec.kle_id
222 AND invoice.id = p_tilv_rec.tai_id
223 AND line.dnz_chr_id = invoice.khr_id(+);
224
225 CURSOR l_asset_number_csr IS
226 SELECT name
227 FROM OKC_K_LINES_V
228 WHERE id = p_tilv_rec.kle_id;
229
230 lv_asset_number okc_k_lines_v.name%TYPE;
231 -- sjalasut: end of code changes
232 BEGIN
233 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
234 -- sjalasut changed the cursor and added a user-friendly message as per bug 2783255
235 IF(p_tilv_rec.kle_id IS NOT NULL) THEN
236 OPEN l_kle_id_csr;
237 FETCH l_kle_id_csr INTO l_dummy_var;
238 CLOSE l_kle_id_csr;
239 IF(l_dummy_var <> '1') THEN
240 x_return_status := Okl_Api.G_RET_STS_ERROR;
241 OPEN l_asset_number_csr;
242 FETCH l_asset_number_csr INTO lv_asset_number;
243 CLOSE l_asset_number_csr;
244 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
245 p_msg_name => 'OKL_OP_ASSET_NOT_FOR_CONTRACT',
246 p_token1 => 'ASSET_NUM',
247 p_token1_value => lv_asset_number
248 );
249 --RAISE G_EXCEPTION_HALT_VALIDATION;
250 END IF;
251 END IF;
252 END validate_kle_id;
253
254 ----------------------------------------------------
255 ---------------------------------------------------------------------------
256 -- PROCEDURE validate_tpl_id
257 ---------------------------------------------------------------------------
258 PROCEDURE validate_tpl_id (p_tilv_rec IN tilv_rec_type,
259 x_return_status OUT NOCOPY VARCHAR2) IS
260 l_dummy_var VARCHAR2(1) := '0';
261
262 CURSOR l_tpl_id_csr IS
263 SELECT '1'
264 FROM OKL_TXL_AP_INV_LNS_B
265 WHERE id = p_tilv_rec.tpl_id;
266
267
268 BEGIN
269 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
270
271 IF (p_tilv_rec.tpl_id IS NOT NULL) THEN
272 OPEN l_tpl_id_csr;
273 FETCH l_tpl_id_csr INTO l_dummy_var;
274 CLOSE l_tpl_id_csr;
275
276 IF (l_dummy_var <> '1') THEN
277 x_return_status := Okl_Api.G_RET_STS_ERROR;
278 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
279 p_msg_name => G_NO_PARENT_RECORD,
280 p_token1 => G_COL_NAME_TOKEN,
281 p_token1_value => 'TPL_ID_FOR',
282 p_token2 => G_CHILD_TABLE_TOKEN,
283 p_token2_value => G_VIEW,
284 p_token3 => G_PARENT_TABLE_TOKEN,
285 p_token3_value => 'OKL_TXL_AR_INV_LNS_V' );
286
287 --RAISE G_EXCEPTION_HALT_VALIDATION;
288 END IF;
289 END IF;
290
291 END validate_tpl_id;
292
293 ----------------------------------------------------
294 ---------------------------------------------------------------------------
295 -- PROCEDURE validate_sty_id
296 ---------------------------------------------------------------------------
297 PROCEDURE validate_sty_id (p_tilv_rec IN tilv_rec_type,
298 x_return_status OUT NOCOPY VARCHAR2) IS
299 l_dummy_var VARCHAR2(1) := '0';
300 -- sjalasut modified cursor for bug 2783255
301 -- sjalasut start of code changes
302 CURSOR l_sty_id_csr IS
303 /*SELECT '1'
304 FROM OKL_STRM_TYPE_B
305 WHERE id = p_tilv_rec.sty_id;*/
306 SELECT '1'
307 FROM
308 OKL_STRM_TMPT_FULL_UV st,
309 OKL_K_HEADERS KHR,
310 OKL_TRX_AR_INVOICES_B invoice
311 WHERE
312 invoice.id = p_tilv_rec.tai_id
313 AND st.PDT_ID = khr.PDT_ID
314 AND st.TMPT_STATUS = 'ACTIVE'
315 AND st.sty_id = p_tilv_rec.sty_id
316 AND invoice.khr_id(+) = khr.id;
317
318 lv_sty_name OKL_STRM_TMPT_FULL_UV.sty_name%TYPE;
319 -- cursor to pick up the stream name to show in the message
320 CURSOR l_sty_name_csr IS
321 SELECT st.NAME
322 FROM OKL_STRM_TYPE_V st
323 WHERE id = p_tilv_rec.sty_id;
324
325 -- sjalasut. end of code changes
326 BEGIN
327 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
328
329 IF(p_tilv_rec.sty_id IS NOT NULL) THEN
330 OPEN l_sty_id_csr;
331 FETCH l_sty_id_csr INTO l_dummy_var;
332 CLOSE l_sty_id_csr;
333
334 IF (l_dummy_var <> '1') THEN
335 x_return_status := Okl_Api.G_RET_STS_ERROR;
336 OPEN l_sty_name_csr;
337 FETCH l_sty_name_csr INTO lv_sty_name;
338 CLOSE l_sty_name_csr;
339 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
340 p_msg_name => 'OKL_OP_FEETYP_NOT_CONTRACT',
341 p_token1 => 'FEE_TYPE',
342 p_token1_value => lv_sty_name);
343 --RAISE G_EXCEPTION_HALT_VALIDATION;
344 END IF;
345 END IF;
346
347 END validate_sty_id;
348 ----------------------------------------------------
349 ---------------------------------------------------------------------------
350 -- PROCEDURE validate_acn_id_cost
351 ---------------------------------------------------------------------------
352 PROCEDURE validate_acn_id_cost (p_tilv_rec IN tilv_rec_type,
353 x_return_status OUT NOCOPY VARCHAR2) IS
354 l_dummy_var VARCHAR2(1) := '0';
355
356 CURSOR l_acn_id_cost_csr IS
357 SELECT '1'
358 FROM OKL_ASSET_CNDTN_LNS_B
359 WHERE id = p_tilv_rec.acn_id_cost;
360
361
362 BEGIN
363 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
364
365 IF (p_tilv_rec.acn_id_cost IS NOT NULL) THEN
366 OPEN l_acn_id_cost_csr;
367 FETCH l_acn_id_cost_csr INTO l_dummy_var;
368 CLOSE l_acn_id_cost_csr;
369
370 IF (l_dummy_var <> '1') THEN
371 x_return_status := Okl_Api.G_RET_STS_ERROR;
372 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
373 p_msg_name => G_NO_PARENT_RECORD,
374 p_token1 => G_COL_NAME_TOKEN,
375 p_token1_value => 'ACN_ID_COST_FOR',
376 p_token2 => G_CHILD_TABLE_TOKEN,
377 p_token2_value => G_VIEW,
378 p_token3 => G_PARENT_TABLE_TOKEN,
379 p_token3_value => 'OKL_TXL_AR_INV_LNS_V' );
380
381 --RAISE G_EXCEPTION_HALT_VALIDATION;
382 END IF;
383 END IF;
384
385 END validate_acn_id_cost;
386
387 ---------------------------------------------------------------------------
388 -- PROCEDURE validate_acn_id_cost
389 ---------------------------------------------------------------------------
390 PROCEDURE validate_til_id_reverses (p_tilv_rec IN tilv_rec_type,
391 x_return_status OUT NOCOPY VARCHAR2) IS
392 l_dummy_var VARCHAR2(1) := '0';
393
394 CURSOR l_til_id_reverses_csr IS
395 SELECT '1'
396 FROM OKL_TXL_AR_INV_LNS_B
397 WHERE id = p_tilv_rec.til_id_reverses;
398
399
400 BEGIN
401 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
402
403 IF (p_tilv_rec.til_id_reverses IS NOT NULL) THEN
404 OPEN l_til_id_reverses_csr;
405 FETCH l_til_id_reverses_csr INTO l_dummy_var;
406 CLOSE l_til_id_reverses_csr;
407
408 IF (l_dummy_var <> '1') THEN
409 x_return_status := Okl_Api.G_RET_STS_ERROR;
410 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
411 p_msg_name => G_NO_PARENT_RECORD,
412 p_token1 => G_COL_NAME_TOKEN,
413 p_token1_value => 'TIL_ID_REVERSES_FOR',
414 p_token2 => G_CHILD_TABLE_TOKEN,
415 p_token2_value => G_VIEW,
416 p_token3 => G_PARENT_TABLE_TOKEN,
417 p_token3_value => 'OKL_TXL_AR_INV_LNS_V' );
418
419 --RAISE G_EXCEPTION_HALT_VALIDATION;
420 END IF;
421 END IF;
422
423 END validate_til_id_reverses;
424
425 ---------------------------------------------------------------------------
426 -- FUNCTION get_seq_id
427 ---------------------------------------------------------------------------
428 FUNCTION get_seq_id RETURN NUMBER IS
429 BEGIN
430 RETURN(Okc_P_Util.raw_to_number(sys_guid()));
431 END get_seq_id;
432
433 ---------------------------------------------------------------------------
434 -- PROCEDURE qc
435 ---------------------------------------------------------------------------
436 PROCEDURE qc IS
437 BEGIN
438 NULL;
439 END qc;
440
441 ---------------------------------------------------------------------------
442 -- PROCEDURE change_version
443 ---------------------------------------------------------------------------
444 PROCEDURE change_version IS
445 BEGIN
446 NULL;
447 END change_version;
448
449 ---------------------------------------------------------------------------
450 -- PROCEDURE api_copy
451 ---------------------------------------------------------------------------
452 PROCEDURE api_copy IS
453 BEGIN
454 NULL;
455 END api_copy;
456
457 ---------------------------------------------------------------------------
458 -- PROCEDURE add_language
459 ---------------------------------------------------------------------------
460 PROCEDURE add_language IS
461 BEGIN
462 DELETE FROM OKL_TXL_AR_INV_LNS_TL T
463 WHERE NOT EXISTS (
464 SELECT NULL
465 FROM OKL_TXL_AR_INV_LNS_B B
466 WHERE B.ID = T.ID
467 AND T.LANGUAGE = USERENV('LANG')
468 );
469
470 UPDATE OKL_TXL_AR_INV_LNS_TL T SET (
471 DESCRIPTION) = (SELECT
472 B.DESCRIPTION
473 FROM OKL_TXL_AR_INV_LNS_TL B
474 WHERE B.ID = T.ID
475 AND B.LANGUAGE = T.SOURCE_LANG)
476 WHERE (
477 T.ID,
478 T.LANGUAGE)
479 IN (SELECT
480 SUBT.ID,
481 SUBT.LANGUAGE
482 FROM OKL_TXL_AR_INV_LNS_TL SUBB, OKL_TXL_AR_INV_LNS_TL SUBT
483 WHERE SUBB.ID = SUBT.ID
484 AND SUBB.LANGUAGE = SUBT.SOURCE_LANG
485 AND (SUBB.DESCRIPTION <> SUBT.DESCRIPTION
486 OR (SUBB.DESCRIPTION IS NULL AND SUBT.DESCRIPTION IS NOT NULL)
487 OR (SUBB.DESCRIPTION IS NOT NULL AND SUBT.DESCRIPTION IS NULL)
488 ));
489
490 INSERT INTO OKL_TXL_AR_INV_LNS_TL (
491 ID,
492 LANGUAGE,
493 SOURCE_LANG,
494 ERROR_MESSAGE,
495 SFWT_FLAG,
496 DESCRIPTION,
497 CREATED_BY,
498 CREATION_DATE,
499 LAST_UPDATED_BY,
500 LAST_UPDATE_DATE,
501 LAST_UPDATE_LOGIN)
502 SELECT
503 B.ID,
504 L.LANGUAGE_CODE,
505 B.SOURCE_LANG,
506 B.ERROR_MESSAGE,
507 B.SFWT_FLAG,
508 B.DESCRIPTION,
509 B.CREATED_BY,
510 B.CREATION_DATE,
511 B.LAST_UPDATED_BY,
512 B.LAST_UPDATE_DATE,
513 B.LAST_UPDATE_LOGIN
514 FROM OKL_TXL_AR_INV_LNS_TL B, FND_LANGUAGES L
515 WHERE L.INSTALLED_FLAG IN ('I', 'B')
516 AND B.LANGUAGE = USERENV('LANG')
517 AND NOT EXISTS(
518 SELECT NULL
519 FROM OKL_TXL_AR_INV_LNS_TL T
520 WHERE T.ID = B.ID
521 AND T.LANGUAGE = L.LANGUAGE_CODE
522 );
523
524 END add_language;
525
526 ---------------------------------------------------------------------------
527 -- FUNCTION get_rec for: OKL_TXL_AR_INV_LNS_B
528 ---------------------------------------------------------------------------
529 FUNCTION get_rec (
530 p_til_rec IN til_rec_type,
531 x_no_data_found OUT NOCOPY BOOLEAN
532 ) RETURN til_rec_type IS
533 CURSOR til_pk_csr (p_id IN NUMBER) IS
534 SELECT
535 ID,
536 INV_RECEIV_LINE_CODE,
537 TAI_ID,
538 KLE_ID,
539 TPL_ID,
540 STY_ID,
541 ACN_ID_COST,
542 TIL_ID_REVERSES,
543 LINE_NUMBER,
544 OBJECT_VERSION_NUMBER,
545 AMOUNT,
546 QUANTITY,
547 RECEIVABLES_INVOICE_ID,
548 AMOUNT_APPLIED,
549 DATE_BILL_PERIOD_START,
550 DATE_BILL_PERIOD_END,
551 REQUEST_ID,
552 PROGRAM_APPLICATION_ID,
553 PROGRAM_ID,
554 PROGRAM_UPDATE_DATE,
555 ORG_ID,
556 INVENTORY_ORG_ID,
557 ISL_ID,
558 IBT_ID,
559 LATE_CHARGE_REC_ID,
560 CLL_ID,
561 -- Start Bug 4055540 fmiao 12/12/04--
562 INVENTORY_ITEM_ID,
563 -- End Bug 4055540 fmiao 12/12/04--
564 QTE_LINE_ID,
565 TXS_TRX_ID,
566 -- Start Bug 4673593
567 bank_acct_id,
568 -- End Bug 4673593
569 ATTRIBUTE_CATEGORY,
570 ATTRIBUTE1,
571 ATTRIBUTE2,
572 ATTRIBUTE3,
573 ATTRIBUTE4,
574 ATTRIBUTE5,
575 ATTRIBUTE6,
576 ATTRIBUTE7,
577 ATTRIBUTE8,
578 ATTRIBUTE9,
579 ATTRIBUTE10,
580 ATTRIBUTE11,
581 ATTRIBUTE12,
582 ATTRIBUTE13,
583 ATTRIBUTE14,
584 ATTRIBUTE15,
585 CREATED_BY,
586 CREATION_DATE,
587 LAST_UPDATED_BY,
588 LAST_UPDATE_DATE,
589 LAST_UPDATE_LOGIN,
590 -- start: 30-Jan-07 cklee Billing R12 project |
591 TXL_AR_LINE_NUMBER,
592 TXS_TRX_LINE_ID
593 -- end: 30-Jan-07 cklee Billing R12 project |
594 ,TAX_LINE_ID --14-May-08 sechawla 6619311 : ADDED
595
596 FROM Okl_Txl_Ar_Inv_Lns_B
597 WHERE okl_txl_ar_inv_lns_b.id = p_id;
598 l_til_pk til_pk_csr%ROWTYPE;
599 l_til_rec til_rec_type;
600 BEGIN
601 x_no_data_found := TRUE;
602 -- Get current database values
603 OPEN til_pk_csr (p_til_rec.id);
604 FETCH til_pk_csr INTO
605 l_til_rec.ID,
606 l_til_rec.INV_RECEIV_LINE_CODE,
607 l_til_rec.TAI_ID,
608 l_til_rec.KLE_ID,
609 l_til_rec.TPL_ID,
610 l_til_rec.STY_ID,
611 l_til_rec.ACN_ID_COST,
612 l_til_rec.TIL_ID_REVERSES,
613 l_til_rec.LINE_NUMBER,
614 l_til_rec.OBJECT_VERSION_NUMBER,
615 l_til_rec.AMOUNT,
616 l_til_rec.QUANTITY,
617 l_til_rec.RECEIVABLES_INVOICE_ID,
618 l_til_rec.AMOUNT_APPLIED,
619 l_til_rec.DATE_BILL_PERIOD_START,
620 l_til_rec.DATE_BILL_PERIOD_END,
621 l_til_rec.REQUEST_ID,
622 l_til_rec.PROGRAM_APPLICATION_ID,
623 l_til_rec.PROGRAM_ID,
624 l_til_rec.PROGRAM_UPDATE_DATE,
625 l_til_rec.ORG_ID,
626 l_til_rec.INVENTORY_ORG_ID,
627 l_til_rec.ISL_ID,
628 l_til_rec.IBT_ID,
629 l_til_rec.LATE_CHARGE_REC_ID,
630 l_til_rec.CLL_ID,
631 -- Start Bug 4055540 fmiao 12/12/04--
632 l_til_rec.INVENTORY_ITEM_ID,
633 -- End Bug 4055540 fmiao 12/12/04--
634 l_til_rec.QTE_LINE_ID,
635 l_til_rec.TXS_TRX_ID,
636 -- Start Bug 4673593
637 l_til_rec.bank_acct_id,
638 -- End Bug 4673593
639 l_til_rec.ATTRIBUTE_CATEGORY,
640 l_til_rec.ATTRIBUTE1,
641 l_til_rec.ATTRIBUTE2,
642 l_til_rec.ATTRIBUTE3,
643 l_til_rec.ATTRIBUTE4,
644 l_til_rec.ATTRIBUTE5,
645 l_til_rec.ATTRIBUTE6,
646 l_til_rec.ATTRIBUTE7,
647 l_til_rec.ATTRIBUTE8,
648 l_til_rec.ATTRIBUTE9,
649 l_til_rec.ATTRIBUTE10,
650 l_til_rec.ATTRIBUTE11,
651 l_til_rec.ATTRIBUTE12,
652 l_til_rec.ATTRIBUTE13,
653 l_til_rec.ATTRIBUTE14,
654 l_til_rec.ATTRIBUTE15,
655 l_til_rec.CREATED_BY,
656 l_til_rec.CREATION_DATE,
657 l_til_rec.LAST_UPDATED_BY,
658 l_til_rec.LAST_UPDATE_DATE,
659 l_til_rec.LAST_UPDATE_LOGIN,
660 -- start: 30-Jan-07 cklee Billing R12 project |
661 l_til_rec.TXL_AR_LINE_NUMBER,
662 l_til_rec.TXS_TRX_LINE_ID
663 -- end: 30-Jan-07 cklee Billing R12 project
664 ,l_til_rec.TAX_LINE_ID --14-May-08 sechawla 6619311 |
665 ;
666
667 x_no_data_found := til_pk_csr%NOTFOUND;
668 CLOSE til_pk_csr;
669 RETURN(l_til_rec);
670 END get_rec;
671
672 FUNCTION get_rec (
673 p_til_rec IN til_rec_type
674 ) RETURN til_rec_type IS
675 l_row_notfound BOOLEAN := TRUE;
676 BEGIN
677 RETURN(get_rec(p_til_rec, l_row_notfound));
678 END get_rec;
679 ---------------------------------------------------------------------------
680 -- FUNCTION get_rec for: OKL_TXL_AR_INV_LNS_TL
681 ---------------------------------------------------------------------------
682 FUNCTION get_rec (
683 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type,
684 x_no_data_found OUT NOCOPY BOOLEAN
685 ) RETURN okl_txl_ar_inv_lns_tl_rec_type IS
686 CURSOR okl_txl_ar_inv_lns_tl_pk_csr (p_id IN NUMBER,
687 p_language IN VARCHAR2) IS
688 SELECT
689 ID,
690 LANGUAGE,
691 SOURCE_LANG,
692 ERROR_MESSAGE,
693 SFWT_FLAG,
694 DESCRIPTION,
695 CREATED_BY,
696 CREATION_DATE,
697 LAST_UPDATED_BY,
698 LAST_UPDATE_DATE,
699 LAST_UPDATE_LOGIN
700 FROM Okl_Txl_Ar_Inv_Lns_Tl
701 WHERE okl_txl_ar_inv_lns_tl.id = p_id
702 AND okl_txl_ar_inv_lns_tl.LANGUAGE = p_language;
703 l_okl_txl_ar_inv_lns_tl_pk okl_txl_ar_inv_lns_tl_pk_csr%ROWTYPE;
704 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
705 BEGIN
706 x_no_data_found := TRUE;
707 -- Get current database values
708 OPEN okl_txl_ar_inv_lns_tl_pk_csr (p_okl_txl_ar_inv_lns_tl_rec.id,
709 p_okl_txl_ar_inv_lns_tl_rec.LANGUAGE);
710 FETCH okl_txl_ar_inv_lns_tl_pk_csr INTO
711 l_okl_txl_ar_inv_lns_tl_rec.ID,
712 l_okl_txl_ar_inv_lns_tl_rec.LANGUAGE,
713 l_okl_txl_ar_inv_lns_tl_rec.SOURCE_LANG,
714 l_okl_txl_ar_inv_lns_tl_rec.ERROR_MESSAGE,
715 l_okl_txl_ar_inv_lns_tl_rec.SFWT_FLAG,
716 l_okl_txl_ar_inv_lns_tl_rec.DESCRIPTION,
717 l_okl_txl_ar_inv_lns_tl_rec.CREATED_BY,
718 l_okl_txl_ar_inv_lns_tl_rec.CREATION_DATE,
719 l_okl_txl_ar_inv_lns_tl_rec.LAST_UPDATED_BY,
720 l_okl_txl_ar_inv_lns_tl_rec.LAST_UPDATE_DATE,
721 l_okl_txl_ar_inv_lns_tl_rec.LAST_UPDATE_LOGIN;
722 x_no_data_found := okl_txl_ar_inv_lns_tl_pk_csr%NOTFOUND;
723 CLOSE okl_txl_ar_inv_lns_tl_pk_csr;
724 RETURN(l_okl_txl_ar_inv_lns_tl_rec);
725 END get_rec;
726
727 FUNCTION get_rec (
728 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type
729 ) RETURN okl_txl_ar_inv_lns_tl_rec_type IS
730 l_row_notfound BOOLEAN := TRUE;
731 BEGIN
732 RETURN(get_rec(p_okl_txl_ar_inv_lns_tl_rec, l_row_notfound));
733 END get_rec;
734 ---------------------------------------------------------------------------
735 -- FUNCTION get_rec for: OKL_TXL_AR_INV_LNS_V
736 ---------------------------------------------------------------------------
737 FUNCTION get_rec (
738 p_tilv_rec IN tilv_rec_type,
739 x_no_data_found OUT NOCOPY BOOLEAN
740 ) RETURN tilv_rec_type IS
741 CURSOR okl_tilv_pk_csr (p_id IN NUMBER) IS
742 SELECT
743 ID,
744 OBJECT_VERSION_NUMBER,
745 ERROR_MESSAGE,
746 SFWT_FLAG,
747 KLE_ID,
748 TPL_ID,
749 TIL_ID_REVERSES,
750 INV_RECEIV_LINE_CODE,
751 STY_ID,
752 TAI_ID,
753 ACN_ID_COST,
754 AMOUNT,
755 LINE_NUMBER,
756 QUANTITY,
757 DESCRIPTION,
758 RECEIVABLES_INVOICE_ID,
759 DATE_BILL_PERIOD_START,
760 AMOUNT_APPLIED,
761 DATE_BILL_PERIOD_END,
762 ISL_ID,
763 IBT_ID,
764 LATE_CHARGE_REC_ID,
765 CLL_ID,
766 -- Start Bug 4055540 fmiao 12/12/04--
767 INVENTORY_ITEM_ID,
768 -- End Bug 4055540 fmiao 12/12/04--
769 QTE_LINE_ID,
770 TXS_TRX_ID,
771 -- Start Bug 4673593
772 bank_acct_id,
773 -- End Bug 4673593
774 ATTRIBUTE_CATEGORY,
775 ATTRIBUTE1,
776 ATTRIBUTE2,
777 ATTRIBUTE3,
778 ATTRIBUTE4,
779 ATTRIBUTE5,
780 ATTRIBUTE6,
781 ATTRIBUTE7,
782 ATTRIBUTE8,
783 ATTRIBUTE9,
784 ATTRIBUTE10,
785 ATTRIBUTE11,
786 ATTRIBUTE12,
787 ATTRIBUTE13,
788 ATTRIBUTE14,
789 ATTRIBUTE15,
790 REQUEST_ID,
791 PROGRAM_APPLICATION_ID,
792 PROGRAM_ID,
793 PROGRAM_UPDATE_DATE,
794 ORG_ID,
795 INVENTORY_ORG_ID,
796 CREATED_BY,
797 CREATION_DATE,
798 LAST_UPDATED_BY,
799 LAST_UPDATE_DATE,
800 LAST_UPDATE_LOGIN,
801 -- start: 30-Jan-07 cklee Billing R12 project |
802 TXL_AR_LINE_NUMBER,
803 TXS_TRX_LINE_ID
804 -- end: 30-Jan-07 cklee Billing R12 project
805 ,TAX_LINE_ID --14-May-08 sechawla 6619311 |
806
807 FROM Okl_Txl_Ar_Inv_Lns_V
808 WHERE okl_txl_ar_inv_lns_v.id = p_id;
809 l_okl_tilv_pk okl_tilv_pk_csr%ROWTYPE;
810 l_tilv_rec tilv_rec_type;
811 BEGIN
812 x_no_data_found := TRUE;
813 -- Get current database values
814 OPEN okl_tilv_pk_csr (p_tilv_rec.id);
815 FETCH okl_tilv_pk_csr INTO
816 l_tilv_rec.ID,
817 l_tilv_rec.OBJECT_VERSION_NUMBER,
818 l_tilv_rec.ERROR_MESSAGE,
819 l_tilv_rec.SFWT_FLAG,
820 l_tilv_rec.KLE_ID,
821 l_tilv_rec.TPL_ID,
822 l_tilv_rec.TIL_ID_REVERSES,
823 l_tilv_rec.INV_RECEIV_LINE_CODE,
824 l_tilv_rec.STY_ID,
825 l_tilv_rec.TAI_ID,
826 l_tilv_rec.ACN_ID_COST,
827 l_tilv_rec.AMOUNT,
828 l_tilv_rec.LINE_NUMBER,
829 l_tilv_rec.QUANTITY,
830 l_tilv_rec.DESCRIPTION,
831 l_tilv_rec.RECEIVABLES_INVOICE_ID,
832 l_tilv_rec.DATE_BILL_PERIOD_START,
833 l_tilv_rec.AMOUNT_APPLIED,
834 l_tilv_rec.DATE_BILL_PERIOD_END,
835 l_tilv_rec.ISL_ID,
836 l_tilv_rec.IBT_ID,
837 l_tilv_rec.LATE_CHARGE_REC_ID,
838 l_tilv_rec.CLL_ID,
839 -- Start Bug 4055540 fmiao 12/12/04--
840 l_tilv_rec.INVENTORY_ITEM_ID,
841 -- End Bug 4055540 fmiao 12/12/04--
842 l_tilv_rec.QTE_LINE_ID,
843 l_tilv_rec.TXS_TRX_ID,
844 -- Start Bug 4673593
845 l_tilv_rec.bank_acct_id,
846 -- End Bug 4673593
847 l_tilv_rec.ATTRIBUTE_CATEGORY,
848 l_tilv_rec.ATTRIBUTE1,
849 l_tilv_rec.ATTRIBUTE2,
850 l_tilv_rec.ATTRIBUTE3,
851 l_tilv_rec.ATTRIBUTE4,
852 l_tilv_rec.ATTRIBUTE5,
853 l_tilv_rec.ATTRIBUTE6,
854 l_tilv_rec.ATTRIBUTE7,
855 l_tilv_rec.ATTRIBUTE8,
856 l_tilv_rec.ATTRIBUTE9,
857 l_tilv_rec.ATTRIBUTE10,
858 l_tilv_rec.ATTRIBUTE11,
859 l_tilv_rec.ATTRIBUTE12,
860 l_tilv_rec.ATTRIBUTE13,
861 l_tilv_rec.ATTRIBUTE14,
862 l_tilv_rec.ATTRIBUTE15,
863 l_tilv_rec.REQUEST_ID,
864 l_tilv_rec.PROGRAM_APPLICATION_ID,
865 l_tilv_rec.PROGRAM_ID,
866 l_tilv_rec.PROGRAM_UPDATE_DATE,
867 l_tilv_rec.ORG_ID,
868 l_tilv_rec.INVENTORY_ORG_ID,
869 l_tilv_rec.CREATED_BY,
870 l_tilv_rec.CREATION_DATE,
871 l_tilv_rec.LAST_UPDATED_BY,
872 l_tilv_rec.LAST_UPDATE_DATE,
873 l_tilv_rec.LAST_UPDATE_LOGIN,
874
875 -- start: 30-Jan-07 cklee Billing R12 project |
876 l_tilv_rec.TXL_AR_LINE_NUMBER,
877 l_tilv_rec.TXS_TRX_LINE_ID
878 -- end: 30-Jan-07 cklee Billing R12 project |
879 ,l_tilv_rec.TAX_LINE_ID; --14-May-08 sechawla 6619311
880 x_no_data_found := okl_tilv_pk_csr%NOTFOUND;
881 CLOSE okl_tilv_pk_csr;
882 RETURN(l_tilv_rec);
883 END get_rec;
884
885 FUNCTION get_rec (
886 p_tilv_rec IN tilv_rec_type
887 ) RETURN tilv_rec_type IS
888 l_row_notfound BOOLEAN := TRUE;
889 BEGIN
890 RETURN(get_rec(p_tilv_rec, l_row_notfound));
891 END get_rec;
892
893 ----------------------------------------------------------
894 -- FUNCTION null_out_defaults for: OKL_TXL_AR_INV_LNS_V --
895 ----------------------------------------------------------
896 FUNCTION null_out_defaults (
897 p_tilv_rec IN tilv_rec_type
898 ) RETURN tilv_rec_type IS
899 l_tilv_rec tilv_rec_type := p_tilv_rec;
900 BEGIN
901 IF (l_tilv_rec.object_version_number = Okl_Api.G_MISS_NUM) THEN
902 l_tilv_rec.object_version_number := NULL;
903 END IF;
904 IF (l_tilv_rec.error_message = Okl_Api.G_MISS_CHAR) THEN
905 l_tilv_rec.error_message := NULL;
906 END IF;
907 IF (l_tilv_rec.sfwt_flag = Okl_Api.G_MISS_CHAR) THEN
908 l_tilv_rec.sfwt_flag := NULL;
909 END IF;
910 IF (l_tilv_rec.kle_id = Okl_Api.G_MISS_NUM) THEN
911 l_tilv_rec.kle_id := NULL;
912 END IF;
913 IF (l_tilv_rec.tpl_id = Okl_Api.G_MISS_NUM) THEN
914 l_tilv_rec.tpl_id := NULL;
915 END IF;
916 IF (l_tilv_rec.til_id_reverses = Okl_Api.G_MISS_NUM) THEN
917 l_tilv_rec.til_id_reverses := NULL;
918 END IF;
919 IF (l_tilv_rec.inv_receiv_line_code = Okl_Api.G_MISS_CHAR) THEN
920 l_tilv_rec.inv_receiv_line_code := NULL;
921 END IF;
922 IF (l_tilv_rec.sty_id = Okl_Api.G_MISS_NUM) THEN
923 l_tilv_rec.sty_id := NULL;
924 END IF;
925 IF (l_tilv_rec.tai_id = Okl_Api.G_MISS_NUM) THEN
926 l_tilv_rec.tai_id := NULL;
927 END IF;
928 IF (l_tilv_rec.acn_id_cost = Okl_Api.G_MISS_NUM) THEN
929 l_tilv_rec.acn_id_cost := NULL;
930 END IF;
931 IF (l_tilv_rec.amount = Okl_Api.G_MISS_NUM) THEN
932 l_tilv_rec.amount := NULL;
933 END IF;
934 IF (l_tilv_rec.line_number = Okl_Api.G_MISS_NUM) THEN
935 l_tilv_rec.line_number := NULL;
936 END IF;
937 IF (l_tilv_rec.quantity = Okl_Api.G_MISS_NUM) THEN
938 l_tilv_rec.quantity := NULL;
939 END IF;
940 IF (l_tilv_rec.description = Okl_Api.G_MISS_CHAR) THEN
941 l_tilv_rec.description := NULL;
942 END IF;
943 IF (l_tilv_rec.receivables_invoice_id = Okl_Api.G_MISS_NUM) THEN
944 l_tilv_rec.receivables_invoice_id := NULL;
945 END IF;
946 IF (l_tilv_rec.date_bill_period_start = Okl_Api.G_MISS_DATE) THEN
947 l_tilv_rec.date_bill_period_start := NULL;
948 END IF;
949 IF (l_tilv_rec.amount_applied = Okl_Api.G_MISS_NUM) THEN
950 l_tilv_rec.amount_applied := NULL;
951 END IF;
952 IF (l_tilv_rec.date_bill_period_end = Okl_Api.G_MISS_DATE) THEN
953 l_tilv_rec.date_bill_period_end := NULL;
954 END IF;
955 IF (l_tilv_rec.isl_id = Okl_Api.G_MISS_NUM) THEN
956 l_tilv_rec.isl_id := NULL;
957 END IF;
958 IF (l_tilv_rec.ibt_id = Okl_Api.G_MISS_NUM) THEN
959 l_tilv_rec.ibt_id := NULL;
960 END IF;
961 IF (l_tilv_rec.LATE_CHARGE_REC_ID = Okl_Api.G_MISS_NUM) THEN
962 l_tilv_rec.LATE_CHARGE_REC_ID := NULL;
963 END IF;
964 IF (l_tilv_rec.CLL_ID = Okl_Api.G_MISS_NUM) THEN
965 l_tilv_rec.CLL_ID := NULL;
966 END IF;
967 -- Start changes on remarketing by fmiao on 10/18/04 --
968 IF (l_tilv_rec.inventory_item_id = Okl_Api.G_MISS_NUM) THEN
969 l_tilv_rec.inventory_item_id := NULL;
970 END IF;
971 -- End changes on remarketing by fmiao on 10/18/04 --
972 IF (l_tilv_rec.qte_line_id = Okl_Api.G_MISS_NUM) THEN
973 l_tilv_rec.qte_line_id := NULL;
974 END IF;
975 IF (l_tilv_rec.txs_trx_id= Okl_Api.G_MISS_NUM) THEN
976 l_tilv_rec.txs_trx_id := NULL;
977 END IF;
978 -- Start Bug 4673593 --
979 IF (l_tilv_rec.bank_acct_id = Okl_Api.G_MISS_NUM) THEN
980 l_tilv_rec.bank_acct_id := NULL;
981 END IF;
982 -- End Bug 4673593 --
983 IF (l_tilv_rec.attribute_category = Okl_Api.G_MISS_CHAR) THEN
984 l_tilv_rec.attribute_category := NULL;
985 END IF;
986 IF (l_tilv_rec.attribute1 = Okl_Api.G_MISS_CHAR) THEN
987 l_tilv_rec.attribute1 := NULL;
988 END IF;
989 IF (l_tilv_rec.attribute2 = Okl_Api.G_MISS_CHAR) THEN
990 l_tilv_rec.attribute2 := NULL;
991 END IF;
992 IF (l_tilv_rec.attribute3 = Okl_Api.G_MISS_CHAR) THEN
993 l_tilv_rec.attribute3 := NULL;
994 END IF;
995 IF (l_tilv_rec.attribute4 = Okl_Api.G_MISS_CHAR) THEN
996 l_tilv_rec.attribute4 := NULL;
997 END IF;
998 IF (l_tilv_rec.attribute5 = Okl_Api.G_MISS_CHAR) THEN
999 l_tilv_rec.attribute5 := NULL;
1000 END IF;
1001 IF (l_tilv_rec.attribute6 = Okl_Api.G_MISS_CHAR) THEN
1002 l_tilv_rec.attribute6 := NULL;
1003 END IF;
1004 IF (l_tilv_rec.attribute7 = Okl_Api.G_MISS_CHAR) THEN
1005 l_tilv_rec.attribute7 := NULL;
1006 END IF;
1007 IF (l_tilv_rec.attribute8 = Okl_Api.G_MISS_CHAR) THEN
1008 l_tilv_rec.attribute8 := NULL;
1009 END IF;
1010 IF (l_tilv_rec.attribute9 = Okl_Api.G_MISS_CHAR) THEN
1011 l_tilv_rec.attribute9 := NULL;
1012 END IF;
1013 IF (l_tilv_rec.attribute10 = Okl_Api.G_MISS_CHAR) THEN
1014 l_tilv_rec.attribute10 := NULL;
1015 END IF;
1016 IF (l_tilv_rec.attribute11 = Okl_Api.G_MISS_CHAR) THEN
1017 l_tilv_rec.attribute11 := NULL;
1018 END IF;
1019 IF (l_tilv_rec.attribute12 = Okl_Api.G_MISS_CHAR) THEN
1020 l_tilv_rec.attribute12 := NULL;
1021 END IF;
1022 IF (l_tilv_rec.attribute13 = Okl_Api.G_MISS_CHAR) THEN
1023 l_tilv_rec.attribute13 := NULL;
1024 END IF;
1025 IF (l_tilv_rec.attribute14 = Okl_Api.G_MISS_CHAR) THEN
1026 l_tilv_rec.attribute14 := NULL;
1027 END IF;
1028 IF (l_tilv_rec.attribute15 = Okl_Api.G_MISS_CHAR) THEN
1029 l_tilv_rec.attribute15 := NULL;
1030 END IF;
1031 IF (l_tilv_rec.request_id = Okl_Api.G_MISS_NUM) THEN
1032 l_tilv_rec.request_id := NULL;
1033 END IF;
1034 IF (l_tilv_rec.program_application_id = Okl_Api.G_MISS_NUM) THEN
1035 l_tilv_rec.program_application_id := NULL;
1036 END IF;
1037 IF (l_tilv_rec.program_id = Okl_Api.G_MISS_NUM) THEN
1038 l_tilv_rec.program_id := NULL;
1039 END IF;
1040 IF (l_tilv_rec.program_update_date = Okl_Api.G_MISS_DATE) THEN
1041 l_tilv_rec.program_update_date := NULL;
1042 END IF;
1043 IF (l_tilv_rec.org_id = Okl_Api.G_MISS_NUM) THEN
1044 l_tilv_rec.org_id := NULL;
1045 END IF;
1046
1047 IF (l_tilv_rec.INVENTORY_org_id = Okl_Api.G_MISS_NUM) THEN
1048 l_tilv_rec.INVENTORY_org_id := NULL;
1049 END IF;
1050
1051 IF (l_tilv_rec.created_by = Okl_Api.G_MISS_NUM) THEN
1052 l_tilv_rec.created_by := NULL;
1053 END IF;
1054 IF (l_tilv_rec.creation_date = Okl_Api.G_MISS_DATE) THEN
1055 l_tilv_rec.creation_date := NULL;
1056 END IF;
1057 IF (l_tilv_rec.last_updated_by = Okl_Api.G_MISS_NUM) THEN
1058 l_tilv_rec.last_updated_by := NULL;
1059 END IF;
1060 IF (l_tilv_rec.last_update_date = Okl_Api.G_MISS_DATE) THEN
1061 l_tilv_rec.last_update_date := NULL;
1062 END IF;
1063 IF (l_tilv_rec.last_update_login = Okl_Api.G_MISS_NUM) THEN
1064 l_tilv_rec.last_update_login := NULL;
1065 END IF;
1066
1067
1068 -- start: 30-Jan-07 cklee Billing R12 project |
1069 IF (l_tilv_rec.TXL_AR_LINE_NUMBER = Okl_Api.G_MISS_NUM) THEN
1070 l_tilv_rec.TXL_AR_LINE_NUMBER := NULL;
1071 END IF;
1072 IF (l_tilv_rec.TXS_TRX_LINE_ID = Okl_Api.G_MISS_NUM) THEN
1073 l_tilv_rec.TXS_TRX_LINE_ID := NULL;
1074 END IF;
1075 -- end: 30-Jan-07 cklee Billing R12 project |
1076 --14-May-08 sechawla 6619311
1077 IF (l_tilv_rec.TAX_LINE_ID = Okl_Api.G_MISS_NUM) THEN
1078 l_tilv_rec.TAX_LINE_ID := NULL;
1079 END IF;
1080
1081 RETURN(l_tilv_rec);
1082 END null_out_defaults;
1083 ---------------------------------------------------------------------------
1084 -- PROCEDURE Validate_Attributes
1085 ---------------------------------------------------------------------------
1086 --------------------------------------------------
1087 -- Validate_Attributes for:OKL_TXL_AR_INV_LNS_V --
1088 --------------------------------------------------
1089 FUNCTION Validate_Attributes (
1090 p_tilv_rec IN tilv_rec_type
1091 ) RETURN VARCHAR2 IS
1092 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1093 -- Added 04/16/2001 -- Sunil Mathew
1094 x_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1095 BEGIN
1096
1097 --Added 04/17/2001 Sunil Mathew ---
1098 validate_inv_receiv_line_code (p_tilv_rec, x_return_status);
1099 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1100 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1101 l_return_status := x_return_status;
1102 RAISE G_EXCEPTION_HALT_VALIDATION;
1103 ELSE
1104 l_return_status := x_return_status; -- record that there was an error
1105 END IF;
1106 END IF;
1107
1108
1109 validate_tai_id(p_tilv_rec, x_return_status);
1110 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1111 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1112 l_return_status := x_return_status;
1113 RAISE G_EXCEPTION_HALT_VALIDATION;
1114 ELSE
1115 l_return_status := x_return_status; -- record that there was an error
1116 END IF;
1117 END IF;
1118
1119 validate_kle_id(p_tilv_rec, x_return_status);
1120 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1121 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1122 l_return_status := x_return_status;
1123 RAISE G_EXCEPTION_HALT_VALIDATION;
1124 ELSE
1125 l_return_status := x_return_status; -- record that there was an error
1126 END IF;
1127 END IF;
1128
1129 validate_tpl_id(p_tilv_rec, x_return_status);
1130 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1131 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1132 l_return_status := x_return_status;
1133 RAISE G_EXCEPTION_HALT_VALIDATION;
1134 ELSE
1135 l_return_status := x_return_status; -- record that there was an error
1136 END IF;
1137 END IF;
1138
1139
1140 validate_sty_id(p_tilv_rec, x_return_status);
1141 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1142 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1143 l_return_status := x_return_status;
1144 RAISE G_EXCEPTION_HALT_VALIDATION;
1145 ELSE
1146 l_return_status := x_return_status; -- record that there was an error
1147 END IF;
1148 END IF;
1149
1150 validate_acn_id_cost(p_tilv_rec, x_return_status);
1151 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1152 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1153 l_return_status := x_return_status;
1154 RAISE G_EXCEPTION_HALT_VALIDATION;
1155 ELSE
1156 l_return_status := x_return_status; -- record that there was an error
1157 END IF;
1158 END IF;
1159
1160 validate_til_id_reverses(p_tilv_rec, x_return_status);
1161 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1162 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1163 l_return_status := x_return_status;
1164 RAISE G_EXCEPTION_HALT_VALIDATION;
1165 ELSE
1166 l_return_status := x_return_status; -- record that there was an error
1167 END IF;
1168 END IF;
1169
1170 validate_id(p_tilv_rec, x_return_status);
1171 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1172 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1173 l_return_status := x_return_status;
1174 RAISE G_EXCEPTION_HALT_VALIDATION;
1175 ELSE
1176 l_return_status := x_return_status; -- record that there was an error
1177 END IF;
1178 END IF;
1179
1180 validate_object_version_number(p_tilv_rec, x_return_status);
1181 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1182 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1183 l_return_status := x_return_status;
1184 RAISE G_EXCEPTION_HALT_VALIDATION;
1185 ELSE
1186 l_return_status := x_return_status; -- record that there was an error
1187 END IF;
1188 END IF;
1189
1190 validate_line_number(p_tilv_rec, x_return_status);
1191 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1192 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1193 l_return_status := x_return_status;
1194 RAISE G_EXCEPTION_HALT_VALIDATION;
1195 ELSE
1196 l_return_status := x_return_status; -- record that there was an error
1197 END IF;
1198 END IF;
1199
1200 validate_org_id(p_tilv_rec, x_return_status);
1201 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1202 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1203 l_return_status := x_return_status;
1204 RAISE G_EXCEPTION_HALT_VALIDATION;
1205 ELSE
1206 l_return_status := x_return_status; -- record that there was an error
1207 END IF;
1208 END IF;
1209
1210 validate_inventory_org_id(p_tilv_rec, x_return_status);
1211 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
1212 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
1213 l_return_status := x_return_status;
1214 RAISE G_EXCEPTION_HALT_VALIDATION;
1215 ELSE
1216 l_return_status := x_return_status; -- record that there was an error
1217 END IF;
1218 END IF;
1219
1220 --Added 04/17/2001 Sunil Mathew ---
1221
1222 RETURN(l_return_status);
1223 END Validate_Attributes;
1224
1225 ---------------------------------------------------------------------------
1226 -- PROCEDURE Validate_Record
1227 ---------------------------------------------------------------------------
1228 ----------------------------------------------
1229 -- Validate_Record for:OKL_TXL_AR_INV_LNS_V --
1230 ----------------------------------------------
1231 FUNCTION Validate_Record (
1232 p_tilv_rec IN tilv_rec_type
1233 ) RETURN VARCHAR2 IS
1234 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1235 BEGIN
1236 RETURN (l_return_status);
1237 END Validate_Record;
1238
1239 ---------------------------------------------------------------------------
1240 -- PROCEDURE Migrate
1241 ---------------------------------------------------------------------------
1242 PROCEDURE migrate (
1243 p_from IN tilv_rec_type,
1244 p_to IN OUT NOCOPY til_rec_type
1245 ) IS
1246 BEGIN
1247 p_to.id := p_from.id;
1248 p_to.inv_receiv_line_code := p_from.inv_receiv_line_code;
1249 p_to.tai_id := p_from.tai_id;
1250 p_to.kle_id := p_from.kle_id;
1251 p_to.tpl_id := p_from.tpl_id;
1252 p_to.sty_id := p_from.sty_id;
1253 p_to.acn_id_cost := p_from.acn_id_cost;
1254 p_to.til_id_reverses := p_from.til_id_reverses;
1255 p_to.line_number := p_from.line_number;
1256 p_to.object_version_number := p_from.object_version_number;
1257 p_to.amount := p_from.amount;
1258 p_to.quantity := p_from.quantity;
1259 p_to.receivables_invoice_id := p_from.receivables_invoice_id;
1260 p_to.amount_applied := p_from.amount_applied;
1261 p_to.date_bill_period_start := p_from.date_bill_period_start;
1262 p_to.date_bill_period_end := p_from.date_bill_period_end;
1263 p_to.request_id := p_from.request_id;
1264 p_to.program_application_id := p_from.program_application_id;
1265 p_to.program_id := p_from.program_id;
1266 p_to.program_update_date := p_from.program_update_date;
1267 p_to.org_id := p_from.org_id;
1268 p_to.inventory_org_id := p_from.inventory_org_id;
1269 p_to.isl_id := p_from.isl_id;
1270 p_to.ibt_id := p_from.ibt_id;
1271 p_to.LATE_CHARGE_REC_ID := p_from.LATE_CHARGE_REC_ID;
1272 p_to.CLL_ID := p_from.CLL_ID;
1273 -- Start changes on remarketing by fmiao on 10/18/04 --
1274 p_to.inventory_item_id := p_from.inventory_item_id;
1275 -- End changes on remarketing by fmiao on 10/18/04 --
1276 p_to.qte_line_id := p_from.qte_line_id;
1277 p_to.txs_trx_id := p_from.txs_trx_id;
1278 -- Start Bug 4673593 --
1279 p_to.bank_acct_id := p_from.bank_acct_id;
1280 -- End Bug 4673593 --
1281 p_to.attribute_category := p_from.attribute_category;
1282 p_to.attribute1 := p_from.attribute1;
1283 p_to.attribute2 := p_from.attribute2;
1284 p_to.attribute3 := p_from.attribute3;
1285 p_to.attribute4 := p_from.attribute4;
1286 p_to.attribute5 := p_from.attribute5;
1287 p_to.attribute6 := p_from.attribute6;
1288 p_to.attribute7 := p_from.attribute7;
1289 p_to.attribute8 := p_from.attribute8;
1290 p_to.attribute9 := p_from.attribute9;
1291 p_to.attribute10 := p_from.attribute10;
1292 p_to.attribute11 := p_from.attribute11;
1293 p_to.attribute12 := p_from.attribute12;
1294 p_to.attribute13 := p_from.attribute13;
1295 p_to.attribute14 := p_from.attribute14;
1296 p_to.attribute15 := p_from.attribute15;
1297 p_to.created_by := p_from.created_by;
1298 p_to.creation_date := p_from.creation_date;
1299 p_to.last_updated_by := p_from.last_updated_by;
1300 p_to.last_update_date := p_from.last_update_date;
1301 p_to.last_update_login := p_from.last_update_login;
1302
1303 -- start: 30-Jan-07 cklee Billing R12 project |
1304 p_to.TXL_AR_LINE_NUMBER := p_from.TXL_AR_LINE_NUMBER;
1305 p_to.TXS_TRX_LINE_ID := p_from.TXS_TRX_LINE_ID;
1306
1307 -- end: 30-Jan-07 cklee Billing R12 project
1308
1309 --14-May-08 sechawla 6619311
1310 p_to.TAX_LINE_ID := p_from.TAX_LINE_ID;
1311
1312 END migrate;
1313 PROCEDURE migrate (
1314 p_from IN til_rec_type,
1315 p_to IN OUT NOCOPY tilv_rec_type
1316 ) IS
1317 BEGIN
1318 p_to.id := p_from.id;
1319 p_to.inv_receiv_line_code := p_from.inv_receiv_line_code;
1320 p_to.tai_id := p_from.tai_id;
1321 p_to.kle_id := p_from.kle_id;
1322 p_to.tpl_id := p_from.tpl_id;
1323 p_to.sty_id := p_from.sty_id;
1324 p_to.acn_id_cost := p_from.acn_id_cost;
1325 p_to.til_id_reverses := p_from.til_id_reverses;
1326 p_to.line_number := p_from.line_number;
1327 p_to.object_version_number := p_from.object_version_number;
1328 p_to.amount := p_from.amount;
1329 p_to.quantity := p_from.quantity;
1330 p_to.receivables_invoice_id := p_from.receivables_invoice_id;
1331 p_to.amount_applied := p_from.amount_applied;
1332 p_to.date_bill_period_start := p_from.date_bill_period_start;
1333 p_to.date_bill_period_end := p_from.date_bill_period_end;
1334 p_to.request_id := p_from.request_id;
1335 p_to.program_application_id := p_from.program_application_id;
1336 p_to.program_id := p_from.program_id;
1337 p_to.program_update_date := p_from.program_update_date;
1338 p_to.org_id := p_from.org_id;
1339 p_to.inventory_org_id := p_from.inventory_org_id;
1340 p_to.isl_id := p_from.isl_id;
1341 p_to.ibt_id := p_from.ibt_id;
1342 p_to.LATE_CHARGE_REC_ID := p_from.LATE_CHARGE_REC_ID;
1343 p_to.CLL_ID := p_from.CLL_ID;
1344 -- Start changes on remarketing by fmiao on 10/18/04 --
1345 p_to.inventory_item_id := p_from.inventory_item_id;
1346 -- End changes on remarketing by fmiao on 10/18/04 --
1347 p_to.qte_line_id := p_from.qte_line_id;
1348 p_to.txs_trx_id := p_from.txs_trx_id;
1349 -- Start Bug 4673593--
1350 p_to.bank_acct_id := p_from.bank_acct_id;
1351 -- End Bug 4673593 --
1352 p_to.attribute_category := p_from.attribute_category;
1353 p_to.attribute1 := p_from.attribute1;
1354 p_to.attribute2 := p_from.attribute2;
1355 p_to.attribute3 := p_from.attribute3;
1356 p_to.attribute4 := p_from.attribute4;
1357 p_to.attribute5 := p_from.attribute5;
1358 p_to.attribute6 := p_from.attribute6;
1359 p_to.attribute7 := p_from.attribute7;
1360 p_to.attribute8 := p_from.attribute8;
1361 p_to.attribute9 := p_from.attribute9;
1362 p_to.attribute10 := p_from.attribute10;
1363 p_to.attribute11 := p_from.attribute11;
1364 p_to.attribute12 := p_from.attribute12;
1365 p_to.attribute13 := p_from.attribute13;
1366 p_to.attribute14 := p_from.attribute14;
1367 p_to.attribute15 := p_from.attribute15;
1368 p_to.created_by := p_from.created_by;
1369 p_to.creation_date := p_from.creation_date;
1370 p_to.last_updated_by := p_from.last_updated_by;
1371 p_to.last_update_date := p_from.last_update_date;
1372 p_to.last_update_login := p_from.last_update_login;
1373
1374 -- start: 30-Jan-07 cklee Billing R12 project |
1375 p_to.TXL_AR_LINE_NUMBER := p_from.TXL_AR_LINE_NUMBER;
1376 p_to.TXS_TRX_LINE_ID := p_from.TXS_TRX_LINE_ID;
1377
1378 -- end: 30-Jan-07 cklee Billing R12 project
1379
1380 --14-May-08 sechawla 6619311
1381 p_to.TAX_LINE_ID := p_from.TAX_LINE_ID;
1382
1383 END migrate;
1384 PROCEDURE migrate (
1385 p_from IN tilv_rec_type,
1386 p_to IN OUT NOCOPY okl_txl_ar_inv_lns_tl_rec_type
1387 ) IS
1388 BEGIN
1389 p_to.id := p_from.id;
1390 p_to.error_message := p_from.error_message;
1391 p_to.sfwt_flag := p_from.sfwt_flag;
1392 p_to.description := p_from.description;
1393 p_to.created_by := p_from.created_by;
1394 p_to.creation_date := p_from.creation_date;
1395 p_to.last_updated_by := p_from.last_updated_by;
1396 p_to.last_update_date := p_from.last_update_date;
1397 p_to.last_update_login := p_from.last_update_login;
1398 END migrate;
1399 PROCEDURE migrate (
1400 p_from IN okl_txl_ar_inv_lns_tl_rec_type,
1401 p_to IN OUT NOCOPY tilv_rec_type
1402 ) IS
1403 BEGIN
1404 p_to.id := p_from.id;
1405 p_to.error_message := p_from.error_message;
1406 p_to.sfwt_flag := p_from.sfwt_flag;
1407 p_to.description := p_from.description;
1408 p_to.created_by := p_from.created_by;
1409 p_to.creation_date := p_from.creation_date;
1410 p_to.last_updated_by := p_from.last_updated_by;
1411 p_to.last_update_date := p_from.last_update_date;
1412 p_to.last_update_login := p_from.last_update_login;
1413 END migrate;
1414
1415 ---------------------------------------------------------------------------
1416 -- PROCEDURE validate_row
1417 ---------------------------------------------------------------------------
1418 -------------------------------------------
1419 -- validate_row for:OKL_TXL_AR_INV_LNS_V --
1420 -------------------------------------------
1421 PROCEDURE validate_row(
1422 p_api_version IN NUMBER,
1423 p_init_msg_list IN VARCHAR2,
1424 x_return_status OUT NOCOPY VARCHAR2,
1425 x_msg_count OUT NOCOPY NUMBER,
1426 x_msg_data OUT NOCOPY VARCHAR2,
1427 p_tilv_rec IN tilv_rec_type) IS
1428
1429 l_api_version CONSTANT NUMBER := 1;
1430 l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
1431 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1432 l_tilv_rec tilv_rec_type := p_tilv_rec;
1433 l_til_rec til_rec_type;
1434 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
1435 BEGIN
1436 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1437 G_PKG_NAME,
1438 p_init_msg_list,
1439 l_api_version,
1440 p_api_version,
1441 '_PVT',
1442 x_return_status);
1443 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1444 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1445 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1446 RAISE Okl_Api.G_EXCEPTION_ERROR;
1447 END IF;
1448 --- Validate all non-missing attributes (Item Level Validation)
1449 l_return_status := Validate_Attributes(l_tilv_rec);
1450 --- If any errors happen abort API
1451 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1452 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1453 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1454 RAISE Okl_Api.G_EXCEPTION_ERROR;
1455 END IF;
1456 l_return_status := Validate_Record(l_tilv_rec);
1457 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1458 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1459 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1460 RAISE Okl_Api.G_EXCEPTION_ERROR;
1461 END IF;
1462 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1463 EXCEPTION
1464 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1465 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1466 (
1467 l_api_name,
1468 G_PKG_NAME,
1469 'OKL_API.G_RET_STS_ERROR',
1470 x_msg_count,
1471 x_msg_data,
1472 '_PVT'
1473 );
1474 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1475 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1476 (
1477 l_api_name,
1478 G_PKG_NAME,
1479 'OKL_API.G_RET_STS_ERROR',
1480 x_msg_count,
1481 x_msg_data,
1482 '_PVT'
1483 );
1484 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1485 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1486 (
1487 l_api_name,
1488 G_PKG_NAME,
1489 'OKL_API.G_RET_STS_UNEXP_ERROR',
1490 x_msg_count,
1491 x_msg_data,
1492 '_PVT'
1493 );
1494 WHEN OTHERS THEN
1495 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1496 (
1497 l_api_name,
1498 G_PKG_NAME,
1499 'OTHERS',
1500 x_msg_count,
1501 x_msg_data,
1502 '_PVT'
1503 );
1504 END validate_row;
1505 ------------------------------------------
1506 -- PL/SQL TBL validate_row for:TILV_TBL --
1507 ------------------------------------------
1508 PROCEDURE validate_row(
1509 p_api_version IN NUMBER,
1510 p_init_msg_list IN VARCHAR2,
1511 x_return_status OUT NOCOPY VARCHAR2,
1512 x_msg_count OUT NOCOPY NUMBER,
1513 x_msg_data OUT NOCOPY VARCHAR2,
1514 p_tilv_tbl IN tilv_tbl_type) IS
1515
1516 l_api_version CONSTANT NUMBER := 1;
1517 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
1518 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1519 -- Begin Post-Generation Change
1520 -- overall error status
1521 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1522 -- End Post-Generation Change
1523 i NUMBER := 0;
1524 BEGIN
1525 Okl_Api.init_msg_list(p_init_msg_list);
1526 -- Make sure PL/SQL table has records in it before passing
1527 IF (p_tilv_tbl.COUNT > 0) THEN
1528 i := p_tilv_tbl.FIRST;
1529 LOOP
1530 validate_row (
1531 p_api_version => p_api_version,
1532 p_init_msg_list => Okl_Api.G_FALSE,
1533 x_return_status => x_return_status,
1534 x_msg_count => x_msg_count,
1535 x_msg_data => x_msg_data,
1536 p_tilv_rec => p_tilv_tbl(i));
1537 -- Begin Post-Generation Change
1538 -- store the highest degree of error
1539 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
1540 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1541 l_overall_status := x_return_status;
1542 END IF;
1543 END IF;
1544 -- End Post-Generation Change
1545 EXIT WHEN (i = p_tilv_tbl.LAST);
1546 i := p_tilv_tbl.NEXT(i);
1547 END LOOP;
1548 -- Begin Post-Generation Change
1549 -- return overall status
1550 x_return_status := l_overall_status;
1551 -- End Post-Generation Change
1552 END IF;
1553 EXCEPTION
1554 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1555 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1556 (
1557 l_api_name,
1558 G_PKG_NAME,
1559 'OKL_API.G_RET_STS_ERROR',
1560 x_msg_count,
1561 x_msg_data,
1562 '_PVT'
1563 );
1564 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1565 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1566 (
1567 l_api_name,
1568 G_PKG_NAME,
1569 'OKL_API.G_RET_STS_ERROR',
1570 x_msg_count,
1571 x_msg_data,
1572 '_PVT'
1573 );
1574 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1575 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1576 (
1577 l_api_name,
1578 G_PKG_NAME,
1579 'OKL_API.G_RET_STS_UNEXP_ERROR',
1580 x_msg_count,
1581 x_msg_data,
1582 '_PVT'
1583 );
1584 WHEN OTHERS THEN
1585 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1586 (
1587 l_api_name,
1588 G_PKG_NAME,
1589 'OTHERS',
1590 x_msg_count,
1591 x_msg_data,
1592 '_PVT'
1593 );
1594 END validate_row;
1595
1596 ---------------------------------------------------------------------------
1597 -- PROCEDURE insert_row
1598 ---------------------------------------------------------------------------
1599 -----------------------------------------
1600 -- insert_row for:OKL_TXL_AR_INV_LNS_B --
1601 -----------------------------------------
1602 PROCEDURE insert_row(
1603 p_init_msg_list IN VARCHAR2,
1604 x_return_status OUT NOCOPY VARCHAR2,
1605 x_msg_count OUT NOCOPY NUMBER,
1606 x_msg_data OUT NOCOPY VARCHAR2,
1607 p_til_rec IN til_rec_type,
1608 x_til_rec OUT NOCOPY til_rec_type) IS
1609
1610 l_api_version CONSTANT NUMBER := 1;
1611 l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
1612 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1613 l_til_rec til_rec_type := p_til_rec;
1614 l_def_til_rec til_rec_type;
1615 ---------------------------------------------
1616 -- Set_Attributes for:OKL_TXL_AR_INV_LNS_B --
1617 ---------------------------------------------
1618 FUNCTION Set_Attributes (
1619 p_til_rec IN til_rec_type,
1620 x_til_rec OUT NOCOPY til_rec_type
1621 ) RETURN VARCHAR2 IS
1622 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1623 BEGIN
1624 x_til_rec := p_til_rec;
1625 RETURN(l_return_status);
1626 END Set_Attributes;
1627 BEGIN
1628 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1629 p_init_msg_list,
1630 '_PVT',
1631 x_return_status);
1632 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1633 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1634 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1635 RAISE Okl_Api.G_EXCEPTION_ERROR;
1636 END IF;
1637 --- Setting item attributes
1638 l_return_status := Set_Attributes(
1639 p_til_rec, -- IN
1640 l_til_rec); -- OUT
1641 --- If any errors happen abort API
1642 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1643 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1644 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1645 RAISE Okl_Api.G_EXCEPTION_ERROR;
1646 END IF;
1647 INSERT INTO OKL_TXL_AR_INV_LNS_B(
1648 id,
1649 inv_receiv_line_code,
1650 tai_id,
1651 kle_id,
1652 tpl_id,
1653 sty_id,
1654 acn_id_cost,
1655 til_id_reverses,
1656 line_number,
1657 object_version_number,
1658 amount,
1659 quantity,
1660 receivables_invoice_id,
1661 amount_applied,
1662 date_bill_period_start,
1663 date_bill_period_end,
1664 request_id,
1665 program_application_id,
1666 program_id,
1667 program_update_date,
1668 org_id,
1669 inventory_org_id,
1670 isl_id,
1671 ibt_id,
1672 LATE_CHARGE_REC_ID,
1673 CLL_ID,
1674 -- Start changes on remarketing by fmiao on 10/18/04 --
1675 inventory_item_id,
1676 -- End changes on remarketing by fmiao on 10/18/04 --
1677 qte_line_id,
1678 txs_trx_id,
1679 -- Start Bug 4673593 --
1680 bank_acct_id,
1681 -- End Bug 4673593 --
1682 attribute_category,
1683 attribute1,
1684 attribute2,
1685 attribute3,
1686 attribute4,
1687 attribute5,
1688 attribute6,
1689 attribute7,
1690 attribute8,
1691 attribute9,
1692 attribute10,
1693 attribute11,
1694 attribute12,
1695 attribute13,
1696 attribute14,
1697 attribute15,
1698 created_by,
1699 creation_date,
1700 last_updated_by,
1701 last_update_date,
1702 last_update_login,
1703 -- start: 30-Jan-07 cklee Billing R12 project |
1704 TXL_AR_LINE_NUMBER,
1705 TXS_TRX_LINE_ID
1706 -- end: 30-Jan-07 cklee Billing R12 project |
1707 ,TAX_LINE_ID --14-May-08 sechawla 6619311
1708 )
1709
1710 VALUES (
1711 l_til_rec.id,
1712 l_til_rec.inv_receiv_line_code,
1713 l_til_rec.tai_id,
1714 l_til_rec.kle_id,
1715 l_til_rec.tpl_id,
1716 l_til_rec.sty_id,
1717 l_til_rec.acn_id_cost,
1718 l_til_rec.til_id_reverses,
1719 l_til_rec.line_number,
1720 l_til_rec.object_version_number,
1721 l_til_rec.amount,
1722 l_til_rec.quantity,
1723 l_til_rec.receivables_invoice_id,
1724 l_til_rec.amount_applied,
1725 l_til_rec.date_bill_period_start,
1726 l_til_rec.date_bill_period_end,
1727 l_til_rec.request_id,
1728 l_til_rec.program_application_id,
1729 l_til_rec.program_id,
1730 l_til_rec.program_update_date,
1731 l_til_rec.org_id,
1732 l_til_rec.inventory_org_id,
1733 l_til_rec.isl_id,
1734 l_til_rec.ibt_id,
1735 l_til_rec.LATE_CHARGE_REC_ID,
1736 l_til_rec.CLL_ID,
1737 -- Start changes on remarketing by fmiao on 10/18/04 --
1738 l_til_rec.inventory_item_id,
1739 -- End changes on remarketing by fmiao on 10/18/04 --
1740 l_til_rec.qte_line_id,
1741 l_til_rec.txs_trx_id,
1742 -- Start Bug 4673593 --
1743 l_til_rec.bank_acct_id,
1744 -- End Bug 4673593 --
1745
1746 l_til_rec.attribute_category,
1747 l_til_rec.attribute1,
1748 l_til_rec.attribute2,
1749 l_til_rec.attribute3,
1750 l_til_rec.attribute4,
1751 l_til_rec.attribute5,
1752 l_til_rec.attribute6,
1753 l_til_rec.attribute7,
1754 l_til_rec.attribute8,
1755 l_til_rec.attribute9,
1756 l_til_rec.attribute10,
1757 l_til_rec.attribute11,
1758 l_til_rec.attribute12,
1759 l_til_rec.attribute13,
1760 l_til_rec.attribute14,
1761 l_til_rec.attribute15,
1762 l_til_rec.created_by,
1763 l_til_rec.creation_date,
1764 l_til_rec.last_updated_by,
1765 l_til_rec.last_update_date,
1766 l_til_rec.last_update_login,
1767 -- start: 30-Jan-07 cklee Billing R12 project |
1768 l_til_rec.TXL_AR_LINE_NUMBER,
1769 l_til_rec.TXS_TRX_LINE_ID
1770 -- end: 30-Jan-07 cklee Billing R12 project |
1771 ,l_til_rec.TAX_LINE_ID --14-May-08 sechawla 6619311
1772 );
1773
1774 -- Set OUT values
1775 x_til_rec := l_til_rec;
1776 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1777 EXCEPTION
1778 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1779 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1780 (
1781 l_api_name,
1782 G_PKG_NAME,
1783 'OKL_API.G_RET_STS_ERROR',
1784 x_msg_count,
1785 x_msg_data,
1786 '_PVT'
1787 );
1788 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1789 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1790 (
1791 l_api_name,
1792 G_PKG_NAME,
1793 'OKL_API.G_RET_STS_ERROR',
1794 x_msg_count,
1795 x_msg_data,
1796 '_PVT'
1797 );
1798 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1799 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1800 (
1801 l_api_name,
1802 G_PKG_NAME,
1803 'OKL_API.G_RET_STS_UNEXP_ERROR',
1804 x_msg_count,
1805 x_msg_data,
1806 '_PVT'
1807 );
1808 WHEN OTHERS THEN
1809 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1810 (
1811 l_api_name,
1812 G_PKG_NAME,
1813 'OTHERS',
1814 x_msg_count,
1815 x_msg_data,
1816 '_PVT'
1817 );
1818 END insert_row;
1819 ------------------------------------------
1820 -- insert_row for:OKL_TXL_AR_INV_LNS_TL --
1821 ------------------------------------------
1822 PROCEDURE insert_row(
1823 p_init_msg_list IN VARCHAR2,
1824 x_return_status OUT NOCOPY VARCHAR2,
1825 x_msg_count OUT NOCOPY NUMBER,
1826 x_msg_data OUT NOCOPY VARCHAR2,
1827 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type,
1828 x_okl_txl_ar_inv_lns_tl_rec OUT NOCOPY okl_txl_ar_inv_lns_tl_rec_type) IS
1829
1830 l_api_version CONSTANT NUMBER := 1;
1831 l_api_name CONSTANT VARCHAR2(30) := 'TL_insert_row';
1832 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1833 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type := p_okl_txl_ar_inv_lns_tl_rec;
1834 ldefokltxlarinvlnstlrec okl_txl_ar_inv_lns_tl_rec_type;
1835 CURSOR get_languages IS
1836 SELECT *
1837 FROM FND_LANGUAGES
1838 WHERE INSTALLED_FLAG IN ('I', 'B');
1839 ----------------------------------------------
1840 -- Set_Attributes for:OKL_TXL_AR_INV_LNS_TL --
1841 ----------------------------------------------
1842 FUNCTION Set_Attributes (
1843 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type,
1844 x_okl_txl_ar_inv_lns_tl_rec OUT NOCOPY okl_txl_ar_inv_lns_tl_rec_type
1845 ) RETURN VARCHAR2 IS
1846 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1847 BEGIN
1848 x_okl_txl_ar_inv_lns_tl_rec := p_okl_txl_ar_inv_lns_tl_rec;
1849 x_okl_txl_ar_inv_lns_tl_rec.LANGUAGE := USERENV('LANG');
1850 x_okl_txl_ar_inv_lns_tl_rec.SOURCE_LANG := USERENV('LANG');
1851 RETURN(l_return_status);
1852 END Set_Attributes;
1853 BEGIN
1854 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1855 p_init_msg_list,
1856 '_PVT',
1857 x_return_status);
1858 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1859 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1860 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1861 RAISE Okl_Api.G_EXCEPTION_ERROR;
1862 END IF;
1863 --- Setting item attributes
1864 l_return_status := Set_Attributes(
1865 p_okl_txl_ar_inv_lns_tl_rec, -- IN
1866 l_okl_txl_ar_inv_lns_tl_rec); -- OUT
1867 --- If any errors happen abort API
1868 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1869 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1870 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1871 RAISE Okl_Api.G_EXCEPTION_ERROR;
1872 END IF;
1873 FOR l_lang_rec IN get_languages LOOP
1874 l_okl_txl_ar_inv_lns_tl_rec.LANGUAGE := l_lang_rec.language_code;
1875 INSERT INTO OKL_TXL_AR_INV_LNS_TL(
1876 id,
1877 LANGUAGE,
1878 source_lang,
1879 error_message,
1880 sfwt_flag,
1881 description,
1882 created_by,
1883 creation_date,
1884 last_updated_by,
1885 last_update_date,
1886 last_update_login)
1887 VALUES (
1888 l_okl_txl_ar_inv_lns_tl_rec.id,
1889 l_okl_txl_ar_inv_lns_tl_rec.LANGUAGE,
1890 l_okl_txl_ar_inv_lns_tl_rec.source_lang,
1891 l_okl_txl_ar_inv_lns_tl_rec.error_message,
1892 l_okl_txl_ar_inv_lns_tl_rec.sfwt_flag,
1893 l_okl_txl_ar_inv_lns_tl_rec.description,
1894 l_okl_txl_ar_inv_lns_tl_rec.created_by,
1895 l_okl_txl_ar_inv_lns_tl_rec.creation_date,
1896 l_okl_txl_ar_inv_lns_tl_rec.last_updated_by,
1897 l_okl_txl_ar_inv_lns_tl_rec.last_update_date,
1898 l_okl_txl_ar_inv_lns_tl_rec.last_update_login);
1899 END LOOP;
1900 -- Set OUT values
1901 x_okl_txl_ar_inv_lns_tl_rec := l_okl_txl_ar_inv_lns_tl_rec;
1902 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1903 EXCEPTION
1904 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1905 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1906 (
1907 l_api_name,
1908 G_PKG_NAME,
1909 'OKL_API.G_RET_STS_ERROR',
1910 x_msg_count,
1911 x_msg_data,
1912 '_PVT'
1913 );
1914 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1915 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1916 (
1917 l_api_name,
1918 G_PKG_NAME,
1919 'OKL_API.G_RET_STS_ERROR',
1920 x_msg_count,
1921 x_msg_data,
1922 '_PVT'
1923 );
1924 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1925 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1926 (
1927 l_api_name,
1928 G_PKG_NAME,
1929 'OKL_API.G_RET_STS_UNEXP_ERROR',
1930 x_msg_count,
1931 x_msg_data,
1932 '_PVT'
1933 );
1934 WHEN OTHERS THEN
1935 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1936 (
1937 l_api_name,
1938 G_PKG_NAME,
1939 'OTHERS',
1940 x_msg_count,
1941 x_msg_data,
1942 '_PVT'
1943 );
1944 END insert_row;
1945 -----------------------------------------
1946 -- insert_row for:OKL_TXL_AR_INV_LNS_V --
1947 -----------------------------------------
1948 PROCEDURE insert_row(
1949 p_api_version IN NUMBER,
1950 p_init_msg_list IN VARCHAR2,
1951 x_return_status OUT NOCOPY VARCHAR2,
1952 x_msg_count OUT NOCOPY NUMBER,
1953 x_msg_data OUT NOCOPY VARCHAR2,
1954 p_tilv_rec IN tilv_rec_type,
1955 x_tilv_rec OUT NOCOPY tilv_rec_type) IS
1956
1957 l_api_version CONSTANT NUMBER := 1;
1958 l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1959 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1960 l_tilv_rec tilv_rec_type;
1961 l_def_tilv_rec tilv_rec_type;
1962 l_til_rec til_rec_type;
1963 lx_til_rec til_rec_type;
1964 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
1965 lx_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
1966 -------------------------------
1967 -- FUNCTION fill_who_columns --
1968 -------------------------------
1969 FUNCTION fill_who_columns (
1970 p_tilv_rec IN tilv_rec_type
1971 ) RETURN tilv_rec_type IS
1972 l_tilv_rec tilv_rec_type := p_tilv_rec;
1973 BEGIN
1974 l_tilv_rec.CREATION_DATE := SYSDATE;
1975 l_tilv_rec.CREATED_BY := Fnd_Global.USER_ID;
1976 l_tilv_rec.LAST_UPDATE_DATE := l_tilv_rec.CREATION_DATE;
1977 l_tilv_rec.LAST_UPDATED_BY := Fnd_Global.USER_ID;
1978 l_tilv_rec.LAST_UPDATE_LOGIN := Fnd_Global.LOGIN_ID;
1979 RETURN(l_tilv_rec);
1980 END fill_who_columns;
1981 ---------------------------------------------
1982 -- Set_Attributes for:OKL_TXL_AR_INV_LNS_V --
1983 ---------------------------------------------
1984 FUNCTION Set_Attributes (
1985 p_tilv_rec IN tilv_rec_type,
1986 x_tilv_rec OUT NOCOPY tilv_rec_type
1987 ) RETURN VARCHAR2 IS
1988 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1989 BEGIN
1990 x_tilv_rec := p_tilv_rec;
1991 x_tilv_rec.OBJECT_VERSION_NUMBER := 1;
1992 x_tilv_rec.SFWT_FLAG := 'N';
1993
1994 IF (x_tilv_rec.request_id IS NULL OR x_tilv_rec.request_id = Okl_Api.G_MISS_NUM) THEN
1995 SELECT
1996 DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
1997 DECODE(Fnd_Global.PROG_APPL_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
1998 DECODE(Fnd_Global.CONC_PROGRAM_ID,-1,NULL,Fnd_Global.CONC_PROGRAM_ID),
1999 DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,SYSDATE)
2000 INTO
2001 x_tilv_rec.request_id,
2002 x_tilv_rec.program_application_id,
2003 x_tilv_rec.program_id,
2004 x_tilv_rec.program_update_date
2005 FROM dual;
2006 END IF;
2007
2008
2009 RETURN(l_return_status);
2010 END Set_Attributes;
2011 BEGIN
2012 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2013 G_PKG_NAME,
2014 p_init_msg_list,
2015 l_api_version,
2016 p_api_version,
2017 '_PVT',
2018 x_return_status);
2019 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2020 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2021 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2022 RAISE Okl_Api.G_EXCEPTION_ERROR;
2023 END IF;
2024 l_tilv_rec := null_out_defaults(p_tilv_rec);
2025 -- Set primary key value
2026 l_tilv_rec.ID := get_seq_id;
2027 --- Setting item attributes
2028 l_return_status := Set_Attributes(
2029 l_tilv_rec, -- IN
2030 l_def_tilv_rec); -- OUT
2031 --- If any errors happen abort API
2032 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2033 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2034 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2035 RAISE Okl_Api.G_EXCEPTION_ERROR;
2036 END IF;
2037 l_def_tilv_rec := fill_who_columns(l_def_tilv_rec);
2038 --- Validate all non-missing attributes (Item Level Validation)
2039 l_return_status := Validate_Attributes(l_def_tilv_rec);
2040 --- If any errors happen abort API
2041 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2042 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2043 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2044 RAISE Okl_Api.G_EXCEPTION_ERROR;
2045 END IF;
2046 l_return_status := Validate_Record(l_def_tilv_rec);
2047 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2048 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2049 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2050 RAISE Okl_Api.G_EXCEPTION_ERROR;
2051 END IF;
2052 --------------------------------------
2053 -- Move VIEW record to "Child" records
2054 --------------------------------------
2055 migrate(l_def_tilv_rec, l_til_rec);
2056 migrate(l_def_tilv_rec, l_okl_txl_ar_inv_lns_tl_rec);
2057 --------------------------------------------
2058 -- Call the INSERT_ROW for each child record
2059 --------------------------------------------
2060 insert_row(
2061 p_init_msg_list,
2062 x_return_status,
2063 x_msg_count,
2064 x_msg_data,
2065 l_til_rec,
2066 lx_til_rec
2067 );
2068 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2069 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2070 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2071 RAISE Okl_Api.G_EXCEPTION_ERROR;
2072 END IF;
2073 migrate(lx_til_rec, l_def_tilv_rec);
2074 insert_row(
2075 p_init_msg_list,
2076 x_return_status,
2077 x_msg_count,
2078 x_msg_data,
2079 l_okl_txl_ar_inv_lns_tl_rec,
2080 lx_okl_txl_ar_inv_lns_tl_rec
2081 );
2082 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2083 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2084 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2085 RAISE Okl_Api.G_EXCEPTION_ERROR;
2086 END IF;
2087 migrate(lx_okl_txl_ar_inv_lns_tl_rec, l_def_tilv_rec);
2088 -- Set OUT values
2089 x_tilv_rec := l_def_tilv_rec;
2090 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2091 EXCEPTION
2092 WHEN G_EXCEPTION_HALT_VALIDATION THEN
2093 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2094 (
2095 l_api_name,
2096 G_PKG_NAME,
2097 'OKL_API.G_RET_STS_ERROR',
2098 x_msg_count,
2099 x_msg_data,
2100 '_PVT'
2101 );
2102 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2103 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2104 (
2105 l_api_name,
2106 G_PKG_NAME,
2107 'OKL_API.G_RET_STS_ERROR',
2108 x_msg_count,
2109 x_msg_data,
2110 '_PVT'
2111 );
2112 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2113 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2114 (
2115 l_api_name,
2116 G_PKG_NAME,
2117 'OKL_API.G_RET_STS_UNEXP_ERROR',
2118 x_msg_count,
2119 x_msg_data,
2120 '_PVT'
2121 );
2122 WHEN OTHERS THEN
2123 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2124 (
2125 l_api_name,
2126 G_PKG_NAME,
2127 'OTHERS',
2128 x_msg_count,
2129 x_msg_data,
2130 '_PVT'
2131 );
2132 END insert_row;
2133 ----------------------------------------
2134 -- PL/SQL TBL insert_row for:TILV_TBL --
2135 ----------------------------------------
2136 PROCEDURE insert_row(
2137 p_api_version IN NUMBER,
2138 p_init_msg_list IN VARCHAR2,
2139 x_return_status OUT NOCOPY VARCHAR2,
2140 x_msg_count OUT NOCOPY NUMBER,
2141 x_msg_data OUT NOCOPY VARCHAR2,
2142 p_tilv_tbl IN tilv_tbl_type,
2143 x_tilv_tbl OUT NOCOPY tilv_tbl_type) IS
2144
2145 l_api_version CONSTANT NUMBER := 1;
2146 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
2147 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2148 -- Begin Post-Generation Change
2149 -- overall error status
2150 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2151 -- End Post-Generation Change
2152 i NUMBER := 0;
2153 BEGIN
2154 Okl_Api.init_msg_list(p_init_msg_list);
2155 -- Make sure PL/SQL table has records in it before passing
2156 IF (p_tilv_tbl.COUNT > 0) THEN
2157 i := p_tilv_tbl.FIRST;
2158 LOOP
2159 insert_row (
2160 p_api_version => p_api_version,
2161 p_init_msg_list => Okl_Api.G_FALSE,
2162 x_return_status => x_return_status,
2163 x_msg_count => x_msg_count,
2164 x_msg_data => x_msg_data,
2165 p_tilv_rec => p_tilv_tbl(i),
2166 x_tilv_rec => x_tilv_tbl(i));
2167 -- Begin Post-Generation Change
2168 -- store the highest degree of error
2169 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
2170 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
2171 l_overall_status := x_return_status;
2172 END IF;
2173 END IF;
2174 -- End Post-Generation Change
2175 EXIT WHEN (i = p_tilv_tbl.LAST);
2176 i := p_tilv_tbl.NEXT(i);
2177 END LOOP;
2178 -- Begin Post-Generation Change
2179 -- return overall status
2180 x_return_status := l_overall_status;
2181 -- End Post-Generation Change
2182 END IF;
2183 EXCEPTION
2184 WHEN G_EXCEPTION_HALT_VALIDATION THEN
2185 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2186 (
2187 l_api_name,
2188 G_PKG_NAME,
2189 'OKL_API.G_RET_STS_ERROR',
2190 x_msg_count,
2191 x_msg_data,
2192 '_PVT'
2193 );
2194 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2195 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2196 (
2197 l_api_name,
2198 G_PKG_NAME,
2199 'OKL_API.G_RET_STS_ERROR',
2200 x_msg_count,
2201 x_msg_data,
2202 '_PVT'
2203 );
2204 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2205 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2206 (
2207 l_api_name,
2208 G_PKG_NAME,
2209 'OKL_API.G_RET_STS_UNEXP_ERROR',
2210 x_msg_count,
2211 x_msg_data,
2212 '_PVT'
2213 );
2214 WHEN OTHERS THEN
2215 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2216 (
2217 l_api_name,
2218 G_PKG_NAME,
2219 'OTHERS',
2220 x_msg_count,
2221 x_msg_data,
2222 '_PVT'
2223 );
2224 END insert_row;
2225
2226 ---------------------------------------------------------------------------
2227 -- PROCEDURE lock_row
2228 ---------------------------------------------------------------------------
2229 ---------------------------------------
2230 -- lock_row for:OKL_TXL_AR_INV_LNS_B --
2231 ---------------------------------------
2232 PROCEDURE lock_row(
2233 p_init_msg_list IN VARCHAR2,
2234 x_return_status OUT NOCOPY VARCHAR2,
2235 x_msg_count OUT NOCOPY NUMBER,
2236 x_msg_data OUT NOCOPY VARCHAR2,
2237 p_til_rec IN til_rec_type) IS
2238
2239 E_Resource_Busy EXCEPTION;
2240 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
2241 CURSOR lock_csr (p_til_rec IN til_rec_type) IS
2242 SELECT OBJECT_VERSION_NUMBER
2243 FROM OKL_TXL_AR_INV_LNS_B
2244 WHERE ID = p_til_rec.id
2245 AND OBJECT_VERSION_NUMBER = p_til_rec.object_version_number
2246 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
2247
2248 CURSOR lchk_csr (p_til_rec IN til_rec_type) IS
2249 SELECT OBJECT_VERSION_NUMBER
2250 FROM OKL_TXL_AR_INV_LNS_B
2251 WHERE ID = p_til_rec.id;
2252 l_api_version CONSTANT NUMBER := 1;
2253 l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
2254 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2255 l_object_version_number OKL_TXL_AR_INV_LNS_B.OBJECT_VERSION_NUMBER%TYPE;
2256 lc_object_version_number OKL_TXL_AR_INV_LNS_B.OBJECT_VERSION_NUMBER%TYPE;
2257 l_row_notfound BOOLEAN := FALSE;
2258 lc_row_notfound BOOLEAN := FALSE;
2259 BEGIN
2260 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2261 p_init_msg_list,
2262 '_PVT',
2263 x_return_status);
2264 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2265 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2266 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2267 RAISE Okl_Api.G_EXCEPTION_ERROR;
2268 END IF;
2269 BEGIN
2270 OPEN lock_csr(p_til_rec);
2271 FETCH lock_csr INTO l_object_version_number;
2272 l_row_notfound := lock_csr%NOTFOUND;
2273 CLOSE lock_csr;
2274 EXCEPTION
2275 WHEN E_Resource_Busy THEN
2276 IF (lock_csr%ISOPEN) THEN
2277 CLOSE lock_csr;
2278 END IF;
2279 Okl_Api.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
2280 RAISE App_Exceptions.RECORD_LOCK_EXCEPTION;
2281 END;
2282
2283 IF ( l_row_notfound ) THEN
2284 OPEN lchk_csr(p_til_rec);
2285 FETCH lchk_csr INTO lc_object_version_number;
2286 lc_row_notfound := lchk_csr%NOTFOUND;
2287 CLOSE lchk_csr;
2288 END IF;
2289 IF (lc_row_notfound) THEN
2290 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
2291 RAISE Okl_Api.G_EXCEPTION_ERROR;
2292 ELSIF lc_object_version_number > p_til_rec.object_version_number THEN
2293 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
2294 RAISE Okl_Api.G_EXCEPTION_ERROR;
2295 ELSIF lc_object_version_number <> p_til_rec.object_version_number THEN
2296 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
2297 RAISE Okl_Api.G_EXCEPTION_ERROR;
2298 ELSIF lc_object_version_number = -1 THEN
2299 Okl_Api.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
2300 RAISE Okl_Api.G_EXCEPTION_ERROR;
2301 END IF;
2302 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2303 EXCEPTION
2304 WHEN G_EXCEPTION_HALT_VALIDATION THEN
2305 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2306 (
2307 l_api_name,
2308 G_PKG_NAME,
2309 'OKL_API.G_RET_STS_ERROR',
2310 x_msg_count,
2311 x_msg_data,
2312 '_PVT'
2313 );
2314 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2315 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2316 (
2317 l_api_name,
2318 G_PKG_NAME,
2319 'OKL_API.G_RET_STS_ERROR',
2320 x_msg_count,
2321 x_msg_data,
2322 '_PVT'
2323 );
2324 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2325 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2326 (
2327 l_api_name,
2328 G_PKG_NAME,
2329 'OKL_API.G_RET_STS_UNEXP_ERROR',
2330 x_msg_count,
2331 x_msg_data,
2332 '_PVT'
2333 );
2334 WHEN OTHERS THEN
2335 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2336 (
2337 l_api_name,
2338 G_PKG_NAME,
2339 'OTHERS',
2340 x_msg_count,
2341 x_msg_data,
2342 '_PVT'
2343 );
2344 END lock_row;
2345 ----------------------------------------
2346 -- lock_row for:OKL_TXL_AR_INV_LNS_TL --
2347 ----------------------------------------
2348 PROCEDURE lock_row(
2349 p_init_msg_list IN VARCHAR2,
2350 x_return_status OUT NOCOPY VARCHAR2,
2351 x_msg_count OUT NOCOPY NUMBER,
2352 x_msg_data OUT NOCOPY VARCHAR2,
2353 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type) IS
2354
2355 E_Resource_Busy EXCEPTION;
2356 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
2357 CURSOR lock_csr (p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type) IS
2358 SELECT *
2359 FROM OKL_TXL_AR_INV_LNS_TL
2360 WHERE ID = p_okl_txl_ar_inv_lns_tl_rec.id
2361 FOR UPDATE NOWAIT;
2362
2363 l_api_version CONSTANT NUMBER := 1;
2364 l_api_name CONSTANT VARCHAR2(30) := 'TL_lock_row';
2365 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2366 l_lock_var lock_csr%ROWTYPE;
2367 l_row_notfound BOOLEAN := FALSE;
2368 lc_row_notfound BOOLEAN := FALSE;
2369 BEGIN
2370 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2371 p_init_msg_list,
2372 '_PVT',
2373 x_return_status);
2374 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2375 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2376 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2377 RAISE Okl_Api.G_EXCEPTION_ERROR;
2378 END IF;
2379 BEGIN
2380 OPEN lock_csr(p_okl_txl_ar_inv_lns_tl_rec);
2381 FETCH lock_csr INTO l_lock_var;
2382 l_row_notfound := lock_csr%NOTFOUND;
2383 CLOSE lock_csr;
2384 EXCEPTION
2385 WHEN E_Resource_Busy THEN
2386 IF (lock_csr%ISOPEN) THEN
2387 CLOSE lock_csr;
2388 END IF;
2389 Okl_Api.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
2390 RAISE App_Exceptions.RECORD_LOCK_EXCEPTION;
2391 END;
2392
2393 IF ( l_row_notfound ) THEN
2394 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
2395 RAISE Okl_Api.G_EXCEPTION_ERROR;
2396 END IF;
2397 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2398 EXCEPTION
2399 WHEN G_EXCEPTION_HALT_VALIDATION THEN
2400 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2401 (
2402 l_api_name,
2403 G_PKG_NAME,
2404 'OKL_API.G_RET_STS_ERROR',
2405 x_msg_count,
2406 x_msg_data,
2407 '_PVT'
2408 );
2409 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2410 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2411 (
2412 l_api_name,
2413 G_PKG_NAME,
2414 'OKL_API.G_RET_STS_ERROR',
2415 x_msg_count,
2416 x_msg_data,
2417 '_PVT'
2418 );
2419 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2420 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2421 (
2422 l_api_name,
2423 G_PKG_NAME,
2424 'OKL_API.G_RET_STS_UNEXP_ERROR',
2425 x_msg_count,
2426 x_msg_data,
2427 '_PVT'
2428 );
2429 WHEN OTHERS THEN
2430 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2431 (
2432 l_api_name,
2433 G_PKG_NAME,
2434 'OTHERS',
2435 x_msg_count,
2436 x_msg_data,
2437 '_PVT'
2438 );
2439 END lock_row;
2440 ---------------------------------------
2441 -- lock_row for:OKL_TXL_AR_INV_LNS_V --
2442 ---------------------------------------
2443 PROCEDURE lock_row(
2444 p_api_version IN NUMBER,
2445 p_init_msg_list IN VARCHAR2,
2446 x_return_status OUT NOCOPY VARCHAR2,
2447 x_msg_count OUT NOCOPY NUMBER,
2448 x_msg_data OUT NOCOPY VARCHAR2,
2449 p_tilv_rec IN tilv_rec_type) IS
2450
2451 l_api_version CONSTANT NUMBER := 1;
2452 l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
2453 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2454 l_til_rec til_rec_type;
2455 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
2456 BEGIN
2457 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2458 G_PKG_NAME,
2459 p_init_msg_list,
2460 l_api_version,
2461 p_api_version,
2462 '_PVT',
2463 x_return_status);
2464 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2465 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2466 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2467 RAISE Okl_Api.G_EXCEPTION_ERROR;
2468 END IF;
2469 --------------------------------------
2470 -- Move VIEW record to "Child" records
2471 --------------------------------------
2472 migrate(p_tilv_rec, l_til_rec);
2473 migrate(p_tilv_rec, l_okl_txl_ar_inv_lns_tl_rec);
2474 --------------------------------------------
2475 -- Call the LOCK_ROW for each child record
2476 --------------------------------------------
2477 lock_row(
2478 p_init_msg_list,
2479 x_return_status,
2480 x_msg_count,
2481 x_msg_data,
2482 l_til_rec
2483 );
2484 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2485 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2486 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2487 RAISE Okl_Api.G_EXCEPTION_ERROR;
2488 END IF;
2489 lock_row(
2490 p_init_msg_list,
2491 x_return_status,
2492 x_msg_count,
2493 x_msg_data,
2494 l_okl_txl_ar_inv_lns_tl_rec
2495 );
2496 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2497 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2498 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2499 RAISE Okl_Api.G_EXCEPTION_ERROR;
2500 END IF;
2501 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2502 EXCEPTION
2503 WHEN G_EXCEPTION_HALT_VALIDATION THEN
2504 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2505 (
2506 l_api_name,
2507 G_PKG_NAME,
2508 'OKL_API.G_RET_STS_ERROR',
2509 x_msg_count,
2510 x_msg_data,
2511 '_PVT'
2512 );
2513 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2514 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2515 (
2516 l_api_name,
2517 G_PKG_NAME,
2518 'OKL_API.G_RET_STS_ERROR',
2519 x_msg_count,
2520 x_msg_data,
2521 '_PVT'
2522 );
2523 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2524 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2525 (
2526 l_api_name,
2527 G_PKG_NAME,
2528 'OKL_API.G_RET_STS_UNEXP_ERROR',
2529 x_msg_count,
2530 x_msg_data,
2531 '_PVT'
2532 );
2533 WHEN OTHERS THEN
2534 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2535 (
2536 l_api_name,
2537 G_PKG_NAME,
2538 'OTHERS',
2539 x_msg_count,
2540 x_msg_data,
2541 '_PVT'
2542 );
2543 END lock_row;
2544 --------------------------------------
2545 -- PL/SQL TBL lock_row for:TILV_TBL --
2546 --------------------------------------
2547 PROCEDURE lock_row(
2548 p_api_version IN NUMBER,
2549 p_init_msg_list IN VARCHAR2,
2550 x_return_status OUT NOCOPY VARCHAR2,
2551 x_msg_count OUT NOCOPY NUMBER,
2552 x_msg_data OUT NOCOPY VARCHAR2,
2553 p_tilv_tbl IN tilv_tbl_type) IS
2554
2555 l_api_version CONSTANT NUMBER := 1;
2556 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
2557 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2558 -- Begin Post-Generation Change
2559 -- overall error status
2560 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2561 -- End Post-Generation Change
2562 i NUMBER := 0;
2563 BEGIN
2564 Okl_Api.init_msg_list(p_init_msg_list);
2565 -- Make sure PL/SQL table has records in it before passing
2566 IF (p_tilv_tbl.COUNT > 0) THEN
2567 i := p_tilv_tbl.FIRST;
2568 LOOP
2569 lock_row (
2570 p_api_version => p_api_version,
2571 p_init_msg_list => Okl_Api.G_FALSE,
2572 x_return_status => x_return_status,
2573 x_msg_count => x_msg_count,
2574 x_msg_data => x_msg_data,
2575 p_tilv_rec => p_tilv_tbl(i));
2576 -- Begin Post-Generation Change
2577 -- store the highest degree of error
2578 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
2579 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
2580 l_overall_status := x_return_status;
2581 END IF;
2582 END IF;
2583 -- End Post-Generation Change
2584 EXIT WHEN (i = p_tilv_tbl.LAST);
2585 i := p_tilv_tbl.NEXT(i);
2586 END LOOP;
2587 -- Begin Post-Generation Change
2588 -- return overall status
2589 x_return_status := l_overall_status;
2590 -- End Post-Generation Change
2591 END IF;
2592 EXCEPTION
2593 WHEN G_EXCEPTION_HALT_VALIDATION THEN
2594 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2595 (
2596 l_api_name,
2597 G_PKG_NAME,
2598 'OKL_API.G_RET_STS_ERROR',
2599 x_msg_count,
2600 x_msg_data,
2601 '_PVT'
2602 );
2603 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2604 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2605 (
2606 l_api_name,
2607 G_PKG_NAME,
2608 'OKL_API.G_RET_STS_ERROR',
2609 x_msg_count,
2610 x_msg_data,
2611 '_PVT'
2612 );
2613 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2614 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2615 (
2616 l_api_name,
2617 G_PKG_NAME,
2618 'OKL_API.G_RET_STS_UNEXP_ERROR',
2619 x_msg_count,
2620 x_msg_data,
2621 '_PVT'
2622 );
2623 WHEN OTHERS THEN
2624 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2625 (
2626 l_api_name,
2627 G_PKG_NAME,
2628 'OTHERS',
2629 x_msg_count,
2630 x_msg_data,
2631 '_PVT'
2632 );
2633 END lock_row;
2634
2635 ---------------------------------------------------------------------------
2636 -- PROCEDURE update_row
2637 ---------------------------------------------------------------------------
2638 -----------------------------------------
2639 -- update_row for:OKL_TXL_AR_INV_LNS_B --
2640 -----------------------------------------
2641 PROCEDURE update_row(
2642 p_init_msg_list IN VARCHAR2,
2643 x_return_status OUT NOCOPY VARCHAR2,
2644 x_msg_count OUT NOCOPY NUMBER,
2645 x_msg_data OUT NOCOPY VARCHAR2,
2646 p_til_rec IN til_rec_type,
2647 x_til_rec OUT NOCOPY til_rec_type) IS
2648
2649 l_api_version CONSTANT NUMBER := 1;
2650 l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
2651 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2652 l_til_rec til_rec_type := p_til_rec;
2653 l_def_til_rec til_rec_type;
2654 l_row_notfound BOOLEAN := TRUE;
2655 ----------------------------------
2656 -- FUNCTION populate_new_record --
2657 ----------------------------------
2658 FUNCTION populate_new_record (
2659 p_til_rec IN til_rec_type,
2660 x_til_rec OUT NOCOPY til_rec_type
2661 ) RETURN VARCHAR2 IS
2662 l_til_rec til_rec_type;
2663 l_row_notfound BOOLEAN := TRUE;
2664 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2665 BEGIN
2666 x_til_rec := p_til_rec;
2667 -- Get current database values
2668 l_til_rec := get_rec(p_til_rec, l_row_notfound);
2669 IF (l_row_notfound) THEN
2670 l_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2671 END IF;
2672 IF (x_til_rec.id = Okl_Api.G_MISS_NUM)
2673 THEN
2674 x_til_rec.id := l_til_rec.id;
2675 END IF;
2676 IF (x_til_rec.inv_receiv_line_code = Okl_Api.G_MISS_CHAR)
2677 THEN
2678 x_til_rec.inv_receiv_line_code := l_til_rec.inv_receiv_line_code;
2679 END IF;
2680 IF (x_til_rec.tai_id = Okl_Api.G_MISS_NUM)
2681 THEN
2682 x_til_rec.tai_id := l_til_rec.tai_id;
2683 END IF;
2684 IF (x_til_rec.kle_id = Okl_Api.G_MISS_NUM)
2685 THEN
2686 x_til_rec.kle_id := l_til_rec.kle_id;
2687 END IF;
2688 IF (x_til_rec.tpl_id = Okl_Api.G_MISS_NUM)
2689 THEN
2690 x_til_rec.tpl_id := l_til_rec.tpl_id;
2691 END IF;
2692 IF (x_til_rec.sty_id = Okl_Api.G_MISS_NUM)
2693 THEN
2694 x_til_rec.sty_id := l_til_rec.sty_id;
2695 END IF;
2696 IF (x_til_rec.acn_id_cost = Okl_Api.G_MISS_NUM)
2697 THEN
2698 x_til_rec.acn_id_cost := l_til_rec.acn_id_cost;
2699 END IF;
2700 IF (x_til_rec.til_id_reverses = Okl_Api.G_MISS_NUM)
2701 THEN
2702 x_til_rec.til_id_reverses := l_til_rec.til_id_reverses;
2703 END IF;
2704 IF (x_til_rec.line_number = Okl_Api.G_MISS_NUM)
2705 THEN
2706 x_til_rec.line_number := l_til_rec.line_number;
2707 END IF;
2708 IF (x_til_rec.object_version_number = Okl_Api.G_MISS_NUM)
2709 THEN
2710 x_til_rec.object_version_number := l_til_rec.object_version_number;
2711 END IF;
2712 IF (x_til_rec.amount = Okl_Api.G_MISS_NUM)
2713 THEN
2714 x_til_rec.amount := l_til_rec.amount;
2715 END IF;
2716 IF (x_til_rec.quantity = Okl_Api.G_MISS_NUM)
2717 THEN
2718 x_til_rec.quantity := l_til_rec.quantity;
2719 END IF;
2720 IF (x_til_rec.receivables_invoice_id = Okl_Api.G_MISS_NUM)
2721 THEN
2722 x_til_rec.receivables_invoice_id := l_til_rec.receivables_invoice_id;
2723 END IF;
2724 IF (x_til_rec.amount_applied = Okl_Api.G_MISS_NUM)
2725 THEN
2726 x_til_rec.amount_applied := l_til_rec.amount_applied;
2727 END IF;
2728 IF (x_til_rec.date_bill_period_start = Okl_Api.G_MISS_DATE)
2729 THEN
2730 x_til_rec.date_bill_period_start := l_til_rec.date_bill_period_start;
2731 END IF;
2732 IF (x_til_rec.date_bill_period_end = Okl_Api.G_MISS_DATE)
2733 THEN
2734 x_til_rec.date_bill_period_end := l_til_rec.date_bill_period_end;
2735 END IF;
2736 IF (x_til_rec.request_id = Okl_Api.G_MISS_NUM)
2737 THEN
2738 x_til_rec.request_id := l_til_rec.request_id;
2739 END IF;
2740 IF (x_til_rec.program_application_id = Okl_Api.G_MISS_NUM)
2741 THEN
2742 x_til_rec.program_application_id := l_til_rec.program_application_id;
2743 END IF;
2744 IF (x_til_rec.program_id = Okl_Api.G_MISS_NUM)
2745 THEN
2746 x_til_rec.program_id := l_til_rec.program_id;
2747 END IF;
2748 IF (x_til_rec.program_update_date = Okl_Api.G_MISS_DATE)
2749 THEN
2750 x_til_rec.program_update_date := l_til_rec.program_update_date;
2751 END IF;
2752 IF (x_til_rec.org_id = Okl_Api.G_MISS_NUM)
2753 THEN
2754 x_til_rec.org_id := l_til_rec.org_id;
2755 END IF;
2756
2757 IF (x_til_rec.inventory_org_id = Okl_Api.G_MISS_NUM)
2758 THEN
2759 x_til_rec.inventory_org_id := l_til_rec.inventory_org_id;
2760 END IF;
2761
2762 IF (x_til_rec.isl_id = Okl_Api.G_MISS_NUM)
2763 THEN
2764 x_til_rec.isl_id := l_til_rec.isl_id;
2765 END IF;
2766 IF (x_til_rec.ibt_id = Okl_Api.G_MISS_NUM)
2767 THEN
2768 x_til_rec.ibt_id := l_til_rec.ibt_id;
2769 END IF;
2770 IF (x_til_rec.LATE_CHARGE_REC_ID = Okl_Api.G_MISS_NUM)
2771 THEN
2772 x_til_rec.LATE_CHARGE_REC_ID := l_til_rec.LATE_CHARGE_REC_ID;
2773 END IF;
2774 IF (x_til_rec.CLL_ID = Okl_Api.G_MISS_NUM)
2775 THEN
2776 x_til_rec.CLL_ID := l_til_rec.CLL_ID;
2777 END IF;
2778 -- Start changes on remarketing by fmiao on 10/18/04 --
2779 IF (x_til_rec.inventory_item_id = Okl_Api.G_MISS_NUM)
2780 THEN
2781 x_til_rec.inventory_item_id := l_til_rec.inventory_item_id;
2782 END IF;
2783 -- End changes on remarketing by fmiao on 10/18/04 --
2784 IF (x_til_rec.qte_line_id = Okl_Api.G_MISS_NUM)
2785 THEN
2786 x_til_rec.qte_line_id := l_til_rec.qte_line_id;
2787 END IF;
2788 IF (x_til_rec.txs_trx_id = Okl_Api.G_MISS_NUM)
2789 THEN
2790 x_til_rec.txs_trx_id := l_til_rec.txs_trx_id;
2791 END IF;
2792 -- Start Bug 4673593 --
2793 IF (x_til_rec.bank_acct_id = Okl_Api.G_MISS_NUM)
2794 THEN
2795 x_til_rec.bank_acct_id := l_til_rec.bank_acct_id;
2796 END IF;
2797 -- End Bug 4673593 --
2798 IF (x_til_rec.attribute_category = Okl_Api.G_MISS_CHAR)
2799 THEN
2800 x_til_rec.attribute_category := l_til_rec.attribute_category;
2801 END IF;
2802 IF (x_til_rec.attribute1 = Okl_Api.G_MISS_CHAR)
2803 THEN
2804 x_til_rec.attribute1 := l_til_rec.attribute1;
2805 END IF;
2806 IF (x_til_rec.attribute2 = Okl_Api.G_MISS_CHAR)
2807 THEN
2808 x_til_rec.attribute2 := l_til_rec.attribute2;
2809 END IF;
2810 IF (x_til_rec.attribute3 = Okl_Api.G_MISS_CHAR)
2811 THEN
2812 x_til_rec.attribute3 := l_til_rec.attribute3;
2813 END IF;
2814 IF (x_til_rec.attribute4 = Okl_Api.G_MISS_CHAR)
2815 THEN
2816 x_til_rec.attribute4 := l_til_rec.attribute4;
2817 END IF;
2818 IF (x_til_rec.attribute5 = Okl_Api.G_MISS_CHAR)
2819 THEN
2820 x_til_rec.attribute5 := l_til_rec.attribute5;
2821 END IF;
2822 IF (x_til_rec.attribute6 = Okl_Api.G_MISS_CHAR)
2823 THEN
2824 x_til_rec.attribute6 := l_til_rec.attribute6;
2825 END IF;
2826 IF (x_til_rec.attribute7 = Okl_Api.G_MISS_CHAR)
2827 THEN
2828 x_til_rec.attribute7 := l_til_rec.attribute7;
2829 END IF;
2830 IF (x_til_rec.attribute8 = Okl_Api.G_MISS_CHAR)
2831 THEN
2832 x_til_rec.attribute8 := l_til_rec.attribute8;
2833 END IF;
2834 IF (x_til_rec.attribute9 = Okl_Api.G_MISS_CHAR)
2835 THEN
2836 x_til_rec.attribute9 := l_til_rec.attribute9;
2837 END IF;
2838 IF (x_til_rec.attribute10 = Okl_Api.G_MISS_CHAR)
2839 THEN
2840 x_til_rec.attribute10 := l_til_rec.attribute10;
2841 END IF;
2842 IF (x_til_rec.attribute11 = Okl_Api.G_MISS_CHAR)
2843 THEN
2844 x_til_rec.attribute11 := l_til_rec.attribute11;
2845 END IF;
2846 IF (x_til_rec.attribute12 = Okl_Api.G_MISS_CHAR)
2847 THEN
2848 x_til_rec.attribute12 := l_til_rec.attribute12;
2849 END IF;
2850 IF (x_til_rec.attribute13 = Okl_Api.G_MISS_CHAR)
2851 THEN
2852 x_til_rec.attribute13 := l_til_rec.attribute13;
2853 END IF;
2854 IF (x_til_rec.attribute14 = Okl_Api.G_MISS_CHAR)
2855 THEN
2856 x_til_rec.attribute14 := l_til_rec.attribute14;
2857 END IF;
2858 IF (x_til_rec.attribute15 = Okl_Api.G_MISS_CHAR)
2859 THEN
2860 x_til_rec.attribute15 := l_til_rec.attribute15;
2861 END IF;
2862 IF (x_til_rec.created_by = Okl_Api.G_MISS_NUM)
2863 THEN
2864 x_til_rec.created_by := l_til_rec.created_by;
2865 END IF;
2866 IF (x_til_rec.creation_date = Okl_Api.G_MISS_DATE)
2867 THEN
2868 x_til_rec.creation_date := l_til_rec.creation_date;
2869 END IF;
2870 IF (x_til_rec.last_updated_by = Okl_Api.G_MISS_NUM)
2871 THEN
2872 x_til_rec.last_updated_by := l_til_rec.last_updated_by;
2873 END IF;
2874 IF (x_til_rec.last_update_date = Okl_Api.G_MISS_DATE)
2875 THEN
2876 x_til_rec.last_update_date := l_til_rec.last_update_date;
2877 END IF;
2878 IF (x_til_rec.last_update_login = Okl_Api.G_MISS_NUM)
2879 THEN
2880 x_til_rec.last_update_login := l_til_rec.last_update_login;
2881 END IF;
2882
2883 -- start: 30-Jan-07 cklee Billing R12 project |
2884 IF (x_til_rec.TXL_AR_LINE_NUMBER = Okl_Api.G_MISS_NUM)
2885 THEN
2886 x_til_rec.TXL_AR_LINE_NUMBER := l_til_rec.TXL_AR_LINE_NUMBER;
2887 END IF;
2888
2889 IF (x_til_rec.TXS_TRX_LINE_ID = Okl_Api.G_MISS_NUM)
2890 THEN
2891 x_til_rec.TXS_TRX_LINE_ID := l_til_rec.TXS_TRX_LINE_ID;
2892 END IF;
2893
2894 -- end: 30-Jan-07 cklee Billing R12 project |
2895 --14-May-08 sechawla 6619311
2896 IF (x_til_rec.TAX_LINE_ID = Okl_Api.G_MISS_NUM)
2897 THEN
2898 x_til_rec.TAX_LINE_ID := l_til_rec.TAX_LINE_ID;
2899 END IF;
2900
2901 RETURN(l_return_status);
2902 END populate_new_record;
2903 ---------------------------------------------
2904 -- Set_Attributes for:OKL_TXL_AR_INV_LNS_B --
2905 ---------------------------------------------
2906 FUNCTION Set_Attributes (
2907 p_til_rec IN til_rec_type,
2908 x_til_rec OUT NOCOPY til_rec_type
2909 ) RETURN VARCHAR2 IS
2910 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2911 BEGIN
2912 x_til_rec := p_til_rec;
2913
2914 /* x_til_rec.request_id := DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID);
2915 x_til_rec.program_application_id :=DECODE(Fnd_Global.PROG_APPL_ID,-1,NULL,Fnd_Global.PROG_APPL_ID);
2916 x_til_rec.program_id :=DECODE(Fnd_Global.CONC_PROGRAM_ID,-1,NULL,Fnd_Global.CONC_PROGRAM_ID);
2917 x_til_rec.program_update_date :=DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,SYSDATE);
2918 */
2919
2920 RETURN(l_return_status);
2921 END Set_Attributes;
2922 BEGIN
2923 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2924 p_init_msg_list,
2925 '_PVT',
2926 x_return_status);
2927 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2928 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2929 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2930 RAISE Okl_Api.G_EXCEPTION_ERROR;
2931 END IF;
2932 --- Setting item attributes
2933 l_return_status := Set_Attributes(
2934 p_til_rec, -- IN
2935 l_til_rec); -- OUT
2936 --- If any errors happen abort API
2937 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2938 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2939 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2940 RAISE Okl_Api.G_EXCEPTION_ERROR;
2941 END IF;
2942 l_return_status := populate_new_record(l_til_rec, l_def_til_rec);
2943 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2944 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2945 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2946 RAISE Okl_Api.G_EXCEPTION_ERROR;
2947 END IF;
2948 UPDATE OKL_TXL_AR_INV_LNS_B
2949 SET INV_RECEIV_LINE_CODE = l_def_til_rec.inv_receiv_line_code,
2950 TAI_ID = l_def_til_rec.tai_id,
2951 KLE_ID = l_def_til_rec.kle_id,
2952 TPL_ID = l_def_til_rec.tpl_id,
2953 STY_ID = l_def_til_rec.sty_id,
2954 ACN_ID_COST = l_def_til_rec.acn_id_cost,
2955 TIL_ID_REVERSES = l_def_til_rec.til_id_reverses,
2956 LINE_NUMBER = l_def_til_rec.line_number,
2957 OBJECT_VERSION_NUMBER = l_def_til_rec.object_version_number,
2958 AMOUNT = l_def_til_rec.amount,
2959 QUANTITY = l_def_til_rec.quantity,
2960 RECEIVABLES_INVOICE_ID = l_def_til_rec.receivables_invoice_id,
2961 AMOUNT_APPLIED = l_def_til_rec.amount_applied,
2962 DATE_BILL_PERIOD_START = l_def_til_rec.date_bill_period_start,
2963 DATE_BILL_PERIOD_END = l_def_til_rec.date_bill_period_end,
2964 REQUEST_ID = l_def_til_rec.request_id,
2965 PROGRAM_APPLICATION_ID = l_def_til_rec.program_application_id,
2966 PROGRAM_ID = l_def_til_rec.program_id,
2967 PROGRAM_UPDATE_DATE = l_def_til_rec.program_update_date,
2968 ORG_ID = l_def_til_rec.org_id,
2969 inventory_ORG_ID = l_def_til_rec.inventory_org_id,
2970 ISL_ID = l_def_til_rec.isl_id,
2971 IBT_ID = l_def_til_rec.ibt_id,
2972 LATE_CHARGE_REC_ID = l_def_til_rec.LATE_CHARGE_REC_ID,
2973 CLL_ID = l_def_til_rec.CLL_ID,
2974 -- Start changes on remarketing by fmiao on 10/18/04 --
2975 INVENTORY_ITEM_ID = l_def_til_rec.inventory_item_id,
2976 -- End changes on remarketing by fmiao on 10/18/04 --
2977 QTE_LINE_ID = l_def_til_rec.qte_line_id,
2978 TXS_TRX_ID = l_def_til_rec.txs_trx_id,
2979 -- Start Bug 4673593 --
2980 BANK_ACCT_ID = l_def_til_rec.bank_acct_id,
2981 -- End Bug 4673593 --
2982 ATTRIBUTE_CATEGORY = l_def_til_rec.attribute_category,
2983 ATTRIBUTE1 = l_def_til_rec.attribute1,
2984 ATTRIBUTE2 = l_def_til_rec.attribute2,
2985 ATTRIBUTE3 = l_def_til_rec.attribute3,
2986 ATTRIBUTE4 = l_def_til_rec.attribute4,
2987 ATTRIBUTE5 = l_def_til_rec.attribute5,
2988 ATTRIBUTE6 = l_def_til_rec.attribute6,
2989 ATTRIBUTE7 = l_def_til_rec.attribute7,
2990 ATTRIBUTE8 = l_def_til_rec.attribute8,
2991 ATTRIBUTE9 = l_def_til_rec.attribute9,
2992 ATTRIBUTE10 = l_def_til_rec.attribute10,
2993 ATTRIBUTE11 = l_def_til_rec.attribute11,
2994 ATTRIBUTE12 = l_def_til_rec.attribute12,
2995 ATTRIBUTE13 = l_def_til_rec.attribute13,
2996 ATTRIBUTE14 = l_def_til_rec.attribute14,
2997 ATTRIBUTE15 = l_def_til_rec.attribute15,
2998 CREATED_BY = l_def_til_rec.created_by,
2999 CREATION_DATE = l_def_til_rec.creation_date,
3000 LAST_UPDATED_BY = l_def_til_rec.last_updated_by,
3001 LAST_UPDATE_DATE = l_def_til_rec.last_update_date,
3002 LAST_UPDATE_LOGIN = l_def_til_rec.last_update_login,
3003 -- start: 30-Jan-07 cklee Billing R12 project |
3004 TXL_AR_LINE_NUMBER = l_def_til_rec.TXL_AR_LINE_NUMBER,
3005 TXS_TRX_LINE_ID = l_def_til_rec.TXS_TRX_LINE_ID
3006
3007 -- end: 30-Jan-07 cklee Billing R12 project |
3008 ,TAX_LINE_ID = l_def_til_rec.TAX_LINE_ID --14-May-08 sechawla 6619311
3009
3010
3011
3012 WHERE ID = l_def_til_rec.id;
3013
3014 x_til_rec := l_def_til_rec;
3015 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3016 EXCEPTION
3017 WHEN G_EXCEPTION_HALT_VALIDATION THEN
3018 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3019 (
3020 l_api_name,
3021 G_PKG_NAME,
3022 'OKL_API.G_RET_STS_ERROR',
3023 x_msg_count,
3024 x_msg_data,
3025 '_PVT'
3026 );
3027 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3028 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3029 (
3030 l_api_name,
3031 G_PKG_NAME,
3032 'OKL_API.G_RET_STS_ERROR',
3033 x_msg_count,
3034 x_msg_data,
3035 '_PVT'
3036 );
3037 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3038 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3039 (
3040 l_api_name,
3041 G_PKG_NAME,
3042 'OKL_API.G_RET_STS_UNEXP_ERROR',
3043 x_msg_count,
3044 x_msg_data,
3045 '_PVT'
3046 );
3047 WHEN OTHERS THEN
3048 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3049 (
3050 l_api_name,
3051 G_PKG_NAME,
3052 'OTHERS',
3053 x_msg_count,
3054 x_msg_data,
3055 '_PVT'
3056 );
3057 END update_row;
3058 ------------------------------------------
3059 -- update_row for:OKL_TXL_AR_INV_LNS_TL --
3060 ------------------------------------------
3061 PROCEDURE update_row(
3062 p_init_msg_list IN VARCHAR2,
3063 x_return_status OUT NOCOPY VARCHAR2,
3064 x_msg_count OUT NOCOPY NUMBER,
3065 x_msg_data OUT NOCOPY VARCHAR2,
3066 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type,
3067 x_okl_txl_ar_inv_lns_tl_rec OUT NOCOPY okl_txl_ar_inv_lns_tl_rec_type) IS
3068
3069 l_api_version CONSTANT NUMBER := 1;
3070 l_api_name CONSTANT VARCHAR2(30) := 'TL_update_row';
3071 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3072 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type := p_okl_txl_ar_inv_lns_tl_rec;
3073 ldefokltxlarinvlnstlrec okl_txl_ar_inv_lns_tl_rec_type;
3074 l_row_notfound BOOLEAN := TRUE;
3075 ----------------------------------
3076 -- FUNCTION populate_new_record --
3077 ----------------------------------
3078 FUNCTION populate_new_record (
3079 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type,
3080 x_okl_txl_ar_inv_lns_tl_rec OUT NOCOPY okl_txl_ar_inv_lns_tl_rec_type
3081 ) RETURN VARCHAR2 IS
3082 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
3083 l_row_notfound BOOLEAN := TRUE;
3084 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3085 BEGIN
3086 x_okl_txl_ar_inv_lns_tl_rec := p_okl_txl_ar_inv_lns_tl_rec;
3087 -- Get current database values
3088 l_okl_txl_ar_inv_lns_tl_rec := get_rec(p_okl_txl_ar_inv_lns_tl_rec, l_row_notfound);
3089 IF (l_row_notfound) THEN
3090 l_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3091 END IF;
3092 IF (x_okl_txl_ar_inv_lns_tl_rec.id = Okl_Api.G_MISS_NUM)
3093 THEN
3094 x_okl_txl_ar_inv_lns_tl_rec.id := l_okl_txl_ar_inv_lns_tl_rec.id;
3095 END IF;
3096 IF (x_okl_txl_ar_inv_lns_tl_rec.LANGUAGE = Okl_Api.G_MISS_CHAR)
3097 THEN
3098 x_okl_txl_ar_inv_lns_tl_rec.LANGUAGE := l_okl_txl_ar_inv_lns_tl_rec.LANGUAGE;
3099 END IF;
3100 IF (x_okl_txl_ar_inv_lns_tl_rec.source_lang = Okl_Api.G_MISS_CHAR)
3101 THEN
3102 x_okl_txl_ar_inv_lns_tl_rec.source_lang := l_okl_txl_ar_inv_lns_tl_rec.source_lang;
3103 END IF;
3104 IF (x_okl_txl_ar_inv_lns_tl_rec.error_message = Okl_Api.G_MISS_CHAR)
3105 THEN
3106 x_okl_txl_ar_inv_lns_tl_rec.error_message := l_okl_txl_ar_inv_lns_tl_rec.error_message;
3107 END IF;
3108 IF (x_okl_txl_ar_inv_lns_tl_rec.sfwt_flag = Okl_Api.G_MISS_CHAR)
3109 THEN
3110 x_okl_txl_ar_inv_lns_tl_rec.sfwt_flag := l_okl_txl_ar_inv_lns_tl_rec.sfwt_flag;
3111 END IF;
3112 IF (x_okl_txl_ar_inv_lns_tl_rec.description = Okl_Api.G_MISS_CHAR)
3113 THEN
3114 x_okl_txl_ar_inv_lns_tl_rec.description := l_okl_txl_ar_inv_lns_tl_rec.description;
3115 END IF;
3116 IF (x_okl_txl_ar_inv_lns_tl_rec.created_by = Okl_Api.G_MISS_NUM)
3117 THEN
3118 x_okl_txl_ar_inv_lns_tl_rec.created_by := l_okl_txl_ar_inv_lns_tl_rec.created_by;
3119 END IF;
3120 IF (x_okl_txl_ar_inv_lns_tl_rec.creation_date = Okl_Api.G_MISS_DATE)
3121 THEN
3122 x_okl_txl_ar_inv_lns_tl_rec.creation_date := l_okl_txl_ar_inv_lns_tl_rec.creation_date;
3123 END IF;
3124 IF (x_okl_txl_ar_inv_lns_tl_rec.last_updated_by = Okl_Api.G_MISS_NUM)
3125 THEN
3126 x_okl_txl_ar_inv_lns_tl_rec.last_updated_by := l_okl_txl_ar_inv_lns_tl_rec.last_updated_by;
3127 END IF;
3128 IF (x_okl_txl_ar_inv_lns_tl_rec.last_update_date = Okl_Api.G_MISS_DATE)
3129 THEN
3130 x_okl_txl_ar_inv_lns_tl_rec.last_update_date := l_okl_txl_ar_inv_lns_tl_rec.last_update_date;
3131 END IF;
3132 IF (x_okl_txl_ar_inv_lns_tl_rec.last_update_login = Okl_Api.G_MISS_NUM)
3133 THEN
3134 x_okl_txl_ar_inv_lns_tl_rec.last_update_login := l_okl_txl_ar_inv_lns_tl_rec.last_update_login;
3135 END IF;
3136
3137 RETURN(l_return_status);
3138 END populate_new_record;
3139 ----------------------------------------------
3140 -- Set_Attributes for:OKL_TXL_AR_INV_LNS_TL --
3141 ----------------------------------------------
3142 FUNCTION Set_Attributes (
3143 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type,
3144 x_okl_txl_ar_inv_lns_tl_rec OUT NOCOPY okl_txl_ar_inv_lns_tl_rec_type
3145 ) RETURN VARCHAR2 IS
3146 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3147 BEGIN
3148 x_okl_txl_ar_inv_lns_tl_rec := p_okl_txl_ar_inv_lns_tl_rec;
3149 x_okl_txl_ar_inv_lns_tl_rec.LANGUAGE := USERENV('LANG');
3150 x_okl_txl_ar_inv_lns_tl_rec.SOURCE_LANG := USERENV('LANG');
3151 RETURN(l_return_status);
3152 END Set_Attributes;
3153 BEGIN
3154 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3155 p_init_msg_list,
3156 '_PVT',
3157 x_return_status);
3158 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3159 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3160 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3161 RAISE Okl_Api.G_EXCEPTION_ERROR;
3162 END IF;
3163 --- Setting item attributes
3164 l_return_status := Set_Attributes(
3165 p_okl_txl_ar_inv_lns_tl_rec, -- IN
3166 l_okl_txl_ar_inv_lns_tl_rec); -- OUT
3167 --- If any errors happen abort API
3168 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3169 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3170 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3171 RAISE Okl_Api.G_EXCEPTION_ERROR;
3172 END IF;
3173 l_return_status := populate_new_record(l_okl_txl_ar_inv_lns_tl_rec, ldefokltxlarinvlnstlrec);
3174 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3175 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3176 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3177 RAISE Okl_Api.G_EXCEPTION_ERROR;
3178 END IF;
3179 UPDATE OKL_TXL_AR_INV_LNS_TL
3180 SET DESCRIPTION = ldefokltxlarinvlnstlrec.description,
3181 SOURCE_LANG = ldefokltxlarinvlnstlrec.source_lang,
3182 CREATED_BY = ldefokltxlarinvlnstlrec.created_by,
3183 CREATION_DATE = ldefokltxlarinvlnstlrec.creation_date,
3184 LAST_UPDATED_BY = ldefokltxlarinvlnstlrec.last_updated_by,
3185 LAST_UPDATE_DATE = ldefokltxlarinvlnstlrec.last_update_date,
3186 LAST_UPDATE_LOGIN = ldefokltxlarinvlnstlrec.last_update_login
3187 WHERE ID = ldefokltxlarinvlnstlrec.id
3188 AND USERENV('LANG') in (SOURCE_LANG, LANGUAGE);
3189
3190 UPDATE OKL_TXL_AR_INV_LNS_TL
3191 SET SFWT_FLAG = 'Y'
3192 WHERE ID = ldefokltxlarinvlnstlrec.id
3193 AND SOURCE_LANG <> USERENV('LANG');
3194
3195 x_okl_txl_ar_inv_lns_tl_rec := ldefokltxlarinvlnstlrec;
3196 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3197 EXCEPTION
3198 WHEN G_EXCEPTION_HALT_VALIDATION THEN
3199 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3200 (
3201 l_api_name,
3202 G_PKG_NAME,
3203 'OKL_API.G_RET_STS_ERROR',
3204 x_msg_count,
3205 x_msg_data,
3206 '_PVT'
3207 );
3208 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3209 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3210 (
3211 l_api_name,
3212 G_PKG_NAME,
3213 'OKL_API.G_RET_STS_ERROR',
3214 x_msg_count,
3215 x_msg_data,
3216 '_PVT'
3217 );
3218 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3219 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3220 (
3221 l_api_name,
3222 G_PKG_NAME,
3223 'OKL_API.G_RET_STS_UNEXP_ERROR',
3224 x_msg_count,
3225 x_msg_data,
3226 '_PVT'
3227 );
3228 WHEN OTHERS THEN
3229 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3230 (
3231 l_api_name,
3232 G_PKG_NAME,
3233 'OTHERS',
3234 x_msg_count,
3235 x_msg_data,
3236 '_PVT'
3237 );
3238 END update_row;
3239 -----------------------------------------
3240 -- update_row for:OKL_TXL_AR_INV_LNS_V --
3241 -----------------------------------------
3242 PROCEDURE update_row(
3243 p_api_version IN NUMBER,
3244 p_init_msg_list IN VARCHAR2,
3245 x_return_status OUT NOCOPY VARCHAR2,
3246 x_msg_count OUT NOCOPY NUMBER,
3247 x_msg_data OUT NOCOPY VARCHAR2,
3248 p_tilv_rec IN tilv_rec_type,
3249 x_tilv_rec OUT NOCOPY tilv_rec_type) IS
3250
3251 l_api_version CONSTANT NUMBER := 1;
3252 l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
3253 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3254 l_tilv_rec tilv_rec_type := p_tilv_rec;
3255 l_def_tilv_rec tilv_rec_type;
3256 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
3257 lx_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
3258 l_til_rec til_rec_type;
3259 lx_til_rec til_rec_type;
3260 -------------------------------
3261 -- FUNCTION fill_who_columns --
3262 -------------------------------
3263 FUNCTION fill_who_columns (
3264 p_tilv_rec IN tilv_rec_type
3265 ) RETURN tilv_rec_type IS
3266 l_tilv_rec tilv_rec_type := p_tilv_rec;
3267 BEGIN
3268 l_tilv_rec.LAST_UPDATE_DATE := l_tilv_rec.CREATION_DATE;
3269 l_tilv_rec.LAST_UPDATED_BY := Fnd_Global.USER_ID;
3270 l_tilv_rec.LAST_UPDATE_LOGIN := Fnd_Global.LOGIN_ID;
3271 RETURN(l_tilv_rec);
3272 END fill_who_columns;
3273 ----------------------------------
3274 -- FUNCTION populate_new_record --
3275 ----------------------------------
3276 FUNCTION populate_new_record (
3277 p_tilv_rec IN tilv_rec_type,
3278 x_tilv_rec OUT NOCOPY tilv_rec_type
3279 ) RETURN VARCHAR2 IS
3280 l_tilv_rec tilv_rec_type;
3281 l_row_notfound BOOLEAN := TRUE;
3282 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3283 BEGIN
3284 x_tilv_rec := p_tilv_rec;
3285 -- Get current database values
3286 l_tilv_rec := get_rec(p_tilv_rec, l_row_notfound);
3287 IF (l_row_notfound) THEN
3288 l_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
3289 END IF;
3290 IF (x_tilv_rec.id = Okl_Api.G_MISS_NUM)
3291 THEN
3292 x_tilv_rec.id := l_tilv_rec.id;
3293 END IF;
3294 IF (x_tilv_rec.object_version_number = Okl_Api.G_MISS_NUM)
3295 THEN
3296 x_tilv_rec.object_version_number := l_tilv_rec.object_version_number;
3297 END IF;
3298 IF (x_tilv_rec.error_message = Okl_Api.G_MISS_CHAR)
3299 THEN
3300 x_tilv_rec.error_message := l_tilv_rec.error_message;
3301 END IF;
3302 IF (x_tilv_rec.sfwt_flag = Okl_Api.G_MISS_CHAR)
3303 THEN
3304 x_tilv_rec.sfwt_flag := l_tilv_rec.sfwt_flag;
3305 END IF;
3306 IF (x_tilv_rec.kle_id = Okl_Api.G_MISS_NUM)
3307 THEN
3308 x_tilv_rec.kle_id := l_tilv_rec.kle_id;
3309 END IF;
3310 IF (x_tilv_rec.tpl_id = Okl_Api.G_MISS_NUM)
3311 THEN
3312 x_tilv_rec.tpl_id := l_tilv_rec.tpl_id;
3313 END IF;
3314 IF (x_tilv_rec.til_id_reverses = Okl_Api.G_MISS_NUM)
3315 THEN
3316 x_tilv_rec.til_id_reverses := l_tilv_rec.til_id_reverses;
3317 END IF;
3318 IF (x_tilv_rec.inv_receiv_line_code = Okl_Api.G_MISS_CHAR)
3319 THEN
3320 x_tilv_rec.inv_receiv_line_code := l_tilv_rec.inv_receiv_line_code;
3321 END IF;
3322 IF (x_tilv_rec.sty_id = Okl_Api.G_MISS_NUM)
3323 THEN
3324 x_tilv_rec.sty_id := l_tilv_rec.sty_id;
3325 END IF;
3326 IF (x_tilv_rec.tai_id = Okl_Api.G_MISS_NUM)
3327 THEN
3328 x_tilv_rec.tai_id := l_tilv_rec.tai_id;
3329 END IF;
3330 IF (x_tilv_rec.acn_id_cost = Okl_Api.G_MISS_NUM)
3331 THEN
3332 x_tilv_rec.acn_id_cost := l_tilv_rec.acn_id_cost;
3333 END IF;
3334 IF (x_tilv_rec.amount = Okl_Api.G_MISS_NUM)
3335 THEN
3336 x_tilv_rec.amount := l_tilv_rec.amount;
3337 END IF;
3338 IF (x_tilv_rec.line_number = Okl_Api.G_MISS_NUM)
3339 THEN
3340 x_tilv_rec.line_number := l_tilv_rec.line_number;
3341 END IF;
3342 IF (x_tilv_rec.quantity = Okl_Api.G_MISS_NUM)
3343 THEN
3344 x_tilv_rec.quantity := l_tilv_rec.quantity;
3345 END IF;
3346 IF (x_tilv_rec.description = Okl_Api.G_MISS_CHAR)
3347 THEN
3348 x_tilv_rec.description := l_tilv_rec.description;
3349 END IF;
3350 IF (x_tilv_rec.receivables_invoice_id = Okl_Api.G_MISS_NUM)
3351 THEN
3352 x_tilv_rec.receivables_invoice_id := l_tilv_rec.receivables_invoice_id;
3353 END IF;
3354 IF (x_tilv_rec.date_bill_period_start = Okl_Api.G_MISS_DATE)
3355 THEN
3356 x_tilv_rec.date_bill_period_start := l_tilv_rec.date_bill_period_start;
3357 END IF;
3358 IF (x_tilv_rec.amount_applied = Okl_Api.G_MISS_NUM)
3359 THEN
3360 x_tilv_rec.amount_applied := l_tilv_rec.amount_applied;
3361 END IF;
3362 IF (x_tilv_rec.date_bill_period_end = Okl_Api.G_MISS_DATE)
3363 THEN
3364 x_tilv_rec.date_bill_period_end := l_tilv_rec.date_bill_period_end;
3365 END IF;
3366 IF (x_tilv_rec.isl_id = Okl_Api.G_MISS_NUM)
3367 THEN
3368 x_tilv_rec.isl_id := l_tilv_rec.isl_id;
3369 END IF;
3370 IF (x_tilv_rec.ibt_id = Okl_Api.G_MISS_NUM)
3371 THEN
3372 x_tilv_rec.ibt_id := l_tilv_rec.ibt_id;
3373 END IF;
3374 IF (x_tilv_rec.LATE_CHARGE_REC_ID = Okl_Api.G_MISS_NUM)
3375 THEN
3376 x_tilv_rec.LATE_CHARGE_REC_ID := l_tilv_rec.LATE_CHARGE_REC_ID;
3377 END IF;
3378 IF (x_tilv_rec.CLL_ID = Okl_Api.G_MISS_NUM)
3379 THEN
3380 x_tilv_rec.CLL_ID := l_tilv_rec.CLL_ID;
3381 END IF;
3382 -- Start changes on remarketing by fmiao on 10/18/04 --
3383 IF (x_tilv_rec.inventory_item_id = Okl_Api.G_MISS_NUM)
3384 THEN
3385 x_tilv_rec.inventory_item_id := l_tilv_rec.inventory_item_id;
3386 END IF;
3387 -- End changes on remarketing by fmiao on 10/18/04 --
3388 IF (x_tilv_rec.qte_line_id = Okl_Api.G_MISS_NUM)
3389 THEN
3390 x_tilv_rec.qte_line_id := l_tilv_rec.qte_line_id;
3391 END IF;
3392 IF (x_tilv_rec.txs_trx_id = Okl_Api.G_MISS_NUM)
3393 THEN
3394 x_tilv_rec.txs_trx_id := l_tilv_rec.txs_trx_id;
3395 END IF;
3396 -- Start Bug 4673593 --
3397 IF (x_tilv_rec.bank_acct_id = Okl_Api.G_MISS_NUM)
3398 THEN
3399 x_tilv_rec.bank_acct_id := l_tilv_rec.bank_acct_id;
3400 END IF;
3401 -- End Bug 4673593 --
3402 IF (x_tilv_rec.attribute_category = Okl_Api.G_MISS_CHAR)
3403 THEN
3404 x_tilv_rec.attribute_category := l_tilv_rec.attribute_category;
3405 END IF;
3406 IF (x_tilv_rec.attribute1 = Okl_Api.G_MISS_CHAR)
3407 THEN
3408 x_tilv_rec.attribute1 := l_tilv_rec.attribute1;
3409 END IF;
3410 IF (x_tilv_rec.attribute2 = Okl_Api.G_MISS_CHAR)
3411 THEN
3412 x_tilv_rec.attribute2 := l_tilv_rec.attribute2;
3413 END IF;
3414 IF (x_tilv_rec.attribute3 = Okl_Api.G_MISS_CHAR)
3415 THEN
3416 x_tilv_rec.attribute3 := l_tilv_rec.attribute3;
3417 END IF;
3418 IF (x_tilv_rec.attribute4 = Okl_Api.G_MISS_CHAR)
3419 THEN
3420 x_tilv_rec.attribute4 := l_tilv_rec.attribute4;
3421 END IF;
3422 IF (x_tilv_rec.attribute5 = Okl_Api.G_MISS_CHAR)
3423 THEN
3424 x_tilv_rec.attribute5 := l_tilv_rec.attribute5;
3425 END IF;
3426 IF (x_tilv_rec.attribute6 = Okl_Api.G_MISS_CHAR)
3427 THEN
3428 x_tilv_rec.attribute6 := l_tilv_rec.attribute6;
3429 END IF;
3430 IF (x_tilv_rec.attribute7 = Okl_Api.G_MISS_CHAR)
3431 THEN
3432 x_tilv_rec.attribute7 := l_tilv_rec.attribute7;
3433 END IF;
3434 IF (x_tilv_rec.attribute8 = Okl_Api.G_MISS_CHAR)
3435 THEN
3436 x_tilv_rec.attribute8 := l_tilv_rec.attribute8;
3437 END IF;
3438 IF (x_tilv_rec.attribute9 = Okl_Api.G_MISS_CHAR)
3439 THEN
3440 x_tilv_rec.attribute9 := l_tilv_rec.attribute9;
3441 END IF;
3442 IF (x_tilv_rec.attribute10 = Okl_Api.G_MISS_CHAR)
3443 THEN
3444 x_tilv_rec.attribute10 := l_tilv_rec.attribute10;
3445 END IF;
3446 IF (x_tilv_rec.attribute11 = Okl_Api.G_MISS_CHAR)
3447 THEN
3448 x_tilv_rec.attribute11 := l_tilv_rec.attribute11;
3449 END IF;
3450 IF (x_tilv_rec.attribute12 = Okl_Api.G_MISS_CHAR)
3451 THEN
3452 x_tilv_rec.attribute12 := l_tilv_rec.attribute12;
3453 END IF;
3454 IF (x_tilv_rec.attribute13 = Okl_Api.G_MISS_CHAR)
3455 THEN
3456 x_tilv_rec.attribute13 := l_tilv_rec.attribute13;
3457 END IF;
3458 IF (x_tilv_rec.attribute14 = Okl_Api.G_MISS_CHAR)
3459 THEN
3460 x_tilv_rec.attribute14 := l_tilv_rec.attribute14;
3461 END IF;
3462 IF (x_tilv_rec.attribute15 = Okl_Api.G_MISS_CHAR)
3463 THEN
3464 x_tilv_rec.attribute15 := l_tilv_rec.attribute15;
3465 END IF;
3466 IF (x_tilv_rec.request_id = Okl_Api.G_MISS_NUM)
3467 THEN
3468 x_tilv_rec.request_id := l_tilv_rec.request_id;
3469 END IF;
3470 IF (x_tilv_rec.program_application_id = Okl_Api.G_MISS_NUM)
3471 THEN
3472 x_tilv_rec.program_application_id := l_tilv_rec.program_application_id;
3473 END IF;
3474 IF (x_tilv_rec.program_id = Okl_Api.G_MISS_NUM)
3475 THEN
3476 x_tilv_rec.program_id := l_tilv_rec.program_id;
3477 END IF;
3478 IF (x_tilv_rec.program_update_date = Okl_Api.G_MISS_DATE)
3479 THEN
3480 x_tilv_rec.program_update_date := l_tilv_rec.program_update_date;
3481 END IF;
3482 IF (x_tilv_rec.org_id = Okl_Api.G_MISS_NUM)
3483 THEN
3484 x_tilv_rec.org_id := l_tilv_rec.org_id;
3485 END IF;
3486 IF (x_tilv_rec.inventory_org_id = Okl_Api.G_MISS_NUM)
3487 THEN
3488 x_tilv_rec.inventory_org_id := l_tilv_rec.inventory_org_id;
3489 END IF;
3490 IF (x_tilv_rec.created_by = Okl_Api.G_MISS_NUM)
3491 THEN
3492 x_tilv_rec.created_by := l_tilv_rec.created_by;
3493 END IF;
3494 IF (x_tilv_rec.creation_date = Okl_Api.G_MISS_DATE)
3495 THEN
3496 x_tilv_rec.creation_date := l_tilv_rec.creation_date;
3497 END IF;
3498 IF (x_tilv_rec.last_updated_by = Okl_Api.G_MISS_NUM)
3499 THEN
3500 x_tilv_rec.last_updated_by := l_tilv_rec.last_updated_by;
3501 END IF;
3502 IF (x_tilv_rec.last_update_date = Okl_Api.G_MISS_DATE)
3503 THEN
3504 x_tilv_rec.last_update_date := l_tilv_rec.last_update_date;
3505 END IF;
3506 IF (x_tilv_rec.last_update_login = Okl_Api.G_MISS_NUM)
3507 THEN
3508 x_tilv_rec.last_update_login := l_tilv_rec.last_update_login;
3509 END IF;
3510
3511 -- start: 30-Jan-07 cklee Billing R12 project |
3512 IF (x_tilv_rec.TXL_AR_LINE_NUMBER = Okl_Api.G_MISS_NUM)
3513 THEN
3514 x_tilv_rec.TXL_AR_LINE_NUMBER := l_tilv_rec.TXL_AR_LINE_NUMBER;
3515 END IF;
3516 IF (x_tilv_rec.TXS_TRX_LINE_ID = Okl_Api.G_MISS_NUM)
3517 THEN
3518 x_tilv_rec.TXS_TRX_LINE_ID := l_tilv_rec.TXS_TRX_LINE_ID;
3519 END IF;
3520
3521 -- end: 30-Jan-07 cklee Billing R12 project |
3522
3523 --14-May-08 sechawla 6619311
3524 IF (x_tilv_rec.TAX_LINE_ID = Okl_Api.G_MISS_NUM)
3525 THEN
3526 x_tilv_rec.TAX_LINE_ID := l_tilv_rec.TAX_LINE_ID;
3527 END IF;
3528
3529 RETURN(l_return_status);
3530 END populate_new_record;
3531 ---------------------------------------------
3532 -- Set_Attributes for:OKL_TXL_AR_INV_LNS_V --
3533 ---------------------------------------------
3534 FUNCTION Set_Attributes (
3535 p_tilv_rec IN tilv_rec_type,
3536 x_tilv_rec OUT NOCOPY tilv_rec_type
3537 ) RETURN VARCHAR2 IS
3538 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3539 BEGIN
3540 x_tilv_rec := p_tilv_rec;
3541 x_tilv_rec.OBJECT_VERSION_NUMBER := NVL(x_tilv_rec.OBJECT_VERSION_NUMBER, 0) + 1;
3542
3543 IF (x_tilv_rec.request_id IS NULL OR x_tilv_rec.request_id = Okl_Api.G_MISS_NUM) THEN
3544 -- Begin Post-Generation Change
3545 SELECT
3546 NVL(DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
3547 x_tilv_rec.request_id),
3548 NVL(DECODE(Fnd_Global.PROG_APPL_ID, -1,NULL,Fnd_Global.PROG_APPL_ID),
3549 x_tilv_rec.program_application_id),
3550 NVL(DECODE(Fnd_Global.CONC_PROGRAM_ID,-1,NULL,Fnd_Global.CONC_PROGRAM_ID),
3551 x_tilv_rec.program_id),
3552 DECODE(DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,SYSDATE),
3553 NULL,x_tilv_rec.program_update_date,SYSDATE)
3554 INTO
3555 x_tilv_rec.request_id,
3556 x_tilv_rec.program_application_id,
3557 x_tilv_rec.program_id,
3558 x_tilv_rec.program_update_date
3559 FROM dual;
3560 -- End Post-Generation Change
3561 END IF;
3562
3563
3564 RETURN(l_return_status);
3565 END Set_Attributes;
3566 BEGIN
3567 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3568 G_PKG_NAME,
3569 p_init_msg_list,
3570 l_api_version,
3571 p_api_version,
3572 '_PVT',
3573 x_return_status);
3574 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3575 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3576 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3577 RAISE Okl_Api.G_EXCEPTION_ERROR;
3578 END IF;
3579 --- Setting item attributes
3580 l_return_status := Set_Attributes(
3581 p_tilv_rec, -- IN
3582 l_tilv_rec); -- OUT
3583 --- If any errors happen abort API
3584 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3585 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3586 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3587 RAISE Okl_Api.G_EXCEPTION_ERROR;
3588 END IF;
3589 l_return_status := populate_new_record(l_tilv_rec, l_def_tilv_rec);
3590 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3591 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3592 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3593 RAISE Okl_Api.G_EXCEPTION_ERROR;
3594 END IF;
3595 l_def_tilv_rec := fill_who_columns(l_def_tilv_rec);
3596 --- Validate all non-missing attributes (Item Level Validation)
3597 l_return_status := Validate_Attributes(l_def_tilv_rec);
3598 --- If any errors happen abort API
3599 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3600 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3601 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3602 RAISE Okl_Api.G_EXCEPTION_ERROR;
3603 END IF;
3604 l_return_status := Validate_Record(l_def_tilv_rec);
3605 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3606 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3607 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3608 RAISE Okl_Api.G_EXCEPTION_ERROR;
3609 END IF;
3610
3611 --------------------------------------
3612 -- Move VIEW record to "Child" records
3613 --------------------------------------
3614 migrate(l_def_tilv_rec, l_okl_txl_ar_inv_lns_tl_rec);
3615 migrate(l_def_tilv_rec, l_til_rec);
3616 --------------------------------------------
3617 -- Call the UPDATE_ROW for each child record
3618 --------------------------------------------
3619 update_row(
3620 p_init_msg_list,
3621 x_return_status,
3622 x_msg_count,
3623 x_msg_data,
3624 l_okl_txl_ar_inv_lns_tl_rec,
3625 lx_okl_txl_ar_inv_lns_tl_rec
3626 );
3627 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3628 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3629 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3630 RAISE Okl_Api.G_EXCEPTION_ERROR;
3631 END IF;
3632 migrate(lx_okl_txl_ar_inv_lns_tl_rec, l_def_tilv_rec);
3633 update_row(
3634 p_init_msg_list,
3635 x_return_status,
3636 x_msg_count,
3637 x_msg_data,
3638 l_til_rec,
3639 lx_til_rec
3640 );
3641 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3642 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3643 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3644 RAISE Okl_Api.G_EXCEPTION_ERROR;
3645 END IF;
3646 migrate(lx_til_rec, l_def_tilv_rec);
3647 x_tilv_rec := l_def_tilv_rec;
3648 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3649 EXCEPTION
3650 WHEN G_EXCEPTION_HALT_VALIDATION THEN
3651 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3652 (
3653 l_api_name,
3654 G_PKG_NAME,
3655 'OKL_API.G_RET_STS_ERROR',
3656 x_msg_count,
3657 x_msg_data,
3658 '_PVT'
3659 );
3660 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3661 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3662 (
3663 l_api_name,
3664 G_PKG_NAME,
3665 'OKL_API.G_RET_STS_ERROR',
3666 x_msg_count,
3667 x_msg_data,
3668 '_PVT'
3669 );
3670 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3671 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3672 (
3673 l_api_name,
3674 G_PKG_NAME,
3675 'OKL_API.G_RET_STS_UNEXP_ERROR',
3676 x_msg_count,
3677 x_msg_data,
3678 '_PVT'
3679 );
3680 WHEN OTHERS THEN
3681 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3682 (
3683 l_api_name,
3684 G_PKG_NAME,
3685 'OTHERS',
3686 x_msg_count,
3687 x_msg_data,
3688 '_PVT'
3689 );
3690 END update_row;
3691 ----------------------------------------
3692 -- PL/SQL TBL update_row for:TILV_TBL --
3693 ----------------------------------------
3694 PROCEDURE update_row(
3695 p_api_version IN NUMBER,
3696 p_init_msg_list IN VARCHAR2,
3697 x_return_status OUT NOCOPY VARCHAR2,
3698 x_msg_count OUT NOCOPY NUMBER,
3699 x_msg_data OUT NOCOPY VARCHAR2,
3700 p_tilv_tbl IN tilv_tbl_type,
3701 x_tilv_tbl OUT NOCOPY tilv_tbl_type) IS
3702
3703 l_api_version CONSTANT NUMBER := 1;
3704 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
3705 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3706 -- Begin Post-Generation Change
3707 -- overall error status
3708 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3709 -- End Post-Generation Change
3710 i NUMBER := 0;
3711 BEGIN
3712 Okl_Api.init_msg_list(p_init_msg_list);
3713 -- Make sure PL/SQL table has records in it before passing
3714 IF (p_tilv_tbl.COUNT > 0) THEN
3715 i := p_tilv_tbl.FIRST;
3716 LOOP
3717 update_row (
3718 p_api_version => p_api_version,
3719 p_init_msg_list => Okl_Api.G_FALSE,
3720 x_return_status => x_return_status,
3721 x_msg_count => x_msg_count,
3722 x_msg_data => x_msg_data,
3723 p_tilv_rec => p_tilv_tbl(i),
3724 x_tilv_rec => x_tilv_tbl(i));
3725 -- Begin Post-Generation Change
3726 -- store the highest degree of error
3727 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
3728 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3729 l_overall_status := x_return_status;
3730 END IF;
3731 END IF;
3732 -- End Post-Generation Change
3733 EXIT WHEN (i = p_tilv_tbl.LAST);
3734 i := p_tilv_tbl.NEXT(i);
3735 END LOOP;
3736 -- Begin Post-Generation Change
3737 -- return overall status
3738 x_return_status := l_overall_status;
3739 -- End Post-Generation Change
3740 END IF;
3741 EXCEPTION
3742 WHEN G_EXCEPTION_HALT_VALIDATION THEN
3743 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3744 (
3745 l_api_name,
3746 G_PKG_NAME,
3747 'OKL_API.G_RET_STS_ERROR',
3748 x_msg_count,
3749 x_msg_data,
3750 '_PVT'
3751 );
3752 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3753 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3754 (
3755 l_api_name,
3756 G_PKG_NAME,
3757 'OKL_API.G_RET_STS_ERROR',
3758 x_msg_count,
3759 x_msg_data,
3760 '_PVT'
3761 );
3762 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3763 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3764 (
3765 l_api_name,
3766 G_PKG_NAME,
3767 'OKL_API.G_RET_STS_UNEXP_ERROR',
3768 x_msg_count,
3769 x_msg_data,
3770 '_PVT'
3771 );
3772 WHEN OTHERS THEN
3773 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3774 (
3775 l_api_name,
3776 G_PKG_NAME,
3777 'OTHERS',
3778 x_msg_count,
3779 x_msg_data,
3780 '_PVT'
3781 );
3782 END update_row;
3783
3784 ---------------------------------------------------------------------------
3785 -- PROCEDURE delete_row
3786 ---------------------------------------------------------------------------
3787 -----------------------------------------
3788 -- delete_row for:OKL_TXL_AR_INV_LNS_B --
3789 -----------------------------------------
3790 PROCEDURE delete_row(
3791 p_init_msg_list IN VARCHAR2,
3792 x_return_status OUT NOCOPY VARCHAR2,
3793 x_msg_count OUT NOCOPY NUMBER,
3794 x_msg_data OUT NOCOPY VARCHAR2,
3795 p_til_rec IN til_rec_type) IS
3796
3797 l_api_version CONSTANT NUMBER := 1;
3798 l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
3799 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3800 l_til_rec til_rec_type:= p_til_rec;
3801 l_row_notfound BOOLEAN := TRUE;
3802 BEGIN
3803 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3804 p_init_msg_list,
3805 '_PVT',
3806 x_return_status);
3807 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3808 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3809 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3810 RAISE Okl_Api.G_EXCEPTION_ERROR;
3811 END IF;
3812 DELETE FROM OKL_TXL_AR_INV_LNS_B
3813 WHERE ID = l_til_rec.id;
3814
3815 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3816 EXCEPTION
3817 WHEN G_EXCEPTION_HALT_VALIDATION THEN
3818 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3819 (
3820 l_api_name,
3821 G_PKG_NAME,
3822 'OKL_API.G_RET_STS_ERROR',
3823 x_msg_count,
3824 x_msg_data,
3825 '_PVT'
3826 );
3827 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3828 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3829 (
3830 l_api_name,
3831 G_PKG_NAME,
3832 'OKL_API.G_RET_STS_ERROR',
3833 x_msg_count,
3834 x_msg_data,
3835 '_PVT'
3836 );
3837 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3838 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3839 (
3840 l_api_name,
3841 G_PKG_NAME,
3842 'OKL_API.G_RET_STS_UNEXP_ERROR',
3843 x_msg_count,
3844 x_msg_data,
3845 '_PVT'
3846 );
3847 WHEN OTHERS THEN
3848 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3849 (
3850 l_api_name,
3851 G_PKG_NAME,
3852 'OTHERS',
3853 x_msg_count,
3854 x_msg_data,
3855 '_PVT'
3856 );
3857 END delete_row;
3858 ------------------------------------------
3859 -- delete_row for:OKL_TXL_AR_INV_LNS_TL --
3860 ------------------------------------------
3861 PROCEDURE delete_row(
3862 p_init_msg_list IN VARCHAR2,
3863 x_return_status OUT NOCOPY VARCHAR2,
3864 x_msg_count OUT NOCOPY NUMBER,
3865 x_msg_data OUT NOCOPY VARCHAR2,
3866 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type) IS
3867
3868 l_api_version CONSTANT NUMBER := 1;
3869 l_api_name CONSTANT VARCHAR2(30) := 'TL_delete_row';
3870 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3871 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type:= p_okl_txl_ar_inv_lns_tl_rec;
3872 l_row_notfound BOOLEAN := TRUE;
3873 ----------------------------------------------
3874 -- Set_Attributes for:OKL_TXL_AR_INV_LNS_TL --
3875 ----------------------------------------------
3876 FUNCTION Set_Attributes (
3877 p_okl_txl_ar_inv_lns_tl_rec IN okl_txl_ar_inv_lns_tl_rec_type,
3878 x_okl_txl_ar_inv_lns_tl_rec OUT NOCOPY okl_txl_ar_inv_lns_tl_rec_type
3879 ) RETURN VARCHAR2 IS
3880 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3881 BEGIN
3882 x_okl_txl_ar_inv_lns_tl_rec := p_okl_txl_ar_inv_lns_tl_rec;
3883 x_okl_txl_ar_inv_lns_tl_rec.LANGUAGE := USERENV('LANG');
3884 RETURN(l_return_status);
3885 END Set_Attributes;
3886 BEGIN
3887 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3888 p_init_msg_list,
3889 '_PVT',
3890 x_return_status);
3891 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3892 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3893 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3894 RAISE Okl_Api.G_EXCEPTION_ERROR;
3895 END IF;
3896 --- Setting item attributes
3897 l_return_status := Set_Attributes(
3898 p_okl_txl_ar_inv_lns_tl_rec, -- IN
3899 l_okl_txl_ar_inv_lns_tl_rec); -- OUT
3900 --- If any errors happen abort API
3901 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3902 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3903 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3904 RAISE Okl_Api.G_EXCEPTION_ERROR;
3905 END IF;
3906 DELETE FROM OKL_TXL_AR_INV_LNS_TL
3907 WHERE ID = l_okl_txl_ar_inv_lns_tl_rec.id;
3908
3909 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3910 EXCEPTION
3911 WHEN G_EXCEPTION_HALT_VALIDATION THEN
3912 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3913 (
3914 l_api_name,
3915 G_PKG_NAME,
3916 'OKL_API.G_RET_STS_ERROR',
3917 x_msg_count,
3918 x_msg_data,
3919 '_PVT'
3920 );
3921 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3922 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3923 (
3924 l_api_name,
3925 G_PKG_NAME,
3926 'OKL_API.G_RET_STS_ERROR',
3927 x_msg_count,
3928 x_msg_data,
3929 '_PVT'
3930 );
3931 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3932 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3933 (
3934 l_api_name,
3935 G_PKG_NAME,
3936 'OKL_API.G_RET_STS_UNEXP_ERROR',
3937 x_msg_count,
3938 x_msg_data,
3939 '_PVT'
3940 );
3941 WHEN OTHERS THEN
3942 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3943 (
3944 l_api_name,
3945 G_PKG_NAME,
3946 'OTHERS',
3947 x_msg_count,
3948 x_msg_data,
3949 '_PVT'
3950 );
3951 END delete_row;
3952 -----------------------------------------
3953 -- delete_row for:OKL_TXL_AR_INV_LNS_V --
3954 -----------------------------------------
3955 PROCEDURE delete_row(
3956 p_api_version IN NUMBER,
3957 p_init_msg_list IN VARCHAR2,
3958 x_return_status OUT NOCOPY VARCHAR2,
3959 x_msg_count OUT NOCOPY NUMBER,
3960 x_msg_data OUT NOCOPY VARCHAR2,
3961 p_tilv_rec IN tilv_rec_type) IS
3962
3963 l_api_version CONSTANT NUMBER := 1;
3964 l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
3965 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3966 l_tilv_rec tilv_rec_type := p_tilv_rec;
3967 l_okl_txl_ar_inv_lns_tl_rec okl_txl_ar_inv_lns_tl_rec_type;
3968 l_til_rec til_rec_type;
3969 BEGIN
3970 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3971 G_PKG_NAME,
3972 p_init_msg_list,
3973 l_api_version,
3974 p_api_version,
3975 '_PVT',
3976 x_return_status);
3977 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3978 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3979 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3980 RAISE Okl_Api.G_EXCEPTION_ERROR;
3981 END IF;
3982 --------------------------------------
3983 -- Move VIEW record to "Child" records
3984 --------------------------------------
3985 migrate(l_tilv_rec, l_okl_txl_ar_inv_lns_tl_rec);
3986 migrate(l_tilv_rec, l_til_rec);
3987 --------------------------------------------
3988 -- Call the DELETE_ROW for each child record
3989 --------------------------------------------
3990 delete_row(
3991 p_init_msg_list,
3992 x_return_status,
3993 x_msg_count,
3994 x_msg_data,
3995 l_okl_txl_ar_inv_lns_tl_rec
3996 );
3997 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3998 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3999 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4000 RAISE Okl_Api.G_EXCEPTION_ERROR;
4001 END IF;
4002 delete_row(
4003 p_init_msg_list,
4004 x_return_status,
4005 x_msg_count,
4006 x_msg_data,
4007 l_til_rec
4008 );
4009 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
4010 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
4011 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
4012 RAISE Okl_Api.G_EXCEPTION_ERROR;
4013 END IF;
4014 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
4015 EXCEPTION
4016 WHEN G_EXCEPTION_HALT_VALIDATION THEN
4017 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
4018 (
4019 l_api_name,
4020 G_PKG_NAME,
4021 'OKL_API.G_RET_STS_ERROR',
4022 x_msg_count,
4023 x_msg_data,
4024 '_PVT'
4025 );
4026 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4027 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
4028 (
4029 l_api_name,
4030 G_PKG_NAME,
4031 'OKL_API.G_RET_STS_ERROR',
4032 x_msg_count,
4033 x_msg_data,
4034 '_PVT'
4035 );
4036 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4037 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
4038 (
4039 l_api_name,
4040 G_PKG_NAME,
4041 'OKL_API.G_RET_STS_UNEXP_ERROR',
4042 x_msg_count,
4043 x_msg_data,
4044 '_PVT'
4045 );
4046 WHEN OTHERS THEN
4047 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
4048 (
4049 l_api_name,
4050 G_PKG_NAME,
4051 'OTHERS',
4052 x_msg_count,
4053 x_msg_data,
4054 '_PVT'
4055 );
4056 END delete_row;
4057 ----------------------------------------
4058 -- PL/SQL TBL delete_row for:TILV_TBL --
4059 ----------------------------------------
4060 PROCEDURE delete_row(
4061 p_api_version IN NUMBER,
4062 p_init_msg_list IN VARCHAR2,
4063 x_return_status OUT NOCOPY VARCHAR2,
4064 x_msg_count OUT NOCOPY NUMBER,
4065 x_msg_data OUT NOCOPY VARCHAR2,
4066 p_tilv_tbl IN tilv_tbl_type) IS
4067
4068 l_api_version CONSTANT NUMBER := 1;
4069 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
4070 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
4071 -- Begin Post-Generation Change
4072 -- overall error status
4073 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
4074 -- End Post-Generation Change
4075 i NUMBER := 0;
4076 BEGIN
4077 Okl_Api.init_msg_list(p_init_msg_list);
4078 -- Make sure PL/SQL table has records in it before passing
4079 IF (p_tilv_tbl.COUNT > 0) THEN
4080 i := p_tilv_tbl.FIRST;
4081 LOOP
4082 delete_row (
4083 p_api_version => p_api_version,
4084 p_init_msg_list => Okl_Api.G_FALSE,
4085 x_return_status => x_return_status,
4086 x_msg_count => x_msg_count,
4087 x_msg_data => x_msg_data,
4088 p_tilv_rec => p_tilv_tbl(i));
4089
4090 -- Begin Post-Generation Change
4091 -- store the highest degree of error
4092 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
4093 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
4094 l_overall_status := x_return_status;
4095 END IF;
4096 END IF;
4097 -- End Post-Generation Change
4098 EXIT WHEN (i = p_tilv_tbl.LAST);
4099 i := p_tilv_tbl.NEXT(i);
4100 END LOOP;
4101 -- Begin Post-Generation Change
4102 -- return overall status
4103 x_return_status := l_overall_status;
4104 -- End Post-Generation Change
4105 END IF;
4106 EXCEPTION
4107 WHEN G_EXCEPTION_HALT_VALIDATION THEN
4108 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
4109 (
4110 l_api_name,
4111 G_PKG_NAME,
4112 'OKL_API.G_RET_STS_ERROR',
4113 x_msg_count,
4114 x_msg_data,
4115 '_PVT'
4116 );
4117 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
4118 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
4119 (
4120 l_api_name,
4121 G_PKG_NAME,
4122 'OKL_API.G_RET_STS_ERROR',
4123 x_msg_count,
4124 x_msg_data,
4125 '_PVT'
4126 );
4127 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
4128 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
4129 (
4130 l_api_name,
4131 G_PKG_NAME,
4132 'OKL_API.G_RET_STS_UNEXP_ERROR',
4133 x_msg_count,
4134 x_msg_data,
4135 '_PVT'
4136 );
4137 WHEN OTHERS THEN
4138 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
4139 (
4140 l_api_name,
4141 G_PKG_NAME,
4142 'OTHERS',
4143 x_msg_count,
4144 x_msg_data,
4145 '_PVT'
4146 );
4147 END delete_row;
4148 END Okl_Til_Pvt;