DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_ATTACHMENT_GRP_W

Source


1 package body jtf_attachment_grp_w as
2   /* $Header: JTFGRATB.pls 115.8 2004/07/09 18:50:20 applrt 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_p1(t out jtf_attachment_grp.attachment_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_NUMBER_TABLE
24     , a2 JTF_VARCHAR2_TABLE_300
25     , a3 JTF_NUMBER_TABLE
26     , a4 JTF_VARCHAR2_TABLE_100
27     , a5 JTF_VARCHAR2_TABLE_100
28     , a6 JTF_VARCHAR2_TABLE_100
29     , a7 JTF_VARCHAR2_TABLE_100
30     , a8 JTF_NUMBER_TABLE
31     , a9 JTF_VARCHAR2_TABLE_100
32     , a10 JTF_VARCHAR2_TABLE_300
33     , a11 JTF_NUMBER_TABLE
34     , a12 JTF_NUMBER_TABLE
35     , a13 JTF_VARCHAR2_TABLE_2000
36     , a14 JTF_VARCHAR2_TABLE_2000
37     , a15 JTF_VARCHAR2_TABLE_2000
38     , a16 JTF_VARCHAR2_TABLE_100
39     , a17 JTF_VARCHAR2_TABLE_100
40     , a18 JTF_VARCHAR2_TABLE_100
41     , a19 JTF_NUMBER_TABLE
42     , a20 JTF_VARCHAR2_TABLE_2000
43     , a21 JTF_VARCHAR2_TABLE_300
44     , a22 JTF_VARCHAR2_TABLE_1100
45     , a23 JTF_NUMBER_TABLE
46     , a24 JTF_VARCHAR2_TABLE_300
47     , a25 JTF_VARCHAR2_TABLE_100
48     , a26 JTF_VARCHAR2_TABLE_200
49     , a27 JTF_VARCHAR2_TABLE_200
50     , a28 JTF_VARCHAR2_TABLE_200
51     , a29 JTF_VARCHAR2_TABLE_200
52     , a30 JTF_VARCHAR2_TABLE_200
53     , a31 JTF_VARCHAR2_TABLE_200
54     , a32 JTF_VARCHAR2_TABLE_200
55     , a33 JTF_VARCHAR2_TABLE_200
56     , a34 JTF_VARCHAR2_TABLE_200
57     , a35 JTF_VARCHAR2_TABLE_200
58     , a36 JTF_VARCHAR2_TABLE_200
59     , a37 JTF_VARCHAR2_TABLE_200
60     , a38 JTF_VARCHAR2_TABLE_200
61     , a39 JTF_VARCHAR2_TABLE_200
62     , a40 JTF_VARCHAR2_TABLE_200
63     , a41 JTF_VARCHAR2_TABLE_2000
64     , a42 JTF_VARCHAR2_TABLE_1000
65     , a43 JTF_VARCHAR2_TABLE_100
66     ) as
67     ddindx binary_integer; indx binary_integer;
68   begin
69   if a0 is not null and a0.count > 0 then
70       if a0.count > 0 then
71         indx := a0.first;
72         ddindx := 1;
73         while true loop
74           t(ddindx).attachment_id := rosetta_g_miss_num_map(a0(indx));
75           t(ddindx).deliverable_id := rosetta_g_miss_num_map(a1(indx));
76           t(ddindx).file_name := a2(indx);
77           t(ddindx).object_version_number := rosetta_g_miss_num_map(a3(indx));
78           t(ddindx).x_action_status := a4(indx);
79           t(ddindx).attachment_used_by := a5(indx);
80           t(ddindx).enabled_flag := a6(indx);
81           t(ddindx).can_fulfill_electronic_flag := a7(indx);
82           t(ddindx).file_id := rosetta_g_miss_num_map(a8(indx));
83           t(ddindx).file_extension := a9(indx);
84           t(ddindx).keywords := a10(indx);
85           t(ddindx).display_width := rosetta_g_miss_num_map(a11(indx));
86           t(ddindx).display_height := rosetta_g_miss_num_map(a12(indx));
87           t(ddindx).display_location := a13(indx);
88           t(ddindx).link_to := a14(indx);
89           t(ddindx).link_url := a15(indx);
90           t(ddindx).send_for_preview_flag := a16(indx);
91           t(ddindx).attachment_type := a17(indx);
92           t(ddindx).language_code := a18(indx);
93           t(ddindx).application_id := rosetta_g_miss_num_map(a19(indx));
94           t(ddindx).description := a20(indx);
95           t(ddindx).default_style_sheet := a21(indx);
96           t(ddindx).display_url := a22(indx);
97           t(ddindx).display_rule_id := rosetta_g_miss_num_map(a23(indx));
98           t(ddindx).display_program := a24(indx);
99           t(ddindx).attribute_category := a25(indx);
100           t(ddindx).attribute1 := a26(indx);
101           t(ddindx).attribute2 := a27(indx);
102           t(ddindx).attribute3 := a28(indx);
103           t(ddindx).attribute4 := a29(indx);
104           t(ddindx).attribute5 := a30(indx);
105           t(ddindx).attribute6 := a31(indx);
106           t(ddindx).attribute7 := a32(indx);
107           t(ddindx).attribute8 := a33(indx);
108           t(ddindx).attribute9 := a34(indx);
109           t(ddindx).attribute10 := a35(indx);
110           t(ddindx).attribute11 := a36(indx);
111           t(ddindx).attribute12 := a37(indx);
112           t(ddindx).attribute13 := a38(indx);
113           t(ddindx).attribute14 := a39(indx);
114           t(ddindx).attribute15 := a40(indx);
115           t(ddindx).display_text := a41(indx);
116           t(ddindx).alternate_text := a42(indx);
117           t(ddindx).attachment_sub_type := a43(indx);
118           ddindx := ddindx+1;
119           if a0.last =indx
120             then exit;
121           end if;
122           indx := a0.next(indx);
123         end loop;
124       end if;
125    end if;
126   end rosetta_table_copy_in_p1;
127   procedure rosetta_table_copy_out_p1(t jtf_attachment_grp.attachment_tbl_type, a0 out JTF_NUMBER_TABLE
128     , a1 out JTF_NUMBER_TABLE
129     , a2 out JTF_VARCHAR2_TABLE_300
130     , a3 out JTF_NUMBER_TABLE
131     , a4 out JTF_VARCHAR2_TABLE_100
132     , a5 out JTF_VARCHAR2_TABLE_100
133     , a6 out JTF_VARCHAR2_TABLE_100
134     , a7 out JTF_VARCHAR2_TABLE_100
135     , a8 out JTF_NUMBER_TABLE
136     , a9 out JTF_VARCHAR2_TABLE_100
137     , a10 out JTF_VARCHAR2_TABLE_300
138     , a11 out JTF_NUMBER_TABLE
139     , a12 out JTF_NUMBER_TABLE
140     , a13 out JTF_VARCHAR2_TABLE_2000
141     , a14 out JTF_VARCHAR2_TABLE_2000
142     , a15 out JTF_VARCHAR2_TABLE_2000
143     , a16 out JTF_VARCHAR2_TABLE_100
144     , a17 out JTF_VARCHAR2_TABLE_100
145     , a18 out JTF_VARCHAR2_TABLE_100
146     , a19 out JTF_NUMBER_TABLE
147     , a20 out JTF_VARCHAR2_TABLE_2000
148     , a21 out JTF_VARCHAR2_TABLE_300
149     , a22 out JTF_VARCHAR2_TABLE_1100
150     , a23 out JTF_NUMBER_TABLE
151     , a24 out JTF_VARCHAR2_TABLE_300
152     , a25 out JTF_VARCHAR2_TABLE_100
153     , a26 out JTF_VARCHAR2_TABLE_200
154     , a27 out JTF_VARCHAR2_TABLE_200
155     , a28 out JTF_VARCHAR2_TABLE_200
156     , a29 out JTF_VARCHAR2_TABLE_200
157     , a30 out JTF_VARCHAR2_TABLE_200
158     , a31 out JTF_VARCHAR2_TABLE_200
159     , a32 out JTF_VARCHAR2_TABLE_200
160     , a33 out JTF_VARCHAR2_TABLE_200
161     , a34 out JTF_VARCHAR2_TABLE_200
162     , a35 out JTF_VARCHAR2_TABLE_200
163     , a36 out JTF_VARCHAR2_TABLE_200
164     , a37 out JTF_VARCHAR2_TABLE_200
165     , a38 out JTF_VARCHAR2_TABLE_200
166     , a39 out JTF_VARCHAR2_TABLE_200
167     , a40 out JTF_VARCHAR2_TABLE_200
168     , a41 out JTF_VARCHAR2_TABLE_2000
169     , a42 out JTF_VARCHAR2_TABLE_1000
170     , a43 out JTF_VARCHAR2_TABLE_100
171     ) as
172     ddindx binary_integer; indx binary_integer;
173   begin
174   if t is null or t.count = 0 then
175     a0 := JTF_NUMBER_TABLE();
176     a1 := JTF_NUMBER_TABLE();
177     a2 := JTF_VARCHAR2_TABLE_300();
178     a3 := JTF_NUMBER_TABLE();
179     a4 := JTF_VARCHAR2_TABLE_100();
180     a5 := JTF_VARCHAR2_TABLE_100();
181     a6 := JTF_VARCHAR2_TABLE_100();
182     a7 := JTF_VARCHAR2_TABLE_100();
183     a8 := JTF_NUMBER_TABLE();
184     a9 := JTF_VARCHAR2_TABLE_100();
185     a10 := JTF_VARCHAR2_TABLE_300();
186     a11 := JTF_NUMBER_TABLE();
187     a12 := JTF_NUMBER_TABLE();
188     a13 := JTF_VARCHAR2_TABLE_2000();
189     a14 := JTF_VARCHAR2_TABLE_2000();
190     a15 := JTF_VARCHAR2_TABLE_2000();
191     a16 := JTF_VARCHAR2_TABLE_100();
192     a17 := JTF_VARCHAR2_TABLE_100();
193     a18 := JTF_VARCHAR2_TABLE_100();
194     a19 := JTF_NUMBER_TABLE();
195     a20 := JTF_VARCHAR2_TABLE_2000();
196     a21 := JTF_VARCHAR2_TABLE_300();
197     a22 := JTF_VARCHAR2_TABLE_1100();
198     a23 := JTF_NUMBER_TABLE();
199     a24 := JTF_VARCHAR2_TABLE_300();
200     a25 := JTF_VARCHAR2_TABLE_100();
201     a26 := JTF_VARCHAR2_TABLE_200();
202     a27 := JTF_VARCHAR2_TABLE_200();
203     a28 := JTF_VARCHAR2_TABLE_200();
204     a29 := JTF_VARCHAR2_TABLE_200();
205     a30 := JTF_VARCHAR2_TABLE_200();
206     a31 := JTF_VARCHAR2_TABLE_200();
207     a32 := JTF_VARCHAR2_TABLE_200();
208     a33 := JTF_VARCHAR2_TABLE_200();
209     a34 := JTF_VARCHAR2_TABLE_200();
210     a35 := JTF_VARCHAR2_TABLE_200();
211     a36 := JTF_VARCHAR2_TABLE_200();
212     a37 := JTF_VARCHAR2_TABLE_200();
213     a38 := JTF_VARCHAR2_TABLE_200();
214     a39 := JTF_VARCHAR2_TABLE_200();
215     a40 := JTF_VARCHAR2_TABLE_200();
216     a41 := JTF_VARCHAR2_TABLE_2000();
217     a42 := JTF_VARCHAR2_TABLE_1000();
218     a43 := JTF_VARCHAR2_TABLE_100();
219   else
220       a0 := JTF_NUMBER_TABLE();
221       a1 := JTF_NUMBER_TABLE();
222       a2 := JTF_VARCHAR2_TABLE_300();
223       a3 := JTF_NUMBER_TABLE();
224       a4 := JTF_VARCHAR2_TABLE_100();
225       a5 := JTF_VARCHAR2_TABLE_100();
226       a6 := JTF_VARCHAR2_TABLE_100();
227       a7 := JTF_VARCHAR2_TABLE_100();
228       a8 := JTF_NUMBER_TABLE();
229       a9 := JTF_VARCHAR2_TABLE_100();
230       a10 := JTF_VARCHAR2_TABLE_300();
231       a11 := JTF_NUMBER_TABLE();
232       a12 := JTF_NUMBER_TABLE();
233       a13 := JTF_VARCHAR2_TABLE_2000();
234       a14 := JTF_VARCHAR2_TABLE_2000();
235       a15 := JTF_VARCHAR2_TABLE_2000();
236       a16 := JTF_VARCHAR2_TABLE_100();
237       a17 := JTF_VARCHAR2_TABLE_100();
238       a18 := JTF_VARCHAR2_TABLE_100();
239       a19 := JTF_NUMBER_TABLE();
240       a20 := JTF_VARCHAR2_TABLE_2000();
241       a21 := JTF_VARCHAR2_TABLE_300();
242       a22 := JTF_VARCHAR2_TABLE_1100();
243       a23 := JTF_NUMBER_TABLE();
244       a24 := JTF_VARCHAR2_TABLE_300();
245       a25 := JTF_VARCHAR2_TABLE_100();
246       a26 := JTF_VARCHAR2_TABLE_200();
247       a27 := JTF_VARCHAR2_TABLE_200();
248       a28 := JTF_VARCHAR2_TABLE_200();
249       a29 := JTF_VARCHAR2_TABLE_200();
250       a30 := JTF_VARCHAR2_TABLE_200();
251       a31 := JTF_VARCHAR2_TABLE_200();
252       a32 := JTF_VARCHAR2_TABLE_200();
253       a33 := JTF_VARCHAR2_TABLE_200();
254       a34 := JTF_VARCHAR2_TABLE_200();
255       a35 := JTF_VARCHAR2_TABLE_200();
256       a36 := JTF_VARCHAR2_TABLE_200();
257       a37 := JTF_VARCHAR2_TABLE_200();
258       a38 := JTF_VARCHAR2_TABLE_200();
259       a39 := JTF_VARCHAR2_TABLE_200();
260       a40 := JTF_VARCHAR2_TABLE_200();
261       a41 := JTF_VARCHAR2_TABLE_2000();
262       a42 := JTF_VARCHAR2_TABLE_1000();
263       a43 := JTF_VARCHAR2_TABLE_100();
264       if t.count > 0 then
265         a0.extend(t.count);
266         a1.extend(t.count);
267         a2.extend(t.count);
268         a3.extend(t.count);
269         a4.extend(t.count);
270         a5.extend(t.count);
271         a6.extend(t.count);
272         a7.extend(t.count);
273         a8.extend(t.count);
274         a9.extend(t.count);
275         a10.extend(t.count);
276         a11.extend(t.count);
277         a12.extend(t.count);
278         a13.extend(t.count);
279         a14.extend(t.count);
280         a15.extend(t.count);
281         a16.extend(t.count);
282         a17.extend(t.count);
283         a18.extend(t.count);
284         a19.extend(t.count);
285         a20.extend(t.count);
286         a21.extend(t.count);
287         a22.extend(t.count);
288         a23.extend(t.count);
289         a24.extend(t.count);
290         a25.extend(t.count);
291         a26.extend(t.count);
292         a27.extend(t.count);
293         a28.extend(t.count);
294         a29.extend(t.count);
295         a30.extend(t.count);
296         a31.extend(t.count);
297         a32.extend(t.count);
298         a33.extend(t.count);
299         a34.extend(t.count);
300         a35.extend(t.count);
301         a36.extend(t.count);
302         a37.extend(t.count);
303         a38.extend(t.count);
304         a39.extend(t.count);
305         a40.extend(t.count);
306         a41.extend(t.count);
307         a42.extend(t.count);
308         a43.extend(t.count);
309         ddindx := t.first;
310         indx := 1;
311         while true loop
312           a0(indx) := rosetta_g_miss_num_map(t(ddindx).attachment_id);
313           a1(indx) := rosetta_g_miss_num_map(t(ddindx).deliverable_id);
314           a2(indx) := t(ddindx).file_name;
315           a3(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
316           a4(indx) := t(ddindx).x_action_status;
317           a5(indx) := t(ddindx).attachment_used_by;
318           a6(indx) := t(ddindx).enabled_flag;
319           a7(indx) := t(ddindx).can_fulfill_electronic_flag;
320           a8(indx) := rosetta_g_miss_num_map(t(ddindx).file_id);
321           a9(indx) := t(ddindx).file_extension;
322           a10(indx) := t(ddindx).keywords;
323           a11(indx) := rosetta_g_miss_num_map(t(ddindx).display_width);
324           a12(indx) := rosetta_g_miss_num_map(t(ddindx).display_height);
325           a13(indx) := t(ddindx).display_location;
326           a14(indx) := t(ddindx).link_to;
327           a15(indx) := t(ddindx).link_url;
328           a16(indx) := t(ddindx).send_for_preview_flag;
329           a17(indx) := t(ddindx).attachment_type;
330           a18(indx) := t(ddindx).language_code;
331           a19(indx) := rosetta_g_miss_num_map(t(ddindx).application_id);
332           a20(indx) := t(ddindx).description;
333           a21(indx) := t(ddindx).default_style_sheet;
334           a22(indx) := t(ddindx).display_url;
335           a23(indx) := rosetta_g_miss_num_map(t(ddindx).display_rule_id);
336           a24(indx) := t(ddindx).display_program;
337           a25(indx) := t(ddindx).attribute_category;
338           a26(indx) := t(ddindx).attribute1;
339           a27(indx) := t(ddindx).attribute2;
340           a28(indx) := t(ddindx).attribute3;
341           a29(indx) := t(ddindx).attribute4;
342           a30(indx) := t(ddindx).attribute5;
343           a31(indx) := t(ddindx).attribute6;
344           a32(indx) := t(ddindx).attribute7;
345           a33(indx) := t(ddindx).attribute8;
346           a34(indx) := t(ddindx).attribute9;
347           a35(indx) := t(ddindx).attribute10;
348           a36(indx) := t(ddindx).attribute11;
349           a37(indx) := t(ddindx).attribute12;
350           a38(indx) := t(ddindx).attribute13;
351           a39(indx) := t(ddindx).attribute14;
352           a40(indx) := t(ddindx).attribute15;
353           a41(indx) := t(ddindx).display_text;
354           a42(indx) := t(ddindx).alternate_text;
355           a43(indx) := t(ddindx).attachment_sub_type;
356           indx := indx+1;
357           if t.last =ddindx
358             then exit;
359           end if;
360           ddindx := t.next(ddindx);
361         end loop;
362       end if;
363    end if;
364   end rosetta_table_copy_out_p1;
365 
366   procedure rosetta_table_copy_in_p3(t out jtf_attachment_grp.ath_id_ver_tbl_type, a0 JTF_NUMBER_TABLE
367     , a1 JTF_VARCHAR2_TABLE_300
368     , a2 JTF_NUMBER_TABLE
369     , a3 JTF_VARCHAR2_TABLE_100
370     ) as
371     ddindx binary_integer; indx binary_integer;
372   begin
373   if a0 is not null and a0.count > 0 then
374       if a0.count > 0 then
375         indx := a0.first;
376         ddindx := 1;
377         while true loop
378           t(ddindx).attachment_id := rosetta_g_miss_num_map(a0(indx));
379           t(ddindx).file_name := a1(indx);
380           t(ddindx).object_version_number := rosetta_g_miss_num_map(a2(indx));
381           t(ddindx).x_action_status := a3(indx);
382           ddindx := ddindx+1;
383           if a0.last =indx
384             then exit;
385           end if;
386           indx := a0.next(indx);
387         end loop;
388       end if;
389    end if;
390   end rosetta_table_copy_in_p3;
391   procedure rosetta_table_copy_out_p3(t jtf_attachment_grp.ath_id_ver_tbl_type, a0 out JTF_NUMBER_TABLE
392     , a1 out JTF_VARCHAR2_TABLE_300
393     , a2 out JTF_NUMBER_TABLE
394     , a3 out JTF_VARCHAR2_TABLE_100
395     ) as
396     ddindx binary_integer; indx binary_integer;
397   begin
398   if t is null or t.count = 0 then
399     a0 := JTF_NUMBER_TABLE();
400     a1 := JTF_VARCHAR2_TABLE_300();
401     a2 := JTF_NUMBER_TABLE();
402     a3 := JTF_VARCHAR2_TABLE_100();
403   else
404       a0 := JTF_NUMBER_TABLE();
405       a1 := JTF_VARCHAR2_TABLE_300();
406       a2 := JTF_NUMBER_TABLE();
407       a3 := JTF_VARCHAR2_TABLE_100();
408       if t.count > 0 then
409         a0.extend(t.count);
410         a1.extend(t.count);
411         a2.extend(t.count);
412         a3.extend(t.count);
413         ddindx := t.first;
414         indx := 1;
415         while true loop
416           a0(indx) := rosetta_g_miss_num_map(t(ddindx).attachment_id);
417           a1(indx) := t(ddindx).file_name;
418           a2(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
419           a3(indx) := t(ddindx).x_action_status;
420           indx := indx+1;
421           if t.last =ddindx
422             then exit;
423           end if;
424           ddindx := t.next(ddindx);
425         end loop;
426       end if;
427    end if;
428   end rosetta_table_copy_out_p3;
429 
430   procedure rosetta_table_copy_in_p4(t out jtf_attachment_grp.number_table, a0 JTF_NUMBER_TABLE) as
431     ddindx binary_integer; indx binary_integer;
432   begin
433   if a0 is null then
434     t := null;
435   elsif a0.count = 0 then
436     t := jtf_attachment_grp.number_table();
437   else
438       if a0.count > 0 then
439       t := jtf_attachment_grp.number_table();
440       t.extend(a0.count);
441         indx := a0.first;
442         ddindx := 1;
443         while true loop
444           t(ddindx) := a0(indx);
445           ddindx := ddindx+1;
446           if a0.last =indx
447             then exit;
448           end if;
449           indx := a0.next(indx);
450         end loop;
451       end if;
452    end if;
453   end rosetta_table_copy_in_p4;
454   procedure rosetta_table_copy_out_p4(t jtf_attachment_grp.number_table, a0 out JTF_NUMBER_TABLE) as
455     ddindx binary_integer; indx binary_integer;
456   begin
457   if t is null then
458     a0 := null;
459   elsif t.count = 0 then
460     a0 := JTF_NUMBER_TABLE();
461   else
462       a0 := JTF_NUMBER_TABLE();
463       if t.count > 0 then
464         a0.extend(t.count);
465         ddindx := t.first;
466         indx := 1;
467         while true loop
468           a0(indx) := t(ddindx);
469           indx := indx+1;
470           if t.last =ddindx
471             then exit;
472           end if;
473           ddindx := t.next(ddindx);
474         end loop;
475       end if;
476    end if;
477   end rosetta_table_copy_out_p4;
478 
479   procedure rosetta_table_copy_in_p5(t out jtf_attachment_grp.varchar2_table_300, a0 JTF_VARCHAR2_TABLE_300) as
480     ddindx binary_integer; indx binary_integer;
481   begin
482   if a0 is null then
483     t := null;
484   elsif a0.count = 0 then
485     t := jtf_attachment_grp.varchar2_table_300();
486   else
487       if a0.count > 0 then
488       t := jtf_attachment_grp.varchar2_table_300();
489       t.extend(a0.count);
490         indx := a0.first;
491         ddindx := 1;
492         while true loop
493           t(ddindx) := a0(indx);
494           ddindx := ddindx+1;
495           if a0.last =indx
496             then exit;
497           end if;
498           indx := a0.next(indx);
499         end loop;
500       end if;
501    end if;
502   end rosetta_table_copy_in_p5;
503   procedure rosetta_table_copy_out_p5(t jtf_attachment_grp.varchar2_table_300, a0 out JTF_VARCHAR2_TABLE_300) as
504     ddindx binary_integer; indx binary_integer;
505   begin
506   if t is null then
507     a0 := null;
508   elsif t.count = 0 then
509     a0 := JTF_VARCHAR2_TABLE_300();
510   else
511       a0 := JTF_VARCHAR2_TABLE_300();
512       if t.count > 0 then
513         a0.extend(t.count);
514         ddindx := t.first;
515         indx := 1;
516         while true loop
517           a0(indx) := t(ddindx);
518           indx := indx+1;
519           if t.last =ddindx
520             then exit;
521           end if;
522           ddindx := t.next(ddindx);
523         end loop;
524       end if;
525    end if;
526   end rosetta_table_copy_out_p5;
527 
528   procedure rosetta_table_copy_in_p6(t out jtf_attachment_grp.varchar2_table_20, a0 JTF_VARCHAR2_TABLE_100) as
529     ddindx binary_integer; indx binary_integer;
530   begin
531   if a0 is null then
532     t := null;
533   elsif a0.count = 0 then
534     t := jtf_attachment_grp.varchar2_table_20();
535   else
536       if a0.count > 0 then
537       t := jtf_attachment_grp.varchar2_table_20();
538       t.extend(a0.count);
539         indx := a0.first;
540         ddindx := 1;
541         while true loop
542           t(ddindx) := a0(indx);
543           ddindx := ddindx+1;
544           if a0.last =indx
545             then exit;
546           end if;
547           indx := a0.next(indx);
548         end loop;
549       end if;
550    end if;
551   end rosetta_table_copy_in_p6;
552   procedure rosetta_table_copy_out_p6(t jtf_attachment_grp.varchar2_table_20, a0 out JTF_VARCHAR2_TABLE_100) as
553     ddindx binary_integer; indx binary_integer;
554   begin
555   if t is null then
556     a0 := null;
557   elsif t.count = 0 then
558     a0 := JTF_VARCHAR2_TABLE_100();
559   else
560       a0 := JTF_VARCHAR2_TABLE_100();
561       if t.count > 0 then
562         a0.extend(t.count);
563         ddindx := t.first;
564         indx := 1;
565         while true loop
566           a0(indx) := t(ddindx);
567           indx := indx+1;
568           if t.last =ddindx
569             then exit;
570           end if;
571           ddindx := t.next(ddindx);
572         end loop;
573       end if;
574    end if;
575   end rosetta_table_copy_out_p6;
576 
577   procedure list_attachment(p_api_version  NUMBER
578     , p_init_msg_list  VARCHAR2
579     , x_return_status out  VARCHAR2
580     , x_msg_count out  NUMBER
581     , x_msg_data out  VARCHAR2
582     , p_appl_id  NUMBER
583     , p_deliverable_id  NUMBER
584     , p_start_id  NUMBER
585     , p_batch_size  NUMBER
586     , x_row_count out  NUMBER
587     , x_ath_id_tbl out JTF_NUMBER_TABLE
588     , x_dlv_id_tbl out JTF_NUMBER_TABLE
589     , x_file_name_tbl out JTF_VARCHAR2_TABLE_300
590     , x_file_id_tbl out JTF_NUMBER_TABLE
591     , x_file_ext_tbl out JTF_VARCHAR2_TABLE_100
592     , x_dsp_width_tbl out JTF_NUMBER_TABLE
593     , x_dsp_height_tbl out JTF_NUMBER_TABLE
594     , x_version_tbl out JTF_NUMBER_TABLE
595   )
596   as
597     ddx_ath_id_tbl jtf_attachment_grp.number_table;
598     ddx_dlv_id_tbl jtf_attachment_grp.number_table;
599     ddx_file_name_tbl jtf_attachment_grp.varchar2_table_300;
600     ddx_file_id_tbl jtf_attachment_grp.number_table;
601     ddx_file_ext_tbl jtf_attachment_grp.varchar2_table_20;
602     ddx_dsp_width_tbl jtf_attachment_grp.number_table;
603     ddx_dsp_height_tbl jtf_attachment_grp.number_table;
604     ddx_version_tbl jtf_attachment_grp.number_table;
605     ddindx binary_integer; indx binary_integer;
606   begin
607 
608     -- copy data to the local IN or IN-OUT args, if any
609 
610 
611 
612 
613 
614 
615 
616 
617 
618 
619 
620 
621 
622 
623 
624 
625 
626 
627     -- here's the delegated call to the old PL/SQL routine
628     jtf_attachment_grp.list_attachment(p_api_version,
629       p_init_msg_list,
630       x_return_status,
631       x_msg_count,
632       x_msg_data,
633       p_appl_id,
634       p_deliverable_id,
635       p_start_id,
636       p_batch_size,
637       x_row_count,
638       ddx_ath_id_tbl,
639       ddx_dlv_id_tbl,
640       ddx_file_name_tbl,
641       ddx_file_id_tbl,
642       ddx_file_ext_tbl,
643       ddx_dsp_width_tbl,
644       ddx_dsp_height_tbl,
645       ddx_version_tbl);
646 
647     -- copy data back from the local OUT or IN-OUT args, if any
648 
649 
650 
651 
652 
653 
654 
655 
656 
657 
658     jtf_attachment_grp_w.rosetta_table_copy_out_p4(ddx_ath_id_tbl, x_ath_id_tbl);
659 
660     jtf_attachment_grp_w.rosetta_table_copy_out_p4(ddx_dlv_id_tbl, x_dlv_id_tbl);
661 
662     jtf_attachment_grp_w.rosetta_table_copy_out_p5(ddx_file_name_tbl, x_file_name_tbl);
663 
664     jtf_attachment_grp_w.rosetta_table_copy_out_p4(ddx_file_id_tbl, x_file_id_tbl);
665 
666     jtf_attachment_grp_w.rosetta_table_copy_out_p6(ddx_file_ext_tbl, x_file_ext_tbl);
667 
668     jtf_attachment_grp_w.rosetta_table_copy_out_p4(ddx_dsp_width_tbl, x_dsp_width_tbl);
669 
670     jtf_attachment_grp_w.rosetta_table_copy_out_p4(ddx_dsp_height_tbl, x_dsp_height_tbl);
671 
672     jtf_attachment_grp_w.rosetta_table_copy_out_p4(ddx_version_tbl, x_version_tbl);
673   end;
674 
675   procedure save_attachment(p_api_version  NUMBER
676     , p_init_msg_list  VARCHAR2
677     , p_commit  VARCHAR2
678     , x_return_status out  VARCHAR2
679     , x_msg_count out  NUMBER
680     , x_msg_data out  VARCHAR2
681     , p6_a0 in out  NUMBER
682     , p6_a1 in out  NUMBER
683     , p6_a2 in out  VARCHAR2
684     , p6_a3 in out  NUMBER
685     , p6_a4 in out  VARCHAR2
686     , p6_a5 in out  VARCHAR2
687     , p6_a6 in out  VARCHAR2
688     , p6_a7 in out  VARCHAR2
689     , p6_a8 in out  NUMBER
690     , p6_a9 in out  VARCHAR2
691     , p6_a10 in out  VARCHAR2
692     , p6_a11 in out  NUMBER
693     , p6_a12 in out  NUMBER
694     , p6_a13 in out  VARCHAR2
695     , p6_a14 in out  VARCHAR2
696     , p6_a15 in out  VARCHAR2
697     , p6_a16 in out  VARCHAR2
698     , p6_a17 in out  VARCHAR2
699     , p6_a18 in out  VARCHAR2
700     , p6_a19 in out  NUMBER
701     , p6_a20 in out  VARCHAR2
702     , p6_a21 in out  VARCHAR2
703     , p6_a22 in out  VARCHAR2
704     , p6_a23 in out  NUMBER
705     , p6_a24 in out  VARCHAR2
706     , p6_a25 in out  VARCHAR2
707     , p6_a26 in out  VARCHAR2
708     , p6_a27 in out  VARCHAR2
709     , p6_a28 in out  VARCHAR2
710     , p6_a29 in out  VARCHAR2
711     , p6_a30 in out  VARCHAR2
712     , p6_a31 in out  VARCHAR2
713     , p6_a32 in out  VARCHAR2
714     , p6_a33 in out  VARCHAR2
715     , p6_a34 in out  VARCHAR2
716     , p6_a35 in out  VARCHAR2
717     , p6_a36 in out  VARCHAR2
718     , p6_a37 in out  VARCHAR2
719     , p6_a38 in out  VARCHAR2
720     , p6_a39 in out  VARCHAR2
721     , p6_a40 in out  VARCHAR2
722     , p6_a41 in out  VARCHAR2
723     , p6_a42 in out  VARCHAR2
724     , p6_a43 in out  VARCHAR2
725   )
726   as
727     ddp_attachment_rec jtf_attachment_grp.attachment_rec_type;
728     ddindx binary_integer; indx binary_integer;
729   begin
730 
731     -- copy data to the local IN or IN-OUT args, if any
732 
733 
734 
735 
736 
737 
738     ddp_attachment_rec.attachment_id := rosetta_g_miss_num_map(p6_a0);
739     ddp_attachment_rec.deliverable_id := rosetta_g_miss_num_map(p6_a1);
740     ddp_attachment_rec.file_name := p6_a2;
741     ddp_attachment_rec.object_version_number := rosetta_g_miss_num_map(p6_a3);
742     ddp_attachment_rec.x_action_status := p6_a4;
743     ddp_attachment_rec.attachment_used_by := p6_a5;
744     ddp_attachment_rec.enabled_flag := p6_a6;
745     ddp_attachment_rec.can_fulfill_electronic_flag := p6_a7;
746     ddp_attachment_rec.file_id := rosetta_g_miss_num_map(p6_a8);
747     ddp_attachment_rec.file_extension := p6_a9;
748     ddp_attachment_rec.keywords := p6_a10;
749     ddp_attachment_rec.display_width := rosetta_g_miss_num_map(p6_a11);
750     ddp_attachment_rec.display_height := rosetta_g_miss_num_map(p6_a12);
751     ddp_attachment_rec.display_location := p6_a13;
752     ddp_attachment_rec.link_to := p6_a14;
753     ddp_attachment_rec.link_url := p6_a15;
754     ddp_attachment_rec.send_for_preview_flag := p6_a16;
755     ddp_attachment_rec.attachment_type := p6_a17;
756     ddp_attachment_rec.language_code := p6_a18;
757     ddp_attachment_rec.application_id := rosetta_g_miss_num_map(p6_a19);
758     ddp_attachment_rec.description := p6_a20;
759     ddp_attachment_rec.default_style_sheet := p6_a21;
760     ddp_attachment_rec.display_url := p6_a22;
761     ddp_attachment_rec.display_rule_id := rosetta_g_miss_num_map(p6_a23);
762     ddp_attachment_rec.display_program := p6_a24;
763     ddp_attachment_rec.attribute_category := p6_a25;
764     ddp_attachment_rec.attribute1 := p6_a26;
765     ddp_attachment_rec.attribute2 := p6_a27;
766     ddp_attachment_rec.attribute3 := p6_a28;
767     ddp_attachment_rec.attribute4 := p6_a29;
768     ddp_attachment_rec.attribute5 := p6_a30;
769     ddp_attachment_rec.attribute6 := p6_a31;
770     ddp_attachment_rec.attribute7 := p6_a32;
771     ddp_attachment_rec.attribute8 := p6_a33;
772     ddp_attachment_rec.attribute9 := p6_a34;
773     ddp_attachment_rec.attribute10 := p6_a35;
774     ddp_attachment_rec.attribute11 := p6_a36;
775     ddp_attachment_rec.attribute12 := p6_a37;
776     ddp_attachment_rec.attribute13 := p6_a38;
777     ddp_attachment_rec.attribute14 := p6_a39;
778     ddp_attachment_rec.attribute15 := p6_a40;
779     ddp_attachment_rec.display_text := p6_a41;
780     ddp_attachment_rec.alternate_text := p6_a42;
781     ddp_attachment_rec.attachment_sub_type := p6_a43;
782 
783     -- here's the delegated call to the old PL/SQL routine
784     jtf_attachment_grp.save_attachment(p_api_version,
785       p_init_msg_list,
786       p_commit,
787       x_return_status,
788       x_msg_count,
789       x_msg_data,
790       ddp_attachment_rec);
791 
792     -- copy data back from the local OUT or IN-OUT args, if any
793 
794 
795 
796 
797 
798 
799     p6_a0 := rosetta_g_miss_num_map(ddp_attachment_rec.attachment_id);
800     p6_a1 := rosetta_g_miss_num_map(ddp_attachment_rec.deliverable_id);
801     p6_a2 := ddp_attachment_rec.file_name;
802     p6_a3 := rosetta_g_miss_num_map(ddp_attachment_rec.object_version_number);
803     p6_a4 := ddp_attachment_rec.x_action_status;
804     p6_a5 := ddp_attachment_rec.attachment_used_by;
805     p6_a6 := ddp_attachment_rec.enabled_flag;
806     p6_a7 := ddp_attachment_rec.can_fulfill_electronic_flag;
807     p6_a8 := rosetta_g_miss_num_map(ddp_attachment_rec.file_id);
808     p6_a9 := ddp_attachment_rec.file_extension;
809     p6_a10 := ddp_attachment_rec.keywords;
810     p6_a11 := rosetta_g_miss_num_map(ddp_attachment_rec.display_width);
811     p6_a12 := rosetta_g_miss_num_map(ddp_attachment_rec.display_height);
812     p6_a13 := ddp_attachment_rec.display_location;
813     p6_a14 := ddp_attachment_rec.link_to;
814     p6_a15 := ddp_attachment_rec.link_url;
815     p6_a16 := ddp_attachment_rec.send_for_preview_flag;
816     p6_a17 := ddp_attachment_rec.attachment_type;
817     p6_a18 := ddp_attachment_rec.language_code;
818     p6_a19 := rosetta_g_miss_num_map(ddp_attachment_rec.application_id);
819     p6_a20 := ddp_attachment_rec.description;
820     p6_a21 := ddp_attachment_rec.default_style_sheet;
821     p6_a22 := ddp_attachment_rec.display_url;
822     p6_a23 := rosetta_g_miss_num_map(ddp_attachment_rec.display_rule_id);
823     p6_a24 := ddp_attachment_rec.display_program;
824     p6_a25 := ddp_attachment_rec.attribute_category;
825     p6_a26 := ddp_attachment_rec.attribute1;
826     p6_a27 := ddp_attachment_rec.attribute2;
827     p6_a28 := ddp_attachment_rec.attribute3;
828     p6_a29 := ddp_attachment_rec.attribute4;
829     p6_a30 := ddp_attachment_rec.attribute5;
830     p6_a31 := ddp_attachment_rec.attribute6;
831     p6_a32 := ddp_attachment_rec.attribute7;
832     p6_a33 := ddp_attachment_rec.attribute8;
833     p6_a34 := ddp_attachment_rec.attribute9;
834     p6_a35 := ddp_attachment_rec.attribute10;
835     p6_a36 := ddp_attachment_rec.attribute11;
836     p6_a37 := ddp_attachment_rec.attribute12;
837     p6_a38 := ddp_attachment_rec.attribute13;
838     p6_a39 := ddp_attachment_rec.attribute14;
839     p6_a40 := ddp_attachment_rec.attribute15;
840     p6_a41 := ddp_attachment_rec.display_text;
841     p6_a42 := ddp_attachment_rec.alternate_text;
842     p6_a43 := ddp_attachment_rec.attachment_sub_type;
843   end;
844 
845   procedure save_attachment(p_api_version  NUMBER
846     , p_init_msg_list  VARCHAR2
847     , p_commit  VARCHAR2
848     , x_return_status out  VARCHAR2
849     , x_msg_count out  NUMBER
850     , x_msg_data out  VARCHAR2
851     , p6_a0 in out JTF_NUMBER_TABLE
852     , p6_a1 in out JTF_NUMBER_TABLE
853     , p6_a2 in out JTF_VARCHAR2_TABLE_300
854     , p6_a3 in out JTF_NUMBER_TABLE
855     , p6_a4 in out JTF_VARCHAR2_TABLE_100
856     , p6_a5 in out JTF_VARCHAR2_TABLE_100
857     , p6_a6 in out JTF_VARCHAR2_TABLE_100
858     , p6_a7 in out JTF_VARCHAR2_TABLE_100
859     , p6_a8 in out JTF_NUMBER_TABLE
860     , p6_a9 in out JTF_VARCHAR2_TABLE_100
861     , p6_a10 in out JTF_VARCHAR2_TABLE_300
862     , p6_a11 in out JTF_NUMBER_TABLE
863     , p6_a12 in out JTF_NUMBER_TABLE
864     , p6_a13 in out JTF_VARCHAR2_TABLE_2000
865     , p6_a14 in out JTF_VARCHAR2_TABLE_2000
866     , p6_a15 in out JTF_VARCHAR2_TABLE_2000
867     , p6_a16 in out JTF_VARCHAR2_TABLE_100
868     , p6_a17 in out JTF_VARCHAR2_TABLE_100
869     , p6_a18 in out JTF_VARCHAR2_TABLE_100
870     , p6_a19 in out JTF_NUMBER_TABLE
871     , p6_a20 in out JTF_VARCHAR2_TABLE_2000
872     , p6_a21 in out JTF_VARCHAR2_TABLE_300
873     , p6_a22 in out JTF_VARCHAR2_TABLE_1100
874     , p6_a23 in out JTF_NUMBER_TABLE
875     , p6_a24 in out JTF_VARCHAR2_TABLE_300
876     , p6_a25 in out JTF_VARCHAR2_TABLE_100
877     , p6_a26 in out JTF_VARCHAR2_TABLE_200
878     , p6_a27 in out JTF_VARCHAR2_TABLE_200
879     , p6_a28 in out JTF_VARCHAR2_TABLE_200
880     , p6_a29 in out JTF_VARCHAR2_TABLE_200
881     , p6_a30 in out JTF_VARCHAR2_TABLE_200
882     , p6_a31 in out JTF_VARCHAR2_TABLE_200
883     , p6_a32 in out JTF_VARCHAR2_TABLE_200
884     , p6_a33 in out JTF_VARCHAR2_TABLE_200
885     , p6_a34 in out JTF_VARCHAR2_TABLE_200
886     , p6_a35 in out JTF_VARCHAR2_TABLE_200
887     , p6_a36 in out JTF_VARCHAR2_TABLE_200
888     , p6_a37 in out JTF_VARCHAR2_TABLE_200
889     , p6_a38 in out JTF_VARCHAR2_TABLE_200
890     , p6_a39 in out JTF_VARCHAR2_TABLE_200
891     , p6_a40 in out JTF_VARCHAR2_TABLE_200
892     , p6_a41 in out JTF_VARCHAR2_TABLE_2000
893     , p6_a42 in out JTF_VARCHAR2_TABLE_1000
894     , p6_a43 in out JTF_VARCHAR2_TABLE_100
895   )
896   as
897     ddp_attachment_tbl jtf_attachment_grp.attachment_tbl_type;
898     ddindx binary_integer; indx binary_integer;
899   begin
900 
901     -- copy data to the local IN or IN-OUT args, if any
902 
903 
904 
905 
906 
907 
908     jtf_attachment_grp_w.rosetta_table_copy_in_p1(ddp_attachment_tbl, p6_a0
909       , p6_a1
910       , p6_a2
911       , p6_a3
912       , p6_a4
913       , p6_a5
914       , p6_a6
915       , p6_a7
916       , p6_a8
917       , p6_a9
918       , p6_a10
919       , p6_a11
920       , p6_a12
921       , p6_a13
922       , p6_a14
923       , p6_a15
924       , p6_a16
925       , p6_a17
926       , p6_a18
927       , p6_a19
928       , p6_a20
929       , p6_a21
930       , p6_a22
931       , p6_a23
932       , p6_a24
933       , p6_a25
934       , p6_a26
935       , p6_a27
936       , p6_a28
937       , p6_a29
938       , p6_a30
939       , p6_a31
940       , p6_a32
941       , p6_a33
942       , p6_a34
943       , p6_a35
944       , p6_a36
945       , p6_a37
946       , p6_a38
947       , p6_a39
948       , p6_a40
949       , p6_a41
950       , p6_a42
951       , p6_a43
952       );
953 
954     -- here's the delegated call to the old PL/SQL routine
955     jtf_attachment_grp.save_attachment(p_api_version,
956       p_init_msg_list,
957       p_commit,
958       x_return_status,
959       x_msg_count,
960       x_msg_data,
961       ddp_attachment_tbl);
962 
963     -- copy data back from the local OUT or IN-OUT args, if any
964 
965 
966 
967 
968 
969 
970     jtf_attachment_grp_w.rosetta_table_copy_out_p1(ddp_attachment_tbl, p6_a0
971       , p6_a1
972       , p6_a2
973       , p6_a3
974       , p6_a4
975       , p6_a5
976       , p6_a6
977       , p6_a7
978       , p6_a8
979       , p6_a9
980       , p6_a10
981       , p6_a11
982       , p6_a12
983       , p6_a13
984       , p6_a14
985       , p6_a15
986       , p6_a16
987       , p6_a17
988       , p6_a18
989       , p6_a19
990       , p6_a20
991       , p6_a21
992       , p6_a22
993       , p6_a23
994       , p6_a24
995       , p6_a25
996       , p6_a26
997       , p6_a27
998       , p6_a28
999       , p6_a29
1000       , p6_a30
1001       , p6_a31
1002       , p6_a32
1003       , p6_a33
1004       , p6_a34
1005       , p6_a35
1006       , p6_a36
1007       , p6_a37
1008       , p6_a38
1009       , p6_a39
1010       , p6_a40
1011       , p6_a41
1012       , p6_a42
1013       , p6_a43
1014       );
1015   end;
1016 
1017   procedure delete_attachment(p_api_version  NUMBER
1018     , p_init_msg_list  VARCHAR2
1019     , p_commit  VARCHAR2
1020     , x_return_status out  VARCHAR2
1021     , x_msg_count out  NUMBER
1022     , x_msg_data out  VARCHAR2
1023     , p6_a0 in out JTF_NUMBER_TABLE
1024     , p6_a1 in out JTF_VARCHAR2_TABLE_300
1025     , p6_a2 in out JTF_NUMBER_TABLE
1026     , p6_a3 in out JTF_VARCHAR2_TABLE_100
1027   )
1028   as
1029     ddp_ath_id_ver_tbl jtf_attachment_grp.ath_id_ver_tbl_type;
1030     ddindx binary_integer; indx binary_integer;
1031   begin
1032 
1033     -- copy data to the local IN or IN-OUT args, if any
1034 
1035 
1036 
1037 
1038 
1039 
1040     jtf_attachment_grp_w.rosetta_table_copy_in_p3(ddp_ath_id_ver_tbl, p6_a0
1041       , p6_a1
1042       , p6_a2
1043       , p6_a3
1044       );
1045 
1046     -- here's the delegated call to the old PL/SQL routine
1047     jtf_attachment_grp.delete_attachment(p_api_version,
1048       p_init_msg_list,
1049       p_commit,
1050       x_return_status,
1051       x_msg_count,
1052       x_msg_data,
1053       ddp_ath_id_ver_tbl);
1054 
1055     -- copy data back from the local OUT or IN-OUT args, if any
1056 
1057 
1058 
1059 
1060 
1061 
1062     jtf_attachment_grp_w.rosetta_table_copy_out_p3(ddp_ath_id_ver_tbl, p6_a0
1063       , p6_a1
1064       , p6_a2
1065       , p6_a3
1066       );
1067   end;
1068 
1069 end jtf_attachment_grp_w;