DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_DMLIFT_PVT_W

Source


1 package body ams_dmlift_pvt_w as
2   /* $Header: amswdlfb.pls 120.1 2005/06/15 23:58:23 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_dmlift_pvt.lift_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_NUMBER_TABLE
30     , a8 JTF_NUMBER_TABLE
31     , a9 JTF_NUMBER_TABLE
32     , a10 JTF_NUMBER_TABLE
33     , a11 JTF_NUMBER_TABLE
34     , a12 JTF_NUMBER_TABLE
35     , a13 JTF_NUMBER_TABLE
36     , a14 JTF_NUMBER_TABLE
37     , a15 JTF_NUMBER_TABLE
38     , a16 JTF_NUMBER_TABLE
39     , a17 JTF_NUMBER_TABLE
40     , a18 JTF_NUMBER_TABLE
41     ) as
42     ddindx binary_integer; indx binary_integer;
43   begin
44   if a0 is not null and a0.count > 0 then
45       if a0.count > 0 then
46         indx := a0.first;
47         ddindx := 1;
48         while true loop
49           t(ddindx).lift_id := rosetta_g_miss_num_map(a0(indx));
50           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a1(indx));
51           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a2(indx));
52           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a3(indx));
53           t(ddindx).created_by := rosetta_g_miss_num_map(a4(indx));
54           t(ddindx).last_update_login := rosetta_g_miss_num_map(a5(indx));
55           t(ddindx).object_version_number := rosetta_g_miss_num_map(a6(indx));
56           t(ddindx).model_id := rosetta_g_miss_num_map(a7(indx));
57           t(ddindx).quantile := rosetta_g_miss_num_map(a8(indx));
58           t(ddindx).lift := rosetta_g_miss_num_map(a9(indx));
59           t(ddindx).targets := rosetta_g_miss_num_map(a10(indx));
60           t(ddindx).non_targets := rosetta_g_miss_num_map(a11(indx));
61           t(ddindx).targets_cumm := rosetta_g_miss_num_map(a12(indx));
62           t(ddindx).target_density_cumm := rosetta_g_miss_num_map(a13(indx));
63           t(ddindx).target_density := rosetta_g_miss_num_map(a14(indx));
64           t(ddindx).margin := rosetta_g_miss_num_map(a15(indx));
65           t(ddindx).roi := rosetta_g_miss_num_map(a16(indx));
66           t(ddindx).target_confidence := rosetta_g_miss_num_map(a17(indx));
67           t(ddindx).non_target_confidence := rosetta_g_miss_num_map(a18(indx));
68           ddindx := ddindx+1;
69           if a0.last =indx
70             then exit;
71           end if;
72           indx := a0.next(indx);
73         end loop;
74       end if;
75    end if;
76   end rosetta_table_copy_in_p3;
77   procedure rosetta_table_copy_out_p3(t ams_dmlift_pvt.lift_tbl_type, a0 OUT NOCOPY JTF_NUMBER_TABLE
78     , a1 OUT NOCOPY JTF_DATE_TABLE
79     , a2 OUT NOCOPY JTF_NUMBER_TABLE
80     , a3 OUT NOCOPY JTF_DATE_TABLE
81     , a4 OUT NOCOPY JTF_NUMBER_TABLE
82     , a5 OUT NOCOPY JTF_NUMBER_TABLE
83     , a6 OUT NOCOPY JTF_NUMBER_TABLE
84     , a7 OUT NOCOPY JTF_NUMBER_TABLE
85     , a8 OUT NOCOPY JTF_NUMBER_TABLE
86     , a9 OUT NOCOPY JTF_NUMBER_TABLE
87     , a10 OUT NOCOPY JTF_NUMBER_TABLE
88     , a11 OUT NOCOPY JTF_NUMBER_TABLE
89     , a12 OUT NOCOPY JTF_NUMBER_TABLE
90     , a13 OUT NOCOPY JTF_NUMBER_TABLE
91     , a14 OUT NOCOPY JTF_NUMBER_TABLE
92     , a15 OUT NOCOPY JTF_NUMBER_TABLE
93     , a16 OUT NOCOPY JTF_NUMBER_TABLE
94     , a17 OUT NOCOPY JTF_NUMBER_TABLE
95     , a18 OUT NOCOPY JTF_NUMBER_TABLE
96     ) as
97     ddindx binary_integer; indx binary_integer;
98   begin
99   if t is null or t.count = 0 then
100     a0 := JTF_NUMBER_TABLE();
101     a1 := JTF_DATE_TABLE();
102     a2 := JTF_NUMBER_TABLE();
103     a3 := JTF_DATE_TABLE();
104     a4 := JTF_NUMBER_TABLE();
105     a5 := JTF_NUMBER_TABLE();
106     a6 := JTF_NUMBER_TABLE();
107     a7 := JTF_NUMBER_TABLE();
108     a8 := JTF_NUMBER_TABLE();
109     a9 := JTF_NUMBER_TABLE();
110     a10 := JTF_NUMBER_TABLE();
111     a11 := JTF_NUMBER_TABLE();
112     a12 := JTF_NUMBER_TABLE();
113     a13 := JTF_NUMBER_TABLE();
114     a14 := JTF_NUMBER_TABLE();
115     a15 := JTF_NUMBER_TABLE();
116     a16 := JTF_NUMBER_TABLE();
117     a17 := JTF_NUMBER_TABLE();
118     a18 := JTF_NUMBER_TABLE();
119   else
120       a0 := JTF_NUMBER_TABLE();
121       a1 := JTF_DATE_TABLE();
122       a2 := JTF_NUMBER_TABLE();
123       a3 := JTF_DATE_TABLE();
124       a4 := JTF_NUMBER_TABLE();
125       a5 := JTF_NUMBER_TABLE();
126       a6 := JTF_NUMBER_TABLE();
127       a7 := JTF_NUMBER_TABLE();
128       a8 := JTF_NUMBER_TABLE();
129       a9 := JTF_NUMBER_TABLE();
130       a10 := JTF_NUMBER_TABLE();
131       a11 := JTF_NUMBER_TABLE();
132       a12 := JTF_NUMBER_TABLE();
133       a13 := JTF_NUMBER_TABLE();
134       a14 := JTF_NUMBER_TABLE();
135       a15 := JTF_NUMBER_TABLE();
136       a16 := JTF_NUMBER_TABLE();
137       a17 := JTF_NUMBER_TABLE();
138       a18 := JTF_NUMBER_TABLE();
139       if t.count > 0 then
140         a0.extend(t.count);
141         a1.extend(t.count);
142         a2.extend(t.count);
143         a3.extend(t.count);
144         a4.extend(t.count);
145         a5.extend(t.count);
146         a6.extend(t.count);
147         a7.extend(t.count);
148         a8.extend(t.count);
149         a9.extend(t.count);
150         a10.extend(t.count);
151         a11.extend(t.count);
152         a12.extend(t.count);
153         a13.extend(t.count);
154         a14.extend(t.count);
155         a15.extend(t.count);
156         a16.extend(t.count);
157         a17.extend(t.count);
158         a18.extend(t.count);
159         ddindx := t.first;
160         indx := 1;
161         while true loop
162           a0(indx) := rosetta_g_miss_num_map(t(ddindx).lift_id);
163           a1(indx) := t(ddindx).last_update_date;
164           a2(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
165           a3(indx) := t(ddindx).creation_date;
166           a4(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
167           a5(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
168           a6(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
169           a7(indx) := rosetta_g_miss_num_map(t(ddindx).model_id);
170           a8(indx) := rosetta_g_miss_num_map(t(ddindx).quantile);
171           a9(indx) := rosetta_g_miss_num_map(t(ddindx).lift);
172           a10(indx) := rosetta_g_miss_num_map(t(ddindx).targets);
173           a11(indx) := rosetta_g_miss_num_map(t(ddindx).non_targets);
174           a12(indx) := rosetta_g_miss_num_map(t(ddindx).targets_cumm);
175           a13(indx) := rosetta_g_miss_num_map(t(ddindx).target_density_cumm);
176           a14(indx) := rosetta_g_miss_num_map(t(ddindx).target_density);
177           a15(indx) := rosetta_g_miss_num_map(t(ddindx).margin);
178           a16(indx) := rosetta_g_miss_num_map(t(ddindx).roi);
179           a17(indx) := rosetta_g_miss_num_map(t(ddindx).target_confidence);
180           a18(indx) := rosetta_g_miss_num_map(t(ddindx).non_target_confidence);
181           indx := indx+1;
182           if t.last =ddindx
183             then exit;
184           end if;
185           ddindx := t.next(ddindx);
186         end loop;
187       end if;
188    end if;
189   end rosetta_table_copy_out_p3;
190 
191   procedure check_lift_items(p_validation_mode  VARCHAR2
192     , x_return_status OUT NOCOPY  VARCHAR2
193     , p0_a0  NUMBER := 0-1962.0724
194     , p0_a1  DATE := fnd_api.g_miss_date
195     , p0_a2  NUMBER := 0-1962.0724
196     , p0_a3  DATE := fnd_api.g_miss_date
197     , p0_a4  NUMBER := 0-1962.0724
198     , p0_a5  NUMBER := 0-1962.0724
199     , p0_a6  NUMBER := 0-1962.0724
200     , p0_a7  NUMBER := 0-1962.0724
201     , p0_a8  NUMBER := 0-1962.0724
202     , p0_a9  NUMBER := 0-1962.0724
203     , p0_a10  NUMBER := 0-1962.0724
204     , p0_a11  NUMBER := 0-1962.0724
205     , p0_a12  NUMBER := 0-1962.0724
206     , p0_a13  NUMBER := 0-1962.0724
207     , p0_a14  NUMBER := 0-1962.0724
208     , p0_a15  NUMBER := 0-1962.0724
209     , p0_a16  NUMBER := 0-1962.0724
210     , p0_a17  NUMBER := 0-1962.0724
211     , p0_a18  NUMBER := 0-1962.0724
212   )
213   as
214     ddp_lift_rec ams_dmlift_pvt.lift_rec_type;
215     ddindx binary_integer; indx binary_integer;
216   begin
217 
218     -- copy data to the local IN or IN-OUT args, if any
219     ddp_lift_rec.lift_id := rosetta_g_miss_num_map(p0_a0);
220     ddp_lift_rec.last_update_date := rosetta_g_miss_date_in_map(p0_a1);
221     ddp_lift_rec.last_updated_by := rosetta_g_miss_num_map(p0_a2);
222     ddp_lift_rec.creation_date := rosetta_g_miss_date_in_map(p0_a3);
223     ddp_lift_rec.created_by := rosetta_g_miss_num_map(p0_a4);
224     ddp_lift_rec.last_update_login := rosetta_g_miss_num_map(p0_a5);
225     ddp_lift_rec.object_version_number := rosetta_g_miss_num_map(p0_a6);
226     ddp_lift_rec.model_id := rosetta_g_miss_num_map(p0_a7);
227     ddp_lift_rec.quantile := rosetta_g_miss_num_map(p0_a8);
228     ddp_lift_rec.lift := rosetta_g_miss_num_map(p0_a9);
229     ddp_lift_rec.targets := rosetta_g_miss_num_map(p0_a10);
230     ddp_lift_rec.non_targets := rosetta_g_miss_num_map(p0_a11);
231     ddp_lift_rec.targets_cumm := rosetta_g_miss_num_map(p0_a12);
232     ddp_lift_rec.target_density_cumm := rosetta_g_miss_num_map(p0_a13);
233     ddp_lift_rec.target_density := rosetta_g_miss_num_map(p0_a14);
234     ddp_lift_rec.margin := rosetta_g_miss_num_map(p0_a15);
235     ddp_lift_rec.roi := rosetta_g_miss_num_map(p0_a16);
236     ddp_lift_rec.target_confidence := rosetta_g_miss_num_map(p0_a17);
237     ddp_lift_rec.non_target_confidence := rosetta_g_miss_num_map(p0_a18);
238 
239 
240 
241     -- here's the delegated call to the old PL/SQL routine
242     ams_dmlift_pvt.check_lift_items(ddp_lift_rec,
243       p_validation_mode,
244       x_return_status);
245 
246     -- copy data back from the local OUT or IN-OUT args, if any
247 
248 
249   end;
250 
251   procedure create_lift(p_api_version  NUMBER
252     , p_init_msg_list  VARCHAR2
253     , p_commit  VARCHAR2
254     , p_validation_level  NUMBER
255     , x_return_status OUT NOCOPY  VARCHAR2
256     , x_msg_count OUT NOCOPY  NUMBER
257     , x_msg_data OUT NOCOPY  VARCHAR2
258     , x_lift_id OUT NOCOPY  NUMBER
259     , p7_a0  NUMBER := 0-1962.0724
260     , p7_a1  DATE := fnd_api.g_miss_date
261     , p7_a2  NUMBER := 0-1962.0724
262     , p7_a3  DATE := fnd_api.g_miss_date
263     , p7_a4  NUMBER := 0-1962.0724
264     , p7_a5  NUMBER := 0-1962.0724
265     , p7_a6  NUMBER := 0-1962.0724
266     , p7_a7  NUMBER := 0-1962.0724
267     , p7_a8  NUMBER := 0-1962.0724
268     , p7_a9  NUMBER := 0-1962.0724
269     , p7_a10  NUMBER := 0-1962.0724
270     , p7_a11  NUMBER := 0-1962.0724
271     , p7_a12  NUMBER := 0-1962.0724
272     , p7_a13  NUMBER := 0-1962.0724
273     , p7_a14  NUMBER := 0-1962.0724
274     , p7_a15  NUMBER := 0-1962.0724
275     , p7_a16  NUMBER := 0-1962.0724
276     , p7_a17  NUMBER := 0-1962.0724
277     , p7_a18  NUMBER := 0-1962.0724
278   )
279   as
280     ddp_lift_rec ams_dmlift_pvt.lift_rec_type;
281     ddindx binary_integer; indx binary_integer;
282   begin
283 
284     -- copy data to the local IN or IN-OUT args, if any
285 
286 
287 
288 
289 
290 
291 
292     ddp_lift_rec.lift_id := rosetta_g_miss_num_map(p7_a0);
293     ddp_lift_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
294     ddp_lift_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
295     ddp_lift_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
296     ddp_lift_rec.created_by := rosetta_g_miss_num_map(p7_a4);
297     ddp_lift_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
298     ddp_lift_rec.object_version_number := rosetta_g_miss_num_map(p7_a6);
299     ddp_lift_rec.model_id := rosetta_g_miss_num_map(p7_a7);
300     ddp_lift_rec.quantile := rosetta_g_miss_num_map(p7_a8);
301     ddp_lift_rec.lift := rosetta_g_miss_num_map(p7_a9);
302     ddp_lift_rec.targets := rosetta_g_miss_num_map(p7_a10);
303     ddp_lift_rec.non_targets := rosetta_g_miss_num_map(p7_a11);
304     ddp_lift_rec.targets_cumm := rosetta_g_miss_num_map(p7_a12);
305     ddp_lift_rec.target_density_cumm := rosetta_g_miss_num_map(p7_a13);
306     ddp_lift_rec.target_density := rosetta_g_miss_num_map(p7_a14);
307     ddp_lift_rec.margin := rosetta_g_miss_num_map(p7_a15);
308     ddp_lift_rec.roi := rosetta_g_miss_num_map(p7_a16);
309     ddp_lift_rec.target_confidence := rosetta_g_miss_num_map(p7_a17);
310     ddp_lift_rec.non_target_confidence := rosetta_g_miss_num_map(p7_a18);
311 
312 
313     -- here's the delegated call to the old PL/SQL routine
314     ams_dmlift_pvt.create_lift(p_api_version,
315       p_init_msg_list,
316       p_commit,
317       p_validation_level,
318       x_return_status,
319       x_msg_count,
320       x_msg_data,
321       ddp_lift_rec,
322       x_lift_id);
323 
324     -- copy data back from the local OUT or IN-OUT args, if any
325 
326 
327 
328 
329 
330 
331 
332 
333   end;
334 
335   procedure update_lift(p_api_version  NUMBER
336     , p_init_msg_list  VARCHAR2
337     , p_commit  VARCHAR2
338     , p_validation_level  NUMBER
339     , x_return_status OUT NOCOPY  VARCHAR2
340     , x_msg_count OUT NOCOPY  NUMBER
341     , x_msg_data OUT NOCOPY  VARCHAR2
342     , x_object_version_number OUT NOCOPY  NUMBER
343     , p7_a0  NUMBER := 0-1962.0724
344     , p7_a1  DATE := fnd_api.g_miss_date
345     , p7_a2  NUMBER := 0-1962.0724
346     , p7_a3  DATE := fnd_api.g_miss_date
347     , p7_a4  NUMBER := 0-1962.0724
348     , p7_a5  NUMBER := 0-1962.0724
349     , p7_a6  NUMBER := 0-1962.0724
350     , p7_a7  NUMBER := 0-1962.0724
351     , p7_a8  NUMBER := 0-1962.0724
352     , p7_a9  NUMBER := 0-1962.0724
353     , p7_a10  NUMBER := 0-1962.0724
354     , p7_a11  NUMBER := 0-1962.0724
355     , p7_a12  NUMBER := 0-1962.0724
356     , p7_a13  NUMBER := 0-1962.0724
357     , p7_a14  NUMBER := 0-1962.0724
358     , p7_a15  NUMBER := 0-1962.0724
359     , p7_a16  NUMBER := 0-1962.0724
360     , p7_a17  NUMBER := 0-1962.0724
361     , p7_a18  NUMBER := 0-1962.0724
362   )
363   as
364     ddp_lift_rec ams_dmlift_pvt.lift_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 
370 
371 
372 
373 
374 
375 
376     ddp_lift_rec.lift_id := rosetta_g_miss_num_map(p7_a0);
377     ddp_lift_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
378     ddp_lift_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
379     ddp_lift_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
380     ddp_lift_rec.created_by := rosetta_g_miss_num_map(p7_a4);
381     ddp_lift_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
382     ddp_lift_rec.object_version_number := rosetta_g_miss_num_map(p7_a6);
383     ddp_lift_rec.model_id := rosetta_g_miss_num_map(p7_a7);
384     ddp_lift_rec.quantile := rosetta_g_miss_num_map(p7_a8);
385     ddp_lift_rec.lift := rosetta_g_miss_num_map(p7_a9);
386     ddp_lift_rec.targets := rosetta_g_miss_num_map(p7_a10);
387     ddp_lift_rec.non_targets := rosetta_g_miss_num_map(p7_a11);
388     ddp_lift_rec.targets_cumm := rosetta_g_miss_num_map(p7_a12);
389     ddp_lift_rec.target_density_cumm := rosetta_g_miss_num_map(p7_a13);
390     ddp_lift_rec.target_density := rosetta_g_miss_num_map(p7_a14);
391     ddp_lift_rec.margin := rosetta_g_miss_num_map(p7_a15);
392     ddp_lift_rec.roi := rosetta_g_miss_num_map(p7_a16);
393     ddp_lift_rec.target_confidence := rosetta_g_miss_num_map(p7_a17);
394     ddp_lift_rec.non_target_confidence := rosetta_g_miss_num_map(p7_a18);
395 
396 
397     -- here's the delegated call to the old PL/SQL routine
398     ams_dmlift_pvt.update_lift(p_api_version,
399       p_init_msg_list,
400       p_commit,
401       p_validation_level,
402       x_return_status,
403       x_msg_count,
404       x_msg_data,
405       ddp_lift_rec,
406       x_object_version_number);
407 
408     -- copy data back from the local OUT or IN-OUT args, if any
409 
410 
411 
412 
413 
414 
415 
416 
417   end;
418 
419   procedure validate_lift_rec(p_api_version  NUMBER
420     , p_init_msg_list  VARCHAR2
421     , x_return_status OUT NOCOPY  VARCHAR2
422     , x_msg_count OUT NOCOPY  NUMBER
423     , x_msg_data OUT NOCOPY  VARCHAR2
424     , p5_a0  NUMBER := 0-1962.0724
425     , p5_a1  DATE := fnd_api.g_miss_date
426     , p5_a2  NUMBER := 0-1962.0724
427     , p5_a3  DATE := fnd_api.g_miss_date
428     , p5_a4  NUMBER := 0-1962.0724
429     , p5_a5  NUMBER := 0-1962.0724
430     , p5_a6  NUMBER := 0-1962.0724
431     , p5_a7  NUMBER := 0-1962.0724
432     , p5_a8  NUMBER := 0-1962.0724
433     , p5_a9  NUMBER := 0-1962.0724
434     , p5_a10  NUMBER := 0-1962.0724
435     , p5_a11  NUMBER := 0-1962.0724
436     , p5_a12  NUMBER := 0-1962.0724
437     , p5_a13  NUMBER := 0-1962.0724
438     , p5_a14  NUMBER := 0-1962.0724
439     , p5_a15  NUMBER := 0-1962.0724
440     , p5_a16  NUMBER := 0-1962.0724
441     , p5_a17  NUMBER := 0-1962.0724
442     , p5_a18  NUMBER := 0-1962.0724
443   )
444   as
445     ddp_lift_rec ams_dmlift_pvt.lift_rec_type;
446     ddindx binary_integer; indx binary_integer;
447   begin
448 
449     -- copy data to the local IN or IN-OUT args, if any
450 
451 
452 
453 
454 
455     ddp_lift_rec.lift_id := rosetta_g_miss_num_map(p5_a0);
456     ddp_lift_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a1);
457     ddp_lift_rec.last_updated_by := rosetta_g_miss_num_map(p5_a2);
458     ddp_lift_rec.creation_date := rosetta_g_miss_date_in_map(p5_a3);
459     ddp_lift_rec.created_by := rosetta_g_miss_num_map(p5_a4);
460     ddp_lift_rec.last_update_login := rosetta_g_miss_num_map(p5_a5);
461     ddp_lift_rec.object_version_number := rosetta_g_miss_num_map(p5_a6);
462     ddp_lift_rec.model_id := rosetta_g_miss_num_map(p5_a7);
463     ddp_lift_rec.quantile := rosetta_g_miss_num_map(p5_a8);
464     ddp_lift_rec.lift := rosetta_g_miss_num_map(p5_a9);
465     ddp_lift_rec.targets := rosetta_g_miss_num_map(p5_a10);
466     ddp_lift_rec.non_targets := rosetta_g_miss_num_map(p5_a11);
467     ddp_lift_rec.targets_cumm := rosetta_g_miss_num_map(p5_a12);
468     ddp_lift_rec.target_density_cumm := rosetta_g_miss_num_map(p5_a13);
469     ddp_lift_rec.target_density := rosetta_g_miss_num_map(p5_a14);
470     ddp_lift_rec.margin := rosetta_g_miss_num_map(p5_a15);
471     ddp_lift_rec.roi := rosetta_g_miss_num_map(p5_a16);
472     ddp_lift_rec.target_confidence := rosetta_g_miss_num_map(p5_a17);
473     ddp_lift_rec.non_target_confidence := rosetta_g_miss_num_map(p5_a18);
474 
475     -- here's the delegated call to the old PL/SQL routine
476     ams_dmlift_pvt.validate_lift_rec(p_api_version,
477       p_init_msg_list,
478       x_return_status,
479       x_msg_count,
480       x_msg_data,
481       ddp_lift_rec);
482 
483     -- copy data back from the local OUT or IN-OUT args, if any
484 
485 
486 
487 
488 
489   end;
490 
491   procedure validate_lift(p_api_version  NUMBER
492     , p_init_msg_list  VARCHAR2
493     , p_validation_level  NUMBER
494     , p_validation_mode  VARCHAR2
495     , x_return_status OUT NOCOPY  VARCHAR2
496     , x_msg_count OUT NOCOPY  NUMBER
497     , x_msg_data OUT NOCOPY  VARCHAR2
498     , p4_a0  NUMBER := 0-1962.0724
499     , p4_a1  DATE := fnd_api.g_miss_date
500     , p4_a2  NUMBER := 0-1962.0724
501     , p4_a3  DATE := fnd_api.g_miss_date
502     , p4_a4  NUMBER := 0-1962.0724
503     , p4_a5  NUMBER := 0-1962.0724
504     , p4_a6  NUMBER := 0-1962.0724
505     , p4_a7  NUMBER := 0-1962.0724
506     , p4_a8  NUMBER := 0-1962.0724
507     , p4_a9  NUMBER := 0-1962.0724
508     , p4_a10  NUMBER := 0-1962.0724
509     , p4_a11  NUMBER := 0-1962.0724
510     , p4_a12  NUMBER := 0-1962.0724
511     , p4_a13  NUMBER := 0-1962.0724
512     , p4_a14  NUMBER := 0-1962.0724
513     , p4_a15  NUMBER := 0-1962.0724
514     , p4_a16  NUMBER := 0-1962.0724
515     , p4_a17  NUMBER := 0-1962.0724
516     , p4_a18  NUMBER := 0-1962.0724
517   )
518   as
519     ddp_lift_rec ams_dmlift_pvt.lift_rec_type;
520     ddindx binary_integer; indx binary_integer;
521   begin
522 
523     -- copy data to the local IN or IN-OUT args, if any
524 
525 
526 
527 
528     ddp_lift_rec.lift_id := rosetta_g_miss_num_map(p4_a0);
529     ddp_lift_rec.last_update_date := rosetta_g_miss_date_in_map(p4_a1);
530     ddp_lift_rec.last_updated_by := rosetta_g_miss_num_map(p4_a2);
531     ddp_lift_rec.creation_date := rosetta_g_miss_date_in_map(p4_a3);
532     ddp_lift_rec.created_by := rosetta_g_miss_num_map(p4_a4);
533     ddp_lift_rec.last_update_login := rosetta_g_miss_num_map(p4_a5);
534     ddp_lift_rec.object_version_number := rosetta_g_miss_num_map(p4_a6);
535     ddp_lift_rec.model_id := rosetta_g_miss_num_map(p4_a7);
536     ddp_lift_rec.quantile := rosetta_g_miss_num_map(p4_a8);
537     ddp_lift_rec.lift := rosetta_g_miss_num_map(p4_a9);
538     ddp_lift_rec.targets := rosetta_g_miss_num_map(p4_a10);
539     ddp_lift_rec.non_targets := rosetta_g_miss_num_map(p4_a11);
540     ddp_lift_rec.targets_cumm := rosetta_g_miss_num_map(p4_a12);
541     ddp_lift_rec.target_density_cumm := rosetta_g_miss_num_map(p4_a13);
542     ddp_lift_rec.target_density := rosetta_g_miss_num_map(p4_a14);
543     ddp_lift_rec.margin := rosetta_g_miss_num_map(p4_a15);
544     ddp_lift_rec.roi := rosetta_g_miss_num_map(p4_a16);
545     ddp_lift_rec.target_confidence := rosetta_g_miss_num_map(p4_a17);
546     ddp_lift_rec.non_target_confidence := rosetta_g_miss_num_map(p4_a18);
547 
548 
549 
550 
551     -- here's the delegated call to the old PL/SQL routine
552     ams_dmlift_pvt.validate_lift(p_api_version,
553       p_init_msg_list,
554       p_validation_level,
555       p_validation_mode,
556       ddp_lift_rec,
557       x_return_status,
558       x_msg_count,
559       x_msg_data);
560 
561     -- copy data back from the local OUT or IN-OUT args, if any
562 
563 
564 
565 
566 
567 
568 
569   end;
570 
571 end ams_dmlift_pvt_w;