DBA Data[Home] [Help]

PACKAGE BODY: APPS.LNS_BILLING_BATCH_PUB_W

Source


1 package body lns_billing_batch_pub_w as
2   /* $Header: LNS_BILL_PUBJ_B.pls 120.5.12020000.2 2012/07/19 20:52:53 scherkas ship $ */
3   procedure rosetta_table_copy_in_p1(t out nocopy lns_billing_batch_pub.loans_to_bill_tbl, a0 JTF_NUMBER_TABLE
4     , a1 JTF_NUMBER_TABLE
5     , a2 JTF_VARCHAR2_TABLE_100
6     , a3 JTF_VARCHAR2_TABLE_300
7     , a4 JTF_NUMBER_TABLE
8     , a5 JTF_DATE_TABLE
9     , a6 JTF_DATE_TABLE
10     , a7 JTF_DATE_TABLE
11     , a8 JTF_VARCHAR2_TABLE_100
12     , a9 JTF_VARCHAR2_TABLE_100
13     , a10 JTF_NUMBER_TABLE
14     , a11 JTF_NUMBER_TABLE
15     , a12 JTF_VARCHAR2_TABLE_100
16     , a13 JTF_NUMBER_TABLE
17     , a14 JTF_VARCHAR2_TABLE_100
18     , a15 JTF_VARCHAR2_TABLE_100
19     , a16 JTF_NUMBER_TABLE
20     , a17 JTF_NUMBER_TABLE
21     , a18 JTF_NUMBER_TABLE
22     , a19 JTF_NUMBER_TABLE
23     , a20 JTF_NUMBER_TABLE
24     , a21 JTF_NUMBER_TABLE
25     , a22 JTF_NUMBER_TABLE
26     , a23 JTF_NUMBER_TABLE
27     , a24 JTF_VARCHAR2_TABLE_100
28     , a25 JTF_DATE_TABLE
29     , a26 JTF_NUMBER_TABLE
30     , a27 JTF_NUMBER_TABLE
31     , a28 JTF_NUMBER_TABLE
32     , a29 JTF_VARCHAR2_TABLE_100
33     , a30 JTF_VARCHAR2_TABLE_100
34     , a31 JTF_NUMBER_TABLE
35     , a32 JTF_VARCHAR2_TABLE_100
36     , a33 JTF_NUMBER_TABLE
37     , a34 JTF_NUMBER_TABLE
38     , a35 JTF_NUMBER_TABLE
39     , a36 JTF_NUMBER_TABLE
40     ) as
41     ddindx binary_integer; indx binary_integer;
42   begin
43   if a0 is not null and a0.count > 0 then
44       if a0.count > 0 then
45         indx := a0.first;
46         ddindx := 1;
47         while true loop
48           t(ddindx).loan_id := a0(indx);
49           t(ddindx).object_version_number := a1(indx);
50           t(ddindx).loan_number := a2(indx);
51           t(ddindx).loan_description := a3(indx);
52           t(ddindx).funded_amount := a4(indx);
53           t(ddindx).first_payment_date := a5(indx);
54           t(ddindx).next_payment_due_date := a6(indx);
55           t(ddindx).next_payment_late_date := a7(indx);
56           t(ddindx).billed_flag := a8(indx);
57           t(ddindx).loan_currency := a9(indx);
58           t(ddindx).cust_account_id := a10(indx);
59           t(ddindx).bill_to_address_id := a11(indx);
60           t(ddindx).loan_payment_frequency := a12(indx);
61           t(ddindx).number_grace_days := a13(indx);
62           t(ddindx).payment_application_order := a14(indx);
63           t(ddindx).custom_payments_flag := a15(indx);
64           t(ddindx).last_payment_number := a16(indx);
65           t(ddindx).next_payment_number := a17(indx);
66           t(ddindx).next_principal_amount := a18(indx);
67           t(ddindx).next_interest_amount := a19(indx);
68           t(ddindx).next_fee_amount := a20(indx);
69           t(ddindx).next_amortization_id := a21(indx);
70           t(ddindx).rate_id := a22(indx);
71           t(ddindx).parent_amortization_id := a23(indx);
72           t(ddindx).exchange_rate_type := a24(indx);
73           t(ddindx).exchange_date := a25(indx);
74           t(ddindx).exchange_rate := a26(indx);
75           t(ddindx).org_id := a27(indx);
76           t(ddindx).legal_entity_id := a28(indx);
77           t(ddindx).current_phase := a29(indx);
78           t(ddindx).forgiveness_flag := a30(indx);
79           t(ddindx).forgiveness_percent := a31(indx);
80           t(ddindx).disable_billing_flag := a32(indx);
81           t(ddindx).principal_balance := a33(indx);
82           t(ddindx).deferred_int_amount := a34(indx);
83           t(ddindx).curr_cap_int_amount := a35(indx);
84           t(ddindx).cap_int_amount := a36(indx);
85           ddindx := ddindx+1;
86           if a0.last =indx
87             then exit;
88           end if;
89           indx := a0.next(indx);
90         end loop;
91       end if;
92    end if;
93   end rosetta_table_copy_in_p1;
94   procedure rosetta_table_copy_out_p1(t lns_billing_batch_pub.loans_to_bill_tbl, a0 out nocopy JTF_NUMBER_TABLE
95     , a1 out nocopy JTF_NUMBER_TABLE
96     , a2 out nocopy JTF_VARCHAR2_TABLE_100
97     , a3 out nocopy JTF_VARCHAR2_TABLE_300
98     , a4 out nocopy JTF_NUMBER_TABLE
99     , a5 out nocopy JTF_DATE_TABLE
100     , a6 out nocopy JTF_DATE_TABLE
101     , a7 out nocopy JTF_DATE_TABLE
102     , a8 out nocopy JTF_VARCHAR2_TABLE_100
103     , a9 out nocopy JTF_VARCHAR2_TABLE_100
104     , a10 out nocopy JTF_NUMBER_TABLE
105     , a11 out nocopy JTF_NUMBER_TABLE
106     , a12 out nocopy JTF_VARCHAR2_TABLE_100
107     , a13 out nocopy JTF_NUMBER_TABLE
108     , a14 out nocopy JTF_VARCHAR2_TABLE_100
109     , a15 out nocopy JTF_VARCHAR2_TABLE_100
110     , a16 out nocopy JTF_NUMBER_TABLE
111     , a17 out nocopy JTF_NUMBER_TABLE
112     , a18 out nocopy JTF_NUMBER_TABLE
113     , a19 out nocopy JTF_NUMBER_TABLE
114     , a20 out nocopy JTF_NUMBER_TABLE
115     , a21 out nocopy JTF_NUMBER_TABLE
116     , a22 out nocopy JTF_NUMBER_TABLE
117     , a23 out nocopy JTF_NUMBER_TABLE
118     , a24 out nocopy JTF_VARCHAR2_TABLE_100
119     , a25 out nocopy JTF_DATE_TABLE
120     , a26 out nocopy JTF_NUMBER_TABLE
121     , a27 out nocopy JTF_NUMBER_TABLE
122     , a28 out nocopy JTF_NUMBER_TABLE
123     , a29 out nocopy JTF_VARCHAR2_TABLE_100
124     , a30 out nocopy JTF_VARCHAR2_TABLE_100
125     , a31 out nocopy JTF_NUMBER_TABLE
126     , a32 out nocopy JTF_VARCHAR2_TABLE_100
127     , a33 out nocopy JTF_NUMBER_TABLE
128     , a34 out nocopy JTF_NUMBER_TABLE
129     , a35 out nocopy JTF_NUMBER_TABLE
130     , a36 out nocopy JTF_NUMBER_TABLE
131     ) as
132     ddindx binary_integer; indx binary_integer;
133   begin
134   if t is null or t.count = 0 then
135     a0 := JTF_NUMBER_TABLE();
136     a1 := JTF_NUMBER_TABLE();
137     a2 := JTF_VARCHAR2_TABLE_100();
138     a3 := JTF_VARCHAR2_TABLE_300();
139     a4 := JTF_NUMBER_TABLE();
140     a5 := JTF_DATE_TABLE();
141     a6 := JTF_DATE_TABLE();
142     a7 := JTF_DATE_TABLE();
143     a8 := JTF_VARCHAR2_TABLE_100();
144     a9 := JTF_VARCHAR2_TABLE_100();
145     a10 := JTF_NUMBER_TABLE();
146     a11 := JTF_NUMBER_TABLE();
147     a12 := JTF_VARCHAR2_TABLE_100();
148     a13 := JTF_NUMBER_TABLE();
149     a14 := JTF_VARCHAR2_TABLE_100();
150     a15 := JTF_VARCHAR2_TABLE_100();
151     a16 := JTF_NUMBER_TABLE();
152     a17 := JTF_NUMBER_TABLE();
153     a18 := JTF_NUMBER_TABLE();
154     a19 := JTF_NUMBER_TABLE();
155     a20 := JTF_NUMBER_TABLE();
156     a21 := JTF_NUMBER_TABLE();
157     a22 := JTF_NUMBER_TABLE();
158     a23 := JTF_NUMBER_TABLE();
159     a24 := JTF_VARCHAR2_TABLE_100();
160     a25 := JTF_DATE_TABLE();
161     a26 := JTF_NUMBER_TABLE();
162     a27 := JTF_NUMBER_TABLE();
163     a28 := JTF_NUMBER_TABLE();
164     a29 := JTF_VARCHAR2_TABLE_100();
165     a30 := JTF_VARCHAR2_TABLE_100();
166     a31 := JTF_NUMBER_TABLE();
167     a32 := JTF_VARCHAR2_TABLE_100();
168     a33 := JTF_NUMBER_TABLE();
169     a34 := JTF_NUMBER_TABLE();
170     a35 := JTF_NUMBER_TABLE();
171     a36 := JTF_NUMBER_TABLE();
172   else
173       a0 := JTF_NUMBER_TABLE();
174       a1 := JTF_NUMBER_TABLE();
175       a2 := JTF_VARCHAR2_TABLE_100();
176       a3 := JTF_VARCHAR2_TABLE_300();
177       a4 := JTF_NUMBER_TABLE();
178       a5 := JTF_DATE_TABLE();
179       a6 := JTF_DATE_TABLE();
180       a7 := JTF_DATE_TABLE();
181       a8 := JTF_VARCHAR2_TABLE_100();
182       a9 := JTF_VARCHAR2_TABLE_100();
183       a10 := JTF_NUMBER_TABLE();
184       a11 := JTF_NUMBER_TABLE();
185       a12 := JTF_VARCHAR2_TABLE_100();
186       a13 := JTF_NUMBER_TABLE();
187       a14 := JTF_VARCHAR2_TABLE_100();
188       a15 := JTF_VARCHAR2_TABLE_100();
189       a16 := JTF_NUMBER_TABLE();
190       a17 := JTF_NUMBER_TABLE();
191       a18 := JTF_NUMBER_TABLE();
192       a19 := JTF_NUMBER_TABLE();
193       a20 := JTF_NUMBER_TABLE();
194       a21 := JTF_NUMBER_TABLE();
195       a22 := JTF_NUMBER_TABLE();
196       a23 := JTF_NUMBER_TABLE();
197       a24 := JTF_VARCHAR2_TABLE_100();
198       a25 := JTF_DATE_TABLE();
199       a26 := JTF_NUMBER_TABLE();
200       a27 := JTF_NUMBER_TABLE();
201       a28 := JTF_NUMBER_TABLE();
202       a29 := JTF_VARCHAR2_TABLE_100();
203       a30 := JTF_VARCHAR2_TABLE_100();
204       a31 := JTF_NUMBER_TABLE();
205       a32 := JTF_VARCHAR2_TABLE_100();
206       a33 := JTF_NUMBER_TABLE();
207       a34 := JTF_NUMBER_TABLE();
208       a35 := JTF_NUMBER_TABLE();
209       a36 := JTF_NUMBER_TABLE();
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         a13.extend(t.count);
225         a14.extend(t.count);
226         a15.extend(t.count);
227         a16.extend(t.count);
228         a17.extend(t.count);
229         a18.extend(t.count);
230         a19.extend(t.count);
231         a20.extend(t.count);
232         a21.extend(t.count);
233         a22.extend(t.count);
234         a23.extend(t.count);
235         a24.extend(t.count);
236         a25.extend(t.count);
237         a26.extend(t.count);
238         a27.extend(t.count);
239         a28.extend(t.count);
240         a29.extend(t.count);
241         a30.extend(t.count);
242         a31.extend(t.count);
243         a32.extend(t.count);
244         a33.extend(t.count);
245         a34.extend(t.count);
246         a35.extend(t.count);
247         a36.extend(t.count);
248         ddindx := t.first;
249         indx := 1;
250         while true loop
251           a0(indx) := t(ddindx).loan_id;
252           a1(indx) := t(ddindx).object_version_number;
253           a2(indx) := t(ddindx).loan_number;
254           a3(indx) := t(ddindx).loan_description;
255           a4(indx) := t(ddindx).funded_amount;
256           a5(indx) := t(ddindx).first_payment_date;
257           a6(indx) := t(ddindx).next_payment_due_date;
258           a7(indx) := t(ddindx).next_payment_late_date;
259           a8(indx) := t(ddindx).billed_flag;
260           a9(indx) := t(ddindx).loan_currency;
261           a10(indx) := t(ddindx).cust_account_id;
262           a11(indx) := t(ddindx).bill_to_address_id;
263           a12(indx) := t(ddindx).loan_payment_frequency;
264           a13(indx) := t(ddindx).number_grace_days;
265           a14(indx) := t(ddindx).payment_application_order;
266           a15(indx) := t(ddindx).custom_payments_flag;
267           a16(indx) := t(ddindx).last_payment_number;
268           a17(indx) := t(ddindx).next_payment_number;
269           a18(indx) := t(ddindx).next_principal_amount;
270           a19(indx) := t(ddindx).next_interest_amount;
271           a20(indx) := t(ddindx).next_fee_amount;
272           a21(indx) := t(ddindx).next_amortization_id;
273           a22(indx) := t(ddindx).rate_id;
274           a23(indx) := t(ddindx).parent_amortization_id;
275           a24(indx) := t(ddindx).exchange_rate_type;
276           a25(indx) := t(ddindx).exchange_date;
277           a26(indx) := t(ddindx).exchange_rate;
278           a27(indx) := t(ddindx).org_id;
279           a28(indx) := t(ddindx).legal_entity_id;
280           a29(indx) := t(ddindx).current_phase;
281           a30(indx) := t(ddindx).forgiveness_flag;
282           a31(indx) := t(ddindx).forgiveness_percent;
283           a32(indx) := t(ddindx).disable_billing_flag;
284           a33(indx) := t(ddindx).principal_balance;
285           a34(indx) := t(ddindx).deferred_int_amount;
286           a35(indx) := t(ddindx).curr_cap_int_amount;
287           a36(indx) := t(ddindx).cap_int_amount;
288           indx := indx+1;
289           if t.last =ddindx
290             then exit;
291           end if;
292           ddindx := t.next(ddindx);
293         end loop;
294       end if;
295    end if;
296   end rosetta_table_copy_out_p1;
297 
298   procedure rosetta_table_copy_in_p4(t out nocopy lns_billing_batch_pub.reverse_tbl, a0 JTF_VARCHAR2_TABLE_100
299     , a1 JTF_NUMBER_TABLE
300     , a2 JTF_NUMBER_TABLE
301     , a3 JTF_NUMBER_TABLE
302     , a4 JTF_VARCHAR2_TABLE_100
303     , a5 JTF_NUMBER_TABLE
304     , a6 JTF_NUMBER_TABLE
305     , a7 JTF_NUMBER_TABLE
306     ) as
307     ddindx binary_integer; indx binary_integer;
308   begin
309   if a0 is not null and a0.count > 0 then
310       if a0.count > 0 then
311         indx := a0.first;
312         ddindx := 1;
313         while true loop
314           t(ddindx).trx_number := a0(indx);
315           t(ddindx).customer_trx_id := a1(indx);
316           t(ddindx).payment_schedule_id := a2(indx);
317           t(ddindx).customer_trx_line_id := a3(indx);
318           t(ddindx).line_type := a4(indx);
319           t(ddindx).trx_amount := a5(indx);
320           t(ddindx).applied_amount := a6(indx);
321           t(ddindx).org_id := a7(indx);
322           ddindx := ddindx+1;
323           if a0.last =indx
324             then exit;
325           end if;
326           indx := a0.next(indx);
327         end loop;
328       end if;
329    end if;
330   end rosetta_table_copy_in_p4;
331   procedure rosetta_table_copy_out_p4(t lns_billing_batch_pub.reverse_tbl, a0 out nocopy JTF_VARCHAR2_TABLE_100
332     , a1 out nocopy JTF_NUMBER_TABLE
333     , a2 out nocopy JTF_NUMBER_TABLE
334     , a3 out nocopy JTF_NUMBER_TABLE
335     , a4 out nocopy JTF_VARCHAR2_TABLE_100
336     , a5 out nocopy JTF_NUMBER_TABLE
337     , a6 out nocopy JTF_NUMBER_TABLE
338     , a7 out nocopy JTF_NUMBER_TABLE
339     ) as
340     ddindx binary_integer; indx binary_integer;
341   begin
342   if t is null or t.count = 0 then
343     a0 := JTF_VARCHAR2_TABLE_100();
344     a1 := JTF_NUMBER_TABLE();
345     a2 := JTF_NUMBER_TABLE();
346     a3 := JTF_NUMBER_TABLE();
347     a4 := JTF_VARCHAR2_TABLE_100();
348     a5 := JTF_NUMBER_TABLE();
349     a6 := JTF_NUMBER_TABLE();
350     a7 := JTF_NUMBER_TABLE();
351   else
352       a0 := JTF_VARCHAR2_TABLE_100();
353       a1 := JTF_NUMBER_TABLE();
354       a2 := JTF_NUMBER_TABLE();
355       a3 := JTF_NUMBER_TABLE();
356       a4 := JTF_VARCHAR2_TABLE_100();
357       a5 := JTF_NUMBER_TABLE();
358       a6 := JTF_NUMBER_TABLE();
359       a7 := JTF_NUMBER_TABLE();
360       if t.count > 0 then
361         a0.extend(t.count);
362         a1.extend(t.count);
363         a2.extend(t.count);
364         a3.extend(t.count);
365         a4.extend(t.count);
366         a5.extend(t.count);
367         a6.extend(t.count);
368         a7.extend(t.count);
369         ddindx := t.first;
370         indx := 1;
371         while true loop
372           a0(indx) := t(ddindx).trx_number;
373           a1(indx) := t(ddindx).customer_trx_id;
374           a2(indx) := t(ddindx).payment_schedule_id;
375           a3(indx) := t(ddindx).customer_trx_line_id;
376           a4(indx) := t(ddindx).line_type;
377           a5(indx) := t(ddindx).trx_amount;
378           a6(indx) := t(ddindx).applied_amount;
379           a7(indx) := t(ddindx).org_id;
380           indx := indx+1;
381           if t.last =ddindx
382             then exit;
383           end if;
384           ddindx := t.next(ddindx);
385         end loop;
386       end if;
387    end if;
388   end rosetta_table_copy_out_p4;
389 
390   procedure rosetta_table_copy_in_p6(t out nocopy lns_billing_batch_pub.bill_headers_tbl, a0 JTF_NUMBER_TABLE
391     , a1 JTF_NUMBER_TABLE
392     , a2 JTF_NUMBER_TABLE
393     , a3 JTF_DATE_TABLE
394     , a4 JTF_NUMBER_TABLE
395     , a5 JTF_NUMBER_TABLE
396     ) as
397     ddindx binary_integer; indx binary_integer;
398   begin
399   if a0 is not null and a0.count > 0 then
400       if a0.count > 0 then
401         indx := a0.first;
402         ddindx := 1;
403         while true loop
404           t(ddindx).header_id := a0(indx);
405           t(ddindx).loan_id := a1(indx);
406           t(ddindx).assoc_payment_num := a2(indx);
407           t(ddindx).due_date := a3(indx);
408           t(ddindx).cust_account_id := a4(indx);
409           t(ddindx).bill_to_address_id := a5(indx);
410           ddindx := ddindx+1;
411           if a0.last =indx
412             then exit;
413           end if;
414           indx := a0.next(indx);
415         end loop;
416       end if;
417    end if;
418   end rosetta_table_copy_in_p6;
419   procedure rosetta_table_copy_out_p6(t lns_billing_batch_pub.bill_headers_tbl, a0 out nocopy JTF_NUMBER_TABLE
420     , a1 out nocopy JTF_NUMBER_TABLE
421     , a2 out nocopy JTF_NUMBER_TABLE
422     , a3 out nocopy JTF_DATE_TABLE
423     , a4 out nocopy JTF_NUMBER_TABLE
424     , a5 out nocopy JTF_NUMBER_TABLE
425     ) as
426     ddindx binary_integer; indx binary_integer;
427   begin
428   if t is null or t.count = 0 then
429     a0 := JTF_NUMBER_TABLE();
430     a1 := JTF_NUMBER_TABLE();
431     a2 := JTF_NUMBER_TABLE();
432     a3 := JTF_DATE_TABLE();
433     a4 := JTF_NUMBER_TABLE();
434     a5 := JTF_NUMBER_TABLE();
435   else
436       a0 := JTF_NUMBER_TABLE();
437       a1 := JTF_NUMBER_TABLE();
438       a2 := JTF_NUMBER_TABLE();
439       a3 := JTF_DATE_TABLE();
440       a4 := JTF_NUMBER_TABLE();
441       a5 := JTF_NUMBER_TABLE();
442       if t.count > 0 then
443         a0.extend(t.count);
444         a1.extend(t.count);
445         a2.extend(t.count);
446         a3.extend(t.count);
447         a4.extend(t.count);
448         a5.extend(t.count);
449         ddindx := t.first;
450         indx := 1;
451         while true loop
452           a0(indx) := t(ddindx).header_id;
453           a1(indx) := t(ddindx).loan_id;
454           a2(indx) := t(ddindx).assoc_payment_num;
455           a3(indx) := t(ddindx).due_date;
456           a4(indx) := t(ddindx).cust_account_id;
457           a5(indx) := t(ddindx).bill_to_address_id;
458           indx := indx+1;
459           if t.last =ddindx
460             then exit;
461           end if;
462           ddindx := t.next(ddindx);
463         end loop;
464       end if;
465    end if;
466   end rosetta_table_copy_out_p6;
467 
468   procedure rosetta_table_copy_in_p8(t out nocopy lns_billing_batch_pub.bill_lines_tbl, a0 JTF_NUMBER_TABLE
469     , a1 JTF_NUMBER_TABLE
470     , a2 JTF_NUMBER_TABLE
471     , a3 JTF_NUMBER_TABLE
472     , a4 JTF_NUMBER_TABLE
473     , a5 JTF_NUMBER_TABLE
474     , a6 JTF_NUMBER_TABLE
475     , a7 JTF_VARCHAR2_TABLE_100
476     , a8 JTF_VARCHAR2_TABLE_300
477     , a9 JTF_NUMBER_TABLE
478     , a10 JTF_NUMBER_TABLE
479     , a11 JTF_NUMBER_TABLE
480     , a12 JTF_NUMBER_TABLE
481     , a13 JTF_VARCHAR2_TABLE_2000
482     ) as
483     ddindx binary_integer; indx binary_integer;
484   begin
485   if a0 is not null and a0.count > 0 then
486       if a0.count > 0 then
487         indx := a0.first;
488         ddindx := 1;
489         while true loop
490           t(ddindx).header_id := a0(indx);
491           t(ddindx).line_id := a1(indx);
492           t(ddindx).customer_trx_id := a2(indx);
493           t(ddindx).payment_schedule_id := a3(indx);
494           t(ddindx).customer_trx_line_id := a4(indx);
495           t(ddindx).line_ref_id := a5(indx);
496           t(ddindx).line_amount := a6(indx);
497           t(ddindx).line_type := a7(indx);
498           t(ddindx).line_desc := a8(indx);
499           t(ddindx).cash_receipt_id := a9(indx);
500           t(ddindx).apply_amount := a10(indx);
501           t(ddindx).payment_order := a11(indx);
502           t(ddindx).fee_schedule_id := a12(indx);
503           t(ddindx).line_details := a13(indx);
504           ddindx := ddindx+1;
505           if a0.last =indx
506             then exit;
507           end if;
508           indx := a0.next(indx);
509         end loop;
510       end if;
511    end if;
512   end rosetta_table_copy_in_p8;
513   procedure rosetta_table_copy_out_p8(t lns_billing_batch_pub.bill_lines_tbl, a0 out nocopy JTF_NUMBER_TABLE
514     , a1 out nocopy JTF_NUMBER_TABLE
515     , a2 out nocopy JTF_NUMBER_TABLE
516     , a3 out nocopy JTF_NUMBER_TABLE
517     , a4 out nocopy JTF_NUMBER_TABLE
518     , a5 out nocopy JTF_NUMBER_TABLE
519     , a6 out nocopy JTF_NUMBER_TABLE
520     , a7 out nocopy JTF_VARCHAR2_TABLE_100
521     , a8 out nocopy JTF_VARCHAR2_TABLE_300
522     , a9 out nocopy JTF_NUMBER_TABLE
523     , a10 out nocopy JTF_NUMBER_TABLE
524     , a11 out nocopy JTF_NUMBER_TABLE
525     , a12 out nocopy JTF_NUMBER_TABLE
526     , a13 out nocopy JTF_VARCHAR2_TABLE_2000
527     ) as
528     ddindx binary_integer; indx binary_integer;
529   begin
530   if t is null or t.count = 0 then
531     a0 := JTF_NUMBER_TABLE();
532     a1 := JTF_NUMBER_TABLE();
533     a2 := JTF_NUMBER_TABLE();
534     a3 := JTF_NUMBER_TABLE();
535     a4 := JTF_NUMBER_TABLE();
536     a5 := JTF_NUMBER_TABLE();
537     a6 := JTF_NUMBER_TABLE();
538     a7 := JTF_VARCHAR2_TABLE_100();
539     a8 := JTF_VARCHAR2_TABLE_300();
540     a9 := JTF_NUMBER_TABLE();
541     a10 := JTF_NUMBER_TABLE();
542     a11 := JTF_NUMBER_TABLE();
543     a12 := JTF_NUMBER_TABLE();
544     a13 := JTF_VARCHAR2_TABLE_2000();
545   else
546       a0 := JTF_NUMBER_TABLE();
547       a1 := JTF_NUMBER_TABLE();
548       a2 := JTF_NUMBER_TABLE();
549       a3 := JTF_NUMBER_TABLE();
550       a4 := JTF_NUMBER_TABLE();
551       a5 := JTF_NUMBER_TABLE();
552       a6 := JTF_NUMBER_TABLE();
553       a7 := JTF_VARCHAR2_TABLE_100();
554       a8 := JTF_VARCHAR2_TABLE_300();
555       a9 := JTF_NUMBER_TABLE();
556       a10 := JTF_NUMBER_TABLE();
557       a11 := JTF_NUMBER_TABLE();
558       a12 := JTF_NUMBER_TABLE();
559       a13 := JTF_VARCHAR2_TABLE_2000();
560       if t.count > 0 then
561         a0.extend(t.count);
562         a1.extend(t.count);
563         a2.extend(t.count);
564         a3.extend(t.count);
565         a4.extend(t.count);
566         a5.extend(t.count);
567         a6.extend(t.count);
568         a7.extend(t.count);
569         a8.extend(t.count);
570         a9.extend(t.count);
571         a10.extend(t.count);
572         a11.extend(t.count);
573         a12.extend(t.count);
574         a13.extend(t.count);
575         ddindx := t.first;
576         indx := 1;
577         while true loop
578           a0(indx) := t(ddindx).header_id;
579           a1(indx) := t(ddindx).line_id;
580           a2(indx) := t(ddindx).customer_trx_id;
581           a3(indx) := t(ddindx).payment_schedule_id;
582           a4(indx) := t(ddindx).customer_trx_line_id;
583           a5(indx) := t(ddindx).line_ref_id;
584           a6(indx) := t(ddindx).line_amount;
585           a7(indx) := t(ddindx).line_type;
586           a8(indx) := t(ddindx).line_desc;
587           a9(indx) := t(ddindx).cash_receipt_id;
588           a10(indx) := t(ddindx).apply_amount;
589           a11(indx) := t(ddindx).payment_order;
590           a12(indx) := t(ddindx).fee_schedule_id;
591           a13(indx) := t(ddindx).line_details;
592           indx := indx+1;
593           if t.last =ddindx
594             then exit;
595           end if;
596           ddindx := t.next(ddindx);
597         end loop;
598       end if;
599    end if;
600   end rosetta_table_copy_out_p8;
601 
602   procedure rosetta_table_copy_in_p10(t out nocopy lns_billing_batch_pub.invoice_details_tbl, a0 JTF_NUMBER_TABLE
603     , a1 JTF_NUMBER_TABLE
604     , a2 JTF_VARCHAR2_TABLE_100
605     , a3 JTF_NUMBER_TABLE
606     , a4 JTF_VARCHAR2_TABLE_100
607     , a5 JTF_NUMBER_TABLE
608     , a6 JTF_NUMBER_TABLE
609     , a7 JTF_NUMBER_TABLE
610     , a8 JTF_DATE_TABLE
611     , a9 JTF_DATE_TABLE
612     , a10 JTF_DATE_TABLE
613     , a11 JTF_VARCHAR2_TABLE_100
614     , a12 JTF_VARCHAR2_TABLE_100
615     , a13 JTF_VARCHAR2_TABLE_100
616     , a14 JTF_NUMBER_TABLE
617     ) as
618     ddindx binary_integer; indx binary_integer;
619   begin
620   if a0 is not null and a0.count > 0 then
621       if a0.count > 0 then
622         indx := a0.first;
623         ddindx := 1;
624         while true loop
625           t(ddindx).cust_trx_id := a0(indx);
626           t(ddindx).payment_schedule_id := a1(indx);
627           t(ddindx).invoice_number := a2(indx);
628           t(ddindx).installment_number := a3(indx);
629           t(ddindx).transaction_type := a4(indx);
630           t(ddindx).original_amount := a5(indx);
631           t(ddindx).remaining_amount := a6(indx);
632           t(ddindx).forgiveness_amount := a7(indx);
633           t(ddindx).trx_date := a8(indx);
634           t(ddindx).due_date := a9(indx);
635           t(ddindx).gl_date := a10(indx);
636           t(ddindx).purpose := a11(indx);
637           t(ddindx).billed_flag := a12(indx);
638           t(ddindx).invoice_currency := a13(indx);
639           t(ddindx).exchange_rate := a14(indx);
640           ddindx := ddindx+1;
641           if a0.last =indx
642             then exit;
643           end if;
644           indx := a0.next(indx);
645         end loop;
646       end if;
647    end if;
648   end rosetta_table_copy_in_p10;
649   procedure rosetta_table_copy_out_p10(t lns_billing_batch_pub.invoice_details_tbl, a0 out nocopy JTF_NUMBER_TABLE
650     , a1 out nocopy JTF_NUMBER_TABLE
651     , a2 out nocopy JTF_VARCHAR2_TABLE_100
652     , a3 out nocopy JTF_NUMBER_TABLE
653     , a4 out nocopy JTF_VARCHAR2_TABLE_100
654     , a5 out nocopy JTF_NUMBER_TABLE
655     , a6 out nocopy JTF_NUMBER_TABLE
656     , a7 out nocopy JTF_NUMBER_TABLE
657     , a8 out nocopy JTF_DATE_TABLE
658     , a9 out nocopy JTF_DATE_TABLE
659     , a10 out nocopy JTF_DATE_TABLE
660     , a11 out nocopy JTF_VARCHAR2_TABLE_100
661     , a12 out nocopy JTF_VARCHAR2_TABLE_100
662     , a13 out nocopy JTF_VARCHAR2_TABLE_100
663     , a14 out nocopy JTF_NUMBER_TABLE
664     ) as
665     ddindx binary_integer; indx binary_integer;
666   begin
667   if t is null or t.count = 0 then
668     a0 := JTF_NUMBER_TABLE();
669     a1 := JTF_NUMBER_TABLE();
670     a2 := JTF_VARCHAR2_TABLE_100();
671     a3 := JTF_NUMBER_TABLE();
672     a4 := JTF_VARCHAR2_TABLE_100();
673     a5 := JTF_NUMBER_TABLE();
674     a6 := JTF_NUMBER_TABLE();
675     a7 := JTF_NUMBER_TABLE();
676     a8 := JTF_DATE_TABLE();
677     a9 := JTF_DATE_TABLE();
678     a10 := JTF_DATE_TABLE();
679     a11 := JTF_VARCHAR2_TABLE_100();
680     a12 := JTF_VARCHAR2_TABLE_100();
681     a13 := JTF_VARCHAR2_TABLE_100();
682     a14 := JTF_NUMBER_TABLE();
683   else
684       a0 := JTF_NUMBER_TABLE();
685       a1 := JTF_NUMBER_TABLE();
686       a2 := JTF_VARCHAR2_TABLE_100();
687       a3 := JTF_NUMBER_TABLE();
688       a4 := JTF_VARCHAR2_TABLE_100();
689       a5 := JTF_NUMBER_TABLE();
690       a6 := JTF_NUMBER_TABLE();
691       a7 := JTF_NUMBER_TABLE();
692       a8 := JTF_DATE_TABLE();
693       a9 := JTF_DATE_TABLE();
694       a10 := JTF_DATE_TABLE();
695       a11 := JTF_VARCHAR2_TABLE_100();
696       a12 := JTF_VARCHAR2_TABLE_100();
697       a13 := JTF_VARCHAR2_TABLE_100();
698       a14 := JTF_NUMBER_TABLE();
699       if t.count > 0 then
700         a0.extend(t.count);
701         a1.extend(t.count);
702         a2.extend(t.count);
703         a3.extend(t.count);
704         a4.extend(t.count);
705         a5.extend(t.count);
706         a6.extend(t.count);
707         a7.extend(t.count);
708         a8.extend(t.count);
709         a9.extend(t.count);
710         a10.extend(t.count);
711         a11.extend(t.count);
712         a12.extend(t.count);
713         a13.extend(t.count);
714         a14.extend(t.count);
715         ddindx := t.first;
716         indx := 1;
717         while true loop
718           a0(indx) := t(ddindx).cust_trx_id;
719           a1(indx) := t(ddindx).payment_schedule_id;
720           a2(indx) := t(ddindx).invoice_number;
721           a3(indx) := t(ddindx).installment_number;
722           a4(indx) := t(ddindx).transaction_type;
723           a5(indx) := t(ddindx).original_amount;
724           a6(indx) := t(ddindx).remaining_amount;
725           a7(indx) := t(ddindx).forgiveness_amount;
726           a8(indx) := t(ddindx).trx_date;
727           a9(indx) := t(ddindx).due_date;
728           a10(indx) := t(ddindx).gl_date;
729           a11(indx) := t(ddindx).purpose;
730           a12(indx) := t(ddindx).billed_flag;
731           a13(indx) := t(ddindx).invoice_currency;
732           a14(indx) := t(ddindx).exchange_rate;
733           indx := indx+1;
734           if t.last =ddindx
735             then exit;
736           end if;
737           ddindx := t.next(ddindx);
738         end loop;
739       end if;
740    end if;
741   end rosetta_table_copy_out_p10;
742 
743   procedure rosetta_table_copy_in_p12(t out nocopy lns_billing_batch_pub.cash_receipt_tbl, a0 JTF_NUMBER_TABLE
744     , a1 JTF_NUMBER_TABLE
745     , a2 JTF_VARCHAR2_TABLE_100
746     , a3 JTF_NUMBER_TABLE
747     , a4 JTF_DATE_TABLE
748     , a5 JTF_VARCHAR2_TABLE_100
749     , a6 JTF_VARCHAR2_TABLE_100
750     , a7 JTF_VARCHAR2_TABLE_100
751     , a8 JTF_DATE_TABLE
752     , a9 JTF_DATE_TABLE
753     ) as
754     ddindx binary_integer; indx binary_integer;
755   begin
756   if a0 is not null and a0.count > 0 then
757       if a0.count > 0 then
758         indx := a0.first;
759         ddindx := 1;
760         while true loop
761           t(ddindx).cash_receipt_id := a0(indx);
762           t(ddindx).receipt_amount := a1(indx);
763           t(ddindx).receipt_currency := a2(indx);
764           t(ddindx).exchange_rate := a3(indx);
765           t(ddindx).exchange_date := a4(indx);
766           t(ddindx).exchange_rate_type := a5(indx);
767           t(ddindx).original_currency := a6(indx);
768           t(ddindx).receipt_number := a7(indx);
769           t(ddindx).apply_date := a8(indx);
770           t(ddindx).gl_date := a9(indx);
771           ddindx := ddindx+1;
772           if a0.last =indx
773             then exit;
774           end if;
775           indx := a0.next(indx);
776         end loop;
777       end if;
778    end if;
779   end rosetta_table_copy_in_p12;
780   procedure rosetta_table_copy_out_p12(t lns_billing_batch_pub.cash_receipt_tbl, a0 out nocopy JTF_NUMBER_TABLE
781     , a1 out nocopy JTF_NUMBER_TABLE
782     , a2 out nocopy JTF_VARCHAR2_TABLE_100
783     , a3 out nocopy JTF_NUMBER_TABLE
784     , a4 out nocopy JTF_DATE_TABLE
785     , a5 out nocopy JTF_VARCHAR2_TABLE_100
786     , a6 out nocopy JTF_VARCHAR2_TABLE_100
787     , a7 out nocopy JTF_VARCHAR2_TABLE_100
788     , a8 out nocopy JTF_DATE_TABLE
789     , a9 out nocopy JTF_DATE_TABLE
790     ) as
791     ddindx binary_integer; indx binary_integer;
792   begin
793   if t is null or t.count = 0 then
794     a0 := JTF_NUMBER_TABLE();
795     a1 := JTF_NUMBER_TABLE();
796     a2 := JTF_VARCHAR2_TABLE_100();
797     a3 := JTF_NUMBER_TABLE();
798     a4 := JTF_DATE_TABLE();
799     a5 := JTF_VARCHAR2_TABLE_100();
800     a6 := JTF_VARCHAR2_TABLE_100();
801     a7 := JTF_VARCHAR2_TABLE_100();
802     a8 := JTF_DATE_TABLE();
803     a9 := JTF_DATE_TABLE();
804   else
805       a0 := JTF_NUMBER_TABLE();
806       a1 := JTF_NUMBER_TABLE();
807       a2 := JTF_VARCHAR2_TABLE_100();
808       a3 := JTF_NUMBER_TABLE();
809       a4 := JTF_DATE_TABLE();
810       a5 := JTF_VARCHAR2_TABLE_100();
811       a6 := JTF_VARCHAR2_TABLE_100();
812       a7 := JTF_VARCHAR2_TABLE_100();
813       a8 := JTF_DATE_TABLE();
814       a9 := JTF_DATE_TABLE();
815       if t.count > 0 then
816         a0.extend(t.count);
817         a1.extend(t.count);
818         a2.extend(t.count);
819         a3.extend(t.count);
820         a4.extend(t.count);
821         a5.extend(t.count);
822         a6.extend(t.count);
823         a7.extend(t.count);
824         a8.extend(t.count);
825         a9.extend(t.count);
826         ddindx := t.first;
827         indx := 1;
828         while true loop
829           a0(indx) := t(ddindx).cash_receipt_id;
830           a1(indx) := t(ddindx).receipt_amount;
831           a2(indx) := t(ddindx).receipt_currency;
832           a3(indx) := t(ddindx).exchange_rate;
833           a4(indx) := t(ddindx).exchange_date;
834           a5(indx) := t(ddindx).exchange_rate_type;
835           a6(indx) := t(ddindx).original_currency;
836           a7(indx) := t(ddindx).receipt_number;
837           a8(indx) := t(ddindx).apply_date;
838           a9(indx) := t(ddindx).gl_date;
839           indx := indx+1;
840           if t.last =ddindx
841             then exit;
842           end if;
843           ddindx := t.next(ddindx);
844         end loop;
845       end if;
846    end if;
847   end rosetta_table_copy_out_p12;
848 
849   procedure rosetta_table_copy_in_p13(t out nocopy lns_billing_batch_pub.amortization_sched_tbl, a0 JTF_NUMBER_TABLE) as
850     ddindx binary_integer; indx binary_integer;
851   begin
852   if a0 is not null and a0.count > 0 then
853       if a0.count > 0 then
854         indx := a0.first;
855         ddindx := 1;
856         while true loop
857           t(ddindx) := a0(indx);
858           ddindx := ddindx+1;
859           if a0.last =indx
860             then exit;
861           end if;
862           indx := a0.next(indx);
863         end loop;
864       end if;
865    end if;
866   end rosetta_table_copy_in_p13;
867   procedure rosetta_table_copy_out_p13(t lns_billing_batch_pub.amortization_sched_tbl, a0 out nocopy JTF_NUMBER_TABLE) as
868     ddindx binary_integer; indx binary_integer;
869   begin
870   if t is null or t.count = 0 then
871     a0 := JTF_NUMBER_TABLE();
872   else
873       a0 := JTF_NUMBER_TABLE();
874       if t.count > 0 then
875         a0.extend(t.count);
876         ddindx := t.first;
877         indx := 1;
878         while true loop
879           a0(indx) := t(ddindx);
880           indx := indx+1;
881           if t.last =ddindx
882             then exit;
883           end if;
884           ddindx := t.next(ddindx);
885         end loop;
886       end if;
887    end if;
888   end rosetta_table_copy_out_p13;
889 
890   procedure create_single_offcycle_bill(p_api_version  NUMBER
891     , p_init_msg_list  VARCHAR2
892     , p_commit  VARCHAR2
893     , p_validation_level  NUMBER
894     , p4_a0  NUMBER
895     , p4_a1  NUMBER
896     , p4_a2  NUMBER
897     , p4_a3  DATE
898     , p4_a4  NUMBER
899     , p4_a5  NUMBER
900     , p5_a0 JTF_NUMBER_TABLE
901     , p5_a1 JTF_NUMBER_TABLE
902     , p5_a2 JTF_NUMBER_TABLE
903     , p5_a3 JTF_NUMBER_TABLE
904     , p5_a4 JTF_NUMBER_TABLE
905     , p5_a5 JTF_NUMBER_TABLE
906     , p5_a6 JTF_NUMBER_TABLE
907     , p5_a7 JTF_VARCHAR2_TABLE_100
908     , p5_a8 JTF_VARCHAR2_TABLE_300
909     , p5_a9 JTF_NUMBER_TABLE
910     , p5_a10 JTF_NUMBER_TABLE
911     , p5_a11 JTF_NUMBER_TABLE
912     , p5_a12 JTF_NUMBER_TABLE
913     , p5_a13 JTF_VARCHAR2_TABLE_2000
914     , x_return_status out nocopy  VARCHAR2
915     , x_msg_count out nocopy  NUMBER
916     , x_msg_data out nocopy  VARCHAR2
917   )
918 
919   as
920     ddp_bill_header_rec lns_billing_batch_pub.bill_header_rec;
921     ddp_bill_lines_tbl lns_billing_batch_pub.bill_lines_tbl;
922     ddindx binary_integer; indx binary_integer;
923   begin
924 
925     -- copy data to the local IN or IN-OUT args, if any
926 
927 
928 
929 
930     ddp_bill_header_rec.header_id := p4_a0;
931     ddp_bill_header_rec.loan_id := p4_a1;
932     ddp_bill_header_rec.assoc_payment_num := p4_a2;
933     ddp_bill_header_rec.due_date := p4_a3;
934     ddp_bill_header_rec.cust_account_id := p4_a4;
935     ddp_bill_header_rec.bill_to_address_id := p4_a5;
936 
937     lns_billing_batch_pub_w.rosetta_table_copy_in_p8(ddp_bill_lines_tbl, p5_a0
938       , p5_a1
939       , p5_a2
940       , p5_a3
941       , p5_a4
942       , p5_a5
943       , p5_a6
944       , p5_a7
945       , p5_a8
946       , p5_a9
947       , p5_a10
948       , p5_a11
949       , p5_a12
950       , p5_a13
951       );
952 
953 
954 
955 
956     -- here's the delegated call to the old PL/SQL routine
957     lns_billing_batch_pub.create_single_offcycle_bill(p_api_version,
958       p_init_msg_list,
959       p_commit,
960       p_validation_level,
961       ddp_bill_header_rec,
962       ddp_bill_lines_tbl,
963       x_return_status,
964       x_msg_count,
965       x_msg_data);
966 
967     -- copy data back from the local variables to OUT or IN-OUT args, if any
968 
969 
970 
971 
972 
973 
974 
975 
976   end;
977 
978   procedure create_offcycle_bills(p_api_version  NUMBER
979     , p_init_msg_list  VARCHAR2
980     , p_commit  VARCHAR2
981     , p_validation_level  NUMBER
982     , p4_a0 JTF_NUMBER_TABLE
983     , p4_a1 JTF_NUMBER_TABLE
984     , p4_a2 JTF_NUMBER_TABLE
985     , p4_a3 JTF_DATE_TABLE
986     , p4_a4 JTF_NUMBER_TABLE
987     , p4_a5 JTF_NUMBER_TABLE
988     , p5_a0 JTF_NUMBER_TABLE
989     , p5_a1 JTF_NUMBER_TABLE
990     , p5_a2 JTF_NUMBER_TABLE
991     , p5_a3 JTF_NUMBER_TABLE
992     , p5_a4 JTF_NUMBER_TABLE
993     , p5_a5 JTF_NUMBER_TABLE
994     , p5_a6 JTF_NUMBER_TABLE
995     , p5_a7 JTF_VARCHAR2_TABLE_100
996     , p5_a8 JTF_VARCHAR2_TABLE_300
997     , p5_a9 JTF_NUMBER_TABLE
998     , p5_a10 JTF_NUMBER_TABLE
999     , p5_a11 JTF_NUMBER_TABLE
1000     , p5_a12 JTF_NUMBER_TABLE
1001     , p5_a13 JTF_VARCHAR2_TABLE_2000
1002     , x_return_status out nocopy  VARCHAR2
1003     , x_msg_count out nocopy  NUMBER
1004     , x_msg_data out nocopy  VARCHAR2
1005   )
1006 
1007   as
1008     ddp_bill_headers_tbl lns_billing_batch_pub.bill_headers_tbl;
1009     ddp_bill_lines_tbl lns_billing_batch_pub.bill_lines_tbl;
1010     ddindx binary_integer; indx binary_integer;
1011   begin
1012 
1013     -- copy data to the local IN or IN-OUT args, if any
1014 
1015 
1016 
1017 
1018     lns_billing_batch_pub_w.rosetta_table_copy_in_p6(ddp_bill_headers_tbl, p4_a0
1019       , p4_a1
1020       , p4_a2
1021       , p4_a3
1022       , p4_a4
1023       , p4_a5
1024       );
1025 
1026     lns_billing_batch_pub_w.rosetta_table_copy_in_p8(ddp_bill_lines_tbl, p5_a0
1027       , p5_a1
1028       , p5_a2
1029       , p5_a3
1030       , p5_a4
1031       , p5_a5
1032       , p5_a6
1033       , p5_a7
1034       , p5_a8
1035       , p5_a9
1036       , p5_a10
1037       , p5_a11
1038       , p5_a12
1039       , p5_a13
1040       );
1041 
1042 
1043 
1044 
1045     -- here's the delegated call to the old PL/SQL routine
1046     lns_billing_batch_pub.create_offcycle_bills(p_api_version,
1047       p_init_msg_list,
1048       p_commit,
1049       p_validation_level,
1050       ddp_bill_headers_tbl,
1051       ddp_bill_lines_tbl,
1052       x_return_status,
1053       x_msg_count,
1054       x_msg_data);
1055 
1056     -- copy data back from the local variables to OUT or IN-OUT args, if any
1057 
1058 
1059 
1060 
1061 
1062 
1063 
1064 
1065   end;
1066 
1067   procedure get_next_instal_to_bill(p_api_version  NUMBER
1068     , p_init_msg_list  VARCHAR2
1069     , p_commit  VARCHAR2
1070     , p_validation_level  NUMBER
1071     , p_loan_id  NUMBER
1072     , p5_a0 out nocopy JTF_NUMBER_TABLE
1073     , p5_a1 out nocopy JTF_NUMBER_TABLE
1074     , p5_a2 out nocopy JTF_VARCHAR2_TABLE_100
1075     , p5_a3 out nocopy JTF_NUMBER_TABLE
1076     , p5_a4 out nocopy JTF_VARCHAR2_TABLE_100
1077     , p5_a5 out nocopy JTF_NUMBER_TABLE
1078     , p5_a6 out nocopy JTF_NUMBER_TABLE
1079     , p5_a7 out nocopy JTF_NUMBER_TABLE
1080     , p5_a8 out nocopy JTF_DATE_TABLE
1081     , p5_a9 out nocopy JTF_DATE_TABLE
1082     , p5_a10 out nocopy JTF_DATE_TABLE
1083     , p5_a11 out nocopy JTF_VARCHAR2_TABLE_100
1084     , p5_a12 out nocopy JTF_VARCHAR2_TABLE_100
1085     , p5_a13 out nocopy JTF_VARCHAR2_TABLE_100
1086     , p5_a14 out nocopy JTF_NUMBER_TABLE
1087     , x_return_status out nocopy  VARCHAR2
1088     , x_msg_count out nocopy  NUMBER
1089     , x_msg_data out nocopy  VARCHAR2
1090   )
1091 
1092   as
1093     ddx_invoices_tbl lns_billing_batch_pub.invoice_details_tbl;
1094     ddindx binary_integer; indx binary_integer;
1095   begin
1096 
1097     -- copy data to the local IN or IN-OUT args, if any
1098 
1099 
1100 
1101 
1102 
1103 
1104 
1105 
1106 
1107     -- here's the delegated call to the old PL/SQL routine
1108     lns_billing_batch_pub.get_next_instal_to_bill(p_api_version,
1109       p_init_msg_list,
1110       p_commit,
1111       p_validation_level,
1112       p_loan_id,
1113       ddx_invoices_tbl,
1114       x_return_status,
1115       x_msg_count,
1116       x_msg_data);
1117 
1118     -- copy data back from the local variables to OUT or IN-OUT args, if any
1119 
1120 
1121 
1122 
1123 
1124     lns_billing_batch_pub_w.rosetta_table_copy_out_p10(ddx_invoices_tbl, p5_a0
1125       , p5_a1
1126       , p5_a2
1127       , p5_a3
1128       , p5_a4
1129       , p5_a5
1130       , p5_a6
1131       , p5_a7
1132       , p5_a8
1133       , p5_a9
1134       , p5_a10
1135       , p5_a11
1136       , p5_a12
1137       , p5_a13
1138       , p5_a14
1139       );
1140 
1141 
1142 
1143   end;
1144 
1145   procedure bill_and_pay_next_instal(p_api_version  NUMBER
1146     , p_init_msg_list  VARCHAR2
1147     , p_commit  VARCHAR2
1148     , p_validation_level  NUMBER
1149     , p_loan_id  NUMBER
1150     , p5_a0 JTF_NUMBER_TABLE
1151     , p5_a1 JTF_NUMBER_TABLE
1152     , p5_a2 JTF_VARCHAR2_TABLE_100
1153     , p5_a3 JTF_NUMBER_TABLE
1154     , p5_a4 JTF_DATE_TABLE
1155     , p5_a5 JTF_VARCHAR2_TABLE_100
1156     , p5_a6 JTF_VARCHAR2_TABLE_100
1157     , p5_a7 JTF_VARCHAR2_TABLE_100
1158     , p5_a8 JTF_DATE_TABLE
1159     , p5_a9 JTF_DATE_TABLE
1160     , x_return_status out nocopy  VARCHAR2
1161     , x_msg_count out nocopy  NUMBER
1162     , x_msg_data out nocopy  VARCHAR2
1163   )
1164 
1165   as
1166     ddp_cash_receipts_tbl lns_billing_batch_pub.cash_receipt_tbl;
1167     ddindx binary_integer; indx binary_integer;
1168   begin
1169 
1170     -- copy data to the local IN or IN-OUT args, if any
1171 
1172 
1173 
1174 
1175 
1176     lns_billing_batch_pub_w.rosetta_table_copy_in_p12(ddp_cash_receipts_tbl, p5_a0
1177       , p5_a1
1178       , p5_a2
1179       , p5_a3
1180       , p5_a4
1181       , p5_a5
1182       , p5_a6
1183       , p5_a7
1184       , p5_a8
1185       , p5_a9
1186       );
1187 
1188 
1189 
1190 
1191     -- here's the delegated call to the old PL/SQL routine
1192     lns_billing_batch_pub.bill_and_pay_next_instal(p_api_version,
1193       p_init_msg_list,
1194       p_commit,
1195       p_validation_level,
1196       p_loan_id,
1197       ddp_cash_receipts_tbl,
1198       x_return_status,
1199       x_msg_count,
1200       x_msg_data);
1201 
1202     -- copy data back from the local variables to OUT or IN-OUT args, if any
1203 
1204 
1205 
1206 
1207 
1208 
1209 
1210 
1211   end;
1212 
1213   procedure pay_installments(p_api_version  NUMBER
1214     , p_init_msg_list  VARCHAR2
1215     , p_commit  VARCHAR2
1216     , p_validation_level  NUMBER
1217     , p_loan_id  NUMBER
1218     , p_am_sched_tbl JTF_NUMBER_TABLE
1219     , p6_a0 JTF_NUMBER_TABLE
1220     , p6_a1 JTF_NUMBER_TABLE
1221     , p6_a2 JTF_VARCHAR2_TABLE_100
1222     , p6_a3 JTF_NUMBER_TABLE
1223     , p6_a4 JTF_DATE_TABLE
1224     , p6_a5 JTF_VARCHAR2_TABLE_100
1225     , p6_a6 JTF_VARCHAR2_TABLE_100
1226     , p6_a7 JTF_VARCHAR2_TABLE_100
1227     , p6_a8 JTF_DATE_TABLE
1228     , p6_a9 JTF_DATE_TABLE
1229     , x_return_status out nocopy  VARCHAR2
1230     , x_msg_count out nocopy  NUMBER
1231     , x_msg_data out nocopy  VARCHAR2
1232   )
1233 
1234   as
1235     ddp_am_sched_tbl lns_billing_batch_pub.amortization_sched_tbl;
1236     ddp_cash_receipts_tbl lns_billing_batch_pub.cash_receipt_tbl;
1237     ddindx binary_integer; indx binary_integer;
1238   begin
1239 
1240     -- copy data to the local IN or IN-OUT args, if any
1241 
1242 
1243 
1244 
1245 
1246     lns_billing_batch_pub_w.rosetta_table_copy_in_p13(ddp_am_sched_tbl, p_am_sched_tbl);
1247 
1248     lns_billing_batch_pub_w.rosetta_table_copy_in_p12(ddp_cash_receipts_tbl, p6_a0
1249       , p6_a1
1250       , p6_a2
1251       , p6_a3
1252       , p6_a4
1253       , p6_a5
1254       , p6_a6
1255       , p6_a7
1256       , p6_a8
1257       , p6_a9
1258       );
1259 
1260 
1261 
1262 
1263     -- here's the delegated call to the old PL/SQL routine
1264     lns_billing_batch_pub.pay_installments(p_api_version,
1265       p_init_msg_list,
1266       p_commit,
1267       p_validation_level,
1268       p_loan_id,
1269       ddp_am_sched_tbl,
1270       ddp_cash_receipts_tbl,
1271       x_return_status,
1272       x_msg_count,
1273       x_msg_data);
1274 
1275     -- copy data back from the local variables to OUT or IN-OUT args, if any
1276 
1277 
1278 
1279 
1280 
1281 
1282 
1283 
1284 
1285   end;
1286 
1287   procedure can_bill_next_instal(p_loan_id  NUMBER
1288     , ddrosetta_retval_bool OUT NOCOPY NUMBER
1289   )
1290 
1291   as
1292     ddindx binary_integer; indx binary_integer;
1293     ddrosetta_retval boolean;
1294   begin
1295 
1296     -- copy data to the local IN or IN-OUT args, if any
1297 
1298     -- here's the delegated call to the old PL/SQL routine
1299     ddrosetta_retval := lns_billing_batch_pub.can_bill_next_instal(p_loan_id);
1300 
1301     -- copy data back from the local variables to OUT or IN-OUT args, if any
1302     if ddrosetta_retval is null
1303       then ddrosetta_retval_bool := null;
1304     elsif ddrosetta_retval
1305       then ddrosetta_retval_bool := 1;
1306     else ddrosetta_retval_bool := 0;
1307     end if;
1308   end;
1309 
1310   procedure get_billed_installment(p_api_version  NUMBER
1311     , p_init_msg_list  VARCHAR2
1312     , p_commit  VARCHAR2
1313     , p_validation_level  NUMBER
1314     , p_loan_id  NUMBER
1315     , p_am_sched_id  NUMBER
1316     , p6_a0 out nocopy JTF_NUMBER_TABLE
1317     , p6_a1 out nocopy JTF_NUMBER_TABLE
1318     , p6_a2 out nocopy JTF_VARCHAR2_TABLE_100
1319     , p6_a3 out nocopy JTF_NUMBER_TABLE
1320     , p6_a4 out nocopy JTF_VARCHAR2_TABLE_100
1321     , p6_a5 out nocopy JTF_NUMBER_TABLE
1322     , p6_a6 out nocopy JTF_NUMBER_TABLE
1323     , p6_a7 out nocopy JTF_NUMBER_TABLE
1324     , p6_a8 out nocopy JTF_DATE_TABLE
1325     , p6_a9 out nocopy JTF_DATE_TABLE
1326     , p6_a10 out nocopy JTF_DATE_TABLE
1327     , p6_a11 out nocopy JTF_VARCHAR2_TABLE_100
1328     , p6_a12 out nocopy JTF_VARCHAR2_TABLE_100
1329     , p6_a13 out nocopy JTF_VARCHAR2_TABLE_100
1330     , p6_a14 out nocopy JTF_NUMBER_TABLE
1331     , x_return_status out nocopy  VARCHAR2
1332     , x_msg_count out nocopy  NUMBER
1333     , x_msg_data out nocopy  VARCHAR2
1334   )
1335 
1336   as
1337     ddx_invoices_tbl lns_billing_batch_pub.invoice_details_tbl;
1338     ddindx binary_integer; indx binary_integer;
1339   begin
1340 
1341     -- copy data to the local IN or IN-OUT args, if any
1342 
1343 
1344 
1345 
1346 
1347 
1348 
1349 
1350 
1351 
1352     -- here's the delegated call to the old PL/SQL routine
1353     lns_billing_batch_pub.get_billed_installment(p_api_version,
1354       p_init_msg_list,
1355       p_commit,
1356       p_validation_level,
1357       p_loan_id,
1358       p_am_sched_id,
1359       ddx_invoices_tbl,
1360       x_return_status,
1361       x_msg_count,
1362       x_msg_data);
1363 
1364     -- copy data back from the local variables to OUT or IN-OUT args, if any
1365 
1366 
1367 
1368 
1369 
1370 
1371     lns_billing_batch_pub_w.rosetta_table_copy_out_p10(ddx_invoices_tbl, p6_a0
1372       , p6_a1
1373       , p6_a2
1374       , p6_a3
1375       , p6_a4
1376       , p6_a5
1377       , p6_a6
1378       , p6_a7
1379       , p6_a8
1380       , p6_a9
1381       , p6_a10
1382       , p6_a11
1383       , p6_a12
1384       , p6_a13
1385       , p6_a14
1386       );
1387 
1388 
1389 
1390   end;
1391 
1392   procedure bill_and_pay_offcycle_bills(p_api_version  NUMBER
1393     , p_init_msg_list  VARCHAR2
1394     , p_commit  VARCHAR2
1395     , p_validation_level  NUMBER
1396     , p_loan_id  NUMBER
1397     , p5_a0 JTF_NUMBER_TABLE
1398     , p5_a1 JTF_NUMBER_TABLE
1399     , p5_a2 JTF_NUMBER_TABLE
1400     , p5_a3 JTF_DATE_TABLE
1401     , p5_a4 JTF_NUMBER_TABLE
1402     , p5_a5 JTF_NUMBER_TABLE
1403     , p6_a0 JTF_NUMBER_TABLE
1404     , p6_a1 JTF_NUMBER_TABLE
1405     , p6_a2 JTF_NUMBER_TABLE
1406     , p6_a3 JTF_NUMBER_TABLE
1407     , p6_a4 JTF_NUMBER_TABLE
1408     , p6_a5 JTF_NUMBER_TABLE
1409     , p6_a6 JTF_NUMBER_TABLE
1410     , p6_a7 JTF_VARCHAR2_TABLE_100
1411     , p6_a8 JTF_VARCHAR2_TABLE_300
1412     , p6_a9 JTF_NUMBER_TABLE
1413     , p6_a10 JTF_NUMBER_TABLE
1414     , p6_a11 JTF_NUMBER_TABLE
1415     , p6_a12 JTF_NUMBER_TABLE
1416     , p6_a13 JTF_VARCHAR2_TABLE_2000
1417     , p7_a0 JTF_NUMBER_TABLE
1418     , p7_a1 JTF_NUMBER_TABLE
1419     , p7_a2 JTF_VARCHAR2_TABLE_100
1420     , p7_a3 JTF_NUMBER_TABLE
1421     , p7_a4 JTF_DATE_TABLE
1422     , p7_a5 JTF_VARCHAR2_TABLE_100
1423     , p7_a6 JTF_VARCHAR2_TABLE_100
1424     , p7_a7 JTF_VARCHAR2_TABLE_100
1425     , p7_a8 JTF_DATE_TABLE
1426     , p7_a9 JTF_DATE_TABLE
1427     , x_return_status out nocopy  VARCHAR2
1428     , x_msg_count out nocopy  NUMBER
1429     , x_msg_data out nocopy  VARCHAR2
1430   )
1431 
1432   as
1433     ddp_bill_headers_tbl lns_billing_batch_pub.bill_headers_tbl;
1434     ddp_bill_lines_tbl lns_billing_batch_pub.bill_lines_tbl;
1435     ddp_cash_receipts_tbl lns_billing_batch_pub.cash_receipt_tbl;
1436     ddindx binary_integer; indx binary_integer;
1437   begin
1438 
1439     -- copy data to the local IN or IN-OUT args, if any
1440 
1441 
1442 
1443 
1444 
1445     lns_billing_batch_pub_w.rosetta_table_copy_in_p6(ddp_bill_headers_tbl, p5_a0
1446       , p5_a1
1447       , p5_a2
1448       , p5_a3
1449       , p5_a4
1450       , p5_a5
1451       );
1452 
1453     lns_billing_batch_pub_w.rosetta_table_copy_in_p8(ddp_bill_lines_tbl, p6_a0
1454       , p6_a1
1455       , p6_a2
1456       , p6_a3
1457       , p6_a4
1458       , p6_a5
1459       , p6_a6
1460       , p6_a7
1461       , p6_a8
1462       , p6_a9
1463       , p6_a10
1464       , p6_a11
1465       , p6_a12
1466       , p6_a13
1467       );
1468 
1469     lns_billing_batch_pub_w.rosetta_table_copy_in_p12(ddp_cash_receipts_tbl, p7_a0
1470       , p7_a1
1471       , p7_a2
1472       , p7_a3
1473       , p7_a4
1474       , p7_a5
1475       , p7_a6
1476       , p7_a7
1477       , p7_a8
1478       , p7_a9
1479       );
1480 
1481 
1482 
1483 
1484     -- here's the delegated call to the old PL/SQL routine
1485     lns_billing_batch_pub.bill_and_pay_offcycle_bills(p_api_version,
1486       p_init_msg_list,
1487       p_commit,
1488       p_validation_level,
1489       p_loan_id,
1490       ddp_bill_headers_tbl,
1491       ddp_bill_lines_tbl,
1492       ddp_cash_receipts_tbl,
1493       x_return_status,
1494       x_msg_count,
1495       x_msg_data);
1496 
1497     -- copy data back from the local variables to OUT or IN-OUT args, if any
1498 
1499 
1500 
1501 
1502 
1503 
1504 
1505 
1506 
1507 
1508   end;
1509 
1510 end lns_billing_batch_pub_w;