DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_FMP_EFFECTIVITY_DTL_PVT_W

Source


1 package body ahl_fmp_effectivity_dtl_pvt_w as
2   /* $Header: AHLWMEDB.pls 120.4.12020000.2 2012/12/14 10:03:47 shnatu ship $ */
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   rosetta_g_mistake_date_high date := to_date('01/01/+4710', 'MM/DD/SYYYY');
6   rosetta_g_mistake_date_low date := to_date('01/01/-4710', 'MM/DD/SYYYY');
7 
8   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
9   function rosetta_g_miss_date_in_map(d date) return date as
10   begin
11     if d > rosetta_g_mistake_date_high then return fnd_api.g_miss_date; end if;
12     if d < rosetta_g_mistake_date_low then return fnd_api.g_miss_date; end if;
13     return d;
14   end;
15 
16   procedure rosetta_table_copy_in_p1(t out nocopy ahl_fmp_effectivity_dtl_pvt.effectivity_detail_tbl_type, a0 JTF_NUMBER_TABLE
17     , a1 JTF_NUMBER_TABLE
18     , a2 JTF_VARCHAR2_TABLE_100
19     , a3 JTF_VARCHAR2_TABLE_100
20     , a4 JTF_VARCHAR2_TABLE_100
21     , a5 JTF_NUMBER_TABLE
22     , a6 JTF_VARCHAR2_TABLE_100
23     , a7 JTF_DATE_TABLE
24     , a8 JTF_DATE_TABLE
25     , a9 JTF_VARCHAR2_TABLE_100
26     , a10 JTF_VARCHAR2_TABLE_100
27     , a11 JTF_VARCHAR2_TABLE_100
28     , a12 JTF_VARCHAR2_TABLE_200
29     , a13 JTF_VARCHAR2_TABLE_200
30     , a14 JTF_VARCHAR2_TABLE_200
31     , a15 JTF_VARCHAR2_TABLE_200
32     , a16 JTF_VARCHAR2_TABLE_200
33     , a17 JTF_VARCHAR2_TABLE_200
34     , a18 JTF_VARCHAR2_TABLE_200
35     , a19 JTF_VARCHAR2_TABLE_200
36     , a20 JTF_VARCHAR2_TABLE_200
37     , a21 JTF_VARCHAR2_TABLE_200
38     , a22 JTF_VARCHAR2_TABLE_200
39     , a23 JTF_VARCHAR2_TABLE_200
40     , a24 JTF_VARCHAR2_TABLE_200
41     , a25 JTF_VARCHAR2_TABLE_200
42     , a26 JTF_VARCHAR2_TABLE_200
43     , a27 JTF_DATE_TABLE
44     , a28 JTF_NUMBER_TABLE
45     , a29 JTF_DATE_TABLE
46     , a30 JTF_NUMBER_TABLE
47     , a31 JTF_NUMBER_TABLE
48     , a32 JTF_VARCHAR2_TABLE_100
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).mr_effectivity_detail_id := a0(indx);
58           t(ddindx).object_version_number := a1(indx);
59           t(ddindx).exclude_flag := a2(indx);
60           t(ddindx).serial_number_from := a3(indx);
61           t(ddindx).serial_number_to := a4(indx);
62           t(ddindx).manufacturer_id := a5(indx);
63           t(ddindx).manufacturer := a6(indx);
64           t(ddindx).manufacture_date_from := rosetta_g_miss_date_in_map(a7(indx));
65           t(ddindx).manufacture_date_to := rosetta_g_miss_date_in_map(a8(indx));
66           t(ddindx).country_code := a9(indx);
67           t(ddindx).country := a10(indx);
68           t(ddindx).attribute_category := a11(indx);
69           t(ddindx).attribute1 := a12(indx);
70           t(ddindx).attribute2 := a13(indx);
71           t(ddindx).attribute3 := a14(indx);
72           t(ddindx).attribute4 := a15(indx);
73           t(ddindx).attribute5 := a16(indx);
74           t(ddindx).attribute6 := a17(indx);
75           t(ddindx).attribute7 := a18(indx);
76           t(ddindx).attribute8 := a19(indx);
77           t(ddindx).attribute9 := a20(indx);
78           t(ddindx).attribute10 := a21(indx);
79           t(ddindx).attribute11 := a22(indx);
80           t(ddindx).attribute12 := a23(indx);
81           t(ddindx).attribute13 := a24(indx);
82           t(ddindx).attribute14 := a25(indx);
83           t(ddindx).attribute15 := a26(indx);
84           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a27(indx));
85           t(ddindx).last_updated_by := a28(indx);
86           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a29(indx));
87           t(ddindx).created_by := a30(indx);
88           t(ddindx).last_update_login := a31(indx);
89           t(ddindx).dml_operation := a32(indx);
90           ddindx := ddindx+1;
91           if a0.last =indx
92             then exit;
93           end if;
94           indx := a0.next(indx);
95         end loop;
96       end if;
97    end if;
98   end rosetta_table_copy_in_p1;
99   procedure rosetta_table_copy_out_p1(t ahl_fmp_effectivity_dtl_pvt.effectivity_detail_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
100     , a1 out nocopy JTF_NUMBER_TABLE
101     , a2 out nocopy JTF_VARCHAR2_TABLE_100
102     , a3 out nocopy JTF_VARCHAR2_TABLE_100
103     , a4 out nocopy JTF_VARCHAR2_TABLE_100
104     , a5 out nocopy JTF_NUMBER_TABLE
105     , a6 out nocopy JTF_VARCHAR2_TABLE_100
106     , a7 out nocopy JTF_DATE_TABLE
107     , a8 out nocopy JTF_DATE_TABLE
108     , a9 out nocopy JTF_VARCHAR2_TABLE_100
109     , a10 out nocopy JTF_VARCHAR2_TABLE_100
110     , a11 out nocopy JTF_VARCHAR2_TABLE_100
111     , a12 out nocopy JTF_VARCHAR2_TABLE_200
112     , a13 out nocopy JTF_VARCHAR2_TABLE_200
113     , a14 out nocopy JTF_VARCHAR2_TABLE_200
114     , a15 out nocopy JTF_VARCHAR2_TABLE_200
115     , a16 out nocopy JTF_VARCHAR2_TABLE_200
116     , a17 out nocopy JTF_VARCHAR2_TABLE_200
117     , a18 out nocopy JTF_VARCHAR2_TABLE_200
118     , a19 out nocopy JTF_VARCHAR2_TABLE_200
119     , a20 out nocopy JTF_VARCHAR2_TABLE_200
120     , a21 out nocopy JTF_VARCHAR2_TABLE_200
121     , a22 out nocopy JTF_VARCHAR2_TABLE_200
122     , a23 out nocopy JTF_VARCHAR2_TABLE_200
123     , a24 out nocopy JTF_VARCHAR2_TABLE_200
124     , a25 out nocopy JTF_VARCHAR2_TABLE_200
125     , a26 out nocopy JTF_VARCHAR2_TABLE_200
126     , a27 out nocopy JTF_DATE_TABLE
127     , a28 out nocopy JTF_NUMBER_TABLE
128     , a29 out nocopy JTF_DATE_TABLE
129     , a30 out nocopy JTF_NUMBER_TABLE
130     , a31 out nocopy JTF_NUMBER_TABLE
131     , a32 out nocopy JTF_VARCHAR2_TABLE_100
132     ) as
133     ddindx binary_integer; indx binary_integer;
134   begin
135   if t is null or t.count = 0 then
136     a0 := JTF_NUMBER_TABLE();
137     a1 := JTF_NUMBER_TABLE();
138     a2 := JTF_VARCHAR2_TABLE_100();
139     a3 := JTF_VARCHAR2_TABLE_100();
140     a4 := JTF_VARCHAR2_TABLE_100();
141     a5 := JTF_NUMBER_TABLE();
142     a6 := JTF_VARCHAR2_TABLE_100();
143     a7 := JTF_DATE_TABLE();
144     a8 := JTF_DATE_TABLE();
145     a9 := JTF_VARCHAR2_TABLE_100();
146     a10 := JTF_VARCHAR2_TABLE_100();
147     a11 := JTF_VARCHAR2_TABLE_100();
148     a12 := JTF_VARCHAR2_TABLE_200();
149     a13 := JTF_VARCHAR2_TABLE_200();
150     a14 := JTF_VARCHAR2_TABLE_200();
151     a15 := JTF_VARCHAR2_TABLE_200();
152     a16 := JTF_VARCHAR2_TABLE_200();
153     a17 := JTF_VARCHAR2_TABLE_200();
154     a18 := JTF_VARCHAR2_TABLE_200();
155     a19 := JTF_VARCHAR2_TABLE_200();
156     a20 := JTF_VARCHAR2_TABLE_200();
157     a21 := JTF_VARCHAR2_TABLE_200();
158     a22 := JTF_VARCHAR2_TABLE_200();
159     a23 := JTF_VARCHAR2_TABLE_200();
160     a24 := JTF_VARCHAR2_TABLE_200();
161     a25 := JTF_VARCHAR2_TABLE_200();
162     a26 := JTF_VARCHAR2_TABLE_200();
163     a27 := JTF_DATE_TABLE();
164     a28 := JTF_NUMBER_TABLE();
165     a29 := JTF_DATE_TABLE();
166     a30 := JTF_NUMBER_TABLE();
167     a31 := JTF_NUMBER_TABLE();
168     a32 := JTF_VARCHAR2_TABLE_100();
169   else
170       a0 := JTF_NUMBER_TABLE();
171       a1 := JTF_NUMBER_TABLE();
172       a2 := JTF_VARCHAR2_TABLE_100();
173       a3 := JTF_VARCHAR2_TABLE_100();
174       a4 := JTF_VARCHAR2_TABLE_100();
175       a5 := JTF_NUMBER_TABLE();
176       a6 := JTF_VARCHAR2_TABLE_100();
177       a7 := JTF_DATE_TABLE();
178       a8 := JTF_DATE_TABLE();
179       a9 := JTF_VARCHAR2_TABLE_100();
180       a10 := JTF_VARCHAR2_TABLE_100();
181       a11 := JTF_VARCHAR2_TABLE_100();
182       a12 := JTF_VARCHAR2_TABLE_200();
183       a13 := JTF_VARCHAR2_TABLE_200();
184       a14 := JTF_VARCHAR2_TABLE_200();
185       a15 := JTF_VARCHAR2_TABLE_200();
186       a16 := JTF_VARCHAR2_TABLE_200();
187       a17 := JTF_VARCHAR2_TABLE_200();
188       a18 := JTF_VARCHAR2_TABLE_200();
189       a19 := JTF_VARCHAR2_TABLE_200();
190       a20 := JTF_VARCHAR2_TABLE_200();
191       a21 := JTF_VARCHAR2_TABLE_200();
192       a22 := JTF_VARCHAR2_TABLE_200();
193       a23 := JTF_VARCHAR2_TABLE_200();
194       a24 := JTF_VARCHAR2_TABLE_200();
195       a25 := JTF_VARCHAR2_TABLE_200();
196       a26 := JTF_VARCHAR2_TABLE_200();
197       a27 := JTF_DATE_TABLE();
198       a28 := JTF_NUMBER_TABLE();
199       a29 := JTF_DATE_TABLE();
200       a30 := JTF_NUMBER_TABLE();
201       a31 := JTF_NUMBER_TABLE();
202       a32 := JTF_VARCHAR2_TABLE_100();
203       if t.count > 0 then
204         a0.extend(t.count);
205         a1.extend(t.count);
206         a2.extend(t.count);
207         a3.extend(t.count);
208         a4.extend(t.count);
209         a5.extend(t.count);
210         a6.extend(t.count);
211         a7.extend(t.count);
212         a8.extend(t.count);
213         a9.extend(t.count);
214         a10.extend(t.count);
215         a11.extend(t.count);
216         a12.extend(t.count);
217         a13.extend(t.count);
218         a14.extend(t.count);
219         a15.extend(t.count);
220         a16.extend(t.count);
221         a17.extend(t.count);
222         a18.extend(t.count);
223         a19.extend(t.count);
224         a20.extend(t.count);
225         a21.extend(t.count);
226         a22.extend(t.count);
227         a23.extend(t.count);
228         a24.extend(t.count);
229         a25.extend(t.count);
230         a26.extend(t.count);
231         a27.extend(t.count);
232         a28.extend(t.count);
233         a29.extend(t.count);
234         a30.extend(t.count);
235         a31.extend(t.count);
236         a32.extend(t.count);
237         ddindx := t.first;
238         indx := 1;
239         while true loop
240           a0(indx) := t(ddindx).mr_effectivity_detail_id;
241           a1(indx) := t(ddindx).object_version_number;
242           a2(indx) := t(ddindx).exclude_flag;
243           a3(indx) := t(ddindx).serial_number_from;
244           a4(indx) := t(ddindx).serial_number_to;
245           a5(indx) := t(ddindx).manufacturer_id;
246           a6(indx) := t(ddindx).manufacturer;
247           a7(indx) := t(ddindx).manufacture_date_from;
248           a8(indx) := t(ddindx).manufacture_date_to;
249           a9(indx) := t(ddindx).country_code;
250           a10(indx) := t(ddindx).country;
251           a11(indx) := t(ddindx).attribute_category;
252           a12(indx) := t(ddindx).attribute1;
253           a13(indx) := t(ddindx).attribute2;
254           a14(indx) := t(ddindx).attribute3;
255           a15(indx) := t(ddindx).attribute4;
256           a16(indx) := t(ddindx).attribute5;
257           a17(indx) := t(ddindx).attribute6;
258           a18(indx) := t(ddindx).attribute7;
259           a19(indx) := t(ddindx).attribute8;
260           a20(indx) := t(ddindx).attribute9;
261           a21(indx) := t(ddindx).attribute10;
262           a22(indx) := t(ddindx).attribute11;
263           a23(indx) := t(ddindx).attribute12;
264           a24(indx) := t(ddindx).attribute13;
265           a25(indx) := t(ddindx).attribute14;
266           a26(indx) := t(ddindx).attribute15;
267           a27(indx) := t(ddindx).last_update_date;
268           a28(indx) := t(ddindx).last_updated_by;
269           a29(indx) := t(ddindx).creation_date;
270           a30(indx) := t(ddindx).created_by;
271           a31(indx) := t(ddindx).last_update_login;
272           a32(indx) := t(ddindx).dml_operation;
273           indx := indx+1;
274           if t.last =ddindx
275             then exit;
276           end if;
277           ddindx := t.next(ddindx);
278         end loop;
279       end if;
280    end if;
281   end rosetta_table_copy_out_p1;
282 
283   procedure rosetta_table_copy_in_p3(t out nocopy ahl_fmp_effectivity_dtl_pvt.effty_ext_detail_tbl_type, a0 JTF_NUMBER_TABLE
284     , a1 JTF_NUMBER_TABLE
285     , a2 JTF_VARCHAR2_TABLE_100
286     , a3 JTF_VARCHAR2_TABLE_100
287     , a4 JTF_NUMBER_TABLE
288     , a5 JTF_VARCHAR2_TABLE_400
289     , a6 JTF_VARCHAR2_TABLE_100
290     , a7 JTF_VARCHAR2_TABLE_100
291     , a8 JTF_VARCHAR2_TABLE_100
292     , a9 JTF_VARCHAR2_TABLE_100
293     , a10 JTF_VARCHAR2_TABLE_300
294     , a11 JTF_VARCHAR2_TABLE_100
295     , a12 JTF_VARCHAR2_TABLE_200
296     , a13 JTF_VARCHAR2_TABLE_200
297     , a14 JTF_VARCHAR2_TABLE_200
298     , a15 JTF_VARCHAR2_TABLE_200
299     , a16 JTF_VARCHAR2_TABLE_200
300     , a17 JTF_VARCHAR2_TABLE_200
301     , a18 JTF_VARCHAR2_TABLE_200
302     , a19 JTF_VARCHAR2_TABLE_200
303     , a20 JTF_VARCHAR2_TABLE_200
304     , a21 JTF_VARCHAR2_TABLE_200
305     , a22 JTF_VARCHAR2_TABLE_200
306     , a23 JTF_VARCHAR2_TABLE_200
307     , a24 JTF_VARCHAR2_TABLE_200
308     , a25 JTF_VARCHAR2_TABLE_200
309     , a26 JTF_VARCHAR2_TABLE_200
310     , a27 JTF_DATE_TABLE
311     , a28 JTF_NUMBER_TABLE
312     , a29 JTF_DATE_TABLE
313     , a30 JTF_NUMBER_TABLE
314     , a31 JTF_NUMBER_TABLE
315     , a32 JTF_VARCHAR2_TABLE_100
316     ) as
317     ddindx binary_integer; indx binary_integer;
318   begin
319   if a0 is not null and a0.count > 0 then
320       if a0.count > 0 then
321         indx := a0.first;
322         ddindx := 1;
323         while true loop
324           t(ddindx).mr_effectivity_ext_dtl_id := a0(indx);
325           t(ddindx).object_version_number := a1(indx);
326           t(ddindx).effect_ext_dtl_rec_type := a2(indx);
327           t(ddindx).exclude_flag := a3(indx);
328           t(ddindx).owner_id := a4(indx);
329           t(ddindx).owner := a5(indx);
330           t(ddindx).location := a6(indx);
331           t(ddindx).location_type_code := a7(indx);
332           t(ddindx).csi_ext_attribute_code := a8(indx);
333           t(ddindx).csi_ext_attribute_name := a9(indx);
334           t(ddindx).csi_ext_attribute_value := a10(indx);
335           t(ddindx).attribute_category := a11(indx);
336           t(ddindx).attribute1 := a12(indx);
337           t(ddindx).attribute2 := a13(indx);
338           t(ddindx).attribute3 := a14(indx);
339           t(ddindx).attribute4 := a15(indx);
340           t(ddindx).attribute5 := a16(indx);
341           t(ddindx).attribute6 := a17(indx);
342           t(ddindx).attribute7 := a18(indx);
343           t(ddindx).attribute8 := a19(indx);
344           t(ddindx).attribute9 := a20(indx);
345           t(ddindx).attribute10 := a21(indx);
346           t(ddindx).attribute11 := a22(indx);
347           t(ddindx).attribute12 := a23(indx);
348           t(ddindx).attribute13 := a24(indx);
349           t(ddindx).attribute14 := a25(indx);
350           t(ddindx).attribute15 := a26(indx);
351           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a27(indx));
352           t(ddindx).last_updated_by := a28(indx);
353           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a29(indx));
354           t(ddindx).created_by := a30(indx);
355           t(ddindx).last_update_login := a31(indx);
356           t(ddindx).dml_operation := a32(indx);
357           ddindx := ddindx+1;
358           if a0.last =indx
359             then exit;
360           end if;
361           indx := a0.next(indx);
362         end loop;
363       end if;
364    end if;
365   end rosetta_table_copy_in_p3;
366   procedure rosetta_table_copy_out_p3(t ahl_fmp_effectivity_dtl_pvt.effty_ext_detail_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
367     , a1 out nocopy JTF_NUMBER_TABLE
368     , a2 out nocopy JTF_VARCHAR2_TABLE_100
369     , a3 out nocopy JTF_VARCHAR2_TABLE_100
370     , a4 out nocopy JTF_NUMBER_TABLE
371     , a5 out nocopy JTF_VARCHAR2_TABLE_400
372     , a6 out nocopy JTF_VARCHAR2_TABLE_100
373     , a7 out nocopy JTF_VARCHAR2_TABLE_100
374     , a8 out nocopy JTF_VARCHAR2_TABLE_100
375     , a9 out nocopy JTF_VARCHAR2_TABLE_100
376     , a10 out nocopy JTF_VARCHAR2_TABLE_300
377     , a11 out nocopy JTF_VARCHAR2_TABLE_100
378     , a12 out nocopy JTF_VARCHAR2_TABLE_200
379     , a13 out nocopy JTF_VARCHAR2_TABLE_200
380     , a14 out nocopy JTF_VARCHAR2_TABLE_200
381     , a15 out nocopy JTF_VARCHAR2_TABLE_200
382     , a16 out nocopy JTF_VARCHAR2_TABLE_200
386     , a20 out nocopy JTF_VARCHAR2_TABLE_200
383     , a17 out nocopy JTF_VARCHAR2_TABLE_200
384     , a18 out nocopy JTF_VARCHAR2_TABLE_200
385     , a19 out nocopy JTF_VARCHAR2_TABLE_200
387     , a21 out nocopy JTF_VARCHAR2_TABLE_200
388     , a22 out nocopy JTF_VARCHAR2_TABLE_200
389     , a23 out nocopy JTF_VARCHAR2_TABLE_200
390     , a24 out nocopy JTF_VARCHAR2_TABLE_200
391     , a25 out nocopy JTF_VARCHAR2_TABLE_200
392     , a26 out nocopy JTF_VARCHAR2_TABLE_200
393     , a27 out nocopy JTF_DATE_TABLE
394     , a28 out nocopy JTF_NUMBER_TABLE
395     , a29 out nocopy JTF_DATE_TABLE
396     , a30 out nocopy JTF_NUMBER_TABLE
397     , a31 out nocopy JTF_NUMBER_TABLE
398     , a32 out nocopy JTF_VARCHAR2_TABLE_100
399     ) as
400     ddindx binary_integer; indx binary_integer;
401   begin
402   if t is null or t.count = 0 then
403     a0 := JTF_NUMBER_TABLE();
404     a1 := JTF_NUMBER_TABLE();
405     a2 := JTF_VARCHAR2_TABLE_100();
406     a3 := JTF_VARCHAR2_TABLE_100();
407     a4 := JTF_NUMBER_TABLE();
408     a5 := JTF_VARCHAR2_TABLE_400();
409     a6 := JTF_VARCHAR2_TABLE_100();
410     a7 := JTF_VARCHAR2_TABLE_100();
411     a8 := JTF_VARCHAR2_TABLE_100();
412     a9 := JTF_VARCHAR2_TABLE_100();
413     a10 := JTF_VARCHAR2_TABLE_300();
414     a11 := JTF_VARCHAR2_TABLE_100();
415     a12 := JTF_VARCHAR2_TABLE_200();
416     a13 := JTF_VARCHAR2_TABLE_200();
417     a14 := JTF_VARCHAR2_TABLE_200();
418     a15 := JTF_VARCHAR2_TABLE_200();
419     a16 := JTF_VARCHAR2_TABLE_200();
420     a17 := JTF_VARCHAR2_TABLE_200();
421     a18 := JTF_VARCHAR2_TABLE_200();
422     a19 := JTF_VARCHAR2_TABLE_200();
423     a20 := JTF_VARCHAR2_TABLE_200();
424     a21 := JTF_VARCHAR2_TABLE_200();
425     a22 := JTF_VARCHAR2_TABLE_200();
426     a23 := JTF_VARCHAR2_TABLE_200();
427     a24 := JTF_VARCHAR2_TABLE_200();
428     a25 := JTF_VARCHAR2_TABLE_200();
429     a26 := JTF_VARCHAR2_TABLE_200();
430     a27 := JTF_DATE_TABLE();
431     a28 := JTF_NUMBER_TABLE();
432     a29 := JTF_DATE_TABLE();
433     a30 := JTF_NUMBER_TABLE();
434     a31 := JTF_NUMBER_TABLE();
435     a32 := JTF_VARCHAR2_TABLE_100();
436   else
437       a0 := JTF_NUMBER_TABLE();
438       a1 := JTF_NUMBER_TABLE();
439       a2 := JTF_VARCHAR2_TABLE_100();
440       a3 := JTF_VARCHAR2_TABLE_100();
441       a4 := JTF_NUMBER_TABLE();
442       a5 := JTF_VARCHAR2_TABLE_400();
443       a6 := JTF_VARCHAR2_TABLE_100();
444       a7 := JTF_VARCHAR2_TABLE_100();
445       a8 := JTF_VARCHAR2_TABLE_100();
446       a9 := JTF_VARCHAR2_TABLE_100();
447       a10 := JTF_VARCHAR2_TABLE_300();
448       a11 := JTF_VARCHAR2_TABLE_100();
449       a12 := JTF_VARCHAR2_TABLE_200();
450       a13 := JTF_VARCHAR2_TABLE_200();
451       a14 := JTF_VARCHAR2_TABLE_200();
452       a15 := JTF_VARCHAR2_TABLE_200();
453       a16 := JTF_VARCHAR2_TABLE_200();
454       a17 := JTF_VARCHAR2_TABLE_200();
455       a18 := JTF_VARCHAR2_TABLE_200();
456       a19 := JTF_VARCHAR2_TABLE_200();
457       a20 := JTF_VARCHAR2_TABLE_200();
458       a21 := JTF_VARCHAR2_TABLE_200();
459       a22 := JTF_VARCHAR2_TABLE_200();
460       a23 := JTF_VARCHAR2_TABLE_200();
461       a24 := JTF_VARCHAR2_TABLE_200();
462       a25 := JTF_VARCHAR2_TABLE_200();
463       a26 := JTF_VARCHAR2_TABLE_200();
464       a27 := JTF_DATE_TABLE();
465       a28 := JTF_NUMBER_TABLE();
466       a29 := JTF_DATE_TABLE();
467       a30 := JTF_NUMBER_TABLE();
468       a31 := JTF_NUMBER_TABLE();
469       a32 := JTF_VARCHAR2_TABLE_100();
470       if t.count > 0 then
471         a0.extend(t.count);
472         a1.extend(t.count);
473         a2.extend(t.count);
474         a3.extend(t.count);
475         a4.extend(t.count);
476         a5.extend(t.count);
477         a6.extend(t.count);
478         a7.extend(t.count);
479         a8.extend(t.count);
480         a9.extend(t.count);
481         a10.extend(t.count);
482         a11.extend(t.count);
483         a12.extend(t.count);
484         a13.extend(t.count);
485         a14.extend(t.count);
486         a15.extend(t.count);
487         a16.extend(t.count);
488         a17.extend(t.count);
489         a18.extend(t.count);
490         a19.extend(t.count);
491         a20.extend(t.count);
492         a21.extend(t.count);
493         a22.extend(t.count);
494         a23.extend(t.count);
495         a24.extend(t.count);
496         a25.extend(t.count);
497         a26.extend(t.count);
498         a27.extend(t.count);
499         a28.extend(t.count);
500         a29.extend(t.count);
501         a30.extend(t.count);
502         a31.extend(t.count);
503         a32.extend(t.count);
504         ddindx := t.first;
505         indx := 1;
506         while true loop
507           a0(indx) := t(ddindx).mr_effectivity_ext_dtl_id;
508           a1(indx) := t(ddindx).object_version_number;
509           a2(indx) := t(ddindx).effect_ext_dtl_rec_type;
510           a3(indx) := t(ddindx).exclude_flag;
511           a4(indx) := t(ddindx).owner_id;
512           a5(indx) := t(ddindx).owner;
513           a6(indx) := t(ddindx).location;
514           a7(indx) := t(ddindx).location_type_code;
515           a8(indx) := t(ddindx).csi_ext_attribute_code;
516           a9(indx) := t(ddindx).csi_ext_attribute_name;
517           a10(indx) := t(ddindx).csi_ext_attribute_value;
518           a11(indx) := t(ddindx).attribute_category;
519           a12(indx) := t(ddindx).attribute1;
520           a13(indx) := t(ddindx).attribute2;
521           a14(indx) := t(ddindx).attribute3;
522           a15(indx) := t(ddindx).attribute4;
523           a16(indx) := t(ddindx).attribute5;
524           a17(indx) := t(ddindx).attribute6;
525           a18(indx) := t(ddindx).attribute7;
529           a22(indx) := t(ddindx).attribute11;
526           a19(indx) := t(ddindx).attribute8;
527           a20(indx) := t(ddindx).attribute9;
528           a21(indx) := t(ddindx).attribute10;
530           a23(indx) := t(ddindx).attribute12;
531           a24(indx) := t(ddindx).attribute13;
532           a25(indx) := t(ddindx).attribute14;
533           a26(indx) := t(ddindx).attribute15;
534           a27(indx) := t(ddindx).last_update_date;
535           a28(indx) := t(ddindx).last_updated_by;
536           a29(indx) := t(ddindx).creation_date;
537           a30(indx) := t(ddindx).created_by;
538           a31(indx) := t(ddindx).last_update_login;
539           a32(indx) := t(ddindx).dml_operation;
540           indx := indx+1;
541           if t.last =ddindx
542             then exit;
543           end if;
544           ddindx := t.next(ddindx);
545         end loop;
546       end if;
547    end if;
548   end rosetta_table_copy_out_p3;
549 
550   procedure process_effectivity_detail(p_api_version  NUMBER
551     , p_init_msg_list  VARCHAR2
552     , p_commit  VARCHAR2
553     , p_validation_level  NUMBER
554     , p_default  VARCHAR2
555     , p_module_type  VARCHAR2
556     , x_return_status out nocopy  VARCHAR2
557     , x_msg_count out nocopy  NUMBER
558     , x_msg_data out nocopy  VARCHAR2
559     , p9_a0 in out nocopy JTF_NUMBER_TABLE
560     , p9_a1 in out nocopy JTF_NUMBER_TABLE
561     , p9_a2 in out nocopy JTF_VARCHAR2_TABLE_100
562     , p9_a3 in out nocopy JTF_VARCHAR2_TABLE_100
563     , p9_a4 in out nocopy JTF_VARCHAR2_TABLE_100
564     , p9_a5 in out nocopy JTF_NUMBER_TABLE
565     , p9_a6 in out nocopy JTF_VARCHAR2_TABLE_100
566     , p9_a7 in out nocopy JTF_DATE_TABLE
567     , p9_a8 in out nocopy JTF_DATE_TABLE
568     , p9_a9 in out nocopy JTF_VARCHAR2_TABLE_100
569     , p9_a10 in out nocopy JTF_VARCHAR2_TABLE_100
570     , p9_a11 in out nocopy JTF_VARCHAR2_TABLE_100
571     , p9_a12 in out nocopy JTF_VARCHAR2_TABLE_200
572     , p9_a13 in out nocopy JTF_VARCHAR2_TABLE_200
573     , p9_a14 in out nocopy JTF_VARCHAR2_TABLE_200
574     , p9_a15 in out nocopy JTF_VARCHAR2_TABLE_200
575     , p9_a16 in out nocopy JTF_VARCHAR2_TABLE_200
576     , p9_a17 in out nocopy JTF_VARCHAR2_TABLE_200
577     , p9_a18 in out nocopy JTF_VARCHAR2_TABLE_200
578     , p9_a19 in out nocopy JTF_VARCHAR2_TABLE_200
579     , p9_a20 in out nocopy JTF_VARCHAR2_TABLE_200
580     , p9_a21 in out nocopy JTF_VARCHAR2_TABLE_200
581     , p9_a22 in out nocopy JTF_VARCHAR2_TABLE_200
582     , p9_a23 in out nocopy JTF_VARCHAR2_TABLE_200
583     , p9_a24 in out nocopy JTF_VARCHAR2_TABLE_200
584     , p9_a25 in out nocopy JTF_VARCHAR2_TABLE_200
585     , p9_a26 in out nocopy JTF_VARCHAR2_TABLE_200
586     , p9_a27 in out nocopy JTF_DATE_TABLE
587     , p9_a28 in out nocopy JTF_NUMBER_TABLE
588     , p9_a29 in out nocopy JTF_DATE_TABLE
589     , p9_a30 in out nocopy JTF_NUMBER_TABLE
590     , p9_a31 in out nocopy JTF_NUMBER_TABLE
591     , p9_a32 in out nocopy JTF_VARCHAR2_TABLE_100
592     , p10_a0 in out nocopy JTF_NUMBER_TABLE
593     , p10_a1 in out nocopy JTF_NUMBER_TABLE
594     , p10_a2 in out nocopy JTF_VARCHAR2_TABLE_100
595     , p10_a3 in out nocopy JTF_VARCHAR2_TABLE_100
596     , p10_a4 in out nocopy JTF_NUMBER_TABLE
597     , p10_a5 in out nocopy JTF_VARCHAR2_TABLE_400
598     , p10_a6 in out nocopy JTF_VARCHAR2_TABLE_100
599     , p10_a7 in out nocopy JTF_VARCHAR2_TABLE_100
600     , p10_a8 in out nocopy JTF_VARCHAR2_TABLE_100
601     , p10_a9 in out nocopy JTF_VARCHAR2_TABLE_100
602     , p10_a10 in out nocopy JTF_VARCHAR2_TABLE_300
603     , p10_a11 in out nocopy JTF_VARCHAR2_TABLE_100
604     , p10_a12 in out nocopy JTF_VARCHAR2_TABLE_200
605     , p10_a13 in out nocopy JTF_VARCHAR2_TABLE_200
606     , p10_a14 in out nocopy JTF_VARCHAR2_TABLE_200
607     , p10_a15 in out nocopy JTF_VARCHAR2_TABLE_200
608     , p10_a16 in out nocopy JTF_VARCHAR2_TABLE_200
609     , p10_a17 in out nocopy JTF_VARCHAR2_TABLE_200
610     , p10_a18 in out nocopy JTF_VARCHAR2_TABLE_200
611     , p10_a19 in out nocopy JTF_VARCHAR2_TABLE_200
612     , p10_a20 in out nocopy JTF_VARCHAR2_TABLE_200
613     , p10_a21 in out nocopy JTF_VARCHAR2_TABLE_200
614     , p10_a22 in out nocopy JTF_VARCHAR2_TABLE_200
615     , p10_a23 in out nocopy JTF_VARCHAR2_TABLE_200
616     , p10_a24 in out nocopy JTF_VARCHAR2_TABLE_200
617     , p10_a25 in out nocopy JTF_VARCHAR2_TABLE_200
618     , p10_a26 in out nocopy JTF_VARCHAR2_TABLE_200
619     , p10_a27 in out nocopy JTF_DATE_TABLE
620     , p10_a28 in out nocopy JTF_NUMBER_TABLE
621     , p10_a29 in out nocopy JTF_DATE_TABLE
622     , p10_a30 in out nocopy JTF_NUMBER_TABLE
623     , p10_a31 in out nocopy JTF_NUMBER_TABLE
624     , p10_a32 in out nocopy JTF_VARCHAR2_TABLE_100
625     , p_mr_header_id  NUMBER
626     , p_mr_effectivity_id  NUMBER
627   )
628 
629   as
630     ddp_x_effectivity_detail_tbl ahl_fmp_effectivity_dtl_pvt.effectivity_detail_tbl_type;
631     ddp_x_effty_ext_detail_tbl ahl_fmp_effectivity_dtl_pvt.effty_ext_detail_tbl_type;
632     ddindx binary_integer; indx binary_integer;
633   begin
634 
635     -- copy data to the local IN or IN-OUT args, if any
636 
637 
638 
639 
640 
641 
642 
643 
644 
645     ahl_fmp_effectivity_dtl_pvt_w.rosetta_table_copy_in_p1(ddp_x_effectivity_detail_tbl, p9_a0
646       , p9_a1
647       , p9_a2
648       , p9_a3
649       , p9_a4
650       , p9_a5
651       , p9_a6
652       , p9_a7
653       , p9_a8
654       , p9_a9
655       , p9_a10
656       , p9_a11
657       , p9_a12
658       , p9_a13
659       , p9_a14
660       , p9_a15
661       , p9_a16
662       , p9_a17
663       , p9_a18
664       , p9_a19
665       , p9_a20
666       , p9_a21
670       , p9_a25
667       , p9_a22
668       , p9_a23
669       , p9_a24
671       , p9_a26
672       , p9_a27
673       , p9_a28
674       , p9_a29
675       , p9_a30
676       , p9_a31
677       , p9_a32
678       );
679 
680     ahl_fmp_effectivity_dtl_pvt_w.rosetta_table_copy_in_p3(ddp_x_effty_ext_detail_tbl, p10_a0
681       , p10_a1
682       , p10_a2
683       , p10_a3
684       , p10_a4
685       , p10_a5
686       , p10_a6
687       , p10_a7
688       , p10_a8
689       , p10_a9
690       , p10_a10
691       , p10_a11
692       , p10_a12
693       , p10_a13
694       , p10_a14
695       , p10_a15
696       , p10_a16
697       , p10_a17
698       , p10_a18
699       , p10_a19
700       , p10_a20
701       , p10_a21
702       , p10_a22
703       , p10_a23
704       , p10_a24
705       , p10_a25
706       , p10_a26
707       , p10_a27
708       , p10_a28
709       , p10_a29
710       , p10_a30
711       , p10_a31
712       , p10_a32
713       );
714 
715 
716 
717     -- here's the delegated call to the old PL/SQL routine
718     ahl_fmp_effectivity_dtl_pvt.process_effectivity_detail(p_api_version,
719       p_init_msg_list,
720       p_commit,
721       p_validation_level,
722       p_default,
723       p_module_type,
724       x_return_status,
725       x_msg_count,
726       x_msg_data,
727       ddp_x_effectivity_detail_tbl,
728       ddp_x_effty_ext_detail_tbl,
729       p_mr_header_id,
730       p_mr_effectivity_id);
731 
732     -- copy data back from the local variables to OUT or IN-OUT args, if any
733 
734 
735 
736 
737 
738 
739 
740 
741 
742     ahl_fmp_effectivity_dtl_pvt_w.rosetta_table_copy_out_p1(ddp_x_effectivity_detail_tbl, p9_a0
743       , p9_a1
744       , p9_a2
745       , p9_a3
746       , p9_a4
747       , p9_a5
748       , p9_a6
749       , p9_a7
750       , p9_a8
751       , p9_a9
752       , p9_a10
753       , p9_a11
754       , p9_a12
755       , p9_a13
756       , p9_a14
757       , p9_a15
758       , p9_a16
759       , p9_a17
760       , p9_a18
761       , p9_a19
762       , p9_a20
763       , p9_a21
764       , p9_a22
765       , p9_a23
766       , p9_a24
767       , p9_a25
768       , p9_a26
769       , p9_a27
770       , p9_a28
771       , p9_a29
772       , p9_a30
773       , p9_a31
774       , p9_a32
775       );
776 
777     ahl_fmp_effectivity_dtl_pvt_w.rosetta_table_copy_out_p3(ddp_x_effty_ext_detail_tbl, p10_a0
778       , p10_a1
779       , p10_a2
780       , p10_a3
781       , p10_a4
782       , p10_a5
783       , p10_a6
784       , p10_a7
785       , p10_a8
786       , p10_a9
787       , p10_a10
788       , p10_a11
789       , p10_a12
790       , p10_a13
791       , p10_a14
792       , p10_a15
793       , p10_a16
794       , p10_a17
795       , p10_a18
796       , p10_a19
797       , p10_a20
798       , p10_a21
799       , p10_a22
800       , p10_a23
801       , p10_a24
802       , p10_a25
803       , p10_a26
804       , p10_a27
805       , p10_a28
806       , p10_a29
807       , p10_a30
808       , p10_a31
809       , p10_a32
810       );
811 
812 
813   end;
814 
815 end ahl_fmp_effectivity_dtl_pvt_w;