[Home] [Help]
PACKAGE BODY: APPS.OKL_CNTR_LVLNG_GRPS_PUB
Source
1 PACKAGE BODY OKL_CNTR_LVLNG_GRPS_PUB AS
2 /* $Header: OKLPCLGB.pls 120.4 2006/07/13 12:21:39 adagur noship $ */
3
4 PROCEDURE insert_cntr_lvlng_grps(
5 p_api_version IN NUMBER
6 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
7 ,x_return_status OUT NOCOPY VARCHAR2
8 ,x_msg_count OUT NOCOPY NUMBER
9 ,x_msg_data OUT NOCOPY VARCHAR2
10 ,p_clgv_rec IN clgv_rec_type
11 ,x_clgv_rec OUT NOCOPY clgv_rec_type) IS
12
13
14 l_api_version NUMBER ;
15 l_init_msg_list VARCHAR2(1) ;
16 l_return_status VARCHAR2(1);
17 l_msg_count NUMBER ;
18 l_msg_data VARCHAR2(2000);
19 lp_clgv_rec clgv_rec_type;
20 lx_clgv_rec clgv_rec_type;
21
22 BEGIN
23
24 SAVEPOINT cntr_lvlng_grps_insert;
25
26
27 l_api_version := p_api_version ;
28 l_init_msg_list := p_init_msg_list ;
29 l_return_status := x_return_status ;
30 l_msg_count := x_msg_count ;
31 l_msg_data := x_msg_data ;
32 lp_clgv_rec := p_clgv_rec;
33 lx_clgv_rec := x_clgv_rec;
34
35 --lp_clgv_rec.org_id := OKL_CONTEXT.get_okc_organization_id;
36
37 lp_clgv_rec.org_id := MO_GLOBAL.GET_CURRENT_ORG_ID();
38
39
40
41
42
43 okl_clg_pvt.insert_row(
44 l_api_version
45 ,l_init_msg_list
46 ,l_return_status
47 ,l_msg_count
48 ,l_msg_data
49 ,lp_clgv_rec
50 ,lx_clgv_rec);
51
52 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
53 RAISE FND_API.G_EXC_ERROR;
54 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
55 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
56 END IF;
57
58 --Copy value of OUT variable in the IN record type
59 lp_clgv_rec := lx_clgv_rec;
60
61
62
63
64
65 --Assign value to OUT variables
66 x_clgv_rec := lx_clgv_rec;
67 x_return_status := l_return_status ;
68 x_msg_count := l_msg_count ;
69 x_msg_data := l_msg_data ;
70
71 EXCEPTION
72
73 WHEN FND_API.G_EXC_ERROR THEN
74 ROLLBACK TO cntr_lvlng_grps_insert;
75 x_return_status := FND_API.G_RET_STS_ERROR;
76 x_msg_count := l_msg_count ;
77 x_msg_data := l_msg_data ;
78 FND_MSG_PUB.count_and_get(
79 p_count => x_msg_count
80 ,p_data => x_msg_data);
81 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
82 ROLLBACK TO cntr_lvlng_grps_insert;
83 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
84 x_msg_count := l_msg_count ;
85 x_msg_data := l_msg_data ;
86 FND_MSG_PUB.count_and_get(
87 p_count => x_msg_count
88 ,p_data => x_msg_data);
89 WHEN OTHERS THEN
90 ROLLBACK TO cntr_lvlng_grps_insert;
91 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
92 x_msg_count := l_msg_count ;
93 x_msg_data := l_msg_data ;
94 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','insert_cntr_lvlng_grps');
95 FND_MSG_PUB.count_and_get(
96 p_count => x_msg_count
97 ,p_data => x_msg_data);
98 END insert_cntr_lvlng_grps;
99
100 PROCEDURE insert_cntr_lvlng_grps(
101 p_api_version IN NUMBER
102 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
103 ,x_return_status OUT NOCOPY VARCHAR2
104 ,x_msg_count OUT NOCOPY NUMBER
105 ,x_msg_data OUT NOCOPY VARCHAR2
106 ,p_clgv_tbl IN clgv_tbl_type
107 ,x_clgv_tbl OUT NOCOPY clgv_tbl_type) IS
108
109 l_api_version NUMBER;
110 l_init_msg_list VARCHAR2(1) ;
111 l_msg_data VARCHAR2(2000);
112 l_msg_count NUMBER ;
113 l_return_status VARCHAR2(1);
114 lp_clgv_tbl clgv_tbl_type;
115 lx_clgv_tbl clgv_tbl_type;
116
117 BEGIN
118
119 SAVEPOINT cntr_lvlng_grps_insert;
120
121
122 l_api_version := p_api_version ;
123 l_init_msg_list := p_init_msg_list ;
124 l_return_status := x_return_status ;
125 l_msg_count := x_msg_count ;
126 l_msg_data := x_msg_data ;
127 lp_clgv_tbl := p_clgv_tbl;
128 lx_clgv_tbl := x_clgv_tbl;
129
130 for i in 1..lp_clgv_tbl.count
131 LOOP
132 -- lp_clgv_tbl(i).org_id := OKL_CONTEXT.get_okc_organization_id;
133 lp_clgv_tbl(i).org_id := MO_GLOBAL.GET_CURRENT_ORG_ID();
134 END LOOP;
135
136
137
138
139 okl_clg_pvt.insert_row(
140 l_api_version
141 ,l_init_msg_list
142 ,l_return_status
143 ,l_msg_count
144 ,l_msg_data
145 ,lp_clgv_tbl
146 ,lx_clgv_tbl);
147
148 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
149 RAISE FND_API.G_EXC_ERROR;
150 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
151 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
152 END IF;
153
154 --Copy value of OUT variable in the IN record type
155 lp_clgv_tbl := lx_clgv_tbl;
156
157
158
159 --Assign value to OUT variables
160 x_clgv_tbl := lx_clgv_tbl;
161 x_return_status := l_return_status ;
162 x_msg_count := l_msg_count ;
163 x_msg_data := l_msg_data ;
164
165
166 EXCEPTION
167
168 WHEN FND_API.G_EXC_ERROR THEN
169 ROLLBACK TO cntr_lvlng_grps_insert;
170 x_return_status := FND_API.G_RET_STS_ERROR;
171 x_msg_count := l_msg_count ;
172 x_msg_data := l_msg_data ;
173 FND_MSG_PUB.count_and_get(
174 p_count => x_msg_count
175 ,p_data => x_msg_data);
176 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
177 ROLLBACK TO cntr_lvlng_grps_insert;
178 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
179 x_msg_count := l_msg_count ;
180 x_msg_data := l_msg_data ;
181 FND_MSG_PUB.count_and_get(
182 p_count => x_msg_count
183 ,p_data => x_msg_data);
184 WHEN OTHERS THEN
185 ROLLBACK TO cntr_lvlng_grps_insert;
186 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
187 x_msg_count := l_msg_count ;
188 x_msg_data := l_msg_data ;
189 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','insert_cntr_lvlng_grps');
190 FND_MSG_PUB.count_and_get(
191 p_count => x_msg_count
192 ,p_data => x_msg_data);
193 END insert_cntr_lvlng_grps;
194
195 PROCEDURE lock_cntr_lvlng_grps(
196 p_api_version IN NUMBER
197 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
198 ,x_return_status OUT NOCOPY VARCHAR2
199 ,x_msg_count OUT NOCOPY NUMBER
200 ,x_msg_data OUT NOCOPY VARCHAR2
201 ,p_clgv_rec IN clgv_rec_type) IS
202
203 BEGIN
204 okl_clg_pvt.lock_row(
205 p_api_version,
206 p_init_msg_list,
207 x_return_status,
208 x_msg_count,
209 x_msg_data,
210 p_clgv_rec);
211
212 IF ( x_return_status = FND_API.G_RET_STS_ERROR ) THEN
213 RAISE FND_API.G_EXC_ERROR;
214 ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
215 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
216 END IF;
217
218
219 EXCEPTION
220
221 WHEN FND_API.G_EXC_ERROR THEN
222 FND_MSG_PUB.count_and_get(
223 p_count => x_msg_count
224 ,p_data => x_msg_data);
225 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
226 FND_MSG_PUB.count_and_get(
227 p_count => x_msg_count
228 ,p_data => x_msg_data);
229 WHEN OTHERS THEN
230 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
231 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','lock_cntr_lvlng_grps');
232 FND_MSG_PUB.count_and_get(
233 p_count => x_msg_count
234 ,p_data => x_msg_data);
235 END lock_cntr_lvlng_grps;
236
237 PROCEDURE lock_cntr_lvlng_grps(
238 p_api_version IN NUMBER
239 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
240 ,x_return_status OUT NOCOPY VARCHAR2
241 ,x_msg_count OUT NOCOPY NUMBER
242 ,x_msg_data OUT NOCOPY VARCHAR2
243 ,p_clgv_tbl IN clgv_tbl_type) IS
244
245 BEGIN
246 okl_clg_pvt.lock_row(
247 p_api_version,
248 p_init_msg_list,
249 x_return_status,
250 x_msg_count,
251 x_msg_data,
252 p_clgv_tbl);
253
254 IF ( x_return_status = FND_API.G_RET_STS_ERROR ) THEN
255 RAISE FND_API.G_EXC_ERROR;
256 ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
257 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
258 END IF;
259
260
261 EXCEPTION
262
263 WHEN FND_API.G_EXC_ERROR THEN
264 FND_MSG_PUB.count_and_get(
265 p_count => x_msg_count
266 ,p_data => x_msg_data);
267 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
268 FND_MSG_PUB.count_and_get(
269 p_count => x_msg_count
270 ,p_data => x_msg_data);
271 WHEN OTHERS THEN
272 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
273 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','lock_cntr_lvlng_grps');
274 FND_MSG_PUB.count_and_get(
275 p_count => x_msg_count
276 ,p_data => x_msg_data);
277 END lock_cntr_lvlng_grps;
278
279 PROCEDURE update_cntr_lvlng_grps(
280 p_api_version IN NUMBER
281 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
282 ,x_return_status OUT NOCOPY VARCHAR2
283 ,x_msg_count OUT NOCOPY NUMBER
284 ,x_msg_data OUT NOCOPY VARCHAR2
285 ,p_clgv_rec IN clgv_rec_type
286 ,x_clgv_rec OUT NOCOPY clgv_rec_type) IS
287
288 l_api_version NUMBER ;
289 l_init_msg_list VARCHAR2(1) ;
290 l_return_status VARCHAR2(1);
291 l_msg_count NUMBER ;
292 l_msg_data VARCHAR2(2000);
293 lp_clgv_rec clgv_rec_type;
294 lx_clgv_rec clgv_rec_type;
295
296 BEGIN
297
298 SAVEPOINT cntr_lvlng_grps_update;
299
300
301 l_api_version := p_api_version ;
302 l_init_msg_list := p_init_msg_list ;
303 l_return_status := x_return_status ;
304 l_msg_count := x_msg_count ;
305 l_msg_data := x_msg_data ;
306 lp_clgv_rec := p_clgv_rec;
307 lx_clgv_rec := x_clgv_rec;
308
309
310
311
312
313 okl_clg_pvt.update_row(
314 l_api_version
315 ,l_init_msg_list
316 ,l_return_status
317 ,l_msg_count
318 ,l_msg_data
319 ,lp_clgv_rec
320 ,lx_clgv_rec);
321
322 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
323 RAISE FND_API.G_EXC_ERROR;
324 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
325 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
326 END IF;
327
328 --Copy value of OUT variable in the IN record type
329 lp_clgv_rec := lx_clgv_rec;
330
331
332
333
334 --Assign value to OUT variables
335 x_clgv_rec := lx_clgv_rec;
336 x_return_status := l_return_status ;
337 x_msg_count := l_msg_count ;
338 x_msg_data := l_msg_data ;
339
340
341 EXCEPTION
342
343 WHEN FND_API.G_EXC_ERROR THEN
344 ROLLBACK TO cntr_lvlng_grps_update;
345 x_return_status := FND_API.G_RET_STS_ERROR;
346 x_msg_count := l_msg_count ;
347 x_msg_data := l_msg_data ;
348 FND_MSG_PUB.count_and_get(
349 p_count => x_msg_count
350 ,p_data => x_msg_data);
351 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
352 ROLLBACK TO cntr_lvlng_grps_update;
353 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
354 x_msg_count := l_msg_count ;
355 x_msg_data := l_msg_data ;
356 FND_MSG_PUB.count_and_get(
357 p_count => x_msg_count
358 ,p_data => x_msg_data);
359 WHEN OTHERS THEN
360 ROLLBACK TO cntr_lvlng_grps_update;
361 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
362 x_msg_count := l_msg_count ;
363 x_msg_data := l_msg_data ;
364 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','update_cntr_lvlng_grps');
365 FND_MSG_PUB.count_and_get(
366 p_count => x_msg_count
367 ,p_data => x_msg_data);
368 END update_cntr_lvlng_grps;
369
370 PROCEDURE update_cntr_lvlng_grps(
371 p_api_version IN NUMBER
372 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
373 ,x_return_status OUT NOCOPY VARCHAR2
374 ,x_msg_count OUT NOCOPY NUMBER
375 ,x_msg_data OUT NOCOPY VARCHAR2
376 ,p_clgv_tbl IN clgv_tbl_type
377 ,x_clgv_tbl OUT NOCOPY clgv_tbl_type) IS
378
379 l_api_version NUMBER;
380 l_init_msg_list VARCHAR2(200);
381 l_msg_data VARCHAR2(100);
382 l_msg_count NUMBER ;
383 l_return_status VARCHAR2(1);
384 lp_clgv_tbl clgv_tbl_type;
385 lx_clgv_tbl clgv_tbl_type;
386
387 BEGIN
388
389 SAVEPOINT cntr_lvlng_grps_update;
390
391
392 lp_clgv_tbl := p_clgv_tbl;
393 lx_clgv_tbl := x_clgv_tbl;
394 l_api_version := p_api_version ;
395 l_init_msg_list := p_init_msg_list ;
396 l_msg_data := x_msg_data ;
397 l_msg_count := x_msg_count ;
398
399
400
401
402
403 okl_clg_pvt.update_row(
404 l_api_version
405 ,l_init_msg_list
406 ,l_return_status
407 ,l_msg_count
408 ,l_msg_data
409 ,lp_clgv_tbl
410 ,lx_clgv_tbl);
411
412 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
413 RAISE FND_API.G_EXC_ERROR;
414 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
415 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
416 END IF;
417
418 --Copy value of OUT variable in the IN record type
419 lp_clgv_tbl := lx_clgv_tbl;
420
421
422
423 --Assign value to OUT variables
424 x_clgv_tbl := lx_clgv_tbl;
425 x_return_status := l_return_status ;
426 x_msg_count := l_msg_count ;
427 x_msg_data := l_msg_data ;
428
429
430 EXCEPTION
431
432 WHEN FND_API.G_EXC_ERROR THEN
433 ROLLBACK TO cntr_lvlng_grps_update;
434 x_return_status := FND_API.G_RET_STS_ERROR;
435 x_msg_count := l_msg_count ;
436 x_msg_data := l_msg_data ;
437 FND_MSG_PUB.count_and_get(
438 p_count => x_msg_count
439 ,p_data => x_msg_data);
440 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
441 ROLLBACK TO cntr_lvlng_grps_update;
442 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
443 x_msg_count := l_msg_count ;
444 x_msg_data := l_msg_data ;
445 FND_MSG_PUB.count_and_get(
446 p_count => x_msg_count
447 ,p_data => x_msg_data);
448 WHEN OTHERS THEN
449 ROLLBACK TO cntr_lvlng_grps_update;
450 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
451 x_msg_count := l_msg_count ;
452 x_msg_data := l_msg_data ;
453 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','update_cntr_lvlng_grps');
454 FND_MSG_PUB.count_and_get(
455 p_count => x_msg_count
456 ,p_data => x_msg_data);
457 END update_cntr_lvlng_grps;
458
459 --Put custom code for cascade delete by developer
460 PROCEDURE delete_cntr_lvlng_grps(
461 p_api_version IN NUMBER
462 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
463 ,x_return_status OUT NOCOPY VARCHAR2
464 ,x_msg_count OUT NOCOPY NUMBER
465 ,x_msg_data OUT NOCOPY VARCHAR2
466 ,p_clgv_rec IN clgv_rec_type) IS
467
468 i NUMBER :=0;
469 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
470 l_api_version NUMBER ;
471 l_init_msg_list VARCHAR2(1) ;
472 l_msg_data VARCHAR2(2000);
473 l_msg_count NUMBER ;
474 lp_clgv_rec clgv_rec_type;
475 lx_clgv_rec clgv_rec_type;
476
477 BEGIN
478
479 SAVEPOINT cntr_lvlng_grps_delete_rec;
480
481
482 l_api_version := p_api_version ;
483 l_init_msg_list := p_init_msg_list ;
484 l_msg_data := x_msg_data;
485 l_msg_count := x_msg_count ;
486 lp_clgv_rec := p_clgv_rec;
487 lx_clgv_rec := p_clgv_rec;
488
489
490
491
492 --Delete the Master
493 okl_clg_pvt.delete_row(
494 l_api_version
495 ,l_init_msg_list
496 ,l_return_status
497 ,l_msg_count
498 ,l_msg_data
499 ,lp_clgv_rec);
500
501 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
502 RAISE FND_API.G_EXC_ERROR;
503 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
504 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
505 END IF;
506
507
508
509
510
511 --Assign value to OUT variables
512 x_msg_count := l_msg_count ;
513 x_msg_data := l_msg_data ;
514 x_return_status := l_return_status ;
515
516 EXCEPTION
517
518 WHEN FND_API.G_EXC_ERROR THEN
519 ROLLBACK TO cntr_lvlng_grps_delete_rec;
520 x_return_status := FND_API.G_RET_STS_ERROR;
521 x_msg_count := l_msg_count ;
522 x_msg_data := l_msg_data ;
523 FND_MSG_PUB.count_and_get(
524 p_count => x_msg_count
525 ,p_data => x_msg_data);
526 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
527 ROLLBACK TO cntr_lvlng_grps_delete_rec;
528 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
529 x_msg_count := l_msg_count ;
530 x_msg_data := l_msg_data ;
531 FND_MSG_PUB.count_and_get(
532 p_count => x_msg_count
533 ,p_data => x_msg_data);
534 WHEN OTHERS THEN
535 ROLLBACK TO cntr_lvlng_grps_delete_rec;
536 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
537 x_msg_count := l_msg_count ;
538 x_msg_data := l_msg_data ;
539 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','delete_cntr_lvlng_grps');
540 FND_MSG_PUB.count_and_get(
541 p_count => x_msg_count
542 ,p_data => x_msg_data);
543 END delete_cntr_lvlng_grps;
544
545 PROCEDURE delete_cntr_lvlng_grps(
546 p_api_version IN NUMBER
547 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
548 ,x_return_status OUT NOCOPY VARCHAR2
549 ,x_msg_count OUT NOCOPY NUMBER
550 ,x_msg_data OUT NOCOPY VARCHAR2
551 ,p_clgv_tbl IN clgv_tbl_type) IS
552
553 i NUMBER := 0;
554 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
555 l_api_version NUMBER := p_api_version ;
556 l_init_msg_list VARCHAR2(1) := p_init_msg_list ;
557 l_msg_data VARCHAR2(2000);
558 l_msg_count NUMBER ;
559 lp_clgv_tbl clgv_tbl_type;
560 lx_clgv_tbl clgv_tbl_type;
561
562 BEGIN
563
564 SAVEPOINT cntr_lvlng_grps_delete_tbl;
565
566
567 l_api_version := p_api_version ;
568 l_init_msg_list := p_init_msg_list ;
569 l_msg_data := x_msg_data;
570 l_msg_count := x_msg_count ;
571 lp_clgv_tbl := p_clgv_tbl;
572 lx_clgv_tbl := p_clgv_tbl;
573
574
575
576
577 BEGIN
578 --Initialize the return status
579 l_return_status := OKC_API.G_RET_STS_SUCCESS;
580
581 IF (lp_clgv_tbl.COUNT > 0) THEN
582 i := p_clgv_tbl.FIRST;
583 LOOP
584 delete_cntr_lvlng_grps(
585 l_api_version
586 ,l_init_msg_list
587 ,l_return_status
588 ,l_msg_count
589 ,l_msg_data
590 ,lp_clgv_tbl(i));
591 EXIT WHEN (i = lp_clgv_tbl.LAST);
592 i := p_clgv_tbl.NEXT(i);
593 END LOOP;
594 END IF;
595 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
596 RAISE FND_API.G_EXC_ERROR;
597 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
598 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
599 END IF;
600
601 END;
602
603
604
605
606
607 --Assign value to OUT variables
608 x_msg_count := l_msg_count ;
609 x_msg_data := l_msg_data ;
610
611 x_return_status := l_return_status ;
612
613 EXCEPTION
614
615 WHEN FND_API.G_EXC_ERROR THEN
616 ROLLBACK TO cntr_lvlng_grps_delete_tbl;
617 x_return_status := FND_API.G_RET_STS_ERROR;
618 x_msg_count := l_msg_count ;
619 x_msg_data := l_msg_data ;
620 FND_MSG_PUB.count_and_get(
621 p_count => x_msg_count
622 ,p_data => x_msg_data);
623 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
624 ROLLBACK TO cntr_lvlng_grps_delete_tbl;
625 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
626 x_msg_count := l_msg_count ;
627 x_msg_data := l_msg_data ;
628 FND_MSG_PUB.count_and_get(
629 p_count => x_msg_count
630 ,p_data => x_msg_data);
631 WHEN OTHERS THEN
632 ROLLBACK TO cntr_lvlng_grps_delete_tbl;
633 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
634 x_msg_count := l_msg_count ;
635 x_msg_data := l_msg_data ;
636 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','delete_cntr_lvlng_grps');
637 FND_MSG_PUB.count_and_get(
638 p_count => x_msg_count
639 ,p_data => x_msg_data);
640 END delete_cntr_lvlng_grps;
641
642 PROCEDURE validate_cntr_lvlng_grps(
643 p_api_version IN NUMBER
644 ,p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE
645 ,x_return_status OUT NOCOPY VARCHAR2
646 ,x_msg_count OUT NOCOPY NUMBER
647 ,x_msg_data OUT NOCOPY VARCHAR2
648 ,p_clgv_rec IN clgv_rec_type) IS
649
650 l_api_version NUMBER ;
651 l_init_msg_list VARCHAR2(1) ;
652 l_msg_data VARCHAR2(2000);
653 l_msg_count NUMBER ;
654 lp_clgv_rec clgv_rec_type;
655 lx_clgv_rec clgv_rec_type;
656 l_return_status VARCHAR2(1);
657
658 BEGIN
659
660 SAVEPOINT cntr_lvlng_grps_validate;
661
662
663 l_api_version := p_api_version ;
664 l_init_msg_list := p_init_msg_list ;
665 l_msg_data := x_msg_data;
666 l_msg_count := x_msg_count ;
667 lp_clgv_rec := p_clgv_rec;
668 lx_clgv_rec := p_clgv_rec;
669
670
671
672
673 okl_clg_pvt.validate_row(
674 l_api_version
675 ,l_init_msg_list
676 ,l_return_status
677 ,l_msg_count
678 ,l_msg_data
679 ,lp_clgv_rec);
680
681 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
682 RAISE FND_API.G_EXC_ERROR;
683 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
684 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
685 END IF;
686
687 --Copy value of OUT variable in the IN record type
688 lp_clgv_rec := lx_clgv_rec;
689
690
691
692
693
694
695
696
697 --Assign value to OUT variables
698 x_msg_count := l_msg_count ;
699 x_msg_data := l_msg_data ;
700
701 x_return_status := l_return_status ;
702
703 EXCEPTION
704
705 WHEN FND_API.G_EXC_ERROR THEN
706 ROLLBACK TO cntr_lvlng_grps_validate;
707 x_return_status := FND_API.G_RET_STS_ERROR;
708 x_msg_count := l_msg_count ;
709 x_msg_data := l_msg_data ;
710 FND_MSG_PUB.count_and_get(
711 p_count => x_msg_count
712 ,p_data => x_msg_data);
713 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
714 ROLLBACK TO cntr_lvlng_grps_validate;
715 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
716 x_msg_count := l_msg_count ;
717 x_msg_data := l_msg_data ;
718 FND_MSG_PUB.count_and_get(
719 p_count => x_msg_count
720 ,p_data => x_msg_data);
721 WHEN OTHERS THEN
722 ROLLBACK TO cntr_lvlng_grps_validate;
723 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
724 x_msg_count := l_msg_count ;
725 x_msg_data := l_msg_data ;
726 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','validate_cntr_lvlng_grps');
727 FND_MSG_PUB.count_and_get(
728 p_count => x_msg_count
729 ,p_data => x_msg_data);
730 END validate_cntr_lvlng_grps;
731
732 PROCEDURE validate_cntr_lvlng_grps(
733 p_api_version IN NUMBER,
734 p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE,
735 x_return_status OUT NOCOPY VARCHAR2,
736 x_msg_count OUT NOCOPY NUMBER,
737 x_msg_data OUT NOCOPY VARCHAR2,
738 p_clgv_tbl IN clgv_tbl_type) IS
739 l_api_version NUMBER ;
740 l_init_msg_list VARCHAR2(1) ;
741 l_msg_data VARCHAR2(2000);
742 l_msg_count NUMBER ;
743 lp_clgv_tbl clgv_tbl_type;
744 lx_clgv_tbl clgv_tbl_type;
745 l_return_status VARCHAR2(1);
746
747 BEGIN
748
749 SAVEPOINT cntr_lvlng_grps_validate;
750
751
752 l_api_version := p_api_version ;
753 l_init_msg_list := p_init_msg_list ;
754 l_msg_data := x_msg_data;
755 l_msg_count := x_msg_count ;
756 lp_clgv_tbl := p_clgv_tbl;
757 lx_clgv_tbl := p_clgv_tbl;
758
759
760
761 okl_clg_pvt.validate_row(
762 p_api_version
763 ,p_init_msg_list
764 ,x_return_status
765 ,x_msg_count
766 ,x_msg_data
767 ,lp_clgv_tbl);
768
769 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
770 RAISE FND_API.G_EXC_ERROR;
771 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
772 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
773 END IF;
774
775 --Copy value of OUT variable in the IN record type
776 lp_clgv_tbl := lx_clgv_tbl;
777
778
779
780
781
782 --Assign value to OUT variables
783 x_msg_count := l_msg_count ;
784 x_msg_data := l_msg_data ;
785
786 x_return_status := l_return_status ;
787
788 EXCEPTION
789
790 WHEN FND_API.G_EXC_ERROR THEN
791 ROLLBACK TO cntr_lvlng_grps_validate;
792 x_return_status := FND_API.G_RET_STS_ERROR;
793 x_msg_count := l_msg_count ;
794 x_msg_data := l_msg_data ;
795 FND_MSG_PUB.count_and_get(
796 p_count => x_msg_count
797 ,p_data => x_msg_data);
798 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
799 ROLLBACK TO cntr_lvlng_grps_validate;
800 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
801 x_msg_count := l_msg_count ;
802 x_msg_data := l_msg_data ;
803 FND_MSG_PUB.count_and_get(
804 p_count => x_msg_count
805 ,p_data => x_msg_data);
806 WHEN OTHERS THEN
807 ROLLBACK TO cntr_lvlng_grps_validate;
808 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
809 x_msg_count := l_msg_count ;
810 x_msg_data := l_msg_data ;
811 FND_MSG_PUB.ADD_EXC_MSG('OKL_CNTR_LVLNG_GRPS_PUB','validate_cntr_lvlng_grps');
812 FND_MSG_PUB.count_and_get(
813 p_count => x_msg_count
814 ,p_data => x_msg_data);
815 END validate_cntr_lvlng_grps;
816
817 END OKL_CNTR_LVLNG_GRPS_PUB;