DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_DM_BINVALUES_PVT_W

Source


1 package body ams_dm_binvalues_pvt_w as
2   /* $Header: amswdbvb.pls 115.3 2002/12/09 11:03:26 choang 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   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_dm_binvalues_pvt.dm_binvalues_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_VARCHAR2_TABLE_200
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).bin_value_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).source_field_id := rosetta_g_miss_num_map(a7(indx));
50           t(ddindx).bucket := rosetta_g_miss_num_map(a8(indx));
51           t(ddindx).bin_value := a9(indx);
52           t(ddindx).start_value := rosetta_g_miss_num_map(a10(indx));
53           t(ddindx).end_value := 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_dm_binvalues_pvt.dm_binvalues_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_NUMBER_TABLE
71     , a8 OUT NOCOPY JTF_NUMBER_TABLE
72     , a9 OUT NOCOPY JTF_VARCHAR2_TABLE_200
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_NUMBER_TABLE();
87     a8 := JTF_NUMBER_TABLE();
88     a9 := JTF_VARCHAR2_TABLE_200();
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_NUMBER_TABLE();
100       a8 := JTF_NUMBER_TABLE();
101       a9 := JTF_VARCHAR2_TABLE_200();
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).bin_value_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) := rosetta_g_miss_num_map(t(ddindx).source_field_id);
128           a8(indx) := rosetta_g_miss_num_map(t(ddindx).bucket);
129           a9(indx) := t(ddindx).bin_value;
130           a10(indx) := rosetta_g_miss_num_map(t(ddindx).start_value);
131           a11(indx) := rosetta_g_miss_num_map(t(ddindx).end_value);
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_dm_binvalues(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_bin_value_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  NUMBER := 0-1962.0724
158     , p7_a8  NUMBER := 0-1962.0724
159     , p7_a9  VARCHAR2 := fnd_api.g_miss_char
160     , p7_a10  NUMBER := 0-1962.0724
161     , p7_a11  NUMBER := 0-1962.0724
162   )
163   as
164     ddp_dm_binvalues_rec ams_dm_binvalues_pvt.dm_binvalues_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_dm_binvalues_rec.bin_value_id := rosetta_g_miss_num_map(p7_a0);
177     ddp_dm_binvalues_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
178     ddp_dm_binvalues_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
179     ddp_dm_binvalues_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
180     ddp_dm_binvalues_rec.created_by := rosetta_g_miss_num_map(p7_a4);
181     ddp_dm_binvalues_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
182     ddp_dm_binvalues_rec.object_version_number := rosetta_g_miss_num_map(p7_a6);
183     ddp_dm_binvalues_rec.source_field_id := rosetta_g_miss_num_map(p7_a7);
184     ddp_dm_binvalues_rec.bucket := rosetta_g_miss_num_map(p7_a8);
185     ddp_dm_binvalues_rec.bin_value := p7_a9;
186     ddp_dm_binvalues_rec.start_value := rosetta_g_miss_num_map(p7_a10);
187     ddp_dm_binvalues_rec.end_value := rosetta_g_miss_num_map(p7_a11);
188 
189 
190     -- here's the delegated call to the old PL/SQL routine
191     ams_dm_binvalues_pvt.create_dm_binvalues(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_dm_binvalues_rec,
199       x_bin_value_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_dm_binvalues(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  NUMBER := 0-1962.0724
228     , p7_a8  NUMBER := 0-1962.0724
229     , p7_a9  VARCHAR2 := fnd_api.g_miss_char
230     , p7_a10  NUMBER := 0-1962.0724
231     , p7_a11  NUMBER := 0-1962.0724
232   )
233   as
234     ddp_dm_binvalues_rec ams_dm_binvalues_pvt.dm_binvalues_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_dm_binvalues_rec.bin_value_id := rosetta_g_miss_num_map(p7_a0);
247     ddp_dm_binvalues_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
248     ddp_dm_binvalues_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
249     ddp_dm_binvalues_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
250     ddp_dm_binvalues_rec.created_by := rosetta_g_miss_num_map(p7_a4);
251     ddp_dm_binvalues_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
252     ddp_dm_binvalues_rec.object_version_number := rosetta_g_miss_num_map(p7_a6);
253     ddp_dm_binvalues_rec.source_field_id := rosetta_g_miss_num_map(p7_a7);
254     ddp_dm_binvalues_rec.bucket := rosetta_g_miss_num_map(p7_a8);
255     ddp_dm_binvalues_rec.bin_value := p7_a9;
256     ddp_dm_binvalues_rec.start_value := rosetta_g_miss_num_map(p7_a10);
257     ddp_dm_binvalues_rec.end_value := rosetta_g_miss_num_map(p7_a11);
258 
259 
260     -- here's the delegated call to the old PL/SQL routine
261     ams_dm_binvalues_pvt.update_dm_binvalues(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_dm_binvalues_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_dm_binvalues(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     , p3_a0  NUMBER := 0-1962.0724
290     , p3_a1  DATE := fnd_api.g_miss_date
291     , p3_a2  NUMBER := 0-1962.0724
292     , p3_a3  DATE := fnd_api.g_miss_date
293     , p3_a4  NUMBER := 0-1962.0724
294     , p3_a5  NUMBER := 0-1962.0724
295     , p3_a6  NUMBER := 0-1962.0724
296     , p3_a7  NUMBER := 0-1962.0724
297     , p3_a8  NUMBER := 0-1962.0724
298     , p3_a9  VARCHAR2 := fnd_api.g_miss_char
299     , p3_a10  NUMBER := 0-1962.0724
300     , p3_a11  NUMBER := 0-1962.0724
301   )
302   as
303     ddp_dm_binvalues_rec ams_dm_binvalues_pvt.dm_binvalues_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     ddp_dm_binvalues_rec.bin_value_id := rosetta_g_miss_num_map(p3_a0);
312     ddp_dm_binvalues_rec.last_update_date := rosetta_g_miss_date_in_map(p3_a1);
313     ddp_dm_binvalues_rec.last_updated_by := rosetta_g_miss_num_map(p3_a2);
314     ddp_dm_binvalues_rec.creation_date := rosetta_g_miss_date_in_map(p3_a3);
315     ddp_dm_binvalues_rec.created_by := rosetta_g_miss_num_map(p3_a4);
316     ddp_dm_binvalues_rec.last_update_login := rosetta_g_miss_num_map(p3_a5);
317     ddp_dm_binvalues_rec.object_version_number := rosetta_g_miss_num_map(p3_a6);
318     ddp_dm_binvalues_rec.source_field_id := rosetta_g_miss_num_map(p3_a7);
319     ddp_dm_binvalues_rec.bucket := rosetta_g_miss_num_map(p3_a8);
320     ddp_dm_binvalues_rec.bin_value := p3_a9;
321     ddp_dm_binvalues_rec.start_value := rosetta_g_miss_num_map(p3_a10);
322     ddp_dm_binvalues_rec.end_value := rosetta_g_miss_num_map(p3_a11);
323 
324 
325 
326 
327 
328     -- here's the delegated call to the old PL/SQL routine
329     ams_dm_binvalues_pvt.validate_dm_binvalues(p_api_version_number,
330       p_init_msg_list,
331       p_validation_level,
332       ddp_dm_binvalues_rec,
333       p_validation_mode,
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_dm_binvalues_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  NUMBER := 0-1962.0724
358     , p0_a8  NUMBER := 0-1962.0724
359     , p0_a9  VARCHAR2 := fnd_api.g_miss_char
360     , p0_a10  NUMBER := 0-1962.0724
361     , p0_a11  NUMBER := 0-1962.0724
362   )
363   as
364     ddp_dm_binvalues_rec ams_dm_binvalues_pvt.dm_binvalues_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_dm_binvalues_rec.bin_value_id := rosetta_g_miss_num_map(p0_a0);
370     ddp_dm_binvalues_rec.last_update_date := rosetta_g_miss_date_in_map(p0_a1);
371     ddp_dm_binvalues_rec.last_updated_by := rosetta_g_miss_num_map(p0_a2);
372     ddp_dm_binvalues_rec.creation_date := rosetta_g_miss_date_in_map(p0_a3);
373     ddp_dm_binvalues_rec.created_by := rosetta_g_miss_num_map(p0_a4);
374     ddp_dm_binvalues_rec.last_update_login := rosetta_g_miss_num_map(p0_a5);
378     ddp_dm_binvalues_rec.bin_value := p0_a9;
375     ddp_dm_binvalues_rec.object_version_number := rosetta_g_miss_num_map(p0_a6);
376     ddp_dm_binvalues_rec.source_field_id := rosetta_g_miss_num_map(p0_a7);
377     ddp_dm_binvalues_rec.bucket := rosetta_g_miss_num_map(p0_a8);
379     ddp_dm_binvalues_rec.start_value := rosetta_g_miss_num_map(p0_a10);
380     ddp_dm_binvalues_rec.end_value := rosetta_g_miss_num_map(p0_a11);
381 
382 
383 
384     -- here's the delegated call to the old PL/SQL routine
385     ams_dm_binvalues_pvt.check_dm_binvalues_items(ddp_dm_binvalues_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_dm_binvalues_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  NUMBER := 0-1962.0724
407     , p5_a8  NUMBER := 0-1962.0724
408     , p5_a9  VARCHAR2 := fnd_api.g_miss_char
409     , p5_a10  NUMBER := 0-1962.0724
410     , p5_a11  NUMBER := 0-1962.0724
411   )
412   as
413     ddp_dm_binvalues_rec ams_dm_binvalues_pvt.dm_binvalues_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_dm_binvalues_rec.bin_value_id := rosetta_g_miss_num_map(p5_a0);
424     ddp_dm_binvalues_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a1);
425     ddp_dm_binvalues_rec.last_updated_by := rosetta_g_miss_num_map(p5_a2);
426     ddp_dm_binvalues_rec.creation_date := rosetta_g_miss_date_in_map(p5_a3);
427     ddp_dm_binvalues_rec.created_by := rosetta_g_miss_num_map(p5_a4);
428     ddp_dm_binvalues_rec.last_update_login := rosetta_g_miss_num_map(p5_a5);
429     ddp_dm_binvalues_rec.object_version_number := rosetta_g_miss_num_map(p5_a6);
430     ddp_dm_binvalues_rec.source_field_id := rosetta_g_miss_num_map(p5_a7);
431     ddp_dm_binvalues_rec.bucket := rosetta_g_miss_num_map(p5_a8);
432     ddp_dm_binvalues_rec.bin_value := p5_a9;
433     ddp_dm_binvalues_rec.start_value := rosetta_g_miss_num_map(p5_a10);
434     ddp_dm_binvalues_rec.end_value := rosetta_g_miss_num_map(p5_a11);
435 
436     -- here's the delegated call to the old PL/SQL routine
437     ams_dm_binvalues_pvt.validate_dm_binvalues_rec(p_api_version_number,
438       p_init_msg_list,
439       x_return_status,
440       x_msg_count,
441       x_msg_data,
442       ddp_dm_binvalues_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_dm_binvalues_pvt_w;