[Home] [Help]
PACKAGE BODY: APPS.JTF_CAL_PVT_W
Source
1 package body jtf_cal_pvt_w as
2 /* $Header: jtfwhcb.pls 120.2 2006/04/28 01:33 deeprao 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 rosetta_g_mistake_date_high date := to_date('01/01/+4710', 'MM/DD/SYYYY');
6 rosetta_g_mistake_date_low date := to_date('01/01/-4710', 'MM/DD/SYYYY');
7
8 -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
9 function rosetta_g_miss_date_in_map(d date) return date as
10 begin
11 if d > rosetta_g_mistake_date_high then return fnd_api.g_miss_date; end if;
12 if d < rosetta_g_mistake_date_low then return fnd_api.g_miss_date; end if;
13 return d;
14 end;
15
16 procedure rosetta_table_copy_in_p1(t out nocopy jtf_cal_pvt.callsttbltype, a0 JTF_NUMBER_TABLE
17 , a1 JTF_VARCHAR2_TABLE_100
18 , a2 JTF_VARCHAR2_TABLE_400
19 , a3 JTF_VARCHAR2_TABLE_100
20 ) as
21 ddindx binary_integer; indx binary_integer;
22 begin
23 if a0 is not null and a0.count > 0 then
24 if a0.count > 0 then
25 indx := a0.first;
26 ddindx := 1;
27 while true loop
28 t(ddindx).resourceid := a0(indx);
29 t(ddindx).resourcetype := a1(indx);
30 t(ddindx).calendarname := a2(indx);
31 t(ddindx).accesslevel := a3(indx);
32 ddindx := ddindx+1;
33 if a0.last =indx
34 then exit;
35 end if;
36 indx := a0.next(indx);
37 end loop;
38 end if;
39 end if;
40 end rosetta_table_copy_in_p1;
41 procedure rosetta_table_copy_out_p1(t jtf_cal_pvt.callsttbltype, a0 out nocopy JTF_NUMBER_TABLE
42 , a1 out nocopy JTF_VARCHAR2_TABLE_100
43 , a2 out nocopy JTF_VARCHAR2_TABLE_400
44 , a3 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_VARCHAR2_TABLE_100();
51 a2 := JTF_VARCHAR2_TABLE_400();
52 a3 := JTF_VARCHAR2_TABLE_100();
53 else
54 a0 := JTF_NUMBER_TABLE();
55 a1 := JTF_VARCHAR2_TABLE_100();
56 a2 := JTF_VARCHAR2_TABLE_400();
57 a3 := JTF_VARCHAR2_TABLE_100();
58 if t.count > 0 then
59 a0.extend(t.count);
60 a1.extend(t.count);
61 a2.extend(t.count);
62 a3.extend(t.count);
63 ddindx := t.first;
64 indx := 1;
65 while true loop
66 a0(indx) := t(ddindx).resourceid;
67 a1(indx) := t(ddindx).resourcetype;
68 a2(indx) := t(ddindx).calendarname;
69 a3(indx) := t(ddindx).accesslevel;
70 indx := indx+1;
71 if t.last =ddindx
72 then exit;
73 end if;
74 ddindx := t.next(ddindx);
75 end loop;
76 end if;
77 end if;
78 end rosetta_table_copy_out_p1;
79
80 procedure rosetta_table_copy_in_p3(t out nocopy jtf_cal_pvt.weektimepreftbltype, a0 JTF_NUMBER_TABLE
81 , a1 JTF_NUMBER_TABLE
82 ) as
83 ddindx binary_integer; indx binary_integer;
84 begin
85 if a0 is not null and a0.count > 0 then
86 if a0.count > 0 then
87 indx := a0.first;
88 ddindx := 1;
89 while true loop
90 t(ddindx).daystart := a0(indx);
91 t(ddindx).dayend := a1(indx);
92 ddindx := ddindx+1;
93 if a0.last =indx
94 then exit;
95 end if;
96 indx := a0.next(indx);
97 end loop;
98 end if;
99 end if;
100 end rosetta_table_copy_in_p3;
101 procedure rosetta_table_copy_out_p3(t jtf_cal_pvt.weektimepreftbltype, a0 out nocopy JTF_NUMBER_TABLE
102 , a1 out nocopy JTF_NUMBER_TABLE
103 ) as
104 ddindx binary_integer; indx binary_integer;
105 begin
106 if t is null or t.count = 0 then
107 a0 := JTF_NUMBER_TABLE();
108 a1 := JTF_NUMBER_TABLE();
109 else
110 a0 := JTF_NUMBER_TABLE();
111 a1 := JTF_NUMBER_TABLE();
112 if t.count > 0 then
113 a0.extend(t.count);
114 a1.extend(t.count);
115 ddindx := t.first;
116 indx := 1;
117 while true loop
118 a0(indx) := t(ddindx).daystart;
119 a1(indx) := t(ddindx).dayend;
120 indx := indx+1;
121 if t.last =ddindx
122 then exit;
123 end if;
124 ddindx := t.next(ddindx);
125 end loop;
126 end if;
127 end if;
128 end rosetta_table_copy_out_p3;
129
130 procedure rosetta_table_copy_in_p7(t out nocopy jtf_cal_pvt.queryouttab, a0 JTF_NUMBER_TABLE
131 , a1 JTF_NUMBER_TABLE
132 , a2 JTF_VARCHAR2_TABLE_100
133 , a3 JTF_VARCHAR2_TABLE_100
134 , a4 JTF_NUMBER_TABLE
135 , a5 JTF_NUMBER_TABLE
136 , a6 JTF_VARCHAR2_TABLE_200
137 , a7 JTF_NUMBER_TABLE
138 , a8 JTF_VARCHAR2_TABLE_100
139 , a9 JTF_NUMBER_TABLE
140 , a10 JTF_NUMBER_TABLE
141 , a11 JTF_DATE_TABLE
142 , a12 JTF_DATE_TABLE
143 , a13 JTF_VARCHAR2_TABLE_2000
144 , a14 JTF_VARCHAR2_TABLE_2000
145 , a15 JTF_NUMBER_TABLE
146 , a16 JTF_VARCHAR2_TABLE_100
147 , a17 JTF_NUMBER_TABLE
148 , a18 JTF_VARCHAR2_TABLE_300
149 , a19 JTF_VARCHAR2_TABLE_100
150 , a20 JTF_NUMBER_TABLE
151 , a21 JTF_NUMBER_TABLE
152 , a22 JTF_NUMBER_TABLE
153 ) as
154 ddindx binary_integer; indx binary_integer;
155 begin
156 if a0 is not null and a0.count > 0 then
157 if a0.count > 0 then
158 indx := a0.first;
159 ddindx := 1;
160 while true loop
161 t(ddindx).itemdisplaytype := a0(indx);
162 t(ddindx).itemsourceid := a1(indx);
163 t(ddindx).itemsourcecode := a2(indx);
164 t(ddindx).sourceobjecttypecode := a3(indx);
165 t(ddindx).sourceid := a4(indx);
166 t(ddindx).customerid := a5(indx);
167 t(ddindx).itemname := a6(indx);
168 t(ddindx).accesslevel := a7(indx);
169 t(ddindx).color := a8(indx);
170 t(ddindx).inviteindicator := a9(indx);
171 t(ddindx).repeatindicator := a10(indx);
172 t(ddindx).startdate := rosetta_g_miss_date_in_map(a11(indx));
173 t(ddindx).enddate := rosetta_g_miss_date_in_map(a12(indx));
174 t(ddindx).url := a13(indx);
175 t(ddindx).urlparamlist := a14(indx);
176 t(ddindx).priorityid := a15(indx);
177 t(ddindx).priorityname := a16(indx);
178 t(ddindx).categoryid := a17(indx);
179 t(ddindx).categorydesc := a18(indx);
180 t(ddindx).noteflag := a19(indx);
181 t(ddindx).taskovn := a20(indx);
182 t(ddindx).assignmentovn := a21(indx);
183 t(ddindx).grouprsid := a22(indx);
184 ddindx := ddindx+1;
185 if a0.last =indx
186 then exit;
187 end if;
188 indx := a0.next(indx);
189 end loop;
190 end if;
191 end if;
192 end rosetta_table_copy_in_p7;
193 procedure rosetta_table_copy_out_p7(t jtf_cal_pvt.queryouttab, a0 out nocopy JTF_NUMBER_TABLE
194 , a1 out nocopy JTF_NUMBER_TABLE
195 , a2 out nocopy JTF_VARCHAR2_TABLE_100
196 , a3 out nocopy JTF_VARCHAR2_TABLE_100
197 , a4 out nocopy JTF_NUMBER_TABLE
198 , a5 out nocopy JTF_NUMBER_TABLE
199 , a6 out nocopy JTF_VARCHAR2_TABLE_200
200 , a7 out nocopy JTF_NUMBER_TABLE
201 , a8 out nocopy JTF_VARCHAR2_TABLE_100
202 , a9 out nocopy JTF_NUMBER_TABLE
203 , a10 out nocopy JTF_NUMBER_TABLE
204 , a11 out nocopy JTF_DATE_TABLE
205 , a12 out nocopy JTF_DATE_TABLE
206 , a13 out nocopy JTF_VARCHAR2_TABLE_2000
207 , a14 out nocopy JTF_VARCHAR2_TABLE_2000
208 , a15 out nocopy JTF_NUMBER_TABLE
209 , a16 out nocopy JTF_VARCHAR2_TABLE_100
210 , a17 out nocopy JTF_NUMBER_TABLE
211 , a18 out nocopy JTF_VARCHAR2_TABLE_300
212 , a19 out nocopy JTF_VARCHAR2_TABLE_100
213 , a20 out nocopy JTF_NUMBER_TABLE
214 , a21 out nocopy JTF_NUMBER_TABLE
215 , a22 out nocopy JTF_NUMBER_TABLE
216 ) as
217 ddindx binary_integer; indx binary_integer;
218 begin
219 if t is null or t.count = 0 then
220 a0 := JTF_NUMBER_TABLE();
221 a1 := JTF_NUMBER_TABLE();
222 a2 := JTF_VARCHAR2_TABLE_100();
223 a3 := JTF_VARCHAR2_TABLE_100();
224 a4 := JTF_NUMBER_TABLE();
225 a5 := JTF_NUMBER_TABLE();
226 a6 := JTF_VARCHAR2_TABLE_200();
227 a7 := JTF_NUMBER_TABLE();
228 a8 := JTF_VARCHAR2_TABLE_100();
229 a9 := JTF_NUMBER_TABLE();
230 a10 := JTF_NUMBER_TABLE();
231 a11 := JTF_DATE_TABLE();
232 a12 := JTF_DATE_TABLE();
233 a13 := JTF_VARCHAR2_TABLE_2000();
234 a14 := JTF_VARCHAR2_TABLE_2000();
235 a15 := JTF_NUMBER_TABLE();
236 a16 := JTF_VARCHAR2_TABLE_100();
237 a17 := JTF_NUMBER_TABLE();
238 a18 := JTF_VARCHAR2_TABLE_300();
239 a19 := JTF_VARCHAR2_TABLE_100();
240 a20 := JTF_NUMBER_TABLE();
241 a21 := JTF_NUMBER_TABLE();
242 a22 := JTF_NUMBER_TABLE();
243 else
244 a0 := JTF_NUMBER_TABLE();
245 a1 := JTF_NUMBER_TABLE();
246 a2 := JTF_VARCHAR2_TABLE_100();
247 a3 := JTF_VARCHAR2_TABLE_100();
248 a4 := JTF_NUMBER_TABLE();
249 a5 := JTF_NUMBER_TABLE();
250 a6 := JTF_VARCHAR2_TABLE_200();
251 a7 := JTF_NUMBER_TABLE();
252 a8 := JTF_VARCHAR2_TABLE_100();
253 a9 := JTF_NUMBER_TABLE();
254 a10 := JTF_NUMBER_TABLE();
255 a11 := JTF_DATE_TABLE();
256 a12 := JTF_DATE_TABLE();
257 a13 := JTF_VARCHAR2_TABLE_2000();
258 a14 := JTF_VARCHAR2_TABLE_2000();
259 a15 := JTF_NUMBER_TABLE();
260 a16 := JTF_VARCHAR2_TABLE_100();
261 a17 := JTF_NUMBER_TABLE();
262 a18 := JTF_VARCHAR2_TABLE_300();
263 a19 := JTF_VARCHAR2_TABLE_100();
264 a20 := JTF_NUMBER_TABLE();
265 a21 := JTF_NUMBER_TABLE();
266 a22 := JTF_NUMBER_TABLE();
267 if t.count > 0 then
268 a0.extend(t.count);
269 a1.extend(t.count);
270 a2.extend(t.count);
271 a3.extend(t.count);
272 a4.extend(t.count);
273 a5.extend(t.count);
274 a6.extend(t.count);
275 a7.extend(t.count);
276 a8.extend(t.count);
277 a9.extend(t.count);
278 a10.extend(t.count);
279 a11.extend(t.count);
280 a12.extend(t.count);
281 a13.extend(t.count);
282 a14.extend(t.count);
283 a15.extend(t.count);
284 a16.extend(t.count);
285 a17.extend(t.count);
286 a18.extend(t.count);
287 a19.extend(t.count);
288 a20.extend(t.count);
289 a21.extend(t.count);
290 a22.extend(t.count);
291 ddindx := t.first;
292 indx := 1;
293 while true loop
294 a0(indx) := t(ddindx).itemdisplaytype;
295 a1(indx) := t(ddindx).itemsourceid;
296 a2(indx) := t(ddindx).itemsourcecode;
297 a3(indx) := t(ddindx).sourceobjecttypecode;
298 a4(indx) := t(ddindx).sourceid;
299 a5(indx) := t(ddindx).customerid;
300 a6(indx) := t(ddindx).itemname;
301 a7(indx) := t(ddindx).accesslevel;
302 a8(indx) := t(ddindx).color;
303 a9(indx) := t(ddindx).inviteindicator;
304 a10(indx) := t(ddindx).repeatindicator;
305 a11(indx) := t(ddindx).startdate;
306 a12(indx) := t(ddindx).enddate;
307 a13(indx) := t(ddindx).url;
308 a14(indx) := t(ddindx).urlparamlist;
309 a15(indx) := t(ddindx).priorityid;
310 a16(indx) := t(ddindx).priorityname;
311 a17(indx) := t(ddindx).categoryid;
312 a18(indx) := t(ddindx).categorydesc;
313 a19(indx) := t(ddindx).noteflag;
314 a20(indx) := t(ddindx).taskovn;
315 a21(indx) := t(ddindx).assignmentovn;
316 a22(indx) := t(ddindx).grouprsid;
317 indx := indx+1;
318 if t.last =ddindx
319 then exit;
320 end if;
321 ddindx := t.next(ddindx);
322 end loop;
323 end if;
324 end if;
325 end rosetta_table_copy_out_p7;
326
327 procedure getcalendarlist(p_api_version NUMBER
328 , p_init_msg_list VARCHAR2
329 , p_validation_level NUMBER
330 , x_return_status out nocopy VARCHAR2
331 , x_msg_count out nocopy NUMBER
332 , x_msg_data out nocopy VARCHAR2
333 , p_resourceid in out nocopy NUMBER
334 , p_resourcetype in out nocopy VARCHAR2
335 , p_userid NUMBER
336 , p9_a0 out nocopy JTF_NUMBER_TABLE
337 , p9_a1 out nocopy JTF_VARCHAR2_TABLE_100
338 , p9_a2 out nocopy JTF_VARCHAR2_TABLE_400
339 , p9_a3 out nocopy JTF_VARCHAR2_TABLE_100
340 )
341
342 as
343 ddx_calendarlist jtf_cal_pvt.callsttbltype;
344 ddindx binary_integer; indx binary_integer;
345 begin
346
347 -- copy data to the local IN or IN-OUT args, if any
348
349
350
351
352
353
354
355
356
357
358 -- here's the delegated call to the old PL/SQL routine
359 jtf_cal_pvt.getcalendarlist(p_api_version,
360 p_init_msg_list,
361 p_validation_level,
362 x_return_status,
363 x_msg_count,
364 x_msg_data,
365 p_resourceid,
366 p_resourcetype,
367 p_userid,
368 ddx_calendarlist);
369
370 -- copy data back from the local variables to OUT or IN-OUT args, if any
371
372
373
374
375
376
377
378
379
380 jtf_cal_pvt_w.rosetta_table_copy_out_p1(ddx_calendarlist, p9_a0
381 , p9_a1
382 , p9_a2
383 , p9_a3
384 );
385 end;
386
387 procedure getview(p_api_version NUMBER
388 , p_init_msg_list VARCHAR2
389 , p_validation_level NUMBER
390 , x_return_status out nocopy VARCHAR2
391 , x_msg_count out nocopy NUMBER
392 , x_msg_data out nocopy VARCHAR2
393 , p6_a0 NUMBER
394 , p6_a1 NUMBER
395 , p6_a2 VARCHAR2
396 , p6_a3 NUMBER
397 , p6_a4 VARCHAR2
398 , p6_a5 DATE
399 , p6_a6 NUMBER
400 , p7_a0 out nocopy JTF_NUMBER_TABLE
401 , p7_a1 out nocopy JTF_NUMBER_TABLE
402 , p7_a2 out nocopy JTF_VARCHAR2_TABLE_100
403 , p7_a3 out nocopy JTF_VARCHAR2_TABLE_100
404 , p7_a4 out nocopy JTF_NUMBER_TABLE
405 , p7_a5 out nocopy JTF_NUMBER_TABLE
406 , p7_a6 out nocopy JTF_VARCHAR2_TABLE_200
407 , p7_a7 out nocopy JTF_NUMBER_TABLE
408 , p7_a8 out nocopy JTF_VARCHAR2_TABLE_100
409 , p7_a9 out nocopy JTF_NUMBER_TABLE
410 , p7_a10 out nocopy JTF_NUMBER_TABLE
411 , p7_a11 out nocopy JTF_DATE_TABLE
412 , p7_a12 out nocopy JTF_DATE_TABLE
413 , p7_a13 out nocopy JTF_VARCHAR2_TABLE_2000
414 , p7_a14 out nocopy JTF_VARCHAR2_TABLE_2000
415 , p7_a15 out nocopy JTF_NUMBER_TABLE
416 , p7_a16 out nocopy JTF_VARCHAR2_TABLE_100
417 , p7_a17 out nocopy JTF_NUMBER_TABLE
418 , p7_a18 out nocopy JTF_VARCHAR2_TABLE_300
419 , p7_a19 out nocopy JTF_VARCHAR2_TABLE_100
420 , p7_a20 out nocopy JTF_NUMBER_TABLE
421 , p7_a21 out nocopy JTF_NUMBER_TABLE
422 , p7_a22 out nocopy JTF_NUMBER_TABLE
423 , p8_a0 out nocopy NUMBER
424 , p8_a1 out nocopy VARCHAR2
425 , p8_a2 out nocopy VARCHAR2
426 , p8_a3 out nocopy VARCHAR2
427 , p8_a4 out nocopy VARCHAR2
428 , p8_a5 out nocopy VARCHAR2
429 , p8_a6 out nocopy NUMBER
430 , p8_a7 out nocopy NUMBER
431 , p8_a8 out nocopy NUMBER
432 , p8_a9 out nocopy NUMBER
433 , p8_a10 out nocopy DATE
434 , p8_a11 out nocopy DATE
435 , p8_a12 out nocopy DATE
436 , p8_a13 out nocopy VARCHAR2
437 , p8_a14 out nocopy VARCHAR2
438 , p8_a15 out nocopy VARCHAR2
439 , p8_a16 out nocopy VARCHAR2
440 , p8_a17 out nocopy VARCHAR2
441 , p8_a18 out nocopy VARCHAR2
442 , p8_a19 out nocopy VARCHAR2
443 , p8_a20 out nocopy VARCHAR2
444 )
445
446 as
447 ddp_input jtf_cal_pvt.queryin;
448 ddx_displayitems jtf_cal_pvt.queryouttab;
449 ddx_preferences jtf_cal_pvt.preference;
450 ddindx binary_integer; indx binary_integer;
451 begin
452
453 -- copy data to the local IN or IN-OUT args, if any
454
455
456
457
458
459
460 ddp_input.userid := p6_a0;
461 ddp_input.loggedonrsid := p6_a1;
462 ddp_input.loggedonrstype := p6_a2;
463 ddp_input.queryrsid := p6_a3;
464 ddp_input.queryrstype := p6_a4;
465 ddp_input.startdate := rosetta_g_miss_date_in_map(p6_a5);
466 ddp_input.querymode := p6_a6;
467
468
469
470 -- here's the delegated call to the old PL/SQL routine
471 jtf_cal_pvt.getview(p_api_version,
472 p_init_msg_list,
473 p_validation_level,
474 x_return_status,
475 x_msg_count,
476 x_msg_data,
477 ddp_input,
478 ddx_displayitems,
479 ddx_preferences);
480
481 -- copy data back from the local variables to OUT or IN-OUT args, if any
482
483
484
485
486
487
488
489 jtf_cal_pvt_w.rosetta_table_copy_out_p7(ddx_displayitems, p7_a0
490 , p7_a1
491 , p7_a2
492 , p7_a3
493 , p7_a4
494 , p7_a5
495 , p7_a6
496 , p7_a7
497 , p7_a8
498 , p7_a9
499 , p7_a10
500 , p7_a11
501 , p7_a12
502 , p7_a13
503 , p7_a14
504 , p7_a15
505 , p7_a16
506 , p7_a17
507 , p7_a18
508 , p7_a19
509 , p7_a20
510 , p7_a21
511 , p7_a22
512 );
513
514 p8_a0 := ddx_preferences.loggedonrsid;
515 p8_a1 := ddx_preferences.loggedonrstype;
516 p8_a2 := ddx_preferences.loggedonrsname;
517 p8_a3 := ddx_preferences.sendemail;
518 p8_a4 := ddx_preferences.timeformat;
519 p8_a5 := ddx_preferences.dateformat;
520 p8_a6 := ddx_preferences.timezone;
521 p8_a7 := ddx_preferences.weekstart;
522 p8_a8 := ddx_preferences.weekend;
523 p8_a9 := ddx_preferences.apptincrement;
524 p8_a10 := ddx_preferences.minstarttime;
525 p8_a11 := ddx_preferences.maxendtime;
526 p8_a12 := ddx_preferences.currenttime;
527 p8_a13 := ddx_preferences.displayitems;
528 p8_a14 := ddx_preferences.apptcolor;
529 p8_a15 := ddx_preferences.apptprefix;
530 p8_a16 := ddx_preferences.taskcolor;
531 p8_a17 := ddx_preferences.taskprefix;
532 p8_a18 := ddx_preferences.itemcolor;
533 p8_a19 := ddx_preferences.itemprefix;
534 p8_a20 := ddx_preferences.taskcustomersource;
535 end;
536
537 end jtf_cal_pvt_w;