DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_RGRP_RULES_PROCESS_PVT_W

Source


1 package body okl_rgrp_rules_process_pvt_w as
2   /* $Header: OKLERGRB.pls 120.1 2005/07/11 14:20:11 asawanka 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_rgrp_rules_process_pvt.rgr_tbl_type, a0 JTF_VARCHAR2_TABLE_100
23     , a1 JTF_NUMBER_TABLE
24     , a2 JTF_NUMBER_TABLE
25     , a3 JTF_VARCHAR2_TABLE_100
26     , a4 JTF_VARCHAR2_TABLE_100
27     , a5 JTF_VARCHAR2_TABLE_100
28     , a6 JTF_VARCHAR2_TABLE_100
29     , a7 JTF_VARCHAR2_TABLE_200
30     , a8 JTF_VARCHAR2_TABLE_200
31     , a9 JTF_VARCHAR2_TABLE_200
32     , a10 JTF_VARCHAR2_TABLE_100
33     , a11 JTF_VARCHAR2_TABLE_100
34     , a12 JTF_VARCHAR2_TABLE_100
35     , a13 JTF_NUMBER_TABLE
36     , a14 JTF_NUMBER_TABLE
37     , a15 JTF_NUMBER_TABLE
38     , a16 JTF_VARCHAR2_TABLE_100
39     , a17 JTF_VARCHAR2_TABLE_2000
40     , a18 JTF_VARCHAR2_TABLE_100
41     , a19 JTF_VARCHAR2_TABLE_100
42     , a20 JTF_VARCHAR2_TABLE_500
43     , a21 JTF_VARCHAR2_TABLE_500
44     , a22 JTF_VARCHAR2_TABLE_500
45     , a23 JTF_VARCHAR2_TABLE_500
46     , a24 JTF_VARCHAR2_TABLE_500
47     , a25 JTF_VARCHAR2_TABLE_500
48     , a26 JTF_VARCHAR2_TABLE_500
49     , a27 JTF_VARCHAR2_TABLE_500
50     , a28 JTF_VARCHAR2_TABLE_500
51     , a29 JTF_VARCHAR2_TABLE_500
52     , a30 JTF_VARCHAR2_TABLE_500
53     , a31 JTF_VARCHAR2_TABLE_500
54     , a32 JTF_VARCHAR2_TABLE_500
55     , a33 JTF_VARCHAR2_TABLE_500
56     , a34 JTF_VARCHAR2_TABLE_500
57     , a35 JTF_NUMBER_TABLE
58     , a36 JTF_DATE_TABLE
59     , a37 JTF_NUMBER_TABLE
60     , a38 JTF_DATE_TABLE
61     , a39 JTF_NUMBER_TABLE
62     , a40 JTF_VARCHAR2_TABLE_100
63     , a41 JTF_VARCHAR2_TABLE_500
64     , a42 JTF_VARCHAR2_TABLE_500
65     , a43 JTF_VARCHAR2_TABLE_500
66     , a44 JTF_VARCHAR2_TABLE_500
67     , a45 JTF_VARCHAR2_TABLE_500
68     , a46 JTF_VARCHAR2_TABLE_500
69     , a47 JTF_VARCHAR2_TABLE_500
70     , a48 JTF_VARCHAR2_TABLE_500
71     , a49 JTF_VARCHAR2_TABLE_500
72     , a50 JTF_VARCHAR2_TABLE_500
73     , a51 JTF_VARCHAR2_TABLE_500
74     , a52 JTF_VARCHAR2_TABLE_500
75     , a53 JTF_VARCHAR2_TABLE_500
76     , a54 JTF_VARCHAR2_TABLE_500
77     , a55 JTF_VARCHAR2_TABLE_500
78     , a56 JTF_VARCHAR2_TABLE_100
79     , a57 JTF_VARCHAR2_TABLE_100
80     , a58 JTF_VARCHAR2_TABLE_100
81     , a59 JTF_VARCHAR2_TABLE_100
82     , a60 JTF_NUMBER_TABLE
83     ) as
84     ddindx binary_integer; indx binary_integer;
85   begin
86   if a0 is not null and a0.count > 0 then
87       if a0.count > 0 then
88         indx := a0.first;
89         ddindx := 1;
90         while true loop
91           t(ddindx).rgd_code := a0(indx);
92           t(ddindx).rule_id := rosetta_g_miss_num_map(a1(indx));
93           t(ddindx).object_version_number := rosetta_g_miss_num_map(a2(indx));
94           t(ddindx).sfwt_flag := a3(indx);
95           t(ddindx).object1_id1 := a4(indx);
96           t(ddindx).object2_id1 := a5(indx);
97           t(ddindx).object3_id1 := a6(indx);
98           t(ddindx).object1_id2 := a7(indx);
99           t(ddindx).object2_id2 := a8(indx);
100           t(ddindx).object3_id2 := a9(indx);
101           t(ddindx).jtot_object1_code := a10(indx);
102           t(ddindx).jtot_object2_code := a11(indx);
103           t(ddindx).jtot_object3_code := a12(indx);
104           t(ddindx).dnz_chr_id := rosetta_g_miss_num_map(a13(indx));
105           t(ddindx).rgp_id := rosetta_g_miss_num_map(a14(indx));
106           t(ddindx).priority := rosetta_g_miss_num_map(a15(indx));
107           t(ddindx).std_template_yn := a16(indx);
108           t(ddindx).comments := a17(indx);
109           t(ddindx).warn_yn := a18(indx);
110           t(ddindx).attribute_category := a19(indx);
111           t(ddindx).attribute1 := a20(indx);
112           t(ddindx).attribute2 := a21(indx);
113           t(ddindx).attribute3 := a22(indx);
114           t(ddindx).attribute4 := a23(indx);
115           t(ddindx).attribute5 := a24(indx);
116           t(ddindx).attribute6 := a25(indx);
117           t(ddindx).attribute7 := a26(indx);
118           t(ddindx).attribute8 := a27(indx);
119           t(ddindx).attribute9 := a28(indx);
120           t(ddindx).attribute10 := a29(indx);
121           t(ddindx).attribute11 := a30(indx);
122           t(ddindx).attribute12 := a31(indx);
123           t(ddindx).attribute13 := a32(indx);
124           t(ddindx).attribute14 := a33(indx);
125           t(ddindx).attribute15 := a34(indx);
126           t(ddindx).created_by := rosetta_g_miss_num_map(a35(indx));
127           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a36(indx));
128           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a37(indx));
129           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a38(indx));
130           t(ddindx).last_update_login := rosetta_g_miss_num_map(a39(indx));
131           t(ddindx).rule_information_category := a40(indx);
132           t(ddindx).rule_information1 := a41(indx);
133           t(ddindx).rule_information2 := a42(indx);
134           t(ddindx).rule_information3 := a43(indx);
135           t(ddindx).rule_information4 := a44(indx);
136           t(ddindx).rule_information5 := a45(indx);
137           t(ddindx).rule_information6 := a46(indx);
138           t(ddindx).rule_information7 := a47(indx);
139           t(ddindx).rule_information8 := a48(indx);
140           t(ddindx).rule_information9 := a49(indx);
141           t(ddindx).rule_information10 := a50(indx);
142           t(ddindx).rule_information11 := a51(indx);
143           t(ddindx).rule_information12 := a52(indx);
144           t(ddindx).rule_information13 := a53(indx);
145           t(ddindx).rule_information14 := a54(indx);
146           t(ddindx).rule_information15 := a55(indx);
147           t(ddindx).template_yn := a56(indx);
148           t(ddindx).ans_set_jtot_object_code := a57(indx);
149           t(ddindx).ans_set_jtot_object_id1 := a58(indx);
150           t(ddindx).ans_set_jtot_object_id2 := a59(indx);
151           t(ddindx).display_sequence := rosetta_g_miss_num_map(a60(indx));
152           ddindx := ddindx+1;
153           if a0.last =indx
154             then exit;
155           end if;
156           indx := a0.next(indx);
157         end loop;
158       end if;
159    end if;
160   end rosetta_table_copy_in_p2;
161   procedure rosetta_table_copy_out_p2(t okl_rgrp_rules_process_pvt.rgr_tbl_type, a0 out nocopy JTF_VARCHAR2_TABLE_100
162     , a1 out nocopy JTF_NUMBER_TABLE
163     , a2 out nocopy JTF_NUMBER_TABLE
164     , a3 out nocopy JTF_VARCHAR2_TABLE_100
165     , a4 out nocopy JTF_VARCHAR2_TABLE_100
166     , a5 out nocopy JTF_VARCHAR2_TABLE_100
167     , a6 out nocopy JTF_VARCHAR2_TABLE_100
168     , a7 out nocopy JTF_VARCHAR2_TABLE_200
169     , a8 out nocopy JTF_VARCHAR2_TABLE_200
170     , a9 out nocopy JTF_VARCHAR2_TABLE_200
171     , a10 out nocopy JTF_VARCHAR2_TABLE_100
172     , a11 out nocopy JTF_VARCHAR2_TABLE_100
173     , a12 out nocopy JTF_VARCHAR2_TABLE_100
174     , a13 out nocopy JTF_NUMBER_TABLE
175     , a14 out nocopy JTF_NUMBER_TABLE
176     , a15 out nocopy JTF_NUMBER_TABLE
177     , a16 out nocopy JTF_VARCHAR2_TABLE_100
178     , a17 out nocopy JTF_VARCHAR2_TABLE_2000
179     , a18 out nocopy JTF_VARCHAR2_TABLE_100
180     , a19 out nocopy JTF_VARCHAR2_TABLE_100
181     , a20 out nocopy JTF_VARCHAR2_TABLE_500
182     , a21 out nocopy JTF_VARCHAR2_TABLE_500
183     , a22 out nocopy JTF_VARCHAR2_TABLE_500
184     , a23 out nocopy JTF_VARCHAR2_TABLE_500
185     , a24 out nocopy JTF_VARCHAR2_TABLE_500
186     , a25 out nocopy JTF_VARCHAR2_TABLE_500
187     , a26 out nocopy JTF_VARCHAR2_TABLE_500
188     , a27 out nocopy JTF_VARCHAR2_TABLE_500
189     , a28 out nocopy JTF_VARCHAR2_TABLE_500
190     , a29 out nocopy JTF_VARCHAR2_TABLE_500
191     , a30 out nocopy JTF_VARCHAR2_TABLE_500
192     , a31 out nocopy JTF_VARCHAR2_TABLE_500
193     , a32 out nocopy JTF_VARCHAR2_TABLE_500
194     , a33 out nocopy JTF_VARCHAR2_TABLE_500
195     , a34 out nocopy JTF_VARCHAR2_TABLE_500
196     , a35 out nocopy JTF_NUMBER_TABLE
197     , a36 out nocopy JTF_DATE_TABLE
198     , a37 out nocopy JTF_NUMBER_TABLE
199     , a38 out nocopy JTF_DATE_TABLE
200     , a39 out nocopy JTF_NUMBER_TABLE
201     , a40 out nocopy JTF_VARCHAR2_TABLE_100
202     , a41 out nocopy JTF_VARCHAR2_TABLE_500
203     , a42 out nocopy JTF_VARCHAR2_TABLE_500
204     , a43 out nocopy JTF_VARCHAR2_TABLE_500
205     , a44 out nocopy JTF_VARCHAR2_TABLE_500
206     , a45 out nocopy JTF_VARCHAR2_TABLE_500
207     , a46 out nocopy JTF_VARCHAR2_TABLE_500
208     , a47 out nocopy JTF_VARCHAR2_TABLE_500
209     , a48 out nocopy JTF_VARCHAR2_TABLE_500
210     , a49 out nocopy JTF_VARCHAR2_TABLE_500
211     , a50 out nocopy JTF_VARCHAR2_TABLE_500
212     , a51 out nocopy JTF_VARCHAR2_TABLE_500
213     , a52 out nocopy JTF_VARCHAR2_TABLE_500
214     , a53 out nocopy JTF_VARCHAR2_TABLE_500
215     , a54 out nocopy JTF_VARCHAR2_TABLE_500
216     , a55 out nocopy JTF_VARCHAR2_TABLE_500
217     , a56 out nocopy JTF_VARCHAR2_TABLE_100
218     , a57 out nocopy JTF_VARCHAR2_TABLE_100
219     , a58 out nocopy JTF_VARCHAR2_TABLE_100
220     , a59 out nocopy JTF_VARCHAR2_TABLE_100
221     , a60 out nocopy JTF_NUMBER_TABLE
222     ) as
223     ddindx binary_integer; indx binary_integer;
224   begin
225   if t is null or t.count = 0 then
226     a0 := JTF_VARCHAR2_TABLE_100();
227     a1 := JTF_NUMBER_TABLE();
228     a2 := JTF_NUMBER_TABLE();
229     a3 := JTF_VARCHAR2_TABLE_100();
230     a4 := JTF_VARCHAR2_TABLE_100();
231     a5 := JTF_VARCHAR2_TABLE_100();
232     a6 := JTF_VARCHAR2_TABLE_100();
233     a7 := JTF_VARCHAR2_TABLE_200();
234     a8 := JTF_VARCHAR2_TABLE_200();
235     a9 := JTF_VARCHAR2_TABLE_200();
236     a10 := JTF_VARCHAR2_TABLE_100();
237     a11 := JTF_VARCHAR2_TABLE_100();
238     a12 := JTF_VARCHAR2_TABLE_100();
239     a13 := JTF_NUMBER_TABLE();
240     a14 := JTF_NUMBER_TABLE();
241     a15 := JTF_NUMBER_TABLE();
242     a16 := JTF_VARCHAR2_TABLE_100();
243     a17 := JTF_VARCHAR2_TABLE_2000();
244     a18 := JTF_VARCHAR2_TABLE_100();
245     a19 := JTF_VARCHAR2_TABLE_100();
246     a20 := JTF_VARCHAR2_TABLE_500();
247     a21 := JTF_VARCHAR2_TABLE_500();
248     a22 := JTF_VARCHAR2_TABLE_500();
249     a23 := JTF_VARCHAR2_TABLE_500();
250     a24 := JTF_VARCHAR2_TABLE_500();
251     a25 := JTF_VARCHAR2_TABLE_500();
252     a26 := JTF_VARCHAR2_TABLE_500();
253     a27 := JTF_VARCHAR2_TABLE_500();
254     a28 := JTF_VARCHAR2_TABLE_500();
255     a29 := JTF_VARCHAR2_TABLE_500();
256     a30 := JTF_VARCHAR2_TABLE_500();
257     a31 := JTF_VARCHAR2_TABLE_500();
258     a32 := JTF_VARCHAR2_TABLE_500();
259     a33 := JTF_VARCHAR2_TABLE_500();
260     a34 := JTF_VARCHAR2_TABLE_500();
261     a35 := JTF_NUMBER_TABLE();
262     a36 := JTF_DATE_TABLE();
263     a37 := JTF_NUMBER_TABLE();
264     a38 := JTF_DATE_TABLE();
265     a39 := JTF_NUMBER_TABLE();
266     a40 := JTF_VARCHAR2_TABLE_100();
267     a41 := JTF_VARCHAR2_TABLE_500();
268     a42 := JTF_VARCHAR2_TABLE_500();
269     a43 := JTF_VARCHAR2_TABLE_500();
270     a44 := JTF_VARCHAR2_TABLE_500();
271     a45 := JTF_VARCHAR2_TABLE_500();
272     a46 := JTF_VARCHAR2_TABLE_500();
273     a47 := JTF_VARCHAR2_TABLE_500();
274     a48 := JTF_VARCHAR2_TABLE_500();
275     a49 := JTF_VARCHAR2_TABLE_500();
276     a50 := JTF_VARCHAR2_TABLE_500();
277     a51 := JTF_VARCHAR2_TABLE_500();
278     a52 := JTF_VARCHAR2_TABLE_500();
279     a53 := JTF_VARCHAR2_TABLE_500();
280     a54 := JTF_VARCHAR2_TABLE_500();
281     a55 := JTF_VARCHAR2_TABLE_500();
282     a56 := JTF_VARCHAR2_TABLE_100();
283     a57 := JTF_VARCHAR2_TABLE_100();
284     a58 := JTF_VARCHAR2_TABLE_100();
285     a59 := JTF_VARCHAR2_TABLE_100();
286     a60 := JTF_NUMBER_TABLE();
287   else
288       a0 := JTF_VARCHAR2_TABLE_100();
289       a1 := JTF_NUMBER_TABLE();
290       a2 := JTF_NUMBER_TABLE();
291       a3 := JTF_VARCHAR2_TABLE_100();
292       a4 := JTF_VARCHAR2_TABLE_100();
293       a5 := JTF_VARCHAR2_TABLE_100();
294       a6 := JTF_VARCHAR2_TABLE_100();
295       a7 := JTF_VARCHAR2_TABLE_200();
296       a8 := JTF_VARCHAR2_TABLE_200();
297       a9 := JTF_VARCHAR2_TABLE_200();
298       a10 := JTF_VARCHAR2_TABLE_100();
299       a11 := JTF_VARCHAR2_TABLE_100();
300       a12 := JTF_VARCHAR2_TABLE_100();
301       a13 := JTF_NUMBER_TABLE();
302       a14 := JTF_NUMBER_TABLE();
303       a15 := JTF_NUMBER_TABLE();
304       a16 := JTF_VARCHAR2_TABLE_100();
305       a17 := JTF_VARCHAR2_TABLE_2000();
306       a18 := JTF_VARCHAR2_TABLE_100();
307       a19 := JTF_VARCHAR2_TABLE_100();
308       a20 := JTF_VARCHAR2_TABLE_500();
309       a21 := JTF_VARCHAR2_TABLE_500();
310       a22 := JTF_VARCHAR2_TABLE_500();
311       a23 := JTF_VARCHAR2_TABLE_500();
312       a24 := JTF_VARCHAR2_TABLE_500();
313       a25 := JTF_VARCHAR2_TABLE_500();
314       a26 := JTF_VARCHAR2_TABLE_500();
315       a27 := JTF_VARCHAR2_TABLE_500();
316       a28 := JTF_VARCHAR2_TABLE_500();
317       a29 := JTF_VARCHAR2_TABLE_500();
318       a30 := JTF_VARCHAR2_TABLE_500();
319       a31 := JTF_VARCHAR2_TABLE_500();
320       a32 := JTF_VARCHAR2_TABLE_500();
321       a33 := JTF_VARCHAR2_TABLE_500();
322       a34 := JTF_VARCHAR2_TABLE_500();
323       a35 := JTF_NUMBER_TABLE();
324       a36 := JTF_DATE_TABLE();
325       a37 := JTF_NUMBER_TABLE();
326       a38 := JTF_DATE_TABLE();
327       a39 := JTF_NUMBER_TABLE();
328       a40 := JTF_VARCHAR2_TABLE_100();
329       a41 := JTF_VARCHAR2_TABLE_500();
330       a42 := JTF_VARCHAR2_TABLE_500();
331       a43 := JTF_VARCHAR2_TABLE_500();
332       a44 := JTF_VARCHAR2_TABLE_500();
333       a45 := JTF_VARCHAR2_TABLE_500();
334       a46 := JTF_VARCHAR2_TABLE_500();
335       a47 := JTF_VARCHAR2_TABLE_500();
336       a48 := JTF_VARCHAR2_TABLE_500();
337       a49 := JTF_VARCHAR2_TABLE_500();
338       a50 := JTF_VARCHAR2_TABLE_500();
339       a51 := JTF_VARCHAR2_TABLE_500();
340       a52 := JTF_VARCHAR2_TABLE_500();
341       a53 := JTF_VARCHAR2_TABLE_500();
342       a54 := JTF_VARCHAR2_TABLE_500();
343       a55 := JTF_VARCHAR2_TABLE_500();
344       a56 := JTF_VARCHAR2_TABLE_100();
345       a57 := JTF_VARCHAR2_TABLE_100();
346       a58 := JTF_VARCHAR2_TABLE_100();
347       a59 := JTF_VARCHAR2_TABLE_100();
348       a60 := JTF_NUMBER_TABLE();
349       if t.count > 0 then
350         a0.extend(t.count);
351         a1.extend(t.count);
352         a2.extend(t.count);
353         a3.extend(t.count);
354         a4.extend(t.count);
355         a5.extend(t.count);
356         a6.extend(t.count);
357         a7.extend(t.count);
358         a8.extend(t.count);
359         a9.extend(t.count);
360         a10.extend(t.count);
361         a11.extend(t.count);
362         a12.extend(t.count);
363         a13.extend(t.count);
364         a14.extend(t.count);
365         a15.extend(t.count);
366         a16.extend(t.count);
367         a17.extend(t.count);
368         a18.extend(t.count);
369         a19.extend(t.count);
370         a20.extend(t.count);
371         a21.extend(t.count);
372         a22.extend(t.count);
373         a23.extend(t.count);
374         a24.extend(t.count);
375         a25.extend(t.count);
376         a26.extend(t.count);
377         a27.extend(t.count);
378         a28.extend(t.count);
379         a29.extend(t.count);
380         a30.extend(t.count);
381         a31.extend(t.count);
382         a32.extend(t.count);
383         a33.extend(t.count);
384         a34.extend(t.count);
385         a35.extend(t.count);
386         a36.extend(t.count);
387         a37.extend(t.count);
388         a38.extend(t.count);
389         a39.extend(t.count);
390         a40.extend(t.count);
391         a41.extend(t.count);
392         a42.extend(t.count);
393         a43.extend(t.count);
394         a44.extend(t.count);
395         a45.extend(t.count);
396         a46.extend(t.count);
397         a47.extend(t.count);
398         a48.extend(t.count);
399         a49.extend(t.count);
400         a50.extend(t.count);
401         a51.extend(t.count);
402         a52.extend(t.count);
403         a53.extend(t.count);
404         a54.extend(t.count);
405         a55.extend(t.count);
406         a56.extend(t.count);
407         a57.extend(t.count);
408         a58.extend(t.count);
409         a59.extend(t.count);
410         a60.extend(t.count);
411         ddindx := t.first;
412         indx := 1;
413         while true loop
414           a0(indx) := t(ddindx).rgd_code;
415           a1(indx) := rosetta_g_miss_num_map(t(ddindx).rule_id);
416           a2(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
417           a3(indx) := t(ddindx).sfwt_flag;
418           a4(indx) := t(ddindx).object1_id1;
419           a5(indx) := t(ddindx).object2_id1;
420           a6(indx) := t(ddindx).object3_id1;
421           a7(indx) := t(ddindx).object1_id2;
422           a8(indx) := t(ddindx).object2_id2;
423           a9(indx) := t(ddindx).object3_id2;
424           a10(indx) := t(ddindx).jtot_object1_code;
425           a11(indx) := t(ddindx).jtot_object2_code;
426           a12(indx) := t(ddindx).jtot_object3_code;
427           a13(indx) := rosetta_g_miss_num_map(t(ddindx).dnz_chr_id);
428           a14(indx) := rosetta_g_miss_num_map(t(ddindx).rgp_id);
429           a15(indx) := rosetta_g_miss_num_map(t(ddindx).priority);
430           a16(indx) := t(ddindx).std_template_yn;
431           a17(indx) := t(ddindx).comments;
432           a18(indx) := t(ddindx).warn_yn;
433           a19(indx) := t(ddindx).attribute_category;
434           a20(indx) := t(ddindx).attribute1;
435           a21(indx) := t(ddindx).attribute2;
436           a22(indx) := t(ddindx).attribute3;
437           a23(indx) := t(ddindx).attribute4;
438           a24(indx) := t(ddindx).attribute5;
439           a25(indx) := t(ddindx).attribute6;
440           a26(indx) := t(ddindx).attribute7;
441           a27(indx) := t(ddindx).attribute8;
442           a28(indx) := t(ddindx).attribute9;
443           a29(indx) := t(ddindx).attribute10;
444           a30(indx) := t(ddindx).attribute11;
445           a31(indx) := t(ddindx).attribute12;
446           a32(indx) := t(ddindx).attribute13;
447           a33(indx) := t(ddindx).attribute14;
448           a34(indx) := t(ddindx).attribute15;
449           a35(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
450           a36(indx) := t(ddindx).creation_date;
451           a37(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
452           a38(indx) := t(ddindx).last_update_date;
453           a39(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
454           a40(indx) := t(ddindx).rule_information_category;
455           a41(indx) := t(ddindx).rule_information1;
456           a42(indx) := t(ddindx).rule_information2;
457           a43(indx) := t(ddindx).rule_information3;
458           a44(indx) := t(ddindx).rule_information4;
459           a45(indx) := t(ddindx).rule_information5;
460           a46(indx) := t(ddindx).rule_information6;
461           a47(indx) := t(ddindx).rule_information7;
462           a48(indx) := t(ddindx).rule_information8;
463           a49(indx) := t(ddindx).rule_information9;
464           a50(indx) := t(ddindx).rule_information10;
465           a51(indx) := t(ddindx).rule_information11;
466           a52(indx) := t(ddindx).rule_information12;
467           a53(indx) := t(ddindx).rule_information13;
468           a54(indx) := t(ddindx).rule_information14;
469           a55(indx) := t(ddindx).rule_information15;
470           a56(indx) := t(ddindx).template_yn;
471           a57(indx) := t(ddindx).ans_set_jtot_object_code;
472           a58(indx) := t(ddindx).ans_set_jtot_object_id1;
473           a59(indx) := t(ddindx).ans_set_jtot_object_id2;
474           a60(indx) := rosetta_g_miss_num_map(t(ddindx).display_sequence);
475           indx := indx+1;
476           if t.last =ddindx
477             then exit;
478           end if;
479           ddindx := t.next(ddindx);
480         end loop;
481       end if;
482    end if;
483   end rosetta_table_copy_out_p2;
484 
485   procedure rosetta_table_copy_in_p3(t out nocopy okl_rgrp_rules_process_pvt.rgr_out_tbl_type, a0 JTF_NUMBER_TABLE
486     , a1 JTF_VARCHAR2_TABLE_100
487     , a2 JTF_VARCHAR2_TABLE_100
488     , a3 JTF_VARCHAR2_TABLE_100
489     ) as
490     ddindx binary_integer; indx binary_integer;
491   begin
492   if a0 is not null and a0.count > 0 then
493       if a0.count > 0 then
494         indx := a0.first;
495         ddindx := 1;
496         while true loop
497           t(ddindx).id := rosetta_g_miss_num_map(a0(indx));
498           t(ddindx).rule_code := a1(indx);
499           t(ddindx).rgd_code := a2(indx);
500           t(ddindx).new_yn := a3(indx);
501           ddindx := ddindx+1;
502           if a0.last =indx
503             then exit;
504           end if;
505           indx := a0.next(indx);
506         end loop;
507       end if;
508    end if;
509   end rosetta_table_copy_in_p3;
510   procedure rosetta_table_copy_out_p3(t okl_rgrp_rules_process_pvt.rgr_out_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
511     , a1 out nocopy JTF_VARCHAR2_TABLE_100
512     , a2 out nocopy JTF_VARCHAR2_TABLE_100
513     , a3 out nocopy JTF_VARCHAR2_TABLE_100
514     ) as
515     ddindx binary_integer; indx binary_integer;
516   begin
517   if t is null or t.count = 0 then
518     a0 := JTF_NUMBER_TABLE();
519     a1 := JTF_VARCHAR2_TABLE_100();
520     a2 := JTF_VARCHAR2_TABLE_100();
521     a3 := JTF_VARCHAR2_TABLE_100();
522   else
523       a0 := JTF_NUMBER_TABLE();
524       a1 := JTF_VARCHAR2_TABLE_100();
525       a2 := JTF_VARCHAR2_TABLE_100();
526       a3 := JTF_VARCHAR2_TABLE_100();
527       if t.count > 0 then
528         a0.extend(t.count);
529         a1.extend(t.count);
530         a2.extend(t.count);
531         a3.extend(t.count);
532         ddindx := t.first;
533         indx := 1;
534         while true loop
535           a0(indx) := rosetta_g_miss_num_map(t(ddindx).id);
536           a1(indx) := t(ddindx).rule_code;
537           a2(indx) := t(ddindx).rgd_code;
538           a3(indx) := t(ddindx).new_yn;
539           indx := indx+1;
540           if t.last =ddindx
541             then exit;
542           end if;
543           ddindx := t.next(ddindx);
544         end loop;
545       end if;
546    end if;
547   end rosetta_table_copy_out_p3;
548 
549   procedure process_rule_group_rules(p_api_version  NUMBER
550     , p_init_msg_list  VARCHAR2
551     , x_return_status out nocopy  VARCHAR2
552     , x_msg_count out nocopy  NUMBER
553     , x_msg_data out nocopy  VARCHAR2
554     , p_chr_id  NUMBER
555     , p_line_id  NUMBER
556     , p_cpl_id  NUMBER
557     , p_rrd_id  NUMBER
558     , p9_a0 JTF_VARCHAR2_TABLE_100
559     , p9_a1 JTF_NUMBER_TABLE
560     , p9_a2 JTF_NUMBER_TABLE
561     , p9_a3 JTF_VARCHAR2_TABLE_100
562     , p9_a4 JTF_VARCHAR2_TABLE_100
563     , p9_a5 JTF_VARCHAR2_TABLE_100
564     , p9_a6 JTF_VARCHAR2_TABLE_100
565     , p9_a7 JTF_VARCHAR2_TABLE_200
566     , p9_a8 JTF_VARCHAR2_TABLE_200
567     , p9_a9 JTF_VARCHAR2_TABLE_200
568     , p9_a10 JTF_VARCHAR2_TABLE_100
569     , p9_a11 JTF_VARCHAR2_TABLE_100
570     , p9_a12 JTF_VARCHAR2_TABLE_100
571     , p9_a13 JTF_NUMBER_TABLE
572     , p9_a14 JTF_NUMBER_TABLE
573     , p9_a15 JTF_NUMBER_TABLE
574     , p9_a16 JTF_VARCHAR2_TABLE_100
575     , p9_a17 JTF_VARCHAR2_TABLE_2000
576     , p9_a18 JTF_VARCHAR2_TABLE_100
577     , p9_a19 JTF_VARCHAR2_TABLE_100
578     , p9_a20 JTF_VARCHAR2_TABLE_500
579     , p9_a21 JTF_VARCHAR2_TABLE_500
580     , p9_a22 JTF_VARCHAR2_TABLE_500
581     , p9_a23 JTF_VARCHAR2_TABLE_500
582     , p9_a24 JTF_VARCHAR2_TABLE_500
583     , p9_a25 JTF_VARCHAR2_TABLE_500
584     , p9_a26 JTF_VARCHAR2_TABLE_500
585     , p9_a27 JTF_VARCHAR2_TABLE_500
586     , p9_a28 JTF_VARCHAR2_TABLE_500
587     , p9_a29 JTF_VARCHAR2_TABLE_500
588     , p9_a30 JTF_VARCHAR2_TABLE_500
589     , p9_a31 JTF_VARCHAR2_TABLE_500
590     , p9_a32 JTF_VARCHAR2_TABLE_500
591     , p9_a33 JTF_VARCHAR2_TABLE_500
592     , p9_a34 JTF_VARCHAR2_TABLE_500
593     , p9_a35 JTF_NUMBER_TABLE
594     , p9_a36 JTF_DATE_TABLE
595     , p9_a37 JTF_NUMBER_TABLE
596     , p9_a38 JTF_DATE_TABLE
597     , p9_a39 JTF_NUMBER_TABLE
598     , p9_a40 JTF_VARCHAR2_TABLE_100
599     , p9_a41 JTF_VARCHAR2_TABLE_500
600     , p9_a42 JTF_VARCHAR2_TABLE_500
601     , p9_a43 JTF_VARCHAR2_TABLE_500
602     , p9_a44 JTF_VARCHAR2_TABLE_500
603     , p9_a45 JTF_VARCHAR2_TABLE_500
604     , p9_a46 JTF_VARCHAR2_TABLE_500
605     , p9_a47 JTF_VARCHAR2_TABLE_500
606     , p9_a48 JTF_VARCHAR2_TABLE_500
607     , p9_a49 JTF_VARCHAR2_TABLE_500
608     , p9_a50 JTF_VARCHAR2_TABLE_500
609     , p9_a51 JTF_VARCHAR2_TABLE_500
610     , p9_a52 JTF_VARCHAR2_TABLE_500
611     , p9_a53 JTF_VARCHAR2_TABLE_500
612     , p9_a54 JTF_VARCHAR2_TABLE_500
613     , p9_a55 JTF_VARCHAR2_TABLE_500
614     , p9_a56 JTF_VARCHAR2_TABLE_100
615     , p9_a57 JTF_VARCHAR2_TABLE_100
616     , p9_a58 JTF_VARCHAR2_TABLE_100
617     , p9_a59 JTF_VARCHAR2_TABLE_100
618     , p9_a60 JTF_NUMBER_TABLE
619   )
620 
621   as
622     ddp_rgr_tbl okl_rgrp_rules_process_pvt.rgr_tbl_type;
623     ddindx binary_integer; indx binary_integer;
624   begin
625 
626     -- copy data to the local IN or IN-OUT args, if any
627 
628 
629 
630 
631 
632 
633 
634 
635 
636     okl_rgrp_rules_process_pvt_w.rosetta_table_copy_in_p2(ddp_rgr_tbl, p9_a0
637       , p9_a1
638       , p9_a2
639       , p9_a3
640       , p9_a4
641       , p9_a5
642       , p9_a6
643       , p9_a7
644       , p9_a8
645       , p9_a9
646       , p9_a10
647       , p9_a11
648       , p9_a12
649       , p9_a13
650       , p9_a14
651       , p9_a15
652       , p9_a16
653       , p9_a17
654       , p9_a18
655       , p9_a19
656       , p9_a20
657       , p9_a21
658       , p9_a22
659       , p9_a23
660       , p9_a24
661       , p9_a25
662       , p9_a26
663       , p9_a27
664       , p9_a28
665       , p9_a29
666       , p9_a30
667       , p9_a31
668       , p9_a32
669       , p9_a33
670       , p9_a34
671       , p9_a35
672       , p9_a36
673       , p9_a37
674       , p9_a38
675       , p9_a39
676       , p9_a40
677       , p9_a41
678       , p9_a42
679       , p9_a43
680       , p9_a44
681       , p9_a45
682       , p9_a46
683       , p9_a47
684       , p9_a48
685       , p9_a49
686       , p9_a50
687       , p9_a51
688       , p9_a52
689       , p9_a53
690       , p9_a54
691       , p9_a55
692       , p9_a56
693       , p9_a57
694       , p9_a58
695       , p9_a59
696       , p9_a60
697       );
698 
699     -- here's the delegated call to the old PL/SQL routine
700     okl_rgrp_rules_process_pvt.process_rule_group_rules(p_api_version,
701       p_init_msg_list,
702       x_return_status,
703       x_msg_count,
704       x_msg_data,
705       p_chr_id,
706       p_line_id,
707       p_cpl_id,
708       p_rrd_id,
709       ddp_rgr_tbl);
710 
711     -- copy data back from the local variables to OUT or IN-OUT args, if any
712 
713 
714 
715 
716 
717 
718 
719 
720 
721   end;
722 
723   procedure process_template_rules(p_api_version  NUMBER
724     , p_init_msg_list  VARCHAR2
725     , x_return_status out nocopy  VARCHAR2
726     , x_msg_count out nocopy  NUMBER
727     , x_msg_data out nocopy  VARCHAR2
728     , p_id  NUMBER
729     , p6_a0 JTF_VARCHAR2_TABLE_100
730     , p6_a1 JTF_NUMBER_TABLE
731     , p6_a2 JTF_NUMBER_TABLE
732     , p6_a3 JTF_VARCHAR2_TABLE_100
733     , p6_a4 JTF_VARCHAR2_TABLE_100
734     , p6_a5 JTF_VARCHAR2_TABLE_100
735     , p6_a6 JTF_VARCHAR2_TABLE_100
736     , p6_a7 JTF_VARCHAR2_TABLE_200
737     , p6_a8 JTF_VARCHAR2_TABLE_200
738     , p6_a9 JTF_VARCHAR2_TABLE_200
739     , p6_a10 JTF_VARCHAR2_TABLE_100
740     , p6_a11 JTF_VARCHAR2_TABLE_100
741     , p6_a12 JTF_VARCHAR2_TABLE_100
742     , p6_a13 JTF_NUMBER_TABLE
743     , p6_a14 JTF_NUMBER_TABLE
744     , p6_a15 JTF_NUMBER_TABLE
745     , p6_a16 JTF_VARCHAR2_TABLE_100
746     , p6_a17 JTF_VARCHAR2_TABLE_2000
747     , p6_a18 JTF_VARCHAR2_TABLE_100
748     , p6_a19 JTF_VARCHAR2_TABLE_100
749     , p6_a20 JTF_VARCHAR2_TABLE_500
750     , p6_a21 JTF_VARCHAR2_TABLE_500
751     , p6_a22 JTF_VARCHAR2_TABLE_500
752     , p6_a23 JTF_VARCHAR2_TABLE_500
753     , p6_a24 JTF_VARCHAR2_TABLE_500
754     , p6_a25 JTF_VARCHAR2_TABLE_500
755     , p6_a26 JTF_VARCHAR2_TABLE_500
756     , p6_a27 JTF_VARCHAR2_TABLE_500
757     , p6_a28 JTF_VARCHAR2_TABLE_500
758     , p6_a29 JTF_VARCHAR2_TABLE_500
759     , p6_a30 JTF_VARCHAR2_TABLE_500
760     , p6_a31 JTF_VARCHAR2_TABLE_500
761     , p6_a32 JTF_VARCHAR2_TABLE_500
762     , p6_a33 JTF_VARCHAR2_TABLE_500
763     , p6_a34 JTF_VARCHAR2_TABLE_500
764     , p6_a35 JTF_NUMBER_TABLE
765     , p6_a36 JTF_DATE_TABLE
766     , p6_a37 JTF_NUMBER_TABLE
767     , p6_a38 JTF_DATE_TABLE
768     , p6_a39 JTF_NUMBER_TABLE
769     , p6_a40 JTF_VARCHAR2_TABLE_100
770     , p6_a41 JTF_VARCHAR2_TABLE_500
771     , p6_a42 JTF_VARCHAR2_TABLE_500
772     , p6_a43 JTF_VARCHAR2_TABLE_500
773     , p6_a44 JTF_VARCHAR2_TABLE_500
774     , p6_a45 JTF_VARCHAR2_TABLE_500
775     , p6_a46 JTF_VARCHAR2_TABLE_500
776     , p6_a47 JTF_VARCHAR2_TABLE_500
777     , p6_a48 JTF_VARCHAR2_TABLE_500
778     , p6_a49 JTF_VARCHAR2_TABLE_500
779     , p6_a50 JTF_VARCHAR2_TABLE_500
780     , p6_a51 JTF_VARCHAR2_TABLE_500
781     , p6_a52 JTF_VARCHAR2_TABLE_500
782     , p6_a53 JTF_VARCHAR2_TABLE_500
783     , p6_a54 JTF_VARCHAR2_TABLE_500
784     , p6_a55 JTF_VARCHAR2_TABLE_500
785     , p6_a56 JTF_VARCHAR2_TABLE_100
786     , p6_a57 JTF_VARCHAR2_TABLE_100
787     , p6_a58 JTF_VARCHAR2_TABLE_100
788     , p6_a59 JTF_VARCHAR2_TABLE_100
789     , p6_a60 JTF_NUMBER_TABLE
790     , p7_a0 out nocopy JTF_NUMBER_TABLE
791     , p7_a1 out nocopy JTF_VARCHAR2_TABLE_100
792     , p7_a2 out nocopy JTF_VARCHAR2_TABLE_100
793     , p7_a3 out nocopy JTF_VARCHAR2_TABLE_100
794   )
795 
796   as
797     ddp_rgr_tbl okl_rgrp_rules_process_pvt.rgr_tbl_type;
798     ddx_rgr_tbl okl_rgrp_rules_process_pvt.rgr_out_tbl_type;
799     ddindx binary_integer; indx binary_integer;
800   begin
801 
802     -- copy data to the local IN or IN-OUT args, if any
803 
804 
805 
806 
807 
808 
809     okl_rgrp_rules_process_pvt_w.rosetta_table_copy_in_p2(ddp_rgr_tbl, p6_a0
810       , p6_a1
811       , p6_a2
812       , p6_a3
813       , p6_a4
814       , p6_a5
815       , p6_a6
816       , p6_a7
817       , p6_a8
818       , p6_a9
819       , p6_a10
820       , p6_a11
821       , p6_a12
822       , p6_a13
823       , p6_a14
824       , p6_a15
825       , p6_a16
826       , p6_a17
827       , p6_a18
828       , p6_a19
829       , p6_a20
830       , p6_a21
831       , p6_a22
832       , p6_a23
833       , p6_a24
834       , p6_a25
835       , p6_a26
836       , p6_a27
837       , p6_a28
838       , p6_a29
839       , p6_a30
840       , p6_a31
841       , p6_a32
842       , p6_a33
843       , p6_a34
844       , p6_a35
845       , p6_a36
846       , p6_a37
847       , p6_a38
848       , p6_a39
849       , p6_a40
850       , p6_a41
851       , p6_a42
852       , p6_a43
853       , p6_a44
854       , p6_a45
855       , p6_a46
856       , p6_a47
857       , p6_a48
858       , p6_a49
859       , p6_a50
860       , p6_a51
861       , p6_a52
862       , p6_a53
863       , p6_a54
864       , p6_a55
865       , p6_a56
866       , p6_a57
867       , p6_a58
868       , p6_a59
869       , p6_a60
870       );
871 
872 
873     -- here's the delegated call to the old PL/SQL routine
874     okl_rgrp_rules_process_pvt.process_template_rules(p_api_version,
875       p_init_msg_list,
876       x_return_status,
877       x_msg_count,
878       x_msg_data,
879       p_id,
880       ddp_rgr_tbl,
881       ddx_rgr_tbl);
882 
883     -- copy data back from the local variables to OUT or IN-OUT args, if any
884 
885 
886 
887 
888 
889 
890 
891     okl_rgrp_rules_process_pvt_w.rosetta_table_copy_out_p3(ddx_rgr_tbl, p7_a0
892       , p7_a1
893       , p7_a2
894       , p7_a3
895       );
896   end;
897 
898 end okl_rgrp_rules_process_pvt_w;