[Home] [Help]
PACKAGE BODY: APPS.AHL_LTP_SIMUL_PLAN_PUB_W
Source
1 package body ahl_ltp_simul_plan_pub_w as
2 /* $Header: AHLWSPNB.pls 115.4 2002/12/04 19:22:54 ssurapan 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_ltp_simul_plan_pub.simulation_plan_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_VARCHAR2_TABLE_100
20 , a7 JTF_VARCHAR2_TABLE_100
21 , a8 JTF_VARCHAR2_TABLE_300
22 , a9 JTF_NUMBER_TABLE
23 , a10 JTF_VARCHAR2_TABLE_100
24 , a11 JTF_VARCHAR2_TABLE_200
25 , a12 JTF_VARCHAR2_TABLE_200
26 , a13 JTF_VARCHAR2_TABLE_200
27 , a14 JTF_VARCHAR2_TABLE_200
28 , a15 JTF_VARCHAR2_TABLE_200
29 , a16 JTF_VARCHAR2_TABLE_200
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_100
40 ) as
41 ddindx binary_integer; indx binary_integer;
42 begin
43 if a0 is not null and a0.count > 0 then
44 if a0.count > 0 then
45 indx := a0.first;
46 ddindx := 1;
47 while true loop
48 t(ddindx).plan_id := a0(indx);
49 t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a1(indx));
50 t(ddindx).last_updated_by := a2(indx);
51 t(ddindx).creation_date := rosetta_g_miss_date_in_map(a3(indx));
52 t(ddindx).created_by := a4(indx);
53 t(ddindx).last_update_login := a5(indx);
54 t(ddindx).primary_plan_flag := a6(indx);
55 t(ddindx).plan_name := a7(indx);
56 t(ddindx).description := a8(indx);
57 t(ddindx).object_version_number := a9(indx);
58 t(ddindx).attribute_category := a10(indx);
59 t(ddindx).attribute1 := a11(indx);
60 t(ddindx).attribute2 := a12(indx);
61 t(ddindx).attribute3 := a13(indx);
62 t(ddindx).attribute4 := a14(indx);
63 t(ddindx).attribute5 := a15(indx);
64 t(ddindx).attribute6 := a16(indx);
65 t(ddindx).attribute7 := a17(indx);
66 t(ddindx).attribute8 := a18(indx);
67 t(ddindx).attribute9 := a19(indx);
68 t(ddindx).attribute10 := a20(indx);
69 t(ddindx).attribute11 := a21(indx);
70 t(ddindx).attribute12 := a22(indx);
71 t(ddindx).attribute13 := a23(indx);
72 t(ddindx).attribute14 := a24(indx);
73 t(ddindx).attribute15 := a25(indx);
74 t(ddindx).operation_flag := a26(indx);
75 ddindx := ddindx+1;
76 if a0.last =indx
77 then exit;
78 end if;
79 indx := a0.next(indx);
80 end loop;
81 end if;
82 end if;
83 end rosetta_table_copy_in_p1;
84 procedure rosetta_table_copy_out_p1(t ahl_ltp_simul_plan_pub.simulation_plan_tbl, a0 out nocopy JTF_NUMBER_TABLE
85 , a1 out nocopy JTF_DATE_TABLE
86 , a2 out nocopy JTF_NUMBER_TABLE
87 , a3 out nocopy JTF_DATE_TABLE
88 , a4 out nocopy JTF_NUMBER_TABLE
89 , a5 out nocopy JTF_NUMBER_TABLE
90 , a6 out nocopy JTF_VARCHAR2_TABLE_100
91 , a7 out nocopy JTF_VARCHAR2_TABLE_100
92 , a8 out nocopy JTF_VARCHAR2_TABLE_300
93 , a9 out nocopy JTF_NUMBER_TABLE
94 , a10 out nocopy JTF_VARCHAR2_TABLE_100
95 , a11 out nocopy JTF_VARCHAR2_TABLE_200
96 , a12 out nocopy JTF_VARCHAR2_TABLE_200
97 , a13 out nocopy JTF_VARCHAR2_TABLE_200
98 , a14 out nocopy JTF_VARCHAR2_TABLE_200
99 , a15 out nocopy JTF_VARCHAR2_TABLE_200
100 , a16 out nocopy JTF_VARCHAR2_TABLE_200
101 , a17 out nocopy JTF_VARCHAR2_TABLE_200
102 , a18 out nocopy JTF_VARCHAR2_TABLE_200
103 , a19 out nocopy JTF_VARCHAR2_TABLE_200
104 , a20 out nocopy JTF_VARCHAR2_TABLE_200
105 , a21 out nocopy JTF_VARCHAR2_TABLE_200
106 , a22 out nocopy JTF_VARCHAR2_TABLE_200
107 , a23 out nocopy JTF_VARCHAR2_TABLE_200
108 , a24 out nocopy JTF_VARCHAR2_TABLE_200
109 , a25 out nocopy JTF_VARCHAR2_TABLE_200
110 , a26 out nocopy JTF_VARCHAR2_TABLE_100
111 ) as
112 ddindx binary_integer; indx binary_integer;
113 begin
114 if t is null or t.count = 0 then
115 a0 := JTF_NUMBER_TABLE();
116 a1 := JTF_DATE_TABLE();
117 a2 := JTF_NUMBER_TABLE();
118 a3 := JTF_DATE_TABLE();
119 a4 := JTF_NUMBER_TABLE();
120 a5 := JTF_NUMBER_TABLE();
121 a6 := JTF_VARCHAR2_TABLE_100();
122 a7 := JTF_VARCHAR2_TABLE_100();
123 a8 := JTF_VARCHAR2_TABLE_300();
124 a9 := JTF_NUMBER_TABLE();
125 a10 := JTF_VARCHAR2_TABLE_100();
126 a11 := JTF_VARCHAR2_TABLE_200();
127 a12 := JTF_VARCHAR2_TABLE_200();
128 a13 := JTF_VARCHAR2_TABLE_200();
129 a14 := JTF_VARCHAR2_TABLE_200();
130 a15 := JTF_VARCHAR2_TABLE_200();
131 a16 := JTF_VARCHAR2_TABLE_200();
132 a17 := JTF_VARCHAR2_TABLE_200();
133 a18 := JTF_VARCHAR2_TABLE_200();
134 a19 := JTF_VARCHAR2_TABLE_200();
135 a20 := JTF_VARCHAR2_TABLE_200();
136 a21 := JTF_VARCHAR2_TABLE_200();
137 a22 := JTF_VARCHAR2_TABLE_200();
138 a23 := JTF_VARCHAR2_TABLE_200();
139 a24 := JTF_VARCHAR2_TABLE_200();
140 a25 := JTF_VARCHAR2_TABLE_200();
141 a26 := JTF_VARCHAR2_TABLE_100();
142 else
143 a0 := JTF_NUMBER_TABLE();
144 a1 := JTF_DATE_TABLE();
145 a2 := JTF_NUMBER_TABLE();
146 a3 := JTF_DATE_TABLE();
147 a4 := JTF_NUMBER_TABLE();
148 a5 := JTF_NUMBER_TABLE();
149 a6 := JTF_VARCHAR2_TABLE_100();
150 a7 := JTF_VARCHAR2_TABLE_100();
151 a8 := JTF_VARCHAR2_TABLE_300();
152 a9 := JTF_NUMBER_TABLE();
153 a10 := JTF_VARCHAR2_TABLE_100();
154 a11 := JTF_VARCHAR2_TABLE_200();
155 a12 := JTF_VARCHAR2_TABLE_200();
156 a13 := JTF_VARCHAR2_TABLE_200();
157 a14 := JTF_VARCHAR2_TABLE_200();
158 a15 := JTF_VARCHAR2_TABLE_200();
159 a16 := JTF_VARCHAR2_TABLE_200();
160 a17 := JTF_VARCHAR2_TABLE_200();
161 a18 := JTF_VARCHAR2_TABLE_200();
162 a19 := JTF_VARCHAR2_TABLE_200();
163 a20 := JTF_VARCHAR2_TABLE_200();
164 a21 := JTF_VARCHAR2_TABLE_200();
165 a22 := JTF_VARCHAR2_TABLE_200();
166 a23 := JTF_VARCHAR2_TABLE_200();
167 a24 := JTF_VARCHAR2_TABLE_200();
168 a25 := JTF_VARCHAR2_TABLE_200();
169 a26 := JTF_VARCHAR2_TABLE_100();
170 if t.count > 0 then
171 a0.extend(t.count);
172 a1.extend(t.count);
173 a2.extend(t.count);
174 a3.extend(t.count);
175 a4.extend(t.count);
176 a5.extend(t.count);
177 a6.extend(t.count);
178 a7.extend(t.count);
179 a8.extend(t.count);
180 a9.extend(t.count);
181 a10.extend(t.count);
182 a11.extend(t.count);
183 a12.extend(t.count);
184 a13.extend(t.count);
185 a14.extend(t.count);
186 a15.extend(t.count);
187 a16.extend(t.count);
188 a17.extend(t.count);
189 a18.extend(t.count);
190 a19.extend(t.count);
191 a20.extend(t.count);
192 a21.extend(t.count);
193 a22.extend(t.count);
194 a23.extend(t.count);
195 a24.extend(t.count);
196 a25.extend(t.count);
197 a26.extend(t.count);
198 ddindx := t.first;
199 indx := 1;
200 while true loop
201 a0(indx) := t(ddindx).plan_id;
202 a1(indx) := t(ddindx).last_update_date;
203 a2(indx) := t(ddindx).last_updated_by;
204 a3(indx) := t(ddindx).creation_date;
205 a4(indx) := t(ddindx).created_by;
206 a5(indx) := t(ddindx).last_update_login;
207 a6(indx) := t(ddindx).primary_plan_flag;
208 a7(indx) := t(ddindx).plan_name;
209 a8(indx) := t(ddindx).description;
210 a9(indx) := t(ddindx).object_version_number;
211 a10(indx) := t(ddindx).attribute_category;
212 a11(indx) := t(ddindx).attribute1;
213 a12(indx) := t(ddindx).attribute2;
214 a13(indx) := t(ddindx).attribute3;
215 a14(indx) := t(ddindx).attribute4;
216 a15(indx) := t(ddindx).attribute5;
217 a16(indx) := t(ddindx).attribute6;
218 a17(indx) := t(ddindx).attribute7;
219 a18(indx) := t(ddindx).attribute8;
220 a19(indx) := t(ddindx).attribute9;
221 a20(indx) := t(ddindx).attribute10;
222 a21(indx) := t(ddindx).attribute11;
223 a22(indx) := t(ddindx).attribute12;
224 a23(indx) := t(ddindx).attribute13;
225 a24(indx) := t(ddindx).attribute14;
226 a25(indx) := t(ddindx).attribute15;
227 a26(indx) := t(ddindx).operation_flag;
228 indx := indx+1;
229 if t.last =ddindx
230 then exit;
231 end if;
232 ddindx := t.next(ddindx);
233 end loop;
234 end if;
235 end if;
236 end rosetta_table_copy_out_p1;
237
238 procedure rosetta_table_copy_in_p3(t out nocopy ahl_ltp_simul_plan_pub.simulation_visit_tbl, a0 JTF_NUMBER_TABLE
239 , a1 JTF_NUMBER_TABLE
240 , a2 JTF_NUMBER_TABLE
241 , a3 JTF_VARCHAR2_TABLE_100
242 , a4 JTF_NUMBER_TABLE
243 , a5 JTF_NUMBER_TABLE
244 , a6 JTF_NUMBER_TABLE
245 , a7 JTF_NUMBER_TABLE
246 , a8 JTF_VARCHAR2_TABLE_100
247 ) as
248 ddindx binary_integer; indx binary_integer;
249 begin
250 if a0 is not null and a0.count > 0 then
251 if a0.count > 0 then
252 indx := a0.first;
253 ddindx := 1;
254 while true loop
255 t(ddindx).primary_visit_id := a0(indx);
256 t(ddindx).primary_ovn := a1(indx);
257 t(ddindx).plan_id := a2(indx);
258 t(ddindx).plan_name := a3(indx);
259 t(ddindx).plan_ovn := a4(indx);
260 t(ddindx).visit_id := a5(indx);
261 t(ddindx).primary_visit_number := a6(indx);
262 t(ddindx).visit_ovn := a7(indx);
263 t(ddindx).operation_flag := a8(indx);
264 ddindx := ddindx+1;
265 if a0.last =indx
266 then exit;
267 end if;
268 indx := a0.next(indx);
269 end loop;
270 end if;
271 end if;
272 end rosetta_table_copy_in_p3;
273 procedure rosetta_table_copy_out_p3(t ahl_ltp_simul_plan_pub.simulation_visit_tbl, a0 out nocopy JTF_NUMBER_TABLE
274 , a1 out nocopy JTF_NUMBER_TABLE
275 , a2 out nocopy JTF_NUMBER_TABLE
276 , a3 out nocopy JTF_VARCHAR2_TABLE_100
277 , a4 out nocopy JTF_NUMBER_TABLE
278 , a5 out nocopy JTF_NUMBER_TABLE
279 , a6 out nocopy JTF_NUMBER_TABLE
280 , a7 out nocopy JTF_NUMBER_TABLE
281 , a8 out nocopy JTF_VARCHAR2_TABLE_100
282 ) as
283 ddindx binary_integer; indx binary_integer;
284 begin
285 if t is null or t.count = 0 then
286 a0 := JTF_NUMBER_TABLE();
287 a1 := JTF_NUMBER_TABLE();
288 a2 := JTF_NUMBER_TABLE();
289 a3 := JTF_VARCHAR2_TABLE_100();
290 a4 := JTF_NUMBER_TABLE();
291 a5 := JTF_NUMBER_TABLE();
292 a6 := JTF_NUMBER_TABLE();
293 a7 := JTF_NUMBER_TABLE();
294 a8 := JTF_VARCHAR2_TABLE_100();
295 else
296 a0 := JTF_NUMBER_TABLE();
297 a1 := JTF_NUMBER_TABLE();
298 a2 := JTF_NUMBER_TABLE();
299 a3 := JTF_VARCHAR2_TABLE_100();
300 a4 := JTF_NUMBER_TABLE();
301 a5 := JTF_NUMBER_TABLE();
302 a6 := JTF_NUMBER_TABLE();
303 a7 := JTF_NUMBER_TABLE();
304 a8 := JTF_VARCHAR2_TABLE_100();
305 if t.count > 0 then
306 a0.extend(t.count);
307 a1.extend(t.count);
308 a2.extend(t.count);
309 a3.extend(t.count);
310 a4.extend(t.count);
311 a5.extend(t.count);
312 a6.extend(t.count);
313 a7.extend(t.count);
314 a8.extend(t.count);
315 ddindx := t.first;
316 indx := 1;
317 while true loop
318 a0(indx) := t(ddindx).primary_visit_id;
319 a1(indx) := t(ddindx).primary_ovn;
320 a2(indx) := t(ddindx).plan_id;
321 a3(indx) := t(ddindx).plan_name;
322 a4(indx) := t(ddindx).plan_ovn;
323 a5(indx) := t(ddindx).visit_id;
324 a6(indx) := t(ddindx).primary_visit_number;
325 a7(indx) := t(ddindx).visit_ovn;
326 a8(indx) := t(ddindx).operation_flag;
327 indx := indx+1;
328 if t.last =ddindx
329 then exit;
330 end if;
331 ddindx := t.next(ddindx);
332 end loop;
333 end if;
334 end if;
335 end rosetta_table_copy_out_p3;
336
337 procedure process_simulation_plan(p_api_version NUMBER
338 , p_init_msg_list VARCHAR2
339 , p_commit VARCHAR2
340 , p_validation_level NUMBER
341 , p_module_type VARCHAR2
342 , p5_a0 in out nocopy JTF_NUMBER_TABLE
343 , p5_a1 in out nocopy JTF_DATE_TABLE
344 , p5_a2 in out nocopy JTF_NUMBER_TABLE
348 , p5_a6 in out nocopy JTF_VARCHAR2_TABLE_100
345 , p5_a3 in out nocopy JTF_DATE_TABLE
346 , p5_a4 in out nocopy JTF_NUMBER_TABLE
347 , p5_a5 in out nocopy JTF_NUMBER_TABLE
349 , p5_a7 in out nocopy JTF_VARCHAR2_TABLE_100
350 , p5_a8 in out nocopy JTF_VARCHAR2_TABLE_300
351 , p5_a9 in out nocopy JTF_NUMBER_TABLE
352 , p5_a10 in out nocopy JTF_VARCHAR2_TABLE_100
353 , p5_a11 in out nocopy JTF_VARCHAR2_TABLE_200
354 , p5_a12 in out nocopy JTF_VARCHAR2_TABLE_200
355 , p5_a13 in out nocopy JTF_VARCHAR2_TABLE_200
356 , p5_a14 in out nocopy JTF_VARCHAR2_TABLE_200
357 , p5_a15 in out nocopy JTF_VARCHAR2_TABLE_200
358 , p5_a16 in out nocopy JTF_VARCHAR2_TABLE_200
359 , p5_a17 in out nocopy JTF_VARCHAR2_TABLE_200
360 , p5_a18 in out nocopy JTF_VARCHAR2_TABLE_200
361 , p5_a19 in out nocopy JTF_VARCHAR2_TABLE_200
362 , p5_a20 in out nocopy JTF_VARCHAR2_TABLE_200
363 , p5_a21 in out nocopy JTF_VARCHAR2_TABLE_200
364 , p5_a22 in out nocopy JTF_VARCHAR2_TABLE_200
365 , p5_a23 in out nocopy JTF_VARCHAR2_TABLE_200
366 , p5_a24 in out nocopy JTF_VARCHAR2_TABLE_200
367 , p5_a25 in out nocopy JTF_VARCHAR2_TABLE_200
368 , p5_a26 in out nocopy JTF_VARCHAR2_TABLE_100
369 , x_return_status out nocopy VARCHAR2
370 , x_msg_count out nocopy NUMBER
371 , x_msg_data out nocopy VARCHAR2
372 )
373
374 as
375 ddp_x_simulation_plan_tbl ahl_ltp_simul_plan_pub.simulation_plan_tbl;
376 ddindx binary_integer; indx binary_integer;
377 begin
378
379 -- copy data to the local IN or IN-OUT args, if any
380
381
382
383
384
385 ahl_ltp_simul_plan_pub_w.rosetta_table_copy_in_p1(ddp_x_simulation_plan_tbl, p5_a0
386 , p5_a1
387 , p5_a2
388 , p5_a3
389 , p5_a4
390 , p5_a5
391 , p5_a6
392 , p5_a7
393 , p5_a8
394 , p5_a9
395 , p5_a10
396 , p5_a11
397 , p5_a12
398 , p5_a13
399 , p5_a14
400 , p5_a15
401 , p5_a16
402 , p5_a17
403 , p5_a18
404 , p5_a19
405 , p5_a20
406 , p5_a21
407 , p5_a22
408 , p5_a23
409 , p5_a24
410 , p5_a25
411 , p5_a26
412 );
413
414
415
416
417 -- here's the delegated call to the old PL/SQL routine
418 ahl_ltp_simul_plan_pub.process_simulation_plan(p_api_version,
419 p_init_msg_list,
420 p_commit,
421 p_validation_level,
422 p_module_type,
423 ddp_x_simulation_plan_tbl,
424 x_return_status,
425 x_msg_count,
426 x_msg_data);
427
428 -- copy data back from the local variables to OUT or IN-OUT args, if any
429
430
431
432
433
434 ahl_ltp_simul_plan_pub_w.rosetta_table_copy_out_p1(ddp_x_simulation_plan_tbl, p5_a0
435 , p5_a1
436 , p5_a2
437 , p5_a3
438 , p5_a4
439 , p5_a5
440 , p5_a6
441 , p5_a7
442 , p5_a8
443 , p5_a9
444 , p5_a10
445 , p5_a11
446 , p5_a12
447 , p5_a13
448 , p5_a14
449 , p5_a15
450 , p5_a16
451 , p5_a17
452 , p5_a18
453 , p5_a19
454 , p5_a20
455 , p5_a21
456 , p5_a22
457 , p5_a23
458 , p5_a24
459 , p5_a25
460 , p5_a26
461 );
462
463
464
465 end;
466
467 procedure process_simulation_visit(p_api_version NUMBER
468 , p_init_msg_list VARCHAR2
469 , p_commit VARCHAR2
470 , p_validation_level NUMBER
471 , p_module_type VARCHAR2
472 , p5_a0 in out nocopy JTF_NUMBER_TABLE
473 , p5_a1 in out nocopy JTF_NUMBER_TABLE
474 , p5_a2 in out nocopy JTF_NUMBER_TABLE
475 , p5_a3 in out nocopy JTF_VARCHAR2_TABLE_100
476 , p5_a4 in out nocopy JTF_NUMBER_TABLE
477 , p5_a5 in out nocopy JTF_NUMBER_TABLE
478 , p5_a6 in out nocopy JTF_NUMBER_TABLE
479 , p5_a7 in out nocopy JTF_NUMBER_TABLE
480 , p5_a8 in out nocopy JTF_VARCHAR2_TABLE_100
481 , x_return_status out nocopy VARCHAR2
482 , x_msg_count out nocopy NUMBER
483 , x_msg_data out nocopy VARCHAR2
484 )
485
486 as
487 ddp_simulation_visit_tbl ahl_ltp_simul_plan_pub.simulation_visit_tbl;
488 ddindx binary_integer; indx binary_integer;
489 begin
490
491 -- copy data to the local IN or IN-OUT args, if any
492
493
494
495
496
497 ahl_ltp_simul_plan_pub_w.rosetta_table_copy_in_p3(ddp_simulation_visit_tbl, p5_a0
498 , p5_a1
499 , p5_a2
500 , p5_a3
501 , p5_a4
502 , p5_a5
503 , p5_a6
504 , p5_a7
505 , p5_a8
506 );
507
508
509
510
511 -- here's the delegated call to the old PL/SQL routine
512 ahl_ltp_simul_plan_pub.process_simulation_visit(p_api_version,
513 p_init_msg_list,
514 p_commit,
515 p_validation_level,
516 p_module_type,
517 ddp_simulation_visit_tbl,
518 x_return_status,
519 x_msg_count,
520 x_msg_data);
521
525
522 -- copy data back from the local variables to OUT or IN-OUT args, if any
523
524
526
527
528 ahl_ltp_simul_plan_pub_w.rosetta_table_copy_out_p3(ddp_simulation_visit_tbl, p5_a0
529 , p5_a1
530 , p5_a2
531 , p5_a3
532 , p5_a4
533 , p5_a5
534 , p5_a6
535 , p5_a7
536 , p5_a8
537 );
538
539
540
541 end;
542
543 end ahl_ltp_simul_plan_pub_w;