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