[Home] [Help]
PACKAGE BODY: APPS.JTF_CALENDAR_PUB_W
Source
1 package body jtf_calendar_pub_w as
2 /* $Header: jtfclawb.pls 120.2 2005/12/30 03:06 abraina ship $ */
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 jtf_calendar_pub.shift_tbl_type, a0 JTF_NUMBER_TABLE
14 , a1 JTF_DATE_TABLE
15 , a2 JTF_VARCHAR2_TABLE_100
16 , a3 JTF_VARCHAR2_TABLE_100
17 , a4 JTF_VARCHAR2_TABLE_100
18 ) as
19 ddindx binary_integer; indx binary_integer;
20 begin
21 if a0 is not null and a0.count > 0 then
22 if a0.count > 0 then
23 indx := a0.first;
24 ddindx := 1;
25 while true loop
26 t(ddindx).shift_construct_id := a0(indx);
27 t(ddindx).shift_date := rosetta_g_miss_date_in_map(a1(indx));
28 t(ddindx).start_time := a2(indx);
29 t(ddindx).end_time := a3(indx);
30 t(ddindx).availability_type := a4(indx);
31 ddindx := ddindx+1;
32 if a0.last =indx
33 then exit;
34 end if;
35 indx := a0.next(indx);
36 end loop;
37 end if;
38 end if;
39 end rosetta_table_copy_in_p1;
40 procedure rosetta_table_copy_out_p1(t jtf_calendar_pub.shift_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
41 , a1 out nocopy JTF_DATE_TABLE
42 , a2 out nocopy JTF_VARCHAR2_TABLE_100
43 , a3 out nocopy JTF_VARCHAR2_TABLE_100
44 , a4 out nocopy JTF_VARCHAR2_TABLE_100
45 ) as
46 ddindx binary_integer; indx binary_integer;
47 begin
48 if t is null or t.count = 0 then
49 a0 := JTF_NUMBER_TABLE();
50 a1 := JTF_DATE_TABLE();
51 a2 := JTF_VARCHAR2_TABLE_100();
52 a3 := JTF_VARCHAR2_TABLE_100();
53 a4 := JTF_VARCHAR2_TABLE_100();
54 else
55 a0 := JTF_NUMBER_TABLE();
56 a1 := JTF_DATE_TABLE();
57 a2 := JTF_VARCHAR2_TABLE_100();
58 a3 := JTF_VARCHAR2_TABLE_100();
59 a4 := JTF_VARCHAR2_TABLE_100();
60 if t.count > 0 then
61 a0.extend(t.count);
62 a1.extend(t.count);
63 a2.extend(t.count);
64 a3.extend(t.count);
65 a4.extend(t.count);
66 ddindx := t.first;
67 indx := 1;
68 while true loop
69 a0(indx) := t(ddindx).shift_construct_id;
70 a1(indx) := t(ddindx).shift_date;
71 a2(indx) := t(ddindx).start_time;
72 a3(indx) := t(ddindx).end_time;
73 a4(indx) := t(ddindx).availability_type;
74 indx := indx+1;
75 if t.last =ddindx
76 then exit;
77 end if;
78 ddindx := t.next(ddindx);
79 end loop;
80 end if;
81 end if;
82 end rosetta_table_copy_out_p1;
83
84 procedure rosetta_table_copy_in_p3(t out nocopy jtf_calendar_pub.shift_tbl_attributes_type, a0 JTF_NUMBER_TABLE
85 , a1 JTF_DATE_TABLE
86 , a2 JTF_VARCHAR2_TABLE_100
87 , a3 JTF_VARCHAR2_TABLE_100
88 , a4 JTF_VARCHAR2_TABLE_100
89 , a5 JTF_VARCHAR2_TABLE_200
90 , a6 JTF_VARCHAR2_TABLE_200
91 , a7 JTF_VARCHAR2_TABLE_200
92 , a8 JTF_VARCHAR2_TABLE_200
93 , a9 JTF_VARCHAR2_TABLE_200
94 , a10 JTF_VARCHAR2_TABLE_200
95 , a11 JTF_VARCHAR2_TABLE_200
96 , a12 JTF_VARCHAR2_TABLE_200
97 , a13 JTF_VARCHAR2_TABLE_200
98 , a14 JTF_VARCHAR2_TABLE_200
99 , a15 JTF_VARCHAR2_TABLE_200
100 , a16 JTF_VARCHAR2_TABLE_200
101 , a17 JTF_VARCHAR2_TABLE_200
102 , a18 JTF_VARCHAR2_TABLE_200
103 , a19 JTF_VARCHAR2_TABLE_200
104 ) as
105 ddindx binary_integer; indx binary_integer;
106 begin
107 if a0 is not null and a0.count > 0 then
108 if a0.count > 0 then
109 indx := a0.first;
110 ddindx := 1;
111 while true loop
112 t(ddindx).shift_construct_id := a0(indx);
113 t(ddindx).shift_date := rosetta_g_miss_date_in_map(a1(indx));
114 t(ddindx).start_time := a2(indx);
115 t(ddindx).end_time := a3(indx);
116 t(ddindx).availability_type := a4(indx);
117 t(ddindx).attribute1 := a5(indx);
118 t(ddindx).attribute2 := a6(indx);
119 t(ddindx).attribute3 := a7(indx);
120 t(ddindx).attribute4 := a8(indx);
121 t(ddindx).attribute5 := a9(indx);
122 t(ddindx).attribute6 := a10(indx);
123 t(ddindx).attribute7 := a11(indx);
124 t(ddindx).attribute8 := a12(indx);
125 t(ddindx).attribute9 := a13(indx);
126 t(ddindx).attribute10 := a14(indx);
127 t(ddindx).attribute11 := a15(indx);
128 t(ddindx).attribute12 := a16(indx);
129 t(ddindx).attribute13 := a17(indx);
130 t(ddindx).attribute14 := a18(indx);
131 t(ddindx).attribute15 := a19(indx);
132 ddindx := ddindx+1;
133 if a0.last =indx
134 then exit;
135 end if;
136 indx := a0.next(indx);
137 end loop;
138 end if;
139 end if;
140 end rosetta_table_copy_in_p3;
141 procedure rosetta_table_copy_out_p3(t jtf_calendar_pub.shift_tbl_attributes_type, a0 out nocopy JTF_NUMBER_TABLE
142 , a1 out nocopy JTF_DATE_TABLE
143 , a2 out nocopy JTF_VARCHAR2_TABLE_100
144 , a3 out nocopy JTF_VARCHAR2_TABLE_100
145 , a4 out nocopy JTF_VARCHAR2_TABLE_100
146 , a5 out nocopy JTF_VARCHAR2_TABLE_200
147 , a6 out nocopy JTF_VARCHAR2_TABLE_200
148 , a7 out nocopy JTF_VARCHAR2_TABLE_200
149 , a8 out nocopy JTF_VARCHAR2_TABLE_200
150 , a9 out nocopy JTF_VARCHAR2_TABLE_200
151 , a10 out nocopy JTF_VARCHAR2_TABLE_200
152 , a11 out nocopy JTF_VARCHAR2_TABLE_200
153 , a12 out nocopy JTF_VARCHAR2_TABLE_200
154 , a13 out nocopy JTF_VARCHAR2_TABLE_200
155 , a14 out nocopy JTF_VARCHAR2_TABLE_200
156 , a15 out nocopy JTF_VARCHAR2_TABLE_200
157 , a16 out nocopy JTF_VARCHAR2_TABLE_200
158 , a17 out nocopy JTF_VARCHAR2_TABLE_200
159 , a18 out nocopy JTF_VARCHAR2_TABLE_200
160 , a19 out nocopy JTF_VARCHAR2_TABLE_200
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_DATE_TABLE();
167 a2 := JTF_VARCHAR2_TABLE_100();
168 a3 := JTF_VARCHAR2_TABLE_100();
169 a4 := JTF_VARCHAR2_TABLE_100();
170 a5 := JTF_VARCHAR2_TABLE_200();
171 a6 := JTF_VARCHAR2_TABLE_200();
172 a7 := JTF_VARCHAR2_TABLE_200();
173 a8 := JTF_VARCHAR2_TABLE_200();
174 a9 := JTF_VARCHAR2_TABLE_200();
175 a10 := JTF_VARCHAR2_TABLE_200();
176 a11 := JTF_VARCHAR2_TABLE_200();
177 a12 := JTF_VARCHAR2_TABLE_200();
178 a13 := JTF_VARCHAR2_TABLE_200();
179 a14 := JTF_VARCHAR2_TABLE_200();
180 a15 := JTF_VARCHAR2_TABLE_200();
181 a16 := JTF_VARCHAR2_TABLE_200();
182 a17 := JTF_VARCHAR2_TABLE_200();
183 a18 := JTF_VARCHAR2_TABLE_200();
184 a19 := JTF_VARCHAR2_TABLE_200();
185 else
186 a0 := JTF_NUMBER_TABLE();
187 a1 := JTF_DATE_TABLE();
188 a2 := JTF_VARCHAR2_TABLE_100();
189 a3 := JTF_VARCHAR2_TABLE_100();
190 a4 := JTF_VARCHAR2_TABLE_100();
191 a5 := JTF_VARCHAR2_TABLE_200();
192 a6 := JTF_VARCHAR2_TABLE_200();
193 a7 := JTF_VARCHAR2_TABLE_200();
194 a8 := JTF_VARCHAR2_TABLE_200();
195 a9 := JTF_VARCHAR2_TABLE_200();
196 a10 := JTF_VARCHAR2_TABLE_200();
197 a11 := JTF_VARCHAR2_TABLE_200();
198 a12 := JTF_VARCHAR2_TABLE_200();
199 a13 := JTF_VARCHAR2_TABLE_200();
200 a14 := JTF_VARCHAR2_TABLE_200();
201 a15 := JTF_VARCHAR2_TABLE_200();
202 a16 := JTF_VARCHAR2_TABLE_200();
203 a17 := JTF_VARCHAR2_TABLE_200();
204 a18 := JTF_VARCHAR2_TABLE_200();
205 a19 := JTF_VARCHAR2_TABLE_200();
206 if t.count > 0 then
207 a0.extend(t.count);
208 a1.extend(t.count);
209 a2.extend(t.count);
210 a3.extend(t.count);
211 a4.extend(t.count);
212 a5.extend(t.count);
213 a6.extend(t.count);
214 a7.extend(t.count);
215 a8.extend(t.count);
216 a9.extend(t.count);
217 a10.extend(t.count);
218 a11.extend(t.count);
219 a12.extend(t.count);
220 a13.extend(t.count);
221 a14.extend(t.count);
222 a15.extend(t.count);
223 a16.extend(t.count);
224 a17.extend(t.count);
225 a18.extend(t.count);
226 a19.extend(t.count);
227 ddindx := t.first;
228 indx := 1;
229 while true loop
230 a0(indx) := t(ddindx).shift_construct_id;
231 a1(indx) := t(ddindx).shift_date;
232 a2(indx) := t(ddindx).start_time;
233 a3(indx) := t(ddindx).end_time;
234 a4(indx) := t(ddindx).availability_type;
235 a5(indx) := t(ddindx).attribute1;
236 a6(indx) := t(ddindx).attribute2;
237 a7(indx) := t(ddindx).attribute3;
238 a8(indx) := t(ddindx).attribute4;
239 a9(indx) := t(ddindx).attribute5;
240 a10(indx) := t(ddindx).attribute6;
241 a11(indx) := t(ddindx).attribute7;
242 a12(indx) := t(ddindx).attribute8;
243 a13(indx) := t(ddindx).attribute9;
244 a14(indx) := t(ddindx).attribute10;
245 a15(indx) := t(ddindx).attribute11;
246 a16(indx) := t(ddindx).attribute12;
247 a17(indx) := t(ddindx).attribute13;
248 a18(indx) := t(ddindx).attribute14;
249 a19(indx) := t(ddindx).attribute15;
250 indx := indx+1;
251 if t.last =ddindx
252 then exit;
253 end if;
254 ddindx := t.next(ddindx);
255 end loop;
256 end if;
257 end if;
258 end rosetta_table_copy_out_p3;
259
260 procedure is_res_available(p_api_version NUMBER
261 , p_init_msg_list VARCHAR2
262 , p_resource_id NUMBER
263 , p_resource_type VARCHAR2
264 , p_start_date_time date
265 , p_duration NUMBER
266 , x_return_status out nocopy VARCHAR2
267 , x_msg_count out nocopy NUMBER
268 , x_msg_data out nocopy VARCHAR2
269 , x_avail out nocopy VARCHAR2
270 )
271
272 as
273 ddp_start_date_time date;
274 ddindx binary_integer; indx binary_integer;
275 begin
276
277 -- copy data to the local IN or IN-OUT args, if any
278
279
280
281
282 ddp_start_date_time := rosetta_g_miss_date_in_map(p_start_date_time);
283
284
285
286
287
288
289 -- here's the delegated call to the old PL/SQL routine
290 jtf_calendar_pub.is_res_available(p_api_version,
291 p_init_msg_list,
292 p_resource_id,
293 p_resource_type,
294 ddp_start_date_time,
295 p_duration,
296 x_return_status,
297 x_msg_count,
298 x_msg_data,
299 x_avail);
300
301 -- copy data back from the local variables to OUT or IN-OUT args, if any
302
303
304
305
306
307
308
309
310
311 end;
312
313 procedure get_available_time(p_api_version NUMBER
314 , p_init_msg_list VARCHAR2
315 , p_resource_id NUMBER
316 , p_resource_type VARCHAR2
317 , p_start_date date
318 , p_end_date date
319 , x_return_status out nocopy VARCHAR2
320 , x_msg_count out nocopy NUMBER
321 , x_msg_data out nocopy VARCHAR2
322 , p9_a0 out nocopy JTF_NUMBER_TABLE
323 , p9_a1 out nocopy JTF_DATE_TABLE
324 , p9_a2 out nocopy JTF_VARCHAR2_TABLE_100
325 , p9_a3 out nocopy JTF_VARCHAR2_TABLE_100
326 , p9_a4 out nocopy JTF_VARCHAR2_TABLE_100
327 )
328
329 as
330 ddp_start_date date;
331 ddp_end_date date;
332 ddx_shift jtf_calendar_pub.shift_tbl_type;
333 ddindx binary_integer; indx binary_integer;
334 begin
335
336 -- copy data to the local IN or IN-OUT args, if any
337
338
339
340
341 ddp_start_date := rosetta_g_miss_date_in_map(p_start_date);
342
343 ddp_end_date := rosetta_g_miss_date_in_map(p_end_date);
344
345
346
347
348
349 -- here's the delegated call to the old PL/SQL routine
350 jtf_calendar_pub.get_available_time(p_api_version,
351 p_init_msg_list,
352 p_resource_id,
353 p_resource_type,
354 ddp_start_date,
355 ddp_end_date,
356 x_return_status,
357 x_msg_count,
358 x_msg_data,
359 ddx_shift);
360
361 -- copy data back from the local variables to OUT or IN-OUT args, if any
362
363
364
365
366
367
368
369
370
371 jtf_calendar_pub_w.rosetta_table_copy_out_p1(ddx_shift, p9_a0
372 , p9_a1
373 , p9_a2
374 , p9_a3
375 , p9_a4
376 );
377 end;
378
379 procedure get_available_slot(p_api_version NUMBER
380 , p_init_msg_list VARCHAR2
381 , p_resource_id NUMBER
382 , p_resource_type VARCHAR2
383 , p_start_date_time date
384 , p_end_date_time date
385 , p_duration NUMBER
386 , x_return_status out nocopy VARCHAR2
387 , x_msg_count out nocopy NUMBER
388 , x_msg_data out nocopy VARCHAR2
389 , x_slot_start_date out nocopy DATE
390 , x_slot_end_date out nocopy DATE
391 , x_shift_construct_id out nocopy NUMBER
392 , x_availability_type out nocopy VARCHAR2
393 )
394
395 as
396 ddp_start_date_time date;
397 ddp_end_date_time date;
398 ddindx binary_integer; indx binary_integer;
399 begin
400
401 -- copy data to the local IN or IN-OUT args, if any
402
403
404
405
406 ddp_start_date_time := rosetta_g_miss_date_in_map(p_start_date_time);
407
408 ddp_end_date_time := rosetta_g_miss_date_in_map(p_end_date_time);
409
410
411
412
413
414
415
416
417
418 -- here's the delegated call to the old PL/SQL routine
419 jtf_calendar_pub.get_available_slot(p_api_version,
420 p_init_msg_list,
421 p_resource_id,
422 p_resource_type,
423 ddp_start_date_time,
424 ddp_end_date_time,
425 p_duration,
426 x_return_status,
427 x_msg_count,
428 x_msg_data,
429 x_slot_start_date,
430 x_slot_end_date,
431 x_shift_construct_id,
432 x_availability_type);
433
434 -- copy data back from the local variables to OUT or IN-OUT args, if any
435
436
437
438
439
440
441
442
443
444
445
446
447
448 end;
449
450 procedure get_resource_shifts(p_api_version NUMBER
451 , p_init_msg_list VARCHAR2
452 , p_resource_id NUMBER
453 , p_resource_type VARCHAR2
454 , p_start_date date
455 , p_end_date date
456 , x_return_status out nocopy VARCHAR2
457 , x_msg_count out nocopy NUMBER
458 , x_msg_data out nocopy VARCHAR2
459 , p9_a0 out nocopy JTF_NUMBER_TABLE
460 , p9_a1 out nocopy JTF_DATE_TABLE
461 , p9_a2 out nocopy JTF_VARCHAR2_TABLE_100
462 , p9_a3 out nocopy JTF_VARCHAR2_TABLE_100
463 , p9_a4 out nocopy JTF_VARCHAR2_TABLE_100
464 )
465
466 as
467 ddp_start_date date;
468 ddp_end_date date;
469 ddx_shift jtf_calendar_pub.shift_tbl_type;
470 ddindx binary_integer; indx binary_integer;
471 begin
472
473 -- copy data to the local IN or IN-OUT args, if any
474
475
476
477
478 ddp_start_date := rosetta_g_miss_date_in_map(p_start_date);
479
480 ddp_end_date := rosetta_g_miss_date_in_map(p_end_date);
481
482
483
484
485
486 -- here's the delegated call to the old PL/SQL routine
487 jtf_calendar_pub.get_resource_shifts(p_api_version,
488 p_init_msg_list,
489 p_resource_id,
490 p_resource_type,
491 ddp_start_date,
492 ddp_end_date,
493 x_return_status,
494 x_msg_count,
495 x_msg_data,
496 ddx_shift);
497
498 -- copy data back from the local variables to OUT or IN-OUT args, if any
499
500
501
502
503
504
505
506
507
508 jtf_calendar_pub_w.rosetta_table_copy_out_p1(ddx_shift, p9_a0
509 , p9_a1
510 , p9_a2
511 , p9_a3
512 , p9_a4
513 );
514 end;
515
516 procedure get_resource_shifts(p_api_version NUMBER
517 , p_init_msg_list VARCHAR2
518 , p_resource_id NUMBER
519 , p_resource_type VARCHAR2
520 , p_start_date date
521 , p_end_date date
522 , x_return_status out nocopy VARCHAR2
523 , x_msg_count out nocopy NUMBER
524 , x_msg_data out nocopy VARCHAR2
525 , p9_a0 out nocopy JTF_NUMBER_TABLE
526 , p9_a1 out nocopy JTF_DATE_TABLE
527 , p9_a2 out nocopy JTF_VARCHAR2_TABLE_100
528 , p9_a3 out nocopy JTF_VARCHAR2_TABLE_100
529 , p9_a4 out nocopy JTF_VARCHAR2_TABLE_100
530 , p9_a5 out nocopy JTF_VARCHAR2_TABLE_200
531 , p9_a6 out nocopy JTF_VARCHAR2_TABLE_200
532 , p9_a7 out nocopy JTF_VARCHAR2_TABLE_200
533 , p9_a8 out nocopy JTF_VARCHAR2_TABLE_200
534 , p9_a9 out nocopy JTF_VARCHAR2_TABLE_200
535 , p9_a10 out nocopy JTF_VARCHAR2_TABLE_200
536 , p9_a11 out nocopy JTF_VARCHAR2_TABLE_200
537 , p9_a12 out nocopy JTF_VARCHAR2_TABLE_200
538 , p9_a13 out nocopy JTF_VARCHAR2_TABLE_200
539 , p9_a14 out nocopy JTF_VARCHAR2_TABLE_200
540 , p9_a15 out nocopy JTF_VARCHAR2_TABLE_200
541 , p9_a16 out nocopy JTF_VARCHAR2_TABLE_200
542 , p9_a17 out nocopy JTF_VARCHAR2_TABLE_200
543 , p9_a18 out nocopy JTF_VARCHAR2_TABLE_200
544 , p9_a19 out nocopy JTF_VARCHAR2_TABLE_200
545 )
546
547 as
548 ddp_start_date date;
549 ddp_end_date date;
550 ddx_shift jtf_calendar_pub.shift_tbl_attributes_type;
551 ddindx binary_integer; indx binary_integer;
552 begin
553
554 -- copy data to the local IN or IN-OUT args, if any
555
556
557
558
559 ddp_start_date := rosetta_g_miss_date_in_map(p_start_date);
560
561 ddp_end_date := rosetta_g_miss_date_in_map(p_end_date);
562
563
564
565
566
567 -- here's the delegated call to the old PL/SQL routine
568 jtf_calendar_pub.get_resource_shifts(p_api_version,
569 p_init_msg_list,
570 p_resource_id,
571 p_resource_type,
572 ddp_start_date,
573 ddp_end_date,
574 x_return_status,
575 x_msg_count,
576 x_msg_data,
577 ddx_shift);
578
579 -- copy data back from the local variables to OUT or IN-OUT args, if any
580
581
582
583
584
585
586
587
588
589 jtf_calendar_pub_w.rosetta_table_copy_out_p3(ddx_shift, p9_a0
590 , p9_a1
591 , p9_a2
592 , p9_a3
593 , p9_a4
594 , p9_a5
595 , p9_a6
596 , p9_a7
597 , p9_a8
598 , p9_a9
599 , p9_a10
600 , p9_a11
601 , p9_a12
602 , p9_a13
603 , p9_a14
604 , p9_a15
605 , p9_a16
606 , p9_a17
607 , p9_a18
608 , p9_a19
609 );
610 end;
611
612 procedure get_res_schedule(p_api_version NUMBER
613 , p_init_msg_list VARCHAR2
614 , p_resource_id NUMBER
615 , p_resource_type VARCHAR2
616 , p_start_date date
620 , x_msg_data out nocopy VARCHAR2
617 , p_end_date date
618 , x_return_status out nocopy VARCHAR2
619 , x_msg_count out nocopy NUMBER
621 , p9_a0 out nocopy JTF_NUMBER_TABLE
622 , p9_a1 out nocopy JTF_DATE_TABLE
623 , p9_a2 out nocopy JTF_VARCHAR2_TABLE_100
624 , p9_a3 out nocopy JTF_VARCHAR2_TABLE_100
625 , p9_a4 out nocopy JTF_VARCHAR2_TABLE_100
626 )
627
628 as
629 ddp_start_date date;
630 ddp_end_date date;
631 ddx_shift jtf_calendar_pub.shift_tbl_type;
632 ddindx binary_integer; indx binary_integer;
633 begin
634
635 -- copy data to the local IN or IN-OUT args, if any
636
637
638
639
640 ddp_start_date := rosetta_g_miss_date_in_map(p_start_date);
641
642 ddp_end_date := rosetta_g_miss_date_in_map(p_end_date);
643
644
645
646
647
648 -- here's the delegated call to the old PL/SQL routine
649 jtf_calendar_pub.get_res_schedule(p_api_version,
650 p_init_msg_list,
651 p_resource_id,
652 p_resource_type,
653 ddp_start_date,
654 ddp_end_date,
655 x_return_status,
656 x_msg_count,
657 x_msg_data,
658 ddx_shift);
659
660 -- copy data back from the local variables to OUT or IN-OUT args, if any
661
662
663
664
665
666
667
668
669
670 jtf_calendar_pub_w.rosetta_table_copy_out_p1(ddx_shift, p9_a0
671 , p9_a1
672 , p9_a2
673 , p9_a3
674 , p9_a4
675 );
676 end;
677
678 function resourcedt_to_serverdt(p_resource_dttime date
679 , p_resource_tz_id NUMBER
680 , p_server_tz_id NUMBER
681 ) return date
682
683 as
684 ddp_resource_dttime date;
685 ddindx binary_integer; indx binary_integer;
686 ddrosetta_retval date;
687 begin
688
689 -- copy data to the local IN or IN-OUT args, if any
690 ddp_resource_dttime := rosetta_g_miss_date_in_map(p_resource_dttime);
691
692
693
694 -- here's the delegated call to the old PL/SQL routine
695 ddrosetta_retval := jtf_calendar_pub.resourcedt_to_serverdt(ddp_resource_dttime,
696 p_resource_tz_id,
697 p_server_tz_id);
698
699 -- copy data back from the local variables to OUT or IN-OUT args, if any
700
701
702
703 return ddrosetta_retval;
704 end;
705
706 procedure validate_cal_date(p_calendar_id NUMBER
707 , p_shift_date date
708 , ddrosetta_retval_bool OUT NOCOPY NUMBER
709 )
710
711 as
712 ddp_shift_date date;
713 ddindx binary_integer; indx binary_integer;
714 ddrosetta_retval boolean;
715 begin
716
717 -- copy data to the local IN or IN-OUT args, if any
718
719 ddp_shift_date := rosetta_g_miss_date_in_map(p_shift_date);
720
721 -- here's the delegated call to the old PL/SQL routine
722 ddrosetta_retval := jtf_calendar_pub.validate_cal_date(p_calendar_id,
723 ddp_shift_date);
724
725 -- copy data back from the local variables to OUT or IN-OUT args, if any
726 if ddrosetta_retval is null
727 then ddrosetta_retval_bool := null;
728 elsif ddrosetta_retval
729 then ddrosetta_retval_bool := 1;
730 else ddrosetta_retval_bool := 0;
731 end if;
732
733 end;
734
735 end jtf_calendar_pub_w;