DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_PC_ASSOCIATION_PUB_W

Source


1 package body ahl_pc_association_pub_w as
2   /* $Header: AHLWPCAB.pls 115.10 2003/08/22 13:13:55 tamdas 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_p2(t out nocopy ahl_pc_association_pub.pc_assos_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_300
18     , a5 JTF_VARCHAR2_TABLE_100
19     , a6 JTF_VARCHAR2_TABLE_100
20     , a7 JTF_VARCHAR2_TABLE_100
21     , a8 JTF_NUMBER_TABLE
22     , a9 JTF_NUMBER_TABLE
23     , a10 JTF_VARCHAR2_TABLE_100
24     , a11 JTF_VARCHAR2_TABLE_200
25     , a12 JTF_VARCHAR2_TABLE_200
26     , a13 JTF_VARCHAR2_TABLE_200
27     , a14 JTF_VARCHAR2_TABLE_200
28     , a15 JTF_VARCHAR2_TABLE_200
29     , a16 JTF_VARCHAR2_TABLE_200
30     , a17 JTF_VARCHAR2_TABLE_200
31     , a18 JTF_VARCHAR2_TABLE_200
32     , a19 JTF_VARCHAR2_TABLE_200
33     , a20 JTF_VARCHAR2_TABLE_200
34     , a21 JTF_VARCHAR2_TABLE_200
35     , a22 JTF_VARCHAR2_TABLE_200
36     , a23 JTF_VARCHAR2_TABLE_200
37     , a24 JTF_VARCHAR2_TABLE_200
38     , a25 JTF_VARCHAR2_TABLE_200
39     , a26 JTF_VARCHAR2_TABLE_100
40     ) as
41     ddindx binary_integer; indx binary_integer;
42   begin
43   if a0 is not null and a0.count > 0 then
44       if a0.count > 0 then
45         indx := a0.first;
46         ddindx := 1;
47         while true loop
48           t(ddindx).pc_association_id := a0(indx);
49           t(ddindx).object_version_number := a1(indx);
50           t(ddindx).pc_node_id := a2(indx);
51           t(ddindx).unit_item_id := a3(indx);
52           t(ddindx).unit_item_name := a4(indx);
53           t(ddindx).association_type_flag := a5(indx);
54           t(ddindx).operation_status_flag := a6(indx);
55           t(ddindx).draft_flag := a7(indx);
56           t(ddindx).inventory_org_id := a8(indx);
57           t(ddindx).link_to_association_id := a9(indx);
58           t(ddindx).attribute_category := a10(indx);
59           t(ddindx).attribute1 := a11(indx);
60           t(ddindx).attribute2 := a12(indx);
61           t(ddindx).attribute3 := a13(indx);
62           t(ddindx).attribute4 := a14(indx);
63           t(ddindx).attribute5 := a15(indx);
64           t(ddindx).attribute6 := a16(indx);
65           t(ddindx).attribute7 := a17(indx);
66           t(ddindx).attribute8 := a18(indx);
67           t(ddindx).attribute9 := a19(indx);
68           t(ddindx).attribute10 := a20(indx);
69           t(ddindx).attribute11 := a21(indx);
70           t(ddindx).attribute12 := a22(indx);
71           t(ddindx).attribute13 := a23(indx);
72           t(ddindx).attribute14 := a24(indx);
73           t(ddindx).attribute15 := a25(indx);
74           t(ddindx).operation_flag := a26(indx);
75           ddindx := ddindx+1;
76           if a0.last =indx
77             then exit;
78           end if;
79           indx := a0.next(indx);
80         end loop;
81       end if;
82    end if;
83   end rosetta_table_copy_in_p2;
84   procedure rosetta_table_copy_out_p2(t ahl_pc_association_pub.pc_assos_tbl, a0 out nocopy JTF_NUMBER_TABLE
85     , a1 out nocopy JTF_NUMBER_TABLE
86     , a2 out nocopy JTF_NUMBER_TABLE
87     , a3 out nocopy JTF_NUMBER_TABLE
88     , a4 out nocopy JTF_VARCHAR2_TABLE_300
89     , a5 out nocopy JTF_VARCHAR2_TABLE_100
90     , a6 out nocopy JTF_VARCHAR2_TABLE_100
91     , a7 out nocopy JTF_VARCHAR2_TABLE_100
92     , a8 out nocopy JTF_NUMBER_TABLE
93     , a9 out nocopy JTF_NUMBER_TABLE
94     , a10 out nocopy JTF_VARCHAR2_TABLE_100
95     , a11 out nocopy JTF_VARCHAR2_TABLE_200
96     , a12 out nocopy JTF_VARCHAR2_TABLE_200
97     , a13 out nocopy JTF_VARCHAR2_TABLE_200
98     , a14 out nocopy JTF_VARCHAR2_TABLE_200
99     , a15 out nocopy JTF_VARCHAR2_TABLE_200
100     , a16 out nocopy JTF_VARCHAR2_TABLE_200
101     , a17 out nocopy JTF_VARCHAR2_TABLE_200
102     , a18 out nocopy JTF_VARCHAR2_TABLE_200
103     , a19 out nocopy JTF_VARCHAR2_TABLE_200
104     , a20 out nocopy JTF_VARCHAR2_TABLE_200
105     , a21 out nocopy JTF_VARCHAR2_TABLE_200
106     , a22 out nocopy JTF_VARCHAR2_TABLE_200
107     , a23 out nocopy JTF_VARCHAR2_TABLE_200
108     , a24 out nocopy JTF_VARCHAR2_TABLE_200
109     , a25 out nocopy JTF_VARCHAR2_TABLE_200
110     , a26 out nocopy JTF_VARCHAR2_TABLE_100
111     ) as
112     ddindx binary_integer; indx binary_integer;
113   begin
114   if t is null or t.count = 0 then
115     a0 := JTF_NUMBER_TABLE();
116     a1 := JTF_NUMBER_TABLE();
117     a2 := JTF_NUMBER_TABLE();
118     a3 := JTF_NUMBER_TABLE();
119     a4 := JTF_VARCHAR2_TABLE_300();
120     a5 := JTF_VARCHAR2_TABLE_100();
121     a6 := JTF_VARCHAR2_TABLE_100();
122     a7 := JTF_VARCHAR2_TABLE_100();
123     a8 := JTF_NUMBER_TABLE();
124     a9 := JTF_NUMBER_TABLE();
125     a10 := JTF_VARCHAR2_TABLE_100();
126     a11 := JTF_VARCHAR2_TABLE_200();
127     a12 := JTF_VARCHAR2_TABLE_200();
128     a13 := JTF_VARCHAR2_TABLE_200();
129     a14 := JTF_VARCHAR2_TABLE_200();
130     a15 := JTF_VARCHAR2_TABLE_200();
131     a16 := JTF_VARCHAR2_TABLE_200();
132     a17 := JTF_VARCHAR2_TABLE_200();
133     a18 := JTF_VARCHAR2_TABLE_200();
134     a19 := JTF_VARCHAR2_TABLE_200();
135     a20 := JTF_VARCHAR2_TABLE_200();
136     a21 := JTF_VARCHAR2_TABLE_200();
137     a22 := JTF_VARCHAR2_TABLE_200();
138     a23 := JTF_VARCHAR2_TABLE_200();
139     a24 := JTF_VARCHAR2_TABLE_200();
140     a25 := JTF_VARCHAR2_TABLE_200();
141     a26 := JTF_VARCHAR2_TABLE_100();
142   else
143       a0 := JTF_NUMBER_TABLE();
144       a1 := JTF_NUMBER_TABLE();
145       a2 := JTF_NUMBER_TABLE();
146       a3 := JTF_NUMBER_TABLE();
147       a4 := JTF_VARCHAR2_TABLE_300();
148       a5 := JTF_VARCHAR2_TABLE_100();
149       a6 := JTF_VARCHAR2_TABLE_100();
150       a7 := JTF_VARCHAR2_TABLE_100();
151       a8 := JTF_NUMBER_TABLE();
152       a9 := JTF_NUMBER_TABLE();
153       a10 := JTF_VARCHAR2_TABLE_100();
154       a11 := JTF_VARCHAR2_TABLE_200();
155       a12 := JTF_VARCHAR2_TABLE_200();
156       a13 := JTF_VARCHAR2_TABLE_200();
157       a14 := JTF_VARCHAR2_TABLE_200();
158       a15 := JTF_VARCHAR2_TABLE_200();
159       a16 := JTF_VARCHAR2_TABLE_200();
160       a17 := JTF_VARCHAR2_TABLE_200();
161       a18 := JTF_VARCHAR2_TABLE_200();
162       a19 := JTF_VARCHAR2_TABLE_200();
163       a20 := JTF_VARCHAR2_TABLE_200();
164       a21 := JTF_VARCHAR2_TABLE_200();
165       a22 := JTF_VARCHAR2_TABLE_200();
166       a23 := JTF_VARCHAR2_TABLE_200();
167       a24 := JTF_VARCHAR2_TABLE_200();
168       a25 := JTF_VARCHAR2_TABLE_200();
169       a26 := JTF_VARCHAR2_TABLE_100();
170       if t.count > 0 then
171         a0.extend(t.count);
172         a1.extend(t.count);
173         a2.extend(t.count);
174         a3.extend(t.count);
175         a4.extend(t.count);
176         a5.extend(t.count);
177         a6.extend(t.count);
178         a7.extend(t.count);
179         a8.extend(t.count);
180         a9.extend(t.count);
181         a10.extend(t.count);
182         a11.extend(t.count);
183         a12.extend(t.count);
184         a13.extend(t.count);
185         a14.extend(t.count);
186         a15.extend(t.count);
187         a16.extend(t.count);
188         a17.extend(t.count);
189         a18.extend(t.count);
190         a19.extend(t.count);
191         a20.extend(t.count);
192         a21.extend(t.count);
193         a22.extend(t.count);
194         a23.extend(t.count);
195         a24.extend(t.count);
196         a25.extend(t.count);
197         a26.extend(t.count);
198         ddindx := t.first;
199         indx := 1;
200         while true loop
201           a0(indx) := t(ddindx).pc_association_id;
202           a1(indx) := t(ddindx).object_version_number;
203           a2(indx) := t(ddindx).pc_node_id;
204           a3(indx) := t(ddindx).unit_item_id;
205           a4(indx) := t(ddindx).unit_item_name;
206           a5(indx) := t(ddindx).association_type_flag;
207           a6(indx) := t(ddindx).operation_status_flag;
208           a7(indx) := t(ddindx).draft_flag;
209           a8(indx) := t(ddindx).inventory_org_id;
210           a9(indx) := t(ddindx).link_to_association_id;
211           a10(indx) := t(ddindx).attribute_category;
212           a11(indx) := t(ddindx).attribute1;
213           a12(indx) := t(ddindx).attribute2;
214           a13(indx) := t(ddindx).attribute3;
215           a14(indx) := t(ddindx).attribute4;
216           a15(indx) := t(ddindx).attribute5;
217           a16(indx) := t(ddindx).attribute6;
218           a17(indx) := t(ddindx).attribute7;
219           a18(indx) := t(ddindx).attribute8;
220           a19(indx) := t(ddindx).attribute9;
221           a20(indx) := t(ddindx).attribute10;
222           a21(indx) := t(ddindx).attribute11;
223           a22(indx) := t(ddindx).attribute12;
224           a23(indx) := t(ddindx).attribute13;
225           a24(indx) := t(ddindx).attribute14;
226           a25(indx) := t(ddindx).attribute15;
227           a26(indx) := t(ddindx).operation_flag;
228           indx := indx+1;
229           if t.last =ddindx
230             then exit;
231           end if;
232           ddindx := t.next(ddindx);
233         end loop;
234       end if;
235    end if;
236   end rosetta_table_copy_out_p2;
237 
238   procedure process_associations(p_api_version  NUMBER
239     , p_init_msg_list  VARCHAR2
240     , p_commit  VARCHAR2
241     , p_validation_level  NUMBER
242     , p_module_type  VARCHAR2
243     , p5_a0 in out nocopy JTF_NUMBER_TABLE
244     , p5_a1 in out nocopy JTF_NUMBER_TABLE
245     , p5_a2 in out nocopy JTF_NUMBER_TABLE
246     , p5_a3 in out nocopy JTF_NUMBER_TABLE
247     , p5_a4 in out nocopy JTF_VARCHAR2_TABLE_300
248     , p5_a5 in out nocopy JTF_VARCHAR2_TABLE_100
249     , p5_a6 in out nocopy JTF_VARCHAR2_TABLE_100
250     , p5_a7 in out nocopy JTF_VARCHAR2_TABLE_100
251     , p5_a8 in out nocopy JTF_NUMBER_TABLE
252     , p5_a9 in out nocopy JTF_NUMBER_TABLE
253     , p5_a10 in out nocopy JTF_VARCHAR2_TABLE_100
254     , p5_a11 in out nocopy JTF_VARCHAR2_TABLE_200
255     , p5_a12 in out nocopy JTF_VARCHAR2_TABLE_200
256     , p5_a13 in out nocopy JTF_VARCHAR2_TABLE_200
257     , p5_a14 in out nocopy JTF_VARCHAR2_TABLE_200
258     , p5_a15 in out nocopy JTF_VARCHAR2_TABLE_200
259     , p5_a16 in out nocopy JTF_VARCHAR2_TABLE_200
260     , p5_a17 in out nocopy JTF_VARCHAR2_TABLE_200
261     , p5_a18 in out nocopy JTF_VARCHAR2_TABLE_200
262     , p5_a19 in out nocopy JTF_VARCHAR2_TABLE_200
263     , p5_a20 in out nocopy JTF_VARCHAR2_TABLE_200
264     , p5_a21 in out nocopy JTF_VARCHAR2_TABLE_200
265     , p5_a22 in out nocopy JTF_VARCHAR2_TABLE_200
266     , p5_a23 in out nocopy JTF_VARCHAR2_TABLE_200
267     , p5_a24 in out nocopy JTF_VARCHAR2_TABLE_200
268     , p5_a25 in out nocopy JTF_VARCHAR2_TABLE_200
269     , p5_a26 in out nocopy JTF_VARCHAR2_TABLE_100
270     , x_return_status out nocopy  VARCHAR2
271     , x_msg_count out nocopy  NUMBER
272     , x_msg_data out nocopy  VARCHAR2
273   )
274 
275   as
276     ddp_x_assos_tbl ahl_pc_association_pub.pc_assos_tbl;
277     ddindx binary_integer; indx binary_integer;
278   begin
279 
280     -- copy data to the local IN or IN-OUT args, if any
281 
282 
283 
284 
285 
286     ahl_pc_association_pub_w.rosetta_table_copy_in_p2(ddp_x_assos_tbl, p5_a0
287       , p5_a1
288       , p5_a2
289       , p5_a3
290       , p5_a4
291       , p5_a5
292       , p5_a6
293       , p5_a7
294       , p5_a8
295       , p5_a9
296       , p5_a10
297       , p5_a11
298       , p5_a12
299       , p5_a13
300       , p5_a14
301       , p5_a15
302       , p5_a16
303       , p5_a17
304       , p5_a18
305       , p5_a19
306       , p5_a20
307       , p5_a21
308       , p5_a22
309       , p5_a23
310       , p5_a24
311       , p5_a25
312       , p5_a26
313       );
314 
315 
316 
317 
318     -- here's the delegated call to the old PL/SQL routine
319     ahl_pc_association_pub.process_associations(p_api_version,
320       p_init_msg_list,
321       p_commit,
322       p_validation_level,
323       p_module_type,
324       ddp_x_assos_tbl,
325       x_return_status,
326       x_msg_count,
327       x_msg_data);
328 
329     -- copy data back from the local variables to OUT or IN-OUT args, if any
330 
331 
332 
333 
334 
335     ahl_pc_association_pub_w.rosetta_table_copy_out_p2(ddp_x_assos_tbl, p5_a0
336       , p5_a1
337       , p5_a2
338       , p5_a3
339       , p5_a4
340       , p5_a5
341       , p5_a6
342       , p5_a7
343       , p5_a8
344       , p5_a9
345       , p5_a10
346       , p5_a11
347       , p5_a12
348       , p5_a13
349       , p5_a14
350       , p5_a15
351       , p5_a16
352       , p5_a17
353       , p5_a18
354       , p5_a19
355       , p5_a20
356       , p5_a21
357       , p5_a22
358       , p5_a23
359       , p5_a24
360       , p5_a25
361       , p5_a26
362       );
363 
364 
365 
366   end;
367 
368   procedure process_document(p_api_version  NUMBER
369     , p_init_msg_list  VARCHAR2
370     , p_commit  VARCHAR2
371     , p_validation_level  NUMBER
372     , p_module_type  VARCHAR2
373     , p5_a0 in out nocopy JTF_NUMBER_TABLE
374     , p5_a1 in out nocopy JTF_NUMBER_TABLE
375     , p5_a2 in out nocopy JTF_VARCHAR2_TABLE_100
376     , p5_a3 in out nocopy JTF_NUMBER_TABLE
377     , p5_a4 in out nocopy JTF_VARCHAR2_TABLE_100
378     , p5_a5 in out nocopy JTF_VARCHAR2_TABLE_100
379     , p5_a6 in out nocopy JTF_VARCHAR2_TABLE_100
380     , p5_a7 in out nocopy JTF_VARCHAR2_TABLE_100
381     , p5_a8 in out nocopy JTF_NUMBER_TABLE
382     , p5_a9 in out nocopy JTF_VARCHAR2_TABLE_100
383     , p5_a10 in out nocopy JTF_VARCHAR2_TABLE_100
384     , p5_a11 in out nocopy JTF_VARCHAR2_TABLE_100
385     , p5_a12 in out nocopy JTF_VARCHAR2_TABLE_100
386     , p5_a13 in out nocopy JTF_VARCHAR2_TABLE_300
387     , p5_a14 in out nocopy JTF_VARCHAR2_TABLE_100
388     , p5_a15 in out nocopy JTF_VARCHAR2_TABLE_100
389     , p5_a16 in out nocopy JTF_VARCHAR2_TABLE_2000
390     , p5_a17 in out nocopy JTF_VARCHAR2_TABLE_100
391     , p5_a18 in out nocopy JTF_VARCHAR2_TABLE_100
392     , p5_a19 in out nocopy JTF_NUMBER_TABLE
393     , p5_a20 in out nocopy JTF_VARCHAR2_TABLE_100
394     , p5_a21 in out nocopy JTF_VARCHAR2_TABLE_200
395     , p5_a22 in out nocopy JTF_VARCHAR2_TABLE_200
396     , p5_a23 in out nocopy JTF_VARCHAR2_TABLE_200
397     , p5_a24 in out nocopy JTF_VARCHAR2_TABLE_200
398     , p5_a25 in out nocopy JTF_VARCHAR2_TABLE_200
399     , p5_a26 in out nocopy JTF_VARCHAR2_TABLE_200
400     , p5_a27 in out nocopy JTF_VARCHAR2_TABLE_200
401     , p5_a28 in out nocopy JTF_VARCHAR2_TABLE_200
402     , p5_a29 in out nocopy JTF_VARCHAR2_TABLE_200
403     , p5_a30 in out nocopy JTF_VARCHAR2_TABLE_200
404     , p5_a31 in out nocopy JTF_VARCHAR2_TABLE_200
405     , p5_a32 in out nocopy JTF_VARCHAR2_TABLE_200
406     , p5_a33 in out nocopy JTF_VARCHAR2_TABLE_200
407     , p5_a34 in out nocopy JTF_VARCHAR2_TABLE_200
408     , p5_a35 in out nocopy JTF_VARCHAR2_TABLE_200
409     , p5_a36 in out nocopy JTF_VARCHAR2_TABLE_100
410     , x_return_status out nocopy  VARCHAR2
411     , x_msg_count out nocopy  NUMBER
412     , x_msg_data out nocopy  VARCHAR2
413   )
414 
415   as
416     ddp_x_assos_tbl ahl_di_asso_doc_gen_pub.association_tbl;
417     ddindx binary_integer; indx binary_integer;
418   begin
419 
420     -- copy data to the local IN or IN-OUT args, if any
421 
422 
423 
424 
425 
426     ahl_di_asso_doc_gen_pub_w.rosetta_table_copy_in_p1(ddp_x_assos_tbl, p5_a0
427       , p5_a1
428       , p5_a2
429       , p5_a3
430       , p5_a4
431       , p5_a5
432       , p5_a6
433       , p5_a7
434       , p5_a8
435       , p5_a9
436       , p5_a10
437       , p5_a11
438       , p5_a12
439       , p5_a13
440       , p5_a14
441       , p5_a15
442       , p5_a16
443       , p5_a17
444       , p5_a18
445       , p5_a19
446       , p5_a20
447       , p5_a21
448       , p5_a22
449       , p5_a23
450       , p5_a24
451       , p5_a25
452       , p5_a26
453       , p5_a27
454       , p5_a28
455       , p5_a29
456       , p5_a30
457       , p5_a31
458       , p5_a32
459       , p5_a33
460       , p5_a34
461       , p5_a35
462       , p5_a36
463       );
464 
465 
466 
467 
468     -- here's the delegated call to the old PL/SQL routine
469     ahl_pc_association_pub.process_document(p_api_version,
470       p_init_msg_list,
471       p_commit,
472       p_validation_level,
473       p_module_type,
474       ddp_x_assos_tbl,
475       x_return_status,
476       x_msg_count,
477       x_msg_data);
478 
479     -- copy data back from the local variables to OUT or IN-OUT args, if any
480 
481 
482 
483 
484 
485     ahl_di_asso_doc_gen_pub_w.rosetta_table_copy_out_p1(ddp_x_assos_tbl, p5_a0
486       , p5_a1
487       , p5_a2
488       , p5_a3
489       , p5_a4
490       , p5_a5
491       , p5_a6
492       , p5_a7
493       , p5_a8
494       , p5_a9
495       , p5_a10
496       , p5_a11
497       , p5_a12
498       , p5_a13
499       , p5_a14
500       , p5_a15
501       , p5_a16
502       , p5_a17
503       , p5_a18
504       , p5_a19
505       , p5_a20
506       , p5_a21
507       , p5_a22
508       , p5_a23
509       , p5_a24
510       , p5_a25
511       , p5_a26
512       , p5_a27
513       , p5_a28
514       , p5_a29
515       , p5_a30
516       , p5_a31
517       , p5_a32
518       , p5_a33
519       , p5_a34
520       , p5_a35
521       , p5_a36
522       );
523 
524 
525 
526   end;
527 
528 end ahl_pc_association_pub_w;