DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_FMP_MR_EFFECTIVITY_PVT_W

Source


1 package body ahl_fmp_mr_effectivity_pvt_w as
2   /* $Header: AHLWMREB.pls 120.0.12020000.2 2012/12/13 06:11:07 shnatu ship $ */
3   rosetta_g_mistake_date date := to_date('01/01/+4713', 'MM/DD/SYYYY');
4   rosetta_g_miss_date date := to_date('01/01/-4712', 'MM/DD/SYYYY');
5   rosetta_g_mistake_date_high date := to_date('01/01/+4710', 'MM/DD/SYYYY');
6   rosetta_g_mistake_date_low date := to_date('01/01/-4710', 'MM/DD/SYYYY');
7 
8   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
9   function rosetta_g_miss_date_in_map(d date) return date as
10   begin
11     if d > rosetta_g_mistake_date_high then return fnd_api.g_miss_date; end if;
12     if d < rosetta_g_mistake_date_low then return fnd_api.g_miss_date; end if;
13     return d;
14   end;
15 
16   procedure rosetta_table_copy_in_p1(t out nocopy ahl_fmp_mr_effectivity_pvt.effectivity_tbl_type, a0 JTF_NUMBER_TABLE
17     , a1 JTF_VARCHAR2_TABLE_100
18     , a2 JTF_NUMBER_TABLE
19     , a3 JTF_VARCHAR2_TABLE_1000
20     , a4 JTF_NUMBER_TABLE
21     , a5 JTF_VARCHAR2_TABLE_100
22     , a6 JTF_NUMBER_TABLE
23     , a7 JTF_VARCHAR2_TABLE_1000
24     , a8 JTF_NUMBER_TABLE
25     , a9 JTF_NUMBER_TABLE
26     , a10 JTF_VARCHAR2_TABLE_300
27     , a11 JTF_NUMBER_TABLE
28     , a12 JTF_VARCHAR2_TABLE_300
29     , a13 JTF_VARCHAR2_TABLE_100
30     , a14 JTF_VARCHAR2_TABLE_200
31     , a15 JTF_VARCHAR2_TABLE_200
32     , a16 JTF_VARCHAR2_TABLE_200
33     , a17 JTF_VARCHAR2_TABLE_200
34     , a18 JTF_VARCHAR2_TABLE_200
35     , a19 JTF_VARCHAR2_TABLE_200
36     , a20 JTF_VARCHAR2_TABLE_200
37     , a21 JTF_VARCHAR2_TABLE_200
38     , a22 JTF_VARCHAR2_TABLE_200
39     , a23 JTF_VARCHAR2_TABLE_200
40     , a24 JTF_VARCHAR2_TABLE_200
41     , a25 JTF_VARCHAR2_TABLE_200
42     , a26 JTF_VARCHAR2_TABLE_200
43     , a27 JTF_VARCHAR2_TABLE_200
44     , a28 JTF_VARCHAR2_TABLE_200
45     , a29 JTF_DATE_TABLE
46     , a30 JTF_NUMBER_TABLE
47     , a31 JTF_DATE_TABLE
48     , a32 JTF_NUMBER_TABLE
49     , a33 JTF_NUMBER_TABLE
50     , a34 JTF_VARCHAR2_TABLE_100
51     ) as
52     ddindx binary_integer; indx binary_integer;
53   begin
54   if a0 is not null and a0.count > 0 then
55       if a0.count > 0 then
56         indx := a0.first;
57         ddindx := 1;
58         while true loop
59           t(ddindx).mr_effectivity_id := a0(indx);
60           t(ddindx).name := a1(indx);
61           t(ddindx).object_version_number := a2(indx);
62           t(ddindx).item_number := a3(indx);
63           t(ddindx).inventory_item_id := a4(indx);
64           t(ddindx).position_ref_meaning := a5(indx);
65           t(ddindx).relationship_id := a6(indx);
66           t(ddindx).position_item_number := a7(indx);
67           t(ddindx).position_inventory_item_id := a8(indx);
68           t(ddindx).pc_node_id := a9(indx);
69           t(ddindx).pc_node_name := a10(indx);
70           t(ddindx).fleet_header_id := a11(indx);
71           t(ddindx).fleet_name := a12(indx);
72           t(ddindx).attribute_category := a13(indx);
73           t(ddindx).attribute1 := a14(indx);
74           t(ddindx).attribute2 := a15(indx);
75           t(ddindx).attribute3 := a16(indx);
76           t(ddindx).attribute4 := a17(indx);
77           t(ddindx).attribute5 := a18(indx);
78           t(ddindx).attribute6 := a19(indx);
79           t(ddindx).attribute7 := a20(indx);
80           t(ddindx).attribute8 := a21(indx);
81           t(ddindx).attribute9 := a22(indx);
82           t(ddindx).attribute10 := a23(indx);
83           t(ddindx).attribute11 := a24(indx);
84           t(ddindx).attribute12 := a25(indx);
85           t(ddindx).attribute13 := a26(indx);
86           t(ddindx).attribute14 := a27(indx);
87           t(ddindx).attribute15 := a28(indx);
88           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a29(indx));
89           t(ddindx).last_updated_by := a30(indx);
90           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a31(indx));
91           t(ddindx).created_by := a32(indx);
92           t(ddindx).last_update_login := a33(indx);
93           t(ddindx).dml_operation := a34(indx);
94           ddindx := ddindx+1;
95           if a0.last =indx
96             then exit;
97           end if;
98           indx := a0.next(indx);
99         end loop;
100       end if;
101    end if;
102   end rosetta_table_copy_in_p1;
103   procedure rosetta_table_copy_out_p1(t ahl_fmp_mr_effectivity_pvt.effectivity_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
104     , a1 out nocopy JTF_VARCHAR2_TABLE_100
105     , a2 out nocopy JTF_NUMBER_TABLE
106     , a3 out nocopy JTF_VARCHAR2_TABLE_1000
107     , a4 out nocopy JTF_NUMBER_TABLE
108     , a5 out nocopy JTF_VARCHAR2_TABLE_100
109     , a6 out nocopy JTF_NUMBER_TABLE
110     , a7 out nocopy JTF_VARCHAR2_TABLE_1000
111     , a8 out nocopy JTF_NUMBER_TABLE
112     , a9 out nocopy JTF_NUMBER_TABLE
113     , a10 out nocopy JTF_VARCHAR2_TABLE_300
114     , a11 out nocopy JTF_NUMBER_TABLE
115     , a12 out nocopy JTF_VARCHAR2_TABLE_300
116     , a13 out nocopy JTF_VARCHAR2_TABLE_100
117     , a14 out nocopy JTF_VARCHAR2_TABLE_200
118     , a15 out nocopy JTF_VARCHAR2_TABLE_200
119     , a16 out nocopy JTF_VARCHAR2_TABLE_200
120     , a17 out nocopy JTF_VARCHAR2_TABLE_200
121     , a18 out nocopy JTF_VARCHAR2_TABLE_200
122     , a19 out nocopy JTF_VARCHAR2_TABLE_200
123     , a20 out nocopy JTF_VARCHAR2_TABLE_200
124     , a21 out nocopy JTF_VARCHAR2_TABLE_200
125     , a22 out nocopy JTF_VARCHAR2_TABLE_200
126     , a23 out nocopy JTF_VARCHAR2_TABLE_200
127     , a24 out nocopy JTF_VARCHAR2_TABLE_200
128     , a25 out nocopy JTF_VARCHAR2_TABLE_200
129     , a26 out nocopy JTF_VARCHAR2_TABLE_200
130     , a27 out nocopy JTF_VARCHAR2_TABLE_200
131     , a28 out nocopy JTF_VARCHAR2_TABLE_200
132     , a29 out nocopy JTF_DATE_TABLE
133     , a30 out nocopy JTF_NUMBER_TABLE
134     , a31 out nocopy JTF_DATE_TABLE
135     , a32 out nocopy JTF_NUMBER_TABLE
136     , a33 out nocopy JTF_NUMBER_TABLE
137     , a34 out nocopy JTF_VARCHAR2_TABLE_100
138     ) as
139     ddindx binary_integer; indx binary_integer;
140   begin
141   if t is null or t.count = 0 then
142     a0 := JTF_NUMBER_TABLE();
143     a1 := JTF_VARCHAR2_TABLE_100();
144     a2 := JTF_NUMBER_TABLE();
145     a3 := JTF_VARCHAR2_TABLE_1000();
146     a4 := JTF_NUMBER_TABLE();
147     a5 := JTF_VARCHAR2_TABLE_100();
148     a6 := JTF_NUMBER_TABLE();
149     a7 := JTF_VARCHAR2_TABLE_1000();
150     a8 := JTF_NUMBER_TABLE();
151     a9 := JTF_NUMBER_TABLE();
152     a10 := JTF_VARCHAR2_TABLE_300();
153     a11 := JTF_NUMBER_TABLE();
154     a12 := JTF_VARCHAR2_TABLE_300();
155     a13 := JTF_VARCHAR2_TABLE_100();
156     a14 := JTF_VARCHAR2_TABLE_200();
157     a15 := JTF_VARCHAR2_TABLE_200();
158     a16 := JTF_VARCHAR2_TABLE_200();
159     a17 := JTF_VARCHAR2_TABLE_200();
160     a18 := JTF_VARCHAR2_TABLE_200();
161     a19 := JTF_VARCHAR2_TABLE_200();
162     a20 := JTF_VARCHAR2_TABLE_200();
163     a21 := JTF_VARCHAR2_TABLE_200();
164     a22 := JTF_VARCHAR2_TABLE_200();
165     a23 := JTF_VARCHAR2_TABLE_200();
166     a24 := JTF_VARCHAR2_TABLE_200();
167     a25 := JTF_VARCHAR2_TABLE_200();
168     a26 := JTF_VARCHAR2_TABLE_200();
169     a27 := JTF_VARCHAR2_TABLE_200();
170     a28 := JTF_VARCHAR2_TABLE_200();
171     a29 := JTF_DATE_TABLE();
172     a30 := JTF_NUMBER_TABLE();
173     a31 := JTF_DATE_TABLE();
174     a32 := JTF_NUMBER_TABLE();
175     a33 := JTF_NUMBER_TABLE();
176     a34 := JTF_VARCHAR2_TABLE_100();
177   else
178       a0 := JTF_NUMBER_TABLE();
179       a1 := JTF_VARCHAR2_TABLE_100();
180       a2 := JTF_NUMBER_TABLE();
181       a3 := JTF_VARCHAR2_TABLE_1000();
182       a4 := JTF_NUMBER_TABLE();
183       a5 := JTF_VARCHAR2_TABLE_100();
184       a6 := JTF_NUMBER_TABLE();
185       a7 := JTF_VARCHAR2_TABLE_1000();
186       a8 := JTF_NUMBER_TABLE();
187       a9 := JTF_NUMBER_TABLE();
188       a10 := JTF_VARCHAR2_TABLE_300();
189       a11 := JTF_NUMBER_TABLE();
190       a12 := JTF_VARCHAR2_TABLE_300();
191       a13 := JTF_VARCHAR2_TABLE_100();
192       a14 := JTF_VARCHAR2_TABLE_200();
193       a15 := JTF_VARCHAR2_TABLE_200();
194       a16 := JTF_VARCHAR2_TABLE_200();
195       a17 := JTF_VARCHAR2_TABLE_200();
196       a18 := JTF_VARCHAR2_TABLE_200();
197       a19 := JTF_VARCHAR2_TABLE_200();
198       a20 := JTF_VARCHAR2_TABLE_200();
199       a21 := JTF_VARCHAR2_TABLE_200();
200       a22 := JTF_VARCHAR2_TABLE_200();
201       a23 := JTF_VARCHAR2_TABLE_200();
202       a24 := JTF_VARCHAR2_TABLE_200();
203       a25 := JTF_VARCHAR2_TABLE_200();
204       a26 := JTF_VARCHAR2_TABLE_200();
205       a27 := JTF_VARCHAR2_TABLE_200();
206       a28 := JTF_VARCHAR2_TABLE_200();
207       a29 := JTF_DATE_TABLE();
208       a30 := JTF_NUMBER_TABLE();
209       a31 := JTF_DATE_TABLE();
210       a32 := JTF_NUMBER_TABLE();
211       a33 := JTF_NUMBER_TABLE();
212       a34 := JTF_VARCHAR2_TABLE_100();
213       if t.count > 0 then
214         a0.extend(t.count);
215         a1.extend(t.count);
216         a2.extend(t.count);
217         a3.extend(t.count);
218         a4.extend(t.count);
219         a5.extend(t.count);
220         a6.extend(t.count);
221         a7.extend(t.count);
222         a8.extend(t.count);
223         a9.extend(t.count);
224         a10.extend(t.count);
225         a11.extend(t.count);
226         a12.extend(t.count);
227         a13.extend(t.count);
228         a14.extend(t.count);
229         a15.extend(t.count);
230         a16.extend(t.count);
231         a17.extend(t.count);
232         a18.extend(t.count);
233         a19.extend(t.count);
234         a20.extend(t.count);
235         a21.extend(t.count);
236         a22.extend(t.count);
237         a23.extend(t.count);
238         a24.extend(t.count);
239         a25.extend(t.count);
240         a26.extend(t.count);
241         a27.extend(t.count);
242         a28.extend(t.count);
243         a29.extend(t.count);
244         a30.extend(t.count);
245         a31.extend(t.count);
246         a32.extend(t.count);
247         a33.extend(t.count);
248         a34.extend(t.count);
249         ddindx := t.first;
250         indx := 1;
251         while true loop
252           a0(indx) := t(ddindx).mr_effectivity_id;
253           a1(indx) := t(ddindx).name;
254           a2(indx) := t(ddindx).object_version_number;
255           a3(indx) := t(ddindx).item_number;
256           a4(indx) := t(ddindx).inventory_item_id;
257           a5(indx) := t(ddindx).position_ref_meaning;
258           a6(indx) := t(ddindx).relationship_id;
259           a7(indx) := t(ddindx).position_item_number;
260           a8(indx) := t(ddindx).position_inventory_item_id;
261           a9(indx) := t(ddindx).pc_node_id;
262           a10(indx) := t(ddindx).pc_node_name;
263           a11(indx) := t(ddindx).fleet_header_id;
264           a12(indx) := t(ddindx).fleet_name;
265           a13(indx) := t(ddindx).attribute_category;
266           a14(indx) := t(ddindx).attribute1;
267           a15(indx) := t(ddindx).attribute2;
268           a16(indx) := t(ddindx).attribute3;
269           a17(indx) := t(ddindx).attribute4;
270           a18(indx) := t(ddindx).attribute5;
271           a19(indx) := t(ddindx).attribute6;
272           a20(indx) := t(ddindx).attribute7;
273           a21(indx) := t(ddindx).attribute8;
274           a22(indx) := t(ddindx).attribute9;
275           a23(indx) := t(ddindx).attribute10;
276           a24(indx) := t(ddindx).attribute11;
277           a25(indx) := t(ddindx).attribute12;
278           a26(indx) := t(ddindx).attribute13;
279           a27(indx) := t(ddindx).attribute14;
280           a28(indx) := t(ddindx).attribute15;
281           a29(indx) := t(ddindx).last_update_date;
282           a30(indx) := t(ddindx).last_updated_by;
283           a31(indx) := t(ddindx).creation_date;
284           a32(indx) := t(ddindx).created_by;
285           a33(indx) := t(ddindx).last_update_login;
286           a34(indx) := t(ddindx).dml_operation;
287           indx := indx+1;
288           if t.last =ddindx
289             then exit;
290           end if;
291           ddindx := t.next(ddindx);
292         end loop;
293       end if;
294    end if;
295   end rosetta_table_copy_out_p1;
296 
297   procedure process_effectivity(p_api_version  NUMBER
298     , p_init_msg_list  VARCHAR2
299     , p_commit  VARCHAR2
300     , p_validation_level  NUMBER
301     , p_default  VARCHAR2
302     , p_module_type  VARCHAR2
303     , x_return_status out nocopy  VARCHAR2
304     , x_msg_count out nocopy  NUMBER
305     , x_msg_data out nocopy  VARCHAR2
306     , p9_a0 in out nocopy JTF_NUMBER_TABLE
307     , p9_a1 in out nocopy JTF_VARCHAR2_TABLE_100
308     , p9_a2 in out nocopy JTF_NUMBER_TABLE
309     , p9_a3 in out nocopy JTF_VARCHAR2_TABLE_1000
310     , p9_a4 in out nocopy JTF_NUMBER_TABLE
311     , p9_a5 in out nocopy JTF_VARCHAR2_TABLE_100
312     , p9_a6 in out nocopy JTF_NUMBER_TABLE
313     , p9_a7 in out nocopy JTF_VARCHAR2_TABLE_1000
317     , p9_a11 in out nocopy JTF_NUMBER_TABLE
314     , p9_a8 in out nocopy JTF_NUMBER_TABLE
315     , p9_a9 in out nocopy JTF_NUMBER_TABLE
316     , p9_a10 in out nocopy JTF_VARCHAR2_TABLE_300
318     , p9_a12 in out nocopy JTF_VARCHAR2_TABLE_300
319     , p9_a13 in out nocopy JTF_VARCHAR2_TABLE_100
320     , p9_a14 in out nocopy JTF_VARCHAR2_TABLE_200
321     , p9_a15 in out nocopy JTF_VARCHAR2_TABLE_200
322     , p9_a16 in out nocopy JTF_VARCHAR2_TABLE_200
323     , p9_a17 in out nocopy JTF_VARCHAR2_TABLE_200
324     , p9_a18 in out nocopy JTF_VARCHAR2_TABLE_200
325     , p9_a19 in out nocopy JTF_VARCHAR2_TABLE_200
326     , p9_a20 in out nocopy JTF_VARCHAR2_TABLE_200
327     , p9_a21 in out nocopy JTF_VARCHAR2_TABLE_200
328     , p9_a22 in out nocopy JTF_VARCHAR2_TABLE_200
329     , p9_a23 in out nocopy JTF_VARCHAR2_TABLE_200
330     , p9_a24 in out nocopy JTF_VARCHAR2_TABLE_200
331     , p9_a25 in out nocopy JTF_VARCHAR2_TABLE_200
332     , p9_a26 in out nocopy JTF_VARCHAR2_TABLE_200
333     , p9_a27 in out nocopy JTF_VARCHAR2_TABLE_200
334     , p9_a28 in out nocopy JTF_VARCHAR2_TABLE_200
335     , p9_a29 in out nocopy JTF_DATE_TABLE
336     , p9_a30 in out nocopy JTF_NUMBER_TABLE
337     , p9_a31 in out nocopy JTF_DATE_TABLE
338     , p9_a32 in out nocopy JTF_NUMBER_TABLE
339     , p9_a33 in out nocopy JTF_NUMBER_TABLE
340     , p9_a34 in out nocopy JTF_VARCHAR2_TABLE_100
341     , p_mr_header_id  NUMBER
342     , p_super_user  VARCHAR2
343   )
344 
345   as
346     ddp_x_effectivity_tbl ahl_fmp_mr_effectivity_pvt.effectivity_tbl_type;
347     ddindx binary_integer; indx binary_integer;
348   begin
349 
350     -- copy data to the local IN or IN-OUT args, if any
351 
352 
353 
354 
355 
356 
357 
358 
359 
360     ahl_fmp_mr_effectivity_pvt_w.rosetta_table_copy_in_p1(ddp_x_effectivity_tbl, p9_a0
361       , p9_a1
362       , p9_a2
363       , p9_a3
364       , p9_a4
365       , p9_a5
366       , p9_a6
367       , p9_a7
368       , p9_a8
369       , p9_a9
370       , p9_a10
371       , p9_a11
372       , p9_a12
373       , p9_a13
374       , p9_a14
375       , p9_a15
376       , p9_a16
377       , p9_a17
378       , p9_a18
379       , p9_a19
380       , p9_a20
381       , p9_a21
382       , p9_a22
383       , p9_a23
384       , p9_a24
385       , p9_a25
386       , p9_a26
387       , p9_a27
388       , p9_a28
389       , p9_a29
390       , p9_a30
391       , p9_a31
392       , p9_a32
393       , p9_a33
394       , p9_a34
395       );
396 
397 
398 
399     -- here's the delegated call to the old PL/SQL routine
400     ahl_fmp_mr_effectivity_pvt.process_effectivity(p_api_version,
401       p_init_msg_list,
402       p_commit,
403       p_validation_level,
404       p_default,
405       p_module_type,
406       x_return_status,
407       x_msg_count,
408       x_msg_data,
409       ddp_x_effectivity_tbl,
410       p_mr_header_id,
411       p_super_user);
412 
413     -- copy data back from the local variables to OUT or IN-OUT args, if any
414 
415 
416 
417 
418 
419 
420 
421 
422 
423     ahl_fmp_mr_effectivity_pvt_w.rosetta_table_copy_out_p1(ddp_x_effectivity_tbl, p9_a0
424       , p9_a1
425       , p9_a2
426       , p9_a3
427       , p9_a4
428       , p9_a5
429       , p9_a6
430       , p9_a7
431       , p9_a8
432       , p9_a9
433       , p9_a10
434       , p9_a11
435       , p9_a12
436       , p9_a13
437       , p9_a14
438       , p9_a15
439       , p9_a16
440       , p9_a17
441       , p9_a18
442       , p9_a19
443       , p9_a20
444       , p9_a21
445       , p9_a22
446       , p9_a23
447       , p9_a24
448       , p9_a25
449       , p9_a26
450       , p9_a27
451       , p9_a28
452       , p9_a29
453       , p9_a30
454       , p9_a31
455       , p9_a32
456       , p9_a33
457       , p9_a34
458       );
459 
460 
461   end;
462 
463 end ahl_fmp_mr_effectivity_pvt_w;