DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_VWP_VISITS_STAGES_PVT_W

Source


1 package body ahl_vwp_visits_stages_pvt_w as
2   /* $Header: AHLWSTGB.pls 120.0 2005/05/25 23:53:15 appldev 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_vwp_visits_stages_pvt.visit_stages_tbl_type, a0 JTF_NUMBER_TABLE
14     , a1 JTF_NUMBER_TABLE
15     , a2 JTF_VARCHAR2_TABLE_100
16     , a3 JTF_NUMBER_TABLE
17     , a4 JTF_DATE_TABLE
18     , a5 JTF_DATE_TABLE
19     , a6 JTF_DATE_TABLE
20     , a7 JTF_NUMBER_TABLE
21     , a8 JTF_VARCHAR2_TABLE_100
22     , a9 JTF_VARCHAR2_TABLE_200
23     , a10 JTF_VARCHAR2_TABLE_200
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     ) as
38     ddindx binary_integer; indx binary_integer;
39   begin
40   if a0 is not null and a0.count > 0 then
41       if a0.count > 0 then
42         indx := a0.first;
43         ddindx := 1;
44         while true loop
45           t(ddindx).stage_id := a0(indx);
46           t(ddindx).stage_num := a1(indx);
47           t(ddindx).stage_name := a2(indx);
48           t(ddindx).duration := a3(indx);
49           t(ddindx).stage_planned_start_time := rosetta_g_miss_date_in_map(a4(indx));
50           t(ddindx).stage_planned_end_time := rosetta_g_miss_date_in_map(a5(indx));
51           t(ddindx).stage_actual_end_time := rosetta_g_miss_date_in_map(a6(indx));
52           t(ddindx).object_version_number := a7(indx);
53           t(ddindx).attribute_category := a8(indx);
54           t(ddindx).attribute1 := a9(indx);
55           t(ddindx).attribute2 := a10(indx);
56           t(ddindx).attribute3 := a11(indx);
57           t(ddindx).attribute4 := a12(indx);
58           t(ddindx).attribute5 := a13(indx);
59           t(ddindx).attribute6 := a14(indx);
60           t(ddindx).attribute7 := a15(indx);
61           t(ddindx).attribute8 := a16(indx);
62           t(ddindx).attribute9 := a17(indx);
63           t(ddindx).attribute10 := a18(indx);
64           t(ddindx).attribute11 := a19(indx);
65           t(ddindx).attribute12 := a20(indx);
66           t(ddindx).attribute13 := a21(indx);
67           t(ddindx).attribute14 := a22(indx);
68           t(ddindx).attribute15 := a23(indx);
69           ddindx := ddindx+1;
70           if a0.last =indx
71             then exit;
72           end if;
73           indx := a0.next(indx);
74         end loop;
75       end if;
76    end if;
77   end rosetta_table_copy_in_p2;
78   procedure rosetta_table_copy_out_p2(t ahl_vwp_visits_stages_pvt.visit_stages_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
79     , a1 out nocopy JTF_NUMBER_TABLE
80     , a2 out nocopy JTF_VARCHAR2_TABLE_100
81     , a3 out nocopy JTF_NUMBER_TABLE
82     , a4 out nocopy JTF_DATE_TABLE
83     , a5 out nocopy JTF_DATE_TABLE
84     , a6 out nocopy JTF_DATE_TABLE
85     , a7 out nocopy JTF_NUMBER_TABLE
86     , a8 out nocopy JTF_VARCHAR2_TABLE_100
87     , a9 out nocopy JTF_VARCHAR2_TABLE_200
88     , a10 out nocopy JTF_VARCHAR2_TABLE_200
89     , a11 out nocopy JTF_VARCHAR2_TABLE_200
90     , a12 out nocopy JTF_VARCHAR2_TABLE_200
91     , a13 out nocopy JTF_VARCHAR2_TABLE_200
92     , a14 out nocopy JTF_VARCHAR2_TABLE_200
93     , a15 out nocopy JTF_VARCHAR2_TABLE_200
94     , a16 out nocopy JTF_VARCHAR2_TABLE_200
95     , a17 out nocopy JTF_VARCHAR2_TABLE_200
96     , a18 out nocopy JTF_VARCHAR2_TABLE_200
97     , a19 out nocopy JTF_VARCHAR2_TABLE_200
98     , a20 out nocopy JTF_VARCHAR2_TABLE_200
99     , a21 out nocopy JTF_VARCHAR2_TABLE_200
100     , a22 out nocopy JTF_VARCHAR2_TABLE_200
101     , a23 out nocopy JTF_VARCHAR2_TABLE_200
102     ) as
103     ddindx binary_integer; indx binary_integer;
104   begin
105   if t is null or t.count = 0 then
106     a0 := JTF_NUMBER_TABLE();
107     a1 := JTF_NUMBER_TABLE();
108     a2 := JTF_VARCHAR2_TABLE_100();
109     a3 := JTF_NUMBER_TABLE();
110     a4 := JTF_DATE_TABLE();
111     a5 := JTF_DATE_TABLE();
112     a6 := JTF_DATE_TABLE();
113     a7 := JTF_NUMBER_TABLE();
114     a8 := JTF_VARCHAR2_TABLE_100();
115     a9 := JTF_VARCHAR2_TABLE_200();
116     a10 := JTF_VARCHAR2_TABLE_200();
117     a11 := JTF_VARCHAR2_TABLE_200();
118     a12 := JTF_VARCHAR2_TABLE_200();
119     a13 := JTF_VARCHAR2_TABLE_200();
120     a14 := JTF_VARCHAR2_TABLE_200();
121     a15 := JTF_VARCHAR2_TABLE_200();
122     a16 := JTF_VARCHAR2_TABLE_200();
123     a17 := JTF_VARCHAR2_TABLE_200();
124     a18 := JTF_VARCHAR2_TABLE_200();
125     a19 := JTF_VARCHAR2_TABLE_200();
126     a20 := JTF_VARCHAR2_TABLE_200();
127     a21 := JTF_VARCHAR2_TABLE_200();
128     a22 := JTF_VARCHAR2_TABLE_200();
129     a23 := JTF_VARCHAR2_TABLE_200();
130   else
131       a0 := JTF_NUMBER_TABLE();
132       a1 := JTF_NUMBER_TABLE();
133       a2 := JTF_VARCHAR2_TABLE_100();
134       a3 := JTF_NUMBER_TABLE();
135       a4 := JTF_DATE_TABLE();
136       a5 := JTF_DATE_TABLE();
137       a6 := JTF_DATE_TABLE();
138       a7 := JTF_NUMBER_TABLE();
139       a8 := JTF_VARCHAR2_TABLE_100();
140       a9 := JTF_VARCHAR2_TABLE_200();
141       a10 := JTF_VARCHAR2_TABLE_200();
142       a11 := JTF_VARCHAR2_TABLE_200();
143       a12 := JTF_VARCHAR2_TABLE_200();
144       a13 := JTF_VARCHAR2_TABLE_200();
145       a14 := JTF_VARCHAR2_TABLE_200();
146       a15 := JTF_VARCHAR2_TABLE_200();
147       a16 := JTF_VARCHAR2_TABLE_200();
148       a17 := JTF_VARCHAR2_TABLE_200();
149       a18 := JTF_VARCHAR2_TABLE_200();
150       a19 := JTF_VARCHAR2_TABLE_200();
151       a20 := JTF_VARCHAR2_TABLE_200();
152       a21 := JTF_VARCHAR2_TABLE_200();
153       a22 := JTF_VARCHAR2_TABLE_200();
154       a23 := JTF_VARCHAR2_TABLE_200();
155       if t.count > 0 then
156         a0.extend(t.count);
157         a1.extend(t.count);
158         a2.extend(t.count);
159         a3.extend(t.count);
160         a4.extend(t.count);
161         a5.extend(t.count);
162         a6.extend(t.count);
163         a7.extend(t.count);
164         a8.extend(t.count);
165         a9.extend(t.count);
166         a10.extend(t.count);
167         a11.extend(t.count);
168         a12.extend(t.count);
169         a13.extend(t.count);
170         a14.extend(t.count);
171         a15.extend(t.count);
172         a16.extend(t.count);
173         a17.extend(t.count);
174         a18.extend(t.count);
175         a19.extend(t.count);
176         a20.extend(t.count);
177         a21.extend(t.count);
178         a22.extend(t.count);
179         a23.extend(t.count);
180         ddindx := t.first;
181         indx := 1;
182         while true loop
183           a0(indx) := t(ddindx).stage_id;
184           a1(indx) := t(ddindx).stage_num;
185           a2(indx) := t(ddindx).stage_name;
186           a3(indx) := t(ddindx).duration;
187           a4(indx) := t(ddindx).stage_planned_start_time;
188           a5(indx) := t(ddindx).stage_planned_end_time;
189           a6(indx) := t(ddindx).stage_actual_end_time;
190           a7(indx) := t(ddindx).object_version_number;
191           a8(indx) := t(ddindx).attribute_category;
192           a9(indx) := t(ddindx).attribute1;
193           a10(indx) := t(ddindx).attribute2;
194           a11(indx) := t(ddindx).attribute3;
195           a12(indx) := t(ddindx).attribute4;
196           a13(indx) := t(ddindx).attribute5;
197           a14(indx) := t(ddindx).attribute6;
198           a15(indx) := t(ddindx).attribute7;
199           a16(indx) := t(ddindx).attribute8;
200           a17(indx) := t(ddindx).attribute9;
201           a18(indx) := t(ddindx).attribute10;
202           a19(indx) := t(ddindx).attribute11;
203           a20(indx) := t(ddindx).attribute12;
204           a21(indx) := t(ddindx).attribute13;
205           a22(indx) := t(ddindx).attribute14;
206           a23(indx) := t(ddindx).attribute15;
207           indx := indx+1;
208           if t.last =ddindx
209             then exit;
210           end if;
211           ddindx := t.next(ddindx);
212         end loop;
213       end if;
214    end if;
215   end rosetta_table_copy_out_p2;
216 
217   procedure rosetta_table_copy_in_p3(t out nocopy ahl_vwp_visits_stages_pvt.visit_stages_times_tbl_type, a0 JTF_NUMBER_TABLE
218     , a1 JTF_NUMBER_TABLE
219     , a2 JTF_VARCHAR2_TABLE_100
220     , a3 JTF_NUMBER_TABLE
221     , a4 JTF_NUMBER_TABLE
222     , a5 JTF_NUMBER_TABLE
223     , a6 JTF_DATE_TABLE
224     , a7 JTF_DATE_TABLE
225     , a8 JTF_DATE_TABLE
226     ) as
227     ddindx binary_integer; indx binary_integer;
228   begin
229   if a0 is not null and a0.count > 0 then
230       if a0.count > 0 then
231         indx := a0.first;
232         ddindx := 1;
233         while true loop
234           t(ddindx).stage_id := a0(indx);
235           t(ddindx).stage_num := a1(indx);
236           t(ddindx).stage_name := a2(indx);
237           t(ddindx).duration := a3(indx);
238           t(ddindx).stage_start_hour := a4(indx);
239           t(ddindx).stage_end_hour := a5(indx);
240           t(ddindx).planned_start_time := rosetta_g_miss_date_in_map(a6(indx));
241           t(ddindx).planned_end_time := rosetta_g_miss_date_in_map(a7(indx));
242           t(ddindx).actual_end_time := rosetta_g_miss_date_in_map(a8(indx));
243           ddindx := ddindx+1;
244           if a0.last =indx
245             then exit;
246           end if;
247           indx := a0.next(indx);
248         end loop;
249       end if;
250    end if;
251   end rosetta_table_copy_in_p3;
252   procedure rosetta_table_copy_out_p3(t ahl_vwp_visits_stages_pvt.visit_stages_times_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
253     , a1 out nocopy JTF_NUMBER_TABLE
254     , a2 out nocopy JTF_VARCHAR2_TABLE_100
255     , a3 out nocopy JTF_NUMBER_TABLE
256     , a4 out nocopy JTF_NUMBER_TABLE
257     , a5 out nocopy JTF_NUMBER_TABLE
258     , a6 out nocopy JTF_DATE_TABLE
259     , a7 out nocopy JTF_DATE_TABLE
260     , a8 out nocopy JTF_DATE_TABLE
261     ) as
262     ddindx binary_integer; indx binary_integer;
263   begin
264   if t is null or t.count = 0 then
265     a0 := JTF_NUMBER_TABLE();
266     a1 := JTF_NUMBER_TABLE();
267     a2 := JTF_VARCHAR2_TABLE_100();
268     a3 := JTF_NUMBER_TABLE();
269     a4 := JTF_NUMBER_TABLE();
270     a5 := JTF_NUMBER_TABLE();
271     a6 := JTF_DATE_TABLE();
272     a7 := JTF_DATE_TABLE();
273     a8 := JTF_DATE_TABLE();
274   else
275       a0 := JTF_NUMBER_TABLE();
276       a1 := JTF_NUMBER_TABLE();
277       a2 := JTF_VARCHAR2_TABLE_100();
278       a3 := JTF_NUMBER_TABLE();
279       a4 := JTF_NUMBER_TABLE();
280       a5 := JTF_NUMBER_TABLE();
281       a6 := JTF_DATE_TABLE();
282       a7 := JTF_DATE_TABLE();
283       a8 := JTF_DATE_TABLE();
284       if t.count > 0 then
285         a0.extend(t.count);
286         a1.extend(t.count);
287         a2.extend(t.count);
288         a3.extend(t.count);
289         a4.extend(t.count);
290         a5.extend(t.count);
291         a6.extend(t.count);
292         a7.extend(t.count);
293         a8.extend(t.count);
294         ddindx := t.first;
295         indx := 1;
296         while true loop
297           a0(indx) := t(ddindx).stage_id;
298           a1(indx) := t(ddindx).stage_num;
299           a2(indx) := t(ddindx).stage_name;
300           a3(indx) := t(ddindx).duration;
301           a4(indx) := t(ddindx).stage_start_hour;
302           a5(indx) := t(ddindx).stage_end_hour;
303           a6(indx) := t(ddindx).planned_start_time;
304           a7(indx) := t(ddindx).planned_end_time;
305           a8(indx) := t(ddindx).actual_end_time;
306           indx := indx+1;
307           if t.last =ddindx
308             then exit;
309           end if;
310           ddindx := t.next(ddindx);
311         end loop;
312       end if;
313    end if;
314   end rosetta_table_copy_out_p3;
315 
316   procedure update_stages(p_api_version  NUMBER
317     , p_init_msg_list  VARCHAR2
318     , p_commit  VARCHAR2
319     , p_validation_level  NUMBER
323     , p6_a1 in out nocopy JTF_NUMBER_TABLE
320     , p_module_type  VARCHAR2
321     , p_visit_id  NUMBER
322     , p6_a0 in out nocopy JTF_NUMBER_TABLE
324     , p6_a2 in out nocopy JTF_VARCHAR2_TABLE_100
325     , p6_a3 in out nocopy JTF_NUMBER_TABLE
326     , p6_a4 in out nocopy JTF_DATE_TABLE
327     , p6_a5 in out nocopy JTF_DATE_TABLE
328     , p6_a6 in out nocopy JTF_DATE_TABLE
329     , p6_a7 in out nocopy JTF_NUMBER_TABLE
330     , p6_a8 in out nocopy JTF_VARCHAR2_TABLE_100
331     , p6_a9 in out nocopy JTF_VARCHAR2_TABLE_200
332     , p6_a10 in out nocopy JTF_VARCHAR2_TABLE_200
333     , p6_a11 in out nocopy JTF_VARCHAR2_TABLE_200
334     , p6_a12 in out nocopy JTF_VARCHAR2_TABLE_200
335     , p6_a13 in out nocopy JTF_VARCHAR2_TABLE_200
336     , p6_a14 in out nocopy JTF_VARCHAR2_TABLE_200
337     , p6_a15 in out nocopy JTF_VARCHAR2_TABLE_200
338     , p6_a16 in out nocopy JTF_VARCHAR2_TABLE_200
339     , p6_a17 in out nocopy JTF_VARCHAR2_TABLE_200
340     , p6_a18 in out nocopy JTF_VARCHAR2_TABLE_200
341     , p6_a19 in out nocopy JTF_VARCHAR2_TABLE_200
342     , p6_a20 in out nocopy JTF_VARCHAR2_TABLE_200
343     , p6_a21 in out nocopy JTF_VARCHAR2_TABLE_200
344     , p6_a22 in out nocopy JTF_VARCHAR2_TABLE_200
345     , p6_a23 in out nocopy JTF_VARCHAR2_TABLE_200
346     , x_return_status out nocopy  VARCHAR2
347     , x_msg_count out nocopy  NUMBER
348     , x_msg_data out nocopy  VARCHAR2
349   )
350 
351   as
352     ddp_x_stages_tbl ahl_vwp_visits_stages_pvt.visit_stages_tbl_type;
353     ddindx binary_integer; indx binary_integer;
354   begin
355 
356     -- copy data to the local IN or IN-OUT args, if any
357 
358 
359 
360 
361 
362 
363     ahl_vwp_visits_stages_pvt_w.rosetta_table_copy_in_p2(ddp_x_stages_tbl, p6_a0
364       , p6_a1
365       , p6_a2
366       , p6_a3
367       , p6_a4
368       , p6_a5
369       , p6_a6
370       , p6_a7
371       , p6_a8
372       , p6_a9
373       , p6_a10
374       , p6_a11
375       , p6_a12
376       , p6_a13
377       , p6_a14
378       , p6_a15
379       , p6_a16
380       , p6_a17
381       , p6_a18
382       , p6_a19
383       , p6_a20
384       , p6_a21
385       , p6_a22
386       , p6_a23
387       );
388 
389 
390 
391 
392     -- here's the delegated call to the old PL/SQL routine
393     ahl_vwp_visits_stages_pvt.update_stages(p_api_version,
394       p_init_msg_list,
395       p_commit,
396       p_validation_level,
397       p_module_type,
398       p_visit_id,
399       ddp_x_stages_tbl,
400       x_return_status,
401       x_msg_count,
402       x_msg_data);
403 
404     -- copy data back from the local variables to OUT or IN-OUT args, if any
405 
406 
407 
408 
409 
410 
411     ahl_vwp_visits_stages_pvt_w.rosetta_table_copy_out_p2(ddp_x_stages_tbl, p6_a0
412       , p6_a1
413       , p6_a2
414       , p6_a3
415       , p6_a4
416       , p6_a5
417       , p6_a6
418       , p6_a7
419       , p6_a8
420       , p6_a9
421       , p6_a10
422       , p6_a11
423       , p6_a12
424       , p6_a13
425       , p6_a14
426       , p6_a15
427       , p6_a16
428       , p6_a17
429       , p6_a18
430       , p6_a19
431       , p6_a20
432       , p6_a21
433       , p6_a22
434       , p6_a23
435       );
436 
437 
438 
439   end;
440 
441   procedure get_stages_details(p_api_version  NUMBER
442     , p_init_msg_list  VARCHAR2
443     , p_commit  VARCHAR2
444     , p_validation_level  NUMBER
445     , p_module_type  VARCHAR2
446     , p_visit_id  NUMBER
447     , p_start_row  NUMBER
448     , p_rows_per_page  NUMBER
449     , p8_a0 out nocopy JTF_NUMBER_TABLE
450     , p8_a1 out nocopy JTF_NUMBER_TABLE
451     , p8_a2 out nocopy JTF_VARCHAR2_TABLE_100
452     , p8_a3 out nocopy JTF_NUMBER_TABLE
453     , p8_a4 out nocopy JTF_DATE_TABLE
454     , p8_a5 out nocopy JTF_DATE_TABLE
455     , p8_a6 out nocopy JTF_DATE_TABLE
456     , p8_a7 out nocopy JTF_NUMBER_TABLE
457     , p8_a8 out nocopy JTF_VARCHAR2_TABLE_100
458     , p8_a9 out nocopy JTF_VARCHAR2_TABLE_200
459     , p8_a10 out nocopy JTF_VARCHAR2_TABLE_200
460     , p8_a11 out nocopy JTF_VARCHAR2_TABLE_200
461     , p8_a12 out nocopy JTF_VARCHAR2_TABLE_200
462     , p8_a13 out nocopy JTF_VARCHAR2_TABLE_200
463     , p8_a14 out nocopy JTF_VARCHAR2_TABLE_200
464     , p8_a15 out nocopy JTF_VARCHAR2_TABLE_200
465     , p8_a16 out nocopy JTF_VARCHAR2_TABLE_200
466     , p8_a17 out nocopy JTF_VARCHAR2_TABLE_200
467     , p8_a18 out nocopy JTF_VARCHAR2_TABLE_200
468     , p8_a19 out nocopy JTF_VARCHAR2_TABLE_200
469     , p8_a20 out nocopy JTF_VARCHAR2_TABLE_200
470     , p8_a21 out nocopy JTF_VARCHAR2_TABLE_200
471     , p8_a22 out nocopy JTF_VARCHAR2_TABLE_200
472     , p8_a23 out nocopy JTF_VARCHAR2_TABLE_200
473     , x_row_count out nocopy  NUMBER
474     , x_return_status out nocopy  VARCHAR2
475     , x_msg_count out nocopy  NUMBER
476     , x_msg_data out nocopy  VARCHAR2
477   )
478 
479   as
480     ddx_stages_tbl ahl_vwp_visits_stages_pvt.visit_stages_tbl_type;
481     ddindx binary_integer; indx binary_integer;
482   begin
483 
484     -- copy data to the local IN or IN-OUT args, if any
485 
486 
487 
488 
489 
490 
491 
492 
493 
494 
495 
496 
497 
498     -- here's the delegated call to the old PL/SQL routine
499     ahl_vwp_visits_stages_pvt.get_stages_details(p_api_version,
500       p_init_msg_list,
501       p_commit,
502       p_validation_level,
503       p_module_type,
504       p_visit_id,
505       p_start_row,
506       p_rows_per_page,
507       ddx_stages_tbl,
508       x_row_count,
509       x_return_status,
510       x_msg_count,
511       x_msg_data);
512 
513     -- copy data back from the local variables to OUT or IN-OUT args, if any
514 
515 
516 
517 
518 
519 
520 
521 
522     ahl_vwp_visits_stages_pvt_w.rosetta_table_copy_out_p2(ddx_stages_tbl, p8_a0
523       , p8_a1
524       , p8_a2
525       , p8_a3
526       , p8_a4
527       , p8_a5
528       , p8_a6
529       , p8_a7
530       , p8_a8
531       , p8_a9
532       , p8_a10
533       , p8_a11
534       , p8_a12
535       , p8_a13
536       , p8_a14
537       , p8_a15
538       , p8_a16
539       , p8_a17
540       , p8_a18
541       , p8_a19
542       , p8_a20
543       , p8_a21
544       , p8_a22
545       , p8_a23
546       );
547 
548 
549 
550 
551   end;
552 
553 end ahl_vwp_visits_stages_pvt_w;