DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_OPT_PVT_W

Source


1 package body okl_opt_pvt_w as
2   /* $Header: OKLIOPTB.pls 115.4 2002/12/24 04:05:49 sgorantl noship $ */
3   rosetta_g_mistake_date date := to_date('01/01/+4713', 'MM/DD/SYYYY');
4   rosetta_g_miss_date date := to_date('01/01/-4712', 'MM/DD/SYYYY');
5 
6   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
7   function rosetta_g_miss_date_in_map(d date) return date as
8   begin
9     if d = rosetta_g_mistake_date then return fnd_api.g_miss_date; end if;
10     return d;
11   end;
12 
13   function rosetta_g_miss_num_map(n number) return number as
14     a number := fnd_api.g_miss_num;
15     b number := 0-1962.0724;
16   begin
17     if n=a then return b; end if;
18     if n=b then return a; end if;
19     return n;
20   end;
21 
22   procedure rosetta_table_copy_in_p2(t out nocopy okl_opt_pvt.opt_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_VARCHAR2_TABLE_200
24     , a2 JTF_NUMBER_TABLE
25     , a3 JTF_VARCHAR2_TABLE_2000
26     , a4 JTF_DATE_TABLE
27     , a5 JTF_DATE_TABLE
28     , a6 JTF_VARCHAR2_TABLE_100
29     , a7 JTF_VARCHAR2_TABLE_500
30     , a8 JTF_VARCHAR2_TABLE_500
31     , a9 JTF_VARCHAR2_TABLE_500
32     , a10 JTF_VARCHAR2_TABLE_500
33     , a11 JTF_VARCHAR2_TABLE_500
34     , a12 JTF_VARCHAR2_TABLE_500
35     , a13 JTF_VARCHAR2_TABLE_500
36     , a14 JTF_VARCHAR2_TABLE_500
37     , a15 JTF_VARCHAR2_TABLE_500
38     , a16 JTF_VARCHAR2_TABLE_500
39     , a17 JTF_VARCHAR2_TABLE_500
40     , a18 JTF_VARCHAR2_TABLE_500
41     , a19 JTF_VARCHAR2_TABLE_500
42     , a20 JTF_VARCHAR2_TABLE_500
43     , a21 JTF_VARCHAR2_TABLE_500
44     , a22 JTF_NUMBER_TABLE
45     , a23 JTF_DATE_TABLE
46     , a24 JTF_NUMBER_TABLE
47     , a25 JTF_DATE_TABLE
48     , a26 JTF_NUMBER_TABLE
49     ) as
50     ddindx binary_integer; indx binary_integer;
51   begin
52   if a0 is not null and a0.count > 0 then
53       if a0.count > 0 then
54         indx := a0.first;
55         ddindx := 1;
56         while true loop
57           t(ddindx).id := rosetta_g_miss_num_map(a0(indx));
58           t(ddindx).name := a1(indx);
59           t(ddindx).object_version_number := rosetta_g_miss_num_map(a2(indx));
60           t(ddindx).description := a3(indx);
61           t(ddindx).from_date := rosetta_g_miss_date_in_map(a4(indx));
62           t(ddindx).to_date := rosetta_g_miss_date_in_map(a5(indx));
63           t(ddindx).attribute_category := a6(indx);
64           t(ddindx).attribute1 := a7(indx);
65           t(ddindx).attribute2 := a8(indx);
66           t(ddindx).attribute3 := a9(indx);
67           t(ddindx).attribute4 := a10(indx);
68           t(ddindx).attribute5 := a11(indx);
69           t(ddindx).attribute6 := a12(indx);
70           t(ddindx).attribute7 := a13(indx);
71           t(ddindx).attribute8 := a14(indx);
72           t(ddindx).attribute9 := a15(indx);
73           t(ddindx).attribute10 := a16(indx);
74           t(ddindx).attribute11 := a17(indx);
75           t(ddindx).attribute12 := a18(indx);
76           t(ddindx).attribute13 := a19(indx);
77           t(ddindx).attribute14 := a20(indx);
78           t(ddindx).attribute15 := a21(indx);
79           t(ddindx).created_by := rosetta_g_miss_num_map(a22(indx));
80           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a23(indx));
81           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a24(indx));
82           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a25(indx));
83           t(ddindx).last_update_login := rosetta_g_miss_num_map(a26(indx));
84           ddindx := ddindx+1;
85           if a0.last =indx
86             then exit;
87           end if;
88           indx := a0.next(indx);
89         end loop;
90       end if;
91    end if;
92   end rosetta_table_copy_in_p2;
93   procedure rosetta_table_copy_out_p2(t okl_opt_pvt.opt_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
94     , a1 out nocopy JTF_VARCHAR2_TABLE_200
95     , a2 out nocopy JTF_NUMBER_TABLE
96     , a3 out nocopy JTF_VARCHAR2_TABLE_2000
97     , a4 out nocopy JTF_DATE_TABLE
98     , a5 out nocopy JTF_DATE_TABLE
99     , a6 out nocopy JTF_VARCHAR2_TABLE_100
100     , a7 out nocopy JTF_VARCHAR2_TABLE_500
101     , a8 out nocopy JTF_VARCHAR2_TABLE_500
102     , a9 out nocopy JTF_VARCHAR2_TABLE_500
103     , a10 out nocopy JTF_VARCHAR2_TABLE_500
104     , a11 out nocopy JTF_VARCHAR2_TABLE_500
105     , a12 out nocopy JTF_VARCHAR2_TABLE_500
106     , a13 out nocopy JTF_VARCHAR2_TABLE_500
107     , a14 out nocopy JTF_VARCHAR2_TABLE_500
108     , a15 out nocopy JTF_VARCHAR2_TABLE_500
109     , a16 out nocopy JTF_VARCHAR2_TABLE_500
110     , a17 out nocopy JTF_VARCHAR2_TABLE_500
111     , a18 out nocopy JTF_VARCHAR2_TABLE_500
112     , a19 out nocopy JTF_VARCHAR2_TABLE_500
113     , a20 out nocopy JTF_VARCHAR2_TABLE_500
114     , a21 out nocopy JTF_VARCHAR2_TABLE_500
115     , a22 out nocopy JTF_NUMBER_TABLE
116     , a23 out nocopy JTF_DATE_TABLE
117     , a24 out nocopy JTF_NUMBER_TABLE
118     , a25 out nocopy JTF_DATE_TABLE
119     , a26 out nocopy JTF_NUMBER_TABLE
120     ) as
121     ddindx binary_integer; indx binary_integer;
122   begin
123   if t is null or t.count = 0 then
124     a0 := JTF_NUMBER_TABLE();
125     a1 := JTF_VARCHAR2_TABLE_200();
126     a2 := JTF_NUMBER_TABLE();
127     a3 := JTF_VARCHAR2_TABLE_2000();
128     a4 := JTF_DATE_TABLE();
129     a5 := JTF_DATE_TABLE();
130     a6 := JTF_VARCHAR2_TABLE_100();
131     a7 := JTF_VARCHAR2_TABLE_500();
132     a8 := JTF_VARCHAR2_TABLE_500();
133     a9 := JTF_VARCHAR2_TABLE_500();
134     a10 := JTF_VARCHAR2_TABLE_500();
135     a11 := JTF_VARCHAR2_TABLE_500();
136     a12 := JTF_VARCHAR2_TABLE_500();
137     a13 := JTF_VARCHAR2_TABLE_500();
138     a14 := JTF_VARCHAR2_TABLE_500();
139     a15 := JTF_VARCHAR2_TABLE_500();
140     a16 := JTF_VARCHAR2_TABLE_500();
141     a17 := JTF_VARCHAR2_TABLE_500();
142     a18 := JTF_VARCHAR2_TABLE_500();
143     a19 := JTF_VARCHAR2_TABLE_500();
144     a20 := JTF_VARCHAR2_TABLE_500();
145     a21 := JTF_VARCHAR2_TABLE_500();
146     a22 := JTF_NUMBER_TABLE();
147     a23 := JTF_DATE_TABLE();
148     a24 := JTF_NUMBER_TABLE();
149     a25 := JTF_DATE_TABLE();
150     a26 := JTF_NUMBER_TABLE();
151   else
152       a0 := JTF_NUMBER_TABLE();
153       a1 := JTF_VARCHAR2_TABLE_200();
154       a2 := JTF_NUMBER_TABLE();
155       a3 := JTF_VARCHAR2_TABLE_2000();
156       a4 := JTF_DATE_TABLE();
157       a5 := JTF_DATE_TABLE();
158       a6 := JTF_VARCHAR2_TABLE_100();
159       a7 := JTF_VARCHAR2_TABLE_500();
160       a8 := JTF_VARCHAR2_TABLE_500();
161       a9 := JTF_VARCHAR2_TABLE_500();
162       a10 := JTF_VARCHAR2_TABLE_500();
163       a11 := JTF_VARCHAR2_TABLE_500();
164       a12 := JTF_VARCHAR2_TABLE_500();
165       a13 := JTF_VARCHAR2_TABLE_500();
166       a14 := JTF_VARCHAR2_TABLE_500();
167       a15 := JTF_VARCHAR2_TABLE_500();
168       a16 := JTF_VARCHAR2_TABLE_500();
169       a17 := JTF_VARCHAR2_TABLE_500();
170       a18 := JTF_VARCHAR2_TABLE_500();
171       a19 := JTF_VARCHAR2_TABLE_500();
172       a20 := JTF_VARCHAR2_TABLE_500();
173       a21 := JTF_VARCHAR2_TABLE_500();
174       a22 := JTF_NUMBER_TABLE();
175       a23 := JTF_DATE_TABLE();
176       a24 := JTF_NUMBER_TABLE();
177       a25 := JTF_DATE_TABLE();
178       a26 := JTF_NUMBER_TABLE();
179       if t.count > 0 then
180         a0.extend(t.count);
181         a1.extend(t.count);
182         a2.extend(t.count);
183         a3.extend(t.count);
184         a4.extend(t.count);
185         a5.extend(t.count);
186         a6.extend(t.count);
187         a7.extend(t.count);
188         a8.extend(t.count);
189         a9.extend(t.count);
190         a10.extend(t.count);
191         a11.extend(t.count);
192         a12.extend(t.count);
193         a13.extend(t.count);
194         a14.extend(t.count);
195         a15.extend(t.count);
196         a16.extend(t.count);
197         a17.extend(t.count);
198         a18.extend(t.count);
199         a19.extend(t.count);
200         a20.extend(t.count);
201         a21.extend(t.count);
202         a22.extend(t.count);
203         a23.extend(t.count);
204         a24.extend(t.count);
205         a25.extend(t.count);
206         a26.extend(t.count);
207         ddindx := t.first;
208         indx := 1;
209         while true loop
210           a0(indx) := rosetta_g_miss_num_map(t(ddindx).id);
211           a1(indx) := t(ddindx).name;
212           a2(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
213           a3(indx) := t(ddindx).description;
214           a4(indx) := t(ddindx).from_date;
215           a5(indx) := t(ddindx).to_date;
216           a6(indx) := t(ddindx).attribute_category;
217           a7(indx) := t(ddindx).attribute1;
218           a8(indx) := t(ddindx).attribute2;
219           a9(indx) := t(ddindx).attribute3;
220           a10(indx) := t(ddindx).attribute4;
221           a11(indx) := t(ddindx).attribute5;
222           a12(indx) := t(ddindx).attribute6;
223           a13(indx) := t(ddindx).attribute7;
224           a14(indx) := t(ddindx).attribute8;
225           a15(indx) := t(ddindx).attribute9;
226           a16(indx) := t(ddindx).attribute10;
227           a17(indx) := t(ddindx).attribute11;
228           a18(indx) := t(ddindx).attribute12;
229           a19(indx) := t(ddindx).attribute13;
230           a20(indx) := t(ddindx).attribute14;
231           a21(indx) := t(ddindx).attribute15;
232           a22(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
233           a23(indx) := t(ddindx).creation_date;
234           a24(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
235           a25(indx) := t(ddindx).last_update_date;
236           a26(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
237           indx := indx+1;
238           if t.last =ddindx
239             then exit;
240           end if;
241           ddindx := t.next(ddindx);
242         end loop;
243       end if;
244    end if;
245   end rosetta_table_copy_out_p2;
246 
247   procedure rosetta_table_copy_in_p5(t out nocopy okl_opt_pvt.optv_tbl_type, a0 JTF_NUMBER_TABLE
248     , a1 JTF_NUMBER_TABLE
249     , a2 JTF_VARCHAR2_TABLE_200
250     , a3 JTF_VARCHAR2_TABLE_2000
251     , a4 JTF_DATE_TABLE
252     , a5 JTF_DATE_TABLE
253     , a6 JTF_VARCHAR2_TABLE_100
254     , a7 JTF_VARCHAR2_TABLE_500
255     , a8 JTF_VARCHAR2_TABLE_500
256     , a9 JTF_VARCHAR2_TABLE_500
257     , a10 JTF_VARCHAR2_TABLE_500
258     , a11 JTF_VARCHAR2_TABLE_500
259     , a12 JTF_VARCHAR2_TABLE_500
260     , a13 JTF_VARCHAR2_TABLE_500
261     , a14 JTF_VARCHAR2_TABLE_500
262     , a15 JTF_VARCHAR2_TABLE_500
263     , a16 JTF_VARCHAR2_TABLE_500
264     , a17 JTF_VARCHAR2_TABLE_500
265     , a18 JTF_VARCHAR2_TABLE_500
266     , a19 JTF_VARCHAR2_TABLE_500
267     , a20 JTF_VARCHAR2_TABLE_500
268     , a21 JTF_VARCHAR2_TABLE_500
269     , a22 JTF_NUMBER_TABLE
270     , a23 JTF_DATE_TABLE
271     , a24 JTF_NUMBER_TABLE
272     , a25 JTF_DATE_TABLE
273     , a26 JTF_NUMBER_TABLE
274     ) as
275     ddindx binary_integer; indx binary_integer;
276   begin
277   if a0 is not null and a0.count > 0 then
278       if a0.count > 0 then
279         indx := a0.first;
280         ddindx := 1;
281         while true loop
282           t(ddindx).id := rosetta_g_miss_num_map(a0(indx));
283           t(ddindx).object_version_number := rosetta_g_miss_num_map(a1(indx));
284           t(ddindx).name := a2(indx);
285           t(ddindx).description := a3(indx);
286           t(ddindx).from_date := rosetta_g_miss_date_in_map(a4(indx));
287           t(ddindx).to_date := rosetta_g_miss_date_in_map(a5(indx));
288           t(ddindx).attribute_category := a6(indx);
289           t(ddindx).attribute1 := a7(indx);
290           t(ddindx).attribute2 := a8(indx);
291           t(ddindx).attribute3 := a9(indx);
292           t(ddindx).attribute4 := a10(indx);
293           t(ddindx).attribute5 := a11(indx);
294           t(ddindx).attribute6 := a12(indx);
295           t(ddindx).attribute7 := a13(indx);
296           t(ddindx).attribute8 := a14(indx);
297           t(ddindx).attribute9 := a15(indx);
298           t(ddindx).attribute10 := a16(indx);
299           t(ddindx).attribute11 := a17(indx);
300           t(ddindx).attribute12 := a18(indx);
301           t(ddindx).attribute13 := a19(indx);
302           t(ddindx).attribute14 := a20(indx);
303           t(ddindx).attribute15 := a21(indx);
304           t(ddindx).created_by := rosetta_g_miss_num_map(a22(indx));
305           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a23(indx));
306           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a24(indx));
307           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a25(indx));
308           t(ddindx).last_update_login := rosetta_g_miss_num_map(a26(indx));
309           ddindx := ddindx+1;
310           if a0.last =indx
311             then exit;
312           end if;
313           indx := a0.next(indx);
314         end loop;
315       end if;
316    end if;
317   end rosetta_table_copy_in_p5;
318   procedure rosetta_table_copy_out_p5(t okl_opt_pvt.optv_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
319     , a1 out nocopy JTF_NUMBER_TABLE
320     , a2 out nocopy JTF_VARCHAR2_TABLE_200
321     , a3 out nocopy JTF_VARCHAR2_TABLE_2000
322     , a4 out nocopy JTF_DATE_TABLE
323     , a5 out nocopy JTF_DATE_TABLE
324     , a6 out nocopy JTF_VARCHAR2_TABLE_100
325     , a7 out nocopy JTF_VARCHAR2_TABLE_500
326     , a8 out nocopy JTF_VARCHAR2_TABLE_500
327     , a9 out nocopy JTF_VARCHAR2_TABLE_500
328     , a10 out nocopy JTF_VARCHAR2_TABLE_500
329     , a11 out nocopy JTF_VARCHAR2_TABLE_500
330     , a12 out nocopy JTF_VARCHAR2_TABLE_500
331     , a13 out nocopy JTF_VARCHAR2_TABLE_500
332     , a14 out nocopy JTF_VARCHAR2_TABLE_500
333     , a15 out nocopy JTF_VARCHAR2_TABLE_500
334     , a16 out nocopy JTF_VARCHAR2_TABLE_500
335     , a17 out nocopy JTF_VARCHAR2_TABLE_500
336     , a18 out nocopy JTF_VARCHAR2_TABLE_500
337     , a19 out nocopy JTF_VARCHAR2_TABLE_500
338     , a20 out nocopy JTF_VARCHAR2_TABLE_500
339     , a21 out nocopy JTF_VARCHAR2_TABLE_500
340     , a22 out nocopy JTF_NUMBER_TABLE
341     , a23 out nocopy JTF_DATE_TABLE
342     , a24 out nocopy JTF_NUMBER_TABLE
343     , a25 out nocopy JTF_DATE_TABLE
344     , a26 out nocopy JTF_NUMBER_TABLE
345     ) as
346     ddindx binary_integer; indx binary_integer;
347   begin
348   if t is null or t.count = 0 then
349     a0 := JTF_NUMBER_TABLE();
350     a1 := JTF_NUMBER_TABLE();
351     a2 := JTF_VARCHAR2_TABLE_200();
352     a3 := JTF_VARCHAR2_TABLE_2000();
353     a4 := JTF_DATE_TABLE();
354     a5 := JTF_DATE_TABLE();
355     a6 := JTF_VARCHAR2_TABLE_100();
356     a7 := JTF_VARCHAR2_TABLE_500();
357     a8 := JTF_VARCHAR2_TABLE_500();
358     a9 := JTF_VARCHAR2_TABLE_500();
359     a10 := JTF_VARCHAR2_TABLE_500();
360     a11 := JTF_VARCHAR2_TABLE_500();
361     a12 := JTF_VARCHAR2_TABLE_500();
362     a13 := JTF_VARCHAR2_TABLE_500();
363     a14 := JTF_VARCHAR2_TABLE_500();
364     a15 := JTF_VARCHAR2_TABLE_500();
365     a16 := JTF_VARCHAR2_TABLE_500();
366     a17 := JTF_VARCHAR2_TABLE_500();
367     a18 := JTF_VARCHAR2_TABLE_500();
368     a19 := JTF_VARCHAR2_TABLE_500();
369     a20 := JTF_VARCHAR2_TABLE_500();
370     a21 := JTF_VARCHAR2_TABLE_500();
371     a22 := JTF_NUMBER_TABLE();
372     a23 := JTF_DATE_TABLE();
373     a24 := JTF_NUMBER_TABLE();
374     a25 := JTF_DATE_TABLE();
375     a26 := JTF_NUMBER_TABLE();
376   else
377       a0 := JTF_NUMBER_TABLE();
378       a1 := JTF_NUMBER_TABLE();
379       a2 := JTF_VARCHAR2_TABLE_200();
380       a3 := JTF_VARCHAR2_TABLE_2000();
381       a4 := JTF_DATE_TABLE();
382       a5 := JTF_DATE_TABLE();
383       a6 := JTF_VARCHAR2_TABLE_100();
384       a7 := JTF_VARCHAR2_TABLE_500();
385       a8 := JTF_VARCHAR2_TABLE_500();
386       a9 := JTF_VARCHAR2_TABLE_500();
387       a10 := JTF_VARCHAR2_TABLE_500();
388       a11 := JTF_VARCHAR2_TABLE_500();
389       a12 := JTF_VARCHAR2_TABLE_500();
390       a13 := JTF_VARCHAR2_TABLE_500();
391       a14 := JTF_VARCHAR2_TABLE_500();
392       a15 := JTF_VARCHAR2_TABLE_500();
393       a16 := JTF_VARCHAR2_TABLE_500();
394       a17 := JTF_VARCHAR2_TABLE_500();
395       a18 := JTF_VARCHAR2_TABLE_500();
396       a19 := JTF_VARCHAR2_TABLE_500();
397       a20 := JTF_VARCHAR2_TABLE_500();
398       a21 := JTF_VARCHAR2_TABLE_500();
399       a22 := JTF_NUMBER_TABLE();
400       a23 := JTF_DATE_TABLE();
401       a24 := JTF_NUMBER_TABLE();
402       a25 := JTF_DATE_TABLE();
403       a26 := JTF_NUMBER_TABLE();
404       if t.count > 0 then
405         a0.extend(t.count);
406         a1.extend(t.count);
407         a2.extend(t.count);
408         a3.extend(t.count);
409         a4.extend(t.count);
410         a5.extend(t.count);
411         a6.extend(t.count);
412         a7.extend(t.count);
413         a8.extend(t.count);
414         a9.extend(t.count);
415         a10.extend(t.count);
416         a11.extend(t.count);
417         a12.extend(t.count);
418         a13.extend(t.count);
419         a14.extend(t.count);
420         a15.extend(t.count);
421         a16.extend(t.count);
422         a17.extend(t.count);
423         a18.extend(t.count);
424         a19.extend(t.count);
425         a20.extend(t.count);
426         a21.extend(t.count);
427         a22.extend(t.count);
428         a23.extend(t.count);
429         a24.extend(t.count);
430         a25.extend(t.count);
431         a26.extend(t.count);
432         ddindx := t.first;
433         indx := 1;
434         while true loop
435           a0(indx) := rosetta_g_miss_num_map(t(ddindx).id);
436           a1(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
437           a2(indx) := t(ddindx).name;
438           a3(indx) := t(ddindx).description;
439           a4(indx) := t(ddindx).from_date;
440           a5(indx) := t(ddindx).to_date;
441           a6(indx) := t(ddindx).attribute_category;
442           a7(indx) := t(ddindx).attribute1;
443           a8(indx) := t(ddindx).attribute2;
444           a9(indx) := t(ddindx).attribute3;
445           a10(indx) := t(ddindx).attribute4;
446           a11(indx) := t(ddindx).attribute5;
447           a12(indx) := t(ddindx).attribute6;
448           a13(indx) := t(ddindx).attribute7;
449           a14(indx) := t(ddindx).attribute8;
450           a15(indx) := t(ddindx).attribute9;
451           a16(indx) := t(ddindx).attribute10;
452           a17(indx) := t(ddindx).attribute11;
453           a18(indx) := t(ddindx).attribute12;
454           a19(indx) := t(ddindx).attribute13;
455           a20(indx) := t(ddindx).attribute14;
456           a21(indx) := t(ddindx).attribute15;
457           a22(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
458           a23(indx) := t(ddindx).creation_date;
459           a24(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
460           a25(indx) := t(ddindx).last_update_date;
461           a26(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
462           indx := indx+1;
463           if t.last =ddindx
464             then exit;
465           end if;
466           ddindx := t.next(ddindx);
467         end loop;
468       end if;
469    end if;
470   end rosetta_table_copy_out_p5;
471 
472   procedure insert_row(p_api_version  NUMBER
473     , p_init_msg_list  VARCHAR2
474     , x_return_status out nocopy  VARCHAR2
475     , x_msg_count out nocopy  NUMBER
476     , x_msg_data out nocopy  VARCHAR2
477     , p6_a0 out nocopy  NUMBER
478     , p6_a1 out nocopy  NUMBER
479     , p6_a2 out nocopy  VARCHAR2
480     , p6_a3 out nocopy  VARCHAR2
481     , p6_a4 out nocopy  DATE
482     , p6_a5 out nocopy  DATE
483     , p6_a6 out nocopy  VARCHAR2
484     , p6_a7 out nocopy  VARCHAR2
485     , p6_a8 out nocopy  VARCHAR2
486     , p6_a9 out nocopy  VARCHAR2
487     , p6_a10 out nocopy  VARCHAR2
488     , p6_a11 out nocopy  VARCHAR2
489     , p6_a12 out nocopy  VARCHAR2
490     , p6_a13 out nocopy  VARCHAR2
491     , p6_a14 out nocopy  VARCHAR2
492     , p6_a15 out nocopy  VARCHAR2
493     , p6_a16 out nocopy  VARCHAR2
494     , p6_a17 out nocopy  VARCHAR2
495     , p6_a18 out nocopy  VARCHAR2
496     , p6_a19 out nocopy  VARCHAR2
497     , p6_a20 out nocopy  VARCHAR2
498     , p6_a21 out nocopy  VARCHAR2
499     , p6_a22 out nocopy  NUMBER
500     , p6_a23 out nocopy  DATE
501     , p6_a24 out nocopy  NUMBER
502     , p6_a25 out nocopy  DATE
503     , p6_a26 out nocopy  NUMBER
504     , p5_a0  NUMBER := 0-1962.0724
505     , p5_a1  NUMBER := 0-1962.0724
506     , p5_a2  VARCHAR2 := fnd_api.g_miss_char
507     , p5_a3  VARCHAR2 := fnd_api.g_miss_char
508     , p5_a4  DATE := fnd_api.g_miss_date
509     , p5_a5  DATE := fnd_api.g_miss_date
510     , p5_a6  VARCHAR2 := fnd_api.g_miss_char
511     , p5_a7  VARCHAR2 := fnd_api.g_miss_char
512     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
513     , p5_a9  VARCHAR2 := fnd_api.g_miss_char
514     , p5_a10  VARCHAR2 := fnd_api.g_miss_char
515     , p5_a11  VARCHAR2 := fnd_api.g_miss_char
516     , p5_a12  VARCHAR2 := fnd_api.g_miss_char
517     , p5_a13  VARCHAR2 := fnd_api.g_miss_char
518     , p5_a14  VARCHAR2 := fnd_api.g_miss_char
519     , p5_a15  VARCHAR2 := fnd_api.g_miss_char
520     , p5_a16  VARCHAR2 := fnd_api.g_miss_char
521     , p5_a17  VARCHAR2 := fnd_api.g_miss_char
522     , p5_a18  VARCHAR2 := fnd_api.g_miss_char
523     , p5_a19  VARCHAR2 := fnd_api.g_miss_char
524     , p5_a20  VARCHAR2 := fnd_api.g_miss_char
525     , p5_a21  VARCHAR2 := fnd_api.g_miss_char
526     , p5_a22  NUMBER := 0-1962.0724
527     , p5_a23  DATE := fnd_api.g_miss_date
528     , p5_a24  NUMBER := 0-1962.0724
529     , p5_a25  DATE := fnd_api.g_miss_date
530     , p5_a26  NUMBER := 0-1962.0724
531   )
532 
533   as
534     ddp_optv_rec okl_opt_pvt.optv_rec_type;
535     ddx_optv_rec okl_opt_pvt.optv_rec_type;
536     ddindx binary_integer; indx binary_integer;
537   begin
538 
539     -- copy data to the local IN or IN-OUT args, if any
540 
541 
542 
543 
544 
545     ddp_optv_rec.id := rosetta_g_miss_num_map(p5_a0);
546     ddp_optv_rec.object_version_number := rosetta_g_miss_num_map(p5_a1);
547     ddp_optv_rec.name := p5_a2;
548     ddp_optv_rec.description := p5_a3;
549     ddp_optv_rec.from_date := rosetta_g_miss_date_in_map(p5_a4);
550     ddp_optv_rec.to_date := rosetta_g_miss_date_in_map(p5_a5);
551     ddp_optv_rec.attribute_category := p5_a6;
552     ddp_optv_rec.attribute1 := p5_a7;
553     ddp_optv_rec.attribute2 := p5_a8;
554     ddp_optv_rec.attribute3 := p5_a9;
555     ddp_optv_rec.attribute4 := p5_a10;
556     ddp_optv_rec.attribute5 := p5_a11;
557     ddp_optv_rec.attribute6 := p5_a12;
558     ddp_optv_rec.attribute7 := p5_a13;
559     ddp_optv_rec.attribute8 := p5_a14;
560     ddp_optv_rec.attribute9 := p5_a15;
561     ddp_optv_rec.attribute10 := p5_a16;
562     ddp_optv_rec.attribute11 := p5_a17;
563     ddp_optv_rec.attribute12 := p5_a18;
564     ddp_optv_rec.attribute13 := p5_a19;
565     ddp_optv_rec.attribute14 := p5_a20;
566     ddp_optv_rec.attribute15 := p5_a21;
567     ddp_optv_rec.created_by := rosetta_g_miss_num_map(p5_a22);
568     ddp_optv_rec.creation_date := rosetta_g_miss_date_in_map(p5_a23);
569     ddp_optv_rec.last_updated_by := rosetta_g_miss_num_map(p5_a24);
570     ddp_optv_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a25);
571     ddp_optv_rec.last_update_login := rosetta_g_miss_num_map(p5_a26);
572 
573 
574     -- here's the delegated call to the old PL/SQL routine
575     okl_opt_pvt.insert_row(p_api_version,
576       p_init_msg_list,
577       x_return_status,
578       x_msg_count,
579       x_msg_data,
580       ddp_optv_rec,
581       ddx_optv_rec);
582 
583     -- copy data back from the local variables to OUT or IN-OUT args, if any
584 
585 
586 
587 
588 
589 
590     p6_a0 := rosetta_g_miss_num_map(ddx_optv_rec.id);
591     p6_a1 := rosetta_g_miss_num_map(ddx_optv_rec.object_version_number);
592     p6_a2 := ddx_optv_rec.name;
593     p6_a3 := ddx_optv_rec.description;
594     p6_a4 := ddx_optv_rec.from_date;
595     p6_a5 := ddx_optv_rec.to_date;
596     p6_a6 := ddx_optv_rec.attribute_category;
597     p6_a7 := ddx_optv_rec.attribute1;
598     p6_a8 := ddx_optv_rec.attribute2;
599     p6_a9 := ddx_optv_rec.attribute3;
600     p6_a10 := ddx_optv_rec.attribute4;
601     p6_a11 := ddx_optv_rec.attribute5;
602     p6_a12 := ddx_optv_rec.attribute6;
603     p6_a13 := ddx_optv_rec.attribute7;
604     p6_a14 := ddx_optv_rec.attribute8;
605     p6_a15 := ddx_optv_rec.attribute9;
606     p6_a16 := ddx_optv_rec.attribute10;
607     p6_a17 := ddx_optv_rec.attribute11;
608     p6_a18 := ddx_optv_rec.attribute12;
609     p6_a19 := ddx_optv_rec.attribute13;
610     p6_a20 := ddx_optv_rec.attribute14;
611     p6_a21 := ddx_optv_rec.attribute15;
612     p6_a22 := rosetta_g_miss_num_map(ddx_optv_rec.created_by);
613     p6_a23 := ddx_optv_rec.creation_date;
614     p6_a24 := rosetta_g_miss_num_map(ddx_optv_rec.last_updated_by);
615     p6_a25 := ddx_optv_rec.last_update_date;
616     p6_a26 := rosetta_g_miss_num_map(ddx_optv_rec.last_update_login);
617   end;
618 
619   procedure insert_row(p_api_version  NUMBER
620     , p_init_msg_list  VARCHAR2
621     , x_return_status out nocopy  VARCHAR2
622     , x_msg_count out nocopy  NUMBER
623     , x_msg_data out nocopy  VARCHAR2
624     , p5_a0 JTF_NUMBER_TABLE
625     , p5_a1 JTF_NUMBER_TABLE
626     , p5_a2 JTF_VARCHAR2_TABLE_200
627     , p5_a3 JTF_VARCHAR2_TABLE_2000
628     , p5_a4 JTF_DATE_TABLE
629     , p5_a5 JTF_DATE_TABLE
630     , p5_a6 JTF_VARCHAR2_TABLE_100
631     , p5_a7 JTF_VARCHAR2_TABLE_500
632     , p5_a8 JTF_VARCHAR2_TABLE_500
633     , p5_a9 JTF_VARCHAR2_TABLE_500
634     , p5_a10 JTF_VARCHAR2_TABLE_500
635     , p5_a11 JTF_VARCHAR2_TABLE_500
636     , p5_a12 JTF_VARCHAR2_TABLE_500
637     , p5_a13 JTF_VARCHAR2_TABLE_500
638     , p5_a14 JTF_VARCHAR2_TABLE_500
639     , p5_a15 JTF_VARCHAR2_TABLE_500
640     , p5_a16 JTF_VARCHAR2_TABLE_500
641     , p5_a17 JTF_VARCHAR2_TABLE_500
642     , p5_a18 JTF_VARCHAR2_TABLE_500
643     , p5_a19 JTF_VARCHAR2_TABLE_500
644     , p5_a20 JTF_VARCHAR2_TABLE_500
645     , p5_a21 JTF_VARCHAR2_TABLE_500
646     , p5_a22 JTF_NUMBER_TABLE
647     , p5_a23 JTF_DATE_TABLE
648     , p5_a24 JTF_NUMBER_TABLE
649     , p5_a25 JTF_DATE_TABLE
650     , p5_a26 JTF_NUMBER_TABLE
651     , p6_a0 out nocopy JTF_NUMBER_TABLE
652     , p6_a1 out nocopy JTF_NUMBER_TABLE
653     , p6_a2 out nocopy JTF_VARCHAR2_TABLE_200
654     , p6_a3 out nocopy JTF_VARCHAR2_TABLE_2000
655     , p6_a4 out nocopy JTF_DATE_TABLE
656     , p6_a5 out nocopy JTF_DATE_TABLE
657     , p6_a6 out nocopy JTF_VARCHAR2_TABLE_100
658     , p6_a7 out nocopy JTF_VARCHAR2_TABLE_500
659     , p6_a8 out nocopy JTF_VARCHAR2_TABLE_500
660     , p6_a9 out nocopy JTF_VARCHAR2_TABLE_500
661     , p6_a10 out nocopy JTF_VARCHAR2_TABLE_500
662     , p6_a11 out nocopy JTF_VARCHAR2_TABLE_500
663     , p6_a12 out nocopy JTF_VARCHAR2_TABLE_500
664     , p6_a13 out nocopy JTF_VARCHAR2_TABLE_500
665     , p6_a14 out nocopy JTF_VARCHAR2_TABLE_500
666     , p6_a15 out nocopy JTF_VARCHAR2_TABLE_500
667     , p6_a16 out nocopy JTF_VARCHAR2_TABLE_500
668     , p6_a17 out nocopy JTF_VARCHAR2_TABLE_500
669     , p6_a18 out nocopy JTF_VARCHAR2_TABLE_500
670     , p6_a19 out nocopy JTF_VARCHAR2_TABLE_500
671     , p6_a20 out nocopy JTF_VARCHAR2_TABLE_500
672     , p6_a21 out nocopy JTF_VARCHAR2_TABLE_500
673     , p6_a22 out nocopy JTF_NUMBER_TABLE
674     , p6_a23 out nocopy JTF_DATE_TABLE
675     , p6_a24 out nocopy JTF_NUMBER_TABLE
676     , p6_a25 out nocopy JTF_DATE_TABLE
677     , p6_a26 out nocopy JTF_NUMBER_TABLE
678   )
679 
680   as
681     ddp_optv_tbl okl_opt_pvt.optv_tbl_type;
682     ddx_optv_tbl okl_opt_pvt.optv_tbl_type;
683     ddindx binary_integer; indx binary_integer;
684   begin
685 
686     -- copy data to the local IN or IN-OUT args, if any
687 
688 
689 
690 
691 
692     okl_opt_pvt_w.rosetta_table_copy_in_p5(ddp_optv_tbl, p5_a0
693       , p5_a1
694       , p5_a2
695       , p5_a3
696       , p5_a4
697       , p5_a5
698       , p5_a6
699       , p5_a7
700       , p5_a8
701       , p5_a9
702       , p5_a10
703       , p5_a11
704       , p5_a12
705       , p5_a13
706       , p5_a14
707       , p5_a15
708       , p5_a16
709       , p5_a17
710       , p5_a18
711       , p5_a19
712       , p5_a20
713       , p5_a21
714       , p5_a22
715       , p5_a23
716       , p5_a24
717       , p5_a25
718       , p5_a26
719       );
720 
721 
722     -- here's the delegated call to the old PL/SQL routine
723     okl_opt_pvt.insert_row(p_api_version,
724       p_init_msg_list,
725       x_return_status,
726       x_msg_count,
727       x_msg_data,
728       ddp_optv_tbl,
729       ddx_optv_tbl);
730 
731     -- copy data back from the local variables to OUT or IN-OUT args, if any
732 
733 
734 
735 
736 
737 
738     okl_opt_pvt_w.rosetta_table_copy_out_p5(ddx_optv_tbl, p6_a0
739       , p6_a1
740       , p6_a2
741       , p6_a3
742       , p6_a4
743       , p6_a5
744       , p6_a6
745       , p6_a7
746       , p6_a8
747       , p6_a9
748       , p6_a10
749       , p6_a11
750       , p6_a12
751       , p6_a13
752       , p6_a14
753       , p6_a15
754       , p6_a16
755       , p6_a17
756       , p6_a18
757       , p6_a19
758       , p6_a20
759       , p6_a21
760       , p6_a22
761       , p6_a23
762       , p6_a24
763       , p6_a25
764       , p6_a26
765       );
766   end;
767 
768   procedure lock_row(p_api_version  NUMBER
769     , p_init_msg_list  VARCHAR2
770     , x_return_status out nocopy  VARCHAR2
771     , x_msg_count out nocopy  NUMBER
772     , x_msg_data out nocopy  VARCHAR2
773     , p5_a0  NUMBER := 0-1962.0724
774     , p5_a1  NUMBER := 0-1962.0724
775     , p5_a2  VARCHAR2 := fnd_api.g_miss_char
776     , p5_a3  VARCHAR2 := fnd_api.g_miss_char
777     , p5_a4  DATE := fnd_api.g_miss_date
778     , p5_a5  DATE := fnd_api.g_miss_date
779     , p5_a6  VARCHAR2 := fnd_api.g_miss_char
780     , p5_a7  VARCHAR2 := fnd_api.g_miss_char
781     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
782     , p5_a9  VARCHAR2 := fnd_api.g_miss_char
783     , p5_a10  VARCHAR2 := fnd_api.g_miss_char
784     , p5_a11  VARCHAR2 := fnd_api.g_miss_char
785     , p5_a12  VARCHAR2 := fnd_api.g_miss_char
786     , p5_a13  VARCHAR2 := fnd_api.g_miss_char
787     , p5_a14  VARCHAR2 := fnd_api.g_miss_char
788     , p5_a15  VARCHAR2 := fnd_api.g_miss_char
789     , p5_a16  VARCHAR2 := fnd_api.g_miss_char
790     , p5_a17  VARCHAR2 := fnd_api.g_miss_char
791     , p5_a18  VARCHAR2 := fnd_api.g_miss_char
792     , p5_a19  VARCHAR2 := fnd_api.g_miss_char
793     , p5_a20  VARCHAR2 := fnd_api.g_miss_char
794     , p5_a21  VARCHAR2 := fnd_api.g_miss_char
795     , p5_a22  NUMBER := 0-1962.0724
796     , p5_a23  DATE := fnd_api.g_miss_date
797     , p5_a24  NUMBER := 0-1962.0724
798     , p5_a25  DATE := fnd_api.g_miss_date
799     , p5_a26  NUMBER := 0-1962.0724
800   )
801 
802   as
803     ddp_optv_rec okl_opt_pvt.optv_rec_type;
804     ddindx binary_integer; indx binary_integer;
805   begin
806 
807     -- copy data to the local IN or IN-OUT args, if any
808 
809 
810 
811 
812 
813     ddp_optv_rec.id := rosetta_g_miss_num_map(p5_a0);
814     ddp_optv_rec.object_version_number := rosetta_g_miss_num_map(p5_a1);
815     ddp_optv_rec.name := p5_a2;
816     ddp_optv_rec.description := p5_a3;
817     ddp_optv_rec.from_date := rosetta_g_miss_date_in_map(p5_a4);
818     ddp_optv_rec.to_date := rosetta_g_miss_date_in_map(p5_a5);
819     ddp_optv_rec.attribute_category := p5_a6;
820     ddp_optv_rec.attribute1 := p5_a7;
821     ddp_optv_rec.attribute2 := p5_a8;
822     ddp_optv_rec.attribute3 := p5_a9;
823     ddp_optv_rec.attribute4 := p5_a10;
824     ddp_optv_rec.attribute5 := p5_a11;
825     ddp_optv_rec.attribute6 := p5_a12;
826     ddp_optv_rec.attribute7 := p5_a13;
827     ddp_optv_rec.attribute8 := p5_a14;
828     ddp_optv_rec.attribute9 := p5_a15;
829     ddp_optv_rec.attribute10 := p5_a16;
830     ddp_optv_rec.attribute11 := p5_a17;
831     ddp_optv_rec.attribute12 := p5_a18;
832     ddp_optv_rec.attribute13 := p5_a19;
833     ddp_optv_rec.attribute14 := p5_a20;
834     ddp_optv_rec.attribute15 := p5_a21;
835     ddp_optv_rec.created_by := rosetta_g_miss_num_map(p5_a22);
836     ddp_optv_rec.creation_date := rosetta_g_miss_date_in_map(p5_a23);
837     ddp_optv_rec.last_updated_by := rosetta_g_miss_num_map(p5_a24);
838     ddp_optv_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a25);
839     ddp_optv_rec.last_update_login := rosetta_g_miss_num_map(p5_a26);
840 
841     -- here's the delegated call to the old PL/SQL routine
842     okl_opt_pvt.lock_row(p_api_version,
843       p_init_msg_list,
844       x_return_status,
845       x_msg_count,
846       x_msg_data,
847       ddp_optv_rec);
848 
849     -- copy data back from the local variables to OUT or IN-OUT args, if any
850 
851 
852 
853 
854 
855   end;
856 
857   procedure lock_row(p_api_version  NUMBER
858     , p_init_msg_list  VARCHAR2
859     , x_return_status out nocopy  VARCHAR2
860     , x_msg_count out nocopy  NUMBER
861     , x_msg_data out nocopy  VARCHAR2
862     , p5_a0 JTF_NUMBER_TABLE
863     , p5_a1 JTF_NUMBER_TABLE
864     , p5_a2 JTF_VARCHAR2_TABLE_200
865     , p5_a3 JTF_VARCHAR2_TABLE_2000
866     , p5_a4 JTF_DATE_TABLE
867     , p5_a5 JTF_DATE_TABLE
868     , p5_a6 JTF_VARCHAR2_TABLE_100
869     , p5_a7 JTF_VARCHAR2_TABLE_500
870     , p5_a8 JTF_VARCHAR2_TABLE_500
871     , p5_a9 JTF_VARCHAR2_TABLE_500
872     , p5_a10 JTF_VARCHAR2_TABLE_500
873     , p5_a11 JTF_VARCHAR2_TABLE_500
874     , p5_a12 JTF_VARCHAR2_TABLE_500
875     , p5_a13 JTF_VARCHAR2_TABLE_500
876     , p5_a14 JTF_VARCHAR2_TABLE_500
877     , p5_a15 JTF_VARCHAR2_TABLE_500
878     , p5_a16 JTF_VARCHAR2_TABLE_500
879     , p5_a17 JTF_VARCHAR2_TABLE_500
880     , p5_a18 JTF_VARCHAR2_TABLE_500
881     , p5_a19 JTF_VARCHAR2_TABLE_500
882     , p5_a20 JTF_VARCHAR2_TABLE_500
883     , p5_a21 JTF_VARCHAR2_TABLE_500
884     , p5_a22 JTF_NUMBER_TABLE
885     , p5_a23 JTF_DATE_TABLE
886     , p5_a24 JTF_NUMBER_TABLE
887     , p5_a25 JTF_DATE_TABLE
888     , p5_a26 JTF_NUMBER_TABLE
889   )
890 
891   as
892     ddp_optv_tbl okl_opt_pvt.optv_tbl_type;
893     ddindx binary_integer; indx binary_integer;
894   begin
895 
896     -- copy data to the local IN or IN-OUT args, if any
897 
898 
899 
900 
901 
902     okl_opt_pvt_w.rosetta_table_copy_in_p5(ddp_optv_tbl, p5_a0
903       , p5_a1
904       , p5_a2
905       , p5_a3
906       , p5_a4
907       , p5_a5
908       , p5_a6
909       , p5_a7
910       , p5_a8
911       , p5_a9
912       , p5_a10
913       , p5_a11
914       , p5_a12
915       , p5_a13
916       , p5_a14
917       , p5_a15
918       , p5_a16
919       , p5_a17
920       , p5_a18
921       , p5_a19
922       , p5_a20
923       , p5_a21
924       , p5_a22
925       , p5_a23
926       , p5_a24
927       , p5_a25
928       , p5_a26
929       );
930 
931     -- here's the delegated call to the old PL/SQL routine
932     okl_opt_pvt.lock_row(p_api_version,
933       p_init_msg_list,
934       x_return_status,
935       x_msg_count,
936       x_msg_data,
937       ddp_optv_tbl);
938 
939     -- copy data back from the local variables to OUT or IN-OUT args, if any
940 
941 
942 
943 
944 
945   end;
946 
947   procedure update_row(p_api_version  NUMBER
948     , p_init_msg_list  VARCHAR2
949     , x_return_status out nocopy  VARCHAR2
950     , x_msg_count out nocopy  NUMBER
951     , x_msg_data out nocopy  VARCHAR2
952     , p6_a0 out nocopy  NUMBER
953     , p6_a1 out nocopy  NUMBER
954     , p6_a2 out nocopy  VARCHAR2
955     , p6_a3 out nocopy  VARCHAR2
956     , p6_a4 out nocopy  DATE
957     , p6_a5 out nocopy  DATE
958     , p6_a6 out nocopy  VARCHAR2
959     , p6_a7 out nocopy  VARCHAR2
960     , p6_a8 out nocopy  VARCHAR2
961     , p6_a9 out nocopy  VARCHAR2
962     , p6_a10 out nocopy  VARCHAR2
963     , p6_a11 out nocopy  VARCHAR2
964     , p6_a12 out nocopy  VARCHAR2
965     , p6_a13 out nocopy  VARCHAR2
966     , p6_a14 out nocopy  VARCHAR2
967     , p6_a15 out nocopy  VARCHAR2
968     , p6_a16 out nocopy  VARCHAR2
969     , p6_a17 out nocopy  VARCHAR2
970     , p6_a18 out nocopy  VARCHAR2
971     , p6_a19 out nocopy  VARCHAR2
972     , p6_a20 out nocopy  VARCHAR2
973     , p6_a21 out nocopy  VARCHAR2
974     , p6_a22 out nocopy  NUMBER
975     , p6_a23 out nocopy  DATE
976     , p6_a24 out nocopy  NUMBER
977     , p6_a25 out nocopy  DATE
978     , p6_a26 out nocopy  NUMBER
979     , p5_a0  NUMBER := 0-1962.0724
980     , p5_a1  NUMBER := 0-1962.0724
981     , p5_a2  VARCHAR2 := fnd_api.g_miss_char
982     , p5_a3  VARCHAR2 := fnd_api.g_miss_char
983     , p5_a4  DATE := fnd_api.g_miss_date
984     , p5_a5  DATE := fnd_api.g_miss_date
985     , p5_a6  VARCHAR2 := fnd_api.g_miss_char
986     , p5_a7  VARCHAR2 := fnd_api.g_miss_char
987     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
988     , p5_a9  VARCHAR2 := fnd_api.g_miss_char
989     , p5_a10  VARCHAR2 := fnd_api.g_miss_char
990     , p5_a11  VARCHAR2 := fnd_api.g_miss_char
991     , p5_a12  VARCHAR2 := fnd_api.g_miss_char
992     , p5_a13  VARCHAR2 := fnd_api.g_miss_char
993     , p5_a14  VARCHAR2 := fnd_api.g_miss_char
994     , p5_a15  VARCHAR2 := fnd_api.g_miss_char
995     , p5_a16  VARCHAR2 := fnd_api.g_miss_char
996     , p5_a17  VARCHAR2 := fnd_api.g_miss_char
997     , p5_a18  VARCHAR2 := fnd_api.g_miss_char
998     , p5_a19  VARCHAR2 := fnd_api.g_miss_char
999     , p5_a20  VARCHAR2 := fnd_api.g_miss_char
1000     , p5_a21  VARCHAR2 := fnd_api.g_miss_char
1001     , p5_a22  NUMBER := 0-1962.0724
1002     , p5_a23  DATE := fnd_api.g_miss_date
1003     , p5_a24  NUMBER := 0-1962.0724
1004     , p5_a25  DATE := fnd_api.g_miss_date
1005     , p5_a26  NUMBER := 0-1962.0724
1006   )
1007 
1008   as
1009     ddp_optv_rec okl_opt_pvt.optv_rec_type;
1010     ddx_optv_rec okl_opt_pvt.optv_rec_type;
1011     ddindx binary_integer; indx binary_integer;
1012   begin
1013 
1014     -- copy data to the local IN or IN-OUT args, if any
1015 
1016 
1017 
1018 
1019 
1020     ddp_optv_rec.id := rosetta_g_miss_num_map(p5_a0);
1021     ddp_optv_rec.object_version_number := rosetta_g_miss_num_map(p5_a1);
1022     ddp_optv_rec.name := p5_a2;
1023     ddp_optv_rec.description := p5_a3;
1024     ddp_optv_rec.from_date := rosetta_g_miss_date_in_map(p5_a4);
1025     ddp_optv_rec.to_date := rosetta_g_miss_date_in_map(p5_a5);
1026     ddp_optv_rec.attribute_category := p5_a6;
1027     ddp_optv_rec.attribute1 := p5_a7;
1028     ddp_optv_rec.attribute2 := p5_a8;
1029     ddp_optv_rec.attribute3 := p5_a9;
1030     ddp_optv_rec.attribute4 := p5_a10;
1031     ddp_optv_rec.attribute5 := p5_a11;
1032     ddp_optv_rec.attribute6 := p5_a12;
1033     ddp_optv_rec.attribute7 := p5_a13;
1034     ddp_optv_rec.attribute8 := p5_a14;
1035     ddp_optv_rec.attribute9 := p5_a15;
1036     ddp_optv_rec.attribute10 := p5_a16;
1037     ddp_optv_rec.attribute11 := p5_a17;
1038     ddp_optv_rec.attribute12 := p5_a18;
1039     ddp_optv_rec.attribute13 := p5_a19;
1040     ddp_optv_rec.attribute14 := p5_a20;
1041     ddp_optv_rec.attribute15 := p5_a21;
1042     ddp_optv_rec.created_by := rosetta_g_miss_num_map(p5_a22);
1043     ddp_optv_rec.creation_date := rosetta_g_miss_date_in_map(p5_a23);
1044     ddp_optv_rec.last_updated_by := rosetta_g_miss_num_map(p5_a24);
1045     ddp_optv_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a25);
1046     ddp_optv_rec.last_update_login := rosetta_g_miss_num_map(p5_a26);
1047 
1048 
1049     -- here's the delegated call to the old PL/SQL routine
1050     okl_opt_pvt.update_row(p_api_version,
1051       p_init_msg_list,
1052       x_return_status,
1053       x_msg_count,
1054       x_msg_data,
1055       ddp_optv_rec,
1056       ddx_optv_rec);
1057 
1058     -- copy data back from the local variables to OUT or IN-OUT args, if any
1059 
1060 
1061 
1062 
1063 
1064 
1065     p6_a0 := rosetta_g_miss_num_map(ddx_optv_rec.id);
1066     p6_a1 := rosetta_g_miss_num_map(ddx_optv_rec.object_version_number);
1067     p6_a2 := ddx_optv_rec.name;
1068     p6_a3 := ddx_optv_rec.description;
1069     p6_a4 := ddx_optv_rec.from_date;
1070     p6_a5 := ddx_optv_rec.to_date;
1071     p6_a6 := ddx_optv_rec.attribute_category;
1072     p6_a7 := ddx_optv_rec.attribute1;
1073     p6_a8 := ddx_optv_rec.attribute2;
1074     p6_a9 := ddx_optv_rec.attribute3;
1075     p6_a10 := ddx_optv_rec.attribute4;
1076     p6_a11 := ddx_optv_rec.attribute5;
1077     p6_a12 := ddx_optv_rec.attribute6;
1078     p6_a13 := ddx_optv_rec.attribute7;
1079     p6_a14 := ddx_optv_rec.attribute8;
1080     p6_a15 := ddx_optv_rec.attribute9;
1081     p6_a16 := ddx_optv_rec.attribute10;
1082     p6_a17 := ddx_optv_rec.attribute11;
1083     p6_a18 := ddx_optv_rec.attribute12;
1084     p6_a19 := ddx_optv_rec.attribute13;
1085     p6_a20 := ddx_optv_rec.attribute14;
1086     p6_a21 := ddx_optv_rec.attribute15;
1087     p6_a22 := rosetta_g_miss_num_map(ddx_optv_rec.created_by);
1088     p6_a23 := ddx_optv_rec.creation_date;
1089     p6_a24 := rosetta_g_miss_num_map(ddx_optv_rec.last_updated_by);
1090     p6_a25 := ddx_optv_rec.last_update_date;
1091     p6_a26 := rosetta_g_miss_num_map(ddx_optv_rec.last_update_login);
1092   end;
1093 
1094   procedure update_row(p_api_version  NUMBER
1095     , p_init_msg_list  VARCHAR2
1096     , x_return_status out nocopy  VARCHAR2
1097     , x_msg_count out nocopy  NUMBER
1098     , x_msg_data out nocopy  VARCHAR2
1099     , p5_a0 JTF_NUMBER_TABLE
1100     , p5_a1 JTF_NUMBER_TABLE
1101     , p5_a2 JTF_VARCHAR2_TABLE_200
1102     , p5_a3 JTF_VARCHAR2_TABLE_2000
1103     , p5_a4 JTF_DATE_TABLE
1104     , p5_a5 JTF_DATE_TABLE
1105     , p5_a6 JTF_VARCHAR2_TABLE_100
1106     , p5_a7 JTF_VARCHAR2_TABLE_500
1107     , p5_a8 JTF_VARCHAR2_TABLE_500
1108     , p5_a9 JTF_VARCHAR2_TABLE_500
1109     , p5_a10 JTF_VARCHAR2_TABLE_500
1110     , p5_a11 JTF_VARCHAR2_TABLE_500
1111     , p5_a12 JTF_VARCHAR2_TABLE_500
1112     , p5_a13 JTF_VARCHAR2_TABLE_500
1113     , p5_a14 JTF_VARCHAR2_TABLE_500
1114     , p5_a15 JTF_VARCHAR2_TABLE_500
1115     , p5_a16 JTF_VARCHAR2_TABLE_500
1116     , p5_a17 JTF_VARCHAR2_TABLE_500
1117     , p5_a18 JTF_VARCHAR2_TABLE_500
1118     , p5_a19 JTF_VARCHAR2_TABLE_500
1119     , p5_a20 JTF_VARCHAR2_TABLE_500
1120     , p5_a21 JTF_VARCHAR2_TABLE_500
1121     , p5_a22 JTF_NUMBER_TABLE
1122     , p5_a23 JTF_DATE_TABLE
1123     , p5_a24 JTF_NUMBER_TABLE
1124     , p5_a25 JTF_DATE_TABLE
1125     , p5_a26 JTF_NUMBER_TABLE
1126     , p6_a0 out nocopy JTF_NUMBER_TABLE
1127     , p6_a1 out nocopy JTF_NUMBER_TABLE
1128     , p6_a2 out nocopy JTF_VARCHAR2_TABLE_200
1129     , p6_a3 out nocopy JTF_VARCHAR2_TABLE_2000
1130     , p6_a4 out nocopy JTF_DATE_TABLE
1131     , p6_a5 out nocopy JTF_DATE_TABLE
1132     , p6_a6 out nocopy JTF_VARCHAR2_TABLE_100
1133     , p6_a7 out nocopy JTF_VARCHAR2_TABLE_500
1134     , p6_a8 out nocopy JTF_VARCHAR2_TABLE_500
1135     , p6_a9 out nocopy JTF_VARCHAR2_TABLE_500
1136     , p6_a10 out nocopy JTF_VARCHAR2_TABLE_500
1137     , p6_a11 out nocopy JTF_VARCHAR2_TABLE_500
1138     , p6_a12 out nocopy JTF_VARCHAR2_TABLE_500
1139     , p6_a13 out nocopy JTF_VARCHAR2_TABLE_500
1140     , p6_a14 out nocopy JTF_VARCHAR2_TABLE_500
1141     , p6_a15 out nocopy JTF_VARCHAR2_TABLE_500
1142     , p6_a16 out nocopy JTF_VARCHAR2_TABLE_500
1143     , p6_a17 out nocopy JTF_VARCHAR2_TABLE_500
1144     , p6_a18 out nocopy JTF_VARCHAR2_TABLE_500
1145     , p6_a19 out nocopy JTF_VARCHAR2_TABLE_500
1146     , p6_a20 out nocopy JTF_VARCHAR2_TABLE_500
1147     , p6_a21 out nocopy JTF_VARCHAR2_TABLE_500
1148     , p6_a22 out nocopy JTF_NUMBER_TABLE
1149     , p6_a23 out nocopy JTF_DATE_TABLE
1150     , p6_a24 out nocopy JTF_NUMBER_TABLE
1151     , p6_a25 out nocopy JTF_DATE_TABLE
1152     , p6_a26 out nocopy JTF_NUMBER_TABLE
1153   )
1154 
1155   as
1156     ddp_optv_tbl okl_opt_pvt.optv_tbl_type;
1157     ddx_optv_tbl okl_opt_pvt.optv_tbl_type;
1158     ddindx binary_integer; indx binary_integer;
1159   begin
1160 
1161     -- copy data to the local IN or IN-OUT args, if any
1162 
1163 
1164 
1165 
1166 
1167     okl_opt_pvt_w.rosetta_table_copy_in_p5(ddp_optv_tbl, p5_a0
1168       , p5_a1
1169       , p5_a2
1170       , p5_a3
1171       , p5_a4
1172       , p5_a5
1173       , p5_a6
1174       , p5_a7
1175       , p5_a8
1176       , p5_a9
1177       , p5_a10
1178       , p5_a11
1179       , p5_a12
1180       , p5_a13
1181       , p5_a14
1182       , p5_a15
1183       , p5_a16
1184       , p5_a17
1185       , p5_a18
1186       , p5_a19
1187       , p5_a20
1188       , p5_a21
1189       , p5_a22
1190       , p5_a23
1191       , p5_a24
1192       , p5_a25
1193       , p5_a26
1194       );
1195 
1196 
1197     -- here's the delegated call to the old PL/SQL routine
1198     okl_opt_pvt.update_row(p_api_version,
1199       p_init_msg_list,
1200       x_return_status,
1201       x_msg_count,
1202       x_msg_data,
1203       ddp_optv_tbl,
1204       ddx_optv_tbl);
1205 
1206     -- copy data back from the local variables to OUT or IN-OUT args, if any
1207 
1208 
1209 
1210 
1211 
1212 
1213     okl_opt_pvt_w.rosetta_table_copy_out_p5(ddx_optv_tbl, p6_a0
1214       , p6_a1
1215       , p6_a2
1216       , p6_a3
1217       , p6_a4
1218       , p6_a5
1219       , p6_a6
1220       , p6_a7
1221       , p6_a8
1222       , p6_a9
1223       , p6_a10
1224       , p6_a11
1225       , p6_a12
1226       , p6_a13
1227       , p6_a14
1228       , p6_a15
1229       , p6_a16
1230       , p6_a17
1231       , p6_a18
1232       , p6_a19
1233       , p6_a20
1234       , p6_a21
1235       , p6_a22
1236       , p6_a23
1237       , p6_a24
1238       , p6_a25
1239       , p6_a26
1240       );
1241   end;
1242 
1243   procedure delete_row(p_api_version  NUMBER
1244     , p_init_msg_list  VARCHAR2
1245     , x_return_status out nocopy  VARCHAR2
1246     , x_msg_count out nocopy  NUMBER
1247     , x_msg_data out nocopy  VARCHAR2
1248     , p5_a0  NUMBER := 0-1962.0724
1249     , p5_a1  NUMBER := 0-1962.0724
1250     , p5_a2  VARCHAR2 := fnd_api.g_miss_char
1251     , p5_a3  VARCHAR2 := fnd_api.g_miss_char
1252     , p5_a4  DATE := fnd_api.g_miss_date
1253     , p5_a5  DATE := fnd_api.g_miss_date
1254     , p5_a6  VARCHAR2 := fnd_api.g_miss_char
1255     , p5_a7  VARCHAR2 := fnd_api.g_miss_char
1256     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
1257     , p5_a9  VARCHAR2 := fnd_api.g_miss_char
1258     , p5_a10  VARCHAR2 := fnd_api.g_miss_char
1259     , p5_a11  VARCHAR2 := fnd_api.g_miss_char
1260     , p5_a12  VARCHAR2 := fnd_api.g_miss_char
1261     , p5_a13  VARCHAR2 := fnd_api.g_miss_char
1262     , p5_a14  VARCHAR2 := fnd_api.g_miss_char
1263     , p5_a15  VARCHAR2 := fnd_api.g_miss_char
1264     , p5_a16  VARCHAR2 := fnd_api.g_miss_char
1265     , p5_a17  VARCHAR2 := fnd_api.g_miss_char
1266     , p5_a18  VARCHAR2 := fnd_api.g_miss_char
1267     , p5_a19  VARCHAR2 := fnd_api.g_miss_char
1268     , p5_a20  VARCHAR2 := fnd_api.g_miss_char
1269     , p5_a21  VARCHAR2 := fnd_api.g_miss_char
1270     , p5_a22  NUMBER := 0-1962.0724
1271     , p5_a23  DATE := fnd_api.g_miss_date
1272     , p5_a24  NUMBER := 0-1962.0724
1273     , p5_a25  DATE := fnd_api.g_miss_date
1274     , p5_a26  NUMBER := 0-1962.0724
1275   )
1276 
1277   as
1278     ddp_optv_rec okl_opt_pvt.optv_rec_type;
1279     ddindx binary_integer; indx binary_integer;
1280   begin
1281 
1282     -- copy data to the local IN or IN-OUT args, if any
1283 
1284 
1285 
1286 
1287 
1288     ddp_optv_rec.id := rosetta_g_miss_num_map(p5_a0);
1289     ddp_optv_rec.object_version_number := rosetta_g_miss_num_map(p5_a1);
1290     ddp_optv_rec.name := p5_a2;
1291     ddp_optv_rec.description := p5_a3;
1292     ddp_optv_rec.from_date := rosetta_g_miss_date_in_map(p5_a4);
1293     ddp_optv_rec.to_date := rosetta_g_miss_date_in_map(p5_a5);
1294     ddp_optv_rec.attribute_category := p5_a6;
1295     ddp_optv_rec.attribute1 := p5_a7;
1296     ddp_optv_rec.attribute2 := p5_a8;
1297     ddp_optv_rec.attribute3 := p5_a9;
1298     ddp_optv_rec.attribute4 := p5_a10;
1299     ddp_optv_rec.attribute5 := p5_a11;
1300     ddp_optv_rec.attribute6 := p5_a12;
1301     ddp_optv_rec.attribute7 := p5_a13;
1302     ddp_optv_rec.attribute8 := p5_a14;
1303     ddp_optv_rec.attribute9 := p5_a15;
1304     ddp_optv_rec.attribute10 := p5_a16;
1305     ddp_optv_rec.attribute11 := p5_a17;
1306     ddp_optv_rec.attribute12 := p5_a18;
1307     ddp_optv_rec.attribute13 := p5_a19;
1308     ddp_optv_rec.attribute14 := p5_a20;
1309     ddp_optv_rec.attribute15 := p5_a21;
1310     ddp_optv_rec.created_by := rosetta_g_miss_num_map(p5_a22);
1311     ddp_optv_rec.creation_date := rosetta_g_miss_date_in_map(p5_a23);
1312     ddp_optv_rec.last_updated_by := rosetta_g_miss_num_map(p5_a24);
1313     ddp_optv_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a25);
1314     ddp_optv_rec.last_update_login := rosetta_g_miss_num_map(p5_a26);
1315 
1316     -- here's the delegated call to the old PL/SQL routine
1317     okl_opt_pvt.delete_row(p_api_version,
1318       p_init_msg_list,
1319       x_return_status,
1320       x_msg_count,
1321       x_msg_data,
1322       ddp_optv_rec);
1323 
1324     -- copy data back from the local variables to OUT or IN-OUT args, if any
1325 
1326 
1327 
1328 
1329 
1330   end;
1331 
1332   procedure delete_row(p_api_version  NUMBER
1333     , p_init_msg_list  VARCHAR2
1334     , x_return_status out nocopy  VARCHAR2
1335     , x_msg_count out nocopy  NUMBER
1336     , x_msg_data out nocopy  VARCHAR2
1337     , p5_a0 JTF_NUMBER_TABLE
1338     , p5_a1 JTF_NUMBER_TABLE
1339     , p5_a2 JTF_VARCHAR2_TABLE_200
1340     , p5_a3 JTF_VARCHAR2_TABLE_2000
1341     , p5_a4 JTF_DATE_TABLE
1342     , p5_a5 JTF_DATE_TABLE
1343     , p5_a6 JTF_VARCHAR2_TABLE_100
1344     , p5_a7 JTF_VARCHAR2_TABLE_500
1345     , p5_a8 JTF_VARCHAR2_TABLE_500
1346     , p5_a9 JTF_VARCHAR2_TABLE_500
1347     , p5_a10 JTF_VARCHAR2_TABLE_500
1348     , p5_a11 JTF_VARCHAR2_TABLE_500
1349     , p5_a12 JTF_VARCHAR2_TABLE_500
1350     , p5_a13 JTF_VARCHAR2_TABLE_500
1351     , p5_a14 JTF_VARCHAR2_TABLE_500
1352     , p5_a15 JTF_VARCHAR2_TABLE_500
1353     , p5_a16 JTF_VARCHAR2_TABLE_500
1354     , p5_a17 JTF_VARCHAR2_TABLE_500
1355     , p5_a18 JTF_VARCHAR2_TABLE_500
1356     , p5_a19 JTF_VARCHAR2_TABLE_500
1357     , p5_a20 JTF_VARCHAR2_TABLE_500
1358     , p5_a21 JTF_VARCHAR2_TABLE_500
1359     , p5_a22 JTF_NUMBER_TABLE
1360     , p5_a23 JTF_DATE_TABLE
1361     , p5_a24 JTF_NUMBER_TABLE
1362     , p5_a25 JTF_DATE_TABLE
1363     , p5_a26 JTF_NUMBER_TABLE
1364   )
1365 
1366   as
1367     ddp_optv_tbl okl_opt_pvt.optv_tbl_type;
1368     ddindx binary_integer; indx binary_integer;
1369   begin
1370 
1371     -- copy data to the local IN or IN-OUT args, if any
1372 
1373 
1374 
1375 
1376 
1377     okl_opt_pvt_w.rosetta_table_copy_in_p5(ddp_optv_tbl, p5_a0
1378       , p5_a1
1379       , p5_a2
1380       , p5_a3
1381       , p5_a4
1382       , p5_a5
1383       , p5_a6
1384       , p5_a7
1385       , p5_a8
1386       , p5_a9
1387       , p5_a10
1388       , p5_a11
1389       , p5_a12
1390       , p5_a13
1391       , p5_a14
1392       , p5_a15
1393       , p5_a16
1394       , p5_a17
1395       , p5_a18
1396       , p5_a19
1397       , p5_a20
1398       , p5_a21
1399       , p5_a22
1400       , p5_a23
1401       , p5_a24
1402       , p5_a25
1403       , p5_a26
1404       );
1405 
1406     -- here's the delegated call to the old PL/SQL routine
1407     okl_opt_pvt.delete_row(p_api_version,
1408       p_init_msg_list,
1409       x_return_status,
1410       x_msg_count,
1411       x_msg_data,
1412       ddp_optv_tbl);
1413 
1414     -- copy data back from the local variables to OUT or IN-OUT args, if any
1415 
1416 
1417 
1418 
1419 
1420   end;
1421 
1422   procedure validate_row(p_api_version  NUMBER
1423     , p_init_msg_list  VARCHAR2
1424     , x_return_status out nocopy  VARCHAR2
1425     , x_msg_count out nocopy  NUMBER
1426     , x_msg_data out nocopy  VARCHAR2
1427     , p5_a0  NUMBER := 0-1962.0724
1428     , p5_a1  NUMBER := 0-1962.0724
1429     , p5_a2  VARCHAR2 := fnd_api.g_miss_char
1430     , p5_a3  VARCHAR2 := fnd_api.g_miss_char
1431     , p5_a4  DATE := fnd_api.g_miss_date
1432     , p5_a5  DATE := fnd_api.g_miss_date
1433     , p5_a6  VARCHAR2 := fnd_api.g_miss_char
1434     , p5_a7  VARCHAR2 := fnd_api.g_miss_char
1435     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
1436     , p5_a9  VARCHAR2 := fnd_api.g_miss_char
1437     , p5_a10  VARCHAR2 := fnd_api.g_miss_char
1438     , p5_a11  VARCHAR2 := fnd_api.g_miss_char
1439     , p5_a12  VARCHAR2 := fnd_api.g_miss_char
1440     , p5_a13  VARCHAR2 := fnd_api.g_miss_char
1441     , p5_a14  VARCHAR2 := fnd_api.g_miss_char
1442     , p5_a15  VARCHAR2 := fnd_api.g_miss_char
1443     , p5_a16  VARCHAR2 := fnd_api.g_miss_char
1444     , p5_a17  VARCHAR2 := fnd_api.g_miss_char
1445     , p5_a18  VARCHAR2 := fnd_api.g_miss_char
1446     , p5_a19  VARCHAR2 := fnd_api.g_miss_char
1447     , p5_a20  VARCHAR2 := fnd_api.g_miss_char
1448     , p5_a21  VARCHAR2 := fnd_api.g_miss_char
1449     , p5_a22  NUMBER := 0-1962.0724
1450     , p5_a23  DATE := fnd_api.g_miss_date
1451     , p5_a24  NUMBER := 0-1962.0724
1452     , p5_a25  DATE := fnd_api.g_miss_date
1453     , p5_a26  NUMBER := 0-1962.0724
1454   )
1455 
1456   as
1457     ddp_optv_rec okl_opt_pvt.optv_rec_type;
1458     ddindx binary_integer; indx binary_integer;
1459   begin
1460 
1461     -- copy data to the local IN or IN-OUT args, if any
1462 
1463 
1464 
1465 
1466 
1467     ddp_optv_rec.id := rosetta_g_miss_num_map(p5_a0);
1468     ddp_optv_rec.object_version_number := rosetta_g_miss_num_map(p5_a1);
1469     ddp_optv_rec.name := p5_a2;
1470     ddp_optv_rec.description := p5_a3;
1471     ddp_optv_rec.from_date := rosetta_g_miss_date_in_map(p5_a4);
1472     ddp_optv_rec.to_date := rosetta_g_miss_date_in_map(p5_a5);
1473     ddp_optv_rec.attribute_category := p5_a6;
1474     ddp_optv_rec.attribute1 := p5_a7;
1475     ddp_optv_rec.attribute2 := p5_a8;
1476     ddp_optv_rec.attribute3 := p5_a9;
1477     ddp_optv_rec.attribute4 := p5_a10;
1478     ddp_optv_rec.attribute5 := p5_a11;
1479     ddp_optv_rec.attribute6 := p5_a12;
1480     ddp_optv_rec.attribute7 := p5_a13;
1481     ddp_optv_rec.attribute8 := p5_a14;
1482     ddp_optv_rec.attribute9 := p5_a15;
1483     ddp_optv_rec.attribute10 := p5_a16;
1484     ddp_optv_rec.attribute11 := p5_a17;
1485     ddp_optv_rec.attribute12 := p5_a18;
1486     ddp_optv_rec.attribute13 := p5_a19;
1487     ddp_optv_rec.attribute14 := p5_a20;
1488     ddp_optv_rec.attribute15 := p5_a21;
1489     ddp_optv_rec.created_by := rosetta_g_miss_num_map(p5_a22);
1490     ddp_optv_rec.creation_date := rosetta_g_miss_date_in_map(p5_a23);
1491     ddp_optv_rec.last_updated_by := rosetta_g_miss_num_map(p5_a24);
1492     ddp_optv_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a25);
1493     ddp_optv_rec.last_update_login := rosetta_g_miss_num_map(p5_a26);
1494 
1495     -- here's the delegated call to the old PL/SQL routine
1496     okl_opt_pvt.validate_row(p_api_version,
1497       p_init_msg_list,
1498       x_return_status,
1499       x_msg_count,
1500       x_msg_data,
1501       ddp_optv_rec);
1502 
1503     -- copy data back from the local variables to OUT or IN-OUT args, if any
1504 
1505 
1506 
1507 
1508 
1509   end;
1510 
1511   procedure validate_row(p_api_version  NUMBER
1512     , p_init_msg_list  VARCHAR2
1513     , x_return_status out nocopy  VARCHAR2
1514     , x_msg_count out nocopy  NUMBER
1515     , x_msg_data out nocopy  VARCHAR2
1516     , p5_a0 JTF_NUMBER_TABLE
1517     , p5_a1 JTF_NUMBER_TABLE
1518     , p5_a2 JTF_VARCHAR2_TABLE_200
1519     , p5_a3 JTF_VARCHAR2_TABLE_2000
1520     , p5_a4 JTF_DATE_TABLE
1521     , p5_a5 JTF_DATE_TABLE
1522     , p5_a6 JTF_VARCHAR2_TABLE_100
1523     , p5_a7 JTF_VARCHAR2_TABLE_500
1524     , p5_a8 JTF_VARCHAR2_TABLE_500
1525     , p5_a9 JTF_VARCHAR2_TABLE_500
1526     , p5_a10 JTF_VARCHAR2_TABLE_500
1527     , p5_a11 JTF_VARCHAR2_TABLE_500
1528     , p5_a12 JTF_VARCHAR2_TABLE_500
1529     , p5_a13 JTF_VARCHAR2_TABLE_500
1530     , p5_a14 JTF_VARCHAR2_TABLE_500
1531     , p5_a15 JTF_VARCHAR2_TABLE_500
1532     , p5_a16 JTF_VARCHAR2_TABLE_500
1533     , p5_a17 JTF_VARCHAR2_TABLE_500
1534     , p5_a18 JTF_VARCHAR2_TABLE_500
1535     , p5_a19 JTF_VARCHAR2_TABLE_500
1536     , p5_a20 JTF_VARCHAR2_TABLE_500
1537     , p5_a21 JTF_VARCHAR2_TABLE_500
1538     , p5_a22 JTF_NUMBER_TABLE
1539     , p5_a23 JTF_DATE_TABLE
1540     , p5_a24 JTF_NUMBER_TABLE
1541     , p5_a25 JTF_DATE_TABLE
1542     , p5_a26 JTF_NUMBER_TABLE
1543   )
1544 
1545   as
1546     ddp_optv_tbl okl_opt_pvt.optv_tbl_type;
1547     ddindx binary_integer; indx binary_integer;
1548   begin
1549 
1550     -- copy data to the local IN or IN-OUT args, if any
1551 
1552 
1553 
1554 
1555 
1556     okl_opt_pvt_w.rosetta_table_copy_in_p5(ddp_optv_tbl, p5_a0
1557       , p5_a1
1558       , p5_a2
1559       , p5_a3
1560       , p5_a4
1561       , p5_a5
1562       , p5_a6
1563       , p5_a7
1564       , p5_a8
1565       , p5_a9
1566       , p5_a10
1567       , p5_a11
1568       , p5_a12
1569       , p5_a13
1570       , p5_a14
1571       , p5_a15
1572       , p5_a16
1573       , p5_a17
1574       , p5_a18
1575       , p5_a19
1576       , p5_a20
1577       , p5_a21
1578       , p5_a22
1579       , p5_a23
1580       , p5_a24
1581       , p5_a25
1582       , p5_a26
1583       );
1584 
1585     -- here's the delegated call to the old PL/SQL routine
1586     okl_opt_pvt.validate_row(p_api_version,
1587       p_init_msg_list,
1588       x_return_status,
1589       x_msg_count,
1590       x_msg_data,
1591       ddp_optv_tbl);
1592 
1593     -- copy data back from the local variables to OUT or IN-OUT args, if any
1594 
1595 
1596 
1597 
1598 
1599   end;
1600 
1601 end okl_opt_pvt_w;