DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_DMPERFORMANCE_PVT_W

Source


1 package body ams_dmperformance_pvt_w as
2   /* $Header: amswdpfb.pls 120.1 2005/06/15 23:58:39 appldev  $ */
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   function rosetta_g_miss_num_map(n number) return number as
7     a number := fnd_api.g_miss_num;
8     b number := 0-1962.0724;
9   begin
10     if n=a then return b; end if;
11     if n=b then return a; end if;
12     return n;
13   end;
14 
15   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
16   function rosetta_g_miss_date_in_map(d date) return date as
17   begin
18     if d = rosetta_g_mistake_date then return fnd_api.g_miss_date; end if;
19     return d;
20   end;
21 
22   procedure rosetta_table_copy_in_p3(t OUT NOCOPY ams_dmperformance_pvt.performance_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_DATE_TABLE
24     , a2 JTF_NUMBER_TABLE
25     , a3 JTF_DATE_TABLE
26     , a4 JTF_NUMBER_TABLE
27     , a5 JTF_NUMBER_TABLE
28     , a6 JTF_NUMBER_TABLE
29     , a7 JTF_VARCHAR2_TABLE_100
30     , a8 JTF_VARCHAR2_TABLE_100
31     , a9 JTF_NUMBER_TABLE
32     , a10 JTF_NUMBER_TABLE
33     , a11 JTF_NUMBER_TABLE
34     ) as
35     ddindx binary_integer; indx binary_integer;
36   begin
37   if a0 is not null and a0.count > 0 then
38       if a0.count > 0 then
39         indx := a0.first;
40         ddindx := 1;
41         while true loop
42           t(ddindx).performance_id := rosetta_g_miss_num_map(a0(indx));
43           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a1(indx));
44           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a2(indx));
45           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a3(indx));
46           t(ddindx).created_by := rosetta_g_miss_num_map(a4(indx));
47           t(ddindx).last_update_login := rosetta_g_miss_num_map(a5(indx));
48           t(ddindx).object_version_number := rosetta_g_miss_num_map(a6(indx));
49           t(ddindx).predicted_value := a7(indx);
50           t(ddindx).actual_value := a8(indx);
51           t(ddindx).evaluated_records := rosetta_g_miss_num_map(a9(indx));
52           t(ddindx).total_records_predicted := rosetta_g_miss_num_map(a10(indx));
53           t(ddindx).model_id := rosetta_g_miss_num_map(a11(indx));
54           ddindx := ddindx+1;
55           if a0.last =indx
56             then exit;
57           end if;
58           indx := a0.next(indx);
59         end loop;
60       end if;
61    end if;
62   end rosetta_table_copy_in_p3;
63   procedure rosetta_table_copy_out_p3(t ams_dmperformance_pvt.performance_tbl_type, a0 OUT NOCOPY JTF_NUMBER_TABLE
64     , a1 OUT NOCOPY JTF_DATE_TABLE
65     , a2 OUT NOCOPY JTF_NUMBER_TABLE
66     , a3 OUT NOCOPY JTF_DATE_TABLE
67     , a4 OUT NOCOPY JTF_NUMBER_TABLE
68     , a5 OUT NOCOPY JTF_NUMBER_TABLE
69     , a6 OUT NOCOPY JTF_NUMBER_TABLE
70     , a7 OUT NOCOPY JTF_VARCHAR2_TABLE_100
71     , a8 OUT NOCOPY JTF_VARCHAR2_TABLE_100
72     , a9 OUT NOCOPY JTF_NUMBER_TABLE
73     , a10 OUT NOCOPY JTF_NUMBER_TABLE
74     , a11 OUT NOCOPY JTF_NUMBER_TABLE
75     ) as
76     ddindx binary_integer; indx binary_integer;
77   begin
78   if t is null or t.count = 0 then
79     a0 := JTF_NUMBER_TABLE();
80     a1 := JTF_DATE_TABLE();
81     a2 := JTF_NUMBER_TABLE();
82     a3 := JTF_DATE_TABLE();
83     a4 := JTF_NUMBER_TABLE();
84     a5 := JTF_NUMBER_TABLE();
85     a6 := JTF_NUMBER_TABLE();
86     a7 := JTF_VARCHAR2_TABLE_100();
87     a8 := JTF_VARCHAR2_TABLE_100();
88     a9 := JTF_NUMBER_TABLE();
89     a10 := JTF_NUMBER_TABLE();
90     a11 := JTF_NUMBER_TABLE();
91   else
92       a0 := JTF_NUMBER_TABLE();
93       a1 := JTF_DATE_TABLE();
94       a2 := JTF_NUMBER_TABLE();
95       a3 := JTF_DATE_TABLE();
96       a4 := JTF_NUMBER_TABLE();
97       a5 := JTF_NUMBER_TABLE();
98       a6 := JTF_NUMBER_TABLE();
99       a7 := JTF_VARCHAR2_TABLE_100();
100       a8 := JTF_VARCHAR2_TABLE_100();
101       a9 := JTF_NUMBER_TABLE();
102       a10 := JTF_NUMBER_TABLE();
103       a11 := JTF_NUMBER_TABLE();
104       if t.count > 0 then
105         a0.extend(t.count);
106         a1.extend(t.count);
107         a2.extend(t.count);
108         a3.extend(t.count);
109         a4.extend(t.count);
110         a5.extend(t.count);
111         a6.extend(t.count);
112         a7.extend(t.count);
113         a8.extend(t.count);
114         a9.extend(t.count);
115         a10.extend(t.count);
116         a11.extend(t.count);
117         ddindx := t.first;
118         indx := 1;
119         while true loop
120           a0(indx) := rosetta_g_miss_num_map(t(ddindx).performance_id);
121           a1(indx) := t(ddindx).last_update_date;
122           a2(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
123           a3(indx) := t(ddindx).creation_date;
124           a4(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
125           a5(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
126           a6(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
127           a7(indx) := t(ddindx).predicted_value;
128           a8(indx) := t(ddindx).actual_value;
129           a9(indx) := rosetta_g_miss_num_map(t(ddindx).evaluated_records);
130           a10(indx) := rosetta_g_miss_num_map(t(ddindx).total_records_predicted);
131           a11(indx) := rosetta_g_miss_num_map(t(ddindx).model_id);
132           indx := indx+1;
133           if t.last =ddindx
134             then exit;
135           end if;
136           ddindx := t.next(ddindx);
137         end loop;
138       end if;
139    end if;
140   end rosetta_table_copy_out_p3;
141 
142   procedure create_performance(p_api_version_number  NUMBER
143     , p_init_msg_list  VARCHAR2
144     , p_commit  VARCHAR2
145     , p_validation_level  NUMBER
146     , x_return_status OUT NOCOPY  VARCHAR2
147     , x_msg_count OUT NOCOPY  NUMBER
148     , x_msg_data OUT NOCOPY  VARCHAR2
149     , x_performance_id OUT NOCOPY  NUMBER
150     , p7_a0  NUMBER := 0-1962.0724
151     , p7_a1  DATE := fnd_api.g_miss_date
152     , p7_a2  NUMBER := 0-1962.0724
153     , p7_a3  DATE := fnd_api.g_miss_date
154     , p7_a4  NUMBER := 0-1962.0724
155     , p7_a5  NUMBER := 0-1962.0724
156     , p7_a6  NUMBER := 0-1962.0724
157     , p7_a7  VARCHAR2 := fnd_api.g_miss_char
158     , p7_a8  VARCHAR2 := fnd_api.g_miss_char
159     , p7_a9  NUMBER := 0-1962.0724
160     , p7_a10  NUMBER := 0-1962.0724
161     , p7_a11  NUMBER := 0-1962.0724
162   )
163   as
164     ddp_performance_rec ams_dmperformance_pvt.performance_rec_type;
165     ddindx binary_integer; indx binary_integer;
166   begin
167 
168     -- copy data to the local IN or IN-OUT args, if any
169 
170 
171 
172 
173 
174 
175 
176     ddp_performance_rec.performance_id := rosetta_g_miss_num_map(p7_a0);
177     ddp_performance_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
178     ddp_performance_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
179     ddp_performance_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
180     ddp_performance_rec.created_by := rosetta_g_miss_num_map(p7_a4);
181     ddp_performance_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
182     ddp_performance_rec.object_version_number := rosetta_g_miss_num_map(p7_a6);
183     ddp_performance_rec.predicted_value := p7_a7;
184     ddp_performance_rec.actual_value := p7_a8;
185     ddp_performance_rec.evaluated_records := rosetta_g_miss_num_map(p7_a9);
186     ddp_performance_rec.total_records_predicted := rosetta_g_miss_num_map(p7_a10);
187     ddp_performance_rec.model_id := rosetta_g_miss_num_map(p7_a11);
188 
189 
190     -- here's the delegated call to the old PL/SQL routine
191     ams_dmperformance_pvt.create_performance(p_api_version_number,
192       p_init_msg_list,
193       p_commit,
194       p_validation_level,
195       x_return_status,
196       x_msg_count,
197       x_msg_data,
198       ddp_performance_rec,
199       x_performance_id);
200 
201     -- copy data back from the local OUT or IN-OUT args, if any
202 
203 
204 
205 
206 
207 
208 
209 
210   end;
211 
212   procedure update_performance(p_api_version_number  NUMBER
213     , p_init_msg_list  VARCHAR2
214     , p_commit  VARCHAR2
215     , p_validation_level  NUMBER
216     , x_return_status OUT NOCOPY  VARCHAR2
217     , x_msg_count OUT NOCOPY  NUMBER
218     , x_msg_data OUT NOCOPY  VARCHAR2
219     , x_object_version_number OUT NOCOPY  NUMBER
220     , p7_a0  NUMBER := 0-1962.0724
221     , p7_a1  DATE := fnd_api.g_miss_date
222     , p7_a2  NUMBER := 0-1962.0724
223     , p7_a3  DATE := fnd_api.g_miss_date
224     , p7_a4  NUMBER := 0-1962.0724
225     , p7_a5  NUMBER := 0-1962.0724
226     , p7_a6  NUMBER := 0-1962.0724
227     , p7_a7  VARCHAR2 := fnd_api.g_miss_char
228     , p7_a8  VARCHAR2 := fnd_api.g_miss_char
229     , p7_a9  NUMBER := 0-1962.0724
230     , p7_a10  NUMBER := 0-1962.0724
231     , p7_a11  NUMBER := 0-1962.0724
232   )
233   as
234     ddp_performance_rec ams_dmperformance_pvt.performance_rec_type;
235     ddindx binary_integer; indx binary_integer;
236   begin
237 
238     -- copy data to the local IN or IN-OUT args, if any
239 
240 
241 
242 
243 
244 
245 
246     ddp_performance_rec.performance_id := rosetta_g_miss_num_map(p7_a0);
247     ddp_performance_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
248     ddp_performance_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
249     ddp_performance_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
250     ddp_performance_rec.created_by := rosetta_g_miss_num_map(p7_a4);
251     ddp_performance_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
252     ddp_performance_rec.object_version_number := rosetta_g_miss_num_map(p7_a6);
253     ddp_performance_rec.predicted_value := p7_a7;
254     ddp_performance_rec.actual_value := p7_a8;
255     ddp_performance_rec.evaluated_records := rosetta_g_miss_num_map(p7_a9);
256     ddp_performance_rec.total_records_predicted := rosetta_g_miss_num_map(p7_a10);
257     ddp_performance_rec.model_id := rosetta_g_miss_num_map(p7_a11);
258 
259 
260     -- here's the delegated call to the old PL/SQL routine
261     ams_dmperformance_pvt.update_performance(p_api_version_number,
262       p_init_msg_list,
263       p_commit,
264       p_validation_level,
265       x_return_status,
266       x_msg_count,
267       x_msg_data,
268       ddp_performance_rec,
269       x_object_version_number);
270 
271     -- copy data back from the local OUT or IN-OUT args, if any
272 
273 
274 
275 
276 
277 
278 
279 
280   end;
281 
282   procedure validate_performance(p_api_version_number  NUMBER
283     , p_init_msg_list  VARCHAR2
284     , p_validation_level  NUMBER
285     , p_validation_mode  VARCHAR2
286     , x_return_status OUT NOCOPY  VARCHAR2
287     , x_msg_count OUT NOCOPY  NUMBER
288     , x_msg_data OUT NOCOPY  VARCHAR2
289     , p4_a0  NUMBER := 0-1962.0724
290     , p4_a1  DATE := fnd_api.g_miss_date
291     , p4_a2  NUMBER := 0-1962.0724
292     , p4_a3  DATE := fnd_api.g_miss_date
293     , p4_a4  NUMBER := 0-1962.0724
294     , p4_a5  NUMBER := 0-1962.0724
295     , p4_a6  NUMBER := 0-1962.0724
296     , p4_a7  VARCHAR2 := fnd_api.g_miss_char
297     , p4_a8  VARCHAR2 := fnd_api.g_miss_char
298     , p4_a9  NUMBER := 0-1962.0724
299     , p4_a10  NUMBER := 0-1962.0724
300     , p4_a11  NUMBER := 0-1962.0724
301   )
302   as
303     ddp_performance_rec ams_dmperformance_pvt.performance_rec_type;
304     ddindx binary_integer; indx binary_integer;
305   begin
306 
307     -- copy data to the local IN or IN-OUT args, if any
308 
309 
310 
311 
312     ddp_performance_rec.performance_id := rosetta_g_miss_num_map(p4_a0);
313     ddp_performance_rec.last_update_date := rosetta_g_miss_date_in_map(p4_a1);
314     ddp_performance_rec.last_updated_by := rosetta_g_miss_num_map(p4_a2);
315     ddp_performance_rec.creation_date := rosetta_g_miss_date_in_map(p4_a3);
316     ddp_performance_rec.created_by := rosetta_g_miss_num_map(p4_a4);
317     ddp_performance_rec.last_update_login := rosetta_g_miss_num_map(p4_a5);
318     ddp_performance_rec.object_version_number := rosetta_g_miss_num_map(p4_a6);
319     ddp_performance_rec.predicted_value := p4_a7;
320     ddp_performance_rec.actual_value := p4_a8;
321     ddp_performance_rec.evaluated_records := rosetta_g_miss_num_map(p4_a9);
322     ddp_performance_rec.total_records_predicted := rosetta_g_miss_num_map(p4_a10);
323     ddp_performance_rec.model_id := rosetta_g_miss_num_map(p4_a11);
324 
325 
326 
327 
328     -- here's the delegated call to the old PL/SQL routine
329     ams_dmperformance_pvt.validate_performance(p_api_version_number,
330       p_init_msg_list,
331       p_validation_level,
332       p_validation_mode,
333       ddp_performance_rec,
334       x_return_status,
335       x_msg_count,
336       x_msg_data);
337 
338     -- copy data back from the local OUT or IN-OUT args, if any
339 
340 
341 
342 
343 
344 
345 
346   end;
347 
348   procedure check_performance_items(p_validation_mode  VARCHAR2
349     , x_return_status OUT NOCOPY  VARCHAR2
350     , p0_a0  NUMBER := 0-1962.0724
351     , p0_a1  DATE := fnd_api.g_miss_date
352     , p0_a2  NUMBER := 0-1962.0724
353     , p0_a3  DATE := fnd_api.g_miss_date
354     , p0_a4  NUMBER := 0-1962.0724
355     , p0_a5  NUMBER := 0-1962.0724
356     , p0_a6  NUMBER := 0-1962.0724
357     , p0_a7  VARCHAR2 := fnd_api.g_miss_char
358     , p0_a8  VARCHAR2 := fnd_api.g_miss_char
359     , p0_a9  NUMBER := 0-1962.0724
360     , p0_a10  NUMBER := 0-1962.0724
361     , p0_a11  NUMBER := 0-1962.0724
362   )
363   as
364     ddp_performance_rec ams_dmperformance_pvt.performance_rec_type;
365     ddindx binary_integer; indx binary_integer;
366   begin
367 
368     -- copy data to the local IN or IN-OUT args, if any
369     ddp_performance_rec.performance_id := rosetta_g_miss_num_map(p0_a0);
370     ddp_performance_rec.last_update_date := rosetta_g_miss_date_in_map(p0_a1);
371     ddp_performance_rec.last_updated_by := rosetta_g_miss_num_map(p0_a2);
372     ddp_performance_rec.creation_date := rosetta_g_miss_date_in_map(p0_a3);
373     ddp_performance_rec.created_by := rosetta_g_miss_num_map(p0_a4);
374     ddp_performance_rec.last_update_login := rosetta_g_miss_num_map(p0_a5);
375     ddp_performance_rec.object_version_number := rosetta_g_miss_num_map(p0_a6);
376     ddp_performance_rec.predicted_value := p0_a7;
377     ddp_performance_rec.actual_value := p0_a8;
378     ddp_performance_rec.evaluated_records := rosetta_g_miss_num_map(p0_a9);
379     ddp_performance_rec.total_records_predicted := rosetta_g_miss_num_map(p0_a10);
380     ddp_performance_rec.model_id := rosetta_g_miss_num_map(p0_a11);
381 
382 
383 
384     -- here's the delegated call to the old PL/SQL routine
385     ams_dmperformance_pvt.check_performance_items(ddp_performance_rec,
386       p_validation_mode,
387       x_return_status);
388 
389     -- copy data back from the local OUT or IN-OUT args, if any
390 
391 
392   end;
393 
394   procedure validate_performance_rec(p_api_version_number  NUMBER
395     , p_init_msg_list  VARCHAR2
396     , x_return_status OUT NOCOPY  VARCHAR2
397     , x_msg_count OUT NOCOPY  NUMBER
398     , x_msg_data OUT NOCOPY  VARCHAR2
399     , p5_a0  NUMBER := 0-1962.0724
400     , p5_a1  DATE := fnd_api.g_miss_date
401     , p5_a2  NUMBER := 0-1962.0724
402     , p5_a3  DATE := fnd_api.g_miss_date
403     , p5_a4  NUMBER := 0-1962.0724
404     , p5_a5  NUMBER := 0-1962.0724
405     , p5_a6  NUMBER := 0-1962.0724
406     , p5_a7  VARCHAR2 := fnd_api.g_miss_char
407     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
408     , p5_a9  NUMBER := 0-1962.0724
409     , p5_a10  NUMBER := 0-1962.0724
410     , p5_a11  NUMBER := 0-1962.0724
411   )
412   as
413     ddp_performance_rec ams_dmperformance_pvt.performance_rec_type;
414     ddindx binary_integer; indx binary_integer;
415   begin
416 
417     -- copy data to the local IN or IN-OUT args, if any
418 
419 
420 
421 
422 
423     ddp_performance_rec.performance_id := rosetta_g_miss_num_map(p5_a0);
424     ddp_performance_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a1);
425     ddp_performance_rec.last_updated_by := rosetta_g_miss_num_map(p5_a2);
426     ddp_performance_rec.creation_date := rosetta_g_miss_date_in_map(p5_a3);
427     ddp_performance_rec.created_by := rosetta_g_miss_num_map(p5_a4);
428     ddp_performance_rec.last_update_login := rosetta_g_miss_num_map(p5_a5);
429     ddp_performance_rec.object_version_number := rosetta_g_miss_num_map(p5_a6);
430     ddp_performance_rec.predicted_value := p5_a7;
431     ddp_performance_rec.actual_value := p5_a8;
432     ddp_performance_rec.evaluated_records := rosetta_g_miss_num_map(p5_a9);
433     ddp_performance_rec.total_records_predicted := rosetta_g_miss_num_map(p5_a10);
434     ddp_performance_rec.model_id := rosetta_g_miss_num_map(p5_a11);
435 
436     -- here's the delegated call to the old PL/SQL routine
437     ams_dmperformance_pvt.validate_performance_rec(p_api_version_number,
438       p_init_msg_list,
439       x_return_status,
440       x_msg_count,
441       x_msg_data,
442       ddp_performance_rec);
443 
444     -- copy data back from the local OUT or IN-OUT args, if any
445 
446 
447 
448 
449 
450   end;
451 
452 end ams_dmperformance_pvt_w;