[Home] [Help]
PACKAGE BODY: APPS.OKL_ACC_GROUP_PVT
Source
1 package body OKL_ACC_GROUP_PVT as
2 /* $Header: OKLCAGCB.pls 115.4 2002/02/18 20:10:22 pkm ship $ */
3
4 PROCEDURE create_acc_group(p_api_version IN NUMBER
5 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
6 ,x_return_status OUT NOCOPY VARCHAR2
7 ,x_msg_count OUT NOCOPY NUMBER
8 ,x_msg_data OUT NOCOPY VARCHAR2
9 ,p_agcv_rec IN agcv_rec_type
10 ,p_agbv_tbl IN agbv_tbl_type
11 ,x_agcv_rec OUT NOCOPY agcv_rec_type
12 ,x_agbv_tbl OUT NOCOPY agbv_tbl_type
13 ) IS
14
15 i NUMBER;
16 l_agcv_rec agcv_rec_type;
17 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
18 l_agbv_tbl agbv_tbl_type := p_agbv_tbl;
19
20 BEGIN
21
22 create_acc_ccid(p_api_version => p_api_version
23 ,p_init_msg_list => p_init_msg_list
24 ,x_return_status => x_return_status
25 ,x_msg_count => x_msg_count
26 ,x_msg_data => x_msg_data
27 ,p_agcv_rec => p_agcv_rec
28 ,x_agcv_rec => x_agcv_rec);
29
30 IF x_return_status = OKC_API.G_RET_STS_SUCCESS THEN
31 -- populate the foreign key for the detail
32 IF (l_agbv_tbl.COUNT > 0) THEN
33 i:= l_agbv_tbl.FIRST;
34 LOOP
35 l_agbv_tbl(i).acc_group_id := x_agcv_rec.id;
36 EXIT WHEN(i = l_agbv_tbl.LAST);
37 i := l_agbv_tbl.NEXT(i);
38 END LOOP;
39 END IF;
40
41
42 -- populate the detail
43 create_acc_bal(p_api_version => p_api_version
44 ,p_init_msg_list => p_init_msg_list
45 ,x_return_status => x_return_status
46 ,x_msg_count => x_msg_count
47 ,x_msg_data => x_msg_data
48 ,p_agbv_tbl => l_agbv_tbl
49 ,x_agbv_tbl => x_agbv_tbl);
50 END IF;
51
52 EXCEPTION
53 WHEN G_EXCEPTION_HALT_VALIDATION THEN
54 NULL;
55
56 WHEN OTHERS THEN
57 OKC_API.SET_MESSAGE(p_app_name => g_app_name
58 ,p_msg_name => g_unexpected_error
59 ,p_token1 => g_sqlcode_token
60 ,p_token1_value => sqlcode
61 ,p_token2 => g_sqlerrm_token
62 ,p_token2_value => sqlerrm);
63
64 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
65
66 END create_acc_group;
67
68 PROCEDURE create_acc_ccid(
69 p_api_version IN NUMBER
70 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
71 ,x_return_status OUT NOCOPY VARCHAR2
72 ,x_msg_count OUT NOCOPY NUMBER
73 ,x_msg_data OUT NOCOPY VARCHAR2
74 ,p_agcv_rec IN agcv_rec_type
75 ,x_agcv_rec OUT NOCOPY agcv_rec_type) IS
76
77 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
78
79 BEGIN
80
81 okl_agc_pvt.insert_row(p_api_version => p_api_version
82 ,p_init_msg_list => p_init_msg_list
83 ,x_return_status => x_return_status
84 ,x_msg_count => x_msg_count
85 ,x_msg_data => x_msg_data
86 ,p_agcv_rec => p_agcv_rec
87 ,x_agcv_rec => x_agcv_rec
88 );
89
90 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
91 RAISE G_EXCEPTION_HALT_VALIDATION;
92 ELSE
93 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
94 l_return_status := x_return_status;
95 END IF;
96 END IF;
97
98 EXCEPTION
99 WHEN G_EXCEPTION_HALT_VALIDATION THEN
100 NULL;
101
102 WHEN OTHERS THEN
103 OKC_API.SET_MESSAGE(p_app_name => g_app_name
104 ,p_msg_name => g_unexpected_error
105 ,p_token1 => g_sqlcode_token
106 ,p_token1_value => sqlcode
107 ,p_token2 => g_sqlerrm_token
108 ,p_token2_value => sqlerrm);
109 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
110
111 END create_acc_ccid;
112
113
114
115 PROCEDURE create_acc_ccid(p_api_version IN NUMBER
116 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
117 ,x_return_status OUT NOCOPY VARCHAR2
118 ,x_msg_count OUT NOCOPY NUMBER
119 ,x_msg_data OUT NOCOPY VARCHAR2
120 ,p_agcv_tbl IN agcv_tbl_type
121 ,x_agcv_tbl OUT NOCOPY agcv_tbl_type) IS
122
123 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
124 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
125 i NUMBER := 0;
126
127 BEGIN
128
129 Okc_Api.init_msg_list(p_init_msg_list);
130 -- Make sure PL/SQL table has records in it before passing
131 IF (p_agcv_tbl.COUNT > 0) THEN
132 i := p_agcv_tbl.FIRST;
133 LOOP
134 create_acc_ccid(p_api_version => p_api_version,
135 p_init_msg_list => Okc_Api.G_FALSE,
136 x_return_status => x_return_status,
137 x_msg_count => x_msg_count,
138 x_msg_data => x_msg_data,
139 p_agcv_rec => p_agcv_tbl(i),
140 x_agcv_rec => x_agcv_tbl(i));
141
142 -- store the highest degree of error
143 IF x_return_status <> Okc_Api.G_RET_STS_SUCCESS THEN
144 IF l_overall_status <> Okc_Api.G_RET_STS_UNEXP_ERROR THEN
145 l_overall_status := x_return_status;
146 END IF;
147 END IF;
148
149 EXIT WHEN (i = p_agcv_tbl.LAST);
150 i := p_agcv_tbl.NEXT(i);
151 END LOOP;
152
153 END IF;
154 x_return_status := l_overall_status;
155
156
157 EXCEPTION
158 WHEN G_EXCEPTION_HALT_VALIDATION THEN
159 NULL;
160
161 WHEN OTHERS THEN
162 OKC_API.SET_MESSAGE(p_app_name => g_app_name
163 ,p_msg_name => g_unexpected_error
164 ,p_token1 => g_sqlcode_token
165 ,p_token1_value => sqlcode
166 ,p_token2 => g_sqlerrm_token
167 ,p_token2_value => sqlerrm);
168 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
169
170 END create_acc_ccid;
171
172
173 PROCEDURE update_acc_group(p_api_version IN NUMBER,
174 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
175 x_return_status OUT NOCOPY VARCHAR2,
176 x_msg_count OUT NOCOPY NUMBER,
177 x_msg_data OUT NOCOPY VARCHAR2,
178 p_agcv_rec IN agcv_rec_type,
179 p_agbv_tbl IN agbv_tbl_type,
180 x_agcv_rec OUT NOCOPY agcv_rec_type,
181 x_agbv_tbl OUT NOCOPY agbv_tbl_type)
182
183 IS
184
185 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
186
187 BEGIN
188 -- Update the master
189 update_acc_ccid(p_api_version => p_api_version
190 ,p_init_msg_list => p_init_msg_list
191 ,x_return_status => x_return_status
192 ,x_msg_count => x_msg_count
193 ,x_msg_data => x_msg_data
194 ,p_agcv_rec => p_agcv_rec
195 ,x_agcv_rec => x_agcv_rec);
196
197 IF (x_return_status = OKC_API.G_RET_STS_SUCCESS) THEN
198
199 -- Update the detail
200 update_acc_bal(p_api_version => p_api_version
201 ,p_init_msg_list => p_init_msg_list
202 ,x_return_status => x_return_status
203 ,x_msg_count => x_msg_count
204 ,x_msg_data => x_msg_data
205 ,p_agbv_tbl => p_agbv_tbl
206 ,x_agbv_tbl => x_agbv_tbl);
207
208 END IF;
209
210 EXCEPTION
211 WHEN G_EXCEPTION_HALT_VALIDATION THEN
212 NULL;
213
214 WHEN OTHERS THEN
215 OKC_API.SET_MESSAGE(p_app_name => g_app_name
216 ,p_msg_name => g_unexpected_error
217 ,p_token1 => g_sqlcode_token
218 ,p_token1_value => sqlcode
219 ,p_token2 => g_sqlerrm_token
220 ,p_token2_value => sqlerrm);
221 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
222
223 END update_acc_group;
224
225
226 PROCEDURE validate_acc_group(
227 p_api_version IN NUMBER
228 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
229 ,x_return_status OUT NOCOPY VARCHAR2
230 ,x_msg_count OUT NOCOPY NUMBER
231 ,x_msg_data OUT NOCOPY VARCHAR2
232 ,p_agcv_rec IN agcv_rec_type
233 ,p_agbv_tbl IN agbv_tbl_type) IS
234
235 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
236 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
237
238 BEGIN
239
240 -- Validate the master
241 validate_acc_ccid(p_api_version => p_api_version
242 ,p_init_msg_list => p_init_msg_list
243 ,x_return_status => x_return_status
244 ,x_msg_count => x_msg_count
245 ,x_msg_data => x_msg_data
246 ,p_agcv_rec => p_agcv_rec);
247
248 IF x_return_status <> Okc_Api.G_RET_STS_SUCCESS THEN
249 IF l_overall_status <> Okc_Api.G_RET_STS_UNEXP_ERROR THEN
250 l_overall_status := x_return_status;
251 END IF;
252 END IF;
253
254 -- Validate the detail
255 validate_acc_bal(p_api_version => p_api_version
256 ,p_init_msg_list => p_init_msg_list
257 ,x_return_status => x_return_status
258 ,x_msg_count => x_msg_count
259 ,x_msg_data => x_msg_data
260 ,p_agbv_tbl => p_agbv_tbl);
261
262 IF x_return_status <> Okc_Api.G_RET_STS_SUCCESS THEN
263 IF l_overall_status <> Okc_Api.G_RET_STS_UNEXP_ERROR THEN
264 l_overall_status := x_return_status;
265 END IF;
266 END IF;
267
268 x_return_status := l_overall_status;
269
270 EXCEPTION
271 WHEN G_EXCEPTION_HALT_VALIDATION THEN
272 NULL;
273 WHEN OTHERS THEN
274 OKC_API.SET_MESSAGE(p_app_name => g_app_name
275 ,p_msg_name => g_unexpected_error
276 ,p_token1 => g_sqlcode_token
277 ,p_token1_value => sqlcode
278 ,p_token2 => g_sqlerrm_token
279 ,p_token2_value => sqlerrm);
280 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
281
282 END validate_acc_group;
283
284
285 PROCEDURE lock_acc_ccid(p_api_version IN NUMBER
286 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
287 ,x_return_status OUT NOCOPY VARCHAR2
288 ,x_msg_count OUT NOCOPY NUMBER
289 ,x_msg_data OUT NOCOPY VARCHAR2
290 ,p_agcv_rec IN agcv_rec_type) IS
291
292 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
293
294 BEGIN
295
296 okl_agc_pvt.lock_row(p_api_version => p_api_version
297 ,p_init_msg_list => p_init_msg_list
298 ,x_return_status => x_return_status
299 ,x_msg_count => x_msg_count
300 ,x_msg_data => x_msg_data
301 ,p_agcv_rec => p_agcv_rec);
302
303 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
304 RAISE G_EXCEPTION_HALT_VALIDATION;
305 ELSE
306 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
307 l_return_status := x_return_status;
308 END IF;
309 END IF;
310
311 EXCEPTION
312 WHEN G_EXCEPTION_HALT_VALIDATION THEN
313 NULL;
314 WHEN OTHERS THEN
315 OKC_API.SET_MESSAGE(p_app_name => g_app_name
316 ,p_msg_name => g_unexpected_error
317 ,p_token1 => g_sqlcode_token
318 ,p_token1_value => sqlcode
319 ,p_token2 => g_sqlerrm_token
320 ,p_token2_value => sqlerrm);
321 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
322 END lock_acc_ccid;
323
324
325 PROCEDURE lock_acc_ccid(
326 p_api_version IN NUMBER
327 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
328 ,x_return_status OUT NOCOPY VARCHAR2
329 ,x_msg_count OUT NOCOPY NUMBER
330 ,x_msg_data OUT NOCOPY VARCHAR2
331 ,p_agcv_tbl IN agcv_tbl_type) IS
332
333 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
334 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
335 i NUMBER := 0;
336
337 BEGIN
338
339 Okc_Api.init_msg_list(p_init_msg_list);
340 -- Make sure PL/SQL table has records in it before passing
341 IF (p_agcv_tbl.COUNT > 0) THEN
342 i := p_agcv_tbl.FIRST;
343 LOOP
344 lock_acc_ccid(p_api_version => p_api_version,
345 p_init_msg_list => Okc_Api.G_FALSE,
346 x_return_status => x_return_status,
347 x_msg_count => x_msg_count,
348 x_msg_data => x_msg_data,
349 p_agcv_rec => p_agcv_tbl(i));
350
351 -- store the highest degree of error
352 IF x_return_status <> Okc_Api.G_RET_STS_SUCCESS THEN
353 IF l_overall_status <> Okc_Api.G_RET_STS_UNEXP_ERROR THEN
354 l_overall_status := x_return_status;
355 END IF;
356 END IF;
357
358 EXIT WHEN (i = p_agcv_tbl.LAST);
359 i := p_agcv_tbl.NEXT(i);
360 END LOOP;
361
362 END IF;
363
364 x_return_status := l_overall_status;
365
366 EXCEPTION
367 WHEN G_EXCEPTION_HALT_VALIDATION THEN
368 NULL;
369 WHEN OTHERS THEN
370 OKC_API.SET_MESSAGE(p_app_name => g_app_name
371 ,p_msg_name => g_unexpected_error
372 ,p_token1 => g_sqlcode_token
373 ,p_token1_value => sqlcode
374 ,p_token2 => g_sqlerrm_token
375 ,p_token2_value => sqlerrm);
376 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
377
378 END lock_acc_ccid;
379
380
381 PROCEDURE update_acc_ccid(p_api_version IN NUMBER
382 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
383 ,x_return_status OUT NOCOPY VARCHAR2
384 ,x_msg_count OUT NOCOPY NUMBER
385 ,x_msg_data OUT NOCOPY VARCHAR2
386 ,p_agcv_rec IN agcv_rec_type
387 ,x_agcv_rec OUT NOCOPY agcv_rec_type) IS
388
389 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
390
391 BEGIN
392
393 okl_agc_pvt.update_row(p_api_version => p_api_version
394 ,p_init_msg_list => p_init_msg_list
395 ,x_return_status => x_return_status
396 ,x_msg_count => x_msg_count
397 ,x_msg_data => x_msg_data
398 ,p_agcv_rec => p_agcv_rec
399 ,x_agcv_rec => x_agcv_rec);
400
401 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
402 RAISE G_EXCEPTION_HALT_VALIDATION;
403 ELSE
404 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
405 l_return_status := x_return_status;
406 END IF;
407 END IF;
408 EXCEPTION
409 WHEN G_EXCEPTION_HALT_VALIDATION THEN
410 NULL;
411 WHEN OTHERS THEN
412 OKC_API.SET_MESSAGE(p_app_name => g_app_name
413 ,p_msg_name => g_unexpected_error
414 ,p_token1 => g_sqlcode_token
415 ,p_token1_value => sqlcode
416 ,p_token2 => g_sqlerrm_token
417 ,p_token2_value => sqlerrm);
418 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
419 END update_acc_ccid;
420
421
422 PROCEDURE update_acc_ccid(p_api_version IN NUMBER
423 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
424 ,x_return_status OUT NOCOPY VARCHAR2
425 ,x_msg_count OUT NOCOPY NUMBER
426 ,x_msg_data OUT NOCOPY VARCHAR2
427 ,p_agcv_tbl IN agcv_tbl_type
428 ,x_agcv_tbl OUT NOCOPY agcv_tbl_type) IS
429
430 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
431 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
432 i NUMBER := 0;
433
434 BEGIN
435
436 Okc_Api.init_msg_list(p_init_msg_list);
437 -- Make sure PL/SQL table has records in it before passing
438 IF (p_agcv_tbl.COUNT > 0) THEN
439 i := p_agcv_tbl.FIRST;
440 LOOP
441 update_acc_ccid(p_api_version => p_api_version,
442 p_init_msg_list => Okc_Api.G_FALSE,
443 x_return_status => x_return_status,
444 x_msg_count => x_msg_count,
445 x_msg_data => x_msg_data,
446 p_agcv_rec => p_agcv_tbl(i),
447 x_agcv_rec => x_agcv_tbl(i));
448
449 -- store the highest degree of error
450 IF x_return_status <> Okc_Api.G_RET_STS_SUCCESS THEN
451 IF l_overall_status <> Okc_Api.G_RET_STS_UNEXP_ERROR THEN
452 l_overall_status := x_return_status;
453 END IF;
454 END IF;
455
456 EXIT WHEN (i = p_agcv_tbl.LAST);
457 i := p_agcv_tbl.NEXT(i);
458 END LOOP;
459 END IF;
460
461 x_return_status := l_overall_status;
462
463
464 EXCEPTION
465 WHEN G_EXCEPTION_HALT_VALIDATION THEN
466 NULL;
467 WHEN OTHERS THEN
468 OKC_API.SET_MESSAGE(p_app_name => g_app_name
469 ,p_msg_name => g_unexpected_error
470 ,p_token1 => g_sqlcode_token
471 ,p_token1_value => sqlcode
472 ,p_token2 => g_sqlerrm_token
473 ,p_token2_value => sqlerrm);
474 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
475 END update_acc_ccid;
476
477
478 PROCEDURE delete_acc_ccid(p_api_version IN NUMBER
479 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
480 ,x_return_status OUT NOCOPY VARCHAR2
481 ,x_msg_count OUT NOCOPY NUMBER
482 ,x_msg_data OUT NOCOPY VARCHAR2
483 ,p_agcv_rec IN agcv_rec_type) IS
484
485 i NUMBER :=0;
486 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
487 l_agbv_tbl agbv_tbl_type;
488
489 CURSOR agb_csr IS
490 SELECT agb.id
491 FROM OKL_ACC_GROUP_BAL agb
492 WHERE agb.acc_group_id = p_agcv_rec.id;
493
494 BEGIN
495 FOR agb_rec IN agb_csr
496 LOOP
497 i := i + 1;
498 l_agbv_tbl(i).id := agb_rec.id;
499 END LOOP;
500
501
502 delete_acc_bal( p_api_version => p_api_version
503 ,p_init_msg_list => p_init_msg_list
504 ,x_return_status => x_return_status
505 ,x_msg_count => x_msg_count
506 ,x_msg_data => x_msg_data
507 ,p_agbv_tbl => l_agbv_tbl);
508
509
510 IF x_return_status = OKC_API.G_RET_STS_SUCCESS THEN
511 okl_agc_pvt.delete_row(p_api_version => p_api_version
512 ,p_init_msg_list => p_init_msg_list
513 ,x_return_status => x_return_status
514 ,x_msg_count => x_msg_count
515 ,x_msg_data => x_msg_data
516 ,p_agcv_rec => p_agcv_rec);
517
518 END IF;
519 EXCEPTION
520 WHEN G_EXCEPTION_HALT_VALIDATION THEN
521 NULL;
522 WHEN OTHERS THEN
523 OKC_API.SET_MESSAGE(p_app_name => g_app_name
524 ,p_msg_name => g_unexpected_error
525 ,p_token1 => g_sqlcode_token
526 ,p_token1_value => sqlcode
527 ,p_token2 => g_sqlerrm_token
528 ,p_token2_value => sqlerrm);
529
530 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
531
532 END delete_acc_ccid;
533
534
535 PROCEDURE delete_acc_ccid(p_api_version IN NUMBER
536 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
537 ,x_return_status OUT NOCOPY VARCHAR2
538 ,x_msg_count OUT NOCOPY NUMBER
539 ,x_msg_data OUT NOCOPY VARCHAR2
540 ,p_agcv_tbl IN agcv_tbl_type) IS
541
542 i NUMBER :=0;
543 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
544 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
545
546 BEGIN
547 --Initialize the return status
548 x_return_status := OKC_API.G_RET_STS_SUCCESS;
549 IF (p_agcv_tbl.COUNT > 0) THEN
550 i := p_agcv_tbl.FIRST;
551 LOOP
552 delete_acc_ccid( p_api_version => p_api_version
553 ,p_init_msg_list => p_init_msg_list
554 ,x_return_status => x_return_status
555 ,x_msg_count => x_msg_count
556 ,x_msg_data => x_msg_data
557 ,p_agcv_rec => p_agcv_tbl(i));
558
559 IF x_return_status <> Okc_Api.G_RET_STS_SUCCESS THEN
560 IF l_overall_status <> Okc_Api.G_RET_STS_UNEXP_ERROR THEN
561 l_overall_status := x_return_status;
562 END IF;
563 END IF;
564
565 EXIT WHEN (i = p_agcv_tbl.LAST);
566 i := p_agcv_tbl.NEXT(i);
567 END LOOP;
568
569 END IF;
570
571 x_return_status := l_overall_status;
572
573 EXCEPTION
574
575 WHEN G_EXCEPTION_HALT_VALIDATION THEN
576 NULL;
577 WHEN OTHERS THEN
578 OKC_API.SET_MESSAGE(p_app_name => g_app_name
579 ,p_msg_name => g_unexpected_error
580 ,p_token1 => g_sqlcode_token
581 ,p_token1_value => sqlcode
582 ,p_token2 => g_sqlerrm_token
583 ,p_token2_value => sqlerrm);
584 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
585 END delete_acc_ccid;
586
587
588 PROCEDURE validate_acc_ccid(p_api_version IN NUMBER
589 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
590 ,x_return_status OUT NOCOPY VARCHAR2
591 ,x_msg_count OUT NOCOPY NUMBER
592 ,x_msg_data OUT NOCOPY VARCHAR2
593 ,p_agcv_rec IN agcv_rec_type) IS
594
595 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
596
597 BEGIN
598
599 okl_agc_pvt.validate_row(p_api_version => p_api_version
600 ,p_init_msg_list => p_init_msg_list
601 ,x_return_status => x_return_status
602 ,x_msg_count => x_msg_count
603 ,x_msg_data => x_msg_data
604 ,p_agcv_rec => p_agcv_rec);
605
606 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
607 RAISE G_EXCEPTION_HALT_VALIDATION;
608 ELSE
609 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
610 l_return_status := x_return_status;
611 END IF;
612 END IF;
613
614 EXCEPTION
615 WHEN G_EXCEPTION_HALT_VALIDATION THEN
616 NULL;
617 WHEN OTHERS THEN
618 OKC_API.SET_MESSAGE(p_app_name => g_app_name
619 ,p_msg_name => g_unexpected_error
620 ,p_token1 => g_sqlcode_token
621 ,p_token1_value => sqlcode
622 ,p_token2 => g_sqlerrm_token
623 ,p_token2_value => sqlerrm);
624 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
625 END validate_acc_ccid;
626
627 PROCEDURE validate_acc_ccid(p_api_version IN NUMBER,
628 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
629 x_return_status OUT NOCOPY VARCHAR2,
630 x_msg_count OUT NOCOPY NUMBER,
631 x_msg_data OUT NOCOPY VARCHAR2,
632 p_agcv_tbl IN agcv_tbl_type)
633
634 IS
635
636 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
637 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
638 i NUMBER := 0;
639
640 BEGIN
641
642 Okc_Api.init_msg_list(p_init_msg_list);
643 -- Make sure PL/SQL table has records in it before passing
644 IF (p_agcv_tbl.COUNT > 0) THEN
645 i := p_agcv_tbl.FIRST;
646 LOOP
647 validate_acc_ccid(p_api_version => p_api_version,
648 p_init_msg_list => Okc_Api.G_FALSE,
649 x_return_status => x_return_status,
650 x_msg_count => x_msg_count,
651 x_msg_data => x_msg_data,
652 p_agcv_rec => p_agcv_tbl(i));
653
654 -- store the highest degree of error
655 IF x_return_status <> Okc_Api.G_RET_STS_SUCCESS THEN
656 IF l_overall_status <> Okc_Api.G_RET_STS_UNEXP_ERROR THEN
657 l_overall_status := x_return_status;
658 END IF;
659 END IF;
660
661 EXIT WHEN (i = p_agcv_tbl.LAST);
662 i := p_agcv_tbl.NEXT(i);
663 END LOOP;
664
665 END IF;
666 x_return_status := l_overall_status;
667
668
669 EXCEPTION
670 WHEN G_EXCEPTION_HALT_VALIDATION THEN
671 NULL;
672 WHEN OTHERS THEN
673 OKC_API.SET_MESSAGE(p_app_name => g_app_name
674 ,p_msg_name => g_unexpected_error
675 ,p_token1 => g_sqlcode_token
676 ,p_token1_value => sqlcode
677 ,p_token2 => g_sqlerrm_token
678 ,p_token2_value => sqlerrm);
679 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
680 END validate_acc_ccid;
681
682
683 PROCEDURE create_acc_bal(p_api_version IN NUMBER
684 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
685 ,x_return_status OUT NOCOPY VARCHAR2
686 ,x_msg_count OUT NOCOPY NUMBER
687 ,x_msg_data OUT NOCOPY VARCHAR2
688 ,p_agbv_rec IN agbv_rec_type
689 ,x_agbv_rec OUT NOCOPY agbv_rec_type) IS
690
691 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
692
693 BEGIN
694
695 okl_agb_pvt.insert_row(p_api_version => p_api_version
696 ,p_init_msg_list => p_init_msg_list
697 ,x_return_status => x_return_status
698 ,x_msg_count => x_msg_count
699 ,x_msg_data => x_msg_data
700 ,p_agbv_rec => p_agbv_rec
701 ,x_agbv_rec => x_agbv_rec);
702
703 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
704 RAISE G_EXCEPTION_HALT_VALIDATION;
705 ELSE
706 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
707 l_return_status := x_return_status;
708 END IF;
709 END IF;
710 EXCEPTION
711 WHEN G_EXCEPTION_HALT_VALIDATION THEN
712 NULL;
713 WHEN OTHERS THEN
714 OKC_API.SET_MESSAGE(p_app_name => g_app_name
715 ,p_msg_name => g_unexpected_error
716 ,p_token1 => g_sqlcode_token
717 ,p_token1_value => sqlcode
718 ,p_token2 => g_sqlerrm_token
719 ,p_token2_value => sqlerrm);
720 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
721
722 END create_acc_bal;
723
724 PROCEDURE create_acc_bal(p_api_version IN NUMBER
725 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
726 ,x_return_status OUT NOCOPY VARCHAR2
727 ,x_msg_count OUT NOCOPY NUMBER
728 ,x_msg_data OUT NOCOPY VARCHAR2
729 ,p_agbv_tbl IN agbv_tbl_type
730 ,x_agbv_tbl OUT NOCOPY agbv_tbl_type) IS
731
732 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
733 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
734 i NUMBER := 0;
735
736 BEGIN
737
738 OKC_API.init_msg_list(p_init_msg_list);
739 -- Make sure PL/SQL table has records in it before passing
740 IF (p_agbv_tbl.COUNT > 0) THEN
741 i := p_agbv_tbl.FIRST;
742 LOOP
743 create_acc_bal(p_api_version => p_api_version,
744 p_init_msg_list => OKC_API.G_FALSE,
745 x_return_status => x_return_status,
746 x_msg_count => x_msg_count,
747 x_msg_data => x_msg_data,
748 p_agbv_rec => p_agbv_tbl(i),
749 x_agbv_rec => x_agbv_tbl(i));
750
751 -- store the highest degree of error
752 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
753 IF l_overall_status <> OKC_API.G_RET_STS_UNEXP_ERROR THEN
754 l_overall_status := x_return_status;
755 END IF;
756 END IF;
757
758 EXIT WHEN (i = p_agbv_tbl.LAST);
759 i := p_agbv_tbl.NEXT(i);
760 END LOOP;
761
762 END IF;
763
764 x_return_status := l_overall_status;
765
766 EXCEPTION
767 WHEN G_EXCEPTION_HALT_VALIDATION THEN
768 NULL;
769 WHEN OTHERS THEN
770 OKC_API.SET_MESSAGE(p_app_name => g_app_name
771 ,p_msg_name => g_unexpected_error
772 ,p_token1 => g_sqlcode_token
773 ,p_token1_value => sqlcode
774 ,p_token2 => g_sqlerrm_token
775 ,p_token2_value => sqlerrm);
776 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
777
778 END create_acc_bal;
779
780 PROCEDURE lock_acc_bal(
781 p_api_version IN NUMBER
782 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
783 ,x_return_status OUT NOCOPY VARCHAR2
784 ,x_msg_count OUT NOCOPY NUMBER
785 ,x_msg_data OUT NOCOPY VARCHAR2
786 ,p_agbv_rec IN agbv_rec_type) IS
787 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
788 BEGIN
789 okl_agb_pvt.lock_row(
790 p_api_version => p_api_version
791 ,p_init_msg_list => p_init_msg_list
792 ,x_return_status => x_return_status
793 ,x_msg_count => x_msg_count
794 ,x_msg_data => x_msg_data
795 ,p_agbv_rec => p_agbv_rec
796 );
797 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
798 RAISE G_EXCEPTION_HALT_VALIDATION;
799 ELSE
800 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
801 l_return_status := x_return_status;
802 END IF;
803 END IF;
804 EXCEPTION
805 WHEN G_EXCEPTION_HALT_VALIDATION THEN
806 NULL;
807 WHEN OTHERS THEN
808 OKC_API.SET_MESSAGE(p_app_name => g_app_name
809 ,p_msg_name => g_unexpected_error
810 ,p_token1 => g_sqlcode_token
811 ,p_token1_value => sqlcode
812 ,p_token2 => g_sqlerrm_token
813 ,p_token2_value => sqlerrm);
814 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
815
816 END lock_acc_bal;
817
818 PROCEDURE lock_acc_bal(
819 p_api_version IN NUMBER
820 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
821 ,x_return_status OUT NOCOPY VARCHAR2
822 ,x_msg_count OUT NOCOPY NUMBER
823 ,x_msg_data OUT NOCOPY VARCHAR2
824 ,p_agbv_tbl IN agbv_tbl_type) IS
825 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
826 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
827 i NUMBER := 0;
828
829 BEGIN
830
831 OKC_API.init_msg_list(p_init_msg_list);
832 -- Make sure PL/SQL table has records in it before passing
833 IF (p_agbv_tbl.COUNT > 0) THEN
834 i := p_agbv_tbl.FIRST;
835 LOOP
836 lock_acc_bal(
837 p_api_version => p_api_version,
838 p_init_msg_list => OKC_API.G_FALSE,
839 x_return_status => x_return_status,
840 x_msg_count => x_msg_count,
841 x_msg_data => x_msg_data,
842 p_agbv_rec => p_agbv_tbl(i));
843
844 -- store the highest degree of error
845 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
846 IF l_overall_status <> OKC_API.G_RET_STS_UNEXP_ERROR THEN
847 l_overall_status := x_return_status;
848 END IF;
849 END IF;
850
851 EXIT WHEN (i = p_agbv_tbl.LAST);
852 i := p_agbv_tbl.NEXT(i);
853
854 END LOOP;
855
856 END IF;
857 x_return_status := l_overall_status;
858
859
860 EXCEPTION
861 WHEN G_EXCEPTION_HALT_VALIDATION THEN
862 NULL;
863 WHEN OTHERS THEN
864 OKC_API.SET_MESSAGE(p_app_name => g_app_name
865 ,p_msg_name => g_unexpected_error
866 ,p_token1 => g_sqlcode_token
867 ,p_token1_value => sqlcode
868 ,p_token2 => g_sqlerrm_token
869 ,p_token2_value => sqlerrm);
870 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
871 END lock_acc_bal;
872
873 PROCEDURE update_acc_bal(
874 p_api_version IN NUMBER
875 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
876 ,x_return_status OUT NOCOPY VARCHAR2
877 ,x_msg_count OUT NOCOPY NUMBER
878 ,x_msg_data OUT NOCOPY VARCHAR2
879 ,p_agbv_rec IN agbv_rec_type
880 ,x_agbv_rec OUT NOCOPY agbv_rec_type) IS
881 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
882
883 BEGIN
884 okl_agb_pvt.update_row(
885 p_api_version => p_api_version
886 ,p_init_msg_list => p_init_msg_list
887 ,x_return_status => x_return_status
888 ,x_msg_count => x_msg_count
889 ,x_msg_data => x_msg_data
890 ,p_agbv_rec => p_agbv_rec
891 ,x_agbv_rec => x_agbv_rec
892 );
893 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
894 RAISE G_EXCEPTION_HALT_VALIDATION;
895 ELSE
896 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
897 l_return_status := x_return_status;
898 END IF;
899 END IF;
900 EXCEPTION
901 WHEN G_EXCEPTION_HALT_VALIDATION THEN
902 NULL;
903 WHEN OTHERS THEN
904 OKC_API.SET_MESSAGE(p_app_name => g_app_name
905 ,p_msg_name => g_unexpected_error
906 ,p_token1 => g_sqlcode_token
907 ,p_token1_value => sqlcode
908 ,p_token2 => g_sqlerrm_token
909 ,p_token2_value => sqlerrm);
910 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
911 END update_acc_bal;
912
913 PROCEDURE update_acc_bal(
914 p_api_version IN NUMBER
915 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
916 ,x_return_status OUT NOCOPY VARCHAR2
917 ,x_msg_count OUT NOCOPY NUMBER
918 ,x_msg_data OUT NOCOPY VARCHAR2
919 ,p_agbv_tbl IN agbv_tbl_type
920 ,x_agbv_tbl OUT NOCOPY agbv_tbl_type) IS
921
922 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
923 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
924 i NUMBER := 0;
925
926 BEGIN
927
928 OKC_API.init_msg_list(p_init_msg_list);
929 -- Make sure PL/SQL table has records in it before passing
930 IF (p_agbv_tbl.COUNT > 0) THEN
931 i := p_agbv_tbl.FIRST;
932 LOOP
933 update_acc_bal(
934 p_api_version => p_api_version,
935 p_init_msg_list => OKC_API.G_FALSE,
936 x_return_status => x_return_status,
937 x_msg_count => x_msg_count,
938 x_msg_data => x_msg_data,
939 p_agbv_rec => p_agbv_tbl(i),
940 x_agbv_rec => x_agbv_tbl(i));
941
942 -- store the highest degree of error
943 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
944 IF l_overall_status <> OKC_API.G_RET_STS_UNEXP_ERROR THEN
945 l_overall_status := x_return_status;
946 END IF;
947 END IF;
948
949 EXIT WHEN (i = p_agbv_tbl.LAST);
950 i := p_agbv_tbl.NEXT(i);
951 END LOOP;
952
953 END IF;
954
955 x_return_status := l_overall_status;
956
957
958 EXCEPTION
959 WHEN G_EXCEPTION_HALT_VALIDATION THEN
960 NULL;
961 WHEN OTHERS THEN
962 OKC_API.SET_MESSAGE(p_app_name => g_app_name
963 ,p_msg_name => g_unexpected_error
964 ,p_token1 => g_sqlcode_token
965 ,p_token1_value => sqlcode
966 ,p_token2 => g_sqlerrm_token
967 ,p_token2_value => sqlerrm);
968 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
969 END update_acc_bal;
970
971 PROCEDURE delete_acc_bal(
972 p_api_version IN NUMBER
973 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
974 ,x_return_status OUT NOCOPY VARCHAR2
975 ,x_msg_count OUT NOCOPY NUMBER
976 ,x_msg_data OUT NOCOPY VARCHAR2
977 ,p_agbv_rec IN agbv_rec_type) IS
978 i NUMBER :=0;
979 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
980 BEGIN
981 okl_agb_pvt.delete_row(
982 p_api_version => p_api_version
983 ,p_init_msg_list => p_init_msg_list
984 ,x_return_status => x_return_status
985 ,x_msg_count => x_msg_count
986 ,x_msg_data => x_msg_data
987 ,p_agbv_rec => p_agbv_rec);
988 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
989 RAISE G_EXCEPTION_HALT_VALIDATION;
990 ELSE
991 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
992 l_return_status := x_return_status;
993 END IF;
994 END IF;
995 EXCEPTION
996 WHEN G_EXCEPTION_HALT_VALIDATION THEN
997 NULL;
998 WHEN OTHERS THEN
999 OKC_API.SET_MESSAGE(p_app_name => g_app_name
1000 ,p_msg_name => g_unexpected_error
1001 ,p_token1 => g_sqlcode_token
1002 ,p_token1_value => sqlcode
1003 ,p_token2 => g_sqlerrm_token
1004 ,p_token2_value => sqlerrm);
1005 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1006 END delete_acc_bal;
1007
1008 PROCEDURE delete_acc_bal(
1009 p_api_version IN NUMBER
1010 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1011 ,x_return_status OUT NOCOPY VARCHAR2
1012 ,x_msg_count OUT NOCOPY NUMBER
1013 ,x_msg_data OUT NOCOPY VARCHAR2
1014 ,p_agbv_tbl IN agbv_tbl_type) IS
1015
1016 i NUMBER :=0;
1017 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1018 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1019
1020 BEGIN
1021 --Initialize the return status
1022 x_return_status := OKC_API.G_RET_STS_SUCCESS;
1023 IF (p_agbv_tbl.COUNT > 0) THEN
1024 i := p_agbv_tbl.FIRST;
1025 LOOP
1026 delete_acc_bal(
1027 p_api_version => p_api_version
1028 ,p_init_msg_list => p_init_msg_list
1029 ,x_return_status => x_return_status
1030 ,x_msg_count => x_msg_count
1031 ,x_msg_data => x_msg_data
1032 ,p_agbv_rec => p_agbv_tbl(i));
1033
1034 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
1035 IF l_overall_status <> OKC_API.G_RET_STS_UNEXP_ERROR THEN
1036 l_overall_status := x_return_status;
1037 END IF;
1038 END IF;
1039
1040 EXIT WHEN (i = p_agbv_tbl.LAST);
1041 i := p_agbv_tbl.NEXT(i);
1042 END LOOP;
1043
1044 END IF;
1045
1046 x_return_status := l_overall_status;
1047 EXCEPTION
1048 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1049 NULL;
1050 WHEN OTHERS THEN
1051 OKC_API.SET_MESSAGE(p_app_name => g_app_name
1052 ,p_msg_name => g_unexpected_error
1053 ,p_token1 => g_sqlcode_token
1054 ,p_token1_value => sqlcode
1055 ,p_token2 => g_sqlerrm_token
1056 ,p_token2_value => sqlerrm);
1057 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1058 END delete_acc_bal;
1059
1060 PROCEDURE validate_acc_bal(
1061 p_api_version IN NUMBER
1062 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1063 ,x_return_status OUT NOCOPY VARCHAR2
1064 ,x_msg_count OUT NOCOPY NUMBER
1065 ,x_msg_data OUT NOCOPY VARCHAR2
1066 ,p_agbv_rec IN agbv_rec_type) IS
1067 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1068 BEGIN
1069 okl_agb_pvt.validate_row(
1070 p_api_version => p_api_version
1071 ,p_init_msg_list => p_init_msg_list
1072 ,x_return_status => x_return_status
1073 ,x_msg_count => x_msg_count
1074 ,x_msg_data => x_msg_data
1075 ,p_agbv_rec => p_agbv_rec
1076 );
1077 IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
1078 RAISE G_EXCEPTION_HALT_VALIDATION;
1079 ELSE
1080 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
1081 l_return_status := x_return_status;
1082 END IF;
1083 END IF;
1084 EXCEPTION
1085 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1086 NULL;
1087 WHEN OTHERS THEN
1088 OKC_API.SET_MESSAGE(p_app_name => g_app_name
1089 ,p_msg_name => g_unexpected_error
1090 ,p_token1 => g_sqlcode_token
1091 ,p_token1_value => sqlcode
1092 ,p_token2 => g_sqlerrm_token
1093 ,p_token2_value => sqlerrm);
1094 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1095 END validate_acc_bal;
1096
1097 PROCEDURE validate_acc_bal(
1098 p_api_version IN NUMBER
1099 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1100 ,x_return_status OUT NOCOPY VARCHAR2
1101 ,x_msg_count OUT NOCOPY NUMBER
1102 ,x_msg_data OUT NOCOPY VARCHAR2
1103 ,p_agbv_tbl IN agbv_tbl_type) IS
1104
1105 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1106 l_overall_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1107 i NUMBER := 0;
1108
1109 BEGIN
1110
1111 OKC_API.init_msg_list(p_init_msg_list);
1112 -- Make sure PL/SQL table has records in it before passing
1113 IF (p_agbv_tbl.COUNT > 0) THEN
1114 i := p_agbv_tbl.FIRST;
1115 LOOP
1116 validate_acc_bal(
1117 p_api_version => p_api_version,
1118 p_init_msg_list => OKC_API.G_FALSE,
1119 x_return_status => x_return_status,
1120 x_msg_count => x_msg_count,
1121 x_msg_data => x_msg_data,
1122 p_agbv_rec => p_agbv_tbl(i));
1123 -- store the highest degree of error
1124 IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
1125 IF l_overall_status <> OKC_API.G_RET_STS_UNEXP_ERROR THEN
1126 l_overall_status := x_return_status;
1127 END IF;
1128 END IF;
1129
1130 EXIT WHEN (i = p_agbv_tbl.LAST);
1131 i := p_agbv_tbl.NEXT(i);
1132 END LOOP;
1133
1134 x_return_status := l_overall_status;
1135
1136 END IF;
1137
1138
1139 EXCEPTION
1140 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1141 NULL;
1142 WHEN OTHERS THEN
1143 OKC_API.SET_MESSAGE(p_app_name => g_app_name
1144 ,p_msg_name => g_unexpected_error
1145 ,p_token1 => g_sqlcode_token
1146 ,p_token1_value => sqlcode
1147 ,p_token2 => g_sqlerrm_token
1148 ,p_token2_value => sqlerrm);
1149 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1150 END validate_acc_bal;
1151
1152 END OKL_ACC_GROUP_PVT;