DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_LTP_REQST_MATRL_PUB_W

Source


1 package body ahl_ltp_reqst_matrl_pub_w as
2   /* $Header: AHLWRMTB.pls 115.11 2004/04/12 17:08:13 ssurapan 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   procedure rosetta_table_copy_in_p3(t out nocopy ahl_ltp_reqst_matrl_pub.schedule_mr_tbl, a0 JTF_NUMBER_TABLE
14     , a1 JTF_NUMBER_TABLE
15     , a2 JTF_NUMBER_TABLE
16     , a3 JTF_NUMBER_TABLE
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_NUMBER_TABLE
22     , a9 JTF_DATE_TABLE
23     , a10 JTF_NUMBER_TABLE
24     , a11 JTF_NUMBER_TABLE
25     , a12 JTF_NUMBER_TABLE
26     , a13 JTF_NUMBER_TABLE
27     , a14 JTF_NUMBER_TABLE
28     , a15 JTF_VARCHAR2_TABLE_100
29     , a16 JTF_DATE_TABLE
30     , a17 JTF_NUMBER_TABLE
31     , a18 JTF_VARCHAR2_TABLE_100
32     , a19 JTF_NUMBER_TABLE
33     , a20 JTF_VARCHAR2_TABLE_100
34     , a21 JTF_NUMBER_TABLE
35     , a22 JTF_NUMBER_TABLE
36     , a23 JTF_VARCHAR2_TABLE_4000
37     , a24 JTF_NUMBER_TABLE
38     , a25 JTF_NUMBER_TABLE
39     , a26 JTF_VARCHAR2_TABLE_100
40     , a27 JTF_NUMBER_TABLE
41     , a28 JTF_NUMBER_TABLE
42     , a29 JTF_VARCHAR2_TABLE_100
43     ) as
44     ddindx binary_integer; indx binary_integer;
45   begin
46   if a0 is not null and a0.count > 0 then
47       if a0.count > 0 then
48         indx := a0.first;
49         ddindx := 1;
50         while true loop
51           t(ddindx).schedule_materials_id := a0(indx);
52           t(ddindx).object_version_number := a1(indx);
53           t(ddindx).visit_id := a2(indx);
54           t(ddindx).item_id := a3(indx);
55           t(ddindx).item := a4(indx);
56           t(ddindx).org_id := a5(indx);
57           t(ddindx).visit_task_id := a6(indx);
58           t(ddindx).task_name := a7(indx);
59           t(ddindx).mr_route_id := a8(indx);
60           t(ddindx).req_arrival_date := rosetta_g_miss_date_in_map(a9(indx));
61           t(ddindx).quantity := a10(indx);
62           t(ddindx).request_id := a11(indx);
63           t(ddindx).transaction_id := a12(indx);
64           t(ddindx).schedule_mat_id := a13(indx);
65           t(ddindx).mrp_status_code := a14(indx);
66           t(ddindx).mrp_status_mean := a15(indx);
67           t(ddindx).scheduled_date := rosetta_g_miss_date_in_map(a16(indx));
68           t(ddindx).scheduled_quantity := a17(indx);
69           t(ddindx).plan_name := a18(indx);
70           t(ddindx).item_group_id := a19(indx);
71           t(ddindx).uom_code := a20(indx);
72           t(ddindx).rt_oper_mat_id := a21(indx);
73           t(ddindx).position_path_id := a22(indx);
74           t(ddindx).position_path := a23(indx);
75           t(ddindx).item_comp_detail_id := a24(indx);
76           t(ddindx).relationship_id := a25(indx);
77           t(ddindx).relationship_name := a26(indx);
78           t(ddindx).rework_percent := a27(indx);
79           t(ddindx).replace_percent := a28(indx);
80           t(ddindx).operation_flag := a29(indx);
81           ddindx := ddindx+1;
82           if a0.last =indx
83             then exit;
84           end if;
85           indx := a0.next(indx);
86         end loop;
87       end if;
88    end if;
89   end rosetta_table_copy_in_p3;
90   procedure rosetta_table_copy_out_p3(t ahl_ltp_reqst_matrl_pub.schedule_mr_tbl, a0 out nocopy JTF_NUMBER_TABLE
91     , a1 out nocopy JTF_NUMBER_TABLE
92     , a2 out nocopy JTF_NUMBER_TABLE
93     , a3 out nocopy JTF_NUMBER_TABLE
94     , a4 out nocopy JTF_VARCHAR2_TABLE_100
95     , a5 out nocopy JTF_NUMBER_TABLE
96     , a6 out nocopy JTF_NUMBER_TABLE
97     , a7 out nocopy JTF_VARCHAR2_TABLE_100
98     , a8 out nocopy JTF_NUMBER_TABLE
99     , a9 out nocopy JTF_DATE_TABLE
100     , a10 out nocopy JTF_NUMBER_TABLE
101     , a11 out nocopy JTF_NUMBER_TABLE
102     , a12 out nocopy JTF_NUMBER_TABLE
103     , a13 out nocopy JTF_NUMBER_TABLE
104     , a14 out nocopy JTF_NUMBER_TABLE
105     , a15 out nocopy JTF_VARCHAR2_TABLE_100
106     , a16 out nocopy JTF_DATE_TABLE
107     , a17 out nocopy JTF_NUMBER_TABLE
108     , a18 out nocopy JTF_VARCHAR2_TABLE_100
109     , a19 out nocopy JTF_NUMBER_TABLE
110     , a20 out nocopy JTF_VARCHAR2_TABLE_100
111     , a21 out nocopy JTF_NUMBER_TABLE
112     , a22 out nocopy JTF_NUMBER_TABLE
113     , a23 out nocopy JTF_VARCHAR2_TABLE_4000
114     , a24 out nocopy JTF_NUMBER_TABLE
115     , a25 out nocopy JTF_NUMBER_TABLE
116     , a26 out nocopy JTF_VARCHAR2_TABLE_100
117     , a27 out nocopy JTF_NUMBER_TABLE
118     , a28 out nocopy JTF_NUMBER_TABLE
119     , a29 out nocopy JTF_VARCHAR2_TABLE_100
120     ) as
121     ddindx binary_integer; indx binary_integer;
122   begin
123   if t is null or t.count = 0 then
124     a0 := JTF_NUMBER_TABLE();
125     a1 := JTF_NUMBER_TABLE();
126     a2 := JTF_NUMBER_TABLE();
127     a3 := JTF_NUMBER_TABLE();
128     a4 := JTF_VARCHAR2_TABLE_100();
129     a5 := JTF_NUMBER_TABLE();
130     a6 := JTF_NUMBER_TABLE();
131     a7 := JTF_VARCHAR2_TABLE_100();
132     a8 := JTF_NUMBER_TABLE();
133     a9 := JTF_DATE_TABLE();
134     a10 := JTF_NUMBER_TABLE();
135     a11 := JTF_NUMBER_TABLE();
136     a12 := JTF_NUMBER_TABLE();
137     a13 := JTF_NUMBER_TABLE();
138     a14 := JTF_NUMBER_TABLE();
139     a15 := JTF_VARCHAR2_TABLE_100();
140     a16 := JTF_DATE_TABLE();
141     a17 := JTF_NUMBER_TABLE();
142     a18 := JTF_VARCHAR2_TABLE_100();
143     a19 := JTF_NUMBER_TABLE();
144     a20 := JTF_VARCHAR2_TABLE_100();
145     a21 := JTF_NUMBER_TABLE();
146     a22 := JTF_NUMBER_TABLE();
147     a23 := JTF_VARCHAR2_TABLE_4000();
148     a24 := JTF_NUMBER_TABLE();
149     a25 := JTF_NUMBER_TABLE();
150     a26 := JTF_VARCHAR2_TABLE_100();
151     a27 := JTF_NUMBER_TABLE();
152     a28 := JTF_NUMBER_TABLE();
153     a29 := JTF_VARCHAR2_TABLE_100();
154   else
155       a0 := JTF_NUMBER_TABLE();
156       a1 := JTF_NUMBER_TABLE();
157       a2 := JTF_NUMBER_TABLE();
158       a3 := JTF_NUMBER_TABLE();
159       a4 := JTF_VARCHAR2_TABLE_100();
160       a5 := JTF_NUMBER_TABLE();
161       a6 := JTF_NUMBER_TABLE();
162       a7 := JTF_VARCHAR2_TABLE_100();
163       a8 := JTF_NUMBER_TABLE();
164       a9 := JTF_DATE_TABLE();
165       a10 := JTF_NUMBER_TABLE();
166       a11 := JTF_NUMBER_TABLE();
167       a12 := JTF_NUMBER_TABLE();
168       a13 := JTF_NUMBER_TABLE();
169       a14 := JTF_NUMBER_TABLE();
170       a15 := JTF_VARCHAR2_TABLE_100();
171       a16 := JTF_DATE_TABLE();
172       a17 := JTF_NUMBER_TABLE();
173       a18 := JTF_VARCHAR2_TABLE_100();
174       a19 := JTF_NUMBER_TABLE();
175       a20 := JTF_VARCHAR2_TABLE_100();
176       a21 := JTF_NUMBER_TABLE();
177       a22 := JTF_NUMBER_TABLE();
178       a23 := JTF_VARCHAR2_TABLE_4000();
179       a24 := JTF_NUMBER_TABLE();
180       a25 := JTF_NUMBER_TABLE();
181       a26 := JTF_VARCHAR2_TABLE_100();
182       a27 := JTF_NUMBER_TABLE();
183       a28 := JTF_NUMBER_TABLE();
184       a29 := JTF_VARCHAR2_TABLE_100();
185       if t.count > 0 then
186         a0.extend(t.count);
187         a1.extend(t.count);
188         a2.extend(t.count);
189         a3.extend(t.count);
190         a4.extend(t.count);
191         a5.extend(t.count);
192         a6.extend(t.count);
193         a7.extend(t.count);
194         a8.extend(t.count);
195         a9.extend(t.count);
196         a10.extend(t.count);
197         a11.extend(t.count);
198         a12.extend(t.count);
199         a13.extend(t.count);
200         a14.extend(t.count);
201         a15.extend(t.count);
202         a16.extend(t.count);
203         a17.extend(t.count);
204         a18.extend(t.count);
205         a19.extend(t.count);
206         a20.extend(t.count);
207         a21.extend(t.count);
208         a22.extend(t.count);
209         a23.extend(t.count);
210         a24.extend(t.count);
211         a25.extend(t.count);
212         a26.extend(t.count);
213         a27.extend(t.count);
214         a28.extend(t.count);
215         a29.extend(t.count);
216         ddindx := t.first;
217         indx := 1;
218         while true loop
219           a0(indx) := t(ddindx).schedule_materials_id;
220           a1(indx) := t(ddindx).object_version_number;
221           a2(indx) := t(ddindx).visit_id;
222           a3(indx) := t(ddindx).item_id;
223           a4(indx) := t(ddindx).item;
224           a5(indx) := t(ddindx).org_id;
225           a6(indx) := t(ddindx).visit_task_id;
226           a7(indx) := t(ddindx).task_name;
227           a8(indx) := t(ddindx).mr_route_id;
228           a9(indx) := t(ddindx).req_arrival_date;
229           a10(indx) := t(ddindx).quantity;
230           a11(indx) := t(ddindx).request_id;
231           a12(indx) := t(ddindx).transaction_id;
232           a13(indx) := t(ddindx).schedule_mat_id;
233           a14(indx) := t(ddindx).mrp_status_code;
234           a15(indx) := t(ddindx).mrp_status_mean;
235           a16(indx) := t(ddindx).scheduled_date;
236           a17(indx) := t(ddindx).scheduled_quantity;
237           a18(indx) := t(ddindx).plan_name;
238           a19(indx) := t(ddindx).item_group_id;
239           a20(indx) := t(ddindx).uom_code;
240           a21(indx) := t(ddindx).rt_oper_mat_id;
241           a22(indx) := t(ddindx).position_path_id;
242           a23(indx) := t(ddindx).position_path;
243           a24(indx) := t(ddindx).item_comp_detail_id;
244           a25(indx) := t(ddindx).relationship_id;
245           a26(indx) := t(ddindx).relationship_name;
246           a27(indx) := t(ddindx).rework_percent;
247           a28(indx) := t(ddindx).replace_percent;
248           a29(indx) := t(ddindx).operation_flag;
249           indx := indx+1;
250           if t.last =ddindx
251             then exit;
252           end if;
253           ddindx := t.next(ddindx);
254         end loop;
255       end if;
256    end if;
257   end rosetta_table_copy_out_p3;
258 
259   procedure rosetta_table_copy_in_p4(t out nocopy ahl_ltp_reqst_matrl_pub.task_details_tbl, a0 JTF_NUMBER_TABLE
260     , a1 JTF_NUMBER_TABLE
261     , a2 JTF_NUMBER_TABLE
262     , a3 JTF_VARCHAR2_TABLE_100
263     , a4 JTF_NUMBER_TABLE
264     , a5 JTF_NUMBER_TABLE
265     , a6 JTF_NUMBER_TABLE
266     , a7 JTF_VARCHAR2_TABLE_100
267     , a8 JTF_DATE_TABLE
268     , a9 JTF_NUMBER_TABLE
269     , a10 JTF_NUMBER_TABLE
270     , a11 JTF_NUMBER_TABLE
271     , a12 JTF_VARCHAR2_TABLE_100
272     , a13 JTF_DATE_TABLE
273     , a14 JTF_NUMBER_TABLE
274     ) as
275     ddindx binary_integer; indx binary_integer;
276   begin
277   if a0 is not null and a0.count > 0 then
278       if a0.count > 0 then
279         indx := a0.first;
280         ddindx := 1;
281         while true loop
282           t(ddindx).visit_id := a0(indx);
283           t(ddindx).org_id := a1(indx);
284           t(ddindx).visit_task_id := a2(indx);
285           t(ddindx).task_name := a3(indx);
286           t(ddindx).visit_task_number := a4(indx);
287           t(ddindx).mr_route_id := a5(indx);
288           t(ddindx).inventory_item_id := a6(indx);
289           t(ddindx).item := a7(indx);
290           t(ddindx).req_arrival_date := rosetta_g_miss_date_in_map(a8(indx));
291           t(ddindx).quantity := a9(indx);
292           t(ddindx).request_id := a10(indx);
293           t(ddindx).mrp_status_code := a11(indx);
294           t(ddindx).mrp_status_mean := a12(indx);
295           t(ddindx).scheduled_date := rosetta_g_miss_date_in_map(a13(indx));
296           t(ddindx).scheduled_flag := a14(indx);
297           ddindx := ddindx+1;
298           if a0.last =indx
299             then exit;
300           end if;
301           indx := a0.next(indx);
302         end loop;
303       end if;
304    end if;
305   end rosetta_table_copy_in_p4;
306   procedure rosetta_table_copy_out_p4(t ahl_ltp_reqst_matrl_pub.task_details_tbl, a0 out nocopy JTF_NUMBER_TABLE
307     , a1 out nocopy JTF_NUMBER_TABLE
308     , a2 out nocopy JTF_NUMBER_TABLE
309     , a3 out nocopy JTF_VARCHAR2_TABLE_100
310     , a4 out nocopy JTF_NUMBER_TABLE
311     , a5 out nocopy JTF_NUMBER_TABLE
312     , a6 out nocopy JTF_NUMBER_TABLE
313     , a7 out nocopy JTF_VARCHAR2_TABLE_100
314     , a8 out nocopy JTF_DATE_TABLE
315     , a9 out nocopy JTF_NUMBER_TABLE
316     , a10 out nocopy JTF_NUMBER_TABLE
317     , a11 out nocopy JTF_NUMBER_TABLE
318     , a12 out nocopy JTF_VARCHAR2_TABLE_100
319     , a13 out nocopy JTF_DATE_TABLE
320     , a14 out nocopy JTF_NUMBER_TABLE
321     ) as
322     ddindx binary_integer; indx binary_integer;
323   begin
324   if t is null or t.count = 0 then
325     a0 := JTF_NUMBER_TABLE();
326     a1 := JTF_NUMBER_TABLE();
327     a2 := JTF_NUMBER_TABLE();
328     a3 := JTF_VARCHAR2_TABLE_100();
329     a4 := JTF_NUMBER_TABLE();
330     a5 := JTF_NUMBER_TABLE();
331     a6 := JTF_NUMBER_TABLE();
332     a7 := JTF_VARCHAR2_TABLE_100();
333     a8 := JTF_DATE_TABLE();
334     a9 := JTF_NUMBER_TABLE();
335     a10 := JTF_NUMBER_TABLE();
336     a11 := JTF_NUMBER_TABLE();
337     a12 := JTF_VARCHAR2_TABLE_100();
338     a13 := JTF_DATE_TABLE();
339     a14 := JTF_NUMBER_TABLE();
340   else
341       a0 := JTF_NUMBER_TABLE();
342       a1 := JTF_NUMBER_TABLE();
343       a2 := JTF_NUMBER_TABLE();
344       a3 := JTF_VARCHAR2_TABLE_100();
345       a4 := JTF_NUMBER_TABLE();
346       a5 := JTF_NUMBER_TABLE();
347       a6 := JTF_NUMBER_TABLE();
348       a7 := JTF_VARCHAR2_TABLE_100();
349       a8 := JTF_DATE_TABLE();
350       a9 := JTF_NUMBER_TABLE();
351       a10 := JTF_NUMBER_TABLE();
352       a11 := JTF_NUMBER_TABLE();
353       a12 := JTF_VARCHAR2_TABLE_100();
354       a13 := JTF_DATE_TABLE();
355       a14 := JTF_NUMBER_TABLE();
356       if t.count > 0 then
357         a0.extend(t.count);
358         a1.extend(t.count);
359         a2.extend(t.count);
360         a3.extend(t.count);
361         a4.extend(t.count);
362         a5.extend(t.count);
363         a6.extend(t.count);
364         a7.extend(t.count);
365         a8.extend(t.count);
366         a9.extend(t.count);
367         a10.extend(t.count);
368         a11.extend(t.count);
369         a12.extend(t.count);
370         a13.extend(t.count);
371         a14.extend(t.count);
372         ddindx := t.first;
373         indx := 1;
374         while true loop
375           a0(indx) := t(ddindx).visit_id;
376           a1(indx) := t(ddindx).org_id;
377           a2(indx) := t(ddindx).visit_task_id;
378           a3(indx) := t(ddindx).task_name;
379           a4(indx) := t(ddindx).visit_task_number;
380           a5(indx) := t(ddindx).mr_route_id;
381           a6(indx) := t(ddindx).inventory_item_id;
382           a7(indx) := t(ddindx).item;
383           a8(indx) := t(ddindx).req_arrival_date;
384           a9(indx) := t(ddindx).quantity;
388           a13(indx) := t(ddindx).scheduled_date;
385           a10(indx) := t(ddindx).request_id;
386           a11(indx) := t(ddindx).mrp_status_code;
387           a12(indx) := t(ddindx).mrp_status_mean;
389           a14(indx) := t(ddindx).scheduled_flag;
390           indx := indx+1;
391           if t.last =ddindx
392             then exit;
393           end if;
394           ddindx := t.next(ddindx);
395         end loop;
396       end if;
397    end if;
398   end rosetta_table_copy_out_p4;
399 
400   procedure rosetta_table_copy_in_p5(t out nocopy ahl_ltp_reqst_matrl_pub.planned_materials_tbl, a0 JTF_NUMBER_TABLE
401     , a1 JTF_NUMBER_TABLE
402     , a2 JTF_NUMBER_TABLE
403     , a3 JTF_NUMBER_TABLE
404     , a4 JTF_VARCHAR2_TABLE_100
405     , a5 JTF_NUMBER_TABLE
406     , a6 JTF_VARCHAR2_TABLE_100
407     , a7 JTF_DATE_TABLE
408     , a8 JTF_NUMBER_TABLE
409     , a9 JTF_NUMBER_TABLE
410     , a10 JTF_NUMBER_TABLE
411     ) as
412     ddindx binary_integer; indx binary_integer;
413   begin
414   if a0 is not null and a0.count > 0 then
415       if a0.count > 0 then
416         indx := a0.first;
417         ddindx := 1;
418         while true loop
419           t(ddindx).schedule_material_id := a0(indx);
420           t(ddindx).object_version_number := a1(indx);
421           t(ddindx).visit_id := a2(indx);
422           t(ddindx).visit_task_id := a3(indx);
423           t(ddindx).task_name := a4(indx);
424           t(ddindx).inventory_item_id := a5(indx);
425           t(ddindx).item_description := a6(indx);
426           t(ddindx).requested_date := rosetta_g_miss_date_in_map(a7(indx));
427           t(ddindx).quantity := a8(indx);
428           t(ddindx).position_path_id := a9(indx);
429           t(ddindx).relationship_id := a10(indx);
430           ddindx := ddindx+1;
431           if a0.last =indx
432             then exit;
433           end if;
434           indx := a0.next(indx);
435         end loop;
436       end if;
437    end if;
438   end rosetta_table_copy_in_p5;
439   procedure rosetta_table_copy_out_p5(t ahl_ltp_reqst_matrl_pub.planned_materials_tbl, a0 out nocopy JTF_NUMBER_TABLE
440     , a1 out nocopy JTF_NUMBER_TABLE
441     , a2 out nocopy JTF_NUMBER_TABLE
442     , a3 out nocopy JTF_NUMBER_TABLE
443     , a4 out nocopy JTF_VARCHAR2_TABLE_100
444     , a5 out nocopy JTF_NUMBER_TABLE
445     , a6 out nocopy JTF_VARCHAR2_TABLE_100
446     , a7 out nocopy JTF_DATE_TABLE
447     , a8 out nocopy JTF_NUMBER_TABLE
448     , a9 out nocopy JTF_NUMBER_TABLE
449     , a10 out nocopy JTF_NUMBER_TABLE
450     ) as
451     ddindx binary_integer; indx binary_integer;
452   begin
453   if t is null or t.count = 0 then
454     a0 := JTF_NUMBER_TABLE();
455     a1 := JTF_NUMBER_TABLE();
456     a2 := JTF_NUMBER_TABLE();
457     a3 := JTF_NUMBER_TABLE();
458     a4 := JTF_VARCHAR2_TABLE_100();
459     a5 := JTF_NUMBER_TABLE();
460     a6 := JTF_VARCHAR2_TABLE_100();
461     a7 := JTF_DATE_TABLE();
462     a8 := JTF_NUMBER_TABLE();
463     a9 := JTF_NUMBER_TABLE();
464     a10 := JTF_NUMBER_TABLE();
465   else
466       a0 := JTF_NUMBER_TABLE();
467       a1 := JTF_NUMBER_TABLE();
468       a2 := JTF_NUMBER_TABLE();
469       a3 := JTF_NUMBER_TABLE();
470       a4 := JTF_VARCHAR2_TABLE_100();
471       a5 := JTF_NUMBER_TABLE();
472       a6 := JTF_VARCHAR2_TABLE_100();
473       a7 := JTF_DATE_TABLE();
474       a8 := JTF_NUMBER_TABLE();
475       a9 := JTF_NUMBER_TABLE();
476       a10 := JTF_NUMBER_TABLE();
477       if t.count > 0 then
478         a0.extend(t.count);
479         a1.extend(t.count);
480         a2.extend(t.count);
481         a3.extend(t.count);
482         a4.extend(t.count);
483         a5.extend(t.count);
484         a6.extend(t.count);
485         a7.extend(t.count);
486         a8.extend(t.count);
487         a9.extend(t.count);
488         a10.extend(t.count);
489         ddindx := t.first;
490         indx := 1;
491         while true loop
492           a0(indx) := t(ddindx).schedule_material_id;
493           a1(indx) := t(ddindx).object_version_number;
494           a2(indx) := t(ddindx).visit_id;
495           a3(indx) := t(ddindx).visit_task_id;
496           a4(indx) := t(ddindx).task_name;
497           a5(indx) := t(ddindx).inventory_item_id;
498           a6(indx) := t(ddindx).item_description;
499           a7(indx) := t(ddindx).requested_date;
500           a8(indx) := t(ddindx).quantity;
501           a9(indx) := t(ddindx).position_path_id;
502           a10(indx) := t(ddindx).relationship_id;
503           indx := indx+1;
504           if t.last =ddindx
505             then exit;
506           end if;
507           ddindx := t.next(ddindx);
508         end loop;
509       end if;
510    end if;
511   end rosetta_table_copy_out_p5;
512 
513   procedure update_planned_materials(p_api_version  NUMBER
514     , p_init_msg_list  VARCHAR2
515     , p_commit  VARCHAR2
516     , p_validation_level  NUMBER
517     , p_module_type  VARCHAR2
518     , p5_a0 JTF_NUMBER_TABLE
519     , p5_a1 JTF_NUMBER_TABLE
520     , p5_a2 JTF_NUMBER_TABLE
521     , p5_a3 JTF_NUMBER_TABLE
522     , p5_a4 JTF_VARCHAR2_TABLE_100
523     , p5_a5 JTF_NUMBER_TABLE
527     , p5_a9 JTF_NUMBER_TABLE
524     , p5_a6 JTF_VARCHAR2_TABLE_100
525     , p5_a7 JTF_DATE_TABLE
526     , p5_a8 JTF_NUMBER_TABLE
528     , p5_a10 JTF_NUMBER_TABLE
532   )
529     , x_return_status out nocopy  VARCHAR2
530     , x_msg_count out nocopy  NUMBER
531     , x_msg_data out nocopy  VARCHAR2
533 
534   as
535     ddp_planned_materials_tbl ahl_ltp_reqst_matrl_pub.planned_materials_tbl;
536     ddindx binary_integer; indx binary_integer;
537   begin
538 
539     -- copy data to the local IN or IN-OUT args, if any
540 
541 
542 
543 
544 
545     ahl_ltp_reqst_matrl_pub_w.rosetta_table_copy_in_p5(ddp_planned_materials_tbl, p5_a0
546       , p5_a1
547       , p5_a2
548       , p5_a3
549       , p5_a4
550       , p5_a5
551       , p5_a6
552       , p5_a7
553       , p5_a8
554       , p5_a9
555       , p5_a10
556       );
557 
558 
559 
560 
561     -- here's the delegated call to the old PL/SQL routine
562     ahl_ltp_reqst_matrl_pub.update_planned_materials(p_api_version,
563       p_init_msg_list,
564       p_commit,
565       p_validation_level,
566       p_module_type,
567       ddp_planned_materials_tbl,
568       x_return_status,
569       x_msg_count,
570       x_msg_data);
571 
572     -- copy data back from the local variables to OUT or IN-OUT args, if any
573 
574 
575 
576 
577 
578 
579 
580 
581   end;
582 
583 end ahl_ltp_reqst_matrl_pub_w;