DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_FMP_MR_DOC_ASSO_PVT_W

Source


1 package body ahl_fmp_mr_doc_asso_pvt_w as
2   /* $Header: AHLWMRDB.pls 120.0 2005/05/26 01:57:55 appldev 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_fmp_mr_doc_asso_pvt.doc_association_tbl, a0 JTF_NUMBER_TABLE
14     , a1 JTF_NUMBER_TABLE
15     , a2 JTF_VARCHAR2_TABLE_100
16     , a3 JTF_NUMBER_TABLE
17     , a4 JTF_VARCHAR2_TABLE_100
18     , a5 JTF_VARCHAR2_TABLE_100
19     , a6 JTF_VARCHAR2_TABLE_100
20     , a7 JTF_VARCHAR2_TABLE_100
21     , a8 JTF_NUMBER_TABLE
22     , a9 JTF_VARCHAR2_TABLE_100
23     , a10 JTF_NUMBER_TABLE
24     , a11 JTF_VARCHAR2_TABLE_100
25     , a12 JTF_VARCHAR2_TABLE_100
26     , a13 JTF_VARCHAR2_TABLE_100
27     , a14 JTF_VARCHAR2_TABLE_100
28     , a15 JTF_VARCHAR2_TABLE_300
29     , a16 JTF_VARCHAR2_TABLE_100
30     , a17 JTF_VARCHAR2_TABLE_100
31     , a18 JTF_VARCHAR2_TABLE_2000
32     , a19 JTF_VARCHAR2_TABLE_100
33     , a20 JTF_VARCHAR2_TABLE_100
34     , a21 JTF_NUMBER_TABLE
35     , a22 JTF_VARCHAR2_TABLE_100
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_200
50     , a37 JTF_VARCHAR2_TABLE_200
51     , a38 JTF_VARCHAR2_TABLE_100
52     ) as
53     ddindx binary_integer; indx binary_integer;
54   begin
55   if a0 is not null and a0.count > 0 then
56       if a0.count > 0 then
57         indx := a0.first;
58         ddindx := 1;
59         while true loop
60           t(ddindx).doc_title_asso_id := a0(indx);
61           t(ddindx).document_id := a1(indx);
62           t(ddindx).document_no := a2(indx);
63           t(ddindx).doc_revision_id := a3(indx);
64           t(ddindx).revision_no := a4(indx);
65           t(ddindx).use_latest_rev_flag := a5(indx);
66           t(ddindx).object_type_code := a6(indx);
67           t(ddindx).object_type_desc := a7(indx);
68           t(ddindx).mr_header_id := a8(indx);
69           t(ddindx).mr_title := a9(indx);
70           t(ddindx).mr_version_number := a10(indx);
71           t(ddindx).serial_no := a11(indx);
72           t(ddindx).source_lang := a12(indx);
73           t(ddindx).chapter := a13(indx);
74           t(ddindx).section := a14(indx);
75           t(ddindx).subject := a15(indx);
76           t(ddindx).page := a16(indx);
77           t(ddindx).figure := a17(indx);
78           t(ddindx).note := a18(indx);
79           t(ddindx).source_ref_code := a19(indx);
80           t(ddindx).source_ref_mean := a20(indx);
81           t(ddindx).object_version_number := a21(indx);
82           t(ddindx).attribute_category := a22(indx);
83           t(ddindx).attribute1 := a23(indx);
84           t(ddindx).attribute2 := a24(indx);
85           t(ddindx).attribute3 := a25(indx);
86           t(ddindx).attribute4 := a26(indx);
87           t(ddindx).attribute5 := a27(indx);
88           t(ddindx).attribute6 := a28(indx);
89           t(ddindx).attribute7 := a29(indx);
90           t(ddindx).attribute8 := a30(indx);
91           t(ddindx).attribute9 := a31(indx);
92           t(ddindx).attribute10 := a32(indx);
93           t(ddindx).attribute11 := a33(indx);
94           t(ddindx).attribute12 := a34(indx);
95           t(ddindx).attribute13 := a35(indx);
96           t(ddindx).attribute14 := a36(indx);
97           t(ddindx).attribute15 := a37(indx);
98           t(ddindx).dml_operation := a38(indx);
99           ddindx := ddindx+1;
100           if a0.last =indx
101             then exit;
102           end if;
103           indx := a0.next(indx);
104         end loop;
105       end if;
106    end if;
107   end rosetta_table_copy_in_p1;
108   procedure rosetta_table_copy_out_p1(t ahl_fmp_mr_doc_asso_pvt.doc_association_tbl, a0 out nocopy JTF_NUMBER_TABLE
109     , a1 out nocopy JTF_NUMBER_TABLE
110     , a2 out nocopy JTF_VARCHAR2_TABLE_100
111     , a3 out nocopy JTF_NUMBER_TABLE
112     , a4 out nocopy JTF_VARCHAR2_TABLE_100
113     , a5 out nocopy JTF_VARCHAR2_TABLE_100
114     , a6 out nocopy JTF_VARCHAR2_TABLE_100
115     , a7 out nocopy JTF_VARCHAR2_TABLE_100
116     , a8 out nocopy JTF_NUMBER_TABLE
117     , a9 out nocopy JTF_VARCHAR2_TABLE_100
118     , a10 out nocopy JTF_NUMBER_TABLE
119     , a11 out nocopy JTF_VARCHAR2_TABLE_100
120     , a12 out nocopy JTF_VARCHAR2_TABLE_100
121     , a13 out nocopy JTF_VARCHAR2_TABLE_100
122     , a14 out nocopy JTF_VARCHAR2_TABLE_100
123     , a15 out nocopy JTF_VARCHAR2_TABLE_300
124     , a16 out nocopy JTF_VARCHAR2_TABLE_100
125     , a17 out nocopy JTF_VARCHAR2_TABLE_100
126     , a18 out nocopy JTF_VARCHAR2_TABLE_2000
127     , a19 out nocopy JTF_VARCHAR2_TABLE_100
128     , a20 out nocopy JTF_VARCHAR2_TABLE_100
129     , a21 out nocopy JTF_NUMBER_TABLE
130     , a22 out nocopy JTF_VARCHAR2_TABLE_100
131     , a23 out nocopy JTF_VARCHAR2_TABLE_200
132     , a24 out nocopy JTF_VARCHAR2_TABLE_200
133     , a25 out nocopy JTF_VARCHAR2_TABLE_200
134     , a26 out nocopy JTF_VARCHAR2_TABLE_200
135     , a27 out nocopy JTF_VARCHAR2_TABLE_200
136     , a28 out nocopy JTF_VARCHAR2_TABLE_200
137     , a29 out nocopy JTF_VARCHAR2_TABLE_200
138     , a30 out nocopy JTF_VARCHAR2_TABLE_200
139     , a31 out nocopy JTF_VARCHAR2_TABLE_200
140     , a32 out nocopy JTF_VARCHAR2_TABLE_200
141     , a33 out nocopy JTF_VARCHAR2_TABLE_200
142     , a34 out nocopy JTF_VARCHAR2_TABLE_200
143     , a35 out nocopy JTF_VARCHAR2_TABLE_200
144     , a36 out nocopy JTF_VARCHAR2_TABLE_200
145     , a37 out nocopy JTF_VARCHAR2_TABLE_200
146     , a38 out nocopy JTF_VARCHAR2_TABLE_100
147     ) as
148     ddindx binary_integer; indx binary_integer;
149   begin
150   if t is null or t.count = 0 then
151     a0 := JTF_NUMBER_TABLE();
152     a1 := JTF_NUMBER_TABLE();
153     a2 := JTF_VARCHAR2_TABLE_100();
154     a3 := JTF_NUMBER_TABLE();
155     a4 := JTF_VARCHAR2_TABLE_100();
156     a5 := JTF_VARCHAR2_TABLE_100();
157     a6 := JTF_VARCHAR2_TABLE_100();
158     a7 := JTF_VARCHAR2_TABLE_100();
159     a8 := JTF_NUMBER_TABLE();
160     a9 := JTF_VARCHAR2_TABLE_100();
161     a10 := JTF_NUMBER_TABLE();
162     a11 := JTF_VARCHAR2_TABLE_100();
163     a12 := JTF_VARCHAR2_TABLE_100();
164     a13 := JTF_VARCHAR2_TABLE_100();
165     a14 := JTF_VARCHAR2_TABLE_100();
166     a15 := JTF_VARCHAR2_TABLE_300();
167     a16 := JTF_VARCHAR2_TABLE_100();
168     a17 := JTF_VARCHAR2_TABLE_100();
169     a18 := JTF_VARCHAR2_TABLE_2000();
170     a19 := JTF_VARCHAR2_TABLE_100();
171     a20 := JTF_VARCHAR2_TABLE_100();
172     a21 := JTF_NUMBER_TABLE();
173     a22 := JTF_VARCHAR2_TABLE_100();
174     a23 := JTF_VARCHAR2_TABLE_200();
175     a24 := JTF_VARCHAR2_TABLE_200();
176     a25 := JTF_VARCHAR2_TABLE_200();
177     a26 := JTF_VARCHAR2_TABLE_200();
178     a27 := JTF_VARCHAR2_TABLE_200();
179     a28 := JTF_VARCHAR2_TABLE_200();
180     a29 := JTF_VARCHAR2_TABLE_200();
181     a30 := JTF_VARCHAR2_TABLE_200();
182     a31 := JTF_VARCHAR2_TABLE_200();
183     a32 := JTF_VARCHAR2_TABLE_200();
184     a33 := JTF_VARCHAR2_TABLE_200();
185     a34 := JTF_VARCHAR2_TABLE_200();
186     a35 := JTF_VARCHAR2_TABLE_200();
187     a36 := JTF_VARCHAR2_TABLE_200();
188     a37 := JTF_VARCHAR2_TABLE_200();
189     a38 := JTF_VARCHAR2_TABLE_100();
190   else
191       a0 := JTF_NUMBER_TABLE();
192       a1 := JTF_NUMBER_TABLE();
193       a2 := JTF_VARCHAR2_TABLE_100();
194       a3 := JTF_NUMBER_TABLE();
195       a4 := JTF_VARCHAR2_TABLE_100();
196       a5 := JTF_VARCHAR2_TABLE_100();
197       a6 := JTF_VARCHAR2_TABLE_100();
198       a7 := JTF_VARCHAR2_TABLE_100();
199       a8 := JTF_NUMBER_TABLE();
200       a9 := JTF_VARCHAR2_TABLE_100();
201       a10 := JTF_NUMBER_TABLE();
202       a11 := JTF_VARCHAR2_TABLE_100();
203       a12 := JTF_VARCHAR2_TABLE_100();
204       a13 := JTF_VARCHAR2_TABLE_100();
205       a14 := JTF_VARCHAR2_TABLE_100();
206       a15 := JTF_VARCHAR2_TABLE_300();
207       a16 := JTF_VARCHAR2_TABLE_100();
208       a17 := JTF_VARCHAR2_TABLE_100();
209       a18 := JTF_VARCHAR2_TABLE_2000();
210       a19 := JTF_VARCHAR2_TABLE_100();
211       a20 := JTF_VARCHAR2_TABLE_100();
212       a21 := JTF_NUMBER_TABLE();
213       a22 := JTF_VARCHAR2_TABLE_100();
214       a23 := JTF_VARCHAR2_TABLE_200();
215       a24 := JTF_VARCHAR2_TABLE_200();
216       a25 := JTF_VARCHAR2_TABLE_200();
217       a26 := JTF_VARCHAR2_TABLE_200();
218       a27 := JTF_VARCHAR2_TABLE_200();
219       a28 := JTF_VARCHAR2_TABLE_200();
220       a29 := JTF_VARCHAR2_TABLE_200();
221       a30 := JTF_VARCHAR2_TABLE_200();
222       a31 := JTF_VARCHAR2_TABLE_200();
223       a32 := JTF_VARCHAR2_TABLE_200();
224       a33 := JTF_VARCHAR2_TABLE_200();
225       a34 := JTF_VARCHAR2_TABLE_200();
226       a35 := JTF_VARCHAR2_TABLE_200();
227       a36 := JTF_VARCHAR2_TABLE_200();
228       a37 := JTF_VARCHAR2_TABLE_200();
229       a38 := JTF_VARCHAR2_TABLE_100();
230       if t.count > 0 then
231         a0.extend(t.count);
232         a1.extend(t.count);
233         a2.extend(t.count);
234         a3.extend(t.count);
235         a4.extend(t.count);
236         a5.extend(t.count);
237         a6.extend(t.count);
238         a7.extend(t.count);
239         a8.extend(t.count);
240         a9.extend(t.count);
241         a10.extend(t.count);
242         a11.extend(t.count);
243         a12.extend(t.count);
244         a13.extend(t.count);
245         a14.extend(t.count);
246         a15.extend(t.count);
247         a16.extend(t.count);
248         a17.extend(t.count);
249         a18.extend(t.count);
250         a19.extend(t.count);
251         a20.extend(t.count);
252         a21.extend(t.count);
253         a22.extend(t.count);
254         a23.extend(t.count);
255         a24.extend(t.count);
256         a25.extend(t.count);
257         a26.extend(t.count);
258         a27.extend(t.count);
259         a28.extend(t.count);
260         a29.extend(t.count);
261         a30.extend(t.count);
262         a31.extend(t.count);
263         a32.extend(t.count);
264         a33.extend(t.count);
265         a34.extend(t.count);
266         a35.extend(t.count);
267         a36.extend(t.count);
268         a37.extend(t.count);
269         a38.extend(t.count);
270         ddindx := t.first;
271         indx := 1;
272         while true loop
273           a0(indx) := t(ddindx).doc_title_asso_id;
274           a1(indx) := t(ddindx).document_id;
275           a2(indx) := t(ddindx).document_no;
276           a3(indx) := t(ddindx).doc_revision_id;
277           a4(indx) := t(ddindx).revision_no;
278           a5(indx) := t(ddindx).use_latest_rev_flag;
279           a6(indx) := t(ddindx).object_type_code;
280           a7(indx) := t(ddindx).object_type_desc;
281           a8(indx) := t(ddindx).mr_header_id;
282           a9(indx) := t(ddindx).mr_title;
283           a10(indx) := t(ddindx).mr_version_number;
284           a11(indx) := t(ddindx).serial_no;
285           a12(indx) := t(ddindx).source_lang;
286           a13(indx) := t(ddindx).chapter;
287           a14(indx) := t(ddindx).section;
288           a15(indx) := t(ddindx).subject;
289           a16(indx) := t(ddindx).page;
290           a17(indx) := t(ddindx).figure;
291           a18(indx) := t(ddindx).note;
292           a19(indx) := t(ddindx).source_ref_code;
293           a20(indx) := t(ddindx).source_ref_mean;
294           a21(indx) := t(ddindx).object_version_number;
295           a22(indx) := t(ddindx).attribute_category;
296           a23(indx) := t(ddindx).attribute1;
297           a24(indx) := t(ddindx).attribute2;
298           a25(indx) := t(ddindx).attribute3;
299           a26(indx) := t(ddindx).attribute4;
300           a27(indx) := t(ddindx).attribute5;
301           a28(indx) := t(ddindx).attribute6;
302           a29(indx) := t(ddindx).attribute7;
303           a30(indx) := t(ddindx).attribute8;
304           a31(indx) := t(ddindx).attribute9;
305           a32(indx) := t(ddindx).attribute10;
306           a33(indx) := t(ddindx).attribute11;
307           a34(indx) := t(ddindx).attribute12;
308           a35(indx) := t(ddindx).attribute13;
309           a36(indx) := t(ddindx).attribute14;
310           a37(indx) := t(ddindx).attribute15;
311           a38(indx) := t(ddindx).dml_operation;
312           indx := indx+1;
313           if t.last =ddindx
314             then exit;
315           end if;
316           ddindx := t.next(ddindx);
317         end loop;
318       end if;
319    end if;
320   end rosetta_table_copy_out_p1;
321 
322   procedure process_doc_association(p_api_version  NUMBER
323     , p_init_msg_list  VARCHAR2
324     , p_commit  VARCHAR2
325     , p_validation_level  NUMBER
326     , p_validate_only  VARCHAR2
327     , p_default  VARCHAR2
328     , p_module_type  VARCHAR2
329     , x_return_status out nocopy  VARCHAR2
330     , x_msg_count out nocopy  NUMBER
331     , x_msg_data out nocopy  VARCHAR2
332     , p10_a0 in out nocopy JTF_NUMBER_TABLE
333     , p10_a1 in out nocopy JTF_NUMBER_TABLE
334     , p10_a2 in out nocopy JTF_VARCHAR2_TABLE_100
335     , p10_a3 in out nocopy JTF_NUMBER_TABLE
336     , p10_a4 in out nocopy JTF_VARCHAR2_TABLE_100
337     , p10_a5 in out nocopy JTF_VARCHAR2_TABLE_100
338     , p10_a6 in out nocopy JTF_VARCHAR2_TABLE_100
339     , p10_a7 in out nocopy JTF_VARCHAR2_TABLE_100
340     , p10_a8 in out nocopy JTF_NUMBER_TABLE
341     , p10_a9 in out nocopy JTF_VARCHAR2_TABLE_100
342     , p10_a10 in out nocopy JTF_NUMBER_TABLE
343     , p10_a11 in out nocopy JTF_VARCHAR2_TABLE_100
344     , p10_a12 in out nocopy JTF_VARCHAR2_TABLE_100
345     , p10_a13 in out nocopy JTF_VARCHAR2_TABLE_100
346     , p10_a14 in out nocopy JTF_VARCHAR2_TABLE_100
347     , p10_a15 in out nocopy JTF_VARCHAR2_TABLE_300
348     , p10_a16 in out nocopy JTF_VARCHAR2_TABLE_100
349     , p10_a17 in out nocopy JTF_VARCHAR2_TABLE_100
350     , p10_a18 in out nocopy JTF_VARCHAR2_TABLE_2000
351     , p10_a19 in out nocopy JTF_VARCHAR2_TABLE_100
352     , p10_a20 in out nocopy JTF_VARCHAR2_TABLE_100
353     , p10_a21 in out nocopy JTF_NUMBER_TABLE
354     , p10_a22 in out nocopy JTF_VARCHAR2_TABLE_100
355     , p10_a23 in out nocopy JTF_VARCHAR2_TABLE_200
356     , p10_a24 in out nocopy JTF_VARCHAR2_TABLE_200
357     , p10_a25 in out nocopy JTF_VARCHAR2_TABLE_200
358     , p10_a26 in out nocopy JTF_VARCHAR2_TABLE_200
359     , p10_a27 in out nocopy JTF_VARCHAR2_TABLE_200
360     , p10_a28 in out nocopy JTF_VARCHAR2_TABLE_200
361     , p10_a29 in out nocopy JTF_VARCHAR2_TABLE_200
362     , p10_a30 in out nocopy JTF_VARCHAR2_TABLE_200
363     , p10_a31 in out nocopy JTF_VARCHAR2_TABLE_200
364     , p10_a32 in out nocopy JTF_VARCHAR2_TABLE_200
365     , p10_a33 in out nocopy JTF_VARCHAR2_TABLE_200
366     , p10_a34 in out nocopy JTF_VARCHAR2_TABLE_200
367     , p10_a35 in out nocopy JTF_VARCHAR2_TABLE_200
368     , p10_a36 in out nocopy JTF_VARCHAR2_TABLE_200
369     , p10_a37 in out nocopy JTF_VARCHAR2_TABLE_200
370     , p10_a38 in out nocopy JTF_VARCHAR2_TABLE_100
371   )
372 
373   as
374     ddp_x_association_tbl ahl_fmp_mr_doc_asso_pvt.doc_association_tbl;
375     ddindx binary_integer; indx binary_integer;
376   begin
377 
378     -- copy data to the local IN or IN-OUT args, if any
379 
380 
381 
382 
383 
384 
385 
386 
387 
388 
389     ahl_fmp_mr_doc_asso_pvt_w.rosetta_table_copy_in_p1(ddp_x_association_tbl, p10_a0
390       , p10_a1
391       , p10_a2
392       , p10_a3
393       , p10_a4
394       , p10_a5
395       , p10_a6
396       , p10_a7
397       , p10_a8
398       , p10_a9
399       , p10_a10
400       , p10_a11
401       , p10_a12
402       , p10_a13
403       , p10_a14
404       , p10_a15
405       , p10_a16
406       , p10_a17
407       , p10_a18
408       , p10_a19
409       , p10_a20
410       , p10_a21
411       , p10_a22
412       , p10_a23
413       , p10_a24
414       , p10_a25
415       , p10_a26
416       , p10_a27
417       , p10_a28
418       , p10_a29
419       , p10_a30
420       , p10_a31
421       , p10_a32
422       , p10_a33
423       , p10_a34
424       , p10_a35
425       , p10_a36
426       , p10_a37
427       , p10_a38
428       );
429 
430     -- here's the delegated call to the old PL/SQL routine
431     ahl_fmp_mr_doc_asso_pvt.process_doc_association(p_api_version,
432       p_init_msg_list,
433       p_commit,
434       p_validation_level,
435       p_validate_only,
436       p_default,
437       p_module_type,
438       x_return_status,
439       x_msg_count,
440       x_msg_data,
441       ddp_x_association_tbl);
442 
443     -- copy data back from the local variables to OUT or IN-OUT args, if any
444 
445 
446 
447 
448 
449 
450 
451 
452 
453 
454     ahl_fmp_mr_doc_asso_pvt_w.rosetta_table_copy_out_p1(ddp_x_association_tbl, p10_a0
455       , p10_a1
456       , p10_a2
457       , p10_a3
458       , p10_a4
459       , p10_a5
460       , p10_a6
461       , p10_a7
462       , p10_a8
463       , p10_a9
464       , p10_a10
465       , p10_a11
466       , p10_a12
467       , p10_a13
468       , p10_a14
469       , p10_a15
470       , p10_a16
471       , p10_a17
472       , p10_a18
473       , p10_a19
474       , p10_a20
475       , p10_a21
476       , p10_a22
477       , p10_a23
478       , p10_a24
479       , p10_a25
480       , p10_a26
481       , p10_a27
482       , p10_a28
483       , p10_a29
484       , p10_a30
485       , p10_a31
486       , p10_a32
487       , p10_a33
488       , p10_a34
489       , p10_a35
490       , p10_a36
491       , p10_a37
492       , p10_a38
493       );
494   end;
495 
496 end ahl_fmp_mr_doc_asso_pvt_w;