[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;