DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_LTP_SIMUL_PLAN_PUB_W

Source


1 package body ahl_ltp_simul_plan_pub_w as
2   /* $Header: AHLWSPNB.pls 115.4 2002/12/04 19:22:54 ssurapan noship $ */
3   rosetta_g_mistake_date date := to_date('01/01/+4713', 'MM/DD/SYYYY');
4   rosetta_g_miss_date date := to_date('01/01/-4712', 'MM/DD/SYYYY');
5 
6   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
7   function rosetta_g_miss_date_in_map(d date) return date as
8   begin
9     if d = rosetta_g_mistake_date then return fnd_api.g_miss_date; end if;
10     return d;
11   end;
12 
13   procedure rosetta_table_copy_in_p1(t out nocopy ahl_ltp_simul_plan_pub.simulation_plan_tbl, a0 JTF_NUMBER_TABLE
14     , a1 JTF_DATE_TABLE
15     , a2 JTF_NUMBER_TABLE
16     , a3 JTF_DATE_TABLE
17     , a4 JTF_NUMBER_TABLE
18     , a5 JTF_NUMBER_TABLE
19     , a6 JTF_VARCHAR2_TABLE_100
20     , a7 JTF_VARCHAR2_TABLE_100
21     , a8 JTF_VARCHAR2_TABLE_300
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).plan_id := a0(indx);
49           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a1(indx));
50           t(ddindx).last_updated_by := a2(indx);
51           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a3(indx));
52           t(ddindx).created_by := a4(indx);
53           t(ddindx).last_update_login := a5(indx);
54           t(ddindx).primary_plan_flag := a6(indx);
55           t(ddindx).plan_name := a7(indx);
56           t(ddindx).description := a8(indx);
57           t(ddindx).object_version_number := 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_p1;
84   procedure rosetta_table_copy_out_p1(t ahl_ltp_simul_plan_pub.simulation_plan_tbl, a0 out nocopy JTF_NUMBER_TABLE
85     , a1 out nocopy JTF_DATE_TABLE
86     , a2 out nocopy JTF_NUMBER_TABLE
87     , a3 out nocopy JTF_DATE_TABLE
88     , a4 out nocopy JTF_NUMBER_TABLE
89     , a5 out nocopy JTF_NUMBER_TABLE
90     , a6 out nocopy JTF_VARCHAR2_TABLE_100
91     , a7 out nocopy JTF_VARCHAR2_TABLE_100
92     , a8 out nocopy JTF_VARCHAR2_TABLE_300
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_DATE_TABLE();
117     a2 := JTF_NUMBER_TABLE();
118     a3 := JTF_DATE_TABLE();
119     a4 := JTF_NUMBER_TABLE();
120     a5 := JTF_NUMBER_TABLE();
121     a6 := JTF_VARCHAR2_TABLE_100();
122     a7 := JTF_VARCHAR2_TABLE_100();
123     a8 := JTF_VARCHAR2_TABLE_300();
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_DATE_TABLE();
145       a2 := JTF_NUMBER_TABLE();
146       a3 := JTF_DATE_TABLE();
147       a4 := JTF_NUMBER_TABLE();
148       a5 := JTF_NUMBER_TABLE();
149       a6 := JTF_VARCHAR2_TABLE_100();
150       a7 := JTF_VARCHAR2_TABLE_100();
151       a8 := JTF_VARCHAR2_TABLE_300();
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).plan_id;
202           a1(indx) := t(ddindx).last_update_date;
203           a2(indx) := t(ddindx).last_updated_by;
204           a3(indx) := t(ddindx).creation_date;
205           a4(indx) := t(ddindx).created_by;
206           a5(indx) := t(ddindx).last_update_login;
207           a6(indx) := t(ddindx).primary_plan_flag;
208           a7(indx) := t(ddindx).plan_name;
209           a8(indx) := t(ddindx).description;
210           a9(indx) := t(ddindx).object_version_number;
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_p1;
237 
238   procedure rosetta_table_copy_in_p3(t out nocopy ahl_ltp_simul_plan_pub.simulation_visit_tbl, a0 JTF_NUMBER_TABLE
239     , a1 JTF_NUMBER_TABLE
240     , a2 JTF_NUMBER_TABLE
241     , a3 JTF_VARCHAR2_TABLE_100
242     , a4 JTF_NUMBER_TABLE
243     , a5 JTF_NUMBER_TABLE
244     , a6 JTF_NUMBER_TABLE
245     , a7 JTF_NUMBER_TABLE
246     , a8 JTF_VARCHAR2_TABLE_100
247     ) as
248     ddindx binary_integer; indx binary_integer;
249   begin
250   if a0 is not null and a0.count > 0 then
251       if a0.count > 0 then
252         indx := a0.first;
253         ddindx := 1;
254         while true loop
255           t(ddindx).primary_visit_id := a0(indx);
256           t(ddindx).primary_ovn := a1(indx);
257           t(ddindx).plan_id := a2(indx);
258           t(ddindx).plan_name := a3(indx);
259           t(ddindx).plan_ovn := a4(indx);
260           t(ddindx).visit_id := a5(indx);
261           t(ddindx).primary_visit_number := a6(indx);
262           t(ddindx).visit_ovn := a7(indx);
263           t(ddindx).operation_flag := a8(indx);
264           ddindx := ddindx+1;
265           if a0.last =indx
266             then exit;
267           end if;
268           indx := a0.next(indx);
269         end loop;
270       end if;
271    end if;
272   end rosetta_table_copy_in_p3;
273   procedure rosetta_table_copy_out_p3(t ahl_ltp_simul_plan_pub.simulation_visit_tbl, a0 out nocopy JTF_NUMBER_TABLE
274     , a1 out nocopy JTF_NUMBER_TABLE
275     , a2 out nocopy JTF_NUMBER_TABLE
276     , a3 out nocopy JTF_VARCHAR2_TABLE_100
277     , a4 out nocopy JTF_NUMBER_TABLE
278     , a5 out nocopy JTF_NUMBER_TABLE
279     , a6 out nocopy JTF_NUMBER_TABLE
280     , a7 out nocopy JTF_NUMBER_TABLE
281     , a8 out nocopy JTF_VARCHAR2_TABLE_100
282     ) as
283     ddindx binary_integer; indx binary_integer;
284   begin
285   if t is null or t.count = 0 then
286     a0 := JTF_NUMBER_TABLE();
287     a1 := JTF_NUMBER_TABLE();
288     a2 := JTF_NUMBER_TABLE();
289     a3 := JTF_VARCHAR2_TABLE_100();
290     a4 := JTF_NUMBER_TABLE();
291     a5 := JTF_NUMBER_TABLE();
292     a6 := JTF_NUMBER_TABLE();
293     a7 := JTF_NUMBER_TABLE();
294     a8 := JTF_VARCHAR2_TABLE_100();
295   else
296       a0 := JTF_NUMBER_TABLE();
297       a1 := JTF_NUMBER_TABLE();
298       a2 := JTF_NUMBER_TABLE();
299       a3 := JTF_VARCHAR2_TABLE_100();
300       a4 := JTF_NUMBER_TABLE();
301       a5 := JTF_NUMBER_TABLE();
302       a6 := JTF_NUMBER_TABLE();
303       a7 := JTF_NUMBER_TABLE();
304       a8 := JTF_VARCHAR2_TABLE_100();
305       if t.count > 0 then
306         a0.extend(t.count);
307         a1.extend(t.count);
308         a2.extend(t.count);
309         a3.extend(t.count);
310         a4.extend(t.count);
311         a5.extend(t.count);
312         a6.extend(t.count);
313         a7.extend(t.count);
314         a8.extend(t.count);
315         ddindx := t.first;
316         indx := 1;
317         while true loop
318           a0(indx) := t(ddindx).primary_visit_id;
319           a1(indx) := t(ddindx).primary_ovn;
320           a2(indx) := t(ddindx).plan_id;
321           a3(indx) := t(ddindx).plan_name;
322           a4(indx) := t(ddindx).plan_ovn;
323           a5(indx) := t(ddindx).visit_id;
324           a6(indx) := t(ddindx).primary_visit_number;
325           a7(indx) := t(ddindx).visit_ovn;
326           a8(indx) := t(ddindx).operation_flag;
327           indx := indx+1;
328           if t.last =ddindx
329             then exit;
330           end if;
331           ddindx := t.next(ddindx);
332         end loop;
333       end if;
334    end if;
335   end rosetta_table_copy_out_p3;
336 
337   procedure process_simulation_plan(p_api_version  NUMBER
338     , p_init_msg_list  VARCHAR2
339     , p_commit  VARCHAR2
340     , p_validation_level  NUMBER
341     , p_module_type  VARCHAR2
342     , p5_a0 in out nocopy JTF_NUMBER_TABLE
343     , p5_a1 in out nocopy JTF_DATE_TABLE
344     , p5_a2 in out nocopy JTF_NUMBER_TABLE
348     , p5_a6 in out nocopy JTF_VARCHAR2_TABLE_100
345     , p5_a3 in out nocopy JTF_DATE_TABLE
346     , p5_a4 in out nocopy JTF_NUMBER_TABLE
347     , p5_a5 in out nocopy JTF_NUMBER_TABLE
349     , p5_a7 in out nocopy JTF_VARCHAR2_TABLE_100
350     , p5_a8 in out nocopy JTF_VARCHAR2_TABLE_300
351     , p5_a9 in out nocopy JTF_NUMBER_TABLE
352     , p5_a10 in out nocopy JTF_VARCHAR2_TABLE_100
353     , p5_a11 in out nocopy JTF_VARCHAR2_TABLE_200
354     , p5_a12 in out nocopy JTF_VARCHAR2_TABLE_200
355     , p5_a13 in out nocopy JTF_VARCHAR2_TABLE_200
356     , p5_a14 in out nocopy JTF_VARCHAR2_TABLE_200
357     , p5_a15 in out nocopy JTF_VARCHAR2_TABLE_200
358     , p5_a16 in out nocopy JTF_VARCHAR2_TABLE_200
359     , p5_a17 in out nocopy JTF_VARCHAR2_TABLE_200
360     , p5_a18 in out nocopy JTF_VARCHAR2_TABLE_200
361     , p5_a19 in out nocopy JTF_VARCHAR2_TABLE_200
362     , p5_a20 in out nocopy JTF_VARCHAR2_TABLE_200
363     , p5_a21 in out nocopy JTF_VARCHAR2_TABLE_200
364     , p5_a22 in out nocopy JTF_VARCHAR2_TABLE_200
365     , p5_a23 in out nocopy JTF_VARCHAR2_TABLE_200
366     , p5_a24 in out nocopy JTF_VARCHAR2_TABLE_200
367     , p5_a25 in out nocopy JTF_VARCHAR2_TABLE_200
368     , p5_a26 in out nocopy JTF_VARCHAR2_TABLE_100
369     , x_return_status out nocopy  VARCHAR2
370     , x_msg_count out nocopy  NUMBER
371     , x_msg_data out nocopy  VARCHAR2
372   )
373 
374   as
375     ddp_x_simulation_plan_tbl ahl_ltp_simul_plan_pub.simulation_plan_tbl;
376     ddindx binary_integer; indx binary_integer;
377   begin
378 
379     -- copy data to the local IN or IN-OUT args, if any
380 
381 
382 
383 
384 
385     ahl_ltp_simul_plan_pub_w.rosetta_table_copy_in_p1(ddp_x_simulation_plan_tbl, p5_a0
386       , p5_a1
387       , p5_a2
388       , p5_a3
389       , p5_a4
390       , p5_a5
391       , p5_a6
392       , p5_a7
393       , p5_a8
394       , p5_a9
395       , p5_a10
396       , p5_a11
397       , p5_a12
398       , p5_a13
399       , p5_a14
400       , p5_a15
401       , p5_a16
402       , p5_a17
403       , p5_a18
404       , p5_a19
405       , p5_a20
406       , p5_a21
407       , p5_a22
408       , p5_a23
409       , p5_a24
410       , p5_a25
411       , p5_a26
412       );
413 
414 
415 
416 
417     -- here's the delegated call to the old PL/SQL routine
418     ahl_ltp_simul_plan_pub.process_simulation_plan(p_api_version,
419       p_init_msg_list,
420       p_commit,
421       p_validation_level,
422       p_module_type,
423       ddp_x_simulation_plan_tbl,
424       x_return_status,
425       x_msg_count,
426       x_msg_data);
427 
428     -- copy data back from the local variables to OUT or IN-OUT args, if any
429 
430 
431 
432 
433 
434     ahl_ltp_simul_plan_pub_w.rosetta_table_copy_out_p1(ddp_x_simulation_plan_tbl, p5_a0
435       , p5_a1
436       , p5_a2
437       , p5_a3
438       , p5_a4
439       , p5_a5
440       , p5_a6
441       , p5_a7
442       , p5_a8
443       , p5_a9
444       , p5_a10
445       , p5_a11
446       , p5_a12
447       , p5_a13
448       , p5_a14
449       , p5_a15
450       , p5_a16
451       , p5_a17
452       , p5_a18
453       , p5_a19
454       , p5_a20
455       , p5_a21
456       , p5_a22
457       , p5_a23
458       , p5_a24
459       , p5_a25
460       , p5_a26
461       );
462 
463 
464 
465   end;
466 
467   procedure process_simulation_visit(p_api_version  NUMBER
468     , p_init_msg_list  VARCHAR2
469     , p_commit  VARCHAR2
470     , p_validation_level  NUMBER
471     , p_module_type  VARCHAR2
472     , p5_a0 in out nocopy JTF_NUMBER_TABLE
473     , p5_a1 in out nocopy JTF_NUMBER_TABLE
474     , p5_a2 in out nocopy JTF_NUMBER_TABLE
475     , p5_a3 in out nocopy JTF_VARCHAR2_TABLE_100
476     , p5_a4 in out nocopy JTF_NUMBER_TABLE
477     , p5_a5 in out nocopy JTF_NUMBER_TABLE
478     , p5_a6 in out nocopy JTF_NUMBER_TABLE
479     , p5_a7 in out nocopy JTF_NUMBER_TABLE
480     , p5_a8 in out nocopy JTF_VARCHAR2_TABLE_100
481     , x_return_status out nocopy  VARCHAR2
482     , x_msg_count out nocopy  NUMBER
483     , x_msg_data out nocopy  VARCHAR2
484   )
485 
486   as
487     ddp_simulation_visit_tbl ahl_ltp_simul_plan_pub.simulation_visit_tbl;
488     ddindx binary_integer; indx binary_integer;
489   begin
490 
491     -- copy data to the local IN or IN-OUT args, if any
492 
493 
494 
495 
496 
497     ahl_ltp_simul_plan_pub_w.rosetta_table_copy_in_p3(ddp_simulation_visit_tbl, p5_a0
498       , p5_a1
499       , p5_a2
500       , p5_a3
501       , p5_a4
502       , p5_a5
503       , p5_a6
504       , p5_a7
505       , p5_a8
506       );
507 
508 
509 
510 
511     -- here's the delegated call to the old PL/SQL routine
512     ahl_ltp_simul_plan_pub.process_simulation_visit(p_api_version,
513       p_init_msg_list,
514       p_commit,
515       p_validation_level,
516       p_module_type,
517       ddp_simulation_visit_tbl,
518       x_return_status,
519       x_msg_count,
520       x_msg_data);
521 
525 
522     -- copy data back from the local variables to OUT or IN-OUT args, if any
523 
524 
526 
527 
528     ahl_ltp_simul_plan_pub_w.rosetta_table_copy_out_p3(ddp_simulation_visit_tbl, p5_a0
529       , p5_a1
530       , p5_a2
531       , p5_a3
532       , p5_a4
533       , p5_a5
534       , p5_a6
535       , p5_a7
536       , p5_a8
537       );
538 
539 
540 
541   end;
542 
543 end ahl_ltp_simul_plan_pub_w;