DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_UPDT_CASH_DTLS_W

Source


1 package body okl_updt_cash_dtls_w as
2   /* $Header: OKLECUPB.pls 120.1 2005/09/20 13:41:06 dkagrawa noship $ */
3   rosetta_g_mistake_date date := to_date('01/01/+4713', 'MM/DD/SYYYY');
4   rosetta_g_miss_date date := to_date('01/01/-4712', 'MM/DD/SYYYY');
5 
6   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
7   function rosetta_g_miss_date_in_map(d date) return date as
8   begin
9     if d = rosetta_g_mistake_date then return fnd_api.g_miss_date; end if;
10     return d;
11   end;
12 
13   function rosetta_g_miss_num_map(n number) return number as
14     a number := fnd_api.g_miss_num;
15     b number := 0-1962.0724;
16   begin
17     if n=a then return b; end if;
18     if n=b then return a; end if;
19     return n;
20   end;
21 
22   procedure rosetta_table_copy_in_p13(t out nocopy okl_updt_cash_dtls.okl_cash_dtls_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_VARCHAR2_TABLE_100
24     , a2 JTF_VARCHAR2_TABLE_100
25     , a3 JTF_NUMBER_TABLE
26     , a4 JTF_VARCHAR2_TABLE_100
27     , a5 JTF_NUMBER_TABLE
28     , a6 JTF_VARCHAR2_TABLE_200
29     , a7 JTF_NUMBER_TABLE
30     , a8 JTF_VARCHAR2_TABLE_100
31     , a9 JTF_NUMBER_TABLE
32     , a10 JTF_NUMBER_TABLE
33     , a11 JTF_NUMBER_TABLE
34     , a12 JTF_VARCHAR2_TABLE_100
35     , a13 JTF_NUMBER_TABLE
36     , a14 JTF_VARCHAR2_TABLE_100
37     , a15 JTF_VARCHAR2_TABLE_100
38     , a16 JTF_NUMBER_TABLE
39     , a17 JTF_NUMBER_TABLE
40     , a18 JTF_VARCHAR2_TABLE_200
41     , a19 JTF_NUMBER_TABLE
42     , a20 JTF_NUMBER_TABLE
43     ) as
44     ddindx binary_integer; indx binary_integer;
45   begin
46   if a0 is not null and a0.count > 0 then
47       if a0.count > 0 then
48         indx := a0.first;
49         ddindx := 1;
50         while true loop
51           t(ddindx).customer_id := rosetta_g_miss_num_map(a0(indx));
52           t(ddindx).customer_name := a1(indx);
53           t(ddindx).customer_number := a2(indx);
54           t(ddindx).consolidated_invoice_id := rosetta_g_miss_num_map(a3(indx));
55           t(ddindx).consolidated_invoice_number := a4(indx);
56           t(ddindx).contract_id := rosetta_g_miss_num_map(a5(indx));
57           t(ddindx).contract_number := a6(indx);
58           t(ddindx).contract_line_id := rosetta_g_miss_num_map(a7(indx));
59           t(ddindx).receipt_number := a8(indx);
60           t(ddindx).ext_cash_apps_id := rosetta_g_miss_num_map(a9(indx));
61           t(ddindx).xtl_cash_apps_id := rosetta_g_miss_num_map(a10(indx));
62           t(ddindx).receivables_invoice_id := rosetta_g_miss_num_map(a11(indx));
63           t(ddindx).ar_invoice_number := a12(indx);
64           t(ddindx).asset_id := rosetta_g_miss_num_map(a13(indx));
65           t(ddindx).asset_number := a14(indx);
66           t(ddindx).asset_name := a15(indx);
67           t(ddindx).lsm_id := rosetta_g_miss_num_map(a16(indx));
68           t(ddindx).stream_id := rosetta_g_miss_num_map(a17(indx));
69           t(ddindx).stream_name := a18(indx);
70           t(ddindx).outstanding_stream_amount := rosetta_g_miss_num_map(a19(indx));
71           t(ddindx).applied_stream_amount := rosetta_g_miss_num_map(a20(indx));
72           ddindx := ddindx+1;
73           if a0.last =indx
74             then exit;
75           end if;
76           indx := a0.next(indx);
77         end loop;
78       end if;
79    end if;
80   end rosetta_table_copy_in_p13;
81   procedure rosetta_table_copy_out_p13(t okl_updt_cash_dtls.okl_cash_dtls_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
82     , a1 out nocopy JTF_VARCHAR2_TABLE_100
83     , a2 out nocopy JTF_VARCHAR2_TABLE_100
84     , a3 out nocopy JTF_NUMBER_TABLE
85     , a4 out nocopy JTF_VARCHAR2_TABLE_100
86     , a5 out nocopy JTF_NUMBER_TABLE
87     , a6 out nocopy JTF_VARCHAR2_TABLE_200
88     , a7 out nocopy JTF_NUMBER_TABLE
89     , a8 out nocopy JTF_VARCHAR2_TABLE_100
90     , a9 out nocopy JTF_NUMBER_TABLE
91     , a10 out nocopy JTF_NUMBER_TABLE
92     , a11 out nocopy JTF_NUMBER_TABLE
93     , a12 out nocopy JTF_VARCHAR2_TABLE_100
94     , a13 out nocopy JTF_NUMBER_TABLE
95     , a14 out nocopy JTF_VARCHAR2_TABLE_100
96     , a15 out nocopy JTF_VARCHAR2_TABLE_100
97     , a16 out nocopy JTF_NUMBER_TABLE
98     , a17 out nocopy JTF_NUMBER_TABLE
99     , a18 out nocopy JTF_VARCHAR2_TABLE_200
100     , a19 out nocopy JTF_NUMBER_TABLE
101     , a20 out nocopy JTF_NUMBER_TABLE
102     ) as
103     ddindx binary_integer; indx binary_integer;
104   begin
105   if t is null or t.count = 0 then
106     a0 := JTF_NUMBER_TABLE();
107     a1 := JTF_VARCHAR2_TABLE_100();
108     a2 := JTF_VARCHAR2_TABLE_100();
109     a3 := JTF_NUMBER_TABLE();
110     a4 := JTF_VARCHAR2_TABLE_100();
111     a5 := JTF_NUMBER_TABLE();
112     a6 := JTF_VARCHAR2_TABLE_200();
113     a7 := JTF_NUMBER_TABLE();
114     a8 := JTF_VARCHAR2_TABLE_100();
115     a9 := JTF_NUMBER_TABLE();
116     a10 := JTF_NUMBER_TABLE();
117     a11 := JTF_NUMBER_TABLE();
118     a12 := JTF_VARCHAR2_TABLE_100();
119     a13 := JTF_NUMBER_TABLE();
120     a14 := JTF_VARCHAR2_TABLE_100();
121     a15 := JTF_VARCHAR2_TABLE_100();
122     a16 := JTF_NUMBER_TABLE();
123     a17 := JTF_NUMBER_TABLE();
124     a18 := JTF_VARCHAR2_TABLE_200();
125     a19 := JTF_NUMBER_TABLE();
126     a20 := JTF_NUMBER_TABLE();
127   else
128       a0 := JTF_NUMBER_TABLE();
129       a1 := JTF_VARCHAR2_TABLE_100();
130       a2 := JTF_VARCHAR2_TABLE_100();
131       a3 := JTF_NUMBER_TABLE();
132       a4 := JTF_VARCHAR2_TABLE_100();
133       a5 := JTF_NUMBER_TABLE();
134       a6 := JTF_VARCHAR2_TABLE_200();
135       a7 := JTF_NUMBER_TABLE();
136       a8 := JTF_VARCHAR2_TABLE_100();
137       a9 := JTF_NUMBER_TABLE();
138       a10 := JTF_NUMBER_TABLE();
139       a11 := JTF_NUMBER_TABLE();
140       a12 := JTF_VARCHAR2_TABLE_100();
141       a13 := JTF_NUMBER_TABLE();
142       a14 := JTF_VARCHAR2_TABLE_100();
143       a15 := JTF_VARCHAR2_TABLE_100();
144       a16 := JTF_NUMBER_TABLE();
145       a17 := JTF_NUMBER_TABLE();
146       a18 := JTF_VARCHAR2_TABLE_200();
147       a19 := JTF_NUMBER_TABLE();
148       a20 := JTF_NUMBER_TABLE();
149       if t.count > 0 then
150         a0.extend(t.count);
151         a1.extend(t.count);
152         a2.extend(t.count);
153         a3.extend(t.count);
154         a4.extend(t.count);
155         a5.extend(t.count);
156         a6.extend(t.count);
157         a7.extend(t.count);
158         a8.extend(t.count);
159         a9.extend(t.count);
160         a10.extend(t.count);
161         a11.extend(t.count);
162         a12.extend(t.count);
163         a13.extend(t.count);
164         a14.extend(t.count);
165         a15.extend(t.count);
166         a16.extend(t.count);
167         a17.extend(t.count);
168         a18.extend(t.count);
169         a19.extend(t.count);
170         a20.extend(t.count);
171         ddindx := t.first;
172         indx := 1;
173         while true loop
174           a0(indx) := rosetta_g_miss_num_map(t(ddindx).customer_id);
175           a1(indx) := t(ddindx).customer_name;
176           a2(indx) := t(ddindx).customer_number;
177           a3(indx) := rosetta_g_miss_num_map(t(ddindx).consolidated_invoice_id);
178           a4(indx) := t(ddindx).consolidated_invoice_number;
179           a5(indx) := rosetta_g_miss_num_map(t(ddindx).contract_id);
180           a6(indx) := t(ddindx).contract_number;
181           a7(indx) := rosetta_g_miss_num_map(t(ddindx).contract_line_id);
182           a8(indx) := t(ddindx).receipt_number;
183           a9(indx) := rosetta_g_miss_num_map(t(ddindx).ext_cash_apps_id);
184           a10(indx) := rosetta_g_miss_num_map(t(ddindx).xtl_cash_apps_id);
185           a11(indx) := rosetta_g_miss_num_map(t(ddindx).receivables_invoice_id);
186           a12(indx) := t(ddindx).ar_invoice_number;
187           a13(indx) := rosetta_g_miss_num_map(t(ddindx).asset_id);
188           a14(indx) := t(ddindx).asset_number;
189           a15(indx) := t(ddindx).asset_name;
190           a16(indx) := rosetta_g_miss_num_map(t(ddindx).lsm_id);
191           a17(indx) := rosetta_g_miss_num_map(t(ddindx).stream_id);
192           a18(indx) := t(ddindx).stream_name;
193           a19(indx) := rosetta_g_miss_num_map(t(ddindx).outstanding_stream_amount);
194           a20(indx) := rosetta_g_miss_num_map(t(ddindx).applied_stream_amount);
195           indx := indx+1;
196           if t.last =ddindx
197             then exit;
198           end if;
199           ddindx := t.next(ddindx);
200         end loop;
201       end if;
202    end if;
203   end rosetta_table_copy_out_p13;
204 
205   procedure update_cash_details(p_api_version  NUMBER
206     , p_init_msg_list  VARCHAR2
207     , x_return_status out nocopy  VARCHAR2
208     , x_msg_count out nocopy  NUMBER
209     , x_msg_data out nocopy  VARCHAR2
210     , p5_a0 JTF_NUMBER_TABLE
211     , p5_a1 JTF_VARCHAR2_TABLE_100
212     , p5_a2 JTF_VARCHAR2_TABLE_100
213     , p5_a3 JTF_NUMBER_TABLE
214     , p5_a4 JTF_VARCHAR2_TABLE_100
215     , p5_a5 JTF_NUMBER_TABLE
216     , p5_a6 JTF_VARCHAR2_TABLE_200
217     , p5_a7 JTF_NUMBER_TABLE
218     , p5_a8 JTF_VARCHAR2_TABLE_100
219     , p5_a9 JTF_NUMBER_TABLE
220     , p5_a10 JTF_NUMBER_TABLE
221     , p5_a11 JTF_NUMBER_TABLE
222     , p5_a12 JTF_VARCHAR2_TABLE_100
223     , p5_a13 JTF_NUMBER_TABLE
224     , p5_a14 JTF_VARCHAR2_TABLE_100
225     , p5_a15 JTF_VARCHAR2_TABLE_100
226     , p5_a16 JTF_NUMBER_TABLE
227     , p5_a17 JTF_NUMBER_TABLE
228     , p5_a18 JTF_VARCHAR2_TABLE_200
229     , p5_a19 JTF_NUMBER_TABLE
230     , p5_a20 JTF_NUMBER_TABLE
231     , p6_a0 out nocopy JTF_NUMBER_TABLE
232     , p6_a1 out nocopy JTF_VARCHAR2_TABLE_100
233     , p6_a2 out nocopy JTF_VARCHAR2_TABLE_100
234     , p6_a3 out nocopy JTF_NUMBER_TABLE
235     , p6_a4 out nocopy JTF_VARCHAR2_TABLE_100
236     , p6_a5 out nocopy JTF_NUMBER_TABLE
237     , p6_a6 out nocopy JTF_VARCHAR2_TABLE_200
238     , p6_a7 out nocopy JTF_NUMBER_TABLE
239     , p6_a8 out nocopy JTF_VARCHAR2_TABLE_100
240     , p6_a9 out nocopy JTF_NUMBER_TABLE
241     , p6_a10 out nocopy JTF_NUMBER_TABLE
242     , p6_a11 out nocopy JTF_NUMBER_TABLE
243     , p6_a12 out nocopy JTF_VARCHAR2_TABLE_100
244     , p6_a13 out nocopy JTF_NUMBER_TABLE
245     , p6_a14 out nocopy JTF_VARCHAR2_TABLE_100
246     , p6_a15 out nocopy JTF_VARCHAR2_TABLE_100
247     , p6_a16 out nocopy JTF_NUMBER_TABLE
248     , p6_a17 out nocopy JTF_NUMBER_TABLE
249     , p6_a18 out nocopy JTF_VARCHAR2_TABLE_200
250     , p6_a19 out nocopy JTF_NUMBER_TABLE
251     , p6_a20 out nocopy JTF_NUMBER_TABLE
252   )
253 
254   as
255     ddp_strm_tbl okl_updt_cash_dtls.okl_cash_dtls_tbl_type;
256     ddx_strm_tbl okl_updt_cash_dtls.okl_cash_dtls_tbl_type;
257     ddindx binary_integer; indx binary_integer;
258   begin
259 
260     -- copy data to the local IN or IN-OUT args, if any
261 
262 
263 
264 
265 
266     okl_updt_cash_dtls_w.rosetta_table_copy_in_p13(ddp_strm_tbl, p5_a0
267       , p5_a1
268       , p5_a2
269       , p5_a3
270       , p5_a4
271       , p5_a5
272       , p5_a6
273       , p5_a7
274       , p5_a8
275       , p5_a9
276       , p5_a10
277       , p5_a11
278       , p5_a12
279       , p5_a13
280       , p5_a14
281       , p5_a15
282       , p5_a16
283       , p5_a17
284       , p5_a18
285       , p5_a19
286       , p5_a20
287       );
288 
289 
290     -- here's the delegated call to the old PL/SQL routine
291     okl_updt_cash_dtls.update_cash_details(p_api_version,
292       p_init_msg_list,
293       x_return_status,
294       x_msg_count,
295       x_msg_data,
296       ddp_strm_tbl,
297       ddx_strm_tbl);
298 
299     -- copy data back from the local variables to OUT or IN-OUT args, if any
300 
301 
302 
303 
304 
305 
306     okl_updt_cash_dtls_w.rosetta_table_copy_out_p13(ddx_strm_tbl, p6_a0
307       , p6_a1
308       , p6_a2
309       , p6_a3
310       , p6_a4
311       , p6_a5
312       , p6_a6
313       , p6_a7
314       , p6_a8
315       , p6_a9
316       , p6_a10
317       , p6_a11
318       , p6_a12
319       , p6_a13
320       , p6_a14
321       , p6_a15
322       , p6_a16
323       , p6_a17
324       , p6_a18
325       , p6_a19
326       , p6_a20
327       );
328   end;
329 
330 end okl_updt_cash_dtls_w;