DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_DI_SUBSCRIPTION_PUB_W

Source


1 package body ahl_di_subscription_pub_w as
2   /* $Header: AHLSUBWB.pls 115.10 2003/07/28 07:30:49 pbarman 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   procedure rosetta_table_copy_in_p1(t out nocopy ahl_di_subscription_pub.subscription_tbl, a0 JTF_NUMBER_TABLE
14     , a1 JTF_NUMBER_TABLE
15     , a2 JTF_VARCHAR2_TABLE_100
16     , a3 JTF_VARCHAR2_TABLE_100
17     , a4 JTF_NUMBER_TABLE
18     , a5 JTF_VARCHAR2_TABLE_100
19     , a6 JTF_VARCHAR2_TABLE_400
20     , a7 JTF_NUMBER_TABLE
21     , a8 JTF_VARCHAR2_TABLE_100
22     , a9 JTF_VARCHAR2_TABLE_100
23     , a10 JTF_NUMBER_TABLE
24     , a11 JTF_VARCHAR2_TABLE_300
25     , a12 JTF_VARCHAR2_TABLE_400
26     , a13 JTF_DATE_TABLE
27     , a14 JTF_DATE_TABLE
28     , a15 JTF_VARCHAR2_TABLE_100
29     , a16 JTF_VARCHAR2_TABLE_100
30     , a17 JTF_VARCHAR2_TABLE_100
31     , a18 JTF_VARCHAR2_TABLE_100
32     , a19 JTF_VARCHAR2_TABLE_100
33     , a20 JTF_VARCHAR2_TABLE_100
34     , a21 JTF_VARCHAR2_TABLE_200
35     , a22 JTF_VARCHAR2_TABLE_200
36     , a23 JTF_VARCHAR2_TABLE_200
37     , a24 JTF_VARCHAR2_TABLE_200
38     , a25 JTF_VARCHAR2_TABLE_200
39     , a26 JTF_VARCHAR2_TABLE_200
40     , a27 JTF_VARCHAR2_TABLE_200
41     , a28 JTF_VARCHAR2_TABLE_200
42     , a29 JTF_VARCHAR2_TABLE_200
43     , a30 JTF_VARCHAR2_TABLE_200
44     , a31 JTF_VARCHAR2_TABLE_200
45     , a32 JTF_VARCHAR2_TABLE_200
46     , a33 JTF_VARCHAR2_TABLE_200
47     , a34 JTF_VARCHAR2_TABLE_200
48     , a35 JTF_VARCHAR2_TABLE_200
49     , a36 JTF_VARCHAR2_TABLE_100
50     , a37 JTF_VARCHAR2_TABLE_100
51     , a38 JTF_VARCHAR2_TABLE_2000
52     , a39 JTF_NUMBER_TABLE
53     , a40 JTF_VARCHAR2_TABLE_100
54     ) as
55     ddindx binary_integer; indx binary_integer;
56   begin
57   if a0 is not null and a0.count > 0 then
58       if a0.count > 0 then
59         indx := a0.first;
60         ddindx := 1;
61         while true loop
62           t(ddindx).subscription_id := a0(indx);
63           t(ddindx).document_id := a1(indx);
64           t(ddindx).status_code := a2(indx);
65           t(ddindx).status_desc := a3(indx);
66           t(ddindx).requested_by_party_id := a4(indx);
67           t(ddindx).requested_by_pty_number := a5(indx);
68           t(ddindx).requested_by_pty_name := a6(indx);
69           t(ddindx).quantity := a7(indx);
70           t(ddindx).frequency_code := a8(indx);
71           t(ddindx).frequency_desc := a9(indx);
72           t(ddindx).subscribed_frm_party_id := a10(indx);
73           t(ddindx).subscribed_frm_pty_number := a11(indx);
74           t(ddindx).subscribed_frm_pty_name := a12(indx);
75           t(ddindx).start_date := rosetta_g_miss_date_in_map(a13(indx));
76           t(ddindx).end_date := rosetta_g_miss_date_in_map(a14(indx));
77           t(ddindx).purchase_order_no := a15(indx);
78           t(ddindx).subscription_type_code := a16(indx);
79           t(ddindx).subscription_type_desc := a17(indx);
80           t(ddindx).media_type_code := a18(indx);
81           t(ddindx).media_type_desc := a19(indx);
82           t(ddindx).attribute_category := a20(indx);
83           t(ddindx).attribute1 := a21(indx);
84           t(ddindx).attribute2 := a22(indx);
85           t(ddindx).attribute3 := a23(indx);
86           t(ddindx).attribute4 := a24(indx);
87           t(ddindx).attribute5 := a25(indx);
88           t(ddindx).attribute6 := a26(indx);
89           t(ddindx).attribute7 := a27(indx);
90           t(ddindx).attribute8 := a28(indx);
91           t(ddindx).attribute9 := a29(indx);
92           t(ddindx).attribute10 := a30(indx);
93           t(ddindx).attribute11 := a31(indx);
94           t(ddindx).attribute12 := a32(indx);
95           t(ddindx).attribute13 := a33(indx);
96           t(ddindx).attribute14 := a34(indx);
97           t(ddindx).attribute15 := a35(indx);
98           t(ddindx).language := a36(indx);
99           t(ddindx).source_lang := a37(indx);
100           t(ddindx).comments := a38(indx);
101           t(ddindx).object_version_number := a39(indx);
102           t(ddindx).delete_flag := a40(indx);
103           ddindx := ddindx+1;
104           if a0.last =indx
105             then exit;
106           end if;
107           indx := a0.next(indx);
108         end loop;
109       end if;
110    end if;
111   end rosetta_table_copy_in_p1;
112   procedure rosetta_table_copy_out_p1(t ahl_di_subscription_pub.subscription_tbl, a0 out nocopy JTF_NUMBER_TABLE
113     , a1 out nocopy JTF_NUMBER_TABLE
114     , a2 out nocopy JTF_VARCHAR2_TABLE_100
115     , a3 out nocopy JTF_VARCHAR2_TABLE_100
116     , a4 out nocopy JTF_NUMBER_TABLE
117     , a5 out nocopy JTF_VARCHAR2_TABLE_100
118     , a6 out nocopy JTF_VARCHAR2_TABLE_400
119     , a7 out nocopy JTF_NUMBER_TABLE
120     , a8 out nocopy JTF_VARCHAR2_TABLE_100
121     , a9 out nocopy JTF_VARCHAR2_TABLE_100
122     , a10 out nocopy JTF_NUMBER_TABLE
123     , a11 out nocopy JTF_VARCHAR2_TABLE_300
124     , a12 out nocopy JTF_VARCHAR2_TABLE_400
125     , a13 out nocopy JTF_DATE_TABLE
126     , a14 out nocopy JTF_DATE_TABLE
127     , a15 out nocopy JTF_VARCHAR2_TABLE_100
128     , a16 out nocopy JTF_VARCHAR2_TABLE_100
129     , a17 out nocopy JTF_VARCHAR2_TABLE_100
130     , a18 out nocopy JTF_VARCHAR2_TABLE_100
131     , a19 out nocopy JTF_VARCHAR2_TABLE_100
132     , a20 out nocopy JTF_VARCHAR2_TABLE_100
133     , a21 out nocopy JTF_VARCHAR2_TABLE_200
134     , a22 out nocopy JTF_VARCHAR2_TABLE_200
135     , a23 out nocopy JTF_VARCHAR2_TABLE_200
136     , a24 out nocopy JTF_VARCHAR2_TABLE_200
137     , a25 out nocopy JTF_VARCHAR2_TABLE_200
138     , a26 out nocopy JTF_VARCHAR2_TABLE_200
139     , a27 out nocopy JTF_VARCHAR2_TABLE_200
140     , a28 out nocopy JTF_VARCHAR2_TABLE_200
141     , a29 out nocopy JTF_VARCHAR2_TABLE_200
142     , a30 out nocopy JTF_VARCHAR2_TABLE_200
143     , a31 out nocopy JTF_VARCHAR2_TABLE_200
144     , a32 out nocopy JTF_VARCHAR2_TABLE_200
145     , a33 out nocopy JTF_VARCHAR2_TABLE_200
146     , a34 out nocopy JTF_VARCHAR2_TABLE_200
147     , a35 out nocopy JTF_VARCHAR2_TABLE_200
148     , a36 out nocopy JTF_VARCHAR2_TABLE_100
149     , a37 out nocopy JTF_VARCHAR2_TABLE_100
150     , a38 out nocopy JTF_VARCHAR2_TABLE_2000
151     , a39 out nocopy JTF_NUMBER_TABLE
152     , a40 out nocopy JTF_VARCHAR2_TABLE_100
153     ) as
154     ddindx binary_integer; indx binary_integer;
155   begin
156   if t is null or t.count = 0 then
157     a0 := JTF_NUMBER_TABLE();
158     a1 := JTF_NUMBER_TABLE();
159     a2 := JTF_VARCHAR2_TABLE_100();
160     a3 := JTF_VARCHAR2_TABLE_100();
161     a4 := JTF_NUMBER_TABLE();
162     a5 := JTF_VARCHAR2_TABLE_100();
163     a6 := JTF_VARCHAR2_TABLE_400();
164     a7 := JTF_NUMBER_TABLE();
165     a8 := JTF_VARCHAR2_TABLE_100();
166     a9 := JTF_VARCHAR2_TABLE_100();
167     a10 := JTF_NUMBER_TABLE();
168     a11 := JTF_VARCHAR2_TABLE_300();
169     a12 := JTF_VARCHAR2_TABLE_400();
170     a13 := JTF_DATE_TABLE();
171     a14 := JTF_DATE_TABLE();
172     a15 := JTF_VARCHAR2_TABLE_100();
173     a16 := JTF_VARCHAR2_TABLE_100();
174     a17 := JTF_VARCHAR2_TABLE_100();
175     a18 := JTF_VARCHAR2_TABLE_100();
176     a19 := JTF_VARCHAR2_TABLE_100();
177     a20 := JTF_VARCHAR2_TABLE_100();
178     a21 := JTF_VARCHAR2_TABLE_200();
179     a22 := JTF_VARCHAR2_TABLE_200();
180     a23 := JTF_VARCHAR2_TABLE_200();
181     a24 := JTF_VARCHAR2_TABLE_200();
182     a25 := JTF_VARCHAR2_TABLE_200();
183     a26 := JTF_VARCHAR2_TABLE_200();
184     a27 := JTF_VARCHAR2_TABLE_200();
185     a28 := JTF_VARCHAR2_TABLE_200();
186     a29 := JTF_VARCHAR2_TABLE_200();
187     a30 := JTF_VARCHAR2_TABLE_200();
188     a31 := JTF_VARCHAR2_TABLE_200();
189     a32 := JTF_VARCHAR2_TABLE_200();
190     a33 := JTF_VARCHAR2_TABLE_200();
191     a34 := JTF_VARCHAR2_TABLE_200();
192     a35 := JTF_VARCHAR2_TABLE_200();
193     a36 := JTF_VARCHAR2_TABLE_100();
194     a37 := JTF_VARCHAR2_TABLE_100();
195     a38 := JTF_VARCHAR2_TABLE_2000();
196     a39 := JTF_NUMBER_TABLE();
197     a40 := JTF_VARCHAR2_TABLE_100();
198   else
199       a0 := JTF_NUMBER_TABLE();
200       a1 := JTF_NUMBER_TABLE();
201       a2 := JTF_VARCHAR2_TABLE_100();
202       a3 := JTF_VARCHAR2_TABLE_100();
203       a4 := JTF_NUMBER_TABLE();
204       a5 := JTF_VARCHAR2_TABLE_100();
205       a6 := JTF_VARCHAR2_TABLE_400();
206       a7 := JTF_NUMBER_TABLE();
207       a8 := JTF_VARCHAR2_TABLE_100();
208       a9 := JTF_VARCHAR2_TABLE_100();
209       a10 := JTF_NUMBER_TABLE();
210       a11 := JTF_VARCHAR2_TABLE_300();
211       a12 := JTF_VARCHAR2_TABLE_400();
212       a13 := JTF_DATE_TABLE();
213       a14 := JTF_DATE_TABLE();
214       a15 := JTF_VARCHAR2_TABLE_100();
215       a16 := JTF_VARCHAR2_TABLE_100();
216       a17 := JTF_VARCHAR2_TABLE_100();
217       a18 := JTF_VARCHAR2_TABLE_100();
218       a19 := JTF_VARCHAR2_TABLE_100();
219       a20 := JTF_VARCHAR2_TABLE_100();
220       a21 := JTF_VARCHAR2_TABLE_200();
221       a22 := JTF_VARCHAR2_TABLE_200();
222       a23 := JTF_VARCHAR2_TABLE_200();
223       a24 := JTF_VARCHAR2_TABLE_200();
224       a25 := JTF_VARCHAR2_TABLE_200();
225       a26 := JTF_VARCHAR2_TABLE_200();
226       a27 := JTF_VARCHAR2_TABLE_200();
227       a28 := JTF_VARCHAR2_TABLE_200();
228       a29 := JTF_VARCHAR2_TABLE_200();
229       a30 := JTF_VARCHAR2_TABLE_200();
230       a31 := JTF_VARCHAR2_TABLE_200();
231       a32 := JTF_VARCHAR2_TABLE_200();
232       a33 := JTF_VARCHAR2_TABLE_200();
233       a34 := JTF_VARCHAR2_TABLE_200();
234       a35 := JTF_VARCHAR2_TABLE_200();
235       a36 := JTF_VARCHAR2_TABLE_100();
236       a37 := JTF_VARCHAR2_TABLE_100();
237       a38 := JTF_VARCHAR2_TABLE_2000();
238       a39 := JTF_NUMBER_TABLE();
239       a40 := JTF_VARCHAR2_TABLE_100();
240       if t.count > 0 then
241         a0.extend(t.count);
242         a1.extend(t.count);
243         a2.extend(t.count);
244         a3.extend(t.count);
245         a4.extend(t.count);
246         a5.extend(t.count);
247         a6.extend(t.count);
248         a7.extend(t.count);
249         a8.extend(t.count);
250         a9.extend(t.count);
251         a10.extend(t.count);
252         a11.extend(t.count);
253         a12.extend(t.count);
254         a13.extend(t.count);
255         a14.extend(t.count);
256         a15.extend(t.count);
257         a16.extend(t.count);
258         a17.extend(t.count);
259         a18.extend(t.count);
260         a19.extend(t.count);
261         a20.extend(t.count);
262         a21.extend(t.count);
263         a22.extend(t.count);
264         a23.extend(t.count);
265         a24.extend(t.count);
266         a25.extend(t.count);
267         a26.extend(t.count);
268         a27.extend(t.count);
269         a28.extend(t.count);
270         a29.extend(t.count);
271         a30.extend(t.count);
272         a31.extend(t.count);
273         a32.extend(t.count);
274         a33.extend(t.count);
275         a34.extend(t.count);
276         a35.extend(t.count);
277         a36.extend(t.count);
278         a37.extend(t.count);
279         a38.extend(t.count);
280         a39.extend(t.count);
281         a40.extend(t.count);
282         ddindx := t.first;
283         indx := 1;
284         while true loop
285           a0(indx) := t(ddindx).subscription_id;
286           a1(indx) := t(ddindx).document_id;
287           a2(indx) := t(ddindx).status_code;
288           a3(indx) := t(ddindx).status_desc;
289           a4(indx) := t(ddindx).requested_by_party_id;
290           a5(indx) := t(ddindx).requested_by_pty_number;
291           a6(indx) := t(ddindx).requested_by_pty_name;
292           a7(indx) := t(ddindx).quantity;
293           a8(indx) := t(ddindx).frequency_code;
294           a9(indx) := t(ddindx).frequency_desc;
295           a10(indx) := t(ddindx).subscribed_frm_party_id;
296           a11(indx) := t(ddindx).subscribed_frm_pty_number;
297           a12(indx) := t(ddindx).subscribed_frm_pty_name;
298           a13(indx) := t(ddindx).start_date;
299           a14(indx) := t(ddindx).end_date;
300           a15(indx) := t(ddindx).purchase_order_no;
301           a16(indx) := t(ddindx).subscription_type_code;
302           a17(indx) := t(ddindx).subscription_type_desc;
303           a18(indx) := t(ddindx).media_type_code;
304           a19(indx) := t(ddindx).media_type_desc;
305           a20(indx) := t(ddindx).attribute_category;
306           a21(indx) := t(ddindx).attribute1;
307           a22(indx) := t(ddindx).attribute2;
308           a23(indx) := t(ddindx).attribute3;
309           a24(indx) := t(ddindx).attribute4;
310           a25(indx) := t(ddindx).attribute5;
311           a26(indx) := t(ddindx).attribute6;
312           a27(indx) := t(ddindx).attribute7;
313           a28(indx) := t(ddindx).attribute8;
314           a29(indx) := t(ddindx).attribute9;
315           a30(indx) := t(ddindx).attribute10;
316           a31(indx) := t(ddindx).attribute11;
317           a32(indx) := t(ddindx).attribute12;
318           a33(indx) := t(ddindx).attribute13;
319           a34(indx) := t(ddindx).attribute14;
320           a35(indx) := t(ddindx).attribute15;
321           a36(indx) := t(ddindx).language;
322           a37(indx) := t(ddindx).source_lang;
323           a38(indx) := t(ddindx).comments;
324           a39(indx) := t(ddindx).object_version_number;
325           a40(indx) := t(ddindx).delete_flag;
326           indx := indx+1;
327           if t.last =ddindx
328             then exit;
329           end if;
330           ddindx := t.next(ddindx);
331         end loop;
332       end if;
333    end if;
334   end rosetta_table_copy_out_p1;
335 
336   procedure create_subscription(p_api_version  NUMBER
337     , p_init_msg_list  VARCHAR2
338     , p_commit  VARCHAR2
339     , p_validate_only  VARCHAR2
340     , p_validation_level  NUMBER
341     , p5_a0 in out nocopy JTF_NUMBER_TABLE
342     , p5_a1 in out nocopy JTF_NUMBER_TABLE
343     , p5_a2 in out nocopy JTF_VARCHAR2_TABLE_100
344     , p5_a3 in out nocopy JTF_VARCHAR2_TABLE_100
345     , p5_a4 in out nocopy JTF_NUMBER_TABLE
346     , p5_a5 in out nocopy JTF_VARCHAR2_TABLE_100
347     , p5_a6 in out nocopy JTF_VARCHAR2_TABLE_400
348     , p5_a7 in out nocopy JTF_NUMBER_TABLE
349     , p5_a8 in out nocopy JTF_VARCHAR2_TABLE_100
350     , p5_a9 in out nocopy JTF_VARCHAR2_TABLE_100
351     , p5_a10 in out nocopy JTF_NUMBER_TABLE
352     , p5_a11 in out nocopy JTF_VARCHAR2_TABLE_300
353     , p5_a12 in out nocopy JTF_VARCHAR2_TABLE_400
354     , p5_a13 in out nocopy JTF_DATE_TABLE
355     , p5_a14 in out nocopy JTF_DATE_TABLE
356     , p5_a15 in out nocopy JTF_VARCHAR2_TABLE_100
357     , p5_a16 in out nocopy JTF_VARCHAR2_TABLE_100
358     , p5_a17 in out nocopy JTF_VARCHAR2_TABLE_100
359     , p5_a18 in out nocopy JTF_VARCHAR2_TABLE_100
360     , p5_a19 in out nocopy JTF_VARCHAR2_TABLE_100
361     , p5_a20 in out nocopy JTF_VARCHAR2_TABLE_100
362     , p5_a21 in out nocopy JTF_VARCHAR2_TABLE_200
363     , p5_a22 in out nocopy JTF_VARCHAR2_TABLE_200
364     , p5_a23 in out nocopy JTF_VARCHAR2_TABLE_200
365     , p5_a24 in out nocopy JTF_VARCHAR2_TABLE_200
366     , p5_a25 in out nocopy JTF_VARCHAR2_TABLE_200
367     , p5_a26 in out nocopy JTF_VARCHAR2_TABLE_200
368     , p5_a27 in out nocopy JTF_VARCHAR2_TABLE_200
369     , p5_a28 in out nocopy JTF_VARCHAR2_TABLE_200
370     , p5_a29 in out nocopy JTF_VARCHAR2_TABLE_200
371     , p5_a30 in out nocopy JTF_VARCHAR2_TABLE_200
372     , p5_a31 in out nocopy JTF_VARCHAR2_TABLE_200
373     , p5_a32 in out nocopy JTF_VARCHAR2_TABLE_200
374     , p5_a33 in out nocopy JTF_VARCHAR2_TABLE_200
375     , p5_a34 in out nocopy JTF_VARCHAR2_TABLE_200
376     , p5_a35 in out nocopy JTF_VARCHAR2_TABLE_200
377     , p5_a36 in out nocopy JTF_VARCHAR2_TABLE_100
378     , p5_a37 in out nocopy JTF_VARCHAR2_TABLE_100
379     , p5_a38 in out nocopy JTF_VARCHAR2_TABLE_2000
380     , p5_a39 in out nocopy JTF_NUMBER_TABLE
381     , p5_a40 in out nocopy JTF_VARCHAR2_TABLE_100
382     , p_module_type  VARCHAR2
383     , x_return_status out nocopy  VARCHAR2
384     , x_msg_count out nocopy  NUMBER
385     , x_msg_data out nocopy  VARCHAR2
386   )
387 
388   as
389     ddp_x_subscription_tbl ahl_di_subscription_pub.subscription_tbl;
390     ddindx binary_integer; indx binary_integer;
391   begin
392 
393     -- copy data to the local IN or IN-OUT args, if any
394 
395 
396 
397 
398 
399     ahl_di_subscription_pub_w.rosetta_table_copy_in_p1(ddp_x_subscription_tbl, p5_a0
400       , p5_a1
401       , p5_a2
402       , p5_a3
403       , p5_a4
404       , p5_a5
405       , p5_a6
406       , p5_a7
407       , p5_a8
408       , p5_a9
409       , p5_a10
410       , p5_a11
411       , p5_a12
412       , p5_a13
413       , p5_a14
414       , p5_a15
415       , p5_a16
416       , p5_a17
417       , p5_a18
418       , p5_a19
419       , p5_a20
420       , p5_a21
421       , p5_a22
422       , p5_a23
423       , p5_a24
424       , p5_a25
425       , p5_a26
426       , p5_a27
427       , p5_a28
428       , p5_a29
429       , p5_a30
430       , p5_a31
431       , p5_a32
432       , p5_a33
433       , p5_a34
434       , p5_a35
435       , p5_a36
436       , p5_a37
437       , p5_a38
438       , p5_a39
439       , p5_a40
440       );
441 
442 
443 
444 
445 
446     -- here's the delegated call to the old PL/SQL routine
447     ahl_di_subscription_pub.create_subscription(p_api_version,
448       p_init_msg_list,
449       p_commit,
450       p_validate_only,
451       p_validation_level,
452       ddp_x_subscription_tbl,
453       p_module_type,
454       x_return_status,
455       x_msg_count,
456       x_msg_data);
457 
458     -- copy data back from the local variables to OUT or IN-OUT args, if any
459 
460 
461 
462 
463 
464     ahl_di_subscription_pub_w.rosetta_table_copy_out_p1(ddp_x_subscription_tbl, p5_a0
465       , p5_a1
466       , p5_a2
467       , p5_a3
468       , p5_a4
469       , p5_a5
470       , p5_a6
471       , p5_a7
472       , p5_a8
473       , p5_a9
474       , p5_a10
475       , p5_a11
476       , p5_a12
477       , p5_a13
478       , p5_a14
479       , p5_a15
480       , p5_a16
481       , p5_a17
482       , p5_a18
483       , p5_a19
484       , p5_a20
485       , p5_a21
486       , p5_a22
487       , p5_a23
488       , p5_a24
489       , p5_a25
490       , p5_a26
491       , p5_a27
492       , p5_a28
493       , p5_a29
494       , p5_a30
495       , p5_a31
496       , p5_a32
497       , p5_a33
498       , p5_a34
499       , p5_a35
500       , p5_a36
501       , p5_a37
502       , p5_a38
503       , p5_a39
504       , p5_a40
505       );
506 
507 
508 
509 
510   end;
511 
512   procedure modify_subscription(p_api_version  NUMBER
513     , p_init_msg_list  VARCHAR2
514     , p_commit  VARCHAR2
515     , p_validate_only  VARCHAR2
516     , p_validation_level  NUMBER
517     , p5_a0 in out nocopy JTF_NUMBER_TABLE
518     , p5_a1 in out nocopy JTF_NUMBER_TABLE
519     , p5_a2 in out nocopy JTF_VARCHAR2_TABLE_100
520     , p5_a3 in out nocopy JTF_VARCHAR2_TABLE_100
521     , p5_a4 in out nocopy JTF_NUMBER_TABLE
522     , p5_a5 in out nocopy JTF_VARCHAR2_TABLE_100
523     , p5_a6 in out nocopy JTF_VARCHAR2_TABLE_400
524     , p5_a7 in out nocopy JTF_NUMBER_TABLE
525     , p5_a8 in out nocopy JTF_VARCHAR2_TABLE_100
526     , p5_a9 in out nocopy JTF_VARCHAR2_TABLE_100
527     , p5_a10 in out nocopy JTF_NUMBER_TABLE
528     , p5_a11 in out nocopy JTF_VARCHAR2_TABLE_300
529     , p5_a12 in out nocopy JTF_VARCHAR2_TABLE_400
530     , p5_a13 in out nocopy JTF_DATE_TABLE
531     , p5_a14 in out nocopy JTF_DATE_TABLE
532     , p5_a15 in out nocopy JTF_VARCHAR2_TABLE_100
533     , p5_a16 in out nocopy JTF_VARCHAR2_TABLE_100
534     , p5_a17 in out nocopy JTF_VARCHAR2_TABLE_100
535     , p5_a18 in out nocopy JTF_VARCHAR2_TABLE_100
536     , p5_a19 in out nocopy JTF_VARCHAR2_TABLE_100
537     , p5_a20 in out nocopy JTF_VARCHAR2_TABLE_100
538     , p5_a21 in out nocopy JTF_VARCHAR2_TABLE_200
539     , p5_a22 in out nocopy JTF_VARCHAR2_TABLE_200
540     , p5_a23 in out nocopy JTF_VARCHAR2_TABLE_200
541     , p5_a24 in out nocopy JTF_VARCHAR2_TABLE_200
542     , p5_a25 in out nocopy JTF_VARCHAR2_TABLE_200
543     , p5_a26 in out nocopy JTF_VARCHAR2_TABLE_200
544     , p5_a27 in out nocopy JTF_VARCHAR2_TABLE_200
545     , p5_a28 in out nocopy JTF_VARCHAR2_TABLE_200
546     , p5_a29 in out nocopy JTF_VARCHAR2_TABLE_200
547     , p5_a30 in out nocopy JTF_VARCHAR2_TABLE_200
548     , p5_a31 in out nocopy JTF_VARCHAR2_TABLE_200
549     , p5_a32 in out nocopy JTF_VARCHAR2_TABLE_200
550     , p5_a33 in out nocopy JTF_VARCHAR2_TABLE_200
551     , p5_a34 in out nocopy JTF_VARCHAR2_TABLE_200
552     , p5_a35 in out nocopy JTF_VARCHAR2_TABLE_200
553     , p5_a36 in out nocopy JTF_VARCHAR2_TABLE_100
554     , p5_a37 in out nocopy JTF_VARCHAR2_TABLE_100
555     , p5_a38 in out nocopy JTF_VARCHAR2_TABLE_2000
556     , p5_a39 in out nocopy JTF_NUMBER_TABLE
557     , p5_a40 in out nocopy JTF_VARCHAR2_TABLE_100
558     , p_module_type  VARCHAR2
559     , x_return_status out nocopy  VARCHAR2
560     , x_msg_count out nocopy  NUMBER
561     , x_msg_data out nocopy  VARCHAR2
562   )
563 
564   as
565     ddp_x_subscription_tbl ahl_di_subscription_pub.subscription_tbl;
566     ddindx binary_integer; indx binary_integer;
567   begin
568 
569     -- copy data to the local IN or IN-OUT args, if any
570 
571 
572 
573 
574 
575     ahl_di_subscription_pub_w.rosetta_table_copy_in_p1(ddp_x_subscription_tbl, p5_a0
576       , p5_a1
577       , p5_a2
578       , p5_a3
579       , p5_a4
580       , p5_a5
581       , p5_a6
582       , p5_a7
583       , p5_a8
584       , p5_a9
585       , p5_a10
586       , p5_a11
587       , p5_a12
588       , p5_a13
589       , p5_a14
590       , p5_a15
591       , p5_a16
592       , p5_a17
593       , p5_a18
594       , p5_a19
595       , p5_a20
596       , p5_a21
597       , p5_a22
598       , p5_a23
599       , p5_a24
600       , p5_a25
601       , p5_a26
602       , p5_a27
603       , p5_a28
604       , p5_a29
605       , p5_a30
606       , p5_a31
607       , p5_a32
608       , p5_a33
609       , p5_a34
610       , p5_a35
611       , p5_a36
612       , p5_a37
613       , p5_a38
614       , p5_a39
615       , p5_a40
616       );
617 
618 
619 
620 
621 
622     -- here's the delegated call to the old PL/SQL routine
623     ahl_di_subscription_pub.modify_subscription(p_api_version,
624       p_init_msg_list,
625       p_commit,
626       p_validate_only,
627       p_validation_level,
628       ddp_x_subscription_tbl,
629       p_module_type,
630       x_return_status,
631       x_msg_count,
632       x_msg_data);
633 
634     -- copy data back from the local variables to OUT or IN-OUT args, if any
635 
636 
637 
638 
639 
640     ahl_di_subscription_pub_w.rosetta_table_copy_out_p1(ddp_x_subscription_tbl, p5_a0
641       , p5_a1
642       , p5_a2
643       , p5_a3
644       , p5_a4
645       , p5_a5
646       , p5_a6
647       , p5_a7
648       , p5_a8
649       , p5_a9
650       , p5_a10
651       , p5_a11
652       , p5_a12
653       , p5_a13
654       , p5_a14
655       , p5_a15
656       , p5_a16
657       , p5_a17
658       , p5_a18
659       , p5_a19
660       , p5_a20
661       , p5_a21
662       , p5_a22
663       , p5_a23
664       , p5_a24
665       , p5_a25
666       , p5_a26
667       , p5_a27
668       , p5_a28
669       , p5_a29
670       , p5_a30
671       , p5_a31
672       , p5_a32
673       , p5_a33
674       , p5_a34
675       , p5_a35
676       , p5_a36
677       , p5_a37
678       , p5_a38
679       , p5_a39
680       , p5_a40
681       );
682 
683 
684 
685 
686   end;
687 
688 end ahl_di_subscription_pub_w;