DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_PRD_NONROUTINE_PVT_W

Source


1 package body ahl_prd_nonroutine_pvt_w as
2   /* $Header: AHLWPNRB.pls 120.9.12020000.2 2012/12/14 03:36:03 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_p2(t out nocopy ahl_prd_nonroutine_pvt.sr_task_tbl_type, a0 JTF_DATE_TABLE
17     , a1 JTF_NUMBER_TABLE
18     , a2 JTF_VARCHAR2_TABLE_100
19     , a3 JTF_NUMBER_TABLE
20     , a4 JTF_VARCHAR2_TABLE_100
21     , a5 JTF_NUMBER_TABLE
22     , a6 JTF_VARCHAR2_TABLE_100
23     , a7 JTF_NUMBER_TABLE
24     , a8 JTF_VARCHAR2_TABLE_100
25     , a9 JTF_VARCHAR2_TABLE_300
26     , a10 JTF_VARCHAR2_TABLE_100
27     , a11 JTF_NUMBER_TABLE
28     , a12 JTF_VARCHAR2_TABLE_100
29     , a13 JTF_VARCHAR2_TABLE_400
30     , a14 JTF_VARCHAR2_TABLE_100
31     , a15 JTF_NUMBER_TABLE
32     , a16 JTF_VARCHAR2_TABLE_100
33     , a17 JTF_VARCHAR2_TABLE_400
34     , a18 JTF_NUMBER_TABLE
35     , a19 JTF_VARCHAR2_TABLE_100
36     , a20 JTF_VARCHAR2_TABLE_100
37     , a21 JTF_VARCHAR2_TABLE_100
38     , a22 JTF_VARCHAR2_TABLE_100
39     , a23 JTF_VARCHAR2_TABLE_300
40     , a24 JTF_NUMBER_TABLE
41     , a25 JTF_VARCHAR2_TABLE_100
42     , a26 JTF_NUMBER_TABLE
43     , a27 JTF_NUMBER_TABLE
44     , a28 JTF_NUMBER_TABLE
45     , a29 JTF_NUMBER_TABLE
46     , a30 JTF_VARCHAR2_TABLE_100
47     , a31 JTF_NUMBER_TABLE
48     , a32 JTF_NUMBER_TABLE
49     , a33 JTF_VARCHAR2_TABLE_100
50     , a34 JTF_VARCHAR2_TABLE_100
51     , a35 JTF_NUMBER_TABLE
52     , a36 JTF_NUMBER_TABLE
53     , a37 JTF_NUMBER_TABLE
54     , a38 JTF_NUMBER_TABLE
55     , a39 JTF_VARCHAR2_TABLE_100
56     , a40 JTF_NUMBER_TABLE
57     , a41 JTF_VARCHAR2_TABLE_100
58     , a42 JTF_NUMBER_TABLE
59     , a43 JTF_VARCHAR2_TABLE_100
60     , a44 JTF_VARCHAR2_TABLE_100
61     , a45 JTF_NUMBER_TABLE
62     , a46 JTF_VARCHAR2_TABLE_100
63     , a47 JTF_DATE_TABLE
64     , a48 JTF_VARCHAR2_TABLE_100
65     , a49 JTF_VARCHAR2_TABLE_100
66     , a50 JTF_VARCHAR2_TABLE_100
67     , a51 JTF_NUMBER_TABLE
68     , a52 JTF_NUMBER_TABLE
69     , a53 JTF_VARCHAR2_TABLE_100
70     , a54 JTF_VARCHAR2_TABLE_100
71     , a55 JTF_VARCHAR2_TABLE_100
72     , a56 JTF_VARCHAR2_TABLE_200
73     , a57 JTF_VARCHAR2_TABLE_200
74     , a58 JTF_VARCHAR2_TABLE_200
75     , a59 JTF_VARCHAR2_TABLE_200
76     , a60 JTF_VARCHAR2_TABLE_200
77     , a61 JTF_VARCHAR2_TABLE_200
78     , a62 JTF_VARCHAR2_TABLE_200
79     , a63 JTF_VARCHAR2_TABLE_200
80     , a64 JTF_VARCHAR2_TABLE_200
81     , a65 JTF_VARCHAR2_TABLE_200
82     , a66 JTF_VARCHAR2_TABLE_200
83     , a67 JTF_VARCHAR2_TABLE_200
84     , a68 JTF_VARCHAR2_TABLE_200
85     , a69 JTF_VARCHAR2_TABLE_200
86     , a70 JTF_VARCHAR2_TABLE_200
87     ) as
88     ddindx binary_integer; indx binary_integer;
89   begin
90   if a0 is not null and a0.count > 0 then
91       if a0.count > 0 then
92         indx := a0.first;
93         ddindx := 1;
94         while true loop
95           t(ddindx).request_date := rosetta_g_miss_date_in_map(a0(indx));
96           t(ddindx).type_id := a1(indx);
97           t(ddindx).type_name := a2(indx);
98           t(ddindx).status_id := a3(indx);
99           t(ddindx).status_name := a4(indx);
100           t(ddindx).severity_id := a5(indx);
101           t(ddindx).severity_name := a6(indx);
102           t(ddindx).urgency_id := a7(indx);
103           t(ddindx).urgency_name := a8(indx);
104           t(ddindx).summary := a9(indx);
105           t(ddindx).customer_type := a10(indx);
106           t(ddindx).customer_id := a11(indx);
107           t(ddindx).customer_number := a12(indx);
108           t(ddindx).customer_name := a13(indx);
109           t(ddindx).contact_type := a14(indx);
110           t(ddindx).contact_id := a15(indx);
111           t(ddindx).contact_number := a16(indx);
112           t(ddindx).contact_name := a17(indx);
113           t(ddindx).instance_id := a18(indx);
114           t(ddindx).instance_number := a19(indx);
115           t(ddindx).problem_code := a20(indx);
116           t(ddindx).problem_meaning := a21(indx);
117           t(ddindx).resolution_code := a22(indx);
118           t(ddindx).resolution_meaning := a23(indx);
119           t(ddindx).incident_id := a24(indx);
120           t(ddindx).incident_number := a25(indx);
121           t(ddindx).incident_object_version_number := a26(indx);
122           t(ddindx).visit_id := a27(indx);
123           t(ddindx).visit_number := a28(indx);
124           t(ddindx).duration := a29(indx);
125           t(ddindx).task_type_code := a30(indx);
126           t(ddindx).visit_task_id := a31(indx);
127           t(ddindx).visit_task_number := a32(indx);
128           t(ddindx).visit_task_name := a33(indx);
129           t(ddindx).operation_type := a34(indx);
130           t(ddindx).workflow_process_id := a35(indx);
131           t(ddindx).interaction_id := a36(indx);
132           t(ddindx).originating_wo_id := a37(indx);
133           t(ddindx).nonroutine_wo_id := a38(indx);
134           t(ddindx).source_program_code := a39(indx);
135           t(ddindx).object_id := a40(indx);
136           t(ddindx).object_type := a41(indx);
137           t(ddindx).link_id := a42(indx);
138           t(ddindx).wo_create_flag := a43(indx);
139           t(ddindx).wo_release_flag := a44(indx);
140           t(ddindx).instance_quantity := a45(indx);
141           t(ddindx).move_qty_to_nr_workorder := a46(indx);
142           t(ddindx).workorder_start_time := rosetta_g_miss_date_in_map(a47(indx));
143           t(ddindx).firmwo_flag := a48(indx);
144           t(ddindx).service_type := a49(indx);
145           t(ddindx).service_type_code := a50(indx);
146           t(ddindx).warranty_contract_id := a51(indx);
147           t(ddindx).warranty_contract_number := a52(indx);
148           t(ddindx).quality_inspection_type_code := a53(indx);
149           t(ddindx).quality_inspection_type := a54(indx);
150           t(ddindx).attribute_category := a55(indx);
151           t(ddindx).attribute1 := a56(indx);
152           t(ddindx).attribute2 := a57(indx);
153           t(ddindx).attribute3 := a58(indx);
154           t(ddindx).attribute4 := a59(indx);
155           t(ddindx).attribute5 := a60(indx);
156           t(ddindx).attribute6 := a61(indx);
157           t(ddindx).attribute7 := a62(indx);
158           t(ddindx).attribute8 := a63(indx);
159           t(ddindx).attribute9 := a64(indx);
160           t(ddindx).attribute10 := a65(indx);
161           t(ddindx).attribute11 := a66(indx);
162           t(ddindx).attribute12 := a67(indx);
163           t(ddindx).attribute13 := a68(indx);
164           t(ddindx).attribute14 := a69(indx);
165           t(ddindx).attribute15 := a70(indx);
166           ddindx := ddindx+1;
167           if a0.last =indx
168             then exit;
169           end if;
170           indx := a0.next(indx);
171         end loop;
172       end if;
173    end if;
174   end rosetta_table_copy_in_p2;
175   procedure rosetta_table_copy_out_p2(t ahl_prd_nonroutine_pvt.sr_task_tbl_type, a0 out nocopy JTF_DATE_TABLE
176     , a1 out nocopy JTF_NUMBER_TABLE
177     , a2 out nocopy JTF_VARCHAR2_TABLE_100
178     , a3 out nocopy JTF_NUMBER_TABLE
179     , a4 out nocopy JTF_VARCHAR2_TABLE_100
180     , a5 out nocopy JTF_NUMBER_TABLE
181     , a6 out nocopy JTF_VARCHAR2_TABLE_100
182     , a7 out nocopy JTF_NUMBER_TABLE
183     , a8 out nocopy JTF_VARCHAR2_TABLE_100
184     , a9 out nocopy JTF_VARCHAR2_TABLE_300
185     , a10 out nocopy JTF_VARCHAR2_TABLE_100
186     , a11 out nocopy JTF_NUMBER_TABLE
187     , a12 out nocopy JTF_VARCHAR2_TABLE_100
188     , a13 out nocopy JTF_VARCHAR2_TABLE_400
189     , a14 out nocopy JTF_VARCHAR2_TABLE_100
190     , a15 out nocopy JTF_NUMBER_TABLE
191     , a16 out nocopy JTF_VARCHAR2_TABLE_100
192     , a17 out nocopy JTF_VARCHAR2_TABLE_400
193     , a18 out nocopy JTF_NUMBER_TABLE
194     , a19 out nocopy JTF_VARCHAR2_TABLE_100
195     , a20 out nocopy JTF_VARCHAR2_TABLE_100
196     , a21 out nocopy JTF_VARCHAR2_TABLE_100
197     , a22 out nocopy JTF_VARCHAR2_TABLE_100
198     , a23 out nocopy JTF_VARCHAR2_TABLE_300
199     , a24 out nocopy JTF_NUMBER_TABLE
200     , a25 out nocopy JTF_VARCHAR2_TABLE_100
201     , a26 out nocopy JTF_NUMBER_TABLE
202     , a27 out nocopy JTF_NUMBER_TABLE
203     , a28 out nocopy JTF_NUMBER_TABLE
204     , a29 out nocopy JTF_NUMBER_TABLE
205     , a30 out nocopy JTF_VARCHAR2_TABLE_100
206     , a31 out nocopy JTF_NUMBER_TABLE
207     , a32 out nocopy JTF_NUMBER_TABLE
208     , a33 out nocopy JTF_VARCHAR2_TABLE_100
209     , a34 out nocopy JTF_VARCHAR2_TABLE_100
210     , a35 out nocopy JTF_NUMBER_TABLE
211     , a36 out nocopy JTF_NUMBER_TABLE
212     , a37 out nocopy JTF_NUMBER_TABLE
213     , a38 out nocopy JTF_NUMBER_TABLE
214     , a39 out nocopy JTF_VARCHAR2_TABLE_100
215     , a40 out nocopy JTF_NUMBER_TABLE
216     , a41 out nocopy JTF_VARCHAR2_TABLE_100
217     , a42 out nocopy JTF_NUMBER_TABLE
218     , a43 out nocopy JTF_VARCHAR2_TABLE_100
219     , a44 out nocopy JTF_VARCHAR2_TABLE_100
220     , a45 out nocopy JTF_NUMBER_TABLE
221     , a46 out nocopy JTF_VARCHAR2_TABLE_100
222     , a47 out nocopy JTF_DATE_TABLE
223     , a48 out nocopy JTF_VARCHAR2_TABLE_100
224     , a49 out nocopy JTF_VARCHAR2_TABLE_100
225     , a50 out nocopy JTF_VARCHAR2_TABLE_100
226     , a51 out nocopy JTF_NUMBER_TABLE
227     , a52 out nocopy JTF_NUMBER_TABLE
228     , a53 out nocopy JTF_VARCHAR2_TABLE_100
229     , a54 out nocopy JTF_VARCHAR2_TABLE_100
230     , a55 out nocopy JTF_VARCHAR2_TABLE_100
231     , a56 out nocopy JTF_VARCHAR2_TABLE_200
232     , a57 out nocopy JTF_VARCHAR2_TABLE_200
233     , a58 out nocopy JTF_VARCHAR2_TABLE_200
234     , a59 out nocopy JTF_VARCHAR2_TABLE_200
235     , a60 out nocopy JTF_VARCHAR2_TABLE_200
236     , a61 out nocopy JTF_VARCHAR2_TABLE_200
237     , a62 out nocopy JTF_VARCHAR2_TABLE_200
238     , a63 out nocopy JTF_VARCHAR2_TABLE_200
239     , a64 out nocopy JTF_VARCHAR2_TABLE_200
240     , a65 out nocopy JTF_VARCHAR2_TABLE_200
241     , a66 out nocopy JTF_VARCHAR2_TABLE_200
242     , a67 out nocopy JTF_VARCHAR2_TABLE_200
243     , a68 out nocopy JTF_VARCHAR2_TABLE_200
244     , a69 out nocopy JTF_VARCHAR2_TABLE_200
245     , a70 out nocopy JTF_VARCHAR2_TABLE_200
246     ) as
247     ddindx binary_integer; indx binary_integer;
248   begin
249   if t is null or t.count = 0 then
250     a0 := JTF_DATE_TABLE();
251     a1 := JTF_NUMBER_TABLE();
252     a2 := JTF_VARCHAR2_TABLE_100();
253     a3 := JTF_NUMBER_TABLE();
254     a4 := JTF_VARCHAR2_TABLE_100();
255     a5 := JTF_NUMBER_TABLE();
256     a6 := JTF_VARCHAR2_TABLE_100();
257     a7 := JTF_NUMBER_TABLE();
258     a8 := JTF_VARCHAR2_TABLE_100();
259     a9 := JTF_VARCHAR2_TABLE_300();
260     a10 := JTF_VARCHAR2_TABLE_100();
261     a11 := JTF_NUMBER_TABLE();
262     a12 := JTF_VARCHAR2_TABLE_100();
263     a13 := JTF_VARCHAR2_TABLE_400();
264     a14 := JTF_VARCHAR2_TABLE_100();
265     a15 := JTF_NUMBER_TABLE();
266     a16 := JTF_VARCHAR2_TABLE_100();
267     a17 := JTF_VARCHAR2_TABLE_400();
268     a18 := JTF_NUMBER_TABLE();
269     a19 := JTF_VARCHAR2_TABLE_100();
270     a20 := JTF_VARCHAR2_TABLE_100();
271     a21 := JTF_VARCHAR2_TABLE_100();
272     a22 := JTF_VARCHAR2_TABLE_100();
273     a23 := JTF_VARCHAR2_TABLE_300();
274     a24 := JTF_NUMBER_TABLE();
275     a25 := JTF_VARCHAR2_TABLE_100();
276     a26 := JTF_NUMBER_TABLE();
277     a27 := JTF_NUMBER_TABLE();
278     a28 := JTF_NUMBER_TABLE();
279     a29 := JTF_NUMBER_TABLE();
280     a30 := JTF_VARCHAR2_TABLE_100();
281     a31 := JTF_NUMBER_TABLE();
282     a32 := JTF_NUMBER_TABLE();
283     a33 := JTF_VARCHAR2_TABLE_100();
284     a34 := JTF_VARCHAR2_TABLE_100();
285     a35 := JTF_NUMBER_TABLE();
286     a36 := JTF_NUMBER_TABLE();
287     a37 := JTF_NUMBER_TABLE();
288     a38 := JTF_NUMBER_TABLE();
289     a39 := JTF_VARCHAR2_TABLE_100();
290     a40 := JTF_NUMBER_TABLE();
291     a41 := JTF_VARCHAR2_TABLE_100();
292     a42 := JTF_NUMBER_TABLE();
293     a43 := JTF_VARCHAR2_TABLE_100();
294     a44 := JTF_VARCHAR2_TABLE_100();
295     a45 := JTF_NUMBER_TABLE();
296     a46 := JTF_VARCHAR2_TABLE_100();
297     a47 := JTF_DATE_TABLE();
298     a48 := JTF_VARCHAR2_TABLE_100();
299     a49 := JTF_VARCHAR2_TABLE_100();
300     a50 := JTF_VARCHAR2_TABLE_100();
301     a51 := JTF_NUMBER_TABLE();
302     a52 := JTF_NUMBER_TABLE();
303     a53 := JTF_VARCHAR2_TABLE_100();
304     a54 := JTF_VARCHAR2_TABLE_100();
305     a55 := JTF_VARCHAR2_TABLE_100();
306     a56 := JTF_VARCHAR2_TABLE_200();
307     a57 := JTF_VARCHAR2_TABLE_200();
308     a58 := JTF_VARCHAR2_TABLE_200();
309     a59 := JTF_VARCHAR2_TABLE_200();
310     a60 := JTF_VARCHAR2_TABLE_200();
311     a61 := JTF_VARCHAR2_TABLE_200();
312     a62 := JTF_VARCHAR2_TABLE_200();
313     a63 := JTF_VARCHAR2_TABLE_200();
314     a64 := JTF_VARCHAR2_TABLE_200();
315     a65 := JTF_VARCHAR2_TABLE_200();
316     a66 := JTF_VARCHAR2_TABLE_200();
317     a67 := JTF_VARCHAR2_TABLE_200();
318     a68 := JTF_VARCHAR2_TABLE_200();
319     a69 := JTF_VARCHAR2_TABLE_200();
320     a70 := JTF_VARCHAR2_TABLE_200();
321   else
322       a0 := JTF_DATE_TABLE();
323       a1 := JTF_NUMBER_TABLE();
324       a2 := JTF_VARCHAR2_TABLE_100();
325       a3 := JTF_NUMBER_TABLE();
326       a4 := JTF_VARCHAR2_TABLE_100();
327       a5 := JTF_NUMBER_TABLE();
328       a6 := JTF_VARCHAR2_TABLE_100();
329       a7 := JTF_NUMBER_TABLE();
330       a8 := JTF_VARCHAR2_TABLE_100();
331       a9 := JTF_VARCHAR2_TABLE_300();
332       a10 := JTF_VARCHAR2_TABLE_100();
333       a11 := JTF_NUMBER_TABLE();
334       a12 := JTF_VARCHAR2_TABLE_100();
335       a13 := JTF_VARCHAR2_TABLE_400();
336       a14 := JTF_VARCHAR2_TABLE_100();
337       a15 := JTF_NUMBER_TABLE();
338       a16 := JTF_VARCHAR2_TABLE_100();
339       a17 := JTF_VARCHAR2_TABLE_400();
340       a18 := JTF_NUMBER_TABLE();
341       a19 := JTF_VARCHAR2_TABLE_100();
342       a20 := JTF_VARCHAR2_TABLE_100();
343       a21 := JTF_VARCHAR2_TABLE_100();
344       a22 := JTF_VARCHAR2_TABLE_100();
345       a23 := JTF_VARCHAR2_TABLE_300();
346       a24 := JTF_NUMBER_TABLE();
347       a25 := JTF_VARCHAR2_TABLE_100();
348       a26 := JTF_NUMBER_TABLE();
349       a27 := JTF_NUMBER_TABLE();
350       a28 := JTF_NUMBER_TABLE();
351       a29 := JTF_NUMBER_TABLE();
352       a30 := JTF_VARCHAR2_TABLE_100();
353       a31 := JTF_NUMBER_TABLE();
354       a32 := JTF_NUMBER_TABLE();
355       a33 := JTF_VARCHAR2_TABLE_100();
356       a34 := JTF_VARCHAR2_TABLE_100();
357       a35 := JTF_NUMBER_TABLE();
358       a36 := JTF_NUMBER_TABLE();
359       a37 := JTF_NUMBER_TABLE();
360       a38 := JTF_NUMBER_TABLE();
361       a39 := JTF_VARCHAR2_TABLE_100();
362       a40 := JTF_NUMBER_TABLE();
363       a41 := JTF_VARCHAR2_TABLE_100();
364       a42 := JTF_NUMBER_TABLE();
365       a43 := JTF_VARCHAR2_TABLE_100();
366       a44 := JTF_VARCHAR2_TABLE_100();
367       a45 := JTF_NUMBER_TABLE();
368       a46 := JTF_VARCHAR2_TABLE_100();
369       a47 := JTF_DATE_TABLE();
370       a48 := JTF_VARCHAR2_TABLE_100();
371       a49 := JTF_VARCHAR2_TABLE_100();
372       a50 := JTF_VARCHAR2_TABLE_100();
373       a51 := JTF_NUMBER_TABLE();
374       a52 := JTF_NUMBER_TABLE();
375       a53 := JTF_VARCHAR2_TABLE_100();
376       a54 := JTF_VARCHAR2_TABLE_100();
377       a55 := JTF_VARCHAR2_TABLE_100();
378       a56 := JTF_VARCHAR2_TABLE_200();
379       a57 := JTF_VARCHAR2_TABLE_200();
380       a58 := JTF_VARCHAR2_TABLE_200();
381       a59 := JTF_VARCHAR2_TABLE_200();
382       a60 := JTF_VARCHAR2_TABLE_200();
383       a61 := JTF_VARCHAR2_TABLE_200();
384       a62 := JTF_VARCHAR2_TABLE_200();
385       a63 := JTF_VARCHAR2_TABLE_200();
386       a64 := JTF_VARCHAR2_TABLE_200();
387       a65 := JTF_VARCHAR2_TABLE_200();
388       a66 := JTF_VARCHAR2_TABLE_200();
389       a67 := JTF_VARCHAR2_TABLE_200();
390       a68 := JTF_VARCHAR2_TABLE_200();
391       a69 := JTF_VARCHAR2_TABLE_200();
392       a70 := JTF_VARCHAR2_TABLE_200();
393       if t.count > 0 then
394         a0.extend(t.count);
395         a1.extend(t.count);
396         a2.extend(t.count);
397         a3.extend(t.count);
398         a4.extend(t.count);
399         a5.extend(t.count);
400         a6.extend(t.count);
401         a7.extend(t.count);
402         a8.extend(t.count);
403         a9.extend(t.count);
404         a10.extend(t.count);
405         a11.extend(t.count);
406         a12.extend(t.count);
407         a13.extend(t.count);
408         a14.extend(t.count);
409         a15.extend(t.count);
410         a16.extend(t.count);
411         a17.extend(t.count);
412         a18.extend(t.count);
413         a19.extend(t.count);
414         a20.extend(t.count);
415         a21.extend(t.count);
416         a22.extend(t.count);
417         a23.extend(t.count);
418         a24.extend(t.count);
419         a25.extend(t.count);
420         a26.extend(t.count);
421         a27.extend(t.count);
422         a28.extend(t.count);
423         a29.extend(t.count);
424         a30.extend(t.count);
425         a31.extend(t.count);
426         a32.extend(t.count);
427         a33.extend(t.count);
428         a34.extend(t.count);
429         a35.extend(t.count);
430         a36.extend(t.count);
431         a37.extend(t.count);
432         a38.extend(t.count);
433         a39.extend(t.count);
434         a40.extend(t.count);
435         a41.extend(t.count);
436         a42.extend(t.count);
437         a43.extend(t.count);
438         a44.extend(t.count);
439         a45.extend(t.count);
440         a46.extend(t.count);
441         a47.extend(t.count);
442         a48.extend(t.count);
443         a49.extend(t.count);
444         a50.extend(t.count);
445         a51.extend(t.count);
446         a52.extend(t.count);
447         a53.extend(t.count);
448         a54.extend(t.count);
449         a55.extend(t.count);
450         a56.extend(t.count);
451         a57.extend(t.count);
452         a58.extend(t.count);
453         a59.extend(t.count);
454         a60.extend(t.count);
455         a61.extend(t.count);
456         a62.extend(t.count);
457         a63.extend(t.count);
458         a64.extend(t.count);
459         a65.extend(t.count);
460         a66.extend(t.count);
461         a67.extend(t.count);
462         a68.extend(t.count);
463         a69.extend(t.count);
464         a70.extend(t.count);
465         ddindx := t.first;
466         indx := 1;
467         while true loop
468           a0(indx) := t(ddindx).request_date;
469           a1(indx) := t(ddindx).type_id;
470           a2(indx) := t(ddindx).type_name;
471           a3(indx) := t(ddindx).status_id;
472           a4(indx) := t(ddindx).status_name;
473           a5(indx) := t(ddindx).severity_id;
474           a6(indx) := t(ddindx).severity_name;
475           a7(indx) := t(ddindx).urgency_id;
476           a8(indx) := t(ddindx).urgency_name;
477           a9(indx) := t(ddindx).summary;
478           a10(indx) := t(ddindx).customer_type;
479           a11(indx) := t(ddindx).customer_id;
480           a12(indx) := t(ddindx).customer_number;
481           a13(indx) := t(ddindx).customer_name;
482           a14(indx) := t(ddindx).contact_type;
483           a15(indx) := t(ddindx).contact_id;
484           a16(indx) := t(ddindx).contact_number;
485           a17(indx) := t(ddindx).contact_name;
486           a18(indx) := t(ddindx).instance_id;
487           a19(indx) := t(ddindx).instance_number;
488           a20(indx) := t(ddindx).problem_code;
489           a21(indx) := t(ddindx).problem_meaning;
490           a22(indx) := t(ddindx).resolution_code;
491           a23(indx) := t(ddindx).resolution_meaning;
492           a24(indx) := t(ddindx).incident_id;
493           a25(indx) := t(ddindx).incident_number;
494           a26(indx) := t(ddindx).incident_object_version_number;
495           a27(indx) := t(ddindx).visit_id;
496           a28(indx) := t(ddindx).visit_number;
497           a29(indx) := t(ddindx).duration;
498           a30(indx) := t(ddindx).task_type_code;
499           a31(indx) := t(ddindx).visit_task_id;
500           a32(indx) := t(ddindx).visit_task_number;
501           a33(indx) := t(ddindx).visit_task_name;
502           a34(indx) := t(ddindx).operation_type;
503           a35(indx) := t(ddindx).workflow_process_id;
504           a36(indx) := t(ddindx).interaction_id;
505           a37(indx) := t(ddindx).originating_wo_id;
506           a38(indx) := t(ddindx).nonroutine_wo_id;
507           a39(indx) := t(ddindx).source_program_code;
508           a40(indx) := t(ddindx).object_id;
509           a41(indx) := t(ddindx).object_type;
510           a42(indx) := t(ddindx).link_id;
511           a43(indx) := t(ddindx).wo_create_flag;
512           a44(indx) := t(ddindx).wo_release_flag;
513           a45(indx) := t(ddindx).instance_quantity;
514           a46(indx) := t(ddindx).move_qty_to_nr_workorder;
515           a47(indx) := t(ddindx).workorder_start_time;
516           a48(indx) := t(ddindx).firmwo_flag;
517           a49(indx) := t(ddindx).service_type;
518           a50(indx) := t(ddindx).service_type_code;
519           a51(indx) := t(ddindx).warranty_contract_id;
520           a52(indx) := t(ddindx).warranty_contract_number;
521           a53(indx) := t(ddindx).quality_inspection_type_code;
522           a54(indx) := t(ddindx).quality_inspection_type;
523           a55(indx) := t(ddindx).attribute_category;
524           a56(indx) := t(ddindx).attribute1;
525           a57(indx) := t(ddindx).attribute2;
526           a58(indx) := t(ddindx).attribute3;
527           a59(indx) := t(ddindx).attribute4;
528           a60(indx) := t(ddindx).attribute5;
529           a61(indx) := t(ddindx).attribute6;
530           a62(indx) := t(ddindx).attribute7;
531           a63(indx) := t(ddindx).attribute8;
532           a64(indx) := t(ddindx).attribute9;
533           a65(indx) := t(ddindx).attribute10;
534           a66(indx) := t(ddindx).attribute11;
535           a67(indx) := t(ddindx).attribute12;
536           a68(indx) := t(ddindx).attribute13;
537           a69(indx) := t(ddindx).attribute14;
538           a70(indx) := t(ddindx).attribute15;
539           indx := indx+1;
540           if t.last =ddindx
541             then exit;
542           end if;
543           ddindx := t.next(ddindx);
544         end loop;
545       end if;
546    end if;
547   end rosetta_table_copy_out_p2;
548 
549   procedure rosetta_table_copy_in_p4(t out nocopy ahl_prd_nonroutine_pvt.mr_association_tbl_type, a0 JTF_NUMBER_TABLE
550     , a1 JTF_VARCHAR2_TABLE_100
551     , a2 JTF_NUMBER_TABLE
552     , a3 JTF_NUMBER_TABLE
553     , a4 JTF_NUMBER_TABLE
554     , a5 JTF_NUMBER_TABLE
555     , a6 JTF_VARCHAR2_TABLE_100
556     , a7 JTF_NUMBER_TABLE
557     , a8 JTF_VARCHAR2_TABLE_100
558     , a9 JTF_NUMBER_TABLE
559     ) as
560     ddindx binary_integer; indx binary_integer;
561   begin
562   if a0 is not null and a0.count > 0 then
563       if a0.count > 0 then
564         indx := a0.first;
565         ddindx := 1;
566         while true loop
567           t(ddindx).mr_header_id := a0(indx);
568           t(ddindx).mr_title := a1(indx);
569           t(ddindx).mr_version := a2(indx);
570           t(ddindx).ue_relationship_id := a3(indx);
571           t(ddindx).unit_effectivity_id := a4(indx);
572           t(ddindx).object_version_number := a5(indx);
573           t(ddindx).relationship_code := a6(indx);
574           t(ddindx).csi_instance_id := a7(indx);
575           t(ddindx).csi_instance_number := a8(indx);
576           t(ddindx).sr_tbl_index := a9(indx);
577           ddindx := ddindx+1;
578           if a0.last =indx
579             then exit;
580           end if;
581           indx := a0.next(indx);
582         end loop;
583       end if;
584    end if;
585   end rosetta_table_copy_in_p4;
586   procedure rosetta_table_copy_out_p4(t ahl_prd_nonroutine_pvt.mr_association_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
587     , a1 out nocopy JTF_VARCHAR2_TABLE_100
588     , a2 out nocopy JTF_NUMBER_TABLE
589     , a3 out nocopy JTF_NUMBER_TABLE
590     , a4 out nocopy JTF_NUMBER_TABLE
591     , a5 out nocopy JTF_NUMBER_TABLE
592     , a6 out nocopy JTF_VARCHAR2_TABLE_100
593     , a7 out nocopy JTF_NUMBER_TABLE
594     , a8 out nocopy JTF_VARCHAR2_TABLE_100
595     , a9 out nocopy JTF_NUMBER_TABLE
596     ) as
597     ddindx binary_integer; indx binary_integer;
598   begin
599   if t is null or t.count = 0 then
600     a0 := JTF_NUMBER_TABLE();
601     a1 := JTF_VARCHAR2_TABLE_100();
602     a2 := JTF_NUMBER_TABLE();
603     a3 := JTF_NUMBER_TABLE();
604     a4 := JTF_NUMBER_TABLE();
605     a5 := JTF_NUMBER_TABLE();
606     a6 := JTF_VARCHAR2_TABLE_100();
607     a7 := JTF_NUMBER_TABLE();
608     a8 := JTF_VARCHAR2_TABLE_100();
609     a9 := JTF_NUMBER_TABLE();
610   else
611       a0 := JTF_NUMBER_TABLE();
612       a1 := JTF_VARCHAR2_TABLE_100();
613       a2 := JTF_NUMBER_TABLE();
614       a3 := JTF_NUMBER_TABLE();
615       a4 := JTF_NUMBER_TABLE();
616       a5 := JTF_NUMBER_TABLE();
617       a6 := JTF_VARCHAR2_TABLE_100();
618       a7 := JTF_NUMBER_TABLE();
619       a8 := JTF_VARCHAR2_TABLE_100();
620       a9 := JTF_NUMBER_TABLE();
621       if t.count > 0 then
622         a0.extend(t.count);
623         a1.extend(t.count);
624         a2.extend(t.count);
625         a3.extend(t.count);
626         a4.extend(t.count);
627         a5.extend(t.count);
628         a6.extend(t.count);
629         a7.extend(t.count);
630         a8.extend(t.count);
631         a9.extend(t.count);
632         ddindx := t.first;
633         indx := 1;
634         while true loop
635           a0(indx) := t(ddindx).mr_header_id;
636           a1(indx) := t(ddindx).mr_title;
637           a2(indx) := t(ddindx).mr_version;
638           a3(indx) := t(ddindx).ue_relationship_id;
639           a4(indx) := t(ddindx).unit_effectivity_id;
640           a5(indx) := t(ddindx).object_version_number;
641           a6(indx) := t(ddindx).relationship_code;
642           a7(indx) := t(ddindx).csi_instance_id;
643           a8(indx) := t(ddindx).csi_instance_number;
644           a9(indx) := t(ddindx).sr_tbl_index;
645           indx := indx+1;
646           if t.last =ddindx
647             then exit;
648           end if;
649           ddindx := t.next(ddindx);
650         end loop;
651       end if;
652    end if;
653   end rosetta_table_copy_out_p4;
654 
655   procedure process_nonroutine_job(p_api_version  NUMBER
656     , p_init_msg_list  VARCHAR2
657     , p_commit  VARCHAR2
658     , p_validation_level  NUMBER
659     , p_module_type  VARCHAR2
660     , x_return_status out nocopy  VARCHAR2
661     , x_msg_count out nocopy  NUMBER
662     , x_msg_data out nocopy  VARCHAR2
663     , p8_a0 in out nocopy JTF_DATE_TABLE
664     , p8_a1 in out nocopy JTF_NUMBER_TABLE
665     , p8_a2 in out nocopy JTF_VARCHAR2_TABLE_100
666     , p8_a3 in out nocopy JTF_NUMBER_TABLE
667     , p8_a4 in out nocopy JTF_VARCHAR2_TABLE_100
668     , p8_a5 in out nocopy JTF_NUMBER_TABLE
669     , p8_a6 in out nocopy JTF_VARCHAR2_TABLE_100
670     , p8_a7 in out nocopy JTF_NUMBER_TABLE
671     , p8_a8 in out nocopy JTF_VARCHAR2_TABLE_100
672     , p8_a9 in out nocopy JTF_VARCHAR2_TABLE_300
673     , p8_a10 in out nocopy JTF_VARCHAR2_TABLE_100
674     , p8_a11 in out nocopy JTF_NUMBER_TABLE
675     , p8_a12 in out nocopy JTF_VARCHAR2_TABLE_100
676     , p8_a13 in out nocopy JTF_VARCHAR2_TABLE_400
677     , p8_a14 in out nocopy JTF_VARCHAR2_TABLE_100
678     , p8_a15 in out nocopy JTF_NUMBER_TABLE
679     , p8_a16 in out nocopy JTF_VARCHAR2_TABLE_100
680     , p8_a17 in out nocopy JTF_VARCHAR2_TABLE_400
681     , p8_a18 in out nocopy JTF_NUMBER_TABLE
682     , p8_a19 in out nocopy JTF_VARCHAR2_TABLE_100
683     , p8_a20 in out nocopy JTF_VARCHAR2_TABLE_100
684     , p8_a21 in out nocopy JTF_VARCHAR2_TABLE_100
685     , p8_a22 in out nocopy JTF_VARCHAR2_TABLE_100
686     , p8_a23 in out nocopy JTF_VARCHAR2_TABLE_300
687     , p8_a24 in out nocopy JTF_NUMBER_TABLE
688     , p8_a25 in out nocopy JTF_VARCHAR2_TABLE_100
689     , p8_a26 in out nocopy JTF_NUMBER_TABLE
690     , p8_a27 in out nocopy JTF_NUMBER_TABLE
691     , p8_a28 in out nocopy JTF_NUMBER_TABLE
692     , p8_a29 in out nocopy JTF_NUMBER_TABLE
693     , p8_a30 in out nocopy JTF_VARCHAR2_TABLE_100
694     , p8_a31 in out nocopy JTF_NUMBER_TABLE
695     , p8_a32 in out nocopy JTF_NUMBER_TABLE
696     , p8_a33 in out nocopy JTF_VARCHAR2_TABLE_100
697     , p8_a34 in out nocopy JTF_VARCHAR2_TABLE_100
698     , p8_a35 in out nocopy JTF_NUMBER_TABLE
699     , p8_a36 in out nocopy JTF_NUMBER_TABLE
700     , p8_a37 in out nocopy JTF_NUMBER_TABLE
701     , p8_a38 in out nocopy JTF_NUMBER_TABLE
702     , p8_a39 in out nocopy JTF_VARCHAR2_TABLE_100
703     , p8_a40 in out nocopy JTF_NUMBER_TABLE
704     , p8_a41 in out nocopy JTF_VARCHAR2_TABLE_100
705     , p8_a42 in out nocopy JTF_NUMBER_TABLE
706     , p8_a43 in out nocopy JTF_VARCHAR2_TABLE_100
707     , p8_a44 in out nocopy JTF_VARCHAR2_TABLE_100
708     , p8_a45 in out nocopy JTF_NUMBER_TABLE
709     , p8_a46 in out nocopy JTF_VARCHAR2_TABLE_100
710     , p8_a47 in out nocopy JTF_DATE_TABLE
711     , p8_a48 in out nocopy JTF_VARCHAR2_TABLE_100
712     , p8_a49 in out nocopy JTF_VARCHAR2_TABLE_100
713     , p8_a50 in out nocopy JTF_VARCHAR2_TABLE_100
714     , p8_a51 in out nocopy JTF_NUMBER_TABLE
715     , p8_a52 in out nocopy JTF_NUMBER_TABLE
716     , p8_a53 in out nocopy JTF_VARCHAR2_TABLE_100
717     , p8_a54 in out nocopy JTF_VARCHAR2_TABLE_100
718     , p8_a55 in out nocopy JTF_VARCHAR2_TABLE_100
719     , p8_a56 in out nocopy JTF_VARCHAR2_TABLE_200
720     , p8_a57 in out nocopy JTF_VARCHAR2_TABLE_200
721     , p8_a58 in out nocopy JTF_VARCHAR2_TABLE_200
722     , p8_a59 in out nocopy JTF_VARCHAR2_TABLE_200
723     , p8_a60 in out nocopy JTF_VARCHAR2_TABLE_200
724     , p8_a61 in out nocopy JTF_VARCHAR2_TABLE_200
725     , p8_a62 in out nocopy JTF_VARCHAR2_TABLE_200
726     , p8_a63 in out nocopy JTF_VARCHAR2_TABLE_200
727     , p8_a64 in out nocopy JTF_VARCHAR2_TABLE_200
728     , p8_a65 in out nocopy JTF_VARCHAR2_TABLE_200
729     , p8_a66 in out nocopy JTF_VARCHAR2_TABLE_200
730     , p8_a67 in out nocopy JTF_VARCHAR2_TABLE_200
731     , p8_a68 in out nocopy JTF_VARCHAR2_TABLE_200
732     , p8_a69 in out nocopy JTF_VARCHAR2_TABLE_200
733     , p8_a70 in out nocopy JTF_VARCHAR2_TABLE_200
734     , p9_a0 in out nocopy JTF_NUMBER_TABLE
735     , p9_a1 in out nocopy JTF_VARCHAR2_TABLE_100
736     , p9_a2 in out nocopy JTF_NUMBER_TABLE
737     , p9_a3 in out nocopy JTF_NUMBER_TABLE
738     , p9_a4 in out nocopy JTF_NUMBER_TABLE
739     , p9_a5 in out nocopy JTF_NUMBER_TABLE
740     , p9_a6 in out nocopy JTF_VARCHAR2_TABLE_100
741     , p9_a7 in out nocopy JTF_NUMBER_TABLE
742     , p9_a8 in out nocopy JTF_VARCHAR2_TABLE_100
743     , p9_a9 in out nocopy JTF_NUMBER_TABLE
744   )
745 
746   as
747     ddp_x_sr_task_tbl ahl_prd_nonroutine_pvt.sr_task_tbl_type;
748     ddp_x_mr_asso_tbl ahl_prd_nonroutine_pvt.mr_association_tbl_type;
749     ddindx binary_integer; indx binary_integer;
750   begin
751 
752     -- copy data to the local IN or IN-OUT args, if any
753 
754 
755 
756 
757 
758 
759 
760 
761     ahl_prd_nonroutine_pvt_w.rosetta_table_copy_in_p2(ddp_x_sr_task_tbl, p8_a0
762       , p8_a1
763       , p8_a2
764       , p8_a3
765       , p8_a4
766       , p8_a5
767       , p8_a6
768       , p8_a7
769       , p8_a8
770       , p8_a9
771       , p8_a10
772       , p8_a11
773       , p8_a12
774       , p8_a13
775       , p8_a14
776       , p8_a15
777       , p8_a16
778       , p8_a17
779       , p8_a18
780       , p8_a19
781       , p8_a20
782       , p8_a21
783       , p8_a22
784       , p8_a23
785       , p8_a24
786       , p8_a25
787       , p8_a26
788       , p8_a27
789       , p8_a28
790       , p8_a29
791       , p8_a30
792       , p8_a31
793       , p8_a32
794       , p8_a33
795       , p8_a34
796       , p8_a35
797       , p8_a36
798       , p8_a37
799       , p8_a38
800       , p8_a39
801       , p8_a40
802       , p8_a41
803       , p8_a42
804       , p8_a43
805       , p8_a44
806       , p8_a45
807       , p8_a46
808       , p8_a47
809       , p8_a48
810       , p8_a49
811       , p8_a50
812       , p8_a51
813       , p8_a52
814       , p8_a53
815       , p8_a54
816       , p8_a55
817       , p8_a56
818       , p8_a57
819       , p8_a58
820       , p8_a59
821       , p8_a60
822       , p8_a61
823       , p8_a62
824       , p8_a63
825       , p8_a64
826       , p8_a65
827       , p8_a66
828       , p8_a67
829       , p8_a68
830       , p8_a69
831       , p8_a70
832       );
833 
834     ahl_prd_nonroutine_pvt_w.rosetta_table_copy_in_p4(ddp_x_mr_asso_tbl, p9_a0
835       , p9_a1
836       , p9_a2
837       , p9_a3
838       , p9_a4
839       , p9_a5
840       , p9_a6
841       , p9_a7
842       , p9_a8
843       , p9_a9
844       );
845 
846     -- here's the delegated call to the old PL/SQL routine
847     ahl_prd_nonroutine_pvt.process_nonroutine_job(p_api_version,
848       p_init_msg_list,
849       p_commit,
850       p_validation_level,
851       p_module_type,
852       x_return_status,
853       x_msg_count,
854       x_msg_data,
855       ddp_x_sr_task_tbl,
856       ddp_x_mr_asso_tbl);
857 
858     -- copy data back from the local variables to OUT or IN-OUT args, if any
859 
860 
861 
862 
863 
864 
865 
866 
867     ahl_prd_nonroutine_pvt_w.rosetta_table_copy_out_p2(ddp_x_sr_task_tbl, p8_a0
868       , p8_a1
869       , p8_a2
870       , p8_a3
871       , p8_a4
872       , p8_a5
873       , p8_a6
874       , p8_a7
875       , p8_a8
876       , p8_a9
877       , p8_a10
878       , p8_a11
879       , p8_a12
880       , p8_a13
881       , p8_a14
882       , p8_a15
883       , p8_a16
884       , p8_a17
885       , p8_a18
886       , p8_a19
887       , p8_a20
888       , p8_a21
889       , p8_a22
890       , p8_a23
891       , p8_a24
892       , p8_a25
893       , p8_a26
894       , p8_a27
895       , p8_a28
896       , p8_a29
897       , p8_a30
898       , p8_a31
899       , p8_a32
900       , p8_a33
901       , p8_a34
902       , p8_a35
903       , p8_a36
904       , p8_a37
905       , p8_a38
906       , p8_a39
907       , p8_a40
908       , p8_a41
909       , p8_a42
910       , p8_a43
911       , p8_a44
912       , p8_a45
913       , p8_a46
914       , p8_a47
915       , p8_a48
916       , p8_a49
917       , p8_a50
918       , p8_a51
919       , p8_a52
920       , p8_a53
921       , p8_a54
922       , p8_a55
923       , p8_a56
924       , p8_a57
925       , p8_a58
926       , p8_a59
927       , p8_a60
928       , p8_a61
929       , p8_a62
930       , p8_a63
931       , p8_a64
932       , p8_a65
933       , p8_a66
934       , p8_a67
935       , p8_a68
936       , p8_a69
937       , p8_a70
938       );
939 
940     ahl_prd_nonroutine_pvt_w.rosetta_table_copy_out_p4(ddp_x_mr_asso_tbl, p9_a0
941       , p9_a1
942       , p9_a2
943       , p9_a3
944       , p9_a4
945       , p9_a5
946       , p9_a6
947       , p9_a7
948       , p9_a8
949       , p9_a9
950       );
951   end;
952 
953 end ahl_prd_nonroutine_pvt_w;