DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_BTCH_CASH_APPLIC_W

Source


1 package body okl_btch_cash_applic_w as
2   /* $Header: OKLEBAPB.pls 120.4 2007/09/28 06:48:21 varangan 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   rosetta_g_mistake_date_high date := to_date('01/01/+4710', 'MM/DD/SYYYY');
6   rosetta_g_mistake_date_low date := to_date('01/01/-4710', 'MM/DD/SYYYY');
7 
8   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
9   function rosetta_g_miss_date_in_map(d date) return date as
10   begin
11     if d > rosetta_g_mistake_date_high then return fnd_api.g_miss_date; end if;
12     if d < rosetta_g_mistake_date_low then return fnd_api.g_miss_date; end if;
13     return d;
14   end;
15 
16   function rosetta_g_miss_num_map(n number) return number as
17     a number := fnd_api.g_miss_num;
18     b number := 0-1962.0724;
19   begin
20     if n=a then return b; end if;
21     if n=b then return a; end if;
22     return n;
23   end;
24 
25   procedure rosetta_table_copy_in_p13(t out nocopy okl_btch_cash_applic.okl_btch_dtls_tbl_type, a0 JTF_NUMBER_TABLE
26     , a1 JTF_NUMBER_TABLE
27     , a2 JTF_NUMBER_TABLE
28     , a3 JTF_VARCHAR2_TABLE_100
29     , a4 JTF_VARCHAR2_TABLE_100
30     , a5 JTF_VARCHAR2_TABLE_100
31     , a6 JTF_VARCHAR2_TABLE_100
32     , a7 JTF_DATE_TABLE
33     , a8 JTF_NUMBER_TABLE
34     , a9 JTF_NUMBER_TABLE
35     , a10 JTF_NUMBER_TABLE
36     , a11 JTF_NUMBER_TABLE
37     , a12 JTF_VARCHAR2_TABLE_200
38     , a13 JTF_NUMBER_TABLE
39     , a14 JTF_VARCHAR2_TABLE_100
40     , a15 JTF_VARCHAR2_TABLE_100
41     , a16 JTF_VARCHAR2_TABLE_200
42     , a17 JTF_VARCHAR2_TABLE_200
43     , a18 JTF_VARCHAR2_TABLE_200
44     , a19 JTF_VARCHAR2_TABLE_200
45     , a20 JTF_VARCHAR2_TABLE_200
46     , a21 JTF_VARCHAR2_TABLE_200
47     , a22 JTF_VARCHAR2_TABLE_200
48     , a23 JTF_VARCHAR2_TABLE_200
49     , a24 JTF_VARCHAR2_TABLE_200
50     , a25 JTF_VARCHAR2_TABLE_200
51     , a26 JTF_VARCHAR2_TABLE_200
52     , a27 JTF_VARCHAR2_TABLE_200
53     , a28 JTF_VARCHAR2_TABLE_200
54     , a29 JTF_VARCHAR2_TABLE_200
55     , a30 JTF_VARCHAR2_TABLE_200
56     ) as
57     ddindx binary_integer; indx binary_integer;
58   begin
59   if a0 is not null and a0.count > 0 then
60       if a0.count > 0 then
61         indx := a0.first;
62         ddindx := 1;
63         while true loop
64           t(ddindx).id := rosetta_g_miss_num_map(a0(indx));
65           t(ddindx).irm_id := rosetta_g_miss_num_map(a1(indx));
66           t(ddindx).btc_id := rosetta_g_miss_num_map(a2(indx));
67           t(ddindx).btc_status := a3(indx);
68           t(ddindx).consolidated_invoice_number := a4(indx);
69           t(ddindx).currency_code := a5(indx);
70           t(ddindx).check_number := a6(indx);
71           t(ddindx).receipt_date := rosetta_g_miss_date_in_map(a7(indx));
72           t(ddindx).amount := rosetta_g_miss_num_map(a8(indx));
73           t(ddindx).ile_id := rosetta_g_miss_num_map(a9(indx));
74           t(ddindx).consolidated_invoice_id := rosetta_g_miss_num_map(a10(indx));
78           t(ddindx).customer_number := a14(indx);
75           t(ddindx).khr_id := rosetta_g_miss_num_map(a11(indx));
76           t(ddindx).contract_number := a12(indx);
77           t(ddindx).ar_invoice_id := rosetta_g_miss_num_map(a13(indx));
79           t(ddindx).dff_attribute_category := a15(indx);
80           t(ddindx).dff_attribute1 := a16(indx);
81           t(ddindx).dff_attribute2 := a17(indx);
82           t(ddindx).dff_attribute3 := a18(indx);
83           t(ddindx).dff_attribute4 := a19(indx);
84           t(ddindx).dff_attribute5 := a20(indx);
85           t(ddindx).dff_attribute6 := a21(indx);
86           t(ddindx).dff_attribute7 := a22(indx);
87           t(ddindx).dff_attribute8 := a23(indx);
88           t(ddindx).dff_attribute9 := a24(indx);
89           t(ddindx).dff_attribute10 := a25(indx);
90           t(ddindx).dff_attribute11 := a26(indx);
91           t(ddindx).dff_attribute12 := a27(indx);
92           t(ddindx).dff_attribute13 := a28(indx);
93           t(ddindx).dff_attribute14 := a29(indx);
94           t(ddindx).dff_attribute15 := a30(indx);
95           ddindx := ddindx+1;
96           if a0.last =indx
97             then exit;
98           end if;
99           indx := a0.next(indx);
100         end loop;
101       end if;
102    end if;
103   end rosetta_table_copy_in_p13;
104   procedure rosetta_table_copy_out_p13(t okl_btch_cash_applic.okl_btch_dtls_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
105     , a1 out nocopy JTF_NUMBER_TABLE
106     , a2 out nocopy JTF_NUMBER_TABLE
107     , a3 out nocopy JTF_VARCHAR2_TABLE_100
108     , a4 out nocopy JTF_VARCHAR2_TABLE_100
109     , a5 out nocopy JTF_VARCHAR2_TABLE_100
110     , a6 out nocopy JTF_VARCHAR2_TABLE_100
111     , a7 out nocopy JTF_DATE_TABLE
112     , a8 out nocopy JTF_NUMBER_TABLE
113     , a9 out nocopy JTF_NUMBER_TABLE
114     , a10 out nocopy JTF_NUMBER_TABLE
115     , a11 out nocopy JTF_NUMBER_TABLE
116     , a12 out nocopy JTF_VARCHAR2_TABLE_200
117     , a13 out nocopy JTF_NUMBER_TABLE
118     , a14 out nocopy JTF_VARCHAR2_TABLE_100
119     , a15 out nocopy JTF_VARCHAR2_TABLE_100
120     , a16 out nocopy JTF_VARCHAR2_TABLE_200
121     , a17 out nocopy JTF_VARCHAR2_TABLE_200
122     , a18 out nocopy JTF_VARCHAR2_TABLE_200
123     , a19 out nocopy JTF_VARCHAR2_TABLE_200
124     , a20 out nocopy JTF_VARCHAR2_TABLE_200
125     , a21 out nocopy JTF_VARCHAR2_TABLE_200
126     , a22 out nocopy JTF_VARCHAR2_TABLE_200
127     , a23 out nocopy JTF_VARCHAR2_TABLE_200
128     , a24 out nocopy JTF_VARCHAR2_TABLE_200
129     , a25 out nocopy JTF_VARCHAR2_TABLE_200
130     , a26 out nocopy JTF_VARCHAR2_TABLE_200
131     , a27 out nocopy JTF_VARCHAR2_TABLE_200
132     , a28 out nocopy JTF_VARCHAR2_TABLE_200
133     , a29 out nocopy JTF_VARCHAR2_TABLE_200
134     , a30 out nocopy JTF_VARCHAR2_TABLE_200
135     ) as
136     ddindx binary_integer; indx binary_integer;
137   begin
138   if t is null or t.count = 0 then
139     a0 := JTF_NUMBER_TABLE();
140     a1 := JTF_NUMBER_TABLE();
141     a2 := JTF_NUMBER_TABLE();
142     a3 := JTF_VARCHAR2_TABLE_100();
143     a4 := JTF_VARCHAR2_TABLE_100();
144     a5 := JTF_VARCHAR2_TABLE_100();
145     a6 := JTF_VARCHAR2_TABLE_100();
146     a7 := JTF_DATE_TABLE();
147     a8 := JTF_NUMBER_TABLE();
148     a9 := JTF_NUMBER_TABLE();
149     a10 := JTF_NUMBER_TABLE();
150     a11 := JTF_NUMBER_TABLE();
151     a12 := JTF_VARCHAR2_TABLE_200();
152     a13 := JTF_NUMBER_TABLE();
153     a14 := JTF_VARCHAR2_TABLE_100();
154     a15 := JTF_VARCHAR2_TABLE_100();
155     a16 := JTF_VARCHAR2_TABLE_200();
156     a17 := JTF_VARCHAR2_TABLE_200();
157     a18 := JTF_VARCHAR2_TABLE_200();
158     a19 := JTF_VARCHAR2_TABLE_200();
159     a20 := JTF_VARCHAR2_TABLE_200();
160     a21 := JTF_VARCHAR2_TABLE_200();
161     a22 := JTF_VARCHAR2_TABLE_200();
162     a23 := JTF_VARCHAR2_TABLE_200();
163     a24 := JTF_VARCHAR2_TABLE_200();
164     a25 := JTF_VARCHAR2_TABLE_200();
165     a26 := JTF_VARCHAR2_TABLE_200();
166     a27 := JTF_VARCHAR2_TABLE_200();
167     a28 := JTF_VARCHAR2_TABLE_200();
168     a29 := JTF_VARCHAR2_TABLE_200();
169     a30 := JTF_VARCHAR2_TABLE_200();
170   else
171       a0 := JTF_NUMBER_TABLE();
172       a1 := JTF_NUMBER_TABLE();
173       a2 := JTF_NUMBER_TABLE();
174       a3 := JTF_VARCHAR2_TABLE_100();
175       a4 := JTF_VARCHAR2_TABLE_100();
176       a5 := JTF_VARCHAR2_TABLE_100();
177       a6 := JTF_VARCHAR2_TABLE_100();
178       a7 := JTF_DATE_TABLE();
179       a8 := JTF_NUMBER_TABLE();
180       a9 := JTF_NUMBER_TABLE();
181       a10 := JTF_NUMBER_TABLE();
182       a11 := JTF_NUMBER_TABLE();
183       a12 := JTF_VARCHAR2_TABLE_200();
184       a13 := JTF_NUMBER_TABLE();
185       a14 := JTF_VARCHAR2_TABLE_100();
186       a15 := JTF_VARCHAR2_TABLE_100();
187       a16 := JTF_VARCHAR2_TABLE_200();
188       a17 := JTF_VARCHAR2_TABLE_200();
189       a18 := JTF_VARCHAR2_TABLE_200();
190       a19 := JTF_VARCHAR2_TABLE_200();
191       a20 := JTF_VARCHAR2_TABLE_200();
192       a21 := JTF_VARCHAR2_TABLE_200();
193       a22 := JTF_VARCHAR2_TABLE_200();
194       a23 := JTF_VARCHAR2_TABLE_200();
195       a24 := JTF_VARCHAR2_TABLE_200();
196       a25 := JTF_VARCHAR2_TABLE_200();
197       a26 := JTF_VARCHAR2_TABLE_200();
198       a27 := JTF_VARCHAR2_TABLE_200();
199       a28 := JTF_VARCHAR2_TABLE_200();
200       a29 := JTF_VARCHAR2_TABLE_200();
201       a30 := JTF_VARCHAR2_TABLE_200();
202       if t.count > 0 then
203         a0.extend(t.count);
204         a1.extend(t.count);
205         a2.extend(t.count);
206         a3.extend(t.count);
207         a4.extend(t.count);
208         a5.extend(t.count);
209         a6.extend(t.count);
213         a10.extend(t.count);
210         a7.extend(t.count);
211         a8.extend(t.count);
212         a9.extend(t.count);
214         a11.extend(t.count);
215         a12.extend(t.count);
216         a13.extend(t.count);
217         a14.extend(t.count);
218         a15.extend(t.count);
219         a16.extend(t.count);
220         a17.extend(t.count);
221         a18.extend(t.count);
222         a19.extend(t.count);
223         a20.extend(t.count);
224         a21.extend(t.count);
225         a22.extend(t.count);
226         a23.extend(t.count);
227         a24.extend(t.count);
228         a25.extend(t.count);
229         a26.extend(t.count);
230         a27.extend(t.count);
231         a28.extend(t.count);
232         a29.extend(t.count);
233         a30.extend(t.count);
234         ddindx := t.first;
235         indx := 1;
236         while true loop
237           a0(indx) := rosetta_g_miss_num_map(t(ddindx).id);
238           a1(indx) := rosetta_g_miss_num_map(t(ddindx).irm_id);
239           a2(indx) := rosetta_g_miss_num_map(t(ddindx).btc_id);
240           a3(indx) := t(ddindx).btc_status;
241           a4(indx) := t(ddindx).consolidated_invoice_number;
242           a5(indx) := t(ddindx).currency_code;
243           a6(indx) := t(ddindx).check_number;
244           a7(indx) := t(ddindx).receipt_date;
245           a8(indx) := rosetta_g_miss_num_map(t(ddindx).amount);
246           a9(indx) := rosetta_g_miss_num_map(t(ddindx).ile_id);
247           a10(indx) := rosetta_g_miss_num_map(t(ddindx).consolidated_invoice_id);
248           a11(indx) := rosetta_g_miss_num_map(t(ddindx).khr_id);
249           a12(indx) := t(ddindx).contract_number;
250           a13(indx) := rosetta_g_miss_num_map(t(ddindx).ar_invoice_id);
251           a14(indx) := t(ddindx).customer_number;
252           a15(indx) := t(ddindx).dff_attribute_category;
253           a16(indx) := t(ddindx).dff_attribute1;
254           a17(indx) := t(ddindx).dff_attribute2;
255           a18(indx) := t(ddindx).dff_attribute3;
256           a19(indx) := t(ddindx).dff_attribute4;
257           a20(indx) := t(ddindx).dff_attribute5;
258           a21(indx) := t(ddindx).dff_attribute6;
259           a22(indx) := t(ddindx).dff_attribute7;
260           a23(indx) := t(ddindx).dff_attribute8;
261           a24(indx) := t(ddindx).dff_attribute9;
262           a25(indx) := t(ddindx).dff_attribute10;
263           a26(indx) := t(ddindx).dff_attribute11;
264           a27(indx) := t(ddindx).dff_attribute12;
265           a28(indx) := t(ddindx).dff_attribute13;
266           a29(indx) := t(ddindx).dff_attribute14;
267           a30(indx) := t(ddindx).dff_attribute15;
268           indx := indx+1;
269           if t.last =ddindx
270             then exit;
271           end if;
272           ddindx := t.next(ddindx);
273         end loop;
274       end if;
275    end if;
276   end rosetta_table_copy_out_p13;
277 
278   procedure handle_batch_pay(p_api_version  NUMBER
279     , p_init_msg_list  VARCHAR2
280     , x_return_status out nocopy  VARCHAR2
281     , x_msg_count out nocopy  NUMBER
282     , x_msg_data out nocopy  VARCHAR2
283     , p5_a0 JTF_NUMBER_TABLE
284     , p5_a1 JTF_NUMBER_TABLE
285     , p5_a2 JTF_NUMBER_TABLE
286     , p5_a3 JTF_VARCHAR2_TABLE_100
287     , p5_a4 JTF_VARCHAR2_TABLE_100
288     , p5_a5 JTF_VARCHAR2_TABLE_100
289     , p5_a6 JTF_VARCHAR2_TABLE_100
290     , p5_a7 JTF_DATE_TABLE
291     , p5_a8 JTF_NUMBER_TABLE
292     , p5_a9 JTF_NUMBER_TABLE
293     , p5_a10 JTF_NUMBER_TABLE
294     , p5_a11 JTF_NUMBER_TABLE
295     , p5_a12 JTF_VARCHAR2_TABLE_200
296     , p5_a13 JTF_NUMBER_TABLE
297     , p5_a14 JTF_VARCHAR2_TABLE_100
298     , p5_a15 JTF_VARCHAR2_TABLE_100
299     , p5_a16 JTF_VARCHAR2_TABLE_200
300     , p5_a17 JTF_VARCHAR2_TABLE_200
301     , p5_a18 JTF_VARCHAR2_TABLE_200
302     , p5_a19 JTF_VARCHAR2_TABLE_200
303     , p5_a20 JTF_VARCHAR2_TABLE_200
304     , p5_a21 JTF_VARCHAR2_TABLE_200
305     , p5_a22 JTF_VARCHAR2_TABLE_200
306     , p5_a23 JTF_VARCHAR2_TABLE_200
307     , p5_a24 JTF_VARCHAR2_TABLE_200
308     , p5_a25 JTF_VARCHAR2_TABLE_200
309     , p5_a26 JTF_VARCHAR2_TABLE_200
310     , p5_a27 JTF_VARCHAR2_TABLE_200
311     , p5_a28 JTF_VARCHAR2_TABLE_200
312     , p5_a29 JTF_VARCHAR2_TABLE_200
313     , p5_a30 JTF_VARCHAR2_TABLE_200
314     , p6_a0 out nocopy JTF_NUMBER_TABLE
315     , p6_a1 out nocopy JTF_NUMBER_TABLE
316     , p6_a2 out nocopy JTF_NUMBER_TABLE
317     , p6_a3 out nocopy JTF_VARCHAR2_TABLE_100
318     , p6_a4 out nocopy JTF_VARCHAR2_TABLE_100
319     , p6_a5 out nocopy JTF_VARCHAR2_TABLE_100
320     , p6_a6 out nocopy JTF_VARCHAR2_TABLE_100
321     , p6_a7 out nocopy JTF_DATE_TABLE
322     , p6_a8 out nocopy JTF_NUMBER_TABLE
323     , p6_a9 out nocopy JTF_NUMBER_TABLE
324     , p6_a10 out nocopy JTF_NUMBER_TABLE
325     , p6_a11 out nocopy JTF_NUMBER_TABLE
326     , p6_a12 out nocopy JTF_VARCHAR2_TABLE_200
327     , p6_a13 out nocopy JTF_NUMBER_TABLE
328     , p6_a14 out nocopy JTF_VARCHAR2_TABLE_100
329     , p6_a15 out nocopy JTF_VARCHAR2_TABLE_100
330     , p6_a16 out nocopy JTF_VARCHAR2_TABLE_200
331     , p6_a17 out nocopy JTF_VARCHAR2_TABLE_200
332     , p6_a18 out nocopy JTF_VARCHAR2_TABLE_200
333     , p6_a19 out nocopy JTF_VARCHAR2_TABLE_200
334     , p6_a20 out nocopy JTF_VARCHAR2_TABLE_200
335     , p6_a21 out nocopy JTF_VARCHAR2_TABLE_200
336     , p6_a22 out nocopy JTF_VARCHAR2_TABLE_200
337     , p6_a23 out nocopy JTF_VARCHAR2_TABLE_200
338     , p6_a24 out nocopy JTF_VARCHAR2_TABLE_200
339     , p6_a25 out nocopy JTF_VARCHAR2_TABLE_200
340     , p6_a26 out nocopy JTF_VARCHAR2_TABLE_200
341     , p6_a27 out nocopy JTF_VARCHAR2_TABLE_200
342     , p6_a28 out nocopy JTF_VARCHAR2_TABLE_200
343     , p6_a29 out nocopy JTF_VARCHAR2_TABLE_200
344     , p6_a30 out nocopy JTF_VARCHAR2_TABLE_200
345   )
346 
347   as
348     ddp_btch_tbl okl_btch_cash_applic.okl_btch_dtls_tbl_type;
349     ddx_btch_tbl okl_btch_cash_applic.okl_btch_dtls_tbl_type;
350     ddindx binary_integer; indx binary_integer;
351   begin
352 
353     -- copy data to the local IN or IN-OUT args, if any
354 
355 
356 
357 
358 
359     okl_btch_cash_applic_w.rosetta_table_copy_in_p13(ddp_btch_tbl, p5_a0
360       , p5_a1
361       , p5_a2
362       , p5_a3
363       , p5_a4
364       , p5_a5
365       , p5_a6
366       , p5_a7
367       , p5_a8
368       , p5_a9
369       , p5_a10
370       , p5_a11
371       , p5_a12
372       , p5_a13
373       , p5_a14
374       , p5_a15
375       , p5_a16
376       , p5_a17
377       , p5_a18
378       , p5_a19
379       , p5_a20
380       , p5_a21
381       , p5_a22
382       , p5_a23
383       , p5_a24
384       , p5_a25
385       , p5_a26
386       , p5_a27
387       , p5_a28
388       , p5_a29
389       , p5_a30
390       );
391 
392 
393     -- here's the delegated call to the old PL/SQL routine
394     okl_btch_cash_applic.handle_batch_pay(p_api_version,
395       p_init_msg_list,
396       x_return_status,
397       x_msg_count,
398       x_msg_data,
399       ddp_btch_tbl,
400       ddx_btch_tbl);
401 
402     -- copy data back from the local variables to OUT or IN-OUT args, if any
403 
404 
405 
406 
407 
408 
409     okl_btch_cash_applic_w.rosetta_table_copy_out_p13(ddx_btch_tbl, p6_a0
410       , p6_a1
411       , p6_a2
412       , p6_a3
413       , p6_a4
414       , p6_a5
415       , p6_a6
416       , p6_a7
417       , p6_a8
418       , p6_a9
419       , p6_a10
420       , p6_a11
421       , p6_a12
422       , p6_a13
423       , p6_a14
424       , p6_a15
425       , p6_a16
426       , p6_a17
427       , p6_a18
428       , p6_a19
429       , p6_a20
430       , p6_a21
431       , p6_a22
432       , p6_a23
433       , p6_a24
434       , p6_a25
435       , p6_a26
436       , p6_a27
437       , p6_a28
438       , p6_a29
439       , p6_a30
440       );
441   end;
442 
443 end okl_btch_cash_applic_w;