DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_LIST_ASSOC_PVT_W

Source


1 package body ams_list_assoc_pvt_w as
2   /* $Header: amswascb.pls 115.8 2002/11/22 08:56:47 jieli 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 
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_list_assoc_pvt.list_assoc_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_NUMBER_TABLE
24     , a2 JTF_DATE_TABLE
25     , a3 JTF_NUMBER_TABLE
26     , a4 JTF_DATE_TABLE
27     , a5 JTF_NUMBER_TABLE
28     , a6 JTF_NUMBER_TABLE
29     , a7 JTF_NUMBER_TABLE
30     , a8 JTF_VARCHAR2_TABLE_100
31     , a9 JTF_NUMBER_TABLE
32     , a10 JTF_VARCHAR2_TABLE_100
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).list_cont_restrictions_id := rosetta_g_miss_num_map(a0(indx));
43           t(ddindx).list_header_id := rosetta_g_miss_num_map(a1(indx));
44           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a2(indx));
45           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a3(indx));
46           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a4(indx));
47           t(ddindx).created_by := rosetta_g_miss_num_map(a5(indx));
48           t(ddindx).last_update_login := rosetta_g_miss_num_map(a6(indx));
49           t(ddindx).object_version_number := rosetta_g_miss_num_map(a7(indx));
50           t(ddindx).do_not_contact_flag := a8(indx);
51           t(ddindx).media_id := rosetta_g_miss_num_map(a9(indx));
52           t(ddindx).list_used_by := a10(indx);
53           t(ddindx).list_used_by_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_list_assoc_pvt.list_assoc_tbl_type, a0 OUT NOCOPY JTF_NUMBER_TABLE
64     , a1 OUT NOCOPY JTF_NUMBER_TABLE
65     , a2 OUT NOCOPY JTF_DATE_TABLE
66     , a3 OUT NOCOPY JTF_NUMBER_TABLE
67     , a4 OUT NOCOPY JTF_DATE_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_VARCHAR2_TABLE_100
72     , a9 OUT NOCOPY JTF_NUMBER_TABLE
73     , a10 OUT NOCOPY JTF_VARCHAR2_TABLE_100
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_NUMBER_TABLE();
81     a2 := JTF_DATE_TABLE();
82     a3 := JTF_NUMBER_TABLE();
83     a4 := JTF_DATE_TABLE();
84     a5 := JTF_NUMBER_TABLE();
85     a6 := JTF_NUMBER_TABLE();
86     a7 := JTF_NUMBER_TABLE();
87     a8 := JTF_VARCHAR2_TABLE_100();
88     a9 := JTF_NUMBER_TABLE();
89     a10 := JTF_VARCHAR2_TABLE_100();
90     a11 := JTF_NUMBER_TABLE();
91   else
92       a0 := JTF_NUMBER_TABLE();
93       a1 := JTF_NUMBER_TABLE();
94       a2 := JTF_DATE_TABLE();
95       a3 := JTF_NUMBER_TABLE();
96       a4 := JTF_DATE_TABLE();
97       a5 := JTF_NUMBER_TABLE();
98       a6 := JTF_NUMBER_TABLE();
99       a7 := JTF_NUMBER_TABLE();
100       a8 := JTF_VARCHAR2_TABLE_100();
101       a9 := JTF_NUMBER_TABLE();
102       a10 := JTF_VARCHAR2_TABLE_100();
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).list_cont_restrictions_id);
121           a1(indx) := rosetta_g_miss_num_map(t(ddindx).list_header_id);
122           a2(indx) := t(ddindx).last_update_date;
123           a3(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
124           a4(indx) := t(ddindx).creation_date;
125           a5(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
126           a6(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
127           a7(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
128           a8(indx) := t(ddindx).do_not_contact_flag;
129           a9(indx) := rosetta_g_miss_num_map(t(ddindx).media_id);
130           a10(indx) := t(ddindx).list_used_by;
131           a11(indx) := rosetta_g_miss_num_map(t(ddindx).list_used_by_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_list_assoc(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_list_cont_restrictions_id OUT NOCOPY  NUMBER
150     , p7_a0  NUMBER := 0-1962.0724
151     , p7_a1  NUMBER := 0-1962.0724
152     , p7_a2  DATE := fnd_api.g_miss_date
153     , p7_a3  NUMBER := 0-1962.0724
154     , p7_a4  DATE := fnd_api.g_miss_date
155     , p7_a5  NUMBER := 0-1962.0724
156     , p7_a6  NUMBER := 0-1962.0724
157     , p7_a7  NUMBER := 0-1962.0724
158     , p7_a8  VARCHAR2 := fnd_api.g_miss_char
159     , p7_a9  NUMBER := 0-1962.0724
160     , p7_a10  VARCHAR2 := fnd_api.g_miss_char
161     , p7_a11  NUMBER := 0-1962.0724
162   )
163   as
164     ddp_list_assoc_rec ams_list_assoc_pvt.list_assoc_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_list_assoc_rec.list_cont_restrictions_id := rosetta_g_miss_num_map(p7_a0);
177     ddp_list_assoc_rec.list_header_id := rosetta_g_miss_num_map(p7_a1);
178     ddp_list_assoc_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a2);
179     ddp_list_assoc_rec.last_updated_by := rosetta_g_miss_num_map(p7_a3);
180     ddp_list_assoc_rec.creation_date := rosetta_g_miss_date_in_map(p7_a4);
181     ddp_list_assoc_rec.created_by := rosetta_g_miss_num_map(p7_a5);
182     ddp_list_assoc_rec.last_update_login := rosetta_g_miss_num_map(p7_a6);
183     ddp_list_assoc_rec.object_version_number := rosetta_g_miss_num_map(p7_a7);
184     ddp_list_assoc_rec.do_not_contact_flag := p7_a8;
185     ddp_list_assoc_rec.media_id := rosetta_g_miss_num_map(p7_a9);
186     ddp_list_assoc_rec.list_used_by := p7_a10;
187     ddp_list_assoc_rec.list_used_by_id := rosetta_g_miss_num_map(p7_a11);
188 
189 
190     -- here's the delegated call to the old PL/SQL routine
191     ams_list_assoc_pvt.create_list_assoc(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_list_assoc_rec,
199       x_list_cont_restrictions_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_list_assoc(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  NUMBER := 0-1962.0724
222     , p7_a2  DATE := fnd_api.g_miss_date
223     , p7_a3  NUMBER := 0-1962.0724
224     , p7_a4  DATE := fnd_api.g_miss_date
225     , p7_a5  NUMBER := 0-1962.0724
226     , p7_a6  NUMBER := 0-1962.0724
227     , p7_a7  NUMBER := 0-1962.0724
228     , p7_a8  VARCHAR2 := fnd_api.g_miss_char
229     , p7_a9  NUMBER := 0-1962.0724
230     , p7_a10  VARCHAR2 := fnd_api.g_miss_char
231     , p7_a11  NUMBER := 0-1962.0724
232   )
233   as
234     ddp_list_assoc_rec ams_list_assoc_pvt.list_assoc_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_list_assoc_rec.list_cont_restrictions_id := rosetta_g_miss_num_map(p7_a0);
247     ddp_list_assoc_rec.list_header_id := rosetta_g_miss_num_map(p7_a1);
248     ddp_list_assoc_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a2);
249     ddp_list_assoc_rec.last_updated_by := rosetta_g_miss_num_map(p7_a3);
250     ddp_list_assoc_rec.creation_date := rosetta_g_miss_date_in_map(p7_a4);
251     ddp_list_assoc_rec.created_by := rosetta_g_miss_num_map(p7_a5);
252     ddp_list_assoc_rec.last_update_login := rosetta_g_miss_num_map(p7_a6);
253     ddp_list_assoc_rec.object_version_number := rosetta_g_miss_num_map(p7_a7);
254     ddp_list_assoc_rec.do_not_contact_flag := p7_a8;
255     ddp_list_assoc_rec.media_id := rosetta_g_miss_num_map(p7_a9);
256     ddp_list_assoc_rec.list_used_by := p7_a10;
257     ddp_list_assoc_rec.list_used_by_id := rosetta_g_miss_num_map(p7_a11);
258 
259 
260     -- here's the delegated call to the old PL/SQL routine
261     ams_list_assoc_pvt.update_list_assoc(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_list_assoc_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_list_assoc(p_api_version_number  NUMBER
283     , p_init_msg_list  VARCHAR2
284     , p_validation_level  NUMBER
285     , x_return_status OUT NOCOPY  VARCHAR2
286     , x_msg_count OUT NOCOPY  NUMBER
287     , x_msg_data OUT NOCOPY  VARCHAR2
288     , p3_a0  NUMBER := 0-1962.0724
289     , p3_a1  NUMBER := 0-1962.0724
290     , p3_a2  DATE := fnd_api.g_miss_date
291     , p3_a3  NUMBER := 0-1962.0724
292     , p3_a4  DATE := fnd_api.g_miss_date
293     , p3_a5  NUMBER := 0-1962.0724
294     , p3_a6  NUMBER := 0-1962.0724
295     , p3_a7  NUMBER := 0-1962.0724
296     , p3_a8  VARCHAR2 := fnd_api.g_miss_char
297     , p3_a9  NUMBER := 0-1962.0724
298     , p3_a10  VARCHAR2 := fnd_api.g_miss_char
299     , p3_a11  NUMBER := 0-1962.0724
300   )
301   as
302     ddp_list_assoc_rec ams_list_assoc_pvt.list_assoc_rec_type;
303     ddindx binary_integer; indx binary_integer;
304   begin
305 
306     -- copy data to the local IN or IN-OUT args, if any
307 
308 
309 
310     ddp_list_assoc_rec.list_cont_restrictions_id := rosetta_g_miss_num_map(p3_a0);
311     ddp_list_assoc_rec.list_header_id := rosetta_g_miss_num_map(p3_a1);
312     ddp_list_assoc_rec.last_update_date := rosetta_g_miss_date_in_map(p3_a2);
313     ddp_list_assoc_rec.last_updated_by := rosetta_g_miss_num_map(p3_a3);
314     ddp_list_assoc_rec.creation_date := rosetta_g_miss_date_in_map(p3_a4);
315     ddp_list_assoc_rec.created_by := rosetta_g_miss_num_map(p3_a5);
316     ddp_list_assoc_rec.last_update_login := rosetta_g_miss_num_map(p3_a6);
317     ddp_list_assoc_rec.object_version_number := rosetta_g_miss_num_map(p3_a7);
318     ddp_list_assoc_rec.do_not_contact_flag := p3_a8;
319     ddp_list_assoc_rec.media_id := rosetta_g_miss_num_map(p3_a9);
320     ddp_list_assoc_rec.list_used_by := p3_a10;
321     ddp_list_assoc_rec.list_used_by_id := rosetta_g_miss_num_map(p3_a11);
322 
323 
324 
325 
326     -- here's the delegated call to the old PL/SQL routine
327     ams_list_assoc_pvt.validate_list_assoc(p_api_version_number,
328       p_init_msg_list,
329       p_validation_level,
330       ddp_list_assoc_rec,
331       x_return_status,
332       x_msg_count,
333       x_msg_data);
334 
335     -- copy data back from the local OUT or IN-OUT args, if any
336 
337 
338 
339 
340 
341 
342   end;
343 
344   procedure check_list_assoc_items(p_validation_mode  VARCHAR2
345     , x_return_status OUT NOCOPY  VARCHAR2
346     , p0_a0  NUMBER := 0-1962.0724
347     , p0_a1  NUMBER := 0-1962.0724
348     , p0_a2  DATE := fnd_api.g_miss_date
349     , p0_a3  NUMBER := 0-1962.0724
350     , p0_a4  DATE := fnd_api.g_miss_date
351     , p0_a5  NUMBER := 0-1962.0724
352     , p0_a6  NUMBER := 0-1962.0724
353     , p0_a7  NUMBER := 0-1962.0724
354     , p0_a8  VARCHAR2 := fnd_api.g_miss_char
355     , p0_a9  NUMBER := 0-1962.0724
356     , p0_a10  VARCHAR2 := fnd_api.g_miss_char
357     , p0_a11  NUMBER := 0-1962.0724
358   )
359   as
360     ddp_list_assoc_rec ams_list_assoc_pvt.list_assoc_rec_type;
361     ddindx binary_integer; indx binary_integer;
362   begin
363 
364     -- copy data to the local IN or IN-OUT args, if any
365     ddp_list_assoc_rec.list_cont_restrictions_id := rosetta_g_miss_num_map(p0_a0);
366     ddp_list_assoc_rec.list_header_id := rosetta_g_miss_num_map(p0_a1);
367     ddp_list_assoc_rec.last_update_date := rosetta_g_miss_date_in_map(p0_a2);
368     ddp_list_assoc_rec.last_updated_by := rosetta_g_miss_num_map(p0_a3);
369     ddp_list_assoc_rec.creation_date := rosetta_g_miss_date_in_map(p0_a4);
370     ddp_list_assoc_rec.created_by := rosetta_g_miss_num_map(p0_a5);
371     ddp_list_assoc_rec.last_update_login := rosetta_g_miss_num_map(p0_a6);
372     ddp_list_assoc_rec.object_version_number := rosetta_g_miss_num_map(p0_a7);
373     ddp_list_assoc_rec.do_not_contact_flag := p0_a8;
374     ddp_list_assoc_rec.media_id := rosetta_g_miss_num_map(p0_a9);
375     ddp_list_assoc_rec.list_used_by := p0_a10;
376     ddp_list_assoc_rec.list_used_by_id := rosetta_g_miss_num_map(p0_a11);
377 
378 
379 
380     -- here's the delegated call to the old PL/SQL routine
381     ams_list_assoc_pvt.check_list_assoc_items(ddp_list_assoc_rec,
382       p_validation_mode,
383       x_return_status);
384 
385     -- copy data back from the local OUT or IN-OUT args, if any
386 
387 
388   end;
389 
390   procedure validate_list_assoc_rec(p_api_version_number  NUMBER
391     , p_init_msg_list  VARCHAR2
392     , x_return_status OUT NOCOPY  VARCHAR2
393     , x_msg_count OUT NOCOPY  NUMBER
394     , x_msg_data OUT NOCOPY  VARCHAR2
395     , p5_a0  NUMBER := 0-1962.0724
396     , p5_a1  NUMBER := 0-1962.0724
397     , p5_a2  DATE := fnd_api.g_miss_date
398     , p5_a3  NUMBER := 0-1962.0724
399     , p5_a4  DATE := fnd_api.g_miss_date
400     , p5_a5  NUMBER := 0-1962.0724
401     , p5_a6  NUMBER := 0-1962.0724
402     , p5_a7  NUMBER := 0-1962.0724
403     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
404     , p5_a9  NUMBER := 0-1962.0724
405     , p5_a10  VARCHAR2 := fnd_api.g_miss_char
406     , p5_a11  NUMBER := 0-1962.0724
407   )
408   as
409     ddp_list_assoc_rec ams_list_assoc_pvt.list_assoc_rec_type;
410     ddindx binary_integer; indx binary_integer;
411   begin
412 
413     -- copy data to the local IN or IN-OUT args, if any
414 
415 
416 
417 
418 
419     ddp_list_assoc_rec.list_cont_restrictions_id := rosetta_g_miss_num_map(p5_a0);
420     ddp_list_assoc_rec.list_header_id := rosetta_g_miss_num_map(p5_a1);
421     ddp_list_assoc_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a2);
422     ddp_list_assoc_rec.last_updated_by := rosetta_g_miss_num_map(p5_a3);
423     ddp_list_assoc_rec.creation_date := rosetta_g_miss_date_in_map(p5_a4);
424     ddp_list_assoc_rec.created_by := rosetta_g_miss_num_map(p5_a5);
425     ddp_list_assoc_rec.last_update_login := rosetta_g_miss_num_map(p5_a6);
426     ddp_list_assoc_rec.object_version_number := rosetta_g_miss_num_map(p5_a7);
427     ddp_list_assoc_rec.do_not_contact_flag := p5_a8;
428     ddp_list_assoc_rec.media_id := rosetta_g_miss_num_map(p5_a9);
429     ddp_list_assoc_rec.list_used_by := p5_a10;
430     ddp_list_assoc_rec.list_used_by_id := rosetta_g_miss_num_map(p5_a11);
431 
432     -- here's the delegated call to the old PL/SQL routine
433     ams_list_assoc_pvt.validate_list_assoc_rec(p_api_version_number,
434       p_init_msg_list,
435       x_return_status,
436       x_msg_count,
437       x_msg_data,
438       ddp_list_assoc_rec);
439 
440     -- copy data back from the local OUT or IN-OUT args, if any
441 
442 
443 
444 
445 
446   end;
447 
448 end ams_list_assoc_pvt_w;