DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_BPD_CAP_PURPOSE_PVT_W

Source


1 package body okl_bpd_cap_purpose_pvt_w as
2   /* $Header: OKLECPUB.pls 120.2 2005/10/30 03:16:40 appldev 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_p4(t out nocopy okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_NUMBER_TABLE
24     , a2 JTF_NUMBER_TABLE
25     , a3 JTF_NUMBER_TABLE
26     , a4 JTF_NUMBER_TABLE
27     , a5 JTF_NUMBER_TABLE
28     ) as
29     ddindx binary_integer; indx binary_integer;
30   begin
31   if a0 is not null and a0.count > 0 then
32       if a0.count > 0 then
33         indx := a0.first;
34         ddindx := 1;
35         while true loop
36           t(ddindx).id := rosetta_g_miss_num_map(a0(indx));
37           t(ddindx).customer_id := rosetta_g_miss_num_map(a1(indx));
38           t(ddindx).contract_id := rosetta_g_miss_num_map(a2(indx));
39           t(ddindx).receipt_id := rosetta_g_miss_num_map(a3(indx));
40           t(ddindx).sty_id := rosetta_g_miss_num_map(a4(indx));
41           t(ddindx).amount := rosetta_g_miss_num_map(a5(indx));
42           ddindx := ddindx+1;
43           if a0.last =indx
44             then exit;
45           end if;
46           indx := a0.next(indx);
47         end loop;
48       end if;
49    end if;
50   end rosetta_table_copy_in_p4;
51   procedure rosetta_table_copy_out_p4(t okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
52     , a1 out nocopy JTF_NUMBER_TABLE
53     , a2 out nocopy JTF_NUMBER_TABLE
54     , a3 out nocopy JTF_NUMBER_TABLE
55     , a4 out nocopy JTF_NUMBER_TABLE
56     , a5 out nocopy JTF_NUMBER_TABLE
57     ) as
58     ddindx binary_integer; indx binary_integer;
59   begin
60   if t is null or t.count = 0 then
61     a0 := JTF_NUMBER_TABLE();
62     a1 := JTF_NUMBER_TABLE();
63     a2 := JTF_NUMBER_TABLE();
64     a3 := JTF_NUMBER_TABLE();
65     a4 := JTF_NUMBER_TABLE();
66     a5 := JTF_NUMBER_TABLE();
67   else
68       a0 := JTF_NUMBER_TABLE();
69       a1 := JTF_NUMBER_TABLE();
70       a2 := JTF_NUMBER_TABLE();
71       a3 := JTF_NUMBER_TABLE();
72       a4 := JTF_NUMBER_TABLE();
73       a5 := JTF_NUMBER_TABLE();
74       if t.count > 0 then
75         a0.extend(t.count);
76         a1.extend(t.count);
77         a2.extend(t.count);
78         a3.extend(t.count);
79         a4.extend(t.count);
80         a5.extend(t.count);
81         ddindx := t.first;
82         indx := 1;
83         while true loop
84           a0(indx) := rosetta_g_miss_num_map(t(ddindx).id);
85           a1(indx) := rosetta_g_miss_num_map(t(ddindx).customer_id);
86           a2(indx) := rosetta_g_miss_num_map(t(ddindx).contract_id);
87           a3(indx) := rosetta_g_miss_num_map(t(ddindx).receipt_id);
88           a4(indx) := rosetta_g_miss_num_map(t(ddindx).sty_id);
89           a5(indx) := rosetta_g_miss_num_map(t(ddindx).amount);
90           indx := indx+1;
91           if t.last =ddindx
92             then exit;
93           end if;
94           ddindx := t.next(ddindx);
95         end loop;
96       end if;
97    end if;
98   end rosetta_table_copy_out_p4;
99 
100   procedure create_purpose(p_api_version  NUMBER
101     , p_init_msg_list  VARCHAR2
102     , x_return_status out nocopy  VARCHAR2
103     , x_msg_count out nocopy  NUMBER
104     , x_msg_data out nocopy  VARCHAR2
105     , p5_a0 JTF_NUMBER_TABLE
106     , p5_a1 JTF_NUMBER_TABLE
107     , p5_a2 JTF_NUMBER_TABLE
108     , p5_a3 JTF_NUMBER_TABLE
109     , p5_a4 JTF_NUMBER_TABLE
110     , p5_a5 JTF_NUMBER_TABLE
111     , p6_a0 out nocopy JTF_NUMBER_TABLE
112     , p6_a1 out nocopy JTF_NUMBER_TABLE
113     , p6_a2 out nocopy JTF_NUMBER_TABLE
114     , p6_a3 out nocopy JTF_NUMBER_TABLE
115     , p6_a4 out nocopy JTF_NUMBER_TABLE
116     , p6_a5 out nocopy JTF_NUMBER_TABLE
117   )
118 
119   as
120     ddp_strm_tbl okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type;
121     ddx_strm_tbl okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type;
122     ddindx binary_integer; indx binary_integer;
123   begin
124 
125     -- copy data to the local IN or IN-OUT args, if any
126 
127 
128 
129 
130 
131     okl_bpd_cap_purpose_pvt_w.rosetta_table_copy_in_p4(ddp_strm_tbl, p5_a0
132       , p5_a1
133       , p5_a2
134       , p5_a3
135       , p5_a4
136       , p5_a5
137       );
138 
139 
140     -- here's the delegated call to the old PL/SQL routine
141     okl_bpd_cap_purpose_pvt.create_purpose(p_api_version,
142       p_init_msg_list,
143       x_return_status,
144       x_msg_count,
145       x_msg_data,
146       ddp_strm_tbl,
147       ddx_strm_tbl);
148 
149     -- copy data back from the local variables to OUT or IN-OUT args, if any
150 
151 
152 
153 
154 
155 
156     okl_bpd_cap_purpose_pvt_w.rosetta_table_copy_out_p4(ddx_strm_tbl, p6_a0
157       , p6_a1
158       , p6_a2
159       , p6_a3
160       , p6_a4
161       , p6_a5
162       );
163   end;
164 
165   procedure update_purpose(p_api_version  NUMBER
166     , p_init_msg_list  VARCHAR2
167     , x_return_status out nocopy  VARCHAR2
168     , x_msg_count out nocopy  NUMBER
169     , x_msg_data out nocopy  VARCHAR2
170     , p5_a0 JTF_NUMBER_TABLE
171     , p5_a1 JTF_NUMBER_TABLE
172     , p5_a2 JTF_NUMBER_TABLE
173     , p5_a3 JTF_NUMBER_TABLE
174     , p5_a4 JTF_NUMBER_TABLE
175     , p5_a5 JTF_NUMBER_TABLE
176     , p6_a0 out nocopy JTF_NUMBER_TABLE
177     , p6_a1 out nocopy JTF_NUMBER_TABLE
178     , p6_a2 out nocopy JTF_NUMBER_TABLE
179     , p6_a3 out nocopy JTF_NUMBER_TABLE
180     , p6_a4 out nocopy JTF_NUMBER_TABLE
181     , p6_a5 out nocopy JTF_NUMBER_TABLE
182   )
183 
184   as
185     ddp_strm_tbl okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type;
186     ddx_strm_tbl okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type;
187     ddindx binary_integer; indx binary_integer;
188   begin
189 
190     -- copy data to the local IN or IN-OUT args, if any
191 
192 
193 
194 
195 
196     okl_bpd_cap_purpose_pvt_w.rosetta_table_copy_in_p4(ddp_strm_tbl, p5_a0
197       , p5_a1
198       , p5_a2
199       , p5_a3
200       , p5_a4
201       , p5_a5
202       );
203 
204 
205     -- here's the delegated call to the old PL/SQL routine
206     okl_bpd_cap_purpose_pvt.update_purpose(p_api_version,
207       p_init_msg_list,
208       x_return_status,
209       x_msg_count,
210       x_msg_data,
211       ddp_strm_tbl,
212       ddx_strm_tbl);
213 
214     -- copy data back from the local variables to OUT or IN-OUT args, if any
215 
216 
217 
218 
219 
220 
221     okl_bpd_cap_purpose_pvt_w.rosetta_table_copy_out_p4(ddx_strm_tbl, p6_a0
222       , p6_a1
223       , p6_a2
224       , p6_a3
225       , p6_a4
226       , p6_a5
227       );
228   end;
229 
230   procedure delete_purpose(p_api_version  NUMBER
231     , p_init_msg_list  VARCHAR2
232     , x_return_status out nocopy  VARCHAR2
233     , x_msg_count out nocopy  NUMBER
234     , x_msg_data out nocopy  VARCHAR2
235     , p5_a0 JTF_NUMBER_TABLE
236     , p5_a1 JTF_NUMBER_TABLE
237     , p5_a2 JTF_NUMBER_TABLE
238     , p5_a3 JTF_NUMBER_TABLE
239     , p5_a4 JTF_NUMBER_TABLE
240     , p5_a5 JTF_NUMBER_TABLE
241     , p6_a0 out nocopy JTF_NUMBER_TABLE
242     , p6_a1 out nocopy JTF_NUMBER_TABLE
243     , p6_a2 out nocopy JTF_NUMBER_TABLE
244     , p6_a3 out nocopy JTF_NUMBER_TABLE
245     , p6_a4 out nocopy JTF_NUMBER_TABLE
246     , p6_a5 out nocopy JTF_NUMBER_TABLE
247   )
248 
249   as
250     ddp_strm_tbl okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type;
251     ddx_strm_tbl okl_bpd_cap_purpose_pvt.okl_cash_dtls_tbl_type;
252     ddindx binary_integer; indx binary_integer;
253   begin
254 
255     -- copy data to the local IN or IN-OUT args, if any
256 
257 
258 
259 
260 
261     okl_bpd_cap_purpose_pvt_w.rosetta_table_copy_in_p4(ddp_strm_tbl, p5_a0
262       , p5_a1
263       , p5_a2
264       , p5_a3
265       , p5_a4
266       , p5_a5
267       );
268 
269 
270     -- here's the delegated call to the old PL/SQL routine
271     okl_bpd_cap_purpose_pvt.delete_purpose(p_api_version,
272       p_init_msg_list,
273       x_return_status,
274       x_msg_count,
275       x_msg_data,
276       ddp_strm_tbl,
277       ddx_strm_tbl);
278 
279     -- copy data back from the local variables to OUT or IN-OUT args, if any
280 
281 
282 
283 
284 
285 
286     okl_bpd_cap_purpose_pvt_w.rosetta_table_copy_out_p4(ddx_strm_tbl, p6_a0
287       , p6_a1
288       , p6_a2
289       , p6_a3
290       , p6_a4
291       , p6_a5
292       );
293   end;
294 
295 end okl_bpd_cap_purpose_pvt_w;