[Home] [Help]
PACKAGE BODY: APPS.OKL_AM_ASSET_RELOCATION_PVT_W
Source
1 package body okl_am_asset_relocation_pvt_w as
2 /* $Header: OKLEAREB.pls 120.3 2005/12/05 07:13:54 asawanka 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_p1(t out nocopy okl_am_asset_relocation_pvt.falo_tbl_type, a0 JTF_NUMBER_TABLE
23 , a1 JTF_NUMBER_TABLE
24 , a2 JTF_VARCHAR2_TABLE_100
25 , a3 JTF_VARCHAR2_TABLE_100
26 , a4 JTF_NUMBER_TABLE
27 , a5 JTF_NUMBER_TABLE
28 , a6 JTF_NUMBER_TABLE
29 , a7 JTF_NUMBER_TABLE
30 , a8 JTF_NUMBER_TABLE
31 , a9 JTF_NUMBER_TABLE
32 , a10 JTF_NUMBER_TABLE
33 ) as
34 ddindx binary_integer; indx binary_integer;
35 begin
36 if a0 is not null and a0.count > 0 then
37 if a0.count > 0 then
38 indx := a0.first;
39 ddindx := 1;
40 while true loop
41 t(ddindx).p_cle_id := rosetta_g_miss_num_map(a0(indx));
42 t(ddindx).p_asset_id := rosetta_g_miss_num_map(a1(indx));
43 t(ddindx).p_asset_number := a2(indx);
44 t(ddindx).p_corporate_book := a3(indx);
45 t(ddindx).p_current_units := rosetta_g_miss_num_map(a4(indx));
46 t(ddindx).p_distribution_id := rosetta_g_miss_num_map(a5(indx));
47 t(ddindx).p_units_assigned := rosetta_g_miss_num_map(a6(indx));
48 t(ddindx).p_assigned_to := rosetta_g_miss_num_map(a7(indx));
49 t(ddindx).p_code_combination_id := rosetta_g_miss_num_map(a8(indx));
50 t(ddindx).p_old_location_id := rosetta_g_miss_num_map(a9(indx));
51 t(ddindx).p_new_location_id := rosetta_g_miss_num_map(a10(indx));
52 ddindx := ddindx+1;
53 if a0.last =indx
54 then exit;
55 end if;
56 indx := a0.next(indx);
57 end loop;
58 end if;
59 end if;
60 end rosetta_table_copy_in_p1;
61 procedure rosetta_table_copy_out_p1(t okl_am_asset_relocation_pvt.falo_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
62 , a1 out nocopy JTF_NUMBER_TABLE
63 , a2 out nocopy JTF_VARCHAR2_TABLE_100
64 , a3 out nocopy JTF_VARCHAR2_TABLE_100
65 , a4 out nocopy JTF_NUMBER_TABLE
66 , a5 out nocopy JTF_NUMBER_TABLE
67 , a6 out nocopy JTF_NUMBER_TABLE
68 , a7 out nocopy JTF_NUMBER_TABLE
69 , a8 out nocopy JTF_NUMBER_TABLE
70 , a9 out nocopy JTF_NUMBER_TABLE
71 , a10 out nocopy JTF_NUMBER_TABLE
72 ) as
73 ddindx binary_integer; indx binary_integer;
74 begin
75 if t is null or t.count = 0 then
76 a0 := JTF_NUMBER_TABLE();
77 a1 := JTF_NUMBER_TABLE();
78 a2 := JTF_VARCHAR2_TABLE_100();
79 a3 := JTF_VARCHAR2_TABLE_100();
80 a4 := JTF_NUMBER_TABLE();
81 a5 := JTF_NUMBER_TABLE();
82 a6 := JTF_NUMBER_TABLE();
83 a7 := JTF_NUMBER_TABLE();
84 a8 := JTF_NUMBER_TABLE();
85 a9 := JTF_NUMBER_TABLE();
86 a10 := JTF_NUMBER_TABLE();
87 else
88 a0 := JTF_NUMBER_TABLE();
89 a1 := JTF_NUMBER_TABLE();
90 a2 := JTF_VARCHAR2_TABLE_100();
91 a3 := JTF_VARCHAR2_TABLE_100();
92 a4 := JTF_NUMBER_TABLE();
93 a5 := JTF_NUMBER_TABLE();
94 a6 := JTF_NUMBER_TABLE();
95 a7 := JTF_NUMBER_TABLE();
96 a8 := JTF_NUMBER_TABLE();
97 a9 := JTF_NUMBER_TABLE();
98 a10 := JTF_NUMBER_TABLE();
99 if t.count > 0 then
100 a0.extend(t.count);
101 a1.extend(t.count);
102 a2.extend(t.count);
103 a3.extend(t.count);
104 a4.extend(t.count);
105 a5.extend(t.count);
106 a6.extend(t.count);
107 a7.extend(t.count);
108 a8.extend(t.count);
109 a9.extend(t.count);
110 a10.extend(t.count);
111 ddindx := t.first;
112 indx := 1;
113 while true loop
114 a0(indx) := rosetta_g_miss_num_map(t(ddindx).p_cle_id);
115 a1(indx) := rosetta_g_miss_num_map(t(ddindx).p_asset_id);
116 a2(indx) := t(ddindx).p_asset_number;
117 a3(indx) := t(ddindx).p_corporate_book;
118 a4(indx) := rosetta_g_miss_num_map(t(ddindx).p_current_units);
119 a5(indx) := rosetta_g_miss_num_map(t(ddindx).p_distribution_id);
120 a6(indx) := rosetta_g_miss_num_map(t(ddindx).p_units_assigned);
121 a7(indx) := rosetta_g_miss_num_map(t(ddindx).p_assigned_to);
122 a8(indx) := rosetta_g_miss_num_map(t(ddindx).p_code_combination_id);
123 a9(indx) := rosetta_g_miss_num_map(t(ddindx).p_old_location_id);
124 a10(indx) := rosetta_g_miss_num_map(t(ddindx).p_new_location_id);
125 indx := indx+1;
126 if t.last =ddindx
127 then exit;
128 end if;
129 ddindx := t.next(ddindx);
130 end loop;
131 end if;
132 end if;
133 end rosetta_table_copy_out_p1;
134
135 procedure rosetta_table_copy_in_p3(t out nocopy okl_am_asset_relocation_pvt.ialo_tbl_type, a0 JTF_NUMBER_TABLE
136 , a1 JTF_NUMBER_TABLE
137 , a2 JTF_NUMBER_TABLE
138 ) as
139 ddindx binary_integer; indx binary_integer;
140 begin
141 if a0 is not null and a0.count > 0 then
142 if a0.count > 0 then
143 indx := a0.first;
144 ddindx := 1;
145 while true loop
146 t(ddindx).p_instance_id := rosetta_g_miss_num_map(a0(indx));
147 t(ddindx).p_location_id := rosetta_g_miss_num_map(a1(indx));
148 t(ddindx).p_install_location_id := rosetta_g_miss_num_map(a2(indx));
149 ddindx := ddindx+1;
150 if a0.last =indx
151 then exit;
152 end if;
153 indx := a0.next(indx);
154 end loop;
155 end if;
156 end if;
157 end rosetta_table_copy_in_p3;
158 procedure rosetta_table_copy_out_p3(t okl_am_asset_relocation_pvt.ialo_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
159 , a1 out nocopy JTF_NUMBER_TABLE
160 , a2 out nocopy JTF_NUMBER_TABLE
161 ) as
162 ddindx binary_integer; indx binary_integer;
163 begin
164 if t is null or t.count = 0 then
165 a0 := JTF_NUMBER_TABLE();
166 a1 := JTF_NUMBER_TABLE();
167 a2 := JTF_NUMBER_TABLE();
168 else
169 a0 := JTF_NUMBER_TABLE();
170 a1 := JTF_NUMBER_TABLE();
171 a2 := JTF_NUMBER_TABLE();
172 if t.count > 0 then
173 a0.extend(t.count);
174 a1.extend(t.count);
175 a2.extend(t.count);
176 ddindx := t.first;
177 indx := 1;
178 while true loop
179 a0(indx) := rosetta_g_miss_num_map(t(ddindx).p_instance_id);
180 a1(indx) := rosetta_g_miss_num_map(t(ddindx).p_location_id);
181 a2(indx) := rosetta_g_miss_num_map(t(ddindx).p_install_location_id);
182 indx := indx+1;
183 if t.last =ddindx
184 then exit;
185 end if;
186 ddindx := t.next(ddindx);
187 end loop;
188 end if;
189 end if;
190 end rosetta_table_copy_out_p3;
191
192 procedure relocate_installed_item(p_api_version NUMBER
193 , p_init_msg_list VARCHAR2
194 , x_return_status out nocopy VARCHAR2
195 , x_msg_count out nocopy NUMBER
196 , x_msg_data out nocopy VARCHAR2
197 , p5_a0 JTF_NUMBER_TABLE
198 , p5_a1 JTF_NUMBER_TABLE
199 , p5_a2 JTF_NUMBER_TABLE
200 )
201
202 as
203 ddp_ialo_tbl okl_am_asset_relocation_pvt.ialo_tbl_type;
204 ddindx binary_integer; indx binary_integer;
205 begin
206
207 -- copy data to the local IN or IN-OUT args, if any
208
209
210
211
212
213 okl_am_asset_relocation_pvt_w.rosetta_table_copy_in_p3(ddp_ialo_tbl, p5_a0
214 , p5_a1
215 , p5_a2
216 );
217
218 -- here's the delegated call to the old PL/SQL routine
219 okl_am_asset_relocation_pvt.relocate_installed_item(p_api_version,
220 p_init_msg_list,
221 x_return_status,
222 x_msg_count,
223 x_msg_data,
224 ddp_ialo_tbl);
225
226 -- copy data back from the local variables to OUT or IN-OUT args, if any
227
228
229
230
231
232 end;
233
234 procedure relocate_fixed_asset(p_api_version NUMBER
235 , p_init_msg_list VARCHAR2
236 , x_return_status out nocopy VARCHAR2
237 , x_msg_count out nocopy NUMBER
238 , x_msg_data out nocopy VARCHAR2
239 , p5_a0 JTF_NUMBER_TABLE
240 , p5_a1 JTF_NUMBER_TABLE
241 , p5_a2 JTF_VARCHAR2_TABLE_100
242 , p5_a3 JTF_VARCHAR2_TABLE_100
243 , p5_a4 JTF_NUMBER_TABLE
244 , p5_a5 JTF_NUMBER_TABLE
245 , p5_a6 JTF_NUMBER_TABLE
246 , p5_a7 JTF_NUMBER_TABLE
247 , p5_a8 JTF_NUMBER_TABLE
248 , p5_a9 JTF_NUMBER_TABLE
249 , p5_a10 JTF_NUMBER_TABLE
250 )
251
252 as
253 ddp_falo_tbl okl_am_asset_relocation_pvt.falo_tbl_type;
254 ddindx binary_integer; indx binary_integer;
255 begin
256
257 -- copy data to the local IN or IN-OUT args, if any
258
259
260
261
262
263 okl_am_asset_relocation_pvt_w.rosetta_table_copy_in_p1(ddp_falo_tbl, p5_a0
264 , p5_a1
265 , p5_a2
266 , p5_a3
267 , p5_a4
268 , p5_a5
269 , p5_a6
270 , p5_a7
271 , p5_a8
272 , p5_a9
273 , p5_a10
274 );
275
276 -- here's the delegated call to the old PL/SQL routine
277 okl_am_asset_relocation_pvt.relocate_fixed_asset(p_api_version,
278 p_init_msg_list,
279 x_return_status,
280 x_msg_count,
281 x_msg_data,
282 ddp_falo_tbl);
283
284 -- copy data back from the local variables to OUT or IN-OUT args, if any
285
286
287
288
289
290 end;
291
292 procedure change_fa_location(p_api_version NUMBER
293 , p_init_msg_list VARCHAR2
294 , x_return_status out nocopy VARCHAR2
295 , x_msg_count out nocopy NUMBER
296 , x_msg_data out nocopy VARCHAR2
297 , p5_a0 JTF_NUMBER_TABLE
298 , p5_a1 JTF_NUMBER_TABLE
299 , p5_a2 JTF_VARCHAR2_TABLE_100
300 , p5_a3 JTF_VARCHAR2_TABLE_100
301 , p5_a4 JTF_NUMBER_TABLE
302 , p5_a5 JTF_NUMBER_TABLE
303 , p5_a6 JTF_NUMBER_TABLE
304 , p5_a7 JTF_NUMBER_TABLE
305 , p5_a8 JTF_NUMBER_TABLE
306 , p5_a9 JTF_NUMBER_TABLE
307 , p5_a10 JTF_NUMBER_TABLE
308 )
309
310 as
311 ddp_assets_tbl okl_am_asset_relocation_pvt.falo_tbl_type;
312 ddindx binary_integer; indx binary_integer;
313 begin
314
315 -- copy data to the local IN or IN-OUT args, if any
316
317
318
319
320
321 okl_am_asset_relocation_pvt_w.rosetta_table_copy_in_p1(ddp_assets_tbl, p5_a0
322 , p5_a1
323 , p5_a2
324 , p5_a3
325 , p5_a4
326 , p5_a5
327 , p5_a6
328 , p5_a7
329 , p5_a8
330 , p5_a9
331 , p5_a10
332 );
333
334 -- here's the delegated call to the old PL/SQL routine
335 okl_am_asset_relocation_pvt.change_fa_location(p_api_version,
336 p_init_msg_list,
337 x_return_status,
338 x_msg_count,
339 x_msg_data,
340 ddp_assets_tbl);
341
342 -- copy data back from the local variables to OUT or IN-OUT args, if any
343
344
345
346
347
348 end;
349
350 end okl_am_asset_relocation_pvt_w;