[Home] [Help]
PACKAGE BODY: APPS.AHL_APPR_SPACE_UNAVL_PUB_W
Source
1 package body ahl_appr_space_unavl_pub_w as
2 /* $Header: AHLWSUAB.pls 115.4 2003/11/04 10:53:58 rroy 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 procedure rosetta_table_copy_in_p1(t out nocopy ahl_appr_space_unavl_pub.space_restriction_tbl, a0 JTF_NUMBER_TABLE
14 , a1 JTF_DATE_TABLE
15 , a2 JTF_NUMBER_TABLE
16 , a3 JTF_DATE_TABLE
17 , a4 JTF_NUMBER_TABLE
18 , a5 JTF_NUMBER_TABLE
19 , a6 JTF_NUMBER_TABLE
20 , a7 JTF_NUMBER_TABLE
21 , a8 JTF_VARCHAR2_TABLE_300
22 , a9 JTF_NUMBER_TABLE
23 , a10 JTF_VARCHAR2_TABLE_300
24 , a11 JTF_NUMBER_TABLE
25 , a12 JTF_VARCHAR2_TABLE_100
26 , a13 JTF_DATE_TABLE
27 , a14 JTF_DATE_TABLE
28 , a15 JTF_VARCHAR2_TABLE_2000
29 , a16 JTF_VARCHAR2_TABLE_100
30 , a17 JTF_VARCHAR2_TABLE_200
31 , a18 JTF_VARCHAR2_TABLE_200
32 , a19 JTF_VARCHAR2_TABLE_200
33 , a20 JTF_VARCHAR2_TABLE_200
34 , a21 JTF_VARCHAR2_TABLE_200
35 , a22 JTF_VARCHAR2_TABLE_200
36 , a23 JTF_VARCHAR2_TABLE_200
37 , a24 JTF_VARCHAR2_TABLE_200
38 , a25 JTF_VARCHAR2_TABLE_200
39 , a26 JTF_VARCHAR2_TABLE_200
40 , a27 JTF_VARCHAR2_TABLE_200
41 , a28 JTF_VARCHAR2_TABLE_200
42 , a29 JTF_VARCHAR2_TABLE_200
43 , a30 JTF_VARCHAR2_TABLE_200
44 , a31 JTF_VARCHAR2_TABLE_200
45 , a32 JTF_VARCHAR2_TABLE_100
46 ) as
47 ddindx binary_integer; indx binary_integer;
48 begin
49 if a0 is not null and a0.count > 0 then
50 if a0.count > 0 then
51 indx := a0.first;
52 ddindx := 1;
53 while true loop
54 t(ddindx).space_unavailability_id := a0(indx);
55 t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a1(indx));
56 t(ddindx).last_updated_by := a2(indx);
57 t(ddindx).creation_date := rosetta_g_miss_date_in_map(a3(indx));
58 t(ddindx).created_by := a4(indx);
59 t(ddindx).last_update_login := a5(indx);
60 t(ddindx).object_version_number := a6(indx);
61 t(ddindx).organization_id := a7(indx);
62 t(ddindx).org_name := a8(indx);
63 t(ddindx).department_id := a9(indx);
64 t(ddindx).dept_description := a10(indx);
65 t(ddindx).space_id := a11(indx);
66 t(ddindx).space_name := a12(indx);
67 t(ddindx).start_date := rosetta_g_miss_date_in_map(a13(indx));
68 t(ddindx).end_date := rosetta_g_miss_date_in_map(a14(indx));
69 t(ddindx).description := a15(indx);
70 t(ddindx).attribute_category := a16(indx);
71 t(ddindx).attribute1 := a17(indx);
72 t(ddindx).attribute2 := a18(indx);
73 t(ddindx).attribute3 := a19(indx);
74 t(ddindx).attribute4 := a20(indx);
75 t(ddindx).attribute5 := a21(indx);
76 t(ddindx).attribute6 := a22(indx);
77 t(ddindx).attribute7 := a23(indx);
78 t(ddindx).attribute8 := a24(indx);
79 t(ddindx).attribute9 := a25(indx);
80 t(ddindx).attribute10 := a26(indx);
81 t(ddindx).attribute11 := a27(indx);
82 t(ddindx).attribute12 := a28(indx);
83 t(ddindx).attribute13 := a29(indx);
84 t(ddindx).attribute14 := a30(indx);
85 t(ddindx).attribute15 := a31(indx);
86 t(ddindx).operation_flag := a32(indx);
87 ddindx := ddindx+1;
88 if a0.last =indx
89 then exit;
90 end if;
91 indx := a0.next(indx);
92 end loop;
93 end if;
94 end if;
95 end rosetta_table_copy_in_p1;
96 procedure rosetta_table_copy_out_p1(t ahl_appr_space_unavl_pub.space_restriction_tbl, a0 out nocopy JTF_NUMBER_TABLE
97 , a1 out nocopy JTF_DATE_TABLE
98 , a2 out nocopy JTF_NUMBER_TABLE
99 , a3 out nocopy JTF_DATE_TABLE
100 , a4 out nocopy JTF_NUMBER_TABLE
101 , a5 out nocopy JTF_NUMBER_TABLE
102 , a6 out nocopy JTF_NUMBER_TABLE
103 , a7 out nocopy JTF_NUMBER_TABLE
104 , a8 out nocopy JTF_VARCHAR2_TABLE_300
105 , a9 out nocopy JTF_NUMBER_TABLE
106 , a10 out nocopy JTF_VARCHAR2_TABLE_300
107 , a11 out nocopy JTF_NUMBER_TABLE
108 , a12 out nocopy JTF_VARCHAR2_TABLE_100
109 , a13 out nocopy JTF_DATE_TABLE
110 , a14 out nocopy JTF_DATE_TABLE
111 , a15 out nocopy JTF_VARCHAR2_TABLE_2000
112 , a16 out nocopy JTF_VARCHAR2_TABLE_100
113 , a17 out nocopy JTF_VARCHAR2_TABLE_200
114 , a18 out nocopy JTF_VARCHAR2_TABLE_200
115 , a19 out nocopy JTF_VARCHAR2_TABLE_200
116 , a20 out nocopy JTF_VARCHAR2_TABLE_200
117 , a21 out nocopy JTF_VARCHAR2_TABLE_200
118 , a22 out nocopy JTF_VARCHAR2_TABLE_200
119 , a23 out nocopy JTF_VARCHAR2_TABLE_200
120 , a24 out nocopy JTF_VARCHAR2_TABLE_200
121 , a25 out nocopy JTF_VARCHAR2_TABLE_200
122 , a26 out nocopy JTF_VARCHAR2_TABLE_200
123 , a27 out nocopy JTF_VARCHAR2_TABLE_200
124 , a28 out nocopy JTF_VARCHAR2_TABLE_200
125 , a29 out nocopy JTF_VARCHAR2_TABLE_200
126 , a30 out nocopy JTF_VARCHAR2_TABLE_200
127 , a31 out nocopy JTF_VARCHAR2_TABLE_200
128 , a32 out nocopy JTF_VARCHAR2_TABLE_100
129 ) as
130 ddindx binary_integer; indx binary_integer;
131 begin
132 if t is null or t.count = 0 then
133 a0 := JTF_NUMBER_TABLE();
134 a1 := JTF_DATE_TABLE();
135 a2 := JTF_NUMBER_TABLE();
136 a3 := JTF_DATE_TABLE();
137 a4 := JTF_NUMBER_TABLE();
138 a5 := JTF_NUMBER_TABLE();
139 a6 := JTF_NUMBER_TABLE();
140 a7 := JTF_NUMBER_TABLE();
141 a8 := JTF_VARCHAR2_TABLE_300();
142 a9 := JTF_NUMBER_TABLE();
143 a10 := JTF_VARCHAR2_TABLE_300();
144 a11 := JTF_NUMBER_TABLE();
145 a12 := JTF_VARCHAR2_TABLE_100();
146 a13 := JTF_DATE_TABLE();
147 a14 := JTF_DATE_TABLE();
148 a15 := JTF_VARCHAR2_TABLE_2000();
149 a16 := JTF_VARCHAR2_TABLE_100();
150 a17 := JTF_VARCHAR2_TABLE_200();
151 a18 := JTF_VARCHAR2_TABLE_200();
152 a19 := JTF_VARCHAR2_TABLE_200();
153 a20 := JTF_VARCHAR2_TABLE_200();
154 a21 := JTF_VARCHAR2_TABLE_200();
155 a22 := JTF_VARCHAR2_TABLE_200();
156 a23 := JTF_VARCHAR2_TABLE_200();
157 a24 := JTF_VARCHAR2_TABLE_200();
158 a25 := JTF_VARCHAR2_TABLE_200();
159 a26 := JTF_VARCHAR2_TABLE_200();
160 a27 := JTF_VARCHAR2_TABLE_200();
161 a28 := JTF_VARCHAR2_TABLE_200();
162 a29 := JTF_VARCHAR2_TABLE_200();
163 a30 := JTF_VARCHAR2_TABLE_200();
164 a31 := JTF_VARCHAR2_TABLE_200();
165 a32 := JTF_VARCHAR2_TABLE_100();
166 else
167 a0 := JTF_NUMBER_TABLE();
168 a1 := JTF_DATE_TABLE();
169 a2 := JTF_NUMBER_TABLE();
170 a3 := JTF_DATE_TABLE();
171 a4 := JTF_NUMBER_TABLE();
172 a5 := JTF_NUMBER_TABLE();
173 a6 := JTF_NUMBER_TABLE();
174 a7 := JTF_NUMBER_TABLE();
175 a8 := JTF_VARCHAR2_TABLE_300();
176 a9 := JTF_NUMBER_TABLE();
177 a10 := JTF_VARCHAR2_TABLE_300();
178 a11 := JTF_NUMBER_TABLE();
179 a12 := JTF_VARCHAR2_TABLE_100();
180 a13 := JTF_DATE_TABLE();
181 a14 := JTF_DATE_TABLE();
182 a15 := JTF_VARCHAR2_TABLE_2000();
183 a16 := JTF_VARCHAR2_TABLE_100();
184 a17 := JTF_VARCHAR2_TABLE_200();
185 a18 := JTF_VARCHAR2_TABLE_200();
186 a19 := JTF_VARCHAR2_TABLE_200();
187 a20 := JTF_VARCHAR2_TABLE_200();
188 a21 := JTF_VARCHAR2_TABLE_200();
189 a22 := JTF_VARCHAR2_TABLE_200();
190 a23 := JTF_VARCHAR2_TABLE_200();
191 a24 := JTF_VARCHAR2_TABLE_200();
192 a25 := JTF_VARCHAR2_TABLE_200();
193 a26 := JTF_VARCHAR2_TABLE_200();
194 a27 := JTF_VARCHAR2_TABLE_200();
195 a28 := JTF_VARCHAR2_TABLE_200();
196 a29 := JTF_VARCHAR2_TABLE_200();
197 a30 := JTF_VARCHAR2_TABLE_200();
198 a31 := JTF_VARCHAR2_TABLE_200();
199 a32 := JTF_VARCHAR2_TABLE_100();
200 if t.count > 0 then
201 a0.extend(t.count);
202 a1.extend(t.count);
203 a2.extend(t.count);
204 a3.extend(t.count);
205 a4.extend(t.count);
206 a5.extend(t.count);
207 a6.extend(t.count);
208 a7.extend(t.count);
209 a8.extend(t.count);
210 a9.extend(t.count);
211 a10.extend(t.count);
212 a11.extend(t.count);
213 a12.extend(t.count);
214 a13.extend(t.count);
215 a14.extend(t.count);
216 a15.extend(t.count);
217 a16.extend(t.count);
218 a17.extend(t.count);
219 a18.extend(t.count);
220 a19.extend(t.count);
221 a20.extend(t.count);
222 a21.extend(t.count);
223 a22.extend(t.count);
224 a23.extend(t.count);
225 a24.extend(t.count);
226 a25.extend(t.count);
227 a26.extend(t.count);
228 a27.extend(t.count);
229 a28.extend(t.count);
230 a29.extend(t.count);
231 a30.extend(t.count);
232 a31.extend(t.count);
233 a32.extend(t.count);
234 ddindx := t.first;
235 indx := 1;
236 while true loop
237 a0(indx) := t(ddindx).space_unavailability_id;
238 a1(indx) := t(ddindx).last_update_date;
239 a2(indx) := t(ddindx).last_updated_by;
240 a3(indx) := t(ddindx).creation_date;
241 a4(indx) := t(ddindx).created_by;
242 a5(indx) := t(ddindx).last_update_login;
243 a6(indx) := t(ddindx).object_version_number;
244 a7(indx) := t(ddindx).organization_id;
245 a8(indx) := t(ddindx).org_name;
246 a9(indx) := t(ddindx).department_id;
247 a10(indx) := t(ddindx).dept_description;
248 a11(indx) := t(ddindx).space_id;
249 a12(indx) := t(ddindx).space_name;
250 a13(indx) := t(ddindx).start_date;
251 a14(indx) := t(ddindx).end_date;
252 a15(indx) := t(ddindx).description;
253 a16(indx) := t(ddindx).attribute_category;
254 a17(indx) := t(ddindx).attribute1;
255 a18(indx) := t(ddindx).attribute2;
256 a19(indx) := t(ddindx).attribute3;
257 a20(indx) := t(ddindx).attribute4;
258 a21(indx) := t(ddindx).attribute5;
259 a22(indx) := t(ddindx).attribute6;
260 a23(indx) := t(ddindx).attribute7;
261 a24(indx) := t(ddindx).attribute8;
262 a25(indx) := t(ddindx).attribute9;
263 a26(indx) := t(ddindx).attribute10;
264 a27(indx) := t(ddindx).attribute11;
265 a28(indx) := t(ddindx).attribute12;
266 a29(indx) := t(ddindx).attribute13;
267 a30(indx) := t(ddindx).attribute14;
268 a31(indx) := t(ddindx).attribute15;
269 a32(indx) := t(ddindx).operation_flag;
270 indx := indx+1;
271 if t.last =ddindx
272 then exit;
273 end if;
274 ddindx := t.next(ddindx);
275 end loop;
276 end if;
277 end if;
278 end rosetta_table_copy_out_p1;
279
280 procedure process_space_restriction(p_api_version NUMBER
281 , p_init_msg_list VARCHAR2
282 , p_commit VARCHAR2
283 , p_validation_level NUMBER
284 , p_module_type VARCHAR2
285 , p5_a0 in out nocopy JTF_NUMBER_TABLE
286 , p5_a1 in out nocopy JTF_DATE_TABLE
287 , p5_a2 in out nocopy JTF_NUMBER_TABLE
288 , p5_a3 in out nocopy JTF_DATE_TABLE
289 , p5_a4 in out nocopy JTF_NUMBER_TABLE
290 , p5_a5 in out nocopy JTF_NUMBER_TABLE
291 , p5_a6 in out nocopy JTF_NUMBER_TABLE
292 , p5_a7 in out nocopy JTF_NUMBER_TABLE
293 , p5_a8 in out nocopy JTF_VARCHAR2_TABLE_300
294 , p5_a9 in out nocopy JTF_NUMBER_TABLE
295 , p5_a10 in out nocopy JTF_VARCHAR2_TABLE_300
296 , p5_a11 in out nocopy JTF_NUMBER_TABLE
297 , p5_a12 in out nocopy JTF_VARCHAR2_TABLE_100
298 , p5_a13 in out nocopy JTF_DATE_TABLE
299 , p5_a14 in out nocopy JTF_DATE_TABLE
300 , p5_a15 in out nocopy JTF_VARCHAR2_TABLE_2000
301 , p5_a16 in out nocopy JTF_VARCHAR2_TABLE_100
302 , p5_a17 in out nocopy JTF_VARCHAR2_TABLE_200
303 , p5_a18 in out nocopy JTF_VARCHAR2_TABLE_200
304 , p5_a19 in out nocopy JTF_VARCHAR2_TABLE_200
305 , p5_a20 in out nocopy JTF_VARCHAR2_TABLE_200
306 , p5_a21 in out nocopy JTF_VARCHAR2_TABLE_200
307 , p5_a22 in out nocopy JTF_VARCHAR2_TABLE_200
308 , p5_a23 in out nocopy JTF_VARCHAR2_TABLE_200
309 , p5_a24 in out nocopy JTF_VARCHAR2_TABLE_200
310 , p5_a25 in out nocopy JTF_VARCHAR2_TABLE_200
311 , p5_a26 in out nocopy JTF_VARCHAR2_TABLE_200
312 , p5_a27 in out nocopy JTF_VARCHAR2_TABLE_200
313 , p5_a28 in out nocopy JTF_VARCHAR2_TABLE_200
314 , p5_a29 in out nocopy JTF_VARCHAR2_TABLE_200
315 , p5_a30 in out nocopy JTF_VARCHAR2_TABLE_200
316 , p5_a31 in out nocopy JTF_VARCHAR2_TABLE_200
317 , p5_a32 in out nocopy JTF_VARCHAR2_TABLE_100
318 , x_return_status out nocopy VARCHAR2
319 , x_msg_count out nocopy NUMBER
320 , x_msg_data out nocopy VARCHAR2
321 )
322
323 as
324 ddp_x_space_restriction_tbl ahl_appr_space_unavl_pub.space_restriction_tbl;
325 ddindx binary_integer; indx binary_integer;
326 begin
327
328 -- copy data to the local IN or IN-OUT args, if any
329
330
331
332
333
334 ahl_appr_space_unavl_pub_w.rosetta_table_copy_in_p1(ddp_x_space_restriction_tbl, p5_a0
335 , p5_a1
336 , p5_a2
337 , p5_a3
338 , p5_a4
339 , p5_a5
340 , p5_a6
341 , p5_a7
342 , p5_a8
343 , p5_a9
344 , p5_a10
345 , p5_a11
346 , p5_a12
347 , p5_a13
348 , p5_a14
349 , p5_a15
350 , p5_a16
351 , p5_a17
352 , p5_a18
353 , p5_a19
354 , p5_a20
355 , p5_a21
356 , p5_a22
357 , p5_a23
358 , p5_a24
359 , p5_a25
360 , p5_a26
361 , p5_a27
362 , p5_a28
363 , p5_a29
364 , p5_a30
365 , p5_a31
366 , p5_a32
367 );
368
369
370
371
372 -- here's the delegated call to the old PL/SQL routine
373 ahl_appr_space_unavl_pub.process_space_restriction(p_api_version,
374 p_init_msg_list,
375 p_commit,
376 p_validation_level,
377 p_module_type,
378 ddp_x_space_restriction_tbl,
379 x_return_status,
380 x_msg_count,
381 x_msg_data);
382
383 -- copy data back from the local variables to OUT or IN-OUT args, if any
384
385
386
387
388
389 ahl_appr_space_unavl_pub_w.rosetta_table_copy_out_p1(ddp_x_space_restriction_tbl, p5_a0
390 , p5_a1
391 , p5_a2
392 , p5_a3
393 , p5_a4
394 , p5_a5
395 , p5_a6
396 , p5_a7
397 , p5_a8
398 , p5_a9
399 , p5_a10
400 , p5_a11
401 , p5_a12
402 , p5_a13
403 , p5_a14
404 , p5_a15
405 , p5_a16
406 , p5_a17
407 , p5_a18
408 , p5_a19
409 , p5_a20
410 , p5_a21
411 , p5_a22
412 , p5_a23
413 , p5_a24
414 , p5_a25
415 , p5_a26
416 , p5_a27
417 , p5_a28
418 , p5_a29
419 , p5_a30
420 , p5_a31
421 , p5_a32
422 );
423
424
425
426 end;
427
428 end ahl_appr_space_unavl_pub_w;