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