[Home] [Help]
PACKAGE BODY: APPS.OKL_XHR_PVT
Source
1 PACKAGE BODY OKL_XHR_PVT AS
2 /* $Header: OKLSXHRB.pls 120.3 2007/08/08 12:56:18 arajagop ship $ */
3 ---------------------------------------------------------------------------
4 -- FUNCTION get_seq_id
5 ---------------------------------------------------------------------------
6 FUNCTION get_seq_id RETURN NUMBER IS
7 BEGIN
8 RETURN(okc_p_util.raw_to_number(sys_guid()));
9 END get_seq_id;
10
11 ---------------------------------------------------------------------------
12 -- PROCEDURE qc
13 ---------------------------------------------------------------------------
14 PROCEDURE qc IS
15 BEGIN
16 null;
17 END qc;
18
19 ---------------------------------------------------------------------------
20 -- PROCEDURE change_version
21 ---------------------------------------------------------------------------
22 PROCEDURE change_version IS
23 BEGIN
24 null;
25 END change_version;
26
27 ---------------------------------------------------------------------------
28 -- PROCEDURE api_copy
29 ---------------------------------------------------------------------------
30 PROCEDURE api_copy IS
31 BEGIN
32 null;
33 END api_copy;
34
35 ---------------------------------------------------------------------------
36 -- PROCEDURE add_language
37 ---------------------------------------------------------------------------
38 PROCEDURE add_language IS
39 BEGIN
40 DELETE FROM OKL_EXT_FUND_RQNS_TL T
41 WHERE NOT EXISTS (
42 SELECT NULL
43 FROM OKL_EXT_FUND_RQNS_ALL_B B --fixed bug 3321017 by kmotepal
44 WHERE B.ID = T.ID
45 );
46
47 /*
48
49 Post-Generation Change
50 By RDRAGUIL on 20-Apr-2001
51
52 Since the table does not have any meaningful columns,
53 UPDATE statement is not complete.
54 Please comment out WHERE condition if
55 UPDATE statement is not present
56 If new release has some columns in the table,
57 this modification is not needed
58
59 WHERE (
60 T.ID,
61 T.LANGUAGE)
62 IN (SELECT
63 SUBT.ID,
64 SUBT.LANGUAGE
65 FROM OKL_EXT_FUND_RQNS_TL SUBB, OKL_EXT_FUND_RQNS_TL SUBT
66 WHERE SUBB.ID = SUBT.ID
67 AND SUBB.LANGUAGE = SUBT.SOURCE_LANG
68
69 */
70
71 INSERT INTO OKL_EXT_FUND_RQNS_TL (
72 ID,
73 LANGUAGE,
74 SOURCE_LANG,
75 SFWT_FLAG,
76 CREATED_BY,
77 CREATION_DATE,
78 LAST_UPDATED_BY,
79 LAST_UPDATE_DATE,
80 LAST_UPDATE_LOGIN)
81 SELECT
82 B.ID,
83 L.LANGUAGE_CODE,
84 B.SOURCE_LANG,
85 B.SFWT_FLAG,
86 B.CREATED_BY,
87 B.CREATION_DATE,
88 B.LAST_UPDATED_BY,
89 B.LAST_UPDATE_DATE,
90 B.LAST_UPDATE_LOGIN
91 FROM OKL_EXT_FUND_RQNS_TL B, FND_LANGUAGES L
92 WHERE L.INSTALLED_FLAG IN ('I', 'B')
93 AND B.LANGUAGE = USERENV('LANG')
94 AND NOT EXISTS(
95 SELECT NULL
96 FROM OKL_EXT_FUND_RQNS_TL T
97 WHERE T.ID = B.ID
98 AND T.LANGUAGE = L.LANGUAGE_CODE
99 );
100
101 END add_language;
102
103 ---------------------------------------------------------------------------
104 -- FUNCTION get_rec for: OKL_EXT_FUND_RQNS_B
105 ---------------------------------------------------------------------------
106 FUNCTION get_rec (
107 p_xhr_rec IN xhr_rec_type,
108 x_no_data_found OUT NOCOPY BOOLEAN
109 ) RETURN xhr_rec_type IS
110 CURSOR okl_ext_fund_rqns_b_pk_csr (p_id IN NUMBER) IS
111 SELECT
112 ID,
113 IRQ_ID,
114 OBJECT_VERSION_NUMBER,
115 CREATED_BY,
116 CREATION_DATE,
117 LAST_UPDATED_BY,
118 LAST_UPDATE_DATE,
119 ORG_ID,
120 REQUEST_ID,
121 PROGRAM_APPLICATION_ID,
122 PROGRAM_ID,
123 PROGRAM_UPDATE_DATE,
124 ATTRIBUTE_CATEGORY,
125 ATTRIBUTE1,
126 ATTRIBUTE2,
127 ATTRIBUTE3,
128 ATTRIBUTE4,
129 ATTRIBUTE5,
130 ATTRIBUTE6,
131 ATTRIBUTE7,
132 ATTRIBUTE8,
133 ATTRIBUTE9,
134 ATTRIBUTE10,
135 ATTRIBUTE11,
136 ATTRIBUTE12,
137 ATTRIBUTE13,
138 ATTRIBUTE14,
139 ATTRIBUTE15,
140 LAST_UPDATE_LOGIN
141 FROM Okl_Ext_Fund_Rqns_B
142 WHERE okl_ext_fund_rqns_b.id = p_id;
143 l_okl_ext_fund_rqns_b_pk okl_ext_fund_rqns_b_pk_csr%ROWTYPE;
144 l_xhr_rec xhr_rec_type;
145 BEGIN
146 x_no_data_found := TRUE;
147 -- Get current database values
148 OPEN okl_ext_fund_rqns_b_pk_csr (p_xhr_rec.id);
149 FETCH okl_ext_fund_rqns_b_pk_csr INTO
150 l_xhr_rec.ID,
151 l_xhr_rec.IRQ_ID,
152 l_xhr_rec.OBJECT_VERSION_NUMBER,
153 l_xhr_rec.CREATED_BY,
154 l_xhr_rec.CREATION_DATE,
155 l_xhr_rec.LAST_UPDATED_BY,
156 l_xhr_rec.LAST_UPDATE_DATE,
157 l_xhr_rec.ORG_ID,
158 l_xhr_rec.REQUEST_ID,
159 l_xhr_rec.PROGRAM_APPLICATION_ID,
160 l_xhr_rec.PROGRAM_ID,
161 l_xhr_rec.PROGRAM_UPDATE_DATE,
162 l_xhr_rec.ATTRIBUTE_CATEGORY,
163 l_xhr_rec.ATTRIBUTE1,
164 l_xhr_rec.ATTRIBUTE2,
165 l_xhr_rec.ATTRIBUTE3,
166 l_xhr_rec.ATTRIBUTE4,
167 l_xhr_rec.ATTRIBUTE5,
168 l_xhr_rec.ATTRIBUTE6,
169 l_xhr_rec.ATTRIBUTE7,
170 l_xhr_rec.ATTRIBUTE8,
171 l_xhr_rec.ATTRIBUTE9,
172 l_xhr_rec.ATTRIBUTE10,
173 l_xhr_rec.ATTRIBUTE11,
174 l_xhr_rec.ATTRIBUTE12,
175 l_xhr_rec.ATTRIBUTE13,
176 l_xhr_rec.ATTRIBUTE14,
177 l_xhr_rec.ATTRIBUTE15,
178 l_xhr_rec.LAST_UPDATE_LOGIN;
179 x_no_data_found := okl_ext_fund_rqns_b_pk_csr%NOTFOUND;
180 CLOSE okl_ext_fund_rqns_b_pk_csr;
181 RETURN(l_xhr_rec);
182 END get_rec;
183
184 FUNCTION get_rec (
185 p_xhr_rec IN xhr_rec_type
186 ) RETURN xhr_rec_type IS
187 l_row_notfound BOOLEAN := TRUE;
188 BEGIN
189 RETURN(get_rec(p_xhr_rec, l_row_notfound));
190 END get_rec;
191 ---------------------------------------------------------------------------
192 -- FUNCTION get_rec for: OKL_EXT_FUND_RQNS_TL
193 ---------------------------------------------------------------------------
194 FUNCTION get_rec (
195 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type,
196 x_no_data_found OUT NOCOPY BOOLEAN
197 ) RETURN okl_ext_fund_rqns_tl_rec_type IS
198 CURSOR okl_ext_fund_rqns_tl_pk_csr (p_id IN NUMBER,
199 p_language IN VARCHAR2) IS
200 SELECT
201 ID,
202 LANGUAGE,
203 SOURCE_LANG,
204 SFWT_FLAG,
205 CREATED_BY,
206 CREATION_DATE,
207 LAST_UPDATED_BY,
208 LAST_UPDATE_DATE,
209 LAST_UPDATE_LOGIN
210 FROM Okl_Ext_Fund_Rqns_Tl
211 WHERE okl_ext_fund_rqns_tl.id = p_id
212 AND okl_ext_fund_rqns_tl.language = p_language;
213 l_okl_ext_fund_rqns_tl_pk okl_ext_fund_rqns_tl_pk_csr%ROWTYPE;
214 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
215 BEGIN
216 x_no_data_found := TRUE;
217 -- Get current database values
218 OPEN okl_ext_fund_rqns_tl_pk_csr (p_okl_ext_fund_rqns_tl_rec.id,
219 p_okl_ext_fund_rqns_tl_rec.language);
220 FETCH okl_ext_fund_rqns_tl_pk_csr INTO
221 l_okl_ext_fund_rqns_tl_rec.ID,
222 l_okl_ext_fund_rqns_tl_rec.LANGUAGE,
223 l_okl_ext_fund_rqns_tl_rec.SOURCE_LANG,
224 l_okl_ext_fund_rqns_tl_rec.SFWT_FLAG,
225 l_okl_ext_fund_rqns_tl_rec.CREATED_BY,
226 l_okl_ext_fund_rqns_tl_rec.CREATION_DATE,
227 l_okl_ext_fund_rqns_tl_rec.LAST_UPDATED_BY,
228 l_okl_ext_fund_rqns_tl_rec.LAST_UPDATE_DATE,
229 l_okl_ext_fund_rqns_tl_rec.LAST_UPDATE_LOGIN;
230 x_no_data_found := okl_ext_fund_rqns_tl_pk_csr%NOTFOUND;
231 CLOSE okl_ext_fund_rqns_tl_pk_csr;
232 RETURN(l_okl_ext_fund_rqns_tl_rec);
233 END get_rec;
234
235 FUNCTION get_rec (
236 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type
237 ) RETURN okl_ext_fund_rqns_tl_rec_type IS
238 l_row_notfound BOOLEAN := TRUE;
239 BEGIN
240 RETURN(get_rec(p_okl_ext_fund_rqns_tl_rec, l_row_notfound));
241 END get_rec;
242 ---------------------------------------------------------------------------
243 -- FUNCTION get_rec for: OKL_EXT_FUND_RQNS_V
244 ---------------------------------------------------------------------------
245 FUNCTION get_rec (
246 p_xhrv_rec IN xhrv_rec_type,
247 x_no_data_found OUT NOCOPY BOOLEAN
248 ) RETURN xhrv_rec_type IS
249 CURSOR okl_xhrv_pk_csr (p_id IN NUMBER) IS
250 SELECT
251 ID,
252 OBJECT_VERSION_NUMBER,
253 SFWT_FLAG,
254 IRQ_ID,
255 ATTRIBUTE_CATEGORY,
256 ATTRIBUTE1,
257 ATTRIBUTE2,
258 ATTRIBUTE3,
259 ATTRIBUTE4,
260 ATTRIBUTE5,
261 ATTRIBUTE6,
262 ATTRIBUTE7,
263 ATTRIBUTE8,
264 ATTRIBUTE9,
265 ATTRIBUTE10,
266 ATTRIBUTE11,
267 ATTRIBUTE12,
268 ATTRIBUTE13,
269 ATTRIBUTE14,
270 ATTRIBUTE15,
271 CREATED_BY,
272 CREATION_DATE,
273 LAST_UPDATED_BY,
274 LAST_UPDATE_DATE,
275 ORG_ID,
276 REQUEST_ID,
277 PROGRAM_APPLICATION_ID,
278 PROGRAM_ID,
279 PROGRAM_UPDATE_DATE,
280 LAST_UPDATE_LOGIN
281 FROM Okl_Ext_Fund_Rqns_V
282 WHERE okl_ext_fund_rqns_v.id = p_id;
283 l_okl_xhrv_pk okl_xhrv_pk_csr%ROWTYPE;
284 l_xhrv_rec xhrv_rec_type;
285 BEGIN
286 x_no_data_found := TRUE;
287 -- Get current database values
288 OPEN okl_xhrv_pk_csr (p_xhrv_rec.id);
289 FETCH okl_xhrv_pk_csr INTO
290 l_xhrv_rec.ID,
291 l_xhrv_rec.OBJECT_VERSION_NUMBER,
292 l_xhrv_rec.SFWT_FLAG,
293 l_xhrv_rec.IRQ_ID,
294 l_xhrv_rec.ATTRIBUTE_CATEGORY,
295 l_xhrv_rec.ATTRIBUTE1,
296 l_xhrv_rec.ATTRIBUTE2,
297 l_xhrv_rec.ATTRIBUTE3,
298 l_xhrv_rec.ATTRIBUTE4,
299 l_xhrv_rec.ATTRIBUTE5,
300 l_xhrv_rec.ATTRIBUTE6,
301 l_xhrv_rec.ATTRIBUTE7,
302 l_xhrv_rec.ATTRIBUTE8,
303 l_xhrv_rec.ATTRIBUTE9,
304 l_xhrv_rec.ATTRIBUTE10,
305 l_xhrv_rec.ATTRIBUTE11,
306 l_xhrv_rec.ATTRIBUTE12,
307 l_xhrv_rec.ATTRIBUTE13,
308 l_xhrv_rec.ATTRIBUTE14,
309 l_xhrv_rec.ATTRIBUTE15,
310 l_xhrv_rec.CREATED_BY,
311 l_xhrv_rec.CREATION_DATE,
312 l_xhrv_rec.LAST_UPDATED_BY,
313 l_xhrv_rec.LAST_UPDATE_DATE,
314 l_xhrv_rec.ORG_ID,
315 l_xhrv_rec.REQUEST_ID,
316 l_xhrv_rec.PROGRAM_APPLICATION_ID,
317 l_xhrv_rec.PROGRAM_ID,
318 l_xhrv_rec.PROGRAM_UPDATE_DATE,
319 l_xhrv_rec.LAST_UPDATE_LOGIN;
320 x_no_data_found := okl_xhrv_pk_csr%NOTFOUND;
321 CLOSE okl_xhrv_pk_csr;
322 RETURN(l_xhrv_rec);
323 END get_rec;
324
325 FUNCTION get_rec (
326 p_xhrv_rec IN xhrv_rec_type
327 ) RETURN xhrv_rec_type IS
328 l_row_notfound BOOLEAN := TRUE;
329 BEGIN
330 RETURN(get_rec(p_xhrv_rec, l_row_notfound));
331 END get_rec;
332
333 ---------------------------------------------------------
334 -- FUNCTION null_out_defaults for: OKL_EXT_FUND_RQNS_V --
335 ---------------------------------------------------------
336 FUNCTION null_out_defaults (
337 p_xhrv_rec IN xhrv_rec_type
338 ) RETURN xhrv_rec_type IS
339 l_xhrv_rec xhrv_rec_type := p_xhrv_rec;
340 BEGIN
341 IF (l_xhrv_rec.object_version_number = OKC_API.G_MISS_NUM) THEN
342 l_xhrv_rec.object_version_number := NULL;
343 END IF;
344 IF (l_xhrv_rec.sfwt_flag = OKC_API.G_MISS_CHAR) THEN
345 l_xhrv_rec.sfwt_flag := NULL;
346 END IF;
347 IF (l_xhrv_rec.irq_id = OKC_API.G_MISS_NUM) THEN
348 l_xhrv_rec.irq_id := NULL;
349 END IF;
350 IF (l_xhrv_rec.attribute_category = OKC_API.G_MISS_CHAR) THEN
351 l_xhrv_rec.attribute_category := NULL;
352 END IF;
353 IF (l_xhrv_rec.attribute1 = OKC_API.G_MISS_CHAR) THEN
354 l_xhrv_rec.attribute1 := NULL;
355 END IF;
356 IF (l_xhrv_rec.attribute2 = OKC_API.G_MISS_CHAR) THEN
357 l_xhrv_rec.attribute2 := NULL;
358 END IF;
359 IF (l_xhrv_rec.attribute3 = OKC_API.G_MISS_CHAR) THEN
360 l_xhrv_rec.attribute3 := NULL;
361 END IF;
362 IF (l_xhrv_rec.attribute4 = OKC_API.G_MISS_CHAR) THEN
363 l_xhrv_rec.attribute4 := NULL;
364 END IF;
365 IF (l_xhrv_rec.attribute5 = OKC_API.G_MISS_CHAR) THEN
366 l_xhrv_rec.attribute5 := NULL;
367 END IF;
368 IF (l_xhrv_rec.attribute6 = OKC_API.G_MISS_CHAR) THEN
369 l_xhrv_rec.attribute6 := NULL;
370 END IF;
371 IF (l_xhrv_rec.attribute7 = OKC_API.G_MISS_CHAR) THEN
372 l_xhrv_rec.attribute7 := NULL;
373 END IF;
374 IF (l_xhrv_rec.attribute8 = OKC_API.G_MISS_CHAR) THEN
375 l_xhrv_rec.attribute8 := NULL;
376 END IF;
377 IF (l_xhrv_rec.attribute9 = OKC_API.G_MISS_CHAR) THEN
378 l_xhrv_rec.attribute9 := NULL;
379 END IF;
380 IF (l_xhrv_rec.attribute10 = OKC_API.G_MISS_CHAR) THEN
381 l_xhrv_rec.attribute10 := NULL;
382 END IF;
383 IF (l_xhrv_rec.attribute11 = OKC_API.G_MISS_CHAR) THEN
384 l_xhrv_rec.attribute11 := NULL;
385 END IF;
386 IF (l_xhrv_rec.attribute12 = OKC_API.G_MISS_CHAR) THEN
387 l_xhrv_rec.attribute12 := NULL;
388 END IF;
389 IF (l_xhrv_rec.attribute13 = OKC_API.G_MISS_CHAR) THEN
390 l_xhrv_rec.attribute13 := NULL;
391 END IF;
392 IF (l_xhrv_rec.attribute14 = OKC_API.G_MISS_CHAR) THEN
393 l_xhrv_rec.attribute14 := NULL;
394 END IF;
395 IF (l_xhrv_rec.attribute15 = OKC_API.G_MISS_CHAR) THEN
396 l_xhrv_rec.attribute15 := NULL;
397 END IF;
398 IF (l_xhrv_rec.created_by = OKC_API.G_MISS_NUM) THEN
399 l_xhrv_rec.created_by := NULL;
400 END IF;
401 IF (l_xhrv_rec.creation_date = OKC_API.G_MISS_DATE) THEN
402 l_xhrv_rec.creation_date := NULL;
403 END IF;
404 IF (l_xhrv_rec.last_updated_by = OKC_API.G_MISS_NUM) THEN
405 l_xhrv_rec.last_updated_by := NULL;
406 END IF;
407 IF (l_xhrv_rec.last_update_date = OKC_API.G_MISS_DATE) THEN
408 l_xhrv_rec.last_update_date := NULL;
409 END IF;
410 IF (l_xhrv_rec.org_id = OKC_API.G_MISS_NUM) THEN
411 l_xhrv_rec.org_id := NULL;
412 END IF;
413 IF (l_xhrv_rec.request_id = OKC_API.G_MISS_NUM) THEN
414 l_xhrv_rec.request_id := NULL;
415 END IF;
416 IF (l_xhrv_rec.program_application_id = OKC_API.G_MISS_NUM) THEN
417 l_xhrv_rec.program_application_id := NULL;
418 END IF;
419 IF (l_xhrv_rec.program_id = OKC_API.G_MISS_NUM) THEN
420 l_xhrv_rec.program_id := NULL;
421 END IF;
422 IF (l_xhrv_rec.program_update_date = OKC_API.G_MISS_DATE) THEN
423 l_xhrv_rec.program_update_date := NULL;
424 END IF;
425 IF (l_xhrv_rec.last_update_login = OKC_API.G_MISS_NUM) THEN
426 l_xhrv_rec.last_update_login := NULL;
427 END IF;
428 RETURN(l_xhrv_rec);
429 END null_out_defaults;
430 ---------------------------------------------------------------------------
431 -- PROCEDURE Validate_Attributes
432 ---------------------------------------------------------------------------
433 -------------------------------------------------
434 -- Validate_Attributes for:OKL_EXT_FUND_RQNS_V --
435 -------------------------------------------------
436 FUNCTION Validate_Attributes (
437 p_xhrv_rec IN xhrv_rec_type
438 ) RETURN VARCHAR2 IS
439 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
440 BEGIN
441 IF p_xhrv_rec.id = OKC_API.G_MISS_NUM OR
442 p_xhrv_rec.id IS NULL
443 THEN
444 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'id');
445 l_return_status := OKC_API.G_RET_STS_ERROR;
446 ELSIF p_xhrv_rec.object_version_number = OKC_API.G_MISS_NUM OR
447 p_xhrv_rec.object_version_number IS NULL
448 THEN
449 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'object_version_number');
450 l_return_status := OKC_API.G_RET_STS_ERROR;
451 END IF;
452 RETURN(l_return_status);
453 END Validate_Attributes;
454
455 ---------------------------------------------------------------------------
456 -- PROCEDURE Validate_Record
457 ---------------------------------------------------------------------------
458 ---------------------------------------------
459 -- Validate_Record for:OKL_EXT_FUND_RQNS_V --
460 ---------------------------------------------
461 FUNCTION Validate_Record (
462 p_xhrv_rec IN xhrv_rec_type
463 ) RETURN VARCHAR2 IS
464 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
465 BEGIN
466 RETURN (l_return_status);
467 END Validate_Record;
468
469 ---------------------------------------------------------------------------
470 -- PROCEDURE Migrate
471 ---------------------------------------------------------------------------
472 PROCEDURE migrate (
473 p_from IN xhrv_rec_type,
474 p_to OUT NOCOPY xhr_rec_type
475 ) IS
476 BEGIN
477 p_to.id := p_from.id;
478 p_to.irq_id := p_from.irq_id;
479 p_to.object_version_number := p_from.object_version_number;
480 p_to.created_by := p_from.created_by;
481 p_to.creation_date := p_from.creation_date;
482 p_to.last_updated_by := p_from.last_updated_by;
483 p_to.last_update_date := p_from.last_update_date;
484 p_to.org_id := p_from.org_id;
485 p_to.request_id := p_from.request_id;
486 p_to.program_application_id := p_from.program_application_id;
487 p_to.program_id := p_from.program_id;
488 p_to.program_update_date := p_from.program_update_date;
489 p_to.attribute_category := p_from.attribute_category;
490 p_to.attribute1 := p_from.attribute1;
491 p_to.attribute2 := p_from.attribute2;
492 p_to.attribute3 := p_from.attribute3;
493 p_to.attribute4 := p_from.attribute4;
494 p_to.attribute5 := p_from.attribute5;
495 p_to.attribute6 := p_from.attribute6;
496 p_to.attribute7 := p_from.attribute7;
497 p_to.attribute8 := p_from.attribute8;
498 p_to.attribute9 := p_from.attribute9;
499 p_to.attribute10 := p_from.attribute10;
500 p_to.attribute11 := p_from.attribute11;
501 p_to.attribute12 := p_from.attribute12;
502 p_to.attribute13 := p_from.attribute13;
503 p_to.attribute14 := p_from.attribute14;
504 p_to.attribute15 := p_from.attribute15;
505 p_to.last_update_login := p_from.last_update_login;
506 END migrate;
507 PROCEDURE migrate (
508 p_from IN xhr_rec_type,
509 p_to OUT NOCOPY xhrv_rec_type
510 ) IS
511 BEGIN
512 p_to.id := p_from.id;
513 p_to.irq_id := p_from.irq_id;
514 p_to.object_version_number := p_from.object_version_number;
515 p_to.created_by := p_from.created_by;
516 p_to.creation_date := p_from.creation_date;
517 p_to.last_updated_by := p_from.last_updated_by;
518 p_to.last_update_date := p_from.last_update_date;
519 p_to.org_id := p_from.org_id;
520 p_to.request_id := p_from.request_id;
521 p_to.program_application_id := p_from.program_application_id;
522 p_to.program_id := p_from.program_id;
523 p_to.program_update_date := p_from.program_update_date;
524 p_to.attribute_category := p_from.attribute_category;
525 p_to.attribute1 := p_from.attribute1;
526 p_to.attribute2 := p_from.attribute2;
527 p_to.attribute3 := p_from.attribute3;
528 p_to.attribute4 := p_from.attribute4;
529 p_to.attribute5 := p_from.attribute5;
530 p_to.attribute6 := p_from.attribute6;
531 p_to.attribute7 := p_from.attribute7;
532 p_to.attribute8 := p_from.attribute8;
533 p_to.attribute9 := p_from.attribute9;
534 p_to.attribute10 := p_from.attribute10;
535 p_to.attribute11 := p_from.attribute11;
536 p_to.attribute12 := p_from.attribute12;
537 p_to.attribute13 := p_from.attribute13;
538 p_to.attribute14 := p_from.attribute14;
539 p_to.attribute15 := p_from.attribute15;
540 p_to.last_update_login := p_from.last_update_login;
541 END migrate;
542 PROCEDURE migrate (
543 p_from IN xhrv_rec_type,
544 p_to OUT NOCOPY okl_ext_fund_rqns_tl_rec_type
545 ) IS
546 BEGIN
547 p_to.id := p_from.id;
548 p_to.sfwt_flag := p_from.sfwt_flag;
549 p_to.created_by := p_from.created_by;
550 p_to.creation_date := p_from.creation_date;
551 p_to.last_updated_by := p_from.last_updated_by;
552 p_to.last_update_date := p_from.last_update_date;
553 p_to.last_update_login := p_from.last_update_login;
554 END migrate;
555 PROCEDURE migrate (
556 p_from IN okl_ext_fund_rqns_tl_rec_type,
557 p_to OUT NOCOPY xhrv_rec_type
558 ) IS
559 BEGIN
560 p_to.id := p_from.id;
561 p_to.sfwt_flag := p_from.sfwt_flag;
562 p_to.created_by := p_from.created_by;
563 p_to.creation_date := p_from.creation_date;
564 p_to.last_updated_by := p_from.last_updated_by;
565 p_to.last_update_date := p_from.last_update_date;
566 p_to.last_update_login := p_from.last_update_login;
567 END migrate;
568
569 ---------------------------------------------------------------------------
570 -- PROCEDURE validate_row
571 ---------------------------------------------------------------------------
572 ------------------------------------------
573 -- validate_row for:OKL_EXT_FUND_RQNS_V --
574 ------------------------------------------
575 PROCEDURE validate_row(
576 p_api_version IN NUMBER,
577 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
578 x_return_status OUT NOCOPY VARCHAR2,
579 x_msg_count OUT NOCOPY NUMBER,
580 x_msg_data OUT NOCOPY VARCHAR2,
581 p_xhrv_rec IN xhrv_rec_type) IS
582
583 l_api_version CONSTANT NUMBER := 1;
584 l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
585 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
586 l_xhrv_rec xhrv_rec_type := p_xhrv_rec;
587 l_xhr_rec xhr_rec_type;
588 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
589 BEGIN
590 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
591 G_PKG_NAME,
592 p_init_msg_list,
593 l_api_version,
594 p_api_version,
595 '_PVT',
596 x_return_status);
597 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
598 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
599 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
600 RAISE OKC_API.G_EXCEPTION_ERROR;
601 END IF;
602 --- Validate all non-missing attributes (Item Level Validation)
603 l_return_status := Validate_Attributes(l_xhrv_rec);
604 --- If any errors happen abort API
605 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
606 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
607 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
608 RAISE OKC_API.G_EXCEPTION_ERROR;
609 END IF;
610 l_return_status := Validate_Record(l_xhrv_rec);
611 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
612 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
613 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
614 RAISE OKC_API.G_EXCEPTION_ERROR;
615 END IF;
616 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
617 EXCEPTION
618 WHEN OKC_API.G_EXCEPTION_ERROR THEN
619 x_return_status := OKC_API.HANDLE_EXCEPTIONS
620 (
621 l_api_name,
622 G_PKG_NAME,
623 'OKC_API.G_RET_STS_ERROR',
624 x_msg_count,
625 x_msg_data,
626 '_PVT'
627 );
628 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
629 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
630 (
631 l_api_name,
632 G_PKG_NAME,
633 'OKC_API.G_RET_STS_UNEXP_ERROR',
634 x_msg_count,
635 x_msg_data,
636 '_PVT'
637 );
638 WHEN OTHERS THEN
639 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
640 (
641 l_api_name,
642 G_PKG_NAME,
643 'OTHERS',
644 x_msg_count,
645 x_msg_data,
646 '_PVT'
647 );
648 END validate_row;
649 ------------------------------------------
650 -- PL/SQL TBL validate_row for:XHRV_TBL --
651 ------------------------------------------
652 PROCEDURE validate_row(
653 p_api_version IN NUMBER,
654 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
655 x_return_status OUT NOCOPY VARCHAR2,
656 x_msg_count OUT NOCOPY NUMBER,
657 x_msg_data OUT NOCOPY VARCHAR2,
658 p_xhrv_tbl IN xhrv_tbl_type) IS
659
660 l_api_version CONSTANT NUMBER := 1;
661 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
662 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
663 i NUMBER := 0;
664 BEGIN
665 OKC_API.init_msg_list(p_init_msg_list);
666 -- Make sure PL/SQL table has records in it before passing
667 IF (p_xhrv_tbl.COUNT > 0) THEN
668 i := p_xhrv_tbl.FIRST;
669 LOOP
670 validate_row (
671 p_api_version => p_api_version,
672 p_init_msg_list => OKC_API.G_FALSE,
673 x_return_status => x_return_status,
674 x_msg_count => x_msg_count,
675 x_msg_data => x_msg_data,
676 p_xhrv_rec => p_xhrv_tbl(i));
677 EXIT WHEN (i = p_xhrv_tbl.LAST);
678 i := p_xhrv_tbl.NEXT(i);
679 END LOOP;
680 END IF;
681 EXCEPTION
682 WHEN OKC_API.G_EXCEPTION_ERROR THEN
683 x_return_status := OKC_API.HANDLE_EXCEPTIONS
684 (
685 l_api_name,
686 G_PKG_NAME,
687 'OKC_API.G_RET_STS_ERROR',
688 x_msg_count,
689 x_msg_data,
690 '_PVT'
691 );
692 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
693 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
694 (
695 l_api_name,
696 G_PKG_NAME,
697 'OKC_API.G_RET_STS_UNEXP_ERROR',
698 x_msg_count,
699 x_msg_data,
700 '_PVT'
701 );
702 WHEN OTHERS THEN
703 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
704 (
705 l_api_name,
706 G_PKG_NAME,
707 'OTHERS',
708 x_msg_count,
709 x_msg_data,
710 '_PVT'
711 );
712 END validate_row;
713
714 ---------------------------------------------------------------------------
715 -- PROCEDURE insert_row
716 ---------------------------------------------------------------------------
717 ----------------------------------------
718 -- insert_row for:OKL_EXT_FUND_RQNS_B --
719 ----------------------------------------
720 PROCEDURE insert_row(
721 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
722 x_return_status OUT NOCOPY VARCHAR2,
723 x_msg_count OUT NOCOPY NUMBER,
724 x_msg_data OUT NOCOPY VARCHAR2,
725 p_xhr_rec IN xhr_rec_type,
726 x_xhr_rec OUT NOCOPY xhr_rec_type) IS
727
728 l_api_version CONSTANT NUMBER := 1;
729 l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
730 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
731 l_xhr_rec xhr_rec_type := p_xhr_rec;
732 l_def_xhr_rec xhr_rec_type;
733 --------------------------------------------
734 -- Set_Attributes for:OKL_EXT_FUND_RQNS_B --
735 --------------------------------------------
736 FUNCTION Set_Attributes (
737 p_xhr_rec IN xhr_rec_type,
738 x_xhr_rec OUT NOCOPY xhr_rec_type
739 ) RETURN VARCHAR2 IS
740 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
741 BEGIN
742 x_xhr_rec := p_xhr_rec;
743 RETURN(l_return_status);
744 END Set_Attributes;
745 BEGIN
746 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
747 p_init_msg_list,
748 '_PVT',
749 x_return_status);
750 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
751 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
752 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
753 RAISE OKC_API.G_EXCEPTION_ERROR;
754 END IF;
755 --- Setting item attributes
756 l_return_status := Set_Attributes(
757 p_xhr_rec, -- IN
758 l_xhr_rec); -- OUT
759 --- If any errors happen abort API
760 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
761 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
762 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
763 RAISE OKC_API.G_EXCEPTION_ERROR;
764 END IF;
765 INSERT INTO OKL_EXT_FUND_RQNS_B(
766 id,
767 irq_id,
768 object_version_number,
769 created_by,
770 creation_date,
771 last_updated_by,
772 last_update_date,
773 org_id,
774 request_id,
775 program_application_id,
776 program_id,
777 program_update_date,
778 attribute_category,
779 attribute1,
780 attribute2,
781 attribute3,
782 attribute4,
783 attribute5,
784 attribute6,
785 attribute7,
786 attribute8,
787 attribute9,
788 attribute10,
789 attribute11,
790 attribute12,
791 attribute13,
792 attribute14,
793 attribute15,
794 last_update_login)
795 VALUES (
796 l_xhr_rec.id,
797 l_xhr_rec.irq_id,
798 l_xhr_rec.object_version_number,
799 l_xhr_rec.created_by,
800 l_xhr_rec.creation_date,
801 l_xhr_rec.last_updated_by,
802 l_xhr_rec.last_update_date,
803 l_xhr_rec.org_id,
804 l_xhr_rec.request_id,
805 l_xhr_rec.program_application_id,
806 l_xhr_rec.program_id,
807 l_xhr_rec.program_update_date,
808 l_xhr_rec.attribute_category,
809 l_xhr_rec.attribute1,
810 l_xhr_rec.attribute2,
811 l_xhr_rec.attribute3,
812 l_xhr_rec.attribute4,
813 l_xhr_rec.attribute5,
814 l_xhr_rec.attribute6,
815 l_xhr_rec.attribute7,
816 l_xhr_rec.attribute8,
817 l_xhr_rec.attribute9,
818 l_xhr_rec.attribute10,
819 l_xhr_rec.attribute11,
820 l_xhr_rec.attribute12,
821 l_xhr_rec.attribute13,
822 l_xhr_rec.attribute14,
823 l_xhr_rec.attribute15,
824 l_xhr_rec.last_update_login);
825 -- Set OUT values
826 x_xhr_rec := l_xhr_rec;
827 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
828 EXCEPTION
829 WHEN OKC_API.G_EXCEPTION_ERROR THEN
830 x_return_status := OKC_API.HANDLE_EXCEPTIONS
831 (
832 l_api_name,
833 G_PKG_NAME,
834 'OKC_API.G_RET_STS_ERROR',
835 x_msg_count,
836 x_msg_data,
837 '_PVT'
838 );
839 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
840 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
841 (
842 l_api_name,
843 G_PKG_NAME,
844 'OKC_API.G_RET_STS_UNEXP_ERROR',
845 x_msg_count,
846 x_msg_data,
847 '_PVT'
848 );
849 WHEN OTHERS THEN
850 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
851 (
852 l_api_name,
853 G_PKG_NAME,
854 'OTHERS',
855 x_msg_count,
856 x_msg_data,
857 '_PVT'
858 );
859 END insert_row;
860 -----------------------------------------
861 -- insert_row for:OKL_EXT_FUND_RQNS_TL --
862 -----------------------------------------
863 PROCEDURE insert_row(
864 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
865 x_return_status OUT NOCOPY VARCHAR2,
866 x_msg_count OUT NOCOPY NUMBER,
867 x_msg_data OUT NOCOPY VARCHAR2,
868 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type,
869 x_okl_ext_fund_rqns_tl_rec OUT NOCOPY okl_ext_fund_rqns_tl_rec_type) IS
870
871 l_api_version CONSTANT NUMBER := 1;
872 l_api_name CONSTANT VARCHAR2(30) := 'TL_insert_row';
873 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
874 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type := p_okl_ext_fund_rqns_tl_rec;
875 ldefoklextfundrqnstlrec okl_ext_fund_rqns_tl_rec_type;
876 CURSOR get_languages IS
877 SELECT *
878 FROM FND_LANGUAGES
879 WHERE INSTALLED_FLAG IN ('I', 'B');
880 ---------------------------------------------
881 -- Set_Attributes for:OKL_EXT_FUND_RQNS_TL --
882 ---------------------------------------------
883 FUNCTION Set_Attributes (
884 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type,
885 x_okl_ext_fund_rqns_tl_rec OUT NOCOPY okl_ext_fund_rqns_tl_rec_type
886 ) RETURN VARCHAR2 IS
887 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
888 BEGIN
889 x_okl_ext_fund_rqns_tl_rec := p_okl_ext_fund_rqns_tl_rec;
890 x_okl_ext_fund_rqns_tl_rec.LANGUAGE := USERENV('LANG');
891 x_okl_ext_fund_rqns_tl_rec.SOURCE_LANG := USERENV('LANG');
892 RETURN(l_return_status);
893 END Set_Attributes;
894 BEGIN
895 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
896 p_init_msg_list,
897 '_PVT',
898 x_return_status);
899 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
900 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
901 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
902 RAISE OKC_API.G_EXCEPTION_ERROR;
903 END IF;
904 --- Setting item attributes
905 l_return_status := Set_Attributes(
906 p_okl_ext_fund_rqns_tl_rec, -- IN
907 l_okl_ext_fund_rqns_tl_rec); -- OUT
908 --- If any errors happen abort API
909 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
910 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
911 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
912 RAISE OKC_API.G_EXCEPTION_ERROR;
913 END IF;
914 FOR l_lang_rec IN get_languages LOOP
915 l_okl_ext_fund_rqns_tl_rec.language := l_lang_rec.language_code;
916 INSERT INTO OKL_EXT_FUND_RQNS_TL(
917 id,
918 language,
919 source_lang,
920 sfwt_flag,
921 created_by,
922 creation_date,
923 last_updated_by,
924 last_update_date,
925 last_update_login)
926 VALUES (
927 l_okl_ext_fund_rqns_tl_rec.id,
928 l_okl_ext_fund_rqns_tl_rec.language,
929 l_okl_ext_fund_rqns_tl_rec.source_lang,
930 l_okl_ext_fund_rqns_tl_rec.sfwt_flag,
931 l_okl_ext_fund_rqns_tl_rec.created_by,
932 l_okl_ext_fund_rqns_tl_rec.creation_date,
933 l_okl_ext_fund_rqns_tl_rec.last_updated_by,
934 l_okl_ext_fund_rqns_tl_rec.last_update_date,
935 l_okl_ext_fund_rqns_tl_rec.last_update_login);
936 END LOOP;
937 -- Set OUT values
938 x_okl_ext_fund_rqns_tl_rec := l_okl_ext_fund_rqns_tl_rec;
939 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
940 EXCEPTION
941 WHEN OKC_API.G_EXCEPTION_ERROR THEN
942 x_return_status := OKC_API.HANDLE_EXCEPTIONS
943 (
944 l_api_name,
945 G_PKG_NAME,
946 'OKC_API.G_RET_STS_ERROR',
947 x_msg_count,
948 x_msg_data,
949 '_PVT'
950 );
951 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
952 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
953 (
954 l_api_name,
955 G_PKG_NAME,
956 'OKC_API.G_RET_STS_UNEXP_ERROR',
957 x_msg_count,
958 x_msg_data,
959 '_PVT'
960 );
961 WHEN OTHERS THEN
962 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
963 (
964 l_api_name,
965 G_PKG_NAME,
966 'OTHERS',
967 x_msg_count,
968 x_msg_data,
969 '_PVT'
970 );
971 END insert_row;
972 ----------------------------------------
973 -- insert_row for:OKL_EXT_FUND_RQNS_V --
974 ----------------------------------------
975 PROCEDURE insert_row(
976 p_api_version IN NUMBER,
977 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
978 x_return_status OUT NOCOPY VARCHAR2,
979 x_msg_count OUT NOCOPY NUMBER,
980 x_msg_data OUT NOCOPY VARCHAR2,
981 p_xhrv_rec IN xhrv_rec_type,
982 x_xhrv_rec OUT NOCOPY xhrv_rec_type) IS
983
984 l_api_version CONSTANT NUMBER := 1;
985 l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
986 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
987 l_xhrv_rec xhrv_rec_type;
988 l_def_xhrv_rec xhrv_rec_type;
989 l_xhr_rec xhr_rec_type;
990 lx_xhr_rec xhr_rec_type;
991 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
992 lx_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
993 -------------------------------
994 -- FUNCTION fill_who_columns --
995 -------------------------------
996 FUNCTION fill_who_columns (
997 p_xhrv_rec IN xhrv_rec_type
998 ) RETURN xhrv_rec_type IS
999 l_xhrv_rec xhrv_rec_type := p_xhrv_rec;
1000 BEGIN
1001 l_xhrv_rec.CREATION_DATE := SYSDATE;
1002 l_xhrv_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1003 l_xhrv_rec.LAST_UPDATE_DATE := SYSDATE;
1004 l_xhrv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1005 l_xhrv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1006 RETURN(l_xhrv_rec);
1007 END fill_who_columns;
1008 --------------------------------------------
1009 -- Set_Attributes for:OKL_EXT_FUND_RQNS_V --
1010 --------------------------------------------
1011 FUNCTION Set_Attributes (
1012 p_xhrv_rec IN xhrv_rec_type,
1013 x_xhrv_rec OUT NOCOPY xhrv_rec_type
1014 ) RETURN VARCHAR2 IS
1015 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1016 BEGIN
1017 x_xhrv_rec := p_xhrv_rec;
1018 x_xhrv_rec.OBJECT_VERSION_NUMBER := 1;
1019 x_xhrv_rec.SFWT_FLAG := 'N';
1020 RETURN(l_return_status);
1021 END Set_Attributes;
1022 BEGIN
1023 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1024 G_PKG_NAME,
1025 p_init_msg_list,
1026 l_api_version,
1027 p_api_version,
1028 '_PVT',
1029 x_return_status);
1030 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1031 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1032 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1033 RAISE OKC_API.G_EXCEPTION_ERROR;
1034 END IF;
1035 l_xhrv_rec := null_out_defaults(p_xhrv_rec);
1036 -- Set primary key value
1037 l_xhrv_rec.ID := get_seq_id;
1038 --- Setting item attributes
1039 l_return_status := Set_Attributes(
1040 l_xhrv_rec, -- IN
1041 l_def_xhrv_rec); -- OUT
1042 --- If any errors happen abort API
1043 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1044 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1045 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1046 RAISE OKC_API.G_EXCEPTION_ERROR;
1047 END IF;
1048 l_def_xhrv_rec := fill_who_columns(l_def_xhrv_rec);
1049 --- Validate all non-missing attributes (Item Level Validation)
1050 l_return_status := Validate_Attributes(l_def_xhrv_rec);
1051 --- If any errors happen abort API
1052 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1053 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1054 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1055 RAISE OKC_API.G_EXCEPTION_ERROR;
1056 END IF;
1057 l_return_status := Validate_Record(l_def_xhrv_rec);
1058 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1059 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1060 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1061 RAISE OKC_API.G_EXCEPTION_ERROR;
1062 END IF;
1063 --------------------------------------
1064 -- Move VIEW record to "Child" records
1065 --------------------------------------
1066 migrate(l_def_xhrv_rec, l_xhr_rec);
1067 migrate(l_def_xhrv_rec, l_okl_ext_fund_rqns_tl_rec);
1068 --------------------------------------------
1069 -- Call the INSERT_ROW for each child record
1070 --------------------------------------------
1071 insert_row(
1072 p_init_msg_list,
1073 x_return_status,
1074 x_msg_count,
1075 x_msg_data,
1076 l_xhr_rec,
1077 lx_xhr_rec
1078 );
1079 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1080 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1081 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1082 RAISE OKC_API.G_EXCEPTION_ERROR;
1083 END IF;
1084 migrate(lx_xhr_rec, l_def_xhrv_rec);
1085 insert_row(
1086 p_init_msg_list,
1087 x_return_status,
1088 x_msg_count,
1089 x_msg_data,
1090 l_okl_ext_fund_rqns_tl_rec,
1091 lx_okl_ext_fund_rqns_tl_rec
1092 );
1093 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1094 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1095 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1096 RAISE OKC_API.G_EXCEPTION_ERROR;
1097 END IF;
1098 migrate(lx_okl_ext_fund_rqns_tl_rec, l_def_xhrv_rec);
1099 -- Set OUT values
1100 x_xhrv_rec := l_def_xhrv_rec;
1101 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1102 EXCEPTION
1103 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1104 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1105 (
1106 l_api_name,
1107 G_PKG_NAME,
1108 'OKC_API.G_RET_STS_ERROR',
1109 x_msg_count,
1110 x_msg_data,
1111 '_PVT'
1112 );
1113 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1114 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1115 (
1116 l_api_name,
1117 G_PKG_NAME,
1118 'OKC_API.G_RET_STS_UNEXP_ERROR',
1119 x_msg_count,
1120 x_msg_data,
1121 '_PVT'
1122 );
1123 WHEN OTHERS THEN
1124 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1125 (
1126 l_api_name,
1127 G_PKG_NAME,
1128 'OTHERS',
1129 x_msg_count,
1130 x_msg_data,
1131 '_PVT'
1132 );
1133 END insert_row;
1134 ----------------------------------------
1135 -- PL/SQL TBL insert_row for:XHRV_TBL --
1136 ----------------------------------------
1137 PROCEDURE insert_row(
1138 p_api_version IN NUMBER,
1139 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1140 x_return_status OUT NOCOPY VARCHAR2,
1141 x_msg_count OUT NOCOPY NUMBER,
1142 x_msg_data OUT NOCOPY VARCHAR2,
1143 p_xhrv_tbl IN xhrv_tbl_type,
1144 x_xhrv_tbl OUT NOCOPY xhrv_tbl_type) IS
1145
1146 l_api_version CONSTANT NUMBER := 1;
1147 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1148 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1149 i NUMBER := 0;
1150 BEGIN
1151 OKC_API.init_msg_list(p_init_msg_list);
1152 -- Make sure PL/SQL table has records in it before passing
1153 IF (p_xhrv_tbl.COUNT > 0) THEN
1154 i := p_xhrv_tbl.FIRST;
1155 LOOP
1156 insert_row (
1157 p_api_version => p_api_version,
1158 p_init_msg_list => OKC_API.G_FALSE,
1159 x_return_status => x_return_status,
1160 x_msg_count => x_msg_count,
1161 x_msg_data => x_msg_data,
1162 p_xhrv_rec => p_xhrv_tbl(i),
1163 x_xhrv_rec => x_xhrv_tbl(i));
1164 EXIT WHEN (i = p_xhrv_tbl.LAST);
1165 i := p_xhrv_tbl.NEXT(i);
1166 END LOOP;
1167 END IF;
1168 EXCEPTION
1169 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1170 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1171 (
1172 l_api_name,
1173 G_PKG_NAME,
1174 'OKC_API.G_RET_STS_ERROR',
1175 x_msg_count,
1176 x_msg_data,
1177 '_PVT'
1178 );
1179 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1180 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1181 (
1182 l_api_name,
1183 G_PKG_NAME,
1184 'OKC_API.G_RET_STS_UNEXP_ERROR',
1185 x_msg_count,
1186 x_msg_data,
1187 '_PVT'
1188 );
1189 WHEN OTHERS THEN
1190 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1191 (
1192 l_api_name,
1193 G_PKG_NAME,
1194 'OTHERS',
1195 x_msg_count,
1196 x_msg_data,
1197 '_PVT'
1198 );
1199 END insert_row;
1200
1201 ---------------------------------------------------------------------------
1202 -- PROCEDURE lock_row
1203 ---------------------------------------------------------------------------
1204 --------------------------------------
1205 -- lock_row for:OKL_EXT_FUND_RQNS_B --
1206 --------------------------------------
1207 PROCEDURE lock_row(
1208 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1209 x_return_status OUT NOCOPY VARCHAR2,
1210 x_msg_count OUT NOCOPY NUMBER,
1211 x_msg_data OUT NOCOPY VARCHAR2,
1212 p_xhr_rec IN xhr_rec_type) IS
1213
1214 E_Resource_Busy EXCEPTION;
1215 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1216 CURSOR lock_csr (p_xhr_rec IN xhr_rec_type) IS
1217 SELECT OBJECT_VERSION_NUMBER
1218 FROM OKL_EXT_FUND_RQNS_B
1219 WHERE ID = p_xhr_rec.id
1220 AND OBJECT_VERSION_NUMBER = p_xhr_rec.object_version_number
1221 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
1222
1223 CURSOR lchk_csr (p_xhr_rec IN xhr_rec_type) IS
1224 SELECT OBJECT_VERSION_NUMBER
1225 FROM OKL_EXT_FUND_RQNS_B
1226 WHERE ID = p_xhr_rec.id;
1227 l_api_version CONSTANT NUMBER := 1;
1228 l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
1229 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1230 l_object_version_number OKL_EXT_FUND_RQNS_B.OBJECT_VERSION_NUMBER%TYPE;
1231 lc_object_version_number OKL_EXT_FUND_RQNS_B.OBJECT_VERSION_NUMBER%TYPE;
1232 l_row_notfound BOOLEAN := FALSE;
1233 lc_row_notfound BOOLEAN := FALSE;
1234 BEGIN
1235 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1236 p_init_msg_list,
1237 '_PVT',
1238 x_return_status);
1239 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1240 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1241 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1242 RAISE OKC_API.G_EXCEPTION_ERROR;
1243 END IF;
1244 BEGIN
1245 OPEN lock_csr(p_xhr_rec);
1246 FETCH lock_csr INTO l_object_version_number;
1247 l_row_notfound := lock_csr%NOTFOUND;
1248 CLOSE lock_csr;
1249 EXCEPTION
1250 WHEN E_Resource_Busy THEN
1251 IF (lock_csr%ISOPEN) THEN
1252 CLOSE lock_csr;
1253 END IF;
1254 OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1255 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1256 END;
1257
1258 IF ( l_row_notfound ) THEN
1259 OPEN lchk_csr(p_xhr_rec);
1260 FETCH lchk_csr INTO lc_object_version_number;
1261 lc_row_notfound := lchk_csr%NOTFOUND;
1262 CLOSE lchk_csr;
1263 END IF;
1264 IF (lc_row_notfound) THEN
1265 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1266 RAISE OKC_API.G_EXCEPTION_ERROR;
1267 ELSIF lc_object_version_number > p_xhr_rec.object_version_number THEN
1268 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1269 RAISE OKC_API.G_EXCEPTION_ERROR;
1270 ELSIF lc_object_version_number <> p_xhr_rec.object_version_number THEN
1271 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1272 RAISE OKC_API.G_EXCEPTION_ERROR;
1273 ELSIF lc_object_version_number = -1 THEN
1274 OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1275 RAISE OKC_API.G_EXCEPTION_ERROR;
1276 END IF;
1277 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1278 EXCEPTION
1279 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1280 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1281 (
1282 l_api_name,
1283 G_PKG_NAME,
1284 'OKC_API.G_RET_STS_ERROR',
1285 x_msg_count,
1286 x_msg_data,
1287 '_PVT'
1288 );
1289 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1290 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1291 (
1292 l_api_name,
1293 G_PKG_NAME,
1294 'OKC_API.G_RET_STS_UNEXP_ERROR',
1295 x_msg_count,
1296 x_msg_data,
1297 '_PVT'
1298 );
1299 WHEN OTHERS THEN
1300 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1301 (
1302 l_api_name,
1303 G_PKG_NAME,
1304 'OTHERS',
1305 x_msg_count,
1306 x_msg_data,
1307 '_PVT'
1308 );
1309 END lock_row;
1310 ---------------------------------------
1311 -- lock_row for:OKL_EXT_FUND_RQNS_TL --
1312 ---------------------------------------
1313 PROCEDURE lock_row(
1314 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1315 x_return_status OUT NOCOPY VARCHAR2,
1316 x_msg_count OUT NOCOPY NUMBER,
1317 x_msg_data OUT NOCOPY VARCHAR2,
1318 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type) IS
1319
1320 E_Resource_Busy EXCEPTION;
1321 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1322 CURSOR lock_csr (p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type) IS
1323 SELECT *
1324 FROM OKL_EXT_FUND_RQNS_TL
1325 WHERE ID = p_okl_ext_fund_rqns_tl_rec.id
1326 FOR UPDATE NOWAIT;
1327
1328 l_api_version CONSTANT NUMBER := 1;
1329 l_api_name CONSTANT VARCHAR2(30) := 'TL_lock_row';
1330 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1331 l_lock_var lock_csr%ROWTYPE;
1332 l_row_notfound BOOLEAN := FALSE;
1333 lc_row_notfound BOOLEAN := FALSE;
1334 BEGIN
1335 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1336 p_init_msg_list,
1337 '_PVT',
1338 x_return_status);
1339 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1340 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1341 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1342 RAISE OKC_API.G_EXCEPTION_ERROR;
1343 END IF;
1344 BEGIN
1345 OPEN lock_csr(p_okl_ext_fund_rqns_tl_rec);
1346 FETCH lock_csr INTO l_lock_var;
1347 l_row_notfound := lock_csr%NOTFOUND;
1348 CLOSE lock_csr;
1349 EXCEPTION
1350 WHEN E_Resource_Busy THEN
1351 IF (lock_csr%ISOPEN) THEN
1352 CLOSE lock_csr;
1353 END IF;
1354 OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1355 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1356 END;
1357
1358 IF ( l_row_notfound ) THEN
1359 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1360 RAISE OKC_API.G_EXCEPTION_ERROR;
1361 END IF;
1362 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1363 EXCEPTION
1364 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1365 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1366 (
1367 l_api_name,
1368 G_PKG_NAME,
1369 'OKC_API.G_RET_STS_ERROR',
1370 x_msg_count,
1371 x_msg_data,
1372 '_PVT'
1373 );
1374 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1375 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1376 (
1377 l_api_name,
1378 G_PKG_NAME,
1379 'OKC_API.G_RET_STS_UNEXP_ERROR',
1380 x_msg_count,
1381 x_msg_data,
1382 '_PVT'
1383 );
1384 WHEN OTHERS THEN
1385 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1386 (
1387 l_api_name,
1388 G_PKG_NAME,
1389 'OTHERS',
1390 x_msg_count,
1391 x_msg_data,
1392 '_PVT'
1393 );
1394 END lock_row;
1395 --------------------------------------
1396 -- lock_row for:OKL_EXT_FUND_RQNS_V --
1397 --------------------------------------
1398 PROCEDURE lock_row(
1399 p_api_version IN NUMBER,
1400 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1401 x_return_status OUT NOCOPY VARCHAR2,
1402 x_msg_count OUT NOCOPY NUMBER,
1403 x_msg_data OUT NOCOPY VARCHAR2,
1404 p_xhrv_rec IN xhrv_rec_type) IS
1405
1406 l_api_version CONSTANT NUMBER := 1;
1407 l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1408 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1409 l_xhr_rec xhr_rec_type;
1410 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
1411 BEGIN
1412 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1413 G_PKG_NAME,
1414 p_init_msg_list,
1415 l_api_version,
1416 p_api_version,
1417 '_PVT',
1418 x_return_status);
1419 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1420 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1421 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1422 RAISE OKC_API.G_EXCEPTION_ERROR;
1423 END IF;
1424 --------------------------------------
1425 -- Move VIEW record to "Child" records
1426 --------------------------------------
1427 migrate(p_xhrv_rec, l_xhr_rec);
1428 migrate(p_xhrv_rec, l_okl_ext_fund_rqns_tl_rec);
1429 --------------------------------------------
1430 -- Call the LOCK_ROW for each child record
1431 --------------------------------------------
1432 lock_row(
1433 p_init_msg_list,
1434 x_return_status,
1435 x_msg_count,
1436 x_msg_data,
1437 l_xhr_rec
1438 );
1439 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1440 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1441 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1442 RAISE OKC_API.G_EXCEPTION_ERROR;
1443 END IF;
1444 lock_row(
1445 p_init_msg_list,
1446 x_return_status,
1447 x_msg_count,
1448 x_msg_data,
1449 l_okl_ext_fund_rqns_tl_rec
1450 );
1451 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1452 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1453 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1454 RAISE OKC_API.G_EXCEPTION_ERROR;
1455 END IF;
1456 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1457 EXCEPTION
1458 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1459 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1460 (
1461 l_api_name,
1462 G_PKG_NAME,
1463 'OKC_API.G_RET_STS_ERROR',
1464 x_msg_count,
1465 x_msg_data,
1466 '_PVT'
1467 );
1468 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1469 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1470 (
1471 l_api_name,
1472 G_PKG_NAME,
1473 'OKC_API.G_RET_STS_UNEXP_ERROR',
1474 x_msg_count,
1475 x_msg_data,
1476 '_PVT'
1477 );
1478 WHEN OTHERS THEN
1479 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1480 (
1481 l_api_name,
1482 G_PKG_NAME,
1483 'OTHERS',
1484 x_msg_count,
1485 x_msg_data,
1486 '_PVT'
1487 );
1488 END lock_row;
1489 --------------------------------------
1490 -- PL/SQL TBL lock_row for:XHRV_TBL --
1491 --------------------------------------
1492 PROCEDURE lock_row(
1493 p_api_version IN NUMBER,
1494 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1495 x_return_status OUT NOCOPY VARCHAR2,
1496 x_msg_count OUT NOCOPY NUMBER,
1497 x_msg_data OUT NOCOPY VARCHAR2,
1498 p_xhrv_tbl IN xhrv_tbl_type) IS
1499
1500 l_api_version CONSTANT NUMBER := 1;
1501 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1502 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1503 i NUMBER := 0;
1504 BEGIN
1505 OKC_API.init_msg_list(p_init_msg_list);
1506 -- Make sure PL/SQL table has records in it before passing
1507 IF (p_xhrv_tbl.COUNT > 0) THEN
1508 i := p_xhrv_tbl.FIRST;
1509 LOOP
1510 lock_row (
1511 p_api_version => p_api_version,
1512 p_init_msg_list => OKC_API.G_FALSE,
1513 x_return_status => x_return_status,
1514 x_msg_count => x_msg_count,
1515 x_msg_data => x_msg_data,
1516 p_xhrv_rec => p_xhrv_tbl(i));
1517 EXIT WHEN (i = p_xhrv_tbl.LAST);
1518 i := p_xhrv_tbl.NEXT(i);
1519 END LOOP;
1520 END IF;
1521 EXCEPTION
1522 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1523 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1524 (
1525 l_api_name,
1526 G_PKG_NAME,
1527 'OKC_API.G_RET_STS_ERROR',
1528 x_msg_count,
1529 x_msg_data,
1530 '_PVT'
1531 );
1532 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1533 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1534 (
1535 l_api_name,
1536 G_PKG_NAME,
1537 'OKC_API.G_RET_STS_UNEXP_ERROR',
1538 x_msg_count,
1539 x_msg_data,
1540 '_PVT'
1541 );
1542 WHEN OTHERS THEN
1543 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1544 (
1545 l_api_name,
1546 G_PKG_NAME,
1547 'OTHERS',
1548 x_msg_count,
1549 x_msg_data,
1550 '_PVT'
1551 );
1552 END lock_row;
1553
1554 ---------------------------------------------------------------------------
1555 -- PROCEDURE update_row
1556 ---------------------------------------------------------------------------
1557 ----------------------------------------
1558 -- update_row for:OKL_EXT_FUND_RQNS_B --
1559 ----------------------------------------
1560 PROCEDURE update_row(
1561 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1562 x_return_status OUT NOCOPY VARCHAR2,
1563 x_msg_count OUT NOCOPY NUMBER,
1564 x_msg_data OUT NOCOPY VARCHAR2,
1565 p_xhr_rec IN xhr_rec_type,
1566 x_xhr_rec OUT NOCOPY xhr_rec_type) IS
1567
1568 l_api_version CONSTANT NUMBER := 1;
1569 l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
1570 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1571 l_xhr_rec xhr_rec_type := p_xhr_rec;
1572 l_def_xhr_rec xhr_rec_type;
1573 l_row_notfound BOOLEAN := TRUE;
1574 ----------------------------------
1575 -- FUNCTION populate_new_record --
1576 ----------------------------------
1577 FUNCTION populate_new_record (
1578 p_xhr_rec IN xhr_rec_type,
1579 x_xhr_rec OUT NOCOPY xhr_rec_type
1580 ) RETURN VARCHAR2 IS
1581 l_xhr_rec xhr_rec_type;
1582 l_row_notfound BOOLEAN := TRUE;
1583 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1584 BEGIN
1585 x_xhr_rec := p_xhr_rec;
1586 -- Get current database values
1587 l_xhr_rec := get_rec(p_xhr_rec, l_row_notfound);
1588 IF (l_row_notfound) THEN
1589 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1590 END IF;
1591 IF (x_xhr_rec.id = OKC_API.G_MISS_NUM)
1592 THEN
1593 x_xhr_rec.id := l_xhr_rec.id;
1594 END IF;
1595 IF (x_xhr_rec.irq_id = OKC_API.G_MISS_NUM)
1596 THEN
1597 x_xhr_rec.irq_id := l_xhr_rec.irq_id;
1598 END IF;
1599 IF (x_xhr_rec.object_version_number = OKC_API.G_MISS_NUM)
1600 THEN
1601 x_xhr_rec.object_version_number := l_xhr_rec.object_version_number;
1602 END IF;
1603 IF (x_xhr_rec.created_by = OKC_API.G_MISS_NUM)
1604 THEN
1605 x_xhr_rec.created_by := l_xhr_rec.created_by;
1606 END IF;
1607 IF (x_xhr_rec.creation_date = OKC_API.G_MISS_DATE)
1608 THEN
1609 x_xhr_rec.creation_date := l_xhr_rec.creation_date;
1610 END IF;
1611 IF (x_xhr_rec.last_updated_by = OKC_API.G_MISS_NUM)
1612 THEN
1613 x_xhr_rec.last_updated_by := l_xhr_rec.last_updated_by;
1614 END IF;
1615 IF (x_xhr_rec.last_update_date = OKC_API.G_MISS_DATE)
1616 THEN
1617 x_xhr_rec.last_update_date := l_xhr_rec.last_update_date;
1618 END IF;
1619 IF (x_xhr_rec.org_id = OKC_API.G_MISS_NUM)
1620 THEN
1621 x_xhr_rec.org_id := l_xhr_rec.org_id;
1622 END IF;
1623 IF (x_xhr_rec.request_id = OKC_API.G_MISS_NUM)
1624 THEN
1625 x_xhr_rec.request_id := l_xhr_rec.request_id;
1626 END IF;
1627 IF (x_xhr_rec.program_application_id = OKC_API.G_MISS_NUM)
1628 THEN
1629 x_xhr_rec.program_application_id := l_xhr_rec.program_application_id;
1630 END IF;
1631 IF (x_xhr_rec.program_id = OKC_API.G_MISS_NUM)
1632 THEN
1633 x_xhr_rec.program_id := l_xhr_rec.program_id;
1634 END IF;
1635 IF (x_xhr_rec.program_update_date = OKC_API.G_MISS_DATE)
1636 THEN
1637 x_xhr_rec.program_update_date := l_xhr_rec.program_update_date;
1638 END IF;
1639 IF (x_xhr_rec.attribute_category = OKC_API.G_MISS_CHAR)
1640 THEN
1641 x_xhr_rec.attribute_category := l_xhr_rec.attribute_category;
1642 END IF;
1643 IF (x_xhr_rec.attribute1 = OKC_API.G_MISS_CHAR)
1644 THEN
1645 x_xhr_rec.attribute1 := l_xhr_rec.attribute1;
1646 END IF;
1647 IF (x_xhr_rec.attribute2 = OKC_API.G_MISS_CHAR)
1648 THEN
1649 x_xhr_rec.attribute2 := l_xhr_rec.attribute2;
1650 END IF;
1651 IF (x_xhr_rec.attribute3 = OKC_API.G_MISS_CHAR)
1652 THEN
1653 x_xhr_rec.attribute3 := l_xhr_rec.attribute3;
1654 END IF;
1655 IF (x_xhr_rec.attribute4 = OKC_API.G_MISS_CHAR)
1656 THEN
1657 x_xhr_rec.attribute4 := l_xhr_rec.attribute4;
1658 END IF;
1659 IF (x_xhr_rec.attribute5 = OKC_API.G_MISS_CHAR)
1660 THEN
1661 x_xhr_rec.attribute5 := l_xhr_rec.attribute5;
1662 END IF;
1663 IF (x_xhr_rec.attribute6 = OKC_API.G_MISS_CHAR)
1664 THEN
1665 x_xhr_rec.attribute6 := l_xhr_rec.attribute6;
1666 END IF;
1667 IF (x_xhr_rec.attribute7 = OKC_API.G_MISS_CHAR)
1668 THEN
1669 x_xhr_rec.attribute7 := l_xhr_rec.attribute7;
1670 END IF;
1671 IF (x_xhr_rec.attribute8 = OKC_API.G_MISS_CHAR)
1672 THEN
1673 x_xhr_rec.attribute8 := l_xhr_rec.attribute8;
1674 END IF;
1675 IF (x_xhr_rec.attribute9 = OKC_API.G_MISS_CHAR)
1676 THEN
1677 x_xhr_rec.attribute9 := l_xhr_rec.attribute9;
1678 END IF;
1679 IF (x_xhr_rec.attribute10 = OKC_API.G_MISS_CHAR)
1680 THEN
1681 x_xhr_rec.attribute10 := l_xhr_rec.attribute10;
1682 END IF;
1683 IF (x_xhr_rec.attribute11 = OKC_API.G_MISS_CHAR)
1684 THEN
1685 x_xhr_rec.attribute11 := l_xhr_rec.attribute11;
1686 END IF;
1687 IF (x_xhr_rec.attribute12 = OKC_API.G_MISS_CHAR)
1688 THEN
1689 x_xhr_rec.attribute12 := l_xhr_rec.attribute12;
1690 END IF;
1691 IF (x_xhr_rec.attribute13 = OKC_API.G_MISS_CHAR)
1692 THEN
1693 x_xhr_rec.attribute13 := l_xhr_rec.attribute13;
1694 END IF;
1695 IF (x_xhr_rec.attribute14 = OKC_API.G_MISS_CHAR)
1696 THEN
1697 x_xhr_rec.attribute14 := l_xhr_rec.attribute14;
1698 END IF;
1699 IF (x_xhr_rec.attribute15 = OKC_API.G_MISS_CHAR)
1700 THEN
1701 x_xhr_rec.attribute15 := l_xhr_rec.attribute15;
1702 END IF;
1703 IF (x_xhr_rec.last_update_login = OKC_API.G_MISS_NUM)
1704 THEN
1705 x_xhr_rec.last_update_login := l_xhr_rec.last_update_login;
1706 END IF;
1707 RETURN(l_return_status);
1708 END populate_new_record;
1709 --------------------------------------------
1710 -- Set_Attributes for:OKL_EXT_FUND_RQNS_B --
1711 --------------------------------------------
1712 FUNCTION Set_Attributes (
1713 p_xhr_rec IN xhr_rec_type,
1714 x_xhr_rec OUT NOCOPY xhr_rec_type
1715 ) RETURN VARCHAR2 IS
1716 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1717 BEGIN
1718 x_xhr_rec := p_xhr_rec;
1719 RETURN(l_return_status);
1720 END Set_Attributes;
1721 BEGIN
1722 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1723 p_init_msg_list,
1724 '_PVT',
1725 x_return_status);
1726 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1727 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1728 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1729 RAISE OKC_API.G_EXCEPTION_ERROR;
1730 END IF;
1731 --- Setting item attributes
1732 l_return_status := Set_Attributes(
1733 p_xhr_rec, -- IN
1734 l_xhr_rec); -- OUT
1735 --- If any errors happen abort API
1736 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1737 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1738 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1739 RAISE OKC_API.G_EXCEPTION_ERROR;
1740 END IF;
1741 l_return_status := populate_new_record(l_xhr_rec, l_def_xhr_rec);
1742 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1743 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1744 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1745 RAISE OKC_API.G_EXCEPTION_ERROR;
1746 END IF;
1747 UPDATE OKL_EXT_FUND_RQNS_B
1748 SET IRQ_ID = l_def_xhr_rec.irq_id,
1749 OBJECT_VERSION_NUMBER = l_def_xhr_rec.object_version_number,
1750 CREATED_BY = l_def_xhr_rec.created_by,
1751 CREATION_DATE = l_def_xhr_rec.creation_date,
1752 LAST_UPDATED_BY = l_def_xhr_rec.last_updated_by,
1753 LAST_UPDATE_DATE = l_def_xhr_rec.last_update_date,
1754 ORG_ID = l_def_xhr_rec.org_id,
1755 REQUEST_ID = l_def_xhr_rec.request_id,
1756 PROGRAM_APPLICATION_ID = l_def_xhr_rec.program_application_id,
1757 PROGRAM_ID = l_def_xhr_rec.program_id,
1758 PROGRAM_UPDATE_DATE = l_def_xhr_rec.program_update_date,
1759 ATTRIBUTE_CATEGORY = l_def_xhr_rec.attribute_category,
1760 ATTRIBUTE1 = l_def_xhr_rec.attribute1,
1761 ATTRIBUTE2 = l_def_xhr_rec.attribute2,
1762 ATTRIBUTE3 = l_def_xhr_rec.attribute3,
1763 ATTRIBUTE4 = l_def_xhr_rec.attribute4,
1764 ATTRIBUTE5 = l_def_xhr_rec.attribute5,
1765 ATTRIBUTE6 = l_def_xhr_rec.attribute6,
1766 ATTRIBUTE7 = l_def_xhr_rec.attribute7,
1767 ATTRIBUTE8 = l_def_xhr_rec.attribute8,
1768 ATTRIBUTE9 = l_def_xhr_rec.attribute9,
1769 ATTRIBUTE10 = l_def_xhr_rec.attribute10,
1770 ATTRIBUTE11 = l_def_xhr_rec.attribute11,
1771 ATTRIBUTE12 = l_def_xhr_rec.attribute12,
1772 ATTRIBUTE13 = l_def_xhr_rec.attribute13,
1773 ATTRIBUTE14 = l_def_xhr_rec.attribute14,
1774 ATTRIBUTE15 = l_def_xhr_rec.attribute15,
1775 LAST_UPDATE_LOGIN = l_def_xhr_rec.last_update_login
1776 WHERE ID = l_def_xhr_rec.id;
1777
1778 x_xhr_rec := l_def_xhr_rec;
1779 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1780 EXCEPTION
1781 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1782 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1783 (
1784 l_api_name,
1785 G_PKG_NAME,
1786 'OKC_API.G_RET_STS_ERROR',
1787 x_msg_count,
1788 x_msg_data,
1789 '_PVT'
1790 );
1791 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1792 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1793 (
1794 l_api_name,
1795 G_PKG_NAME,
1796 'OKC_API.G_RET_STS_UNEXP_ERROR',
1797 x_msg_count,
1798 x_msg_data,
1799 '_PVT'
1800 );
1801 WHEN OTHERS THEN
1802 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1803 (
1804 l_api_name,
1805 G_PKG_NAME,
1806 'OTHERS',
1807 x_msg_count,
1808 x_msg_data,
1809 '_PVT'
1810 );
1811 END update_row;
1812 -----------------------------------------
1813 -- update_row for:OKL_EXT_FUND_RQNS_TL --
1814 -----------------------------------------
1815 PROCEDURE update_row(
1816 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1817 x_return_status OUT NOCOPY VARCHAR2,
1818 x_msg_count OUT NOCOPY NUMBER,
1819 x_msg_data OUT NOCOPY VARCHAR2,
1820 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type,
1821 x_okl_ext_fund_rqns_tl_rec OUT NOCOPY okl_ext_fund_rqns_tl_rec_type) IS
1822
1823 l_api_version CONSTANT NUMBER := 1;
1824 l_api_name CONSTANT VARCHAR2(30) := 'TL_update_row';
1825 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1826 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type := p_okl_ext_fund_rqns_tl_rec;
1827 ldefoklextfundrqnstlrec okl_ext_fund_rqns_tl_rec_type;
1828 l_row_notfound BOOLEAN := TRUE;
1829 ----------------------------------
1830 -- FUNCTION populate_new_record --
1831 ----------------------------------
1832 FUNCTION populate_new_record (
1833 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type,
1834 x_okl_ext_fund_rqns_tl_rec OUT NOCOPY okl_ext_fund_rqns_tl_rec_type
1835 ) RETURN VARCHAR2 IS
1836 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
1837 l_row_notfound BOOLEAN := TRUE;
1838 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1839 BEGIN
1840 x_okl_ext_fund_rqns_tl_rec := p_okl_ext_fund_rqns_tl_rec;
1841 -- Get current database values
1842 l_okl_ext_fund_rqns_tl_rec := get_rec(p_okl_ext_fund_rqns_tl_rec, l_row_notfound);
1843 IF (l_row_notfound) THEN
1844 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1845 END IF;
1846 IF (x_okl_ext_fund_rqns_tl_rec.id = OKC_API.G_MISS_NUM)
1847 THEN
1848 x_okl_ext_fund_rqns_tl_rec.id := l_okl_ext_fund_rqns_tl_rec.id;
1849 END IF;
1850 IF (x_okl_ext_fund_rqns_tl_rec.language = OKC_API.G_MISS_CHAR)
1851 THEN
1852 x_okl_ext_fund_rqns_tl_rec.language := l_okl_ext_fund_rqns_tl_rec.language;
1853 END IF;
1854 IF (x_okl_ext_fund_rqns_tl_rec.source_lang = OKC_API.G_MISS_CHAR)
1855 THEN
1856 x_okl_ext_fund_rqns_tl_rec.source_lang := l_okl_ext_fund_rqns_tl_rec.source_lang;
1857 END IF;
1858 IF (x_okl_ext_fund_rqns_tl_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
1859 THEN
1860 x_okl_ext_fund_rqns_tl_rec.sfwt_flag := l_okl_ext_fund_rqns_tl_rec.sfwt_flag;
1861 END IF;
1862 IF (x_okl_ext_fund_rqns_tl_rec.created_by = OKC_API.G_MISS_NUM)
1863 THEN
1864 x_okl_ext_fund_rqns_tl_rec.created_by := l_okl_ext_fund_rqns_tl_rec.created_by;
1865 END IF;
1866 IF (x_okl_ext_fund_rqns_tl_rec.creation_date = OKC_API.G_MISS_DATE)
1867 THEN
1868 x_okl_ext_fund_rqns_tl_rec.creation_date := l_okl_ext_fund_rqns_tl_rec.creation_date;
1869 END IF;
1870 IF (x_okl_ext_fund_rqns_tl_rec.last_updated_by = OKC_API.G_MISS_NUM)
1871 THEN
1872 x_okl_ext_fund_rqns_tl_rec.last_updated_by := l_okl_ext_fund_rqns_tl_rec.last_updated_by;
1873 END IF;
1874 IF (x_okl_ext_fund_rqns_tl_rec.last_update_date = OKC_API.G_MISS_DATE)
1875 THEN
1876 x_okl_ext_fund_rqns_tl_rec.last_update_date := l_okl_ext_fund_rqns_tl_rec.last_update_date;
1877 END IF;
1878 IF (x_okl_ext_fund_rqns_tl_rec.last_update_login = OKC_API.G_MISS_NUM)
1879 THEN
1880 x_okl_ext_fund_rqns_tl_rec.last_update_login := l_okl_ext_fund_rqns_tl_rec.last_update_login;
1881 END IF;
1882 RETURN(l_return_status);
1883 END populate_new_record;
1884 ---------------------------------------------
1885 -- Set_Attributes for:OKL_EXT_FUND_RQNS_TL --
1886 ---------------------------------------------
1887 FUNCTION Set_Attributes (
1888 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type,
1889 x_okl_ext_fund_rqns_tl_rec OUT NOCOPY okl_ext_fund_rqns_tl_rec_type
1890 ) RETURN VARCHAR2 IS
1891 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1892 BEGIN
1893 x_okl_ext_fund_rqns_tl_rec := p_okl_ext_fund_rqns_tl_rec;
1894 x_okl_ext_fund_rqns_tl_rec.LANGUAGE := USERENV('LANG');
1895 x_okl_ext_fund_rqns_tl_rec.SOURCE_LANG := USERENV('LANG');
1896 RETURN(l_return_status);
1897 END Set_Attributes;
1898 BEGIN
1899 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1900 p_init_msg_list,
1901 '_PVT',
1902 x_return_status);
1903 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1904 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1905 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1906 RAISE OKC_API.G_EXCEPTION_ERROR;
1907 END IF;
1908 --- Setting item attributes
1909 l_return_status := Set_Attributes(
1910 p_okl_ext_fund_rqns_tl_rec, -- IN
1911 l_okl_ext_fund_rqns_tl_rec); -- OUT
1912 --- If any errors happen abort API
1913 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1914 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1915 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1916 RAISE OKC_API.G_EXCEPTION_ERROR;
1917 END IF;
1918 l_return_status := populate_new_record(l_okl_ext_fund_rqns_tl_rec, ldefoklextfundrqnstlrec);
1919 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1920 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1921 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1922 RAISE OKC_API.G_EXCEPTION_ERROR;
1923 END IF;
1924 UPDATE OKL_EXT_FUND_RQNS_TL
1925 SET SOURCE_LANG = ldefoklextfundrqnstlrec.source_lang,
1926 CREATED_BY = ldefoklextfundrqnstlrec.created_by,
1927 CREATION_DATE = ldefoklextfundrqnstlrec.creation_date,
1928 LAST_UPDATED_BY = ldefoklextfundrqnstlrec.last_updated_by,
1929 LAST_UPDATE_DATE = ldefoklextfundrqnstlrec.last_update_date,
1930 LAST_UPDATE_LOGIN = ldefoklextfundrqnstlrec.last_update_login
1931 WHERE ID = ldefoklextfundrqnstlrec.id
1932 AND USERENV('LANG') in (SOURCE_LANG, LANGUAGE);
1933
1934 UPDATE OKL_EXT_FUND_RQNS_TL
1935 SET SFWT_FLAG = 'Y'
1936 WHERE ID = ldefoklextfundrqnstlrec.id
1937 AND SOURCE_LANG <> USERENV('LANG');
1938
1939 x_okl_ext_fund_rqns_tl_rec := ldefoklextfundrqnstlrec;
1940 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1941 EXCEPTION
1942 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1943 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1944 (
1945 l_api_name,
1946 G_PKG_NAME,
1947 'OKC_API.G_RET_STS_ERROR',
1948 x_msg_count,
1949 x_msg_data,
1950 '_PVT'
1951 );
1952 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1953 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1954 (
1955 l_api_name,
1956 G_PKG_NAME,
1957 'OKC_API.G_RET_STS_UNEXP_ERROR',
1958 x_msg_count,
1959 x_msg_data,
1960 '_PVT'
1961 );
1962 WHEN OTHERS THEN
1963 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1964 (
1965 l_api_name,
1966 G_PKG_NAME,
1967 'OTHERS',
1968 x_msg_count,
1969 x_msg_data,
1970 '_PVT'
1971 );
1972 END update_row;
1973 ----------------------------------------
1974 -- update_row for:OKL_EXT_FUND_RQNS_V --
1975 ----------------------------------------
1976 PROCEDURE update_row(
1977 p_api_version IN NUMBER,
1978 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1979 x_return_status OUT NOCOPY VARCHAR2,
1980 x_msg_count OUT NOCOPY NUMBER,
1981 x_msg_data OUT NOCOPY VARCHAR2,
1982 p_xhrv_rec IN xhrv_rec_type,
1983 x_xhrv_rec OUT NOCOPY xhrv_rec_type) IS
1984
1985 l_api_version CONSTANT NUMBER := 1;
1986 l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
1987 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1988 l_xhrv_rec xhrv_rec_type := p_xhrv_rec;
1989 l_def_xhrv_rec xhrv_rec_type;
1990 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
1991 lx_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
1992 l_xhr_rec xhr_rec_type;
1993 lx_xhr_rec xhr_rec_type;
1994 -------------------------------
1995 -- FUNCTION fill_who_columns --
1996 -------------------------------
1997 FUNCTION fill_who_columns (
1998 p_xhrv_rec IN xhrv_rec_type
1999 ) RETURN xhrv_rec_type IS
2000 l_xhrv_rec xhrv_rec_type := p_xhrv_rec;
2001 BEGIN
2002 l_xhrv_rec.LAST_UPDATE_DATE := SYSDATE;
2003 l_xhrv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2004 l_xhrv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2005 RETURN(l_xhrv_rec);
2006 END fill_who_columns;
2007 ----------------------------------
2008 -- FUNCTION populate_new_record --
2009 ----------------------------------
2010 FUNCTION populate_new_record (
2011 p_xhrv_rec IN xhrv_rec_type,
2012 x_xhrv_rec OUT NOCOPY xhrv_rec_type
2013 ) RETURN VARCHAR2 IS
2014 l_xhrv_rec xhrv_rec_type;
2015 l_row_notfound BOOLEAN := TRUE;
2016 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2017 BEGIN
2018 x_xhrv_rec := p_xhrv_rec;
2019 -- Get current database values
2020 l_xhrv_rec := get_rec(p_xhrv_rec, l_row_notfound);
2021 IF (l_row_notfound) THEN
2022 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2023 END IF;
2024 IF (x_xhrv_rec.id = OKC_API.G_MISS_NUM)
2025 THEN
2026 x_xhrv_rec.id := l_xhrv_rec.id;
2027 END IF;
2028 IF (x_xhrv_rec.object_version_number = OKC_API.G_MISS_NUM)
2029 THEN
2030 x_xhrv_rec.object_version_number := l_xhrv_rec.object_version_number;
2031 END IF;
2032 IF (x_xhrv_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2033 THEN
2034 x_xhrv_rec.sfwt_flag := l_xhrv_rec.sfwt_flag;
2035 END IF;
2036 IF (x_xhrv_rec.irq_id = OKC_API.G_MISS_NUM)
2037 THEN
2038 x_xhrv_rec.irq_id := l_xhrv_rec.irq_id;
2039 END IF;
2040 IF (x_xhrv_rec.attribute_category = OKC_API.G_MISS_CHAR)
2041 THEN
2042 x_xhrv_rec.attribute_category := l_xhrv_rec.attribute_category;
2043 END IF;
2044 IF (x_xhrv_rec.attribute1 = OKC_API.G_MISS_CHAR)
2045 THEN
2046 x_xhrv_rec.attribute1 := l_xhrv_rec.attribute1;
2047 END IF;
2048 IF (x_xhrv_rec.attribute2 = OKC_API.G_MISS_CHAR)
2049 THEN
2050 x_xhrv_rec.attribute2 := l_xhrv_rec.attribute2;
2051 END IF;
2052 IF (x_xhrv_rec.attribute3 = OKC_API.G_MISS_CHAR)
2053 THEN
2054 x_xhrv_rec.attribute3 := l_xhrv_rec.attribute3;
2055 END IF;
2056 IF (x_xhrv_rec.attribute4 = OKC_API.G_MISS_CHAR)
2057 THEN
2058 x_xhrv_rec.attribute4 := l_xhrv_rec.attribute4;
2059 END IF;
2060 IF (x_xhrv_rec.attribute5 = OKC_API.G_MISS_CHAR)
2061 THEN
2062 x_xhrv_rec.attribute5 := l_xhrv_rec.attribute5;
2063 END IF;
2064 IF (x_xhrv_rec.attribute6 = OKC_API.G_MISS_CHAR)
2065 THEN
2066 x_xhrv_rec.attribute6 := l_xhrv_rec.attribute6;
2067 END IF;
2068 IF (x_xhrv_rec.attribute7 = OKC_API.G_MISS_CHAR)
2069 THEN
2070 x_xhrv_rec.attribute7 := l_xhrv_rec.attribute7;
2071 END IF;
2072 IF (x_xhrv_rec.attribute8 = OKC_API.G_MISS_CHAR)
2073 THEN
2074 x_xhrv_rec.attribute8 := l_xhrv_rec.attribute8;
2075 END IF;
2076 IF (x_xhrv_rec.attribute9 = OKC_API.G_MISS_CHAR)
2077 THEN
2078 x_xhrv_rec.attribute9 := l_xhrv_rec.attribute9;
2079 END IF;
2080 IF (x_xhrv_rec.attribute10 = OKC_API.G_MISS_CHAR)
2081 THEN
2082 x_xhrv_rec.attribute10 := l_xhrv_rec.attribute10;
2083 END IF;
2084 IF (x_xhrv_rec.attribute11 = OKC_API.G_MISS_CHAR)
2085 THEN
2086 x_xhrv_rec.attribute11 := l_xhrv_rec.attribute11;
2087 END IF;
2088 IF (x_xhrv_rec.attribute12 = OKC_API.G_MISS_CHAR)
2089 THEN
2090 x_xhrv_rec.attribute12 := l_xhrv_rec.attribute12;
2091 END IF;
2092 IF (x_xhrv_rec.attribute13 = OKC_API.G_MISS_CHAR)
2093 THEN
2094 x_xhrv_rec.attribute13 := l_xhrv_rec.attribute13;
2095 END IF;
2096 IF (x_xhrv_rec.attribute14 = OKC_API.G_MISS_CHAR)
2097 THEN
2098 x_xhrv_rec.attribute14 := l_xhrv_rec.attribute14;
2099 END IF;
2100 IF (x_xhrv_rec.attribute15 = OKC_API.G_MISS_CHAR)
2101 THEN
2102 x_xhrv_rec.attribute15 := l_xhrv_rec.attribute15;
2103 END IF;
2104 IF (x_xhrv_rec.created_by = OKC_API.G_MISS_NUM)
2105 THEN
2106 x_xhrv_rec.created_by := l_xhrv_rec.created_by;
2107 END IF;
2108 IF (x_xhrv_rec.creation_date = OKC_API.G_MISS_DATE)
2109 THEN
2110 x_xhrv_rec.creation_date := l_xhrv_rec.creation_date;
2111 END IF;
2112 IF (x_xhrv_rec.last_updated_by = OKC_API.G_MISS_NUM)
2113 THEN
2114 x_xhrv_rec.last_updated_by := l_xhrv_rec.last_updated_by;
2115 END IF;
2116 IF (x_xhrv_rec.last_update_date = OKC_API.G_MISS_DATE)
2117 THEN
2118 x_xhrv_rec.last_update_date := l_xhrv_rec.last_update_date;
2119 END IF;
2120 IF (x_xhrv_rec.org_id = OKC_API.G_MISS_NUM)
2121 THEN
2122 x_xhrv_rec.org_id := l_xhrv_rec.org_id;
2123 END IF;
2124 IF (x_xhrv_rec.request_id = OKC_API.G_MISS_NUM)
2125 THEN
2126 x_xhrv_rec.request_id := l_xhrv_rec.request_id;
2127 END IF;
2128 IF (x_xhrv_rec.program_application_id = OKC_API.G_MISS_NUM)
2129 THEN
2130 x_xhrv_rec.program_application_id := l_xhrv_rec.program_application_id;
2131 END IF;
2132 IF (x_xhrv_rec.program_id = OKC_API.G_MISS_NUM)
2133 THEN
2134 x_xhrv_rec.program_id := l_xhrv_rec.program_id;
2135 END IF;
2136 IF (x_xhrv_rec.program_update_date = OKC_API.G_MISS_DATE)
2137 THEN
2138 x_xhrv_rec.program_update_date := l_xhrv_rec.program_update_date;
2139 END IF;
2140 IF (x_xhrv_rec.last_update_login = OKC_API.G_MISS_NUM)
2141 THEN
2142 x_xhrv_rec.last_update_login := l_xhrv_rec.last_update_login;
2143 END IF;
2144 RETURN(l_return_status);
2145 END populate_new_record;
2146 --------------------------------------------
2147 -- Set_Attributes for:OKL_EXT_FUND_RQNS_V --
2148 --------------------------------------------
2149 FUNCTION Set_Attributes (
2150 p_xhrv_rec IN xhrv_rec_type,
2151 x_xhrv_rec OUT NOCOPY xhrv_rec_type
2152 ) RETURN VARCHAR2 IS
2153 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2154 BEGIN
2155 x_xhrv_rec := p_xhrv_rec;
2156 x_xhrv_rec.OBJECT_VERSION_NUMBER := NVL(x_xhrv_rec.OBJECT_VERSION_NUMBER, 0) + 1;
2157 RETURN(l_return_status);
2158 END Set_Attributes;
2159 BEGIN
2160 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2161 G_PKG_NAME,
2162 p_init_msg_list,
2163 l_api_version,
2164 p_api_version,
2165 '_PVT',
2166 x_return_status);
2167 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2168 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2169 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2170 RAISE OKC_API.G_EXCEPTION_ERROR;
2171 END IF;
2172 --- Setting item attributes
2173 l_return_status := Set_Attributes(
2174 p_xhrv_rec, -- IN
2175 l_xhrv_rec); -- OUT
2176 --- If any errors happen abort API
2177 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2178 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2179 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2180 RAISE OKC_API.G_EXCEPTION_ERROR;
2181 END IF;
2182 l_return_status := populate_new_record(l_xhrv_rec, l_def_xhrv_rec);
2183 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2184 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2185 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2186 RAISE OKC_API.G_EXCEPTION_ERROR;
2187 END IF;
2188 l_def_xhrv_rec := fill_who_columns(l_def_xhrv_rec);
2189 --- Validate all non-missing attributes (Item Level Validation)
2190 l_return_status := Validate_Attributes(l_def_xhrv_rec);
2191 --- If any errors happen abort API
2192 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2193 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2194 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2195 RAISE OKC_API.G_EXCEPTION_ERROR;
2196 END IF;
2197 l_return_status := Validate_Record(l_def_xhrv_rec);
2198 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2199 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2200 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2201 RAISE OKC_API.G_EXCEPTION_ERROR;
2202 END IF;
2203
2204 --------------------------------------
2205 -- Move VIEW record to "Child" records
2206 --------------------------------------
2207 migrate(l_def_xhrv_rec, l_okl_ext_fund_rqns_tl_rec);
2208 migrate(l_def_xhrv_rec, l_xhr_rec);
2209 --------------------------------------------
2210 -- Call the UPDATE_ROW for each child record
2211 --------------------------------------------
2212 update_row(
2213 p_init_msg_list,
2214 x_return_status,
2215 x_msg_count,
2216 x_msg_data,
2217 l_okl_ext_fund_rqns_tl_rec,
2218 lx_okl_ext_fund_rqns_tl_rec
2219 );
2220 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2221 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2222 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
2223 RAISE OKC_API.G_EXCEPTION_ERROR;
2224 END IF;
2225 migrate(lx_okl_ext_fund_rqns_tl_rec, l_def_xhrv_rec);
2226 update_row(
2227 p_init_msg_list,
2228 x_return_status,
2229 x_msg_count,
2230 x_msg_data,
2231 l_xhr_rec,
2232 lx_xhr_rec
2233 );
2234 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2235 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2236 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
2237 RAISE OKC_API.G_EXCEPTION_ERROR;
2238 END IF;
2239 migrate(lx_xhr_rec, l_def_xhrv_rec);
2240 x_xhrv_rec := l_def_xhrv_rec;
2241 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2242 EXCEPTION
2243 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2244 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2245 (
2246 l_api_name,
2247 G_PKG_NAME,
2248 'OKC_API.G_RET_STS_ERROR',
2249 x_msg_count,
2250 x_msg_data,
2251 '_PVT'
2252 );
2253 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2254 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2255 (
2256 l_api_name,
2257 G_PKG_NAME,
2258 'OKC_API.G_RET_STS_UNEXP_ERROR',
2259 x_msg_count,
2260 x_msg_data,
2261 '_PVT'
2262 );
2263 WHEN OTHERS THEN
2264 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2265 (
2266 l_api_name,
2267 G_PKG_NAME,
2268 'OTHERS',
2269 x_msg_count,
2270 x_msg_data,
2271 '_PVT'
2272 );
2273 END update_row;
2274 ----------------------------------------
2275 -- PL/SQL TBL update_row for:XHRV_TBL --
2276 ----------------------------------------
2277 PROCEDURE update_row(
2278 p_api_version IN NUMBER,
2279 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2280 x_return_status OUT NOCOPY VARCHAR2,
2281 x_msg_count OUT NOCOPY NUMBER,
2282 x_msg_data OUT NOCOPY VARCHAR2,
2283 p_xhrv_tbl IN xhrv_tbl_type,
2284 x_xhrv_tbl OUT NOCOPY xhrv_tbl_type) IS
2285
2286 l_api_version CONSTANT NUMBER := 1;
2287 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2288 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2289 i NUMBER := 0;
2290 BEGIN
2291 OKC_API.init_msg_list(p_init_msg_list);
2292 -- Make sure PL/SQL table has records in it before passing
2293 IF (p_xhrv_tbl.COUNT > 0) THEN
2294 i := p_xhrv_tbl.FIRST;
2295 LOOP
2296 update_row (
2297 p_api_version => p_api_version,
2298 p_init_msg_list => OKC_API.G_FALSE,
2299 x_return_status => x_return_status,
2300 x_msg_count => x_msg_count,
2301 x_msg_data => x_msg_data,
2302 p_xhrv_rec => p_xhrv_tbl(i),
2303 x_xhrv_rec => x_xhrv_tbl(i));
2304 EXIT WHEN (i = p_xhrv_tbl.LAST);
2305 i := p_xhrv_tbl.NEXT(i);
2306 END LOOP;
2307 END IF;
2308 EXCEPTION
2309 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2310 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2311 (
2312 l_api_name,
2313 G_PKG_NAME,
2314 'OKC_API.G_RET_STS_ERROR',
2315 x_msg_count,
2316 x_msg_data,
2317 '_PVT'
2318 );
2319 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2320 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2321 (
2322 l_api_name,
2323 G_PKG_NAME,
2324 'OKC_API.G_RET_STS_UNEXP_ERROR',
2325 x_msg_count,
2326 x_msg_data,
2327 '_PVT'
2328 );
2329 WHEN OTHERS THEN
2330 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2331 (
2332 l_api_name,
2333 G_PKG_NAME,
2334 'OTHERS',
2335 x_msg_count,
2336 x_msg_data,
2337 '_PVT'
2338 );
2339 END update_row;
2340
2341 ---------------------------------------------------------------------------
2342 -- PROCEDURE delete_row
2343 ---------------------------------------------------------------------------
2344 ----------------------------------------
2345 -- delete_row for:OKL_EXT_FUND_RQNS_B --
2346 ----------------------------------------
2347 PROCEDURE delete_row(
2348 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2349 x_return_status OUT NOCOPY VARCHAR2,
2350 x_msg_count OUT NOCOPY NUMBER,
2351 x_msg_data OUT NOCOPY VARCHAR2,
2352 p_xhr_rec IN xhr_rec_type) IS
2353
2354 l_api_version CONSTANT NUMBER := 1;
2355 l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
2356 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2357 l_xhr_rec xhr_rec_type:= p_xhr_rec;
2358 l_row_notfound BOOLEAN := TRUE;
2359 BEGIN
2360 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2361 p_init_msg_list,
2362 '_PVT',
2363 x_return_status);
2364 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2365 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2366 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2367 RAISE OKC_API.G_EXCEPTION_ERROR;
2368 END IF;
2369 DELETE FROM OKL_EXT_FUND_RQNS_B
2370 WHERE ID = l_xhr_rec.id;
2371
2372 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2373 EXCEPTION
2374 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2375 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2376 (
2377 l_api_name,
2378 G_PKG_NAME,
2379 'OKC_API.G_RET_STS_ERROR',
2380 x_msg_count,
2381 x_msg_data,
2382 '_PVT'
2383 );
2384 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2385 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2386 (
2387 l_api_name,
2388 G_PKG_NAME,
2389 'OKC_API.G_RET_STS_UNEXP_ERROR',
2390 x_msg_count,
2391 x_msg_data,
2392 '_PVT'
2393 );
2394 WHEN OTHERS THEN
2395 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2396 (
2397 l_api_name,
2398 G_PKG_NAME,
2399 'OTHERS',
2400 x_msg_count,
2401 x_msg_data,
2402 '_PVT'
2403 );
2404 END delete_row;
2405 -----------------------------------------
2406 -- delete_row for:OKL_EXT_FUND_RQNS_TL --
2407 -----------------------------------------
2408 PROCEDURE delete_row(
2409 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2410 x_return_status OUT NOCOPY VARCHAR2,
2411 x_msg_count OUT NOCOPY NUMBER,
2412 x_msg_data OUT NOCOPY VARCHAR2,
2413 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type) IS
2414
2415 l_api_version CONSTANT NUMBER := 1;
2416 l_api_name CONSTANT VARCHAR2(30) := 'TL_delete_row';
2417 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2418 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type:= p_okl_ext_fund_rqns_tl_rec;
2419 l_row_notfound BOOLEAN := TRUE;
2420 ---------------------------------------------
2421 -- Set_Attributes for:OKL_EXT_FUND_RQNS_TL --
2422 ---------------------------------------------
2423 FUNCTION Set_Attributes (
2424 p_okl_ext_fund_rqns_tl_rec IN okl_ext_fund_rqns_tl_rec_type,
2425 x_okl_ext_fund_rqns_tl_rec OUT NOCOPY okl_ext_fund_rqns_tl_rec_type
2426 ) RETURN VARCHAR2 IS
2427 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2428 BEGIN
2429 x_okl_ext_fund_rqns_tl_rec := p_okl_ext_fund_rqns_tl_rec;
2430 x_okl_ext_fund_rqns_tl_rec.LANGUAGE := USERENV('LANG');
2431 RETURN(l_return_status);
2432 END Set_Attributes;
2433 BEGIN
2434 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2435 p_init_msg_list,
2436 '_PVT',
2437 x_return_status);
2438 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2439 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2440 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2441 RAISE OKC_API.G_EXCEPTION_ERROR;
2442 END IF;
2443 --- Setting item attributes
2444 l_return_status := Set_Attributes(
2445 p_okl_ext_fund_rqns_tl_rec, -- IN
2446 l_okl_ext_fund_rqns_tl_rec); -- OUT
2447 --- If any errors happen abort API
2448 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2449 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2450 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2451 RAISE OKC_API.G_EXCEPTION_ERROR;
2452 END IF;
2453 DELETE FROM OKL_EXT_FUND_RQNS_TL
2454 WHERE ID = l_okl_ext_fund_rqns_tl_rec.id;
2455
2456 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2457 EXCEPTION
2458 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2459 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2460 (
2461 l_api_name,
2462 G_PKG_NAME,
2463 'OKC_API.G_RET_STS_ERROR',
2464 x_msg_count,
2465 x_msg_data,
2466 '_PVT'
2467 );
2468 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2469 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2470 (
2471 l_api_name,
2472 G_PKG_NAME,
2473 'OKC_API.G_RET_STS_UNEXP_ERROR',
2474 x_msg_count,
2475 x_msg_data,
2476 '_PVT'
2477 );
2478 WHEN OTHERS THEN
2479 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2480 (
2481 l_api_name,
2482 G_PKG_NAME,
2483 'OTHERS',
2484 x_msg_count,
2485 x_msg_data,
2486 '_PVT'
2487 );
2488 END delete_row;
2489 ----------------------------------------
2490 -- delete_row for:OKL_EXT_FUND_RQNS_V --
2491 ----------------------------------------
2492 PROCEDURE delete_row(
2493 p_api_version IN NUMBER,
2494 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2495 x_return_status OUT NOCOPY VARCHAR2,
2496 x_msg_count OUT NOCOPY NUMBER,
2497 x_msg_data OUT NOCOPY VARCHAR2,
2498 p_xhrv_rec IN xhrv_rec_type) IS
2499
2500 l_api_version CONSTANT NUMBER := 1;
2501 l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
2502 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2503 l_xhrv_rec xhrv_rec_type := p_xhrv_rec;
2504 l_okl_ext_fund_rqns_tl_rec okl_ext_fund_rqns_tl_rec_type;
2505 l_xhr_rec xhr_rec_type;
2506 BEGIN
2507 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2508 G_PKG_NAME,
2509 p_init_msg_list,
2510 l_api_version,
2511 p_api_version,
2512 '_PVT',
2513 x_return_status);
2514 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2515 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2516 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2517 RAISE OKC_API.G_EXCEPTION_ERROR;
2518 END IF;
2519 --------------------------------------
2520 -- Move VIEW record to "Child" records
2521 --------------------------------------
2522 migrate(l_xhrv_rec, l_okl_ext_fund_rqns_tl_rec);
2523 migrate(l_xhrv_rec, l_xhr_rec);
2524 --------------------------------------------
2525 -- Call the DELETE_ROW for each child record
2526 --------------------------------------------
2527 delete_row(
2528 p_init_msg_list,
2529 x_return_status,
2530 x_msg_count,
2531 x_msg_data,
2532 l_okl_ext_fund_rqns_tl_rec
2533 );
2534 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2535 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2536 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
2537 RAISE OKC_API.G_EXCEPTION_ERROR;
2538 END IF;
2539 delete_row(
2540 p_init_msg_list,
2541 x_return_status,
2542 x_msg_count,
2543 x_msg_data,
2544 l_xhr_rec
2545 );
2546 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2547 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2548 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
2549 RAISE OKC_API.G_EXCEPTION_ERROR;
2550 END IF;
2551 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2552 EXCEPTION
2553 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2554 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2555 (
2556 l_api_name,
2557 G_PKG_NAME,
2558 'OKC_API.G_RET_STS_ERROR',
2559 x_msg_count,
2560 x_msg_data,
2561 '_PVT'
2562 );
2563 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2564 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2565 (
2566 l_api_name,
2567 G_PKG_NAME,
2568 'OKC_API.G_RET_STS_UNEXP_ERROR',
2569 x_msg_count,
2570 x_msg_data,
2571 '_PVT'
2572 );
2573 WHEN OTHERS THEN
2574 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2575 (
2576 l_api_name,
2577 G_PKG_NAME,
2578 'OTHERS',
2579 x_msg_count,
2580 x_msg_data,
2581 '_PVT'
2582 );
2583 END delete_row;
2584 ----------------------------------------
2585 -- PL/SQL TBL delete_row for:XHRV_TBL --
2586 ----------------------------------------
2587 PROCEDURE delete_row(
2588 p_api_version IN NUMBER,
2589 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
2590 x_return_status OUT NOCOPY VARCHAR2,
2591 x_msg_count OUT NOCOPY NUMBER,
2592 x_msg_data OUT NOCOPY VARCHAR2,
2593 p_xhrv_tbl IN xhrv_tbl_type) IS
2594
2595 l_api_version CONSTANT NUMBER := 1;
2596 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
2597 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2598 i NUMBER := 0;
2599 BEGIN
2600 OKC_API.init_msg_list(p_init_msg_list);
2601 -- Make sure PL/SQL table has records in it before passing
2602 IF (p_xhrv_tbl.COUNT > 0) THEN
2603 i := p_xhrv_tbl.FIRST;
2604 LOOP
2605 delete_row (
2606 p_api_version => p_api_version,
2607 p_init_msg_list => OKC_API.G_FALSE,
2608 x_return_status => x_return_status,
2609 x_msg_count => x_msg_count,
2610 x_msg_data => x_msg_data,
2611 p_xhrv_rec => p_xhrv_tbl(i));
2612 EXIT WHEN (i = p_xhrv_tbl.LAST);
2613 i := p_xhrv_tbl.NEXT(i);
2614 END LOOP;
2615 END IF;
2616 EXCEPTION
2617 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2618 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2619 (
2620 l_api_name,
2621 G_PKG_NAME,
2622 'OKC_API.G_RET_STS_ERROR',
2623 x_msg_count,
2624 x_msg_data,
2625 '_PVT'
2626 );
2627 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2628 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2629 (
2630 l_api_name,
2631 G_PKG_NAME,
2632 'OKC_API.G_RET_STS_UNEXP_ERROR',
2633 x_msg_count,
2634 x_msg_data,
2635 '_PVT'
2636 );
2637 WHEN OTHERS THEN
2638 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2639 (
2640 l_api_name,
2641 G_PKG_NAME,
2642 'OTHERS',
2643 x_msg_count,
2644 x_msg_data,
2645 '_PVT'
2646 );
2647 END delete_row;
2648 END OKL_XHR_PVT;