DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKC_OUTCOME_PVT

Source


1 package body okc_outcome_pvt as
2 /* $Header: OKCCOCEB.pls 120.0 2005/05/25 19:28:25 appldev noship $ */
3 
4 	l_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5 
6 PROCEDURE add_language IS
7 Begin
8 	okc_oce_pvt.add_language;
9 End;
10 
11 --Object type procedure for insert
12 PROCEDURE create_outcomes_args(
13     p_api_version	    IN NUMBER,
14     p_init_msg_list         IN VARCHAR2 ,
15     x_return_status         OUT NOCOPY VARCHAR2,
16     x_msg_count             OUT NOCOPY NUMBER,
17     x_msg_data              OUT NOCOPY VARCHAR2,
18     p_ocev_rec		    IN ocev_rec_type,
19     p_oatv_tbl              IN oatv_tbl_type,
20     x_ocev_rec              OUT NOCOPY ocev_rec_type,
21     x_oatv_tbl              OUT NOCOPY oatv_tbl_type) IS
22 
23     l_return_status         VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
24     l_ocev_rec              ocev_rec_type;
25     l_oatv_tbl              oatv_tbl_type := p_oatv_tbl;
26     i			    NUMBER;
27 begin
28     --Populate the Master
29     create_outcome(
30     	p_api_version,
31     	p_init_msg_list,
32     	x_return_status,
33     	x_msg_count,
34     	x_msg_data,
35     	p_ocev_rec,
36     	x_ocev_rec);
37     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
38       		raise G_EXCEPTION_HALT_VALIDATION;
39         ELSE
40       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
41          		l_return_status := x_return_status;
42         	END IF;
43     	END IF;
44 
45     -- Populate the foreign key for the detail
46     IF (l_oatv_tbl.COUNT > 0) THEN
47        i := l_oatv_tbl.FIRST;
48        LOOP
49           l_oatv_tbl(i).oce_id := x_ocev_rec.id;
50           EXIT WHEN (i = l_oatv_tbl.LAST);
51           i := l_oatv_tbl.NEXT(i);
52        END LOOP;
53     END IF;
54 
55     --Populate the detail
56     create_out_arg(
57     	p_api_version,
58     	p_init_msg_list,
59     	x_return_status,
60    	x_msg_count,
61     	x_msg_data,
62     	l_oatv_tbl,
63     	x_oatv_tbl);
64 	IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
65       		raise G_EXCEPTION_HALT_VALIDATION;
66         ELSE
67       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
68          		l_return_status := x_return_status;
69         	END IF;
70     	END IF;
71 
72 EXCEPTION
73     WHEN G_EXCEPTION_HALT_VALIDATION THEN
74 	Null;
75 
76    WHEN OTHERS THEN
77       OKC_API.set_message(p_app_name      => g_app_name,
78                           p_msg_name      => g_unexpected_error,
79                           p_token1        => g_sqlcode_token,
80                           p_token1_value  => sqlcode,
81                           p_token2        => g_sqlerrm_token,
82                           p_token2_value  => sqlerrm);
83       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
84 End create_outcomes_args;
85 
86 --Object type procedure for update
87 PROCEDURE update_outcomes_args(
88     p_api_version	    IN NUMBER,
89     p_init_msg_list         IN VARCHAR2 ,
90     x_return_status         OUT NOCOPY VARCHAR2,
91     x_msg_count             OUT NOCOPY NUMBER,
92     x_msg_data              OUT NOCOPY VARCHAR2,
93     p_ocev_rec		    IN ocev_rec_type,
94     p_oatv_tbl              IN oatv_tbl_type,
95     x_ocev_rec              OUT NOCOPY ocev_rec_type,
96     x_oatv_tbl              OUT NOCOPY oatv_tbl_type) IS
97     l_return_status         VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
98 begin
99     --Update the Master
100     update_outcome(
101     	p_api_version,
102     	p_init_msg_list,
103     	x_return_status,
104     	x_msg_count,
105     	x_msg_data,
106     	p_ocev_rec,
107     	x_ocev_rec);
108     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
109       		raise G_EXCEPTION_HALT_VALIDATION;
110         ELSE
111       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
112          		l_return_status := x_return_status;
113         	END IF;
114     	END IF;
115 
116     --Update the detail
117     update_out_arg(
118     p_api_version,
119     p_init_msg_list,
120     x_return_status,
121     x_msg_count,
122     x_msg_data,
123     p_oatv_tbl,
124     x_oatv_tbl);
125     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
126       		raise G_EXCEPTION_HALT_VALIDATION;
127         ELSE
128       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
129          		l_return_status := x_return_status;
130         	END IF;
131     	END IF;
132 
133 EXCEPTION
134    WHEN G_EXCEPTION_HALT_VALIDATION THEN
135 	Null;
136 
137    WHEN OTHERS THEN
138       OKC_API.set_message(p_app_name      => g_app_name,
139                           p_msg_name      => g_unexpected_error,
140                           p_token1        => g_sqlcode_token,
141                           p_token1_value  => sqlcode,
142                           p_token2        => g_sqlerrm_token,
143                           p_token2_value  => sqlerrm);
144       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
145 end update_outcomes_args;
146 
147 --Object type procedure for validate
148 PROCEDURE validate_outcomes_args(
149     p_api_version	    IN NUMBER,
150     p_init_msg_list         IN VARCHAR2 ,
151     x_return_status         OUT NOCOPY VARCHAR2,
152     x_msg_count             OUT NOCOPY NUMBER,
153     x_msg_data              OUT NOCOPY VARCHAR2,
154     p_ocev_rec		    IN ocev_rec_type,
155     p_oatv_tbl              IN oatv_tbl_type) IS
156     l_return_status         VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
157 begin
158     --Validate the Master
159     validate_outcome(
160     p_api_version,
161     p_init_msg_list,
162     x_return_status,
163     x_msg_count,
164     x_msg_data,
165     p_ocev_rec);
166     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
167       		raise G_EXCEPTION_HALT_VALIDATION;
168         ELSE
169       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
170          		l_return_status := x_return_status;
171         	END IF;
172     	END IF;
173 
174     --Validate the Detail
175     validate_out_arg(
176     p_api_version,
177     p_init_msg_list,
178     x_return_status,
179     x_msg_count,
180     x_msg_data,
181     p_oatv_tbl);
182     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
183       		raise G_EXCEPTION_HALT_VALIDATION;
184         ELSE
185       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
186          		l_return_status := x_return_status;
187         	END IF;
188     	END IF;
189 
190 EXCEPTION
191     WHEN G_EXCEPTION_HALT_VALIDATION THEN
192 	Null;
193 
194    WHEN OTHERS THEN
195       OKC_API.set_message(p_app_name      => g_app_name,
196                           p_msg_name      => g_unexpected_error,
197                           p_token1        => g_sqlcode_token,
198                           p_token1_value  => sqlcode,
199                           p_token2        => g_sqlerrm_token,
200                           p_token2_value  => sqlerrm);
201       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
202 End validate_outcomes_args;
203 
204 --Procedure to update minor version number
205 
206  Procedure  Update_Minor_Version(p_chr_id NUMBER) Is
207      l_api_version                NUMBER := 1;
208      l_init_msg_list              VARCHAR2(1) := 'F';
209      x_return_status              VARCHAR2(1);
210      x_msg_count                  NUMBER;
211      x_msg_data                   VARCHAR2(2000);
212      x_out_rec                    OKC_CVM_PVT.cvmv_rec_type;
213      l_cvmv_rec                   OKC_CVM_PVT.cvmv_rec_type;
214 	 l_return_status         VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
215  Begin
216     -- assign/populate contract header id
217      l_cvmv_rec.chr_id := p_chr_id;
218 
219      OKC_CVM_PVT.update_contract_version(
220           p_api_version     => l_api_version,
221           p_init_msg_list   => l_init_msg_list,
222           x_return_status   => x_return_status,
223           x_msg_count       => x_msg_count,
224           x_msg_data        => x_msg_data,
225           p_cvmv_rec        => l_cvmv_rec,
226           x_cvmv_rec        => x_out_rec);
227 	IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
228       		raise G_EXCEPTION_HALT_VALIDATION;
229         ELSE
230       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
231          		l_return_status := x_return_status;
232         	END IF;
233     	END IF;
234 
235 EXCEPTION
236     WHEN G_EXCEPTION_HALT_VALIDATION THEN
237 	Null;
238 
239    WHEN OTHERS THEN
240       OKC_API.set_message(p_app_name      => g_app_name,
241                           p_msg_name      => g_unexpected_error,
242                           p_token1        => g_sqlcode_token,
243                           p_token1_value  => sqlcode,
244                           p_token2        => g_sqlerrm_token,
245                           p_token2_value  => sqlerrm);
246       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
247  End update_minor_version;
248 
249 --Procedures for Outcomes
250 
251 PROCEDURE create_outcome(
252     p_api_version	    IN NUMBER,
253     p_init_msg_list         IN VARCHAR2 ,
254     x_return_status         OUT NOCOPY VARCHAR2,
255     x_msg_count             OUT NOCOPY NUMBER,
256     x_msg_data              OUT NOCOPY VARCHAR2,
257     p_ocev_rec		    IN ocev_rec_type,
258     x_ocev_rec              OUT NOCOPY ocev_rec_type) IS
259 begin
260     okc_oce_pvt.insert_row(
261     p_api_version,
262     p_init_msg_list,
263     x_return_status,
264     x_msg_count,
265     x_msg_data,
266     p_ocev_rec,
267     x_ocev_rec);
268 
269     --Update minor version
270     If (x_return_status = OKC_API.G_RET_STS_SUCCESS) Then
271     	update_minor_version(p_ocev_rec.dnz_chr_id);
272     End if;
273 End create_outcome;
274 
275 PROCEDURE create_outcome(
276     p_api_version	    IN NUMBER,
277     p_init_msg_list         IN VARCHAR2 ,
278     x_return_status         OUT NOCOPY VARCHAR2,
279     x_msg_count             OUT NOCOPY NUMBER,
280     x_msg_data              OUT NOCOPY VARCHAR2,
281     p_ocev_tbl		    IN ocev_tbl_type,
282     x_ocev_tbl              OUT NOCOPY ocev_tbl_type) IS
283 begin
284     okc_oce_pvt.insert_row(
285     p_api_version,
286     p_init_msg_list,
287     x_return_status,
288     x_msg_count,
289     x_msg_data,
290     p_ocev_tbl,
291     x_ocev_tbl);
292 End create_outcome;
293 
294 PROCEDURE lock_outcome(
295     p_api_version	    IN NUMBER,
296     p_init_msg_list         IN VARCHAR2 ,
297     x_return_status         OUT NOCOPY VARCHAR2,
298     x_msg_count             OUT NOCOPY NUMBER,
299     x_msg_data              OUT NOCOPY VARCHAR2,
300     p_ocev_rec		    IN ocev_rec_type) IS
301 begin
302     okc_oce_pvt.lock_row(
303     p_api_version,
304     p_init_msg_list,
305     x_return_status,
306     x_msg_count,
307     x_msg_data,
308     p_ocev_rec);
309 End lock_outcome;
310 
311 PROCEDURE lock_outcome(
312     p_api_version	    IN NUMBER,
313     p_init_msg_list         IN VARCHAR2 ,
314     x_return_status         OUT NOCOPY VARCHAR2,
315     x_msg_count             OUT NOCOPY NUMBER,
316     x_msg_data              OUT NOCOPY VARCHAR2,
317     p_ocev_tbl		    IN ocev_tbl_type) IS
318 begin
319     okc_oce_pvt.lock_row(
320     p_api_version,
321     p_init_msg_list,
322     x_return_status,
323     x_msg_count,
324     x_msg_data,
325     p_ocev_tbl);
326 End lock_outcome;
327 
328 PROCEDURE update_outcome(
329     p_api_version	    IN NUMBER,
330     p_init_msg_list         IN VARCHAR2 ,
331     x_return_status         OUT NOCOPY VARCHAR2,
332     x_msg_count             OUT NOCOPY NUMBER,
333     x_msg_data              OUT NOCOPY VARCHAR2,
334     p_ocev_rec		    IN ocev_rec_type,
335     x_ocev_rec              OUT NOCOPY ocev_rec_type) IS
336 begin
337     okc_oce_pvt.update_row(
338     p_api_version,
339     p_init_msg_list,
340     x_return_status,
341     x_msg_count,
342     x_msg_data,
343     p_ocev_rec,
344     x_ocev_rec);
345     --Update minor version
346     If (x_return_status = OKC_API.G_RET_STS_SUCCESS) Then
347     	update_minor_version(p_ocev_rec.dnz_chr_id);
348     End if;
349 End update_outcome;
350 
351 PROCEDURE update_outcome(
352     p_api_version	    IN NUMBER,
353     p_init_msg_list         IN VARCHAR2 ,
354     x_return_status         OUT NOCOPY VARCHAR2,
355     x_msg_count             OUT NOCOPY NUMBER,
356     x_msg_data              OUT NOCOPY VARCHAR2,
357     p_ocev_tbl		    IN ocev_tbl_type,
358     x_ocev_tbl              OUT NOCOPY ocev_tbl_type) IS
359 begin
360     okc_oce_pvt.update_row(
361     p_api_version,
362     p_init_msg_list,
363     x_return_status,
364     x_msg_count,
365     x_msg_data,
366     p_ocev_tbl,
367     x_ocev_tbl);
368 End update_outcome;
369 
370 --Procedure for Cascade Delete
371 PROCEDURE delete_outcome(
372     p_api_version	    IN NUMBER,
373     p_init_msg_list         IN VARCHAR2 ,
374     x_return_status         OUT NOCOPY VARCHAR2,
375     x_msg_count             OUT NOCOPY NUMBER,
376     x_msg_data              OUT NOCOPY VARCHAR2,
377     p_ocev_rec		    IN ocev_rec_type) IS
378 
379     l_return_status         VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
380     i                       NUMBER := 0;
381     l_oatv_tbl              oatv_tbl_type;
382 
383     Cursor p_cur is
384     select oat.id
385     from okc_outcome_arguments_v oat
386     where oat.oce_id = p_ocev_rec.id;
387 begin
388       --populate the Foreign key of the detail
389       For p_rec in p_cur loop
390 	i := i + 1;
391 	l_oatv_tbl(i).id := p_rec.id;
392       End loop;
393 
394       --Delete the details
395       -- call Public delete procedure
396        		okc_outcome_pub.delete_out_arg(
397     			p_api_version,
398     			p_init_msg_list,
399     			x_return_status,
400     			x_msg_count,
401     			x_msg_data,
402     			l_oatv_tbl);
403        	IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
404       		raise G_EXCEPTION_HALT_VALIDATION;
405         ELSE
406       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
407          		l_return_status := x_return_status;
408         	END IF;
409     	END IF;
410 
411 	--Delete the Master
412     	okc_oce_pvt.delete_row(
413     		p_api_version,
414     		p_init_msg_list,
415     		x_return_status,
416     		x_msg_count,
417     		x_msg_data,
418     		p_ocev_rec);
419     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
420       	raise G_EXCEPTION_HALT_VALIDATION;
421     ELSE
422       	IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
423            l_return_status := x_return_status;
424   	   --Update minor version
425     	   update_minor_version(p_ocev_rec.dnz_chr_id);
426     	End if;
427     END IF;
428 
429 EXCEPTION
430     WHEN G_EXCEPTION_HALT_VALIDATION THEN
431 	Null;
432 
433    WHEN OTHERS THEN
434       OKC_API.set_message(p_app_name      => g_app_name,
435                           p_msg_name      => g_unexpected_error,
436                           p_token1        => g_sqlcode_token,
437                           p_token1_value  => sqlcode,
438                           p_token2        => g_sqlerrm_token,
439                           p_token2_value  => sqlerrm);
440       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
441 End delete_outcome;
442 
443 PROCEDURE delete_outcome(
444     p_api_version	    IN NUMBER,
445     p_init_msg_list         IN VARCHAR2 ,
446     x_return_status         OUT NOCOPY VARCHAR2,
447     x_msg_count             OUT NOCOPY NUMBER,
448     x_msg_data              OUT NOCOPY VARCHAR2,
449     p_ocev_tbl		    IN ocev_tbl_type) IS
450     i	                    NUMBER :=0;
451     l_return_status 	    VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
452 begin
453       --Initialize the return status
454       x_return_status := OKC_API.G_RET_STS_SUCCESS;
455 
456       IF (p_ocev_tbl.COUNT > 0) THEN
457        	  i := p_ocev_tbl.FIRST;
458        LOOP
459           delete_outcome(
460     		p_api_version,
461     		p_init_msg_list,
462     		x_return_status,
463     		x_msg_count,
464     		x_msg_data,
465     		p_ocev_tbl(i));
466           EXIT WHEN (i = p_ocev_tbl.LAST);
467           i := p_ocev_tbl.NEXT(i);
468        END LOOP;
469     END IF;
470     	IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
471       		raise G_EXCEPTION_HALT_VALIDATION;
472         ELSE
473       		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
474          		l_return_status := x_return_status;
475         	END IF;
476     	END IF;
477 EXCEPTION
478     WHEN G_EXCEPTION_HALT_VALIDATION THEN
479 	Null;
480 
481    WHEN OTHERS THEN
482       OKC_API.set_message(p_app_name      => g_app_name,
483                           p_msg_name      => g_unexpected_error,
484                           p_token1        => g_sqlcode_token,
485                           p_token1_value  => sqlcode,
486                           p_token2        => g_sqlerrm_token,
487                           p_token2_value  => sqlerrm);
488       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
489 End delete_outcome;
490 
491 PROCEDURE validate_outcome(
492     p_api_version	    IN NUMBER,
493     p_init_msg_list         IN VARCHAR2 ,
494     x_return_status         OUT NOCOPY VARCHAR2,
495     x_msg_count             OUT NOCOPY NUMBER,
496     x_msg_data              OUT NOCOPY VARCHAR2,
497     p_ocev_rec		    IN ocev_rec_type) IS
498 begin
499     okc_oce_pvt.validate_row(
500     p_api_version,
501     p_init_msg_list,
502     x_return_status,
503     x_msg_count,
504     x_msg_data,
505     p_ocev_rec);
506 End validate_outcome;
507 
508 PROCEDURE validate_outcome(
509     p_api_version	    IN NUMBER,
510     p_init_msg_list         IN VARCHAR2 ,
511     x_return_status         OUT NOCOPY VARCHAR2,
512     x_msg_count             OUT NOCOPY NUMBER,
513     x_msg_data              OUT NOCOPY VARCHAR2,
514     p_ocev_tbl		    IN ocev_tbl_type) IS
515 begin
516     okc_oce_pvt.validate_row(
517     p_api_version,
518     p_init_msg_list,
519     x_return_status,
520     x_msg_count,
521     x_msg_data,
522     p_ocev_tbl);
523 End validate_outcome;
524 
525 --Procedures for Outcome arguments
526 
527 PROCEDURE create_out_arg(
528     p_api_version	    IN NUMBER,
529     p_init_msg_list         IN VARCHAR2 ,
530     x_return_status         OUT NOCOPY VARCHAR2,
531     x_msg_count             OUT NOCOPY NUMBER,
532     x_msg_data              OUT NOCOPY VARCHAR2,
533     p_oatv_rec		    IN oatv_rec_type,
534     x_oatv_rec              OUT NOCOPY oatv_rec_type) IS
535 begin
536     okc_oat_pvt.insert_row(
537     p_api_version,
538     p_init_msg_list,
539     x_return_status,
540     x_msg_count,
541     x_msg_data,
542     p_oatv_rec,
543     x_oatv_rec);
544     --Update minor version
545     If (x_return_status = OKC_API.G_RET_STS_SUCCESS) Then
546     	update_minor_version(p_oatv_rec.dnz_chr_id);
547     End if;
548 End create_out_arg;
549 
550 PROCEDURE create_out_arg(
551     p_api_version	    IN NUMBER,
552     p_init_msg_list         IN VARCHAR2 ,
553     x_return_status         OUT NOCOPY VARCHAR2,
554     x_msg_count             OUT NOCOPY NUMBER,
555     x_msg_data              OUT NOCOPY VARCHAR2,
556     p_oatv_tbl		    IN oatv_tbl_type,
557     x_oatv_tbl              OUT NOCOPY oatv_tbl_type) IS
558 begin
559     okc_oat_pvt.insert_row(
560     p_api_version,
561     p_init_msg_list,
562     x_return_status,
563     x_msg_count,
564     x_msg_data,
565     p_oatv_tbl,
566     x_oatv_tbl);
567 End create_out_arg;
568 
569 PROCEDURE lock_out_arg(
570     p_api_version	    IN NUMBER,
571     p_init_msg_list         IN VARCHAR2 ,
572     x_return_status         OUT NOCOPY VARCHAR2,
573     x_msg_count             OUT NOCOPY NUMBER,
574     x_msg_data              OUT NOCOPY VARCHAR2,
575     p_oatv_rec		    IN oatv_rec_type) IS
576 begin
577     okc_oat_pvt.lock_row(
578     p_api_version,
579     p_init_msg_list,
580     x_return_status,
581     x_msg_count,
582     x_msg_data,
583     p_oatv_rec);
584 End lock_out_arg;
585 
586 PROCEDURE lock_out_arg(
587     p_api_version	    IN NUMBER,
588     p_init_msg_list         IN VARCHAR2 ,
589     x_return_status         OUT NOCOPY VARCHAR2,
590     x_msg_count             OUT NOCOPY NUMBER,
591     x_msg_data              OUT NOCOPY VARCHAR2,
592     p_oatv_tbl		    IN oatv_tbl_type) IS
593 begin
594     okc_oat_pvt.lock_row(
595     p_api_version,
596     p_init_msg_list,
597     x_return_status,
598     x_msg_count,
599     x_msg_data,
600     p_oatv_tbl);
601 End lock_out_arg;
602 
603 PROCEDURE update_out_arg(
604     p_api_version	    IN NUMBER,
605     p_init_msg_list         IN VARCHAR2 ,
606     x_return_status         OUT NOCOPY VARCHAR2,
607     x_msg_count             OUT NOCOPY NUMBER,
608     x_msg_data              OUT NOCOPY VARCHAR2,
609     p_oatv_rec		    IN oatv_rec_type,
610     x_oatv_rec              OUT NOCOPY oatv_rec_type) IS
611 begin
612     okc_oat_pvt.update_row(
613     p_api_version,
614     p_init_msg_list,
615     x_return_status,
616     x_msg_count,
617     x_msg_data,
618     p_oatv_rec,
619     x_oatv_rec);
620     --Update minor version
621     If (x_return_status = OKC_API.G_RET_STS_SUCCESS) Then
622     	update_minor_version(p_oatv_rec.dnz_chr_id);
623     End if;
624 End update_out_arg;
625 
626 PROCEDURE update_out_arg(
627     p_api_version	    IN NUMBER,
628     p_init_msg_list         IN VARCHAR2 ,
629     x_return_status         OUT NOCOPY VARCHAR2,
630     x_msg_count             OUT NOCOPY NUMBER,
631     x_msg_data              OUT NOCOPY VARCHAR2,
632     p_oatv_tbl		    IN oatv_tbl_type,
633     x_oatv_tbl              OUT NOCOPY oatv_tbl_type) IS
634 begin
635     okc_oat_pvt.update_row(
636     p_api_version,
637     p_init_msg_list,
638     x_return_status,
639     x_msg_count,
640     x_msg_data,
641     p_oatv_tbl,
642     x_oatv_tbl);
643 End update_out_arg;
644 
645 PROCEDURE delete_out_arg(
646     p_api_version	    IN NUMBER,
647     p_init_msg_list         IN VARCHAR2 ,
648     x_return_status         OUT NOCOPY VARCHAR2,
649     x_msg_count             OUT NOCOPY NUMBER,
650     x_msg_data              OUT NOCOPY VARCHAR2,
651     p_oatv_rec		    IN oatv_rec_type) IS
652 begin
653     okc_oat_pvt.delete_row(
654     p_api_version,
655     p_init_msg_list,
656     x_return_status,
657     x_msg_count,
658     x_msg_data,
659     p_oatv_rec);
660     --Update minor version
661     If (x_return_status = OKC_API.G_RET_STS_SUCCESS) Then
662     	update_minor_version(p_oatv_rec.dnz_chr_id);
663     End if;
664 End delete_out_arg;
665 
666 PROCEDURE delete_out_arg(
667     p_api_version	    IN NUMBER,
668     p_init_msg_list         IN VARCHAR2 ,
669     x_return_status         OUT NOCOPY VARCHAR2,
670     x_msg_count             OUT NOCOPY NUMBER,
671     x_msg_data              OUT NOCOPY VARCHAR2,
672     p_oatv_tbl		    IN oatv_tbl_type) IS
673 begin
674     okc_oat_pvt.delete_row(
675     p_api_version,
676     p_init_msg_list,
677     x_return_status,
678     x_msg_count,
679     x_msg_data,
680     p_oatv_tbl);
681 End delete_out_arg;
682 
683 PROCEDURE validate_out_arg(
684     p_api_version	    IN NUMBER,
685     p_init_msg_list         IN VARCHAR2 ,
686     x_return_status         OUT NOCOPY VARCHAR2,
687     x_msg_count             OUT NOCOPY NUMBER,
688     x_msg_data              OUT NOCOPY VARCHAR2,
689     p_oatv_rec		    IN oatv_rec_type) IS
690 begin
691     okc_oat_pvt.validate_row(
692     p_api_version,
693     p_init_msg_list,
694     x_return_status,
695     x_msg_count,
696     x_msg_data,
697     p_oatv_rec);
698 End validate_out_arg;
699 
700 PROCEDURE validate_out_arg(
701     p_api_version	    IN NUMBER,
702     p_init_msg_list         IN VARCHAR2 ,
703     x_return_status         OUT NOCOPY VARCHAR2,
704     x_msg_count             OUT NOCOPY NUMBER,
705     x_msg_data              OUT NOCOPY VARCHAR2,
706     p_oatv_tbl		    IN oatv_tbl_type) IS
707 begin
708     okc_oat_pvt.validate_row(
709     p_api_version,
710     p_init_msg_list,
711     x_return_status,
712     x_msg_count,
713     x_msg_data,
714     p_oatv_tbl);
715 End validate_out_arg;
716 
717 END okc_outcome_pvt;