DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_CT_RULE_PVT_W

Source


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