DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_TASK_RECURRENCES_PUB_W

Source


1 package body jtf_task_recurrences_pub_w as
2   /* $Header: jtfbtkcb.pls 120.2 2006/04/26 04:24 knayyar 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_task_recurrences_pub.output_dates_rec, a0 JTF_DATE_TABLE) as
17     ddindx binary_integer; indx binary_integer;
18   begin
19   if a0 is not null and a0.count > 0 then
20       if a0.count > 0 then
21         indx := a0.first;
22         ddindx := 1;
23         while true loop
24           t(ddindx) := rosetta_g_miss_date_in_map(a0(indx));
25           ddindx := ddindx+1;
26           if a0.last =indx
27             then exit;
28           end if;
29           indx := a0.next(indx);
30         end loop;
31       end if;
32    end if;
33   end rosetta_table_copy_in_p1;
34   procedure rosetta_table_copy_out_p1(t jtf_task_recurrences_pub.output_dates_rec, a0 out nocopy JTF_DATE_TABLE) as
35     ddindx binary_integer; indx binary_integer;
36   begin
37   if t is null or t.count = 0 then
38     a0 := JTF_DATE_TABLE();
39   else
40       a0 := JTF_DATE_TABLE();
41       if t.count > 0 then
42         a0.extend(t.count);
43         ddindx := t.first;
44         indx := 1;
45         while true loop
46           a0(indx) := rosetta_g_miss_date_in_map(t(ddindx));
47           indx := indx+1;
48           if t.last =ddindx
49             then exit;
50           end if;
51           ddindx := t.next(ddindx);
52         end loop;
53       end if;
54    end if;
55   end rosetta_table_copy_out_p1;
56 
57   procedure create_task_recurrence(p_api_version  NUMBER
58     , p_init_msg_list  VARCHAR2
59     , p_commit  VARCHAR2
60     , p_task_id  NUMBER
61     , p_task_number  VARCHAR2
62     , p_occurs_which  INTEGER
63     , p_template_flag  VARCHAR2
64     , p_day_of_week  INTEGER
65     , p_date_of_month  INTEGER
66     , p_occurs_month  INTEGER
67     , p_occurs_uom  VARCHAR2
68     , p_occurs_every  INTEGER
69     , p_occurs_number  INTEGER
70     , p_start_date_active  date
71     , p_end_date_active  date
72     , x_return_status out nocopy  VARCHAR2
73     , x_msg_count out nocopy  NUMBER
74     , x_msg_data out nocopy  VARCHAR2
75     , x_recurrence_rule_id out nocopy  NUMBER
76     , p19_a0 out nocopy  NUMBER
77     , p19_a1 out nocopy  NUMBER
78     , p19_a2 out nocopy  VARCHAR2
79     , x_reccurences_generated out nocopy  INTEGER
80     , p_attribute1  VARCHAR2
81     , p_attribute2  VARCHAR2
82     , p_attribute3  VARCHAR2
83     , p_attribute4  VARCHAR2
84     , p_attribute5  VARCHAR2
85     , p_attribute6  VARCHAR2
86     , p_attribute7  VARCHAR2
87     , p_attribute8  VARCHAR2
88     , p_attribute9  VARCHAR2
89     , p_attribute10  VARCHAR2
90     , p_attribute11  VARCHAR2
91     , p_attribute12  VARCHAR2
92     , p_attribute13  VARCHAR2
93     , p_attribute14  VARCHAR2
94     , p_attribute15  VARCHAR2
95     , p_attribute_category  VARCHAR2
96     , p_sunday  VARCHAR2
97     , p_monday  VARCHAR2
98     , p_tuesday  VARCHAR2
99     , p_wednesday  VARCHAR2
100     , p_thursday  VARCHAR2
101     , p_friday  VARCHAR2
102     , p_saturday  VARCHAR2
103   )
104 
105   as
106     ddp_start_date_active date;
107     ddp_end_date_active date;
108     ddx_task_rec jtf_task_recurrences_pub.task_details_rec;
109     ddindx binary_integer; indx binary_integer;
110   begin
111 
112     -- copy data to the local IN or IN-OUT args, if any
113 
114 
115 
116 
117 
118 
119 
120 
121 
122 
123 
124 
125 
126     ddp_start_date_active := rosetta_g_miss_date_in_map(p_start_date_active);
127 
128     ddp_end_date_active := rosetta_g_miss_date_in_map(p_end_date_active);
129 
130 
131 
132 
133 
134 
135 
136 
137 
138 
139 
140 
141 
142 
143 
144 
145 
146 
147 
148 
149 
150 
151 
152 
153 
154 
155 
156 
157 
158 
159     -- here's the delegated call to the old PL/SQL routine
160     jtf_task_recurrences_pub.create_task_recurrence(p_api_version,
161       p_init_msg_list,
162       p_commit,
163       p_task_id,
164       p_task_number,
165       p_occurs_which,
166       p_template_flag,
167       p_day_of_week,
168       p_date_of_month,
169       p_occurs_month,
170       p_occurs_uom,
171       p_occurs_every,
172       p_occurs_number,
173       ddp_start_date_active,
174       ddp_end_date_active,
175       x_return_status,
176       x_msg_count,
177       x_msg_data,
178       x_recurrence_rule_id,
179       ddx_task_rec,
180       x_reccurences_generated,
181       p_attribute1,
182       p_attribute2,
183       p_attribute3,
184       p_attribute4,
185       p_attribute5,
186       p_attribute6,
187       p_attribute7,
191       p_attribute11,
188       p_attribute8,
189       p_attribute9,
190       p_attribute10,
192       p_attribute12,
193       p_attribute13,
194       p_attribute14,
195       p_attribute15,
196       p_attribute_category,
197       p_sunday,
198       p_monday,
199       p_tuesday,
200       p_wednesday,
201       p_thursday,
202       p_friday,
203       p_saturday);
204 
205     -- copy data back from the local variables to OUT or IN-OUT args, if any
206 
207 
208 
209 
210 
211 
212 
213 
214 
215 
216 
217 
218 
219 
220 
221 
222 
223 
224 
225     p19_a0 := ddx_task_rec.task_id;
226     p19_a1 := ddx_task_rec.task_number;
227     p19_a2 := ddx_task_rec.task_name;
228 
229 
230 
231 
232 
233 
234 
235 
236 
237 
238 
239 
240 
241 
242 
243 
244 
245 
246 
247 
248 
249 
250 
251 
252   end;
253 
254   procedure update_task_recurrence(p_api_version  NUMBER
255     , p_init_msg_list  VARCHAR2
256     , p_commit  VARCHAR2
257     , p_task_id  NUMBER
258     , p_recurrence_rule_id  NUMBER
259     , p_occurs_which  INTEGER
260     , p_day_of_week  INTEGER
261     , p_date_of_month  INTEGER
262     , p_occurs_month  INTEGER
263     , p_occurs_uom  VARCHAR2
264     , p_occurs_every  INTEGER
265     , p_occurs_number  INTEGER
266     , p_start_date_active  date
267     , p_end_date_active  date
268     , p_template_flag  VARCHAR2
269     , p_attribute1  VARCHAR2
270     , p_attribute2  VARCHAR2
271     , p_attribute3  VARCHAR2
272     , p_attribute4  VARCHAR2
273     , p_attribute5  VARCHAR2
274     , p_attribute6  VARCHAR2
275     , p_attribute7  VARCHAR2
276     , p_attribute8  VARCHAR2
277     , p_attribute9  VARCHAR2
278     , p_attribute10  VARCHAR2
279     , p_attribute11  VARCHAR2
280     , p_attribute12  VARCHAR2
281     , p_attribute13  VARCHAR2
282     , p_attribute14  VARCHAR2
283     , p_attribute15  VARCHAR2
284     , p_attribute_category  VARCHAR2
285     , p_sunday  VARCHAR2
286     , p_monday  VARCHAR2
287     , p_tuesday  VARCHAR2
288     , p_wednesday  VARCHAR2
289     , p_thursday  VARCHAR2
290     , p_friday  VARCHAR2
291     , p_saturday  VARCHAR2
292     , x_new_recurrence_rule_id out nocopy  NUMBER
293     , x_return_status out nocopy  VARCHAR2
294     , x_msg_count out nocopy  NUMBER
295     , x_msg_data out nocopy  VARCHAR2
296   )
297 
298   as
299     ddp_start_date_active date;
300     ddp_end_date_active date;
301     ddindx binary_integer; indx binary_integer;
302   begin
303 
304     -- copy data to the local IN or IN-OUT args, if any
305 
306 
307 
308 
309 
310 
311 
312 
313 
314 
315 
316 
317     ddp_start_date_active := rosetta_g_miss_date_in_map(p_start_date_active);
318 
319     ddp_end_date_active := rosetta_g_miss_date_in_map(p_end_date_active);
320 
321 
322 
323 
324 
325 
326 
327 
328 
329 
330 
331 
332 
333 
334 
335 
336 
337 
338 
339 
340 
341 
342 
343 
344 
345 
346 
347 
348 
349     -- here's the delegated call to the old PL/SQL routine
350     jtf_task_recurrences_pub.update_task_recurrence(p_api_version,
351       p_init_msg_list,
352       p_commit,
353       p_task_id,
354       p_recurrence_rule_id,
355       p_occurs_which,
356       p_day_of_week,
357       p_date_of_month,
358       p_occurs_month,
359       p_occurs_uom,
360       p_occurs_every,
361       p_occurs_number,
362       ddp_start_date_active,
363       ddp_end_date_active,
364       p_template_flag,
365       p_attribute1,
366       p_attribute2,
367       p_attribute3,
368       p_attribute4,
369       p_attribute5,
370       p_attribute6,
371       p_attribute7,
372       p_attribute8,
373       p_attribute9,
374       p_attribute10,
375       p_attribute11,
376       p_attribute12,
377       p_attribute13,
378       p_attribute14,
379       p_attribute15,
380       p_attribute_category,
381       p_sunday,
382       p_monday,
383       p_tuesday,
384       p_wednesday,
385       p_thursday,
386       p_friday,
387       p_saturday,
388       x_new_recurrence_rule_id,
389       x_return_status,
390       x_msg_count,
391       x_msg_data);
392 
393     -- copy data back from the local variables to OUT or IN-OUT args, if any
394 
395 
396 
397 
398 
399 
400 
401 
402 
403 
404 
405 
406 
407 
408 
409 
410 
411 
412 
413 
414 
415 
416 
417 
418 
419 
420 
421 
422 
423 
424 
425 
426 
427 
428 
429 
430 
431 
432 
433 
434 
435   end;
436 
437 end jtf_task_recurrences_pub_w;