DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_PRD_DISP_UTIL_PVT_W

Source


1 package body ahl_prd_disp_util_pvt_w as
2   /* $Header: AHLWDIUB.pls 120.1 2008/01/29 14:17:56 sathapli ship $ */
3   rosetta_g_mistake_date date := to_date('01/01/+4713', 'MM/DD/SYYYY');
4   rosetta_g_miss_date date := to_date('01/01/-4712', 'MM/DD/SYYYY');
5   rosetta_g_mistake_date_high date := to_date('01/01/+4710', 'MM/DD/SYYYY');
6   rosetta_g_mistake_date_low date := to_date('01/01/-4710', 'MM/DD/SYYYY');
7 
8   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
9   function rosetta_g_miss_date_in_map(d date) return date as
10   begin
11     if d > rosetta_g_mistake_date_high then return fnd_api.g_miss_date; end if;
12     if d < rosetta_g_mistake_date_low then return fnd_api.g_miss_date; end if;
13     return d;
14   end;
15 
16   procedure rosetta_table_copy_in_p1(t out nocopy ahl_prd_disp_util_pvt.disp_type_tbl_type, a0 JTF_VARCHAR2_TABLE_100
17     , a1 JTF_VARCHAR2_TABLE_100
18     ) as
19     ddindx binary_integer; indx binary_integer;
20   begin
21   if a0 is not null and a0.count > 0 then
22       if a0.count > 0 then
23         indx := a0.first;
24         ddindx := 1;
25         while true loop
26           t(ddindx).code := a0(indx);
27           t(ddindx).meaning := a1(indx);
28           ddindx := ddindx+1;
29           if a0.last =indx
30             then exit;
31           end if;
32           indx := a0.next(indx);
33         end loop;
34       end if;
35    end if;
36   end rosetta_table_copy_in_p1;
37   procedure rosetta_table_copy_out_p1(t ahl_prd_disp_util_pvt.disp_type_tbl_type, a0 out nocopy JTF_VARCHAR2_TABLE_100
38     , a1 out nocopy JTF_VARCHAR2_TABLE_100
39     ) as
40     ddindx binary_integer; indx binary_integer;
41   begin
42   if t is null or t.count = 0 then
43     a0 := JTF_VARCHAR2_TABLE_100();
44     a1 := JTF_VARCHAR2_TABLE_100();
45   else
46       a0 := JTF_VARCHAR2_TABLE_100();
47       a1 := JTF_VARCHAR2_TABLE_100();
48       if t.count > 0 then
49         a0.extend(t.count);
50         a1.extend(t.count);
51         ddindx := t.first;
52         indx := 1;
53         while true loop
54           a0(indx) := t(ddindx).code;
55           a1(indx) := t(ddindx).meaning;
56           indx := indx+1;
57           if t.last =ddindx
58             then exit;
59           end if;
60           ddindx := t.next(ddindx);
61         end loop;
62       end if;
63    end if;
64   end rosetta_table_copy_out_p1;
65 
66   procedure rosetta_table_copy_in_p4(t out nocopy ahl_prd_disp_util_pvt.disp_list_tbl_type, a0 JTF_NUMBER_TABLE
67     , a1 JTF_NUMBER_TABLE
68     , a2 JTF_NUMBER_TABLE
69     , a3 JTF_VARCHAR2_TABLE_100
70     , a4 JTF_NUMBER_TABLE
71     , a5 JTF_VARCHAR2_TABLE_100
72     , a6 JTF_VARCHAR2_TABLE_100
73     , a7 JTF_VARCHAR2_TABLE_100
74     , a8 JTF_VARCHAR2_TABLE_100
75     , a9 JTF_VARCHAR2_TABLE_100
76     , a10 JTF_VARCHAR2_TABLE_100
77     , a11 JTF_VARCHAR2_TABLE_100
78     , a12 JTF_NUMBER_TABLE
79     , a13 JTF_VARCHAR2_TABLE_100
80     , a14 JTF_NUMBER_TABLE
81     , a15 JTF_VARCHAR2_TABLE_200
82     , a16 JTF_NUMBER_TABLE
83     , a17 JTF_VARCHAR2_TABLE_100
84     , a18 JTF_VARCHAR2_TABLE_100
85     , a19 JTF_VARCHAR2_TABLE_100
86     , a20 JTF_NUMBER_TABLE
87     , a21 JTF_VARCHAR2_TABLE_100
88     , a22 JTF_NUMBER_TABLE
89     , a23 JTF_VARCHAR2_TABLE_100
90     , a24 JTF_NUMBER_TABLE
91     , a25 JTF_VARCHAR2_TABLE_100
92     , a26 JTF_VARCHAR2_TABLE_100
93     , a27 JTF_VARCHAR2_TABLE_100
94     , a28 JTF_NUMBER_TABLE
95     , a29 JTF_VARCHAR2_TABLE_100
96     ) as
97     ddindx binary_integer; indx binary_integer;
98   begin
99   if a0 is not null and a0.count > 0 then
100       if a0.count > 0 then
101         indx := a0.first;
102         ddindx := 1;
103         while true loop
104           t(ddindx).disposition_id := a0(indx);
105           t(ddindx).part_change_id := a1(indx);
106           t(ddindx).path_position_id := a2(indx);
107           t(ddindx).path_position_ref := a3(indx);
108           t(ddindx).item_group_id := a4(indx);
109           t(ddindx).item_group_name := a5(indx);
110           t(ddindx).immediate_disp_code := a6(indx);
111           t(ddindx).immediate_disp := a7(indx);
112           t(ddindx).secondary_disp_code := a8(indx);
113           t(ddindx).secondary_disp := a9(indx);
114           t(ddindx).disp_status_code := a10(indx);
115           t(ddindx).disp_status := a11(indx);
116           t(ddindx).condition_id := a12(indx);
117           t(ddindx).condition_code := a13(indx);
118           t(ddindx).off_inv_item_id := a14(indx);
119           t(ddindx).off_item_number := a15(indx);
120           t(ddindx).off_instance_id := a16(indx);
121           t(ddindx).off_instance_number := a17(indx);
122           t(ddindx).off_serial_number := a18(indx);
123           t(ddindx).off_lot_number := a19(indx);
124           t(ddindx).off_quantity := a20(indx);
125           t(ddindx).off_uom := a21(indx);
126           t(ddindx).on_inv_item_id := a22(indx);
127           t(ddindx).on_item_number := a23(indx);
128           t(ddindx).on_instance_id := a24(indx);
129           t(ddindx).on_instance_number := a25(indx);
130           t(ddindx).on_serial_number := a26(indx);
131           t(ddindx).on_lot_number := a27(indx);
132           t(ddindx).on_quantity := a28(indx);
133           t(ddindx).on_uom := a29(indx);
134           ddindx := ddindx+1;
135           if a0.last =indx
136             then exit;
137           end if;
138           indx := a0.next(indx);
139         end loop;
140       end if;
141    end if;
142   end rosetta_table_copy_in_p4;
143   procedure rosetta_table_copy_out_p4(t ahl_prd_disp_util_pvt.disp_list_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
144     , a1 out nocopy JTF_NUMBER_TABLE
145     , a2 out nocopy JTF_NUMBER_TABLE
146     , a3 out nocopy JTF_VARCHAR2_TABLE_100
147     , a4 out nocopy JTF_NUMBER_TABLE
148     , a5 out nocopy JTF_VARCHAR2_TABLE_100
149     , a6 out nocopy JTF_VARCHAR2_TABLE_100
150     , a7 out nocopy JTF_VARCHAR2_TABLE_100
151     , a8 out nocopy JTF_VARCHAR2_TABLE_100
152     , a9 out nocopy JTF_VARCHAR2_TABLE_100
153     , a10 out nocopy JTF_VARCHAR2_TABLE_100
154     , a11 out nocopy JTF_VARCHAR2_TABLE_100
155     , a12 out nocopy JTF_NUMBER_TABLE
156     , a13 out nocopy JTF_VARCHAR2_TABLE_100
157     , a14 out nocopy JTF_NUMBER_TABLE
158     , a15 out nocopy JTF_VARCHAR2_TABLE_200
159     , a16 out nocopy JTF_NUMBER_TABLE
160     , a17 out nocopy JTF_VARCHAR2_TABLE_100
161     , a18 out nocopy JTF_VARCHAR2_TABLE_100
162     , a19 out nocopy JTF_VARCHAR2_TABLE_100
163     , a20 out nocopy JTF_NUMBER_TABLE
164     , a21 out nocopy JTF_VARCHAR2_TABLE_100
165     , a22 out nocopy JTF_NUMBER_TABLE
166     , a23 out nocopy JTF_VARCHAR2_TABLE_100
167     , a24 out nocopy JTF_NUMBER_TABLE
168     , a25 out nocopy JTF_VARCHAR2_TABLE_100
169     , a26 out nocopy JTF_VARCHAR2_TABLE_100
170     , a27 out nocopy JTF_VARCHAR2_TABLE_100
171     , a28 out nocopy JTF_NUMBER_TABLE
172     , a29 out nocopy JTF_VARCHAR2_TABLE_100
173     ) as
174     ddindx binary_integer; indx binary_integer;
175   begin
176   if t is null or t.count = 0 then
177     a0 := JTF_NUMBER_TABLE();
178     a1 := JTF_NUMBER_TABLE();
179     a2 := JTF_NUMBER_TABLE();
180     a3 := JTF_VARCHAR2_TABLE_100();
181     a4 := JTF_NUMBER_TABLE();
182     a5 := JTF_VARCHAR2_TABLE_100();
183     a6 := JTF_VARCHAR2_TABLE_100();
184     a7 := JTF_VARCHAR2_TABLE_100();
185     a8 := JTF_VARCHAR2_TABLE_100();
186     a9 := JTF_VARCHAR2_TABLE_100();
187     a10 := JTF_VARCHAR2_TABLE_100();
188     a11 := JTF_VARCHAR2_TABLE_100();
189     a12 := JTF_NUMBER_TABLE();
190     a13 := JTF_VARCHAR2_TABLE_100();
191     a14 := JTF_NUMBER_TABLE();
192     a15 := JTF_VARCHAR2_TABLE_200();
193     a16 := JTF_NUMBER_TABLE();
194     a17 := JTF_VARCHAR2_TABLE_100();
195     a18 := JTF_VARCHAR2_TABLE_100();
196     a19 := JTF_VARCHAR2_TABLE_100();
197     a20 := JTF_NUMBER_TABLE();
198     a21 := JTF_VARCHAR2_TABLE_100();
199     a22 := JTF_NUMBER_TABLE();
200     a23 := JTF_VARCHAR2_TABLE_100();
201     a24 := JTF_NUMBER_TABLE();
202     a25 := JTF_VARCHAR2_TABLE_100();
203     a26 := JTF_VARCHAR2_TABLE_100();
204     a27 := JTF_VARCHAR2_TABLE_100();
205     a28 := JTF_NUMBER_TABLE();
206     a29 := JTF_VARCHAR2_TABLE_100();
207   else
208       a0 := JTF_NUMBER_TABLE();
209       a1 := JTF_NUMBER_TABLE();
210       a2 := JTF_NUMBER_TABLE();
211       a3 := JTF_VARCHAR2_TABLE_100();
212       a4 := JTF_NUMBER_TABLE();
213       a5 := JTF_VARCHAR2_TABLE_100();
214       a6 := JTF_VARCHAR2_TABLE_100();
215       a7 := JTF_VARCHAR2_TABLE_100();
216       a8 := JTF_VARCHAR2_TABLE_100();
217       a9 := JTF_VARCHAR2_TABLE_100();
218       a10 := JTF_VARCHAR2_TABLE_100();
219       a11 := JTF_VARCHAR2_TABLE_100();
220       a12 := JTF_NUMBER_TABLE();
221       a13 := JTF_VARCHAR2_TABLE_100();
222       a14 := JTF_NUMBER_TABLE();
223       a15 := JTF_VARCHAR2_TABLE_200();
224       a16 := JTF_NUMBER_TABLE();
225       a17 := JTF_VARCHAR2_TABLE_100();
226       a18 := JTF_VARCHAR2_TABLE_100();
227       a19 := JTF_VARCHAR2_TABLE_100();
228       a20 := JTF_NUMBER_TABLE();
229       a21 := JTF_VARCHAR2_TABLE_100();
230       a22 := JTF_NUMBER_TABLE();
231       a23 := JTF_VARCHAR2_TABLE_100();
232       a24 := JTF_NUMBER_TABLE();
233       a25 := JTF_VARCHAR2_TABLE_100();
234       a26 := JTF_VARCHAR2_TABLE_100();
235       a27 := JTF_VARCHAR2_TABLE_100();
236       a28 := JTF_NUMBER_TABLE();
237       a29 := JTF_VARCHAR2_TABLE_100();
238       if t.count > 0 then
239         a0.extend(t.count);
240         a1.extend(t.count);
241         a2.extend(t.count);
242         a3.extend(t.count);
243         a4.extend(t.count);
244         a5.extend(t.count);
245         a6.extend(t.count);
246         a7.extend(t.count);
247         a8.extend(t.count);
248         a9.extend(t.count);
249         a10.extend(t.count);
250         a11.extend(t.count);
251         a12.extend(t.count);
252         a13.extend(t.count);
253         a14.extend(t.count);
254         a15.extend(t.count);
255         a16.extend(t.count);
256         a17.extend(t.count);
257         a18.extend(t.count);
258         a19.extend(t.count);
259         a20.extend(t.count);
260         a21.extend(t.count);
261         a22.extend(t.count);
262         a23.extend(t.count);
263         a24.extend(t.count);
264         a25.extend(t.count);
265         a26.extend(t.count);
266         a27.extend(t.count);
267         a28.extend(t.count);
268         a29.extend(t.count);
269         ddindx := t.first;
270         indx := 1;
271         while true loop
272           a0(indx) := t(ddindx).disposition_id;
273           a1(indx) := t(ddindx).part_change_id;
274           a2(indx) := t(ddindx).path_position_id;
275           a3(indx) := t(ddindx).path_position_ref;
276           a4(indx) := t(ddindx).item_group_id;
277           a5(indx) := t(ddindx).item_group_name;
278           a6(indx) := t(ddindx).immediate_disp_code;
279           a7(indx) := t(ddindx).immediate_disp;
280           a8(indx) := t(ddindx).secondary_disp_code;
281           a9(indx) := t(ddindx).secondary_disp;
282           a10(indx) := t(ddindx).disp_status_code;
283           a11(indx) := t(ddindx).disp_status;
284           a12(indx) := t(ddindx).condition_id;
285           a13(indx) := t(ddindx).condition_code;
286           a14(indx) := t(ddindx).off_inv_item_id;
287           a15(indx) := t(ddindx).off_item_number;
288           a16(indx) := t(ddindx).off_instance_id;
289           a17(indx) := t(ddindx).off_instance_number;
290           a18(indx) := t(ddindx).off_serial_number;
291           a19(indx) := t(ddindx).off_lot_number;
292           a20(indx) := t(ddindx).off_quantity;
293           a21(indx) := t(ddindx).off_uom;
294           a22(indx) := t(ddindx).on_inv_item_id;
295           a23(indx) := t(ddindx).on_item_number;
296           a24(indx) := t(ddindx).on_instance_id;
297           a25(indx) := t(ddindx).on_instance_number;
298           a26(indx) := t(ddindx).on_serial_number;
299           a27(indx) := t(ddindx).on_lot_number;
300           a28(indx) := t(ddindx).on_quantity;
301           a29(indx) := t(ddindx).on_uom;
302           indx := indx+1;
303           if t.last =ddindx
304             then exit;
305           end if;
306           ddindx := t.next(ddindx);
307         end loop;
308       end if;
309    end if;
310   end rosetta_table_copy_out_p4;
311 
312   procedure get_disposition_list(p_api_version  NUMBER
313     , p_init_msg_list  VARCHAR2
314     , p_validation_level  NUMBER
315     , x_return_status out nocopy  VARCHAR2
316     , x_msg_count out nocopy  NUMBER
317     , x_msg_data out nocopy  VARCHAR2
318     , p_workorder_id  NUMBER
319     , p_start_row  NUMBER
320     , p_rows_per_page  NUMBER
321     , p9_a0  NUMBER
322     , p9_a1  VARCHAR2
323     , p9_a2  NUMBER
324     , p9_a3  VARCHAR2
325     , p9_a4  NUMBER
326     , p9_a5  VARCHAR2
327     , p9_a6  NUMBER
328     , p9_a7  VARCHAR2
329     , p9_a8  VARCHAR2
330     , p9_a9  VARCHAR2
331     , p9_a10  VARCHAR2
332     , p9_a11  VARCHAR2
333     , p9_a12  VARCHAR2
334     , p9_a13  VARCHAR2
335     , p9_a14  VARCHAR2
336     , p9_a15  VARCHAR2
337     , x_results_count out nocopy  NUMBER
338     , p11_a0 out nocopy JTF_NUMBER_TABLE
339     , p11_a1 out nocopy JTF_NUMBER_TABLE
340     , p11_a2 out nocopy JTF_NUMBER_TABLE
341     , p11_a3 out nocopy JTF_VARCHAR2_TABLE_100
342     , p11_a4 out nocopy JTF_NUMBER_TABLE
343     , p11_a5 out nocopy JTF_VARCHAR2_TABLE_100
344     , p11_a6 out nocopy JTF_VARCHAR2_TABLE_100
345     , p11_a7 out nocopy JTF_VARCHAR2_TABLE_100
346     , p11_a8 out nocopy JTF_VARCHAR2_TABLE_100
347     , p11_a9 out nocopy JTF_VARCHAR2_TABLE_100
348     , p11_a10 out nocopy JTF_VARCHAR2_TABLE_100
349     , p11_a11 out nocopy JTF_VARCHAR2_TABLE_100
350     , p11_a12 out nocopy JTF_NUMBER_TABLE
351     , p11_a13 out nocopy JTF_VARCHAR2_TABLE_100
352     , p11_a14 out nocopy JTF_NUMBER_TABLE
353     , p11_a15 out nocopy JTF_VARCHAR2_TABLE_200
354     , p11_a16 out nocopy JTF_NUMBER_TABLE
355     , p11_a17 out nocopy JTF_VARCHAR2_TABLE_100
356     , p11_a18 out nocopy JTF_VARCHAR2_TABLE_100
357     , p11_a19 out nocopy JTF_VARCHAR2_TABLE_100
358     , p11_a20 out nocopy JTF_NUMBER_TABLE
359     , p11_a21 out nocopy JTF_VARCHAR2_TABLE_100
360     , p11_a22 out nocopy JTF_NUMBER_TABLE
361     , p11_a23 out nocopy JTF_VARCHAR2_TABLE_100
362     , p11_a24 out nocopy JTF_NUMBER_TABLE
363     , p11_a25 out nocopy JTF_VARCHAR2_TABLE_100
364     , p11_a26 out nocopy JTF_VARCHAR2_TABLE_100
365     , p11_a27 out nocopy JTF_VARCHAR2_TABLE_100
366     , p11_a28 out nocopy JTF_NUMBER_TABLE
367     , p11_a29 out nocopy JTF_VARCHAR2_TABLE_100
368   )
369 
370   as
371     ddp_disp_filter_rec ahl_prd_disp_util_pvt.disp_filter_rec_type;
372     ddx_disp_list_tbl ahl_prd_disp_util_pvt.disp_list_tbl_type;
373     ddindx binary_integer; indx binary_integer;
374   begin
375 
376     -- copy data to the local IN or IN-OUT args, if any
377 
378 
379 
380 
381 
382 
383 
384 
385 
386     ddp_disp_filter_rec.path_position_id := p9_a0;
387     ddp_disp_filter_rec.path_position_ref := p9_a1;
388     ddp_disp_filter_rec.item_group_id := p9_a2;
389     ddp_disp_filter_rec.item_group_name := p9_a3;
390     ddp_disp_filter_rec.inv_item_id := p9_a4;
391     ddp_disp_filter_rec.item_number := p9_a5;
392     ddp_disp_filter_rec.condition_id := p9_a6;
393     ddp_disp_filter_rec.condition_code := p9_a7;
394     ddp_disp_filter_rec.item_type_code := p9_a8;
395     ddp_disp_filter_rec.item_type := p9_a9;
396     ddp_disp_filter_rec.immediate_disp_code := p9_a10;
397     ddp_disp_filter_rec.immediate_disp := p9_a11;
398     ddp_disp_filter_rec.secondary_disp_code := p9_a12;
399     ddp_disp_filter_rec.secondary_disp := p9_a13;
400     ddp_disp_filter_rec.disp_status_code := p9_a14;
404 
401     ddp_disp_filter_rec.disp_status := p9_a15;
402 
403 
405     -- here's the delegated call to the old PL/SQL routine
406     ahl_prd_disp_util_pvt.get_disposition_list(p_api_version,
407       p_init_msg_list,
408       p_validation_level,
409       x_return_status,
410       x_msg_count,
411       x_msg_data,
412       p_workorder_id,
413       p_start_row,
414       p_rows_per_page,
415       ddp_disp_filter_rec,
416       x_results_count,
417       ddx_disp_list_tbl);
418 
419     -- copy data back from the local variables to OUT or IN-OUT args, if any
420 
421 
422 
423 
424 
425 
426 
427 
428 
429 
430 
431     ahl_prd_disp_util_pvt_w.rosetta_table_copy_out_p4(ddx_disp_list_tbl, p11_a0
432       , p11_a1
433       , p11_a2
434       , p11_a3
435       , p11_a4
436       , p11_a5
437       , p11_a6
438       , p11_a7
439       , p11_a8
440       , p11_a9
441       , p11_a10
442       , p11_a11
443       , p11_a12
444       , p11_a13
445       , p11_a14
446       , p11_a15
447       , p11_a16
448       , p11_a17
449       , p11_a18
450       , p11_a19
451       , p11_a20
452       , p11_a21
453       , p11_a22
454       , p11_a23
455       , p11_a24
456       , p11_a25
457       , p11_a26
458       , p11_a27
459       , p11_a28
460       , p11_a29
461       );
462   end;
463 
464   procedure get_part_change_disposition(p_api_version  NUMBER
465     , p_init_msg_list  VARCHAR2
466     , p_commit  VARCHAR2
467     , p_validation_level  NUMBER
468     , x_return_status out nocopy  VARCHAR2
469     , x_msg_count out nocopy  NUMBER
470     , x_msg_data out nocopy  VARCHAR2
471     , p_workorder_id  NUMBER
472     , p_parent_instance_id  NUMBER
473     , p_relationship_id  NUMBER
474     , p_instance_id  NUMBER
475     , p11_a0 out nocopy  NUMBER
476     , p11_a1 out nocopy  VARCHAR2
477     , p11_a2 out nocopy  NUMBER
478     , p11_a3 out nocopy  DATE
479     , p11_a4 out nocopy  NUMBER
480     , p11_a5 out nocopy  DATE
481     , p11_a6 out nocopy  NUMBER
482     , p11_a7 out nocopy  NUMBER
483     , p11_a8 out nocopy  NUMBER
484     , p11_a9 out nocopy  NUMBER
485     , p11_a10 out nocopy  NUMBER
486     , p11_a11 out nocopy  NUMBER
487     , p11_a12 out nocopy  NUMBER
488     , p11_a13 out nocopy  NUMBER
489     , p11_a14 out nocopy  NUMBER
490     , p11_a15 out nocopy  NUMBER
491     , p11_a16 out nocopy  NUMBER
492     , p11_a17 out nocopy  NUMBER
493     , p11_a18 out nocopy  NUMBER
494     , p11_a19 out nocopy  NUMBER
495     , p11_a20 out nocopy  VARCHAR
496     , p11_a21 out nocopy  VARCHAR2
497     , p11_a22 out nocopy  VARCHAR2
498     , p11_a23 out nocopy  VARCHAR2
499     , p11_a24 out nocopy  VARCHAR2
500     , p11_a25 out nocopy  VARCHAR2
501     , p11_a26 out nocopy  NUMBER
502     , p11_a27 out nocopy  VARCHAR2
503     , p11_a28 out nocopy  VARCHAR2
504     , p11_a29 out nocopy  NUMBER
505     , p11_a30 out nocopy  VARCHAR
506     , p11_a31 out nocopy  VARCHAR
507     , p11_a32 out nocopy  NUMBER
508     , p11_a33 out nocopy  VARCHAR2
509     , p11_a34 out nocopy  VARCHAR
510     , p11_a35 out nocopy  VARCHAR
511     , p11_a36 out nocopy  VARCHAR
512     , p11_a37 out nocopy  VARCHAR
513     , p11_a38 out nocopy  VARCHAR
514     , p11_a39 out nocopy  VARCHAR
515     , p11_a40 out nocopy  VARCHAR
516     , p11_a41 out nocopy  VARCHAR2
517     , p11_a42 out nocopy  VARCHAR2
518     , p11_a43 out nocopy  NUMBER
519     , p11_a44 out nocopy  NUMBER
520     , p11_a45 out nocopy  VARCHAR2
521     , p11_a46 out nocopy  VARCHAR2
522     , p11_a47 out nocopy  VARCHAR2
523     , p11_a48 out nocopy  VARCHAR2
524     , p11_a49 out nocopy  VARCHAR2
525     , p11_a50 out nocopy  VARCHAR2
526     , p11_a51 out nocopy  VARCHAR2
527     , p11_a52 out nocopy  VARCHAR2
528     , p11_a53 out nocopy  VARCHAR2
529     , p11_a54 out nocopy  VARCHAR2
530     , p11_a55 out nocopy  VARCHAR2
531     , p11_a56 out nocopy  VARCHAR2
532     , p11_a57 out nocopy  VARCHAR2
533     , p11_a58 out nocopy  VARCHAR2
534     , p11_a59 out nocopy  VARCHAR2
535     , p11_a60 out nocopy  VARCHAR2
536     , p12_a0 out nocopy JTF_VARCHAR2_TABLE_100
537     , p12_a1 out nocopy JTF_VARCHAR2_TABLE_100
538     , p13_a0 out nocopy JTF_VARCHAR2_TABLE_100
539     , p13_a1 out nocopy JTF_VARCHAR2_TABLE_100
540   )
541 
542   as
543     ddx_disposition_rec ahl_prd_disposition_pvt.disposition_rec_type;
544     ddx_imm_disp_type_tbl ahl_prd_disp_util_pvt.disp_type_tbl_type;
545     ddx_sec_disp_type_tbl ahl_prd_disp_util_pvt.disp_type_tbl_type;
546     ddindx binary_integer; indx binary_integer;
547   begin
548 
549     -- copy data to the local IN or IN-OUT args, if any
550 
551 
552 
553 
554 
555 
556 
557 
558 
559 
560 
561 
562 
563 
564     -- here's the delegated call to the old PL/SQL routine
565     ahl_prd_disp_util_pvt.get_part_change_disposition(p_api_version,
566       p_init_msg_list,
567       p_commit,
568       p_validation_level,
569       x_return_status,
570       x_msg_count,
571       x_msg_data,
572       p_workorder_id,
573       p_parent_instance_id,
574       p_relationship_id,
575       p_instance_id,
576       ddx_disposition_rec,
577       ddx_imm_disp_type_tbl,
578       ddx_sec_disp_type_tbl);
579 
580     -- copy data back from the local variables to OUT or IN-OUT args, if any
581 
582 
583 
584 
585 
586 
587 
588 
589 
590 
591 
592     p11_a0 := ddx_disposition_rec.disposition_id;
593     p11_a1 := ddx_disposition_rec.operation_flag;
594     p11_a2 := ddx_disposition_rec.object_version_number;
595     p11_a3 := ddx_disposition_rec.last_update_date;
596     p11_a4 := ddx_disposition_rec.last_updated_by;
597     p11_a5 := ddx_disposition_rec.creation_date;
598     p11_a6 := ddx_disposition_rec.created_by;
599     p11_a7 := ddx_disposition_rec.last_update_login;
600     p11_a8 := ddx_disposition_rec.workorder_id;
601     p11_a9 := ddx_disposition_rec.part_change_id;
602     p11_a10 := ddx_disposition_rec.path_position_id;
603     p11_a11 := ddx_disposition_rec.inventory_item_id;
604     p11_a12 := ddx_disposition_rec.item_org_id;
605     p11_a13 := ddx_disposition_rec.item_group_id;
606     p11_a14 := ddx_disposition_rec.condition_id;
607     p11_a15 := ddx_disposition_rec.instance_id;
608     p11_a16 := ddx_disposition_rec.collection_id;
609     p11_a17 := ddx_disposition_rec.primary_service_request_id;
610     p11_a18 := ddx_disposition_rec.non_routine_workorder_id;
611     p11_a19 := ddx_disposition_rec.wo_operation_id;
612     p11_a20 := ddx_disposition_rec.item_revision;
613     p11_a21 := ddx_disposition_rec.serial_number;
614     p11_a22 := ddx_disposition_rec.lot_number;
615     p11_a23 := ddx_disposition_rec.immediate_disposition_code;
616     p11_a24 := ddx_disposition_rec.secondary_disposition_code;
617     p11_a25 := ddx_disposition_rec.status_code;
618     p11_a26 := ddx_disposition_rec.quantity;
619     p11_a27 := ddx_disposition_rec.uom;
620     p11_a28 := ddx_disposition_rec.comments;
621     p11_a29 := ddx_disposition_rec.severity_id;
622     p11_a30 := ddx_disposition_rec.problem_code;
623     p11_a31 := ddx_disposition_rec.summary;
624     p11_a32 := ddx_disposition_rec.duration;
625     p11_a33 := ddx_disposition_rec.create_work_order_option;
626     p11_a34 := ddx_disposition_rec.immediate_disposition;
627     p11_a35 := ddx_disposition_rec.secondary_disposition;
628     p11_a36 := ddx_disposition_rec.condition_meaning;
629     p11_a37 := ddx_disposition_rec.instance_number;
630     p11_a38 := ddx_disposition_rec.item_number;
631     p11_a39 := ddx_disposition_rec.item_group_name;
632     p11_a40 := ddx_disposition_rec.disposition_status;
633     p11_a41 := ddx_disposition_rec.severity_name;
634     p11_a42 := ddx_disposition_rec.problem_meaning;
635     p11_a43 := ddx_disposition_rec.operation_sequence;
636     p11_a44 := ddx_disposition_rec.security_group_id;
637     p11_a45 := ddx_disposition_rec.attribute_category;
638     p11_a46 := ddx_disposition_rec.attribute1;
639     p11_a47 := ddx_disposition_rec.attribute2;
640     p11_a48 := ddx_disposition_rec.attribute3;
641     p11_a49 := ddx_disposition_rec.attribute4;
642     p11_a50 := ddx_disposition_rec.attribute5;
643     p11_a51 := ddx_disposition_rec.attribute6;
644     p11_a52 := ddx_disposition_rec.attribute7;
645     p11_a53 := ddx_disposition_rec.attribute8;
646     p11_a54 := ddx_disposition_rec.attribute9;
647     p11_a55 := ddx_disposition_rec.attribute10;
648     p11_a56 := ddx_disposition_rec.attribute11;
649     p11_a57 := ddx_disposition_rec.attribute12;
650     p11_a58 := ddx_disposition_rec.attribute13;
651     p11_a59 := ddx_disposition_rec.attribute14;
652     p11_a60 := ddx_disposition_rec.attribute15;
653 
654     ahl_prd_disp_util_pvt_w.rosetta_table_copy_out_p1(ddx_imm_disp_type_tbl, p12_a0
655       , p12_a1
656       );
657 
658     ahl_prd_disp_util_pvt_w.rosetta_table_copy_out_p1(ddx_sec_disp_type_tbl, p13_a0
659       , p13_a1
660       );
661   end;
662 
663   procedure get_available_disp_types(p_api_version  NUMBER
664     , p_init_msg_list  VARCHAR2
665     , p_commit  VARCHAR2
666     , p_validation_level  NUMBER
667     , x_return_status out nocopy  VARCHAR2
668     , x_msg_count out nocopy  NUMBER
669     , x_msg_data out nocopy  VARCHAR2
670     , p_disposition_id  NUMBER
671     , p8_a0 out nocopy JTF_VARCHAR2_TABLE_100
672     , p8_a1 out nocopy JTF_VARCHAR2_TABLE_100
673     , p9_a0 out nocopy JTF_VARCHAR2_TABLE_100
674     , p9_a1 out nocopy JTF_VARCHAR2_TABLE_100
675   )
676 
677   as
678     ddx_imm_disp_type_tbl ahl_prd_disp_util_pvt.disp_type_tbl_type;
679     ddx_sec_disp_type_tbl ahl_prd_disp_util_pvt.disp_type_tbl_type;
680     ddindx binary_integer; indx binary_integer;
681   begin
682 
683     -- copy data to the local IN or IN-OUT args, if any
684 
685 
686 
687 
688 
689 
690 
691 
692 
693 
694     -- here's the delegated call to the old PL/SQL routine
695     ahl_prd_disp_util_pvt.get_available_disp_types(p_api_version,
696       p_init_msg_list,
697       p_commit,
698       p_validation_level,
699       x_return_status,
700       x_msg_count,
701       x_msg_data,
702       p_disposition_id,
703       ddx_imm_disp_type_tbl,
704       ddx_sec_disp_type_tbl);
705 
706     -- copy data back from the local variables to OUT or IN-OUT args, if any
707 
708 
709 
710 
711 
712 
713 
714 
715     ahl_prd_disp_util_pvt_w.rosetta_table_copy_out_p1(ddx_imm_disp_type_tbl, p8_a0
716       , p8_a1
717       );
718 
719     ahl_prd_disp_util_pvt_w.rosetta_table_copy_out_p1(ddx_sec_disp_type_tbl, p9_a0
720       , p9_a1
721       );
722   end;
723 
724 end ahl_prd_disp_util_pvt_w;