DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_PAY_INVOICES_MAN_PVT_W

Source


1 package body okl_pay_invoices_man_pvt_w as
2   /* $Header: OKLIPIMB.pls 115.2 2003/01/28 23:03:20 pjgomes 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_p7(t out nocopy okl_pay_invoices_man_pvt.man_inv_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_NUMBER_TABLE
24     , a2 JTF_VARCHAR2_TABLE_100
25     , a3 JTF_NUMBER_TABLE
26     , a4 JTF_VARCHAR2_TABLE_100
27     , a5 JTF_DATE_TABLE
28     , a6 JTF_NUMBER_TABLE
29     , a7 JTF_VARCHAR2_TABLE_100
30     , a8 JTF_VARCHAR2_TABLE_100
31     , a9 JTF_VARCHAR2_TABLE_300
32     , a10 JTF_NUMBER_TABLE
33     , a11 JTF_NUMBER_TABLE
34     , a12 JTF_VARCHAR2_TABLE_100
35     , a13 JTF_VARCHAR2_TABLE_300
36     ) as
37     ddindx binary_integer; indx binary_integer;
38   begin
39   if a0 is not null and a0.count > 0 then
40       if a0.count > 0 then
41         indx := a0.first;
42         ddindx := 1;
43         while true loop
44           t(ddindx).ipvs_id := rosetta_g_miss_num_map(a0(indx));
45           t(ddindx).khr_id := rosetta_g_miss_num_map(a1(indx));
46           t(ddindx).currency := a2(indx);
47           t(ddindx).vendor_id := rosetta_g_miss_num_map(a3(indx));
48           t(ddindx).payment_method_code := a4(indx);
49           t(ddindx).invoice_date := rosetta_g_miss_date_in_map(a5(indx));
50           t(ddindx).pay_terms := rosetta_g_miss_num_map(a6(indx));
51           t(ddindx).invoice_number := a7(indx);
52           t(ddindx).invoice_category_code := a8(indx);
53           t(ddindx).invoice_type := a9(indx);
54           t(ddindx).amount := rosetta_g_miss_num_map(a10(indx));
55           t(ddindx).sty_id := rosetta_g_miss_num_map(a11(indx));
56           t(ddindx).pay_group_lookup_code := a12(indx);
57           t(ddindx).vendor_invoice_number := a13(indx);
58           ddindx := ddindx+1;
59           if a0.last =indx
60             then exit;
61           end if;
62           indx := a0.next(indx);
63         end loop;
64       end if;
65    end if;
66   end rosetta_table_copy_in_p7;
67   procedure rosetta_table_copy_out_p7(t okl_pay_invoices_man_pvt.man_inv_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
68     , a1 out nocopy JTF_NUMBER_TABLE
69     , a2 out nocopy JTF_VARCHAR2_TABLE_100
70     , a3 out nocopy JTF_NUMBER_TABLE
71     , a4 out nocopy JTF_VARCHAR2_TABLE_100
72     , a5 out nocopy JTF_DATE_TABLE
73     , a6 out nocopy JTF_NUMBER_TABLE
74     , a7 out nocopy JTF_VARCHAR2_TABLE_100
75     , a8 out nocopy JTF_VARCHAR2_TABLE_100
76     , a9 out nocopy JTF_VARCHAR2_TABLE_300
77     , a10 out nocopy JTF_NUMBER_TABLE
78     , a11 out nocopy JTF_NUMBER_TABLE
79     , a12 out nocopy JTF_VARCHAR2_TABLE_100
80     , a13 out nocopy JTF_VARCHAR2_TABLE_300
81     ) as
82     ddindx binary_integer; indx binary_integer;
83   begin
84   if t is null or t.count = 0 then
85     a0 := JTF_NUMBER_TABLE();
86     a1 := JTF_NUMBER_TABLE();
87     a2 := JTF_VARCHAR2_TABLE_100();
88     a3 := JTF_NUMBER_TABLE();
89     a4 := JTF_VARCHAR2_TABLE_100();
90     a5 := JTF_DATE_TABLE();
91     a6 := JTF_NUMBER_TABLE();
92     a7 := JTF_VARCHAR2_TABLE_100();
93     a8 := JTF_VARCHAR2_TABLE_100();
94     a9 := JTF_VARCHAR2_TABLE_300();
95     a10 := JTF_NUMBER_TABLE();
96     a11 := JTF_NUMBER_TABLE();
97     a12 := JTF_VARCHAR2_TABLE_100();
98     a13 := JTF_VARCHAR2_TABLE_300();
99   else
100       a0 := JTF_NUMBER_TABLE();
101       a1 := JTF_NUMBER_TABLE();
102       a2 := JTF_VARCHAR2_TABLE_100();
103       a3 := JTF_NUMBER_TABLE();
104       a4 := JTF_VARCHAR2_TABLE_100();
105       a5 := JTF_DATE_TABLE();
106       a6 := JTF_NUMBER_TABLE();
107       a7 := JTF_VARCHAR2_TABLE_100();
108       a8 := JTF_VARCHAR2_TABLE_100();
109       a9 := JTF_VARCHAR2_TABLE_300();
110       a10 := JTF_NUMBER_TABLE();
111       a11 := JTF_NUMBER_TABLE();
112       a12 := JTF_VARCHAR2_TABLE_100();
113       a13 := JTF_VARCHAR2_TABLE_300();
114       if t.count > 0 then
115         a0.extend(t.count);
116         a1.extend(t.count);
117         a2.extend(t.count);
118         a3.extend(t.count);
119         a4.extend(t.count);
120         a5.extend(t.count);
121         a6.extend(t.count);
122         a7.extend(t.count);
123         a8.extend(t.count);
124         a9.extend(t.count);
125         a10.extend(t.count);
126         a11.extend(t.count);
127         a12.extend(t.count);
128         a13.extend(t.count);
129         ddindx := t.first;
130         indx := 1;
131         while true loop
132           a0(indx) := rosetta_g_miss_num_map(t(ddindx).ipvs_id);
133           a1(indx) := rosetta_g_miss_num_map(t(ddindx).khr_id);
134           a2(indx) := t(ddindx).currency;
135           a3(indx) := rosetta_g_miss_num_map(t(ddindx).vendor_id);
136           a4(indx) := t(ddindx).payment_method_code;
137           a5(indx) := t(ddindx).invoice_date;
138           a6(indx) := rosetta_g_miss_num_map(t(ddindx).pay_terms);
139           a7(indx) := t(ddindx).invoice_number;
140           a8(indx) := t(ddindx).invoice_category_code;
141           a9(indx) := t(ddindx).invoice_type;
142           a10(indx) := rosetta_g_miss_num_map(t(ddindx).amount);
143           a11(indx) := rosetta_g_miss_num_map(t(ddindx).sty_id);
144           a12(indx) := t(ddindx).pay_group_lookup_code;
145           a13(indx) := t(ddindx).vendor_invoice_number;
146           indx := indx+1;
147           if t.last =ddindx
148             then exit;
149           end if;
150           ddindx := t.next(ddindx);
151         end loop;
152       end if;
153    end if;
154   end rosetta_table_copy_out_p7;
155 
156   procedure manual_entry(p_api_version  NUMBER
157     , p_init_msg_list  VARCHAR2
158     , x_return_status out nocopy  VARCHAR2
159     , x_msg_count out nocopy  NUMBER
160     , x_msg_data out nocopy  VARCHAR2
161     , p6_a0 out nocopy  NUMBER
162     , p6_a1 out nocopy  NUMBER
163     , p6_a2 out nocopy  VARCHAR2
164     , p6_a3 out nocopy  NUMBER
165     , p6_a4 out nocopy  VARCHAR2
166     , p6_a5 out nocopy  DATE
167     , p6_a6 out nocopy  NUMBER
168     , p6_a7 out nocopy  VARCHAR2
169     , p6_a8 out nocopy  VARCHAR2
170     , p6_a9 out nocopy  VARCHAR2
171     , p6_a10 out nocopy  NUMBER
172     , p6_a11 out nocopy  NUMBER
173     , p6_a12 out nocopy  VARCHAR2
174     , p6_a13 out nocopy  VARCHAR2
175     , p5_a0  NUMBER := 0-1962.0724
176     , p5_a1  NUMBER := 0-1962.0724
177     , p5_a2  VARCHAR2 := fnd_api.g_miss_char
178     , p5_a3  NUMBER := 0-1962.0724
179     , p5_a4  VARCHAR2 := fnd_api.g_miss_char
180     , p5_a5  DATE := fnd_api.g_miss_date
181     , p5_a6  NUMBER := 0-1962.0724
182     , p5_a7  VARCHAR2 := fnd_api.g_miss_char
183     , p5_a8  VARCHAR2 := fnd_api.g_miss_char
184     , p5_a9  VARCHAR2 := fnd_api.g_miss_char
185     , p5_a10  NUMBER := 0-1962.0724
186     , p5_a11  NUMBER := 0-1962.0724
187     , p5_a12  VARCHAR2 := fnd_api.g_miss_char
188     , p5_a13  VARCHAR2 := fnd_api.g_miss_char
189   )
190 
191   as
192     ddp_man_inv_rec okl_pay_invoices_man_pvt.man_inv_rec_type;
193     ddx_man_inv_rec okl_pay_invoices_man_pvt.man_inv_rec_type;
194     ddindx binary_integer; indx binary_integer;
195   begin
196 
197     -- copy data to the local IN or IN-OUT args, if any
198 
199 
200 
201 
202 
203     ddp_man_inv_rec.ipvs_id := rosetta_g_miss_num_map(p5_a0);
204     ddp_man_inv_rec.khr_id := rosetta_g_miss_num_map(p5_a1);
205     ddp_man_inv_rec.currency := p5_a2;
206     ddp_man_inv_rec.vendor_id := rosetta_g_miss_num_map(p5_a3);
207     ddp_man_inv_rec.payment_method_code := p5_a4;
208     ddp_man_inv_rec.invoice_date := rosetta_g_miss_date_in_map(p5_a5);
209     ddp_man_inv_rec.pay_terms := rosetta_g_miss_num_map(p5_a6);
210     ddp_man_inv_rec.invoice_number := p5_a7;
211     ddp_man_inv_rec.invoice_category_code := p5_a8;
212     ddp_man_inv_rec.invoice_type := p5_a9;
213     ddp_man_inv_rec.amount := rosetta_g_miss_num_map(p5_a10);
214     ddp_man_inv_rec.sty_id := rosetta_g_miss_num_map(p5_a11);
215     ddp_man_inv_rec.pay_group_lookup_code := p5_a12;
216     ddp_man_inv_rec.vendor_invoice_number := p5_a13;
217 
218 
219     -- here's the delegated call to the old PL/SQL routine
220     okl_pay_invoices_man_pvt.manual_entry(p_api_version,
221       p_init_msg_list,
222       x_return_status,
223       x_msg_count,
224       x_msg_data,
225       ddp_man_inv_rec,
226       ddx_man_inv_rec);
227 
228     -- copy data back from the local variables to OUT or IN-OUT args, if any
229 
230 
231 
232 
233 
234 
235     p6_a0 := rosetta_g_miss_num_map(ddx_man_inv_rec.ipvs_id);
236     p6_a1 := rosetta_g_miss_num_map(ddx_man_inv_rec.khr_id);
237     p6_a2 := ddx_man_inv_rec.currency;
238     p6_a3 := rosetta_g_miss_num_map(ddx_man_inv_rec.vendor_id);
239     p6_a4 := ddx_man_inv_rec.payment_method_code;
240     p6_a5 := ddx_man_inv_rec.invoice_date;
241     p6_a6 := rosetta_g_miss_num_map(ddx_man_inv_rec.pay_terms);
242     p6_a7 := ddx_man_inv_rec.invoice_number;
243     p6_a8 := ddx_man_inv_rec.invoice_category_code;
244     p6_a9 := ddx_man_inv_rec.invoice_type;
245     p6_a10 := rosetta_g_miss_num_map(ddx_man_inv_rec.amount);
246     p6_a11 := rosetta_g_miss_num_map(ddx_man_inv_rec.sty_id);
247     p6_a12 := ddx_man_inv_rec.pay_group_lookup_code;
248     p6_a13 := ddx_man_inv_rec.vendor_invoice_number;
249   end;
250 
251   procedure manual_entry(p_api_version  NUMBER
252     , p_init_msg_list  VARCHAR2
253     , x_return_status out nocopy  VARCHAR2
254     , x_msg_count out nocopy  NUMBER
255     , x_msg_data out nocopy  VARCHAR2
256     , p5_a0 JTF_NUMBER_TABLE
257     , p5_a1 JTF_NUMBER_TABLE
258     , p5_a2 JTF_VARCHAR2_TABLE_100
259     , p5_a3 JTF_NUMBER_TABLE
260     , p5_a4 JTF_VARCHAR2_TABLE_100
261     , p5_a5 JTF_DATE_TABLE
262     , p5_a6 JTF_NUMBER_TABLE
263     , p5_a7 JTF_VARCHAR2_TABLE_100
264     , p5_a8 JTF_VARCHAR2_TABLE_100
265     , p5_a9 JTF_VARCHAR2_TABLE_300
266     , p5_a10 JTF_NUMBER_TABLE
267     , p5_a11 JTF_NUMBER_TABLE
268     , p5_a12 JTF_VARCHAR2_TABLE_100
269     , p5_a13 JTF_VARCHAR2_TABLE_300
270     , p6_a0 out nocopy JTF_NUMBER_TABLE
271     , p6_a1 out nocopy JTF_NUMBER_TABLE
272     , p6_a2 out nocopy JTF_VARCHAR2_TABLE_100
273     , p6_a3 out nocopy JTF_NUMBER_TABLE
274     , p6_a4 out nocopy JTF_VARCHAR2_TABLE_100
275     , p6_a5 out nocopy JTF_DATE_TABLE
276     , p6_a6 out nocopy JTF_NUMBER_TABLE
277     , p6_a7 out nocopy JTF_VARCHAR2_TABLE_100
278     , p6_a8 out nocopy JTF_VARCHAR2_TABLE_100
279     , p6_a9 out nocopy JTF_VARCHAR2_TABLE_300
280     , p6_a10 out nocopy JTF_NUMBER_TABLE
281     , p6_a11 out nocopy JTF_NUMBER_TABLE
282     , p6_a12 out nocopy JTF_VARCHAR2_TABLE_100
283     , p6_a13 out nocopy JTF_VARCHAR2_TABLE_300
284   )
285 
286   as
287     ddp_man_inv_tbl okl_pay_invoices_man_pvt.man_inv_tbl_type;
288     ddx_man_inv_tbl okl_pay_invoices_man_pvt.man_inv_tbl_type;
289     ddindx binary_integer; indx binary_integer;
290   begin
291 
292     -- copy data to the local IN or IN-OUT args, if any
293 
294 
295 
296 
297 
298     okl_pay_invoices_man_pvt_w.rosetta_table_copy_in_p7(ddp_man_inv_tbl, p5_a0
299       , p5_a1
300       , p5_a2
301       , p5_a3
302       , p5_a4
303       , p5_a5
304       , p5_a6
305       , p5_a7
306       , p5_a8
307       , p5_a9
308       , p5_a10
309       , p5_a11
310       , p5_a12
311       , p5_a13
312       );
313 
314 
315     -- here's the delegated call to the old PL/SQL routine
316     okl_pay_invoices_man_pvt.manual_entry(p_api_version,
317       p_init_msg_list,
318       x_return_status,
319       x_msg_count,
320       x_msg_data,
321       ddp_man_inv_tbl,
322       ddx_man_inv_tbl);
323 
324     -- copy data back from the local variables to OUT or IN-OUT args, if any
325 
326 
327 
328 
329 
330 
331     okl_pay_invoices_man_pvt_w.rosetta_table_copy_out_p7(ddx_man_inv_tbl, p6_a0
332       , p6_a1
333       , p6_a2
334       , p6_a3
335       , p6_a4
336       , p6_a5
337       , p6_a6
338       , p6_a7
339       , p6_a8
340       , p6_a9
341       , p6_a10
342       , p6_a11
343       , p6_a12
344       , p6_a13
345       );
346   end;
347 
348 end okl_pay_invoices_man_pvt_w;