DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_UMP_SMRINSTANCE_PVT_W

Source


1 package body ahl_ump_smrinstance_pvt_w as
2   /* $Header: AHLSMRWB.pls 120.2.12010000.2 2008/12/27 18:03:47 sracha 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_p2(t out nocopy ahl_ump_smrinstance_pvt.results_mrinstance_tbl_type, a0 JTF_VARCHAR2_TABLE_100
17     , a1 JTF_VARCHAR2_TABLE_100
18     , a2 JTF_VARCHAR2_TABLE_100
19     , a3 JTF_VARCHAR2_TABLE_100
20     , a4 JTF_NUMBER_TABLE
21     , a5 JTF_VARCHAR2_TABLE_100
22     , a6 JTF_DATE_TABLE
23     , a7 JTF_DATE_TABLE
24     , a8 JTF_DATE_TABLE
25     , a9 JTF_VARCHAR2_TABLE_100
26     , a10 JTF_VARCHAR2_TABLE_100
27     , a11 JTF_VARCHAR2_TABLE_100
28     , a12 JTF_DATE_TABLE
29     , a13 JTF_VARCHAR2_TABLE_100
30     , a14 JTF_VARCHAR2_TABLE_100
31     , a15 JTF_VARCHAR2_TABLE_100
32     , a16 JTF_NUMBER_TABLE
33     , a17 JTF_VARCHAR2_TABLE_100
34     , a18 JTF_DATE_TABLE
35     , a19 JTF_VARCHAR2_TABLE_100
36     , a20 JTF_VARCHAR2_TABLE_100
37     , a21 JTF_NUMBER_TABLE
38     , a22 JTF_NUMBER_TABLE
39     , a23 JTF_NUMBER_TABLE
40     , a24 JTF_VARCHAR2_TABLE_100
41     , a25 JTF_NUMBER_TABLE
42     , a26 JTF_VARCHAR2_TABLE_4000
43     , a27 JTF_VARCHAR2_TABLE_100
44     , a28 JTF_VARCHAR2_TABLE_200
45     , a29 JTF_NUMBER_TABLE
46     , a30 JTF_NUMBER_TABLE
47     , a31 JTF_VARCHAR2_TABLE_100
48     , a32 JTF_VARCHAR2_TABLE_100
49     , a33 JTF_VARCHAR2_TABLE_100
50     , a34 JTF_VARCHAR2_TABLE_100
51     , a35 JTF_NUMBER_TABLE
52     ) as
53     ddindx binary_integer; indx binary_integer;
54   begin
55   if a0 is not null and a0.count > 0 then
56       if a0.count > 0 then
57         indx := a0.first;
58         ddindx := 1;
59         while true loop
60           t(ddindx).program_type_meaning := a0(indx);
61           t(ddindx).mr_title := a1(indx);
62           t(ddindx).part_number := a2(indx);
63           t(ddindx).serial_number := a3(indx);
64           t(ddindx).uom_remain := a4(indx);
65           t(ddindx).counter_name := a5(indx);
66           t(ddindx).earliest_due_date := rosetta_g_miss_date_in_map(a6(indx));
67           t(ddindx).due_date := rosetta_g_miss_date_in_map(a7(indx));
68           t(ddindx).latest_due_date := rosetta_g_miss_date_in_map(a8(indx));
69           t(ddindx).tolerance_flag := a9(indx);
70           t(ddindx).umr_status_code := a10(indx);
71           t(ddindx).umr_status_meaning := a11(indx);
72           t(ddindx).scheduled_date := rosetta_g_miss_date_in_map(a12(indx));
73           t(ddindx).visit_number := a13(indx);
74           t(ddindx).visit_status := a14(indx);
75           t(ddindx).assign_status := a15(indx);
76           t(ddindx).service_req_id := a16(indx);
77           t(ddindx).service_req_num := a17(indx);
78           t(ddindx).service_req_date := rosetta_g_miss_date_in_map(a18(indx));
79           t(ddindx).originator_title := a19(indx);
80           t(ddindx).dependant_title := a20(indx);
81           t(ddindx).unit_effectivity_id := a21(indx);
82           t(ddindx).mr_id := a22(indx);
83           t(ddindx).csi_item_instance_id := a23(indx);
84           t(ddindx).instance_number := a24(indx);
85           t(ddindx).mr_interval_id := a25(indx);
86           t(ddindx).unit_name := a26(indx);
87           t(ddindx).program_title := a27(indx);
88           t(ddindx).contract_number := a28(indx);
89           t(ddindx).defer_from_ue_id := a29(indx);
90           t(ddindx).defer_to_ue_id := a30(indx);
91           t(ddindx).unit_effectivity_type := a31(indx);
92           t(ddindx).object_type := a32(indx);
93           t(ddindx).manually_planned_flag := a33(indx);
94           t(ddindx).manually_planned_desc := a34(indx);
95           t(ddindx).visit_id := a35(indx);
96           ddindx := ddindx+1;
97           if a0.last =indx
98             then exit;
99           end if;
100           indx := a0.next(indx);
101         end loop;
102       end if;
103    end if;
104   end rosetta_table_copy_in_p2;
105   procedure rosetta_table_copy_out_p2(t ahl_ump_smrinstance_pvt.results_mrinstance_tbl_type, a0 out nocopy JTF_VARCHAR2_TABLE_100
106     , a1 out nocopy JTF_VARCHAR2_TABLE_100
107     , a2 out nocopy JTF_VARCHAR2_TABLE_100
108     , a3 out nocopy JTF_VARCHAR2_TABLE_100
109     , a4 out nocopy JTF_NUMBER_TABLE
110     , a5 out nocopy JTF_VARCHAR2_TABLE_100
111     , a6 out nocopy JTF_DATE_TABLE
112     , a7 out nocopy JTF_DATE_TABLE
113     , a8 out nocopy JTF_DATE_TABLE
114     , a9 out nocopy JTF_VARCHAR2_TABLE_100
115     , a10 out nocopy JTF_VARCHAR2_TABLE_100
116     , a11 out nocopy JTF_VARCHAR2_TABLE_100
117     , a12 out nocopy JTF_DATE_TABLE
118     , a13 out nocopy JTF_VARCHAR2_TABLE_100
119     , a14 out nocopy JTF_VARCHAR2_TABLE_100
120     , a15 out nocopy JTF_VARCHAR2_TABLE_100
121     , a16 out nocopy JTF_NUMBER_TABLE
122     , a17 out nocopy JTF_VARCHAR2_TABLE_100
123     , a18 out nocopy JTF_DATE_TABLE
124     , a19 out nocopy JTF_VARCHAR2_TABLE_100
125     , a20 out nocopy JTF_VARCHAR2_TABLE_100
126     , a21 out nocopy JTF_NUMBER_TABLE
127     , a22 out nocopy JTF_NUMBER_TABLE
128     , a23 out nocopy JTF_NUMBER_TABLE
129     , a24 out nocopy JTF_VARCHAR2_TABLE_100
130     , a25 out nocopy JTF_NUMBER_TABLE
131     , a26 out nocopy JTF_VARCHAR2_TABLE_4000
132     , a27 out nocopy JTF_VARCHAR2_TABLE_100
133     , a28 out nocopy JTF_VARCHAR2_TABLE_200
134     , a29 out nocopy JTF_NUMBER_TABLE
135     , a30 out nocopy JTF_NUMBER_TABLE
136     , a31 out nocopy JTF_VARCHAR2_TABLE_100
137     , a32 out nocopy JTF_VARCHAR2_TABLE_100
138     , a33 out nocopy JTF_VARCHAR2_TABLE_100
139     , a34 out nocopy JTF_VARCHAR2_TABLE_100
140     , a35 out nocopy JTF_NUMBER_TABLE
141     ) as
142     ddindx binary_integer; indx binary_integer;
143   begin
144   if t is null or t.count = 0 then
145     a0 := JTF_VARCHAR2_TABLE_100();
146     a1 := JTF_VARCHAR2_TABLE_100();
147     a2 := JTF_VARCHAR2_TABLE_100();
148     a3 := JTF_VARCHAR2_TABLE_100();
149     a4 := JTF_NUMBER_TABLE();
150     a5 := JTF_VARCHAR2_TABLE_100();
151     a6 := JTF_DATE_TABLE();
152     a7 := JTF_DATE_TABLE();
153     a8 := JTF_DATE_TABLE();
154     a9 := JTF_VARCHAR2_TABLE_100();
155     a10 := JTF_VARCHAR2_TABLE_100();
156     a11 := JTF_VARCHAR2_TABLE_100();
157     a12 := JTF_DATE_TABLE();
158     a13 := JTF_VARCHAR2_TABLE_100();
159     a14 := JTF_VARCHAR2_TABLE_100();
160     a15 := JTF_VARCHAR2_TABLE_100();
161     a16 := JTF_NUMBER_TABLE();
162     a17 := JTF_VARCHAR2_TABLE_100();
163     a18 := JTF_DATE_TABLE();
164     a19 := JTF_VARCHAR2_TABLE_100();
165     a20 := JTF_VARCHAR2_TABLE_100();
166     a21 := JTF_NUMBER_TABLE();
167     a22 := JTF_NUMBER_TABLE();
168     a23 := JTF_NUMBER_TABLE();
169     a24 := JTF_VARCHAR2_TABLE_100();
170     a25 := JTF_NUMBER_TABLE();
171     a26 := JTF_VARCHAR2_TABLE_4000();
172     a27 := JTF_VARCHAR2_TABLE_100();
173     a28 := JTF_VARCHAR2_TABLE_200();
174     a29 := JTF_NUMBER_TABLE();
175     a30 := JTF_NUMBER_TABLE();
176     a31 := JTF_VARCHAR2_TABLE_100();
177     a32 := JTF_VARCHAR2_TABLE_100();
178     a33 := JTF_VARCHAR2_TABLE_100();
179     a34 := JTF_VARCHAR2_TABLE_100();
180     a35 := JTF_NUMBER_TABLE();
181   else
182       a0 := JTF_VARCHAR2_TABLE_100();
183       a1 := JTF_VARCHAR2_TABLE_100();
184       a2 := JTF_VARCHAR2_TABLE_100();
185       a3 := JTF_VARCHAR2_TABLE_100();
186       a4 := JTF_NUMBER_TABLE();
187       a5 := JTF_VARCHAR2_TABLE_100();
188       a6 := JTF_DATE_TABLE();
189       a7 := JTF_DATE_TABLE();
190       a8 := JTF_DATE_TABLE();
191       a9 := JTF_VARCHAR2_TABLE_100();
192       a10 := JTF_VARCHAR2_TABLE_100();
193       a11 := JTF_VARCHAR2_TABLE_100();
194       a12 := JTF_DATE_TABLE();
195       a13 := JTF_VARCHAR2_TABLE_100();
196       a14 := JTF_VARCHAR2_TABLE_100();
197       a15 := JTF_VARCHAR2_TABLE_100();
198       a16 := JTF_NUMBER_TABLE();
199       a17 := JTF_VARCHAR2_TABLE_100();
200       a18 := JTF_DATE_TABLE();
201       a19 := JTF_VARCHAR2_TABLE_100();
202       a20 := JTF_VARCHAR2_TABLE_100();
203       a21 := JTF_NUMBER_TABLE();
204       a22 := JTF_NUMBER_TABLE();
205       a23 := JTF_NUMBER_TABLE();
206       a24 := JTF_VARCHAR2_TABLE_100();
207       a25 := JTF_NUMBER_TABLE();
208       a26 := JTF_VARCHAR2_TABLE_4000();
209       a27 := JTF_VARCHAR2_TABLE_100();
210       a28 := JTF_VARCHAR2_TABLE_200();
211       a29 := JTF_NUMBER_TABLE();
212       a30 := JTF_NUMBER_TABLE();
213       a31 := JTF_VARCHAR2_TABLE_100();
214       a32 := JTF_VARCHAR2_TABLE_100();
215       a33 := JTF_VARCHAR2_TABLE_100();
216       a34 := JTF_VARCHAR2_TABLE_100();
217       a35 := JTF_NUMBER_TABLE();
218       if t.count > 0 then
219         a0.extend(t.count);
220         a1.extend(t.count);
221         a2.extend(t.count);
222         a3.extend(t.count);
223         a4.extend(t.count);
224         a5.extend(t.count);
225         a6.extend(t.count);
226         a7.extend(t.count);
227         a8.extend(t.count);
228         a9.extend(t.count);
229         a10.extend(t.count);
230         a11.extend(t.count);
231         a12.extend(t.count);
232         a13.extend(t.count);
233         a14.extend(t.count);
234         a15.extend(t.count);
235         a16.extend(t.count);
236         a17.extend(t.count);
237         a18.extend(t.count);
238         a19.extend(t.count);
239         a20.extend(t.count);
240         a21.extend(t.count);
241         a22.extend(t.count);
242         a23.extend(t.count);
243         a24.extend(t.count);
244         a25.extend(t.count);
245         a26.extend(t.count);
246         a27.extend(t.count);
247         a28.extend(t.count);
248         a29.extend(t.count);
249         a30.extend(t.count);
250         a31.extend(t.count);
251         a32.extend(t.count);
252         a33.extend(t.count);
253         a34.extend(t.count);
254         a35.extend(t.count);
255         ddindx := t.first;
256         indx := 1;
257         while true loop
258           a0(indx) := t(ddindx).program_type_meaning;
259           a1(indx) := t(ddindx).mr_title;
260           a2(indx) := t(ddindx).part_number;
261           a3(indx) := t(ddindx).serial_number;
262           a4(indx) := t(ddindx).uom_remain;
263           a5(indx) := t(ddindx).counter_name;
264           a6(indx) := t(ddindx).earliest_due_date;
265           a7(indx) := t(ddindx).due_date;
266           a8(indx) := t(ddindx).latest_due_date;
267           a9(indx) := t(ddindx).tolerance_flag;
268           a10(indx) := t(ddindx).umr_status_code;
269           a11(indx) := t(ddindx).umr_status_meaning;
270           a12(indx) := t(ddindx).scheduled_date;
271           a13(indx) := t(ddindx).visit_number;
272           a14(indx) := t(ddindx).visit_status;
273           a15(indx) := t(ddindx).assign_status;
274           a16(indx) := t(ddindx).service_req_id;
275           a17(indx) := t(ddindx).service_req_num;
276           a18(indx) := t(ddindx).service_req_date;
277           a19(indx) := t(ddindx).originator_title;
278           a20(indx) := t(ddindx).dependant_title;
279           a21(indx) := t(ddindx).unit_effectivity_id;
280           a22(indx) := t(ddindx).mr_id;
281           a23(indx) := t(ddindx).csi_item_instance_id;
282           a24(indx) := t(ddindx).instance_number;
283           a25(indx) := t(ddindx).mr_interval_id;
284           a26(indx) := t(ddindx).unit_name;
285           a27(indx) := t(ddindx).program_title;
286           a28(indx) := t(ddindx).contract_number;
287           a29(indx) := t(ddindx).defer_from_ue_id;
288           a30(indx) := t(ddindx).defer_to_ue_id;
289           a31(indx) := t(ddindx).unit_effectivity_type;
290           a32(indx) := t(ddindx).object_type;
291           a33(indx) := t(ddindx).manually_planned_flag;
292           a34(indx) := t(ddindx).manually_planned_desc;
293           a35(indx) := t(ddindx).visit_id;
294           indx := indx+1;
295           if t.last =ddindx
296             then exit;
297           end if;
298           ddindx := t.next(ddindx);
299         end loop;
300       end if;
301    end if;
302   end rosetta_table_copy_out_p2;
303 
304   procedure search_mr_instances(p_api_version  NUMBER
305     , p_init_msg_list  VARCHAR2
306     , p_commit  VARCHAR2
307     , p_validation_level  NUMBER
308     , p_default  VARCHAR2
309     , p_module_type  VARCHAR2
310     , p_start_row  NUMBER
311     , p_rows_per_page  NUMBER
312     , p8_a0  VARCHAR2
313     , p8_a1  VARCHAR2
314     , p8_a2  VARCHAR2
315     , p8_a3  VARCHAR2
316     , p8_a4  VARCHAR2
317     , p8_a5  VARCHAR2
318     , p8_a6  VARCHAR2
319     , p8_a7  DATE
320     , p8_a8  DATE
321     , p8_a9  VARCHAR2
322     , p8_a10  VARCHAR2
323     , p8_a11  VARCHAR2
324     , p8_a12  VARCHAR2
325     , p8_a13  VARCHAR2
326     , p8_a14  NUMBER
327     , p8_a15  VARCHAR2
328     , p8_a16  NUMBER
329     , p8_a17  VARCHAR2
330     , p8_a18  VARCHAR2
331     , p8_a19  VARCHAR2
332     , p8_a20  VARCHAR2
333     , p8_a21  VARCHAR2
334     , p8_a22  VARCHAR2
335     , p8_a23  VARCHAR2
336     , p8_a24  NUMBER
337     , p8_a25  VARCHAR2
338     , p9_a0 out nocopy JTF_VARCHAR2_TABLE_100
339     , p9_a1 out nocopy JTF_VARCHAR2_TABLE_100
340     , p9_a2 out nocopy JTF_VARCHAR2_TABLE_100
341     , p9_a3 out nocopy JTF_VARCHAR2_TABLE_100
342     , p9_a4 out nocopy JTF_NUMBER_TABLE
343     , p9_a5 out nocopy JTF_VARCHAR2_TABLE_100
344     , p9_a6 out nocopy JTF_DATE_TABLE
345     , p9_a7 out nocopy JTF_DATE_TABLE
346     , p9_a8 out nocopy JTF_DATE_TABLE
347     , p9_a9 out nocopy JTF_VARCHAR2_TABLE_100
348     , p9_a10 out nocopy JTF_VARCHAR2_TABLE_100
349     , p9_a11 out nocopy JTF_VARCHAR2_TABLE_100
350     , p9_a12 out nocopy JTF_DATE_TABLE
351     , p9_a13 out nocopy JTF_VARCHAR2_TABLE_100
352     , p9_a14 out nocopy JTF_VARCHAR2_TABLE_100
353     , p9_a15 out nocopy JTF_VARCHAR2_TABLE_100
354     , p9_a16 out nocopy JTF_NUMBER_TABLE
355     , p9_a17 out nocopy JTF_VARCHAR2_TABLE_100
356     , p9_a18 out nocopy JTF_DATE_TABLE
357     , p9_a19 out nocopy JTF_VARCHAR2_TABLE_100
358     , p9_a20 out nocopy JTF_VARCHAR2_TABLE_100
359     , p9_a21 out nocopy JTF_NUMBER_TABLE
360     , p9_a22 out nocopy JTF_NUMBER_TABLE
361     , p9_a23 out nocopy JTF_NUMBER_TABLE
362     , p9_a24 out nocopy JTF_VARCHAR2_TABLE_100
363     , p9_a25 out nocopy JTF_NUMBER_TABLE
364     , p9_a26 out nocopy JTF_VARCHAR2_TABLE_4000
365     , p9_a27 out nocopy JTF_VARCHAR2_TABLE_100
366     , p9_a28 out nocopy JTF_VARCHAR2_TABLE_200
367     , p9_a29 out nocopy JTF_NUMBER_TABLE
368     , p9_a30 out nocopy JTF_NUMBER_TABLE
369     , p9_a31 out nocopy JTF_VARCHAR2_TABLE_100
370     , p9_a32 out nocopy JTF_VARCHAR2_TABLE_100
371     , p9_a33 out nocopy JTF_VARCHAR2_TABLE_100
372     , p9_a34 out nocopy JTF_VARCHAR2_TABLE_100
373     , p9_a35 out nocopy JTF_NUMBER_TABLE
374     , x_results_count out nocopy  NUMBER
375     , x_return_status out nocopy  VARCHAR2
376     , x_msg_count out nocopy  NUMBER
377     , x_msg_data out nocopy  VARCHAR2
378   )
379 
380   as
381     ddp_search_mr_instance_rec ahl_ump_smrinstance_pvt.search_mrinstance_rec_type;
382     ddx_results_mr_instance_tbl ahl_ump_smrinstance_pvt.results_mrinstance_tbl_type;
383     ddindx binary_integer; indx binary_integer;
384   begin
385 
386     -- copy data to the local IN or IN-OUT args, if any
387 
388 
389 
390 
391 
392 
393 
394 
395     ddp_search_mr_instance_rec.unit_name := p8_a0;
396     ddp_search_mr_instance_rec.part_number := p8_a1;
397     ddp_search_mr_instance_rec.serial_number := p8_a2;
398     ddp_search_mr_instance_rec.sort_by := p8_a3;
399     ddp_search_mr_instance_rec.mr_status := p8_a4;
400     ddp_search_mr_instance_rec.mr_title := p8_a5;
401     ddp_search_mr_instance_rec.program_type := p8_a6;
402     ddp_search_mr_instance_rec.due_from := rosetta_g_miss_date_in_map(p8_a7);
403     ddp_search_mr_instance_rec.due_to := rosetta_g_miss_date_in_map(p8_a8);
404     ddp_search_mr_instance_rec.show_tolerance := p8_a9;
405     ddp_search_mr_instance_rec.components_flag := p8_a10;
406     ddp_search_mr_instance_rec.repetitive_flag := p8_a11;
407     ddp_search_mr_instance_rec.contract_number := p8_a12;
408     ddp_search_mr_instance_rec.contract_modifier := p8_a13;
409     ddp_search_mr_instance_rec.service_line_id := p8_a14;
410     ddp_search_mr_instance_rec.service_line_num := p8_a15;
411     ddp_search_mr_instance_rec.program_id := p8_a16;
412     ddp_search_mr_instance_rec.program_title := p8_a17;
413     ddp_search_mr_instance_rec.show_groupmr := p8_a18;
414     ddp_search_mr_instance_rec.object_type := p8_a19;
415     ddp_search_mr_instance_rec.search_for_type := p8_a20;
416     ddp_search_mr_instance_rec.visit_number := p8_a21;
417     ddp_search_mr_instance_rec.visit_org_name := p8_a22;
418     ddp_search_mr_instance_rec.visit_dept_name := p8_a23;
419     ddp_search_mr_instance_rec.incident_type_id := p8_a24;
420     ddp_search_mr_instance_rec.service_req_num := p8_a25;
421 
422 
423 
424 
425 
426 
427     -- here's the delegated call to the old PL/SQL routine
428     ahl_ump_smrinstance_pvt.search_mr_instances(p_api_version,
429       p_init_msg_list,
430       p_commit,
431       p_validation_level,
432       p_default,
433       p_module_type,
434       p_start_row,
435       p_rows_per_page,
436       ddp_search_mr_instance_rec,
437       ddx_results_mr_instance_tbl,
438       x_results_count,
439       x_return_status,
440       x_msg_count,
441       x_msg_data);
442 
443     -- copy data back from the local variables to OUT or IN-OUT args, if any
444 
445 
446 
447 
448 
449 
450 
451 
452 
453     ahl_ump_smrinstance_pvt_w.rosetta_table_copy_out_p2(ddx_results_mr_instance_tbl, p9_a0
454       , p9_a1
455       , p9_a2
456       , p9_a3
457       , p9_a4
458       , p9_a5
459       , p9_a6
460       , p9_a7
461       , p9_a8
462       , p9_a9
463       , p9_a10
464       , p9_a11
465       , p9_a12
466       , p9_a13
467       , p9_a14
468       , p9_a15
469       , p9_a16
470       , p9_a17
471       , p9_a18
472       , p9_a19
473       , p9_a20
474       , p9_a21
475       , p9_a22
476       , p9_a23
477       , p9_a24
478       , p9_a25
479       , p9_a26
480       , p9_a27
481       , p9_a28
482       , p9_a29
483       , p9_a30
484       , p9_a31
485       , p9_a32
486       , p9_a33
487       , p9_a34
488       , p9_a35
489       );
490 
491 
492 
493 
494   end;
495 
496 end ahl_ump_smrinstance_pvt_w;