DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_RM_MATERIAL_AS_PVT_W

Source


1 package body ahl_rm_material_as_pvt_w as
2   /* $Header: AHLWMTLB.pls 120.1 2008/01/30 05:20:53 pdoki 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 
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   procedure rosetta_table_copy_in_p1(t out nocopy ahl_rm_material_as_pvt.material_req_tbl_type, a0 JTF_NUMBER_TABLE
14     , a1 JTF_NUMBER_TABLE
15     , a2 JTF_NUMBER_TABLE
16     , a3 JTF_VARCHAR2_TABLE_100
17     , a4 JTF_VARCHAR2_TABLE_100
18     , a5 JTF_NUMBER_TABLE
19     , a6 JTF_NUMBER_TABLE
20     , a7 JTF_VARCHAR2_TABLE_100
21     , a8 JTF_VARCHAR2_TABLE_100
22     , a9 JTF_NUMBER_TABLE
23     , a10 JTF_VARCHAR2_TABLE_100
24     , a11 JTF_VARCHAR2_TABLE_200
25     , a12 JTF_VARCHAR2_TABLE_200
26     , a13 JTF_VARCHAR2_TABLE_200
27     , a14 JTF_VARCHAR2_TABLE_200
28     , a15 JTF_VARCHAR2_TABLE_200
29     , a16 JTF_VARCHAR2_TABLE_200
30     , a17 JTF_VARCHAR2_TABLE_200
31     , a18 JTF_VARCHAR2_TABLE_200
32     , a19 JTF_VARCHAR2_TABLE_200
33     , a20 JTF_VARCHAR2_TABLE_200
34     , a21 JTF_VARCHAR2_TABLE_200
35     , a22 JTF_VARCHAR2_TABLE_200
36     , a23 JTF_VARCHAR2_TABLE_200
37     , a24 JTF_VARCHAR2_TABLE_200
38     , a25 JTF_VARCHAR2_TABLE_200
39     , a26 JTF_DATE_TABLE
40     , a27 JTF_NUMBER_TABLE
41     , a28 JTF_DATE_TABLE
42     , a29 JTF_NUMBER_TABLE
43     , a30 JTF_NUMBER_TABLE
44     , a31 JTF_VARCHAR2_TABLE_100
45     , a32 JTF_VARCHAR2_TABLE_4000
46     , a33 JTF_NUMBER_TABLE
47     , a34 JTF_NUMBER_TABLE
48     , a35 JTF_VARCHAR2_TABLE_100
49     , a36 JTF_NUMBER_TABLE
50     , a37 JTF_NUMBER_TABLE
51     , a38 JTF_VARCHAR2_TABLE_100
52     , a39 JTF_VARCHAR2_TABLE_100
53     ) as
54     ddindx binary_integer; indx binary_integer;
55   begin
56   if a0 is not null and a0.count > 0 then
57       if a0.count > 0 then
58         indx := a0.first;
59         ddindx := 1;
60         while true loop
61           t(ddindx).rt_oper_material_id := a0(indx);
62           t(ddindx).object_version_number := a1(indx);
63           t(ddindx).item_group_id := a2(indx);
64           t(ddindx).item_group_name := a3(indx);
65           t(ddindx).item_number := a4(indx);
66           t(ddindx).inventory_item_id := a5(indx);
67           t(ddindx).inventory_org_id := a6(indx);
68           t(ddindx).uom := a7(indx);
69           t(ddindx).uom_code := a8(indx);
70           t(ddindx).quantity := a9(indx);
71           t(ddindx).attribute_category := a10(indx);
72           t(ddindx).attribute1 := a11(indx);
73           t(ddindx).attribute2 := a12(indx);
74           t(ddindx).attribute3 := a13(indx);
75           t(ddindx).attribute4 := a14(indx);
76           t(ddindx).attribute5 := a15(indx);
77           t(ddindx).attribute6 := a16(indx);
78           t(ddindx).attribute7 := a17(indx);
79           t(ddindx).attribute8 := a18(indx);
80           t(ddindx).attribute9 := a19(indx);
81           t(ddindx).attribute10 := a20(indx);
82           t(ddindx).attribute11 := a21(indx);
83           t(ddindx).attribute12 := a22(indx);
84           t(ddindx).attribute13 := a23(indx);
85           t(ddindx).attribute14 := a24(indx);
86           t(ddindx).attribute15 := a25(indx);
87           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a26(indx));
88           t(ddindx).last_updated_by := a27(indx);
89           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a28(indx));
90           t(ddindx).created_by := a29(indx);
91           t(ddindx).last_update_login := a30(indx);
92           t(ddindx).dml_operation := a31(indx);
93           t(ddindx).position_path := a32(indx);
94           t(ddindx).position_path_id := a33(indx);
95           t(ddindx).item_comp_detail_id := a34(indx);
96           t(ddindx).exclude_flag := a35(indx);
97           t(ddindx).rework_percent := a36(indx);
98           t(ddindx).replace_percent := a37(indx);
99           t(ddindx).comp_material_flag := a38(indx);
100           t(ddindx).in_service := a39(indx);
101           ddindx := ddindx+1;
102           if a0.last =indx
103             then exit;
104           end if;
105           indx := a0.next(indx);
106         end loop;
107       end if;
108    end if;
109   end rosetta_table_copy_in_p1;
110   procedure rosetta_table_copy_out_p1(t ahl_rm_material_as_pvt.material_req_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
111     , a1 out nocopy JTF_NUMBER_TABLE
112     , a2 out nocopy JTF_NUMBER_TABLE
113     , a3 out nocopy JTF_VARCHAR2_TABLE_100
114     , a4 out nocopy JTF_VARCHAR2_TABLE_100
115     , a5 out nocopy JTF_NUMBER_TABLE
116     , a6 out nocopy JTF_NUMBER_TABLE
117     , a7 out nocopy JTF_VARCHAR2_TABLE_100
118     , a8 out nocopy JTF_VARCHAR2_TABLE_100
119     , a9 out nocopy JTF_NUMBER_TABLE
120     , a10 out nocopy JTF_VARCHAR2_TABLE_100
121     , a11 out nocopy JTF_VARCHAR2_TABLE_200
122     , a12 out nocopy JTF_VARCHAR2_TABLE_200
123     , a13 out nocopy JTF_VARCHAR2_TABLE_200
124     , a14 out nocopy JTF_VARCHAR2_TABLE_200
125     , a15 out nocopy JTF_VARCHAR2_TABLE_200
126     , a16 out nocopy JTF_VARCHAR2_TABLE_200
127     , a17 out nocopy JTF_VARCHAR2_TABLE_200
128     , a18 out nocopy JTF_VARCHAR2_TABLE_200
129     , a19 out nocopy JTF_VARCHAR2_TABLE_200
130     , a20 out nocopy JTF_VARCHAR2_TABLE_200
131     , a21 out nocopy JTF_VARCHAR2_TABLE_200
132     , a22 out nocopy JTF_VARCHAR2_TABLE_200
133     , a23 out nocopy JTF_VARCHAR2_TABLE_200
134     , a24 out nocopy JTF_VARCHAR2_TABLE_200
135     , a25 out nocopy JTF_VARCHAR2_TABLE_200
136     , a26 out nocopy JTF_DATE_TABLE
137     , a27 out nocopy JTF_NUMBER_TABLE
138     , a28 out nocopy JTF_DATE_TABLE
139     , a29 out nocopy JTF_NUMBER_TABLE
140     , a30 out nocopy JTF_NUMBER_TABLE
141     , a31 out nocopy JTF_VARCHAR2_TABLE_100
142     , a32 out nocopy JTF_VARCHAR2_TABLE_4000
143     , a33 out nocopy JTF_NUMBER_TABLE
144     , a34 out nocopy JTF_NUMBER_TABLE
145     , a35 out nocopy JTF_VARCHAR2_TABLE_100
146     , a36 out nocopy JTF_NUMBER_TABLE
147     , a37 out nocopy JTF_NUMBER_TABLE
148     , a38 out nocopy JTF_VARCHAR2_TABLE_100
149     , a39 out nocopy JTF_VARCHAR2_TABLE_100
150     ) as
151     ddindx binary_integer; indx binary_integer;
152   begin
153   if t is null or t.count = 0 then
154     a0 := JTF_NUMBER_TABLE();
155     a1 := JTF_NUMBER_TABLE();
156     a2 := JTF_NUMBER_TABLE();
157     a3 := JTF_VARCHAR2_TABLE_100();
158     a4 := JTF_VARCHAR2_TABLE_100();
159     a5 := JTF_NUMBER_TABLE();
160     a6 := JTF_NUMBER_TABLE();
161     a7 := JTF_VARCHAR2_TABLE_100();
162     a8 := JTF_VARCHAR2_TABLE_100();
163     a9 := JTF_NUMBER_TABLE();
164     a10 := JTF_VARCHAR2_TABLE_100();
165     a11 := JTF_VARCHAR2_TABLE_200();
166     a12 := JTF_VARCHAR2_TABLE_200();
167     a13 := JTF_VARCHAR2_TABLE_200();
168     a14 := JTF_VARCHAR2_TABLE_200();
169     a15 := JTF_VARCHAR2_TABLE_200();
170     a16 := JTF_VARCHAR2_TABLE_200();
171     a17 := JTF_VARCHAR2_TABLE_200();
172     a18 := JTF_VARCHAR2_TABLE_200();
173     a19 := JTF_VARCHAR2_TABLE_200();
174     a20 := JTF_VARCHAR2_TABLE_200();
175     a21 := JTF_VARCHAR2_TABLE_200();
176     a22 := JTF_VARCHAR2_TABLE_200();
177     a23 := JTF_VARCHAR2_TABLE_200();
178     a24 := JTF_VARCHAR2_TABLE_200();
179     a25 := JTF_VARCHAR2_TABLE_200();
180     a26 := JTF_DATE_TABLE();
181     a27 := JTF_NUMBER_TABLE();
182     a28 := JTF_DATE_TABLE();
183     a29 := JTF_NUMBER_TABLE();
184     a30 := JTF_NUMBER_TABLE();
185     a31 := JTF_VARCHAR2_TABLE_100();
186     a32 := JTF_VARCHAR2_TABLE_4000();
187     a33 := JTF_NUMBER_TABLE();
188     a34 := JTF_NUMBER_TABLE();
189     a35 := JTF_VARCHAR2_TABLE_100();
190     a36 := JTF_NUMBER_TABLE();
191     a37 := JTF_NUMBER_TABLE();
192     a38 := JTF_VARCHAR2_TABLE_100();
193     a39 := JTF_VARCHAR2_TABLE_100();
194   else
195       a0 := JTF_NUMBER_TABLE();
196       a1 := JTF_NUMBER_TABLE();
197       a2 := JTF_NUMBER_TABLE();
198       a3 := JTF_VARCHAR2_TABLE_100();
199       a4 := JTF_VARCHAR2_TABLE_100();
200       a5 := JTF_NUMBER_TABLE();
201       a6 := JTF_NUMBER_TABLE();
202       a7 := JTF_VARCHAR2_TABLE_100();
203       a8 := JTF_VARCHAR2_TABLE_100();
204       a9 := JTF_NUMBER_TABLE();
205       a10 := JTF_VARCHAR2_TABLE_100();
206       a11 := JTF_VARCHAR2_TABLE_200();
207       a12 := JTF_VARCHAR2_TABLE_200();
208       a13 := JTF_VARCHAR2_TABLE_200();
209       a14 := JTF_VARCHAR2_TABLE_200();
210       a15 := JTF_VARCHAR2_TABLE_200();
211       a16 := JTF_VARCHAR2_TABLE_200();
212       a17 := JTF_VARCHAR2_TABLE_200();
213       a18 := JTF_VARCHAR2_TABLE_200();
214       a19 := JTF_VARCHAR2_TABLE_200();
215       a20 := JTF_VARCHAR2_TABLE_200();
216       a21 := JTF_VARCHAR2_TABLE_200();
217       a22 := JTF_VARCHAR2_TABLE_200();
218       a23 := JTF_VARCHAR2_TABLE_200();
219       a24 := JTF_VARCHAR2_TABLE_200();
220       a25 := JTF_VARCHAR2_TABLE_200();
221       a26 := JTF_DATE_TABLE();
222       a27 := JTF_NUMBER_TABLE();
223       a28 := JTF_DATE_TABLE();
224       a29 := JTF_NUMBER_TABLE();
225       a30 := JTF_NUMBER_TABLE();
226       a31 := JTF_VARCHAR2_TABLE_100();
227       a32 := JTF_VARCHAR2_TABLE_4000();
228       a33 := JTF_NUMBER_TABLE();
229       a34 := JTF_NUMBER_TABLE();
230       a35 := JTF_VARCHAR2_TABLE_100();
231       a36 := JTF_NUMBER_TABLE();
232       a37 := JTF_NUMBER_TABLE();
233       a38 := JTF_VARCHAR2_TABLE_100();
234       a39 := JTF_VARCHAR2_TABLE_100();
235       if t.count > 0 then
236         a0.extend(t.count);
237         a1.extend(t.count);
238         a2.extend(t.count);
239         a3.extend(t.count);
240         a4.extend(t.count);
241         a5.extend(t.count);
242         a6.extend(t.count);
243         a7.extend(t.count);
244         a8.extend(t.count);
245         a9.extend(t.count);
246         a10.extend(t.count);
247         a11.extend(t.count);
248         a12.extend(t.count);
249         a13.extend(t.count);
250         a14.extend(t.count);
251         a15.extend(t.count);
252         a16.extend(t.count);
253         a17.extend(t.count);
254         a18.extend(t.count);
255         a19.extend(t.count);
256         a20.extend(t.count);
257         a21.extend(t.count);
258         a22.extend(t.count);
259         a23.extend(t.count);
260         a24.extend(t.count);
261         a25.extend(t.count);
262         a26.extend(t.count);
263         a27.extend(t.count);
264         a28.extend(t.count);
265         a29.extend(t.count);
266         a30.extend(t.count);
267         a31.extend(t.count);
268         a32.extend(t.count);
269         a33.extend(t.count);
270         a34.extend(t.count);
271         a35.extend(t.count);
272         a36.extend(t.count);
273         a37.extend(t.count);
274         a38.extend(t.count);
275         a39.extend(t.count);
276         ddindx := t.first;
277         indx := 1;
278         while true loop
279           a0(indx) := t(ddindx).rt_oper_material_id;
280           a1(indx) := t(ddindx).object_version_number;
281           a2(indx) := t(ddindx).item_group_id;
282           a3(indx) := t(ddindx).item_group_name;
283           a4(indx) := t(ddindx).item_number;
284           a5(indx) := t(ddindx).inventory_item_id;
285           a6(indx) := t(ddindx).inventory_org_id;
286           a7(indx) := t(ddindx).uom;
287           a8(indx) := t(ddindx).uom_code;
288           a9(indx) := t(ddindx).quantity;
289           a10(indx) := t(ddindx).attribute_category;
290           a11(indx) := t(ddindx).attribute1;
291           a12(indx) := t(ddindx).attribute2;
292           a13(indx) := t(ddindx).attribute3;
293           a14(indx) := t(ddindx).attribute4;
294           a15(indx) := t(ddindx).attribute5;
295           a16(indx) := t(ddindx).attribute6;
296           a17(indx) := t(ddindx).attribute7;
297           a18(indx) := t(ddindx).attribute8;
298           a19(indx) := t(ddindx).attribute9;
299           a20(indx) := t(ddindx).attribute10;
300           a21(indx) := t(ddindx).attribute11;
301           a22(indx) := t(ddindx).attribute12;
302           a23(indx) := t(ddindx).attribute13;
303           a24(indx) := t(ddindx).attribute14;
304           a25(indx) := t(ddindx).attribute15;
305           a26(indx) := t(ddindx).last_update_date;
306           a27(indx) := t(ddindx).last_updated_by;
307           a28(indx) := t(ddindx).creation_date;
308           a29(indx) := t(ddindx).created_by;
309           a30(indx) := t(ddindx).last_update_login;
310           a31(indx) := t(ddindx).dml_operation;
311           a32(indx) := t(ddindx).position_path;
312           a33(indx) := t(ddindx).position_path_id;
313           a34(indx) := t(ddindx).item_comp_detail_id;
314           a35(indx) := t(ddindx).exclude_flag;
315           a36(indx) := t(ddindx).rework_percent;
316           a37(indx) := t(ddindx).replace_percent;
317           a38(indx) := t(ddindx).comp_material_flag;
318           a39(indx) := t(ddindx).in_service;
319           indx := indx+1;
320           if t.last =ddindx
321             then exit;
322           end if;
323           ddindx := t.next(ddindx);
324         end loop;
325       end if;
326    end if;
327   end rosetta_table_copy_out_p1;
328 
329   procedure rosetta_table_copy_in_p3(t out nocopy ahl_rm_material_as_pvt.route_efct_tbl_type, a0 JTF_NUMBER_TABLE
330     , a1 JTF_VARCHAR2_TABLE_100
331     , a2 JTF_NUMBER_TABLE
332     , a3 JTF_NUMBER_TABLE
333     , a4 JTF_VARCHAR2_TABLE_100
334     , a5 JTF_VARCHAR2_TABLE_300
335     , a6 JTF_VARCHAR2_TABLE_100
336     , a7 JTF_NUMBER_TABLE
337     , a8 JTF_VARCHAR2_TABLE_100
338     , a9 JTF_NUMBER_TABLE
339     , a10 JTF_VARCHAR2_TABLE_100
340     , a11 JTF_VARCHAR2_TABLE_300
341     , a12 JTF_NUMBER_TABLE
342     , a13 JTF_DATE_TABLE
343     , a14 JTF_NUMBER_TABLE
344     , a15 JTF_DATE_TABLE
345     , a16 JTF_NUMBER_TABLE
346     , a17 JTF_NUMBER_TABLE
347     , a18 JTF_NUMBER_TABLE
348     , a19 JTF_NUMBER_TABLE
349     , a20 JTF_VARCHAR2_TABLE_100
350     , a21 JTF_VARCHAR2_TABLE_200
351     , a22 JTF_VARCHAR2_TABLE_200
352     , a23 JTF_VARCHAR2_TABLE_200
353     , a24 JTF_VARCHAR2_TABLE_200
354     , a25 JTF_VARCHAR2_TABLE_200
355     , a26 JTF_VARCHAR2_TABLE_200
356     , a27 JTF_VARCHAR2_TABLE_200
357     , a28 JTF_VARCHAR2_TABLE_200
358     , a29 JTF_VARCHAR2_TABLE_200
359     , a30 JTF_VARCHAR2_TABLE_200
360     , a31 JTF_VARCHAR2_TABLE_200
361     , a32 JTF_VARCHAR2_TABLE_200
362     , a33 JTF_VARCHAR2_TABLE_200
363     , a34 JTF_VARCHAR2_TABLE_200
364     , a35 JTF_VARCHAR2_TABLE_200
365     , a36 JTF_VARCHAR2_TABLE_100
366     ) as
367     ddindx binary_integer; indx binary_integer;
368   begin
369   if a0 is not null and a0.count > 0 then
370       if a0.count > 0 then
371         indx := a0.first;
372         ddindx := 1;
373         while true loop
374           t(ddindx).route_effectivity_id := a0(indx);
375           t(ddindx).route_no := a1(indx);
376           t(ddindx).inventory_item_id := a2(indx);
377           t(ddindx).inventory_master_org_id := a3(indx);
378           t(ddindx).item_number := a4(indx);
379           t(ddindx).description := a5(indx);
380           t(ddindx).organization_code := a6(indx);
381           t(ddindx).mc_id := a7(indx);
382           t(ddindx).mc_name := a8(indx);
383           t(ddindx).mc_version_number := a9(indx);
384           t(ddindx).mc_revision := a10(indx);
385           t(ddindx).mc_description := a11(indx);
386           t(ddindx).mc_header_id := a12(indx);
387           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a13(indx));
388           t(ddindx).last_updated_by := a14(indx);
389           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a15(indx));
390           t(ddindx).created_by := a16(indx);
391           t(ddindx).last_update_login := a17(indx);
392           t(ddindx).object_version_number := a18(indx);
393           t(ddindx).security_group_id := a19(indx);
394           t(ddindx).attribute_category := a20(indx);
395           t(ddindx).attribute1 := a21(indx);
396           t(ddindx).attribute2 := a22(indx);
397           t(ddindx).attribute3 := a23(indx);
398           t(ddindx).attribute4 := a24(indx);
399           t(ddindx).attribute5 := a25(indx);
400           t(ddindx).attribute6 := a26(indx);
401           t(ddindx).attribute7 := a27(indx);
402           t(ddindx).attribute8 := a28(indx);
403           t(ddindx).attribute9 := a29(indx);
404           t(ddindx).attribute10 := a30(indx);
405           t(ddindx).attribute11 := a31(indx);
406           t(ddindx).attribute12 := a32(indx);
407           t(ddindx).attribute13 := a33(indx);
408           t(ddindx).attribute14 := a34(indx);
409           t(ddindx).attribute15 := a35(indx);
410           t(ddindx).dml_operation := a36(indx);
411           ddindx := ddindx+1;
412           if a0.last =indx
413             then exit;
414           end if;
415           indx := a0.next(indx);
416         end loop;
417       end if;
418    end if;
419   end rosetta_table_copy_in_p3;
420   procedure rosetta_table_copy_out_p3(t ahl_rm_material_as_pvt.route_efct_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
421     , a1 out nocopy JTF_VARCHAR2_TABLE_100
422     , a2 out nocopy JTF_NUMBER_TABLE
423     , a3 out nocopy JTF_NUMBER_TABLE
424     , a4 out nocopy JTF_VARCHAR2_TABLE_100
425     , a5 out nocopy JTF_VARCHAR2_TABLE_300
426     , a6 out nocopy JTF_VARCHAR2_TABLE_100
427     , a7 out nocopy JTF_NUMBER_TABLE
428     , a8 out nocopy JTF_VARCHAR2_TABLE_100
429     , a9 out nocopy JTF_NUMBER_TABLE
430     , a10 out nocopy JTF_VARCHAR2_TABLE_100
431     , a11 out nocopy JTF_VARCHAR2_TABLE_300
432     , a12 out nocopy JTF_NUMBER_TABLE
433     , a13 out nocopy JTF_DATE_TABLE
434     , a14 out nocopy JTF_NUMBER_TABLE
435     , a15 out nocopy JTF_DATE_TABLE
436     , a16 out nocopy JTF_NUMBER_TABLE
437     , a17 out nocopy JTF_NUMBER_TABLE
438     , a18 out nocopy JTF_NUMBER_TABLE
439     , a19 out nocopy JTF_NUMBER_TABLE
440     , a20 out nocopy JTF_VARCHAR2_TABLE_100
441     , a21 out nocopy JTF_VARCHAR2_TABLE_200
442     , a22 out nocopy JTF_VARCHAR2_TABLE_200
443     , a23 out nocopy JTF_VARCHAR2_TABLE_200
444     , a24 out nocopy JTF_VARCHAR2_TABLE_200
445     , a25 out nocopy JTF_VARCHAR2_TABLE_200
446     , a26 out nocopy JTF_VARCHAR2_TABLE_200
447     , a27 out nocopy JTF_VARCHAR2_TABLE_200
448     , a28 out nocopy JTF_VARCHAR2_TABLE_200
449     , a29 out nocopy JTF_VARCHAR2_TABLE_200
450     , a30 out nocopy JTF_VARCHAR2_TABLE_200
451     , a31 out nocopy JTF_VARCHAR2_TABLE_200
452     , a32 out nocopy JTF_VARCHAR2_TABLE_200
453     , a33 out nocopy JTF_VARCHAR2_TABLE_200
454     , a34 out nocopy JTF_VARCHAR2_TABLE_200
455     , a35 out nocopy JTF_VARCHAR2_TABLE_200
456     , a36 out nocopy JTF_VARCHAR2_TABLE_100
457     ) as
458     ddindx binary_integer; indx binary_integer;
459   begin
460   if t is null or t.count = 0 then
461     a0 := JTF_NUMBER_TABLE();
462     a1 := JTF_VARCHAR2_TABLE_100();
463     a2 := JTF_NUMBER_TABLE();
464     a3 := JTF_NUMBER_TABLE();
465     a4 := JTF_VARCHAR2_TABLE_100();
466     a5 := JTF_VARCHAR2_TABLE_300();
467     a6 := JTF_VARCHAR2_TABLE_100();
468     a7 := JTF_NUMBER_TABLE();
469     a8 := JTF_VARCHAR2_TABLE_100();
470     a9 := JTF_NUMBER_TABLE();
471     a10 := JTF_VARCHAR2_TABLE_100();
472     a11 := JTF_VARCHAR2_TABLE_300();
473     a12 := JTF_NUMBER_TABLE();
474     a13 := JTF_DATE_TABLE();
475     a14 := JTF_NUMBER_TABLE();
476     a15 := JTF_DATE_TABLE();
477     a16 := JTF_NUMBER_TABLE();
478     a17 := JTF_NUMBER_TABLE();
479     a18 := JTF_NUMBER_TABLE();
480     a19 := JTF_NUMBER_TABLE();
481     a20 := JTF_VARCHAR2_TABLE_100();
482     a21 := JTF_VARCHAR2_TABLE_200();
483     a22 := JTF_VARCHAR2_TABLE_200();
484     a23 := JTF_VARCHAR2_TABLE_200();
485     a24 := JTF_VARCHAR2_TABLE_200();
486     a25 := JTF_VARCHAR2_TABLE_200();
487     a26 := JTF_VARCHAR2_TABLE_200();
488     a27 := JTF_VARCHAR2_TABLE_200();
489     a28 := JTF_VARCHAR2_TABLE_200();
490     a29 := JTF_VARCHAR2_TABLE_200();
491     a30 := JTF_VARCHAR2_TABLE_200();
492     a31 := JTF_VARCHAR2_TABLE_200();
493     a32 := JTF_VARCHAR2_TABLE_200();
494     a33 := JTF_VARCHAR2_TABLE_200();
495     a34 := JTF_VARCHAR2_TABLE_200();
496     a35 := JTF_VARCHAR2_TABLE_200();
497     a36 := JTF_VARCHAR2_TABLE_100();
498   else
499       a0 := JTF_NUMBER_TABLE();
500       a1 := JTF_VARCHAR2_TABLE_100();
501       a2 := JTF_NUMBER_TABLE();
502       a3 := JTF_NUMBER_TABLE();
503       a4 := JTF_VARCHAR2_TABLE_100();
504       a5 := JTF_VARCHAR2_TABLE_300();
505       a6 := JTF_VARCHAR2_TABLE_100();
506       a7 := JTF_NUMBER_TABLE();
507       a8 := JTF_VARCHAR2_TABLE_100();
508       a9 := JTF_NUMBER_TABLE();
509       a10 := JTF_VARCHAR2_TABLE_100();
510       a11 := JTF_VARCHAR2_TABLE_300();
511       a12 := JTF_NUMBER_TABLE();
512       a13 := JTF_DATE_TABLE();
513       a14 := JTF_NUMBER_TABLE();
514       a15 := JTF_DATE_TABLE();
515       a16 := JTF_NUMBER_TABLE();
516       a17 := JTF_NUMBER_TABLE();
517       a18 := JTF_NUMBER_TABLE();
518       a19 := JTF_NUMBER_TABLE();
519       a20 := JTF_VARCHAR2_TABLE_100();
520       a21 := JTF_VARCHAR2_TABLE_200();
521       a22 := JTF_VARCHAR2_TABLE_200();
522       a23 := JTF_VARCHAR2_TABLE_200();
523       a24 := JTF_VARCHAR2_TABLE_200();
524       a25 := JTF_VARCHAR2_TABLE_200();
525       a26 := JTF_VARCHAR2_TABLE_200();
526       a27 := JTF_VARCHAR2_TABLE_200();
527       a28 := JTF_VARCHAR2_TABLE_200();
528       a29 := JTF_VARCHAR2_TABLE_200();
529       a30 := JTF_VARCHAR2_TABLE_200();
530       a31 := JTF_VARCHAR2_TABLE_200();
531       a32 := JTF_VARCHAR2_TABLE_200();
532       a33 := JTF_VARCHAR2_TABLE_200();
533       a34 := JTF_VARCHAR2_TABLE_200();
534       a35 := JTF_VARCHAR2_TABLE_200();
535       a36 := JTF_VARCHAR2_TABLE_100();
536       if t.count > 0 then
537         a0.extend(t.count);
538         a1.extend(t.count);
539         a2.extend(t.count);
540         a3.extend(t.count);
541         a4.extend(t.count);
542         a5.extend(t.count);
543         a6.extend(t.count);
544         a7.extend(t.count);
545         a8.extend(t.count);
546         a9.extend(t.count);
547         a10.extend(t.count);
548         a11.extend(t.count);
549         a12.extend(t.count);
550         a13.extend(t.count);
551         a14.extend(t.count);
552         a15.extend(t.count);
553         a16.extend(t.count);
554         a17.extend(t.count);
555         a18.extend(t.count);
556         a19.extend(t.count);
557         a20.extend(t.count);
558         a21.extend(t.count);
559         a22.extend(t.count);
560         a23.extend(t.count);
561         a24.extend(t.count);
562         a25.extend(t.count);
563         a26.extend(t.count);
564         a27.extend(t.count);
565         a28.extend(t.count);
566         a29.extend(t.count);
567         a30.extend(t.count);
568         a31.extend(t.count);
569         a32.extend(t.count);
570         a33.extend(t.count);
571         a34.extend(t.count);
572         a35.extend(t.count);
573         a36.extend(t.count);
574         ddindx := t.first;
575         indx := 1;
576         while true loop
577           a0(indx) := t(ddindx).route_effectivity_id;
578           a1(indx) := t(ddindx).route_no;
579           a2(indx) := t(ddindx).inventory_item_id;
580           a3(indx) := t(ddindx).inventory_master_org_id;
581           a4(indx) := t(ddindx).item_number;
582           a5(indx) := t(ddindx).description;
583           a6(indx) := t(ddindx).organization_code;
584           a7(indx) := t(ddindx).mc_id;
585           a8(indx) := t(ddindx).mc_name;
586           a9(indx) := t(ddindx).mc_version_number;
587           a10(indx) := t(ddindx).mc_revision;
588           a11(indx) := t(ddindx).mc_description;
589           a12(indx) := t(ddindx).mc_header_id;
590           a13(indx) := t(ddindx).last_update_date;
591           a14(indx) := t(ddindx).last_updated_by;
592           a15(indx) := t(ddindx).creation_date;
593           a16(indx) := t(ddindx).created_by;
594           a17(indx) := t(ddindx).last_update_login;
595           a18(indx) := t(ddindx).object_version_number;
596           a19(indx) := t(ddindx).security_group_id;
597           a20(indx) := t(ddindx).attribute_category;
598           a21(indx) := t(ddindx).attribute1;
599           a22(indx) := t(ddindx).attribute2;
600           a23(indx) := t(ddindx).attribute3;
601           a24(indx) := t(ddindx).attribute4;
602           a25(indx) := t(ddindx).attribute5;
603           a26(indx) := t(ddindx).attribute6;
604           a27(indx) := t(ddindx).attribute7;
605           a28(indx) := t(ddindx).attribute8;
606           a29(indx) := t(ddindx).attribute9;
607           a30(indx) := t(ddindx).attribute10;
608           a31(indx) := t(ddindx).attribute11;
609           a32(indx) := t(ddindx).attribute12;
610           a33(indx) := t(ddindx).attribute13;
611           a34(indx) := t(ddindx).attribute14;
612           a35(indx) := t(ddindx).attribute15;
613           a36(indx) := t(ddindx).dml_operation;
614           indx := indx+1;
615           if t.last =ddindx
616             then exit;
617           end if;
618           ddindx := t.next(ddindx);
619         end loop;
620       end if;
621    end if;
622   end rosetta_table_copy_out_p3;
623 
624   procedure process_material_req(p_api_version  NUMBER
625     , p_init_msg_list  VARCHAR2
626     , p_commit  VARCHAR2
627     , p_validation_level  NUMBER
628     , p_default  VARCHAR2
629     , p_module_type  VARCHAR2
630     , x_return_status out nocopy  VARCHAR2
631     , x_msg_count out nocopy  NUMBER
632     , x_msg_data out nocopy  VARCHAR2
633     , p9_a0 in out nocopy JTF_NUMBER_TABLE
634     , p9_a1 in out nocopy JTF_NUMBER_TABLE
635     , p9_a2 in out nocopy JTF_NUMBER_TABLE
636     , p9_a3 in out nocopy JTF_VARCHAR2_TABLE_100
637     , p9_a4 in out nocopy JTF_VARCHAR2_TABLE_100
638     , p9_a5 in out nocopy JTF_NUMBER_TABLE
639     , p9_a6 in out nocopy JTF_NUMBER_TABLE
640     , p9_a7 in out nocopy JTF_VARCHAR2_TABLE_100
641     , p9_a8 in out nocopy JTF_VARCHAR2_TABLE_100
642     , p9_a9 in out nocopy JTF_NUMBER_TABLE
643     , p9_a10 in out nocopy JTF_VARCHAR2_TABLE_100
644     , p9_a11 in out nocopy JTF_VARCHAR2_TABLE_200
645     , p9_a12 in out nocopy JTF_VARCHAR2_TABLE_200
646     , p9_a13 in out nocopy JTF_VARCHAR2_TABLE_200
647     , p9_a14 in out nocopy JTF_VARCHAR2_TABLE_200
648     , p9_a15 in out nocopy JTF_VARCHAR2_TABLE_200
649     , p9_a16 in out nocopy JTF_VARCHAR2_TABLE_200
650     , p9_a17 in out nocopy JTF_VARCHAR2_TABLE_200
651     , p9_a18 in out nocopy JTF_VARCHAR2_TABLE_200
652     , p9_a19 in out nocopy JTF_VARCHAR2_TABLE_200
653     , p9_a20 in out nocopy JTF_VARCHAR2_TABLE_200
654     , p9_a21 in out nocopy JTF_VARCHAR2_TABLE_200
655     , p9_a22 in out nocopy JTF_VARCHAR2_TABLE_200
656     , p9_a23 in out nocopy JTF_VARCHAR2_TABLE_200
657     , p9_a24 in out nocopy JTF_VARCHAR2_TABLE_200
658     , p9_a25 in out nocopy JTF_VARCHAR2_TABLE_200
659     , p9_a26 in out nocopy JTF_DATE_TABLE
660     , p9_a27 in out nocopy JTF_NUMBER_TABLE
661     , p9_a28 in out nocopy JTF_DATE_TABLE
662     , p9_a29 in out nocopy JTF_NUMBER_TABLE
663     , p9_a30 in out nocopy JTF_NUMBER_TABLE
664     , p9_a31 in out nocopy JTF_VARCHAR2_TABLE_100
665     , p9_a32 in out nocopy JTF_VARCHAR2_TABLE_4000
666     , p9_a33 in out nocopy JTF_NUMBER_TABLE
667     , p9_a34 in out nocopy JTF_NUMBER_TABLE
668     , p9_a35 in out nocopy JTF_VARCHAR2_TABLE_100
669     , p9_a36 in out nocopy JTF_NUMBER_TABLE
670     , p9_a37 in out nocopy JTF_NUMBER_TABLE
671     , p9_a38 in out nocopy JTF_VARCHAR2_TABLE_100
672     , p9_a39 in out nocopy JTF_VARCHAR2_TABLE_100
673     , p_object_id  NUMBER
674     , p_association_type  VARCHAR2
675   )
676 
677   as
678     ddp_x_material_req_tbl ahl_rm_material_as_pvt.material_req_tbl_type;
679     ddindx binary_integer; indx binary_integer;
680   begin
681 
682     -- copy data to the local IN or IN-OUT args, if any
683 
684 
685 
686 
687 
688 
689 
690 
691 
692     ahl_rm_material_as_pvt_w.rosetta_table_copy_in_p1(ddp_x_material_req_tbl, p9_a0
693       , p9_a1
694       , p9_a2
695       , p9_a3
696       , p9_a4
697       , p9_a5
698       , p9_a6
699       , p9_a7
700       , p9_a8
701       , p9_a9
702       , p9_a10
703       , p9_a11
704       , p9_a12
705       , p9_a13
706       , p9_a14
707       , p9_a15
708       , p9_a16
709       , p9_a17
710       , p9_a18
711       , p9_a19
712       , p9_a20
713       , p9_a21
714       , p9_a22
715       , p9_a23
716       , p9_a24
717       , p9_a25
718       , p9_a26
719       , p9_a27
720       , p9_a28
721       , p9_a29
722       , p9_a30
723       , p9_a31
724       , p9_a32
725       , p9_a33
726       , p9_a34
727       , p9_a35
728       , p9_a36
729       , p9_a37
730       , p9_a38
731       , p9_a39
732       );
733 
734 
735 
736     -- here's the delegated call to the old PL/SQL routine
737     ahl_rm_material_as_pvt.process_material_req(p_api_version,
738       p_init_msg_list,
739       p_commit,
740       p_validation_level,
741       p_default,
742       p_module_type,
743       x_return_status,
744       x_msg_count,
745       x_msg_data,
746       ddp_x_material_req_tbl,
747       p_object_id,
748       p_association_type);
749 
750     -- copy data back from the local variables to OUT or IN-OUT args, if any
751 
752 
753 
754 
755 
756 
757 
758 
759 
760     ahl_rm_material_as_pvt_w.rosetta_table_copy_out_p1(ddp_x_material_req_tbl, p9_a0
761       , p9_a1
762       , p9_a2
763       , p9_a3
764       , p9_a4
765       , p9_a5
766       , p9_a6
767       , p9_a7
768       , p9_a8
769       , p9_a9
770       , p9_a10
771       , p9_a11
772       , p9_a12
773       , p9_a13
774       , p9_a14
775       , p9_a15
776       , p9_a16
777       , p9_a17
778       , p9_a18
779       , p9_a19
780       , p9_a20
781       , p9_a21
782       , p9_a22
783       , p9_a23
784       , p9_a24
785       , p9_a25
786       , p9_a26
787       , p9_a27
788       , p9_a28
789       , p9_a29
790       , p9_a30
791       , p9_a31
792       , p9_a32
793       , p9_a33
794       , p9_a34
795       , p9_a35
796       , p9_a36
797       , p9_a37
798       , p9_a38
799       , p9_a39
800       );
801 
802 
803   end;
804 
805   procedure process_route_efcts(p_api_version  NUMBER
806     , p_init_msg_list  VARCHAR2
807     , p_commit  VARCHAR2
808     , p_validation_level  NUMBER
809     , p_default  VARCHAR2
810     , p_module_type  VARCHAR2
811     , p_object_id  NUMBER
812     , x_return_status out nocopy  VARCHAR2
813     , x_msg_count out nocopy  NUMBER
814     , x_msg_data out nocopy  VARCHAR2
815     , p10_a0 in out nocopy JTF_NUMBER_TABLE
816     , p10_a1 in out nocopy JTF_VARCHAR2_TABLE_100
817     , p10_a2 in out nocopy JTF_NUMBER_TABLE
818     , p10_a3 in out nocopy JTF_NUMBER_TABLE
819     , p10_a4 in out nocopy JTF_VARCHAR2_TABLE_100
820     , p10_a5 in out nocopy JTF_VARCHAR2_TABLE_300
821     , p10_a6 in out nocopy JTF_VARCHAR2_TABLE_100
822     , p10_a7 in out nocopy JTF_NUMBER_TABLE
823     , p10_a8 in out nocopy JTF_VARCHAR2_TABLE_100
824     , p10_a9 in out nocopy JTF_NUMBER_TABLE
825     , p10_a10 in out nocopy JTF_VARCHAR2_TABLE_100
826     , p10_a11 in out nocopy JTF_VARCHAR2_TABLE_300
827     , p10_a12 in out nocopy JTF_NUMBER_TABLE
828     , p10_a13 in out nocopy JTF_DATE_TABLE
829     , p10_a14 in out nocopy JTF_NUMBER_TABLE
830     , p10_a15 in out nocopy JTF_DATE_TABLE
831     , p10_a16 in out nocopy JTF_NUMBER_TABLE
832     , p10_a17 in out nocopy JTF_NUMBER_TABLE
833     , p10_a18 in out nocopy JTF_NUMBER_TABLE
834     , p10_a19 in out nocopy JTF_NUMBER_TABLE
835     , p10_a20 in out nocopy JTF_VARCHAR2_TABLE_100
836     , p10_a21 in out nocopy JTF_VARCHAR2_TABLE_200
837     , p10_a22 in out nocopy JTF_VARCHAR2_TABLE_200
838     , p10_a23 in out nocopy JTF_VARCHAR2_TABLE_200
839     , p10_a24 in out nocopy JTF_VARCHAR2_TABLE_200
840     , p10_a25 in out nocopy JTF_VARCHAR2_TABLE_200
841     , p10_a26 in out nocopy JTF_VARCHAR2_TABLE_200
842     , p10_a27 in out nocopy JTF_VARCHAR2_TABLE_200
843     , p10_a28 in out nocopy JTF_VARCHAR2_TABLE_200
844     , p10_a29 in out nocopy JTF_VARCHAR2_TABLE_200
845     , p10_a30 in out nocopy JTF_VARCHAR2_TABLE_200
846     , p10_a31 in out nocopy JTF_VARCHAR2_TABLE_200
847     , p10_a32 in out nocopy JTF_VARCHAR2_TABLE_200
848     , p10_a33 in out nocopy JTF_VARCHAR2_TABLE_200
849     , p10_a34 in out nocopy JTF_VARCHAR2_TABLE_200
850     , p10_a35 in out nocopy JTF_VARCHAR2_TABLE_200
851     , p10_a36 in out nocopy JTF_VARCHAR2_TABLE_100
852   )
853 
854   as
855     ddp_x_route_efct_tbl ahl_rm_material_as_pvt.route_efct_tbl_type;
856     ddindx binary_integer; indx binary_integer;
857   begin
858 
859     -- copy data to the local IN or IN-OUT args, if any
860 
861 
862 
863 
864 
865 
866 
867 
868 
869 
870     ahl_rm_material_as_pvt_w.rosetta_table_copy_in_p3(ddp_x_route_efct_tbl, p10_a0
871       , p10_a1
872       , p10_a2
873       , p10_a3
874       , p10_a4
875       , p10_a5
876       , p10_a6
877       , p10_a7
878       , p10_a8
879       , p10_a9
880       , p10_a10
881       , p10_a11
882       , p10_a12
883       , p10_a13
884       , p10_a14
885       , p10_a15
886       , p10_a16
887       , p10_a17
888       , p10_a18
889       , p10_a19
890       , p10_a20
891       , p10_a21
892       , p10_a22
893       , p10_a23
894       , p10_a24
895       , p10_a25
896       , p10_a26
897       , p10_a27
898       , p10_a28
899       , p10_a29
900       , p10_a30
901       , p10_a31
902       , p10_a32
903       , p10_a33
904       , p10_a34
905       , p10_a35
906       , p10_a36
907       );
908 
909     -- here's the delegated call to the old PL/SQL routine
910     ahl_rm_material_as_pvt.process_route_efcts(p_api_version,
911       p_init_msg_list,
912       p_commit,
913       p_validation_level,
914       p_default,
915       p_module_type,
916       p_object_id,
917       x_return_status,
918       x_msg_count,
919       x_msg_data,
920       ddp_x_route_efct_tbl);
921 
922     -- copy data back from the local variables to OUT or IN-OUT args, if any
923 
924 
925 
926 
927 
928 
929 
930 
931 
932 
933     ahl_rm_material_as_pvt_w.rosetta_table_copy_out_p3(ddp_x_route_efct_tbl, p10_a0
934       , p10_a1
935       , p10_a2
936       , p10_a3
937       , p10_a4
938       , p10_a5
939       , p10_a6
940       , p10_a7
941       , p10_a8
942       , p10_a9
943       , p10_a10
944       , p10_a11
945       , p10_a12
946       , p10_a13
947       , p10_a14
948       , p10_a15
949       , p10_a16
950       , p10_a17
951       , p10_a18
952       , p10_a19
953       , p10_a20
954       , p10_a21
955       , p10_a22
956       , p10_a23
957       , p10_a24
958       , p10_a25
959       , p10_a26
960       , p10_a27
961       , p10_a28
962       , p10_a29
963       , p10_a30
964       , p10_a31
965       , p10_a32
966       , p10_a33
967       , p10_a34
968       , p10_a35
969       , p10_a36
970       );
971   end;
972 
973 end ahl_rm_material_as_pvt_w;