DBA Data[Home] [Help]

PACKAGE BODY: APPS.QP_QUALIFIER_RULES_PUB_W

Source


1 package body qp_qualifier_rules_pub_w as
2   /* $Header: ozfwqqrb.pls 120.3 2005/08/26 15:39 julou 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_p1(t out nocopy qp_qualifier_rules_pub.qualifiers_tbl_type, a0 JTF_VARCHAR2_TABLE_300
23     , a1 JTF_VARCHAR2_TABLE_300
24     , a2 JTF_VARCHAR2_TABLE_300
25     , a3 JTF_VARCHAR2_TABLE_300
26     , a4 JTF_VARCHAR2_TABLE_300
27     , a5 JTF_VARCHAR2_TABLE_300
28     , a6 JTF_VARCHAR2_TABLE_300
29     , a7 JTF_VARCHAR2_TABLE_300
30     , a8 JTF_VARCHAR2_TABLE_300
31     , a9 JTF_VARCHAR2_TABLE_300
32     , a10 JTF_VARCHAR2_TABLE_300
33     , a11 JTF_VARCHAR2_TABLE_300
34     , a12 JTF_VARCHAR2_TABLE_300
35     , a13 JTF_VARCHAR2_TABLE_300
36     , a14 JTF_VARCHAR2_TABLE_300
37     , a15 JTF_VARCHAR2_TABLE_100
38     , a16 JTF_VARCHAR2_TABLE_100
39     , a17 JTF_NUMBER_TABLE
40     , a18 JTF_NUMBER_TABLE
41     , a19 JTF_DATE_TABLE
42     , a20 JTF_DATE_TABLE
43     , a21 JTF_VARCHAR2_TABLE_100
44     , a22 JTF_NUMBER_TABLE
45     , a23 JTF_DATE_TABLE
46     , a24 JTF_NUMBER_TABLE
47     , a25 JTF_NUMBER_TABLE
48     , a26 JTF_NUMBER_TABLE
49     , a27 JTF_NUMBER_TABLE
50     , a28 JTF_NUMBER_TABLE
51     , a29 JTF_DATE_TABLE
52     , a30 JTF_VARCHAR2_TABLE_100
53     , a31 JTF_VARCHAR2_TABLE_300
54     , a32 JTF_VARCHAR2_TABLE_300
55     , a33 JTF_VARCHAR2_TABLE_100
56     , a34 JTF_VARCHAR2_TABLE_100
57     , a35 JTF_NUMBER_TABLE
58     , a36 JTF_NUMBER_TABLE
59     , a37 JTF_NUMBER_TABLE
60     , a38 JTF_NUMBER_TABLE
61     , a39 JTF_NUMBER_TABLE
62     , a40 JTF_DATE_TABLE
63     , a41 JTF_VARCHAR2_TABLE_100
64     , a42 JTF_NUMBER_TABLE
65     , a43 JTF_NUMBER_TABLE
66     , a44 JTF_VARCHAR2_TABLE_100
67     , a45 JTF_NUMBER_TABLE
68     , a46 JTF_NUMBER_TABLE
69     , a47 JTF_VARCHAR2_TABLE_100
70     , a48 JTF_NUMBER_TABLE
71     , a49 JTF_VARCHAR2_TABLE_100
72     , a50 JTF_VARCHAR2_TABLE_100
73     , a51 JTF_VARCHAR2_TABLE_100
74     ) as
75     ddindx binary_integer; indx binary_integer;
76   begin
77   if a0 is not null and a0.count > 0 then
78       if a0.count > 0 then
79         indx := a0.first;
80         ddindx := 1;
81         while true loop
82           t(ddindx).attribute1 := a0(indx);
83           t(ddindx).attribute10 := a1(indx);
84           t(ddindx).attribute11 := a2(indx);
85           t(ddindx).attribute12 := a3(indx);
86           t(ddindx).attribute13 := a4(indx);
87           t(ddindx).attribute14 := a5(indx);
88           t(ddindx).attribute15 := a6(indx);
89           t(ddindx).attribute2 := a7(indx);
90           t(ddindx).attribute3 := a8(indx);
91           t(ddindx).attribute4 := a9(indx);
92           t(ddindx).attribute5 := a10(indx);
93           t(ddindx).attribute6 := a11(indx);
94           t(ddindx).attribute7 := a12(indx);
95           t(ddindx).attribute8 := a13(indx);
96           t(ddindx).attribute9 := a14(indx);
97           t(ddindx).comparison_operator_code := a15(indx);
98           t(ddindx).context := a16(indx);
99           t(ddindx).created_by := rosetta_g_miss_num_map(a17(indx));
100           t(ddindx).created_from_rule_id := rosetta_g_miss_num_map(a18(indx));
101           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a19(indx));
102           t(ddindx).end_date_active := rosetta_g_miss_date_in_map(a20(indx));
103           t(ddindx).excluder_flag := a21(indx);
104           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a22(indx));
105           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a23(indx));
106           t(ddindx).last_update_login := rosetta_g_miss_num_map(a24(indx));
107           t(ddindx).list_header_id := rosetta_g_miss_num_map(a25(indx));
108           t(ddindx).list_line_id := rosetta_g_miss_num_map(a26(indx));
109           t(ddindx).program_application_id := rosetta_g_miss_num_map(a27(indx));
110           t(ddindx).program_id := rosetta_g_miss_num_map(a28(indx));
111           t(ddindx).program_update_date := rosetta_g_miss_date_in_map(a29(indx));
112           t(ddindx).qualifier_attribute := a30(indx);
113           t(ddindx).qualifier_attr_value := a31(indx);
114           t(ddindx).qualifier_attr_value_to := a32(indx);
115           t(ddindx).qualifier_context := a33(indx);
116           t(ddindx).qualifier_datatype := a34(indx);
117           t(ddindx).qualifier_grouping_no := rosetta_g_miss_num_map(a35(indx));
118           t(ddindx).qualifier_id := rosetta_g_miss_num_map(a36(indx));
119           t(ddindx).qualifier_precedence := rosetta_g_miss_num_map(a37(indx));
120           t(ddindx).qualifier_rule_id := rosetta_g_miss_num_map(a38(indx));
121           t(ddindx).request_id := rosetta_g_miss_num_map(a39(indx));
122           t(ddindx).start_date_active := rosetta_g_miss_date_in_map(a40(indx));
123           t(ddindx).list_type_code := a41(indx);
124           t(ddindx).qual_attr_value_from_number := rosetta_g_miss_num_map(a42(indx));
125           t(ddindx).qual_attr_value_to_number := rosetta_g_miss_num_map(a43(indx));
126           t(ddindx).active_flag := a44(indx);
127           t(ddindx).search_ind := rosetta_g_miss_num_map(a45(indx));
128           t(ddindx).qualifier_group_cnt := rosetta_g_miss_num_map(a46(indx));
129           t(ddindx).header_quals_exist_flag := a47(indx);
130           t(ddindx).distinct_row_count := rosetta_g_miss_num_map(a48(indx));
131           t(ddindx).return_status := a49(indx);
132           t(ddindx).db_flag := a50(indx);
133           t(ddindx).operation := a51(indx);
134           ddindx := ddindx+1;
135           if a0.last =indx
136             then exit;
137           end if;
138           indx := a0.next(indx);
139         end loop;
140       end if;
141    end if;
142   end rosetta_table_copy_in_p1;
143   procedure rosetta_table_copy_out_p1(t qp_qualifier_rules_pub.qualifiers_tbl_type, a0 out nocopy JTF_VARCHAR2_TABLE_300
144     , a1 out nocopy JTF_VARCHAR2_TABLE_300
145     , a2 out nocopy JTF_VARCHAR2_TABLE_300
146     , a3 out nocopy JTF_VARCHAR2_TABLE_300
147     , a4 out nocopy JTF_VARCHAR2_TABLE_300
148     , a5 out nocopy JTF_VARCHAR2_TABLE_300
149     , a6 out nocopy JTF_VARCHAR2_TABLE_300
150     , a7 out nocopy JTF_VARCHAR2_TABLE_300
151     , a8 out nocopy JTF_VARCHAR2_TABLE_300
152     , a9 out nocopy JTF_VARCHAR2_TABLE_300
153     , a10 out nocopy JTF_VARCHAR2_TABLE_300
154     , a11 out nocopy JTF_VARCHAR2_TABLE_300
155     , a12 out nocopy JTF_VARCHAR2_TABLE_300
156     , a13 out nocopy JTF_VARCHAR2_TABLE_300
157     , a14 out nocopy JTF_VARCHAR2_TABLE_300
158     , a15 out nocopy JTF_VARCHAR2_TABLE_100
159     , a16 out nocopy JTF_VARCHAR2_TABLE_100
160     , a17 out nocopy JTF_NUMBER_TABLE
161     , a18 out nocopy JTF_NUMBER_TABLE
162     , a19 out nocopy JTF_DATE_TABLE
163     , a20 out nocopy JTF_DATE_TABLE
164     , a21 out nocopy JTF_VARCHAR2_TABLE_100
165     , a22 out nocopy JTF_NUMBER_TABLE
166     , a23 out nocopy JTF_DATE_TABLE
167     , a24 out nocopy JTF_NUMBER_TABLE
168     , a25 out nocopy JTF_NUMBER_TABLE
169     , a26 out nocopy JTF_NUMBER_TABLE
170     , a27 out nocopy JTF_NUMBER_TABLE
171     , a28 out nocopy JTF_NUMBER_TABLE
172     , a29 out nocopy JTF_DATE_TABLE
173     , a30 out nocopy JTF_VARCHAR2_TABLE_100
174     , a31 out nocopy JTF_VARCHAR2_TABLE_300
175     , a32 out nocopy JTF_VARCHAR2_TABLE_300
176     , a33 out nocopy JTF_VARCHAR2_TABLE_100
177     , a34 out nocopy JTF_VARCHAR2_TABLE_100
178     , a35 out nocopy JTF_NUMBER_TABLE
179     , a36 out nocopy JTF_NUMBER_TABLE
180     , a37 out nocopy JTF_NUMBER_TABLE
181     , a38 out nocopy JTF_NUMBER_TABLE
182     , a39 out nocopy JTF_NUMBER_TABLE
183     , a40 out nocopy JTF_DATE_TABLE
184     , a41 out nocopy JTF_VARCHAR2_TABLE_100
185     , a42 out nocopy JTF_NUMBER_TABLE
186     , a43 out nocopy JTF_NUMBER_TABLE
187     , a44 out nocopy JTF_VARCHAR2_TABLE_100
188     , a45 out nocopy JTF_NUMBER_TABLE
189     , a46 out nocopy JTF_NUMBER_TABLE
190     , a47 out nocopy JTF_VARCHAR2_TABLE_100
191     , a48 out nocopy JTF_NUMBER_TABLE
192     , a49 out nocopy JTF_VARCHAR2_TABLE_100
193     , a50 out nocopy JTF_VARCHAR2_TABLE_100
194     , a51 out nocopy JTF_VARCHAR2_TABLE_100
195     ) as
196     ddindx binary_integer; indx binary_integer;
197   begin
198   if t is null or t.count = 0 then
199     a0 := JTF_VARCHAR2_TABLE_300();
200     a1 := JTF_VARCHAR2_TABLE_300();
201     a2 := JTF_VARCHAR2_TABLE_300();
202     a3 := JTF_VARCHAR2_TABLE_300();
203     a4 := JTF_VARCHAR2_TABLE_300();
204     a5 := JTF_VARCHAR2_TABLE_300();
205     a6 := JTF_VARCHAR2_TABLE_300();
206     a7 := JTF_VARCHAR2_TABLE_300();
207     a8 := JTF_VARCHAR2_TABLE_300();
208     a9 := JTF_VARCHAR2_TABLE_300();
209     a10 := JTF_VARCHAR2_TABLE_300();
210     a11 := JTF_VARCHAR2_TABLE_300();
211     a12 := JTF_VARCHAR2_TABLE_300();
212     a13 := JTF_VARCHAR2_TABLE_300();
213     a14 := JTF_VARCHAR2_TABLE_300();
214     a15 := JTF_VARCHAR2_TABLE_100();
215     a16 := JTF_VARCHAR2_TABLE_100();
216     a17 := JTF_NUMBER_TABLE();
217     a18 := JTF_NUMBER_TABLE();
218     a19 := JTF_DATE_TABLE();
219     a20 := JTF_DATE_TABLE();
220     a21 := JTF_VARCHAR2_TABLE_100();
221     a22 := JTF_NUMBER_TABLE();
222     a23 := JTF_DATE_TABLE();
223     a24 := JTF_NUMBER_TABLE();
224     a25 := JTF_NUMBER_TABLE();
225     a26 := JTF_NUMBER_TABLE();
226     a27 := JTF_NUMBER_TABLE();
227     a28 := JTF_NUMBER_TABLE();
228     a29 := JTF_DATE_TABLE();
229     a30 := JTF_VARCHAR2_TABLE_100();
230     a31 := JTF_VARCHAR2_TABLE_300();
231     a32 := JTF_VARCHAR2_TABLE_300();
232     a33 := JTF_VARCHAR2_TABLE_100();
233     a34 := JTF_VARCHAR2_TABLE_100();
234     a35 := JTF_NUMBER_TABLE();
235     a36 := JTF_NUMBER_TABLE();
236     a37 := JTF_NUMBER_TABLE();
237     a38 := JTF_NUMBER_TABLE();
238     a39 := JTF_NUMBER_TABLE();
239     a40 := JTF_DATE_TABLE();
240     a41 := JTF_VARCHAR2_TABLE_100();
241     a42 := JTF_NUMBER_TABLE();
242     a43 := JTF_NUMBER_TABLE();
243     a44 := JTF_VARCHAR2_TABLE_100();
244     a45 := JTF_NUMBER_TABLE();
245     a46 := JTF_NUMBER_TABLE();
246     a47 := JTF_VARCHAR2_TABLE_100();
247     a48 := JTF_NUMBER_TABLE();
248     a49 := JTF_VARCHAR2_TABLE_100();
249     a50 := JTF_VARCHAR2_TABLE_100();
250     a51 := JTF_VARCHAR2_TABLE_100();
251   else
252       a0 := JTF_VARCHAR2_TABLE_300();
253       a1 := JTF_VARCHAR2_TABLE_300();
254       a2 := JTF_VARCHAR2_TABLE_300();
255       a3 := JTF_VARCHAR2_TABLE_300();
256       a4 := JTF_VARCHAR2_TABLE_300();
257       a5 := JTF_VARCHAR2_TABLE_300();
258       a6 := JTF_VARCHAR2_TABLE_300();
259       a7 := JTF_VARCHAR2_TABLE_300();
260       a8 := JTF_VARCHAR2_TABLE_300();
261       a9 := JTF_VARCHAR2_TABLE_300();
262       a10 := JTF_VARCHAR2_TABLE_300();
263       a11 := JTF_VARCHAR2_TABLE_300();
264       a12 := JTF_VARCHAR2_TABLE_300();
265       a13 := JTF_VARCHAR2_TABLE_300();
266       a14 := JTF_VARCHAR2_TABLE_300();
267       a15 := JTF_VARCHAR2_TABLE_100();
268       a16 := JTF_VARCHAR2_TABLE_100();
269       a17 := JTF_NUMBER_TABLE();
270       a18 := JTF_NUMBER_TABLE();
271       a19 := JTF_DATE_TABLE();
272       a20 := JTF_DATE_TABLE();
273       a21 := JTF_VARCHAR2_TABLE_100();
274       a22 := JTF_NUMBER_TABLE();
275       a23 := JTF_DATE_TABLE();
276       a24 := JTF_NUMBER_TABLE();
277       a25 := JTF_NUMBER_TABLE();
278       a26 := JTF_NUMBER_TABLE();
279       a27 := JTF_NUMBER_TABLE();
280       a28 := JTF_NUMBER_TABLE();
281       a29 := JTF_DATE_TABLE();
282       a30 := JTF_VARCHAR2_TABLE_100();
283       a31 := JTF_VARCHAR2_TABLE_300();
284       a32 := JTF_VARCHAR2_TABLE_300();
285       a33 := JTF_VARCHAR2_TABLE_100();
286       a34 := JTF_VARCHAR2_TABLE_100();
287       a35 := JTF_NUMBER_TABLE();
288       a36 := JTF_NUMBER_TABLE();
289       a37 := JTF_NUMBER_TABLE();
290       a38 := JTF_NUMBER_TABLE();
291       a39 := JTF_NUMBER_TABLE();
292       a40 := JTF_DATE_TABLE();
293       a41 := JTF_VARCHAR2_TABLE_100();
294       a42 := JTF_NUMBER_TABLE();
295       a43 := JTF_NUMBER_TABLE();
296       a44 := JTF_VARCHAR2_TABLE_100();
297       a45 := JTF_NUMBER_TABLE();
298       a46 := JTF_NUMBER_TABLE();
299       a47 := JTF_VARCHAR2_TABLE_100();
300       a48 := JTF_NUMBER_TABLE();
301       a49 := JTF_VARCHAR2_TABLE_100();
302       a50 := JTF_VARCHAR2_TABLE_100();
303       a51 := JTF_VARCHAR2_TABLE_100();
304       if t.count > 0 then
305         a0.extend(t.count);
306         a1.extend(t.count);
307         a2.extend(t.count);
308         a3.extend(t.count);
309         a4.extend(t.count);
310         a5.extend(t.count);
311         a6.extend(t.count);
312         a7.extend(t.count);
313         a8.extend(t.count);
314         a9.extend(t.count);
315         a10.extend(t.count);
316         a11.extend(t.count);
317         a12.extend(t.count);
318         a13.extend(t.count);
319         a14.extend(t.count);
320         a15.extend(t.count);
321         a16.extend(t.count);
322         a17.extend(t.count);
323         a18.extend(t.count);
324         a19.extend(t.count);
325         a20.extend(t.count);
326         a21.extend(t.count);
327         a22.extend(t.count);
328         a23.extend(t.count);
329         a24.extend(t.count);
330         a25.extend(t.count);
331         a26.extend(t.count);
332         a27.extend(t.count);
333         a28.extend(t.count);
334         a29.extend(t.count);
335         a30.extend(t.count);
336         a31.extend(t.count);
337         a32.extend(t.count);
338         a33.extend(t.count);
339         a34.extend(t.count);
340         a35.extend(t.count);
341         a36.extend(t.count);
342         a37.extend(t.count);
343         a38.extend(t.count);
344         a39.extend(t.count);
345         a40.extend(t.count);
346         a41.extend(t.count);
347         a42.extend(t.count);
348         a43.extend(t.count);
349         a44.extend(t.count);
350         a45.extend(t.count);
351         a46.extend(t.count);
352         a47.extend(t.count);
353         a48.extend(t.count);
354         a49.extend(t.count);
355         a50.extend(t.count);
356         a51.extend(t.count);
357         ddindx := t.first;
358         indx := 1;
359         while true loop
360           a0(indx) := t(ddindx).attribute1;
361           a1(indx) := t(ddindx).attribute10;
362           a2(indx) := t(ddindx).attribute11;
363           a3(indx) := t(ddindx).attribute12;
364           a4(indx) := t(ddindx).attribute13;
365           a5(indx) := t(ddindx).attribute14;
366           a6(indx) := t(ddindx).attribute15;
367           a7(indx) := t(ddindx).attribute2;
368           a8(indx) := t(ddindx).attribute3;
369           a9(indx) := t(ddindx).attribute4;
370           a10(indx) := t(ddindx).attribute5;
371           a11(indx) := t(ddindx).attribute6;
372           a12(indx) := t(ddindx).attribute7;
373           a13(indx) := t(ddindx).attribute8;
374           a14(indx) := t(ddindx).attribute9;
375           a15(indx) := t(ddindx).comparison_operator_code;
376           a16(indx) := t(ddindx).context;
377           a17(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
378           a18(indx) := rosetta_g_miss_num_map(t(ddindx).created_from_rule_id);
379           a19(indx) := t(ddindx).creation_date;
380           a20(indx) := t(ddindx).end_date_active;
381           a21(indx) := t(ddindx).excluder_flag;
382           a22(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
383           a23(indx) := t(ddindx).last_update_date;
384           a24(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
385           a25(indx) := rosetta_g_miss_num_map(t(ddindx).list_header_id);
386           a26(indx) := rosetta_g_miss_num_map(t(ddindx).list_line_id);
387           a27(indx) := rosetta_g_miss_num_map(t(ddindx).program_application_id);
388           a28(indx) := rosetta_g_miss_num_map(t(ddindx).program_id);
389           a29(indx) := t(ddindx).program_update_date;
390           a30(indx) := t(ddindx).qualifier_attribute;
391           a31(indx) := t(ddindx).qualifier_attr_value;
392           a32(indx) := t(ddindx).qualifier_attr_value_to;
393           a33(indx) := t(ddindx).qualifier_context;
394           a34(indx) := t(ddindx).qualifier_datatype;
395           a35(indx) := rosetta_g_miss_num_map(t(ddindx).qualifier_grouping_no);
396           a36(indx) := rosetta_g_miss_num_map(t(ddindx).qualifier_id);
397           a37(indx) := rosetta_g_miss_num_map(t(ddindx).qualifier_precedence);
398           a38(indx) := rosetta_g_miss_num_map(t(ddindx).qualifier_rule_id);
399           a39(indx) := rosetta_g_miss_num_map(t(ddindx).request_id);
400           a40(indx) := t(ddindx).start_date_active;
401           a41(indx) := t(ddindx).list_type_code;
402           a42(indx) := rosetta_g_miss_num_map(t(ddindx).qual_attr_value_from_number);
403           a43(indx) := rosetta_g_miss_num_map(t(ddindx).qual_attr_value_to_number);
404           a44(indx) := t(ddindx).active_flag;
405           a45(indx) := rosetta_g_miss_num_map(t(ddindx).search_ind);
406           a46(indx) := rosetta_g_miss_num_map(t(ddindx).qualifier_group_cnt);
407           a47(indx) := t(ddindx).header_quals_exist_flag;
408           a48(indx) := rosetta_g_miss_num_map(t(ddindx).distinct_row_count);
409           a49(indx) := t(ddindx).return_status;
410           a50(indx) := t(ddindx).db_flag;
411           a51(indx) := t(ddindx).operation;
412           indx := indx+1;
413           if t.last =ddindx
414             then exit;
415           end if;
416           ddindx := t.next(ddindx);
417         end loop;
418       end if;
419    end if;
420   end rosetta_table_copy_out_p1;
421 
422 end qp_qualifier_rules_pub_w;