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