DBA Data[Home] [Help]

PACKAGE BODY: APPS.CN_RATE_DIMENSIONS_PVT_W

Source


1 package body cn_rate_dimensions_pvt_w as
2   /* $Header: cnwrdimb.pls 120.3 2006/01/18 15:30 jxsingh ship $ */
3   procedure rosetta_table_copy_in_p1(t out nocopy cn_rate_dimensions_pvt.tiers_tbl_type, a0 JTF_NUMBER_TABLE
4     , a1 JTF_NUMBER_TABLE
5     , a2 JTF_NUMBER_TABLE
6     , a3 JTF_NUMBER_TABLE
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_1000
12     ) as
13     ddindx binary_integer; indx binary_integer;
14   begin
15   if a0 is not null and a0.count > 0 then
16       if a0.count > 0 then
17         indx := a0.first;
18         ddindx := 1;
19         while true loop
20           t(ddindx).rate_dim_tier_id := a0(indx);
21           t(ddindx).minimum_amount := a1(indx);
22           t(ddindx).maximum_amount := a2(indx);
23           t(ddindx).min_exp_id := a3(indx);
24           t(ddindx).max_exp_id := a4(indx);
25           t(ddindx).string_value := a5(indx);
26           t(ddindx).tier_sequence := a6(indx);
27           t(ddindx).object_version_number := a7(indx);
28           t(ddindx).tier_description := a8(indx);
29           ddindx := ddindx+1;
30           if a0.last =indx
31             then exit;
32           end if;
33           indx := a0.next(indx);
34         end loop;
35       end if;
36    end if;
37   end rosetta_table_copy_in_p1;
38   procedure rosetta_table_copy_out_p1(t cn_rate_dimensions_pvt.tiers_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
39     , a1 out nocopy JTF_NUMBER_TABLE
40     , a2 out nocopy JTF_NUMBER_TABLE
41     , a3 out nocopy JTF_NUMBER_TABLE
42     , a4 out nocopy JTF_NUMBER_TABLE
43     , a5 out nocopy JTF_VARCHAR2_TABLE_100
44     , a6 out nocopy JTF_NUMBER_TABLE
45     , a7 out nocopy JTF_NUMBER_TABLE
46     , a8 out nocopy JTF_VARCHAR2_TABLE_1000
47     ) as
48     ddindx binary_integer; indx binary_integer;
49   begin
50   if t is null or t.count = 0 then
51     a0 := JTF_NUMBER_TABLE();
52     a1 := JTF_NUMBER_TABLE();
53     a2 := JTF_NUMBER_TABLE();
54     a3 := JTF_NUMBER_TABLE();
55     a4 := JTF_NUMBER_TABLE();
56     a5 := JTF_VARCHAR2_TABLE_100();
57     a6 := JTF_NUMBER_TABLE();
58     a7 := JTF_NUMBER_TABLE();
59     a8 := JTF_VARCHAR2_TABLE_1000();
60   else
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_VARCHAR2_TABLE_100();
67       a6 := JTF_NUMBER_TABLE();
68       a7 := JTF_NUMBER_TABLE();
69       a8 := JTF_VARCHAR2_TABLE_1000();
70       if t.count > 0 then
71         a0.extend(t.count);
72         a1.extend(t.count);
73         a2.extend(t.count);
74         a3.extend(t.count);
75         a4.extend(t.count);
76         a5.extend(t.count);
77         a6.extend(t.count);
78         a7.extend(t.count);
79         a8.extend(t.count);
80         ddindx := t.first;
81         indx := 1;
82         while true loop
83           a0(indx) := t(ddindx).rate_dim_tier_id;
84           a1(indx) := t(ddindx).minimum_amount;
85           a2(indx) := t(ddindx).maximum_amount;
86           a3(indx) := t(ddindx).min_exp_id;
87           a4(indx) := t(ddindx).max_exp_id;
88           a5(indx) := t(ddindx).string_value;
89           a6(indx) := t(ddindx).tier_sequence;
90           a7(indx) := t(ddindx).object_version_number;
91           a8(indx) := t(ddindx).tier_description;
92           indx := indx+1;
93           if t.last =ddindx
94             then exit;
95           end if;
96           ddindx := t.next(ddindx);
97         end loop;
98       end if;
99    end if;
100   end rosetta_table_copy_out_p1;
101 
102   procedure rosetta_table_copy_in_p2(t out nocopy cn_rate_dimensions_pvt.parent_rate_tables_tbl_type, a0 JTF_VARCHAR2_TABLE_100) as
103     ddindx binary_integer; indx binary_integer;
104   begin
105   if a0 is not null and a0.count > 0 then
106       if a0.count > 0 then
107         indx := a0.first;
108         ddindx := 1;
109         while true loop
110           t(ddindx) := a0(indx);
111           ddindx := ddindx+1;
112           if a0.last =indx
113             then exit;
114           end if;
115           indx := a0.next(indx);
116         end loop;
117       end if;
118    end if;
119   end rosetta_table_copy_in_p2;
120   procedure rosetta_table_copy_out_p2(t cn_rate_dimensions_pvt.parent_rate_tables_tbl_type, a0 out nocopy JTF_VARCHAR2_TABLE_100) as
121     ddindx binary_integer; indx binary_integer;
122   begin
123   if t is null or t.count = 0 then
124     a0 := JTF_VARCHAR2_TABLE_100();
125   else
126       a0 := JTF_VARCHAR2_TABLE_100();
127       if t.count > 0 then
128         a0.extend(t.count);
129         ddindx := t.first;
130         indx := 1;
131         while true loop
132           a0(indx) := t(ddindx);
133           indx := indx+1;
134           if t.last =ddindx
135             then exit;
136           end if;
137           ddindx := t.next(ddindx);
138         end loop;
139       end if;
140    end if;
141   end rosetta_table_copy_out_p2;
142 
143   procedure create_dimension(p_api_version  NUMBER
144     , p_init_msg_list  VARCHAR2
145     , p_commit  VARCHAR2
146     , p_validation_level  NUMBER
147     , p_name  VARCHAR2
148     , p_description  VARCHAR2
149     , p_dim_unit_code  VARCHAR2
150     , p_number_tier  NUMBER
151     , p8_a0 JTF_NUMBER_TABLE
152     , p8_a1 JTF_NUMBER_TABLE
153     , p8_a2 JTF_NUMBER_TABLE
154     , p8_a3 JTF_NUMBER_TABLE
155     , p8_a4 JTF_NUMBER_TABLE
156     , p8_a5 JTF_VARCHAR2_TABLE_100
157     , p8_a6 JTF_NUMBER_TABLE
158     , p8_a7 JTF_NUMBER_TABLE
159     , p8_a8 JTF_VARCHAR2_TABLE_1000
160     , p_org_id  NUMBER
161     , x_rate_dimension_id in out nocopy  NUMBER
162     , x_return_status out nocopy  VARCHAR2
163     , x_msg_count out nocopy  NUMBER
164     , x_msg_data out nocopy  VARCHAR2
165   )
166 
167   as
168     ddp_tiers_tbl cn_rate_dimensions_pvt.tiers_tbl_type;
169     ddindx binary_integer; indx binary_integer;
170   begin
171 
172     -- copy data to the local IN or IN-OUT args, if any
173 
174 
175 
176 
177 
178 
179 
180 
181     cn_rate_dimensions_pvt_w.rosetta_table_copy_in_p1(ddp_tiers_tbl, p8_a0
182       , p8_a1
183       , p8_a2
184       , p8_a3
185       , p8_a4
186       , p8_a5
187       , p8_a6
188       , p8_a7
189       , p8_a8
190       );
191 
192 
193 
194 
195 
196 
197     -- here's the delegated call to the old PL/SQL routine
198     cn_rate_dimensions_pvt.create_dimension(p_api_version,
199       p_init_msg_list,
200       p_commit,
201       p_validation_level,
202       p_name,
203       p_description,
204       p_dim_unit_code,
205       p_number_tier,
206       ddp_tiers_tbl,
207       p_org_id,
208       x_rate_dimension_id,
209       x_return_status,
210       x_msg_count,
211       x_msg_data);
212 
213     -- copy data back from the local variables to OUT or IN-OUT args, if any
214 
215 
216 
217 
218 
219 
220 
221 
222 
223 
224 
225 
226 
227   end;
228 
229   procedure update_dimension(p_api_version  NUMBER
230     , p_init_msg_list  VARCHAR2
231     , p_commit  VARCHAR2
232     , p_validation_level  NUMBER
233     , p_rate_dimension_id  NUMBER
234     , p_name  VARCHAR2
235     , p_description  VARCHAR2
236     , p_dim_unit_code  VARCHAR2
237     , p_number_tier  NUMBER
238     , p9_a0 JTF_NUMBER_TABLE
239     , p9_a1 JTF_NUMBER_TABLE
240     , p9_a2 JTF_NUMBER_TABLE
241     , p9_a3 JTF_NUMBER_TABLE
242     , p9_a4 JTF_NUMBER_TABLE
243     , p9_a5 JTF_VARCHAR2_TABLE_100
244     , p9_a6 JTF_NUMBER_TABLE
245     , p9_a7 JTF_NUMBER_TABLE
246     , p9_a8 JTF_VARCHAR2_TABLE_1000
247     , p_org_id  NUMBER
248     , p_object_version_number in out nocopy  NUMBER
249     , x_return_status out nocopy  VARCHAR2
250     , x_msg_count out nocopy  NUMBER
251     , x_msg_data out nocopy  VARCHAR2
252   )
253 
254   as
255     ddp_tiers_tbl cn_rate_dimensions_pvt.tiers_tbl_type;
256     ddindx binary_integer; indx binary_integer;
257   begin
258 
259     -- copy data to the local IN or IN-OUT args, if any
260 
261 
262 
263 
264 
265 
266 
267 
268 
269     cn_rate_dimensions_pvt_w.rosetta_table_copy_in_p1(ddp_tiers_tbl, p9_a0
270       , p9_a1
271       , p9_a2
272       , p9_a3
273       , p9_a4
274       , p9_a5
275       , p9_a6
276       , p9_a7
277       , p9_a8
278       );
279 
280 
281 
282 
283 
284 
285     -- here's the delegated call to the old PL/SQL routine
286     cn_rate_dimensions_pvt.update_dimension(p_api_version,
287       p_init_msg_list,
288       p_commit,
289       p_validation_level,
290       p_rate_dimension_id,
291       p_name,
292       p_description,
293       p_dim_unit_code,
294       p_number_tier,
295       ddp_tiers_tbl,
296       p_org_id,
297       p_object_version_number,
298       x_return_status,
299       x_msg_count,
300       x_msg_data);
301 
302     -- copy data back from the local variables to OUT or IN-OUT args, if any
303 
304 
305 
306 
307 
308 
309 
310 
311 
312 
313 
314 
315 
316 
317   end;
318 
319 end cn_rate_dimensions_pvt_w;