DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_LEASE_QUOTE_CASHFLOW_PVT_W

Source


1 package body okl_lease_quote_cashflow_pvt_w as
2   /* $Header: OKLEQUCB.pls 120.5 2006/02/10 07:41:27 asawanka noship $ */
3   procedure rosetta_table_copy_in_p21(t out nocopy okl_lease_quote_cashflow_pvt.cashflow_level_tbl_type, a0 JTF_NUMBER_TABLE
4     , a1 JTF_DATE_TABLE
5     , a2 JTF_NUMBER_TABLE
6     , a3 JTF_NUMBER_TABLE
7     , a4 JTF_NUMBER_TABLE
8     , a5 JTF_NUMBER_TABLE
9     , a6 JTF_NUMBER_TABLE
10     , a7 JTF_NUMBER_TABLE
11     , a8 JTF_VARCHAR2_TABLE_100
12     , a9 JTF_VARCHAR2_TABLE_100
13     ) as
14     ddindx binary_integer; indx binary_integer;
15   begin
16   if a0 is not null and a0.count > 0 then
17       if a0.count > 0 then
18         indx := a0.first;
19         ddindx := 1;
20         while true loop
21           t(ddindx).cashflow_level_id := a0(indx);
22           t(ddindx).start_date := a1(indx);
23           t(ddindx).rate := a2(indx);
24           t(ddindx).stub_amount := a3(indx);
25           t(ddindx).stub_days := a4(indx);
26           t(ddindx).periods := a5(indx);
27           t(ddindx).periodic_amount := a6(indx);
28           t(ddindx).cashflow_level_ovn := a7(indx);
29           t(ddindx).record_mode := a8(indx);
30           t(ddindx).missing_pmt_flag := a9(indx);
31           ddindx := ddindx+1;
32           if a0.last =indx
33             then exit;
34           end if;
35           indx := a0.next(indx);
36         end loop;
37       end if;
38    end if;
39   end rosetta_table_copy_in_p21;
40   procedure rosetta_table_copy_out_p21(t okl_lease_quote_cashflow_pvt.cashflow_level_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
41     , a1 out nocopy JTF_DATE_TABLE
42     , a2 out nocopy JTF_NUMBER_TABLE
43     , a3 out nocopy JTF_NUMBER_TABLE
44     , a4 out nocopy JTF_NUMBER_TABLE
45     , a5 out nocopy JTF_NUMBER_TABLE
46     , a6 out nocopy JTF_NUMBER_TABLE
47     , a7 out nocopy JTF_NUMBER_TABLE
48     , a8 out nocopy JTF_VARCHAR2_TABLE_100
49     , a9 out nocopy JTF_VARCHAR2_TABLE_100
50     ) as
51     ddindx binary_integer; indx binary_integer;
52   begin
53   if t is null or t.count = 0 then
54     a0 := JTF_NUMBER_TABLE();
55     a1 := JTF_DATE_TABLE();
56     a2 := JTF_NUMBER_TABLE();
57     a3 := JTF_NUMBER_TABLE();
58     a4 := JTF_NUMBER_TABLE();
59     a5 := JTF_NUMBER_TABLE();
60     a6 := JTF_NUMBER_TABLE();
61     a7 := JTF_NUMBER_TABLE();
62     a8 := JTF_VARCHAR2_TABLE_100();
63     a9 := JTF_VARCHAR2_TABLE_100();
64   else
65       a0 := JTF_NUMBER_TABLE();
66       a1 := JTF_DATE_TABLE();
67       a2 := JTF_NUMBER_TABLE();
68       a3 := JTF_NUMBER_TABLE();
69       a4 := JTF_NUMBER_TABLE();
70       a5 := JTF_NUMBER_TABLE();
71       a6 := JTF_NUMBER_TABLE();
72       a7 := JTF_NUMBER_TABLE();
73       a8 := JTF_VARCHAR2_TABLE_100();
74       a9 := JTF_VARCHAR2_TABLE_100();
75       if t.count > 0 then
76         a0.extend(t.count);
77         a1.extend(t.count);
78         a2.extend(t.count);
79         a3.extend(t.count);
80         a4.extend(t.count);
81         a5.extend(t.count);
82         a6.extend(t.count);
83         a7.extend(t.count);
84         a8.extend(t.count);
85         a9.extend(t.count);
86         ddindx := t.first;
87         indx := 1;
88         while true loop
89           a0(indx) := t(ddindx).cashflow_level_id;
90           a1(indx) := t(ddindx).start_date;
91           a2(indx) := t(ddindx).rate;
92           a3(indx) := t(ddindx).stub_amount;
93           a4(indx) := t(ddindx).stub_days;
94           a5(indx) := t(ddindx).periods;
95           a6(indx) := t(ddindx).periodic_amount;
96           a7(indx) := t(ddindx).cashflow_level_ovn;
97           a8(indx) := t(ddindx).record_mode;
98           a9(indx) := t(ddindx).missing_pmt_flag;
99           indx := indx+1;
100           if t.last =ddindx
101             then exit;
102           end if;
103           ddindx := t.next(ddindx);
104         end loop;
105       end if;
106    end if;
107   end rosetta_table_copy_out_p21;
108 
109   procedure create_cashflow(p_api_version  NUMBER
110     , p_init_msg_list  VARCHAR2
111     , p_transaction_control  VARCHAR2
112     , p3_a0 in out nocopy  VARCHAR2
113     , p3_a1 in out nocopy  NUMBER
114     , p3_a2 in out nocopy  VARCHAR2
115     , p3_a3 in out nocopy  VARCHAR2
116     , p3_a4 in out nocopy  VARCHAR2
117     , p3_a5 in out nocopy  VARCHAR2
118     , p3_a6 in out nocopy  VARCHAR2
119     , p3_a7 in out nocopy  VARCHAR2
120     , p3_a8 in out nocopy  NUMBER
121     , p3_a9 in out nocopy  VARCHAR2
122     , p3_a10 in out nocopy  NUMBER
123     , p3_a11 in out nocopy  NUMBER
124     , p3_a12 in out nocopy  NUMBER
125     , p3_a13 in out nocopy  NUMBER
126     , p4_a0 in out nocopy JTF_NUMBER_TABLE
127     , p4_a1 in out nocopy JTF_DATE_TABLE
128     , p4_a2 in out nocopy JTF_NUMBER_TABLE
129     , p4_a3 in out nocopy JTF_NUMBER_TABLE
130     , p4_a4 in out nocopy JTF_NUMBER_TABLE
131     , p4_a5 in out nocopy JTF_NUMBER_TABLE
132     , p4_a6 in out nocopy JTF_NUMBER_TABLE
133     , p4_a7 in out nocopy JTF_NUMBER_TABLE
134     , p4_a8 in out nocopy JTF_VARCHAR2_TABLE_100
135     , p4_a9 in out nocopy JTF_VARCHAR2_TABLE_100
136     , x_return_status out nocopy  VARCHAR2
137     , x_msg_count out nocopy  NUMBER
138     , x_msg_data out nocopy  VARCHAR2
139   )
140 
141   as
142     ddp_cashflow_header_rec okl_lease_quote_cashflow_pvt.cashflow_header_rec_type;
143     ddp_cashflow_level_tbl okl_lease_quote_cashflow_pvt.cashflow_level_tbl_type;
144     ddindx binary_integer; indx binary_integer;
145   begin
146 
147     -- copy data to the local IN or IN-OUT args, if any
148 
149 
150 
151     ddp_cashflow_header_rec.type_code := p3_a0;
152     ddp_cashflow_header_rec.stream_type_id := p3_a1;
153     ddp_cashflow_header_rec.status_code := p3_a2;
154     ddp_cashflow_header_rec.arrears_flag := p3_a3;
155     ddp_cashflow_header_rec.frequency_code := p3_a4;
156     ddp_cashflow_header_rec.dnz_periods := p3_a5;
157     ddp_cashflow_header_rec.dnz_periodic_amount := p3_a6;
158     ddp_cashflow_header_rec.parent_object_code := p3_a7;
159     ddp_cashflow_header_rec.parent_object_id := p3_a8;
160     ddp_cashflow_header_rec.quote_type_code := p3_a9;
161     ddp_cashflow_header_rec.quote_id := p3_a10;
162     ddp_cashflow_header_rec.cashflow_header_id := p3_a11;
163     ddp_cashflow_header_rec.cashflow_object_id := p3_a12;
164     ddp_cashflow_header_rec.cashflow_header_ovn := p3_a13;
165 
166     okl_lease_quote_cashflow_pvt_w.rosetta_table_copy_in_p21(ddp_cashflow_level_tbl, p4_a0
167       , p4_a1
168       , p4_a2
169       , p4_a3
170       , p4_a4
171       , p4_a5
172       , p4_a6
173       , p4_a7
174       , p4_a8
175       , p4_a9
176       );
177 
178 
179 
180 
181     -- here's the delegated call to the old PL/SQL routine
182     okl_lease_quote_cashflow_pvt.create_cashflow(p_api_version,
183       p_init_msg_list,
184       p_transaction_control,
185       ddp_cashflow_header_rec,
186       ddp_cashflow_level_tbl,
187       x_return_status,
188       x_msg_count,
189       x_msg_data);
190 
191     -- copy data back from the local variables to OUT or IN-OUT args, if any
192 
193 
194 
195     p3_a0 := ddp_cashflow_header_rec.type_code;
196     p3_a1 := ddp_cashflow_header_rec.stream_type_id;
197     p3_a2 := ddp_cashflow_header_rec.status_code;
198     p3_a3 := ddp_cashflow_header_rec.arrears_flag;
199     p3_a4 := ddp_cashflow_header_rec.frequency_code;
200     p3_a5 := ddp_cashflow_header_rec.dnz_periods;
201     p3_a6 := ddp_cashflow_header_rec.dnz_periodic_amount;
202     p3_a7 := ddp_cashflow_header_rec.parent_object_code;
203     p3_a8 := ddp_cashflow_header_rec.parent_object_id;
204     p3_a9 := ddp_cashflow_header_rec.quote_type_code;
205     p3_a10 := ddp_cashflow_header_rec.quote_id;
206     p3_a11 := ddp_cashflow_header_rec.cashflow_header_id;
207     p3_a12 := ddp_cashflow_header_rec.cashflow_object_id;
208     p3_a13 := ddp_cashflow_header_rec.cashflow_header_ovn;
209 
210     okl_lease_quote_cashflow_pvt_w.rosetta_table_copy_out_p21(ddp_cashflow_level_tbl, p4_a0
211       , p4_a1
212       , p4_a2
213       , p4_a3
214       , p4_a4
215       , p4_a5
216       , p4_a6
217       , p4_a7
218       , p4_a8
219       , p4_a9
220       );
221 
222 
223 
224   end;
225 
226   procedure update_cashflow(p_api_version  NUMBER
227     , p_init_msg_list  VARCHAR2
228     , p_transaction_control  VARCHAR2
229     , p3_a0 in out nocopy  VARCHAR2
230     , p3_a1 in out nocopy  NUMBER
231     , p3_a2 in out nocopy  VARCHAR2
232     , p3_a3 in out nocopy  VARCHAR2
233     , p3_a4 in out nocopy  VARCHAR2
234     , p3_a5 in out nocopy  VARCHAR2
235     , p3_a6 in out nocopy  VARCHAR2
236     , p3_a7 in out nocopy  VARCHAR2
237     , p3_a8 in out nocopy  NUMBER
238     , p3_a9 in out nocopy  VARCHAR2
239     , p3_a10 in out nocopy  NUMBER
240     , p3_a11 in out nocopy  NUMBER
241     , p3_a12 in out nocopy  NUMBER
242     , p3_a13 in out nocopy  NUMBER
243     , p4_a0 in out nocopy JTF_NUMBER_TABLE
244     , p4_a1 in out nocopy JTF_DATE_TABLE
245     , p4_a2 in out nocopy JTF_NUMBER_TABLE
246     , p4_a3 in out nocopy JTF_NUMBER_TABLE
247     , p4_a4 in out nocopy JTF_NUMBER_TABLE
248     , p4_a5 in out nocopy JTF_NUMBER_TABLE
249     , p4_a6 in out nocopy JTF_NUMBER_TABLE
250     , p4_a7 in out nocopy JTF_NUMBER_TABLE
251     , p4_a8 in out nocopy JTF_VARCHAR2_TABLE_100
252     , p4_a9 in out nocopy JTF_VARCHAR2_TABLE_100
253     , x_return_status out nocopy  VARCHAR2
254     , x_msg_count out nocopy  NUMBER
255     , x_msg_data out nocopy  VARCHAR2
256   )
257 
258   as
259     ddp_cashflow_header_rec okl_lease_quote_cashflow_pvt.cashflow_header_rec_type;
260     ddp_cashflow_level_tbl okl_lease_quote_cashflow_pvt.cashflow_level_tbl_type;
261     ddindx binary_integer; indx binary_integer;
262   begin
263 
264     -- copy data to the local IN or IN-OUT args, if any
265 
266 
267 
268     ddp_cashflow_header_rec.type_code := p3_a0;
269     ddp_cashflow_header_rec.stream_type_id := p3_a1;
270     ddp_cashflow_header_rec.status_code := p3_a2;
271     ddp_cashflow_header_rec.arrears_flag := p3_a3;
272     ddp_cashflow_header_rec.frequency_code := p3_a4;
273     ddp_cashflow_header_rec.dnz_periods := p3_a5;
274     ddp_cashflow_header_rec.dnz_periodic_amount := p3_a6;
275     ddp_cashflow_header_rec.parent_object_code := p3_a7;
276     ddp_cashflow_header_rec.parent_object_id := p3_a8;
277     ddp_cashflow_header_rec.quote_type_code := p3_a9;
278     ddp_cashflow_header_rec.quote_id := p3_a10;
279     ddp_cashflow_header_rec.cashflow_header_id := p3_a11;
280     ddp_cashflow_header_rec.cashflow_object_id := p3_a12;
281     ddp_cashflow_header_rec.cashflow_header_ovn := p3_a13;
282 
283     okl_lease_quote_cashflow_pvt_w.rosetta_table_copy_in_p21(ddp_cashflow_level_tbl, p4_a0
284       , p4_a1
285       , p4_a2
286       , p4_a3
287       , p4_a4
288       , p4_a5
289       , p4_a6
290       , p4_a7
291       , p4_a8
292       , p4_a9
293       );
294 
295 
296 
297 
298     -- here's the delegated call to the old PL/SQL routine
299     okl_lease_quote_cashflow_pvt.update_cashflow(p_api_version,
300       p_init_msg_list,
301       p_transaction_control,
302       ddp_cashflow_header_rec,
303       ddp_cashflow_level_tbl,
304       x_return_status,
305       x_msg_count,
306       x_msg_data);
307 
308     -- copy data back from the local variables to OUT or IN-OUT args, if any
309 
310 
311 
312     p3_a0 := ddp_cashflow_header_rec.type_code;
313     p3_a1 := ddp_cashflow_header_rec.stream_type_id;
314     p3_a2 := ddp_cashflow_header_rec.status_code;
315     p3_a3 := ddp_cashflow_header_rec.arrears_flag;
316     p3_a4 := ddp_cashflow_header_rec.frequency_code;
317     p3_a5 := ddp_cashflow_header_rec.dnz_periods;
318     p3_a6 := ddp_cashflow_header_rec.dnz_periodic_amount;
319     p3_a7 := ddp_cashflow_header_rec.parent_object_code;
320     p3_a8 := ddp_cashflow_header_rec.parent_object_id;
321     p3_a9 := ddp_cashflow_header_rec.quote_type_code;
322     p3_a10 := ddp_cashflow_header_rec.quote_id;
323     p3_a11 := ddp_cashflow_header_rec.cashflow_header_id;
324     p3_a12 := ddp_cashflow_header_rec.cashflow_object_id;
325     p3_a13 := ddp_cashflow_header_rec.cashflow_header_ovn;
326 
327     okl_lease_quote_cashflow_pvt_w.rosetta_table_copy_out_p21(ddp_cashflow_level_tbl, p4_a0
328       , p4_a1
329       , p4_a2
330       , p4_a3
331       , p4_a4
332       , p4_a5
333       , p4_a6
334       , p4_a7
335       , p4_a8
336       , p4_a9
337       );
338 
339 
340 
341   end;
342 
343 end okl_lease_quote_cashflow_pvt_w;