[Home] [Help]
PACKAGE BODY: APPS.LNS_DISTRIBUTIONS_PUB_W
Source
1 package body lns_distributions_pub_w as
2 /* $Header: LNS_DIST_PUBJ_B.pls 120.4 2005/09/01 08:34 raverma noship $ */
3 procedure rosetta_table_copy_in_p1(t out nocopy lns_distributions_pub.distribution_tbl, a0 JTF_NUMBER_TABLE
4 , a1 JTF_NUMBER_TABLE
5 , a2 JTF_VARCHAR2_TABLE_100
6 , a3 JTF_VARCHAR2_TABLE_100
7 , a4 JTF_NUMBER_TABLE
8 , a5 JTF_VARCHAR2_TABLE_100
9 , a6 JTF_NUMBER_TABLE
10 , a7 JTF_NUMBER_TABLE
11 , a8 JTF_VARCHAR2_TABLE_100
12 , a9 JTF_VARCHAR2_TABLE_100
13 , a10 JTF_NUMBER_TABLE
14 , a11 JTF_NUMBER_TABLE
15 ) as
16 ddindx binary_integer; indx binary_integer;
17 begin
18 if a0 is not null and a0.count > 0 then
19 if a0.count > 0 then
20 indx := a0.first;
21 ddindx := 1;
22 while true loop
23 t(ddindx).distribution_id := a0(indx);
24 t(ddindx).loan_id := a1(indx);
25 t(ddindx).line_type := a2(indx);
26 t(ddindx).account_name := a3(indx);
27 t(ddindx).code_combination_id := a4(indx);
28 t(ddindx).account_type := a5(indx);
29 t(ddindx).distribution_percent := a6(indx);
30 t(ddindx).distribution_amount := a7(indx);
31 t(ddindx).calculate_flag := a8(indx);
32 t(ddindx).distribution_type := a9(indx);
33 t(ddindx).event_id := a10(indx);
34 t(ddindx).disb_header_id := a11(indx);
35 ddindx := ddindx+1;
36 if a0.last =indx
37 then exit;
38 end if;
39 indx := a0.next(indx);
40 end loop;
41 end if;
42 end if;
43 end rosetta_table_copy_in_p1;
44 procedure rosetta_table_copy_out_p1(t lns_distributions_pub.distribution_tbl, a0 out nocopy JTF_NUMBER_TABLE
45 , a1 out nocopy JTF_NUMBER_TABLE
46 , a2 out nocopy JTF_VARCHAR2_TABLE_100
47 , a3 out nocopy JTF_VARCHAR2_TABLE_100
48 , a4 out nocopy JTF_NUMBER_TABLE
49 , a5 out nocopy JTF_VARCHAR2_TABLE_100
50 , a6 out nocopy JTF_NUMBER_TABLE
51 , a7 out nocopy JTF_NUMBER_TABLE
52 , a8 out nocopy JTF_VARCHAR2_TABLE_100
53 , a9 out nocopy JTF_VARCHAR2_TABLE_100
54 , a10 out nocopy JTF_NUMBER_TABLE
55 , a11 out nocopy JTF_NUMBER_TABLE
56 ) as
57 ddindx binary_integer; indx binary_integer;
58 begin
59 if t is null or t.count = 0 then
60 a0 := JTF_NUMBER_TABLE();
61 a1 := JTF_NUMBER_TABLE();
62 a2 := JTF_VARCHAR2_TABLE_100();
63 a3 := JTF_VARCHAR2_TABLE_100();
64 a4 := JTF_NUMBER_TABLE();
65 a5 := JTF_VARCHAR2_TABLE_100();
66 a6 := JTF_NUMBER_TABLE();
67 a7 := JTF_NUMBER_TABLE();
68 a8 := JTF_VARCHAR2_TABLE_100();
69 a9 := JTF_VARCHAR2_TABLE_100();
70 a10 := JTF_NUMBER_TABLE();
71 a11 := JTF_NUMBER_TABLE();
72 else
73 a0 := JTF_NUMBER_TABLE();
74 a1 := JTF_NUMBER_TABLE();
75 a2 := JTF_VARCHAR2_TABLE_100();
76 a3 := JTF_VARCHAR2_TABLE_100();
77 a4 := JTF_NUMBER_TABLE();
78 a5 := JTF_VARCHAR2_TABLE_100();
79 a6 := JTF_NUMBER_TABLE();
80 a7 := JTF_NUMBER_TABLE();
81 a8 := JTF_VARCHAR2_TABLE_100();
82 a9 := JTF_VARCHAR2_TABLE_100();
83 a10 := JTF_NUMBER_TABLE();
84 a11 := JTF_NUMBER_TABLE();
85 if t.count > 0 then
86 a0.extend(t.count);
87 a1.extend(t.count);
88 a2.extend(t.count);
89 a3.extend(t.count);
90 a4.extend(t.count);
91 a5.extend(t.count);
92 a6.extend(t.count);
93 a7.extend(t.count);
94 a8.extend(t.count);
95 a9.extend(t.count);
96 a10.extend(t.count);
97 a11.extend(t.count);
98 ddindx := t.first;
99 indx := 1;
100 while true loop
101 a0(indx) := t(ddindx).distribution_id;
102 a1(indx) := t(ddindx).loan_id;
103 a2(indx) := t(ddindx).line_type;
104 a3(indx) := t(ddindx).account_name;
105 a4(indx) := t(ddindx).code_combination_id;
106 a5(indx) := t(ddindx).account_type;
107 a6(indx) := t(ddindx).distribution_percent;
108 a7(indx) := t(ddindx).distribution_amount;
109 a8(indx) := t(ddindx).calculate_flag;
110 a9(indx) := t(ddindx).distribution_type;
111 a10(indx) := t(ddindx).event_id;
112 a11(indx) := t(ddindx).disb_header_id;
113 indx := indx+1;
114 if t.last =ddindx
115 then exit;
116 end if;
117 ddindx := t.next(ddindx);
118 end loop;
119 end if;
120 end if;
121 end rosetta_table_copy_out_p1;
122
123 procedure rosetta_table_copy_in_p3(t out nocopy lns_distributions_pub.default_distributions_tbl, a0 JTF_VARCHAR2_TABLE_100
124 , a1 JTF_VARCHAR2_TABLE_100
125 , a2 JTF_VARCHAR2_TABLE_100
126 , a3 JTF_VARCHAR2_TABLE_100
127 , a4 JTF_NUMBER_TABLE
128 , a5 JTF_VARCHAR2_TABLE_100
129 , a6 JTF_NUMBER_TABLE
130 , a7 JTF_VARCHAR2_TABLE_100
131 , a8 JTF_NUMBER_TABLE
132 , a9 JTF_NUMBER_TABLE
133 , a10 JTF_VARCHAR2_TABLE_100
134 , a11 JTF_VARCHAR2_TABLE_100
135 , a12 JTF_VARCHAR2_TABLE_100
136 ) as
137 ddindx binary_integer; indx binary_integer;
138 begin
139 if a0 is not null and a0.count > 0 then
140 if a0.count > 0 then
141 indx := a0.first;
142 ddindx := 1;
143 while true loop
144 t(ddindx).loan_class := a0(indx);
145 t(ddindx).loan_type := a1(indx);
146 t(ddindx).line_type := a2(indx);
147 t(ddindx).account_name := a3(indx);
148 t(ddindx).code_combination_id := a4(indx);
149 t(ddindx).account_type := a5(indx);
150 t(ddindx).distribution_percent := a6(indx);
151 t(ddindx).distribution_type := a7(indx);
152 t(ddindx).fee_id := a8(indx);
153 t(ddindx).org_id := a9(indx);
154 t(ddindx).mfar_balancing_segment := a10(indx);
155 t(ddindx).mfar_natural_account_rec := a11(indx);
156 t(ddindx).mfar_natural_account_clr := a12(indx);
157 ddindx := ddindx+1;
158 if a0.last =indx
159 then exit;
160 end if;
161 indx := a0.next(indx);
162 end loop;
163 end if;
164 end if;
165 end rosetta_table_copy_in_p3;
166 procedure rosetta_table_copy_out_p3(t lns_distributions_pub.default_distributions_tbl, a0 out nocopy JTF_VARCHAR2_TABLE_100
167 , a1 out nocopy JTF_VARCHAR2_TABLE_100
168 , a2 out nocopy JTF_VARCHAR2_TABLE_100
169 , a3 out nocopy JTF_VARCHAR2_TABLE_100
170 , a4 out nocopy JTF_NUMBER_TABLE
171 , a5 out nocopy JTF_VARCHAR2_TABLE_100
172 , a6 out nocopy JTF_NUMBER_TABLE
173 , a7 out nocopy JTF_VARCHAR2_TABLE_100
174 , a8 out nocopy JTF_NUMBER_TABLE
175 , a9 out nocopy JTF_NUMBER_TABLE
176 , a10 out nocopy JTF_VARCHAR2_TABLE_100
177 , a11 out nocopy JTF_VARCHAR2_TABLE_100
178 , a12 out nocopy JTF_VARCHAR2_TABLE_100
179 ) as
180 ddindx binary_integer; indx binary_integer;
181 begin
182 if t is null or t.count = 0 then
183 a0 := JTF_VARCHAR2_TABLE_100();
184 a1 := JTF_VARCHAR2_TABLE_100();
185 a2 := JTF_VARCHAR2_TABLE_100();
186 a3 := JTF_VARCHAR2_TABLE_100();
187 a4 := JTF_NUMBER_TABLE();
188 a5 := JTF_VARCHAR2_TABLE_100();
189 a6 := JTF_NUMBER_TABLE();
190 a7 := JTF_VARCHAR2_TABLE_100();
191 a8 := JTF_NUMBER_TABLE();
192 a9 := JTF_NUMBER_TABLE();
193 a10 := JTF_VARCHAR2_TABLE_100();
194 a11 := JTF_VARCHAR2_TABLE_100();
195 a12 := JTF_VARCHAR2_TABLE_100();
196 else
197 a0 := JTF_VARCHAR2_TABLE_100();
198 a1 := JTF_VARCHAR2_TABLE_100();
199 a2 := JTF_VARCHAR2_TABLE_100();
200 a3 := JTF_VARCHAR2_TABLE_100();
201 a4 := JTF_NUMBER_TABLE();
202 a5 := JTF_VARCHAR2_TABLE_100();
203 a6 := JTF_NUMBER_TABLE();
204 a7 := JTF_VARCHAR2_TABLE_100();
205 a8 := JTF_NUMBER_TABLE();
206 a9 := JTF_NUMBER_TABLE();
207 a10 := JTF_VARCHAR2_TABLE_100();
208 a11 := JTF_VARCHAR2_TABLE_100();
209 a12 := JTF_VARCHAR2_TABLE_100();
210 if t.count > 0 then
211 a0.extend(t.count);
212 a1.extend(t.count);
213 a2.extend(t.count);
214 a3.extend(t.count);
215 a4.extend(t.count);
216 a5.extend(t.count);
217 a6.extend(t.count);
218 a7.extend(t.count);
219 a8.extend(t.count);
220 a9.extend(t.count);
221 a10.extend(t.count);
222 a11.extend(t.count);
223 a12.extend(t.count);
224 ddindx := t.first;
225 indx := 1;
226 while true loop
227 a0(indx) := t(ddindx).loan_class;
228 a1(indx) := t(ddindx).loan_type;
229 a2(indx) := t(ddindx).line_type;
230 a3(indx) := t(ddindx).account_name;
231 a4(indx) := t(ddindx).code_combination_id;
232 a5(indx) := t(ddindx).account_type;
233 a6(indx) := t(ddindx).distribution_percent;
234 a7(indx) := t(ddindx).distribution_type;
235 a8(indx) := t(ddindx).fee_id;
236 a9(indx) := t(ddindx).org_id;
237 a10(indx) := t(ddindx).mfar_balancing_segment;
238 a11(indx) := t(ddindx).mfar_natural_account_rec;
239 a12(indx) := t(ddindx).mfar_natural_account_clr;
240 indx := indx+1;
241 if t.last =ddindx
242 then exit;
243 end if;
244 ddindx := t.next(ddindx);
245 end loop;
246 end if;
247 end if;
248 end rosetta_table_copy_out_p3;
249
250 procedure rosetta_table_copy_in_p5(t out nocopy lns_distributions_pub.acc_event_tbl, a0 JTF_NUMBER_TABLE
251 , a1 JTF_VARCHAR2_TABLE_100
252 , a2 JTF_DATE_TABLE
253 , a3 JTF_VARCHAR2_TABLE_100
254 , a4 JTF_NUMBER_TABLE
255 ) as
256 ddindx binary_integer; indx binary_integer;
257 begin
258 if a0 is not null and a0.count > 0 then
259 if a0.count > 0 then
260 indx := a0.first;
261 ddindx := 1;
262 while true loop
263 t(ddindx).loan_id := a0(indx);
264 t(ddindx).event_type_code := a1(indx);
265 t(ddindx).event_date := a2(indx);
266 t(ddindx).event_status := a3(indx);
267 t(ddindx).disb_header_id := a4(indx);
268 ddindx := ddindx+1;
269 if a0.last =indx
270 then exit;
271 end if;
272 indx := a0.next(indx);
273 end loop;
274 end if;
275 end if;
276 end rosetta_table_copy_in_p5;
277 procedure rosetta_table_copy_out_p5(t lns_distributions_pub.acc_event_tbl, a0 out nocopy JTF_NUMBER_TABLE
278 , a1 out nocopy JTF_VARCHAR2_TABLE_100
279 , a2 out nocopy JTF_DATE_TABLE
280 , a3 out nocopy JTF_VARCHAR2_TABLE_100
281 , a4 out nocopy JTF_NUMBER_TABLE
282 ) as
283 ddindx binary_integer; indx binary_integer;
284 begin
285 if t is null or t.count = 0 then
286 a0 := JTF_NUMBER_TABLE();
287 a1 := JTF_VARCHAR2_TABLE_100();
288 a2 := JTF_DATE_TABLE();
289 a3 := JTF_VARCHAR2_TABLE_100();
290 a4 := JTF_NUMBER_TABLE();
291 else
292 a0 := JTF_NUMBER_TABLE();
293 a1 := JTF_VARCHAR2_TABLE_100();
294 a2 := JTF_DATE_TABLE();
295 a3 := JTF_VARCHAR2_TABLE_100();
296 a4 := JTF_NUMBER_TABLE();
297 if t.count > 0 then
298 a0.extend(t.count);
299 a1.extend(t.count);
300 a2.extend(t.count);
301 a3.extend(t.count);
302 a4.extend(t.count);
303 ddindx := t.first;
304 indx := 1;
305 while true loop
306 a0(indx) := t(ddindx).loan_id;
307 a1(indx) := t(ddindx).event_type_code;
308 a2(indx) := t(ddindx).event_date;
309 a3(indx) := t(ddindx).event_status;
310 a4(indx) := t(ddindx).disb_header_id;
311 indx := indx+1;
312 if t.last =ddindx
313 then exit;
314 end if;
315 ddindx := t.next(ddindx);
316 end loop;
317 end if;
318 end if;
319 end rosetta_table_copy_out_p5;
320
321 procedure rosetta_table_copy_in_p6(t out nocopy lns_distributions_pub.g_number_tbl, a0 JTF_NUMBER_TABLE) as
322 ddindx binary_integer; indx binary_integer;
323 begin
324 if a0 is not null and a0.count > 0 then
325 if a0.count > 0 then
326 indx := a0.first;
327 ddindx := 1;
328 while true loop
329 t(ddindx) := a0(indx);
330 ddindx := ddindx+1;
331 if a0.last =indx
332 then exit;
333 end if;
334 indx := a0.next(indx);
335 end loop;
336 end if;
337 end if;
338 end rosetta_table_copy_in_p6;
339 procedure rosetta_table_copy_out_p6(t lns_distributions_pub.g_number_tbl, a0 out nocopy JTF_NUMBER_TABLE) as
340 ddindx binary_integer; indx binary_integer;
341 begin
342 if t is null or t.count = 0 then
343 a0 := JTF_NUMBER_TABLE();
344 else
345 a0 := JTF_NUMBER_TABLE();
346 if t.count > 0 then
347 a0.extend(t.count);
348 ddindx := t.first;
349 indx := 1;
350 while true loop
351 a0(indx) := t(ddindx);
352 indx := indx+1;
353 if t.last =ddindx
354 then exit;
355 end if;
356 ddindx := t.next(ddindx);
357 end loop;
358 end if;
359 end if;
360 end rosetta_table_copy_out_p6;
361
362 procedure create_event(p0_a0 JTF_NUMBER_TABLE
363 , p0_a1 JTF_VARCHAR2_TABLE_100
364 , p0_a2 JTF_DATE_TABLE
365 , p0_a3 JTF_VARCHAR2_TABLE_100
366 , p0_a4 JTF_NUMBER_TABLE
367 , p_init_msg_list VARCHAR2
368 , p_commit VARCHAR2
369 , x_return_status out nocopy VARCHAR2
370 , x_msg_count out nocopy NUMBER
371 , x_msg_data out nocopy VARCHAR2
372 )
373
374 as
375 ddp_acc_event_tbl lns_distributions_pub.acc_event_tbl;
376 ddindx binary_integer; indx binary_integer;
377 begin
378
379 -- copy data to the local IN or IN-OUT args, if any
380 lns_distributions_pub_w.rosetta_table_copy_in_p5(ddp_acc_event_tbl, p0_a0
381 , p0_a1
382 , p0_a2
383 , p0_a3
384 , p0_a4
385 );
386
387
388
389
390
391
392 -- here's the delegated call to the old PL/SQL routine
393 lns_distributions_pub.create_event(ddp_acc_event_tbl,
394 p_init_msg_list,
395 p_commit,
396 x_return_status,
397 x_msg_count,
398 x_msg_data);
399
400 -- copy data back from the local variables to OUT or IN-OUT args, if any
401
402
403
404
405
406 end;
407
408 procedure defaultdistributionscatch(p_api_version NUMBER
409 , p_init_msg_list VARCHAR2
410 , p_commit VARCHAR2
411 , p_loan_id NUMBER
412 , p_disb_header_id NUMBER
413 , p_include_loan_receivables VARCHAR2
414 , p_distribution_type VARCHAR2
415 , p7_a0 out nocopy JTF_NUMBER_TABLE
416 , p7_a1 out nocopy JTF_NUMBER_TABLE
417 , p7_a2 out nocopy JTF_VARCHAR2_TABLE_100
418 , p7_a3 out nocopy JTF_VARCHAR2_TABLE_100
419 , p7_a4 out nocopy JTF_NUMBER_TABLE
420 , p7_a5 out nocopy JTF_VARCHAR2_TABLE_100
421 , p7_a6 out nocopy JTF_NUMBER_TABLE
422 , p7_a7 out nocopy JTF_NUMBER_TABLE
423 , p7_a8 out nocopy JTF_VARCHAR2_TABLE_100
424 , p7_a9 out nocopy JTF_VARCHAR2_TABLE_100
425 , p7_a10 out nocopy JTF_NUMBER_TABLE
426 , p7_a11 out nocopy JTF_NUMBER_TABLE
427 , x_return_status out nocopy VARCHAR2
428 , x_msg_count out nocopy NUMBER
429 , x_msg_data out nocopy VARCHAR2
430 )
431
432 as
433 ddx_distribution_tbl lns_distributions_pub.distribution_tbl;
434 ddindx binary_integer; indx binary_integer;
435 begin
436
437 -- copy data to the local IN or IN-OUT args, if any
438
439
440
441
442
443
444
445
446
447
448
449 -- here's the delegated call to the old PL/SQL routine
450 lns_distributions_pub.defaultdistributionscatch(p_api_version,
451 p_init_msg_list,
452 p_commit,
453 p_loan_id,
454 p_disb_header_id,
455 p_include_loan_receivables,
456 p_distribution_type,
457 ddx_distribution_tbl,
458 x_return_status,
459 x_msg_count,
460 x_msg_data);
461
462 -- copy data back from the local variables to OUT or IN-OUT args, if any
463
464
465
466
467
468
469
470 lns_distributions_pub_w.rosetta_table_copy_out_p1(ddx_distribution_tbl, p7_a0
471 , p7_a1
472 , p7_a2
473 , p7_a3
474 , p7_a4
475 , p7_a5
476 , p7_a6
477 , p7_a7
478 , p7_a8
479 , p7_a9
480 , p7_a10
481 , p7_a11
482 );
483
484
485
486 end;
487
488 procedure validateloanlines(p_init_msg_list VARCHAR2
489 , p_loan_id NUMBER
490 , x_mfar out nocopy number
491 , x_return_status out nocopy VARCHAR2
492 , x_msg_count out nocopy NUMBER
493 , x_msg_data out nocopy VARCHAR2
494 )
495
496 as
497 ddx_mfar boolean;
498 ddindx binary_integer; indx binary_integer;
499 begin
500
501 -- copy data to the local IN or IN-OUT args, if any
502
503
504
505
506
507
508 -- here's the delegated call to the old PL/SQL routine
509 lns_distributions_pub.validateloanlines(p_init_msg_list,
510 p_loan_id,
511 ddx_mfar,
512 x_return_status,
513 x_msg_count,
514 x_msg_data);
515
516 -- copy data back from the local variables to OUT or IN-OUT args, if any
517
518
519 if ddx_mfar is null
520 then x_mfar := null;
521 elsif ddx_mfar
522 then x_mfar := 1;
523 else x_mfar := 0;
524 end if;
525
526
527
528 end;
529
530 end lns_distributions_pub_w;