DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_TASK_TEMP_GROUP_PUB

Source


1 PACKAGE Body JTF_TASK_TEMP_GROUP_PUB AS
2 /* $Header: jtfptkgb.pls 115.28 2002/12/06 01:23:03 sachoudh ship $ */
3 
4 
5 procedure  val_task_temp_group_id (p_task_template_group_id  in number) is
6 
7   cursor val_temp_group_id is
8     select null
9       from jtf_task_temp_groups_vl
10       where task_template_group_id = p_task_template_group_id;
11 
12   v_dummy   varchar2(1);
13 
14 begin
15 
16   open val_temp_group_id;
17   fetch val_temp_group_id into v_dummy;
18   if (val_temp_group_id%notfound) then
19     close val_temp_group_id;
20     fnd_message.set_name ('JTF', 'JTF_TASK_MISSING_TEMP_GRP');
21     fnd_msg_pub.add ;
22     raise fnd_api.g_exc_error;
23   else
24     close val_temp_group_id;
25   end if;
26 
27 end val_task_temp_group_id;
28 
29 
30 procedure val_task_temp_group_name (p_task_template_group_name in varchar2) is
31 
32   cursor val_name is
33     select null
34       from jtf_task_temp_groups_vl
35       where template_group_name = p_task_template_group_name;
36 
37   v_dummy varchar2(1);
38 
39 begin
40 
41   open val_name;
42   fetch val_name into v_dummy;
43   if (val_name%found) then
44     close val_name;
45     fnd_message.set_name ('JTF', 'JTF_TK_DUP_TEMPL_GRP_NAME');
46     fnd_msg_pub.add ;
47     raise fnd_api.g_exc_error;
48   else
49     close val_name;
50   end if;
51 
52 end val_task_temp_group_name;
53 
54 procedure val_upd_task_temp_group_name
55   (p_task_template_group_name in varchar2,
56    p_task_template_group_id   in varchar2
57   ) is
58 
59   cursor val_name_upd is
60     select null
61       from jtf_task_temp_groups_vl
62       where template_group_name = p_task_template_group_name
63         and task_template_group_id <> p_task_template_group_id;
64 
65   v_dummy varchar2(1);
66 
67 begin
68 
69   open val_name_upd;
70   fetch val_name_upd into v_dummy;
71   if (val_name_upd%found) then
72     close val_name_upd;
73     fnd_message.set_name ('JTF', 'JTF_TK_DUP_TEMPL_GRP_NAME');
74     fnd_msg_pub.add ;
75     raise fnd_api.g_exc_error;
76   else
77     close val_name_upd;
78   end if;
79 
80 end val_upd_task_temp_group_name;
81 
82 procedure   val_source_object_type_code (p_src_obj_typ in varchar2) is
83 
84   cursor val_src is
85     select null
86       from jtf_objects_vl
87       where object_code = p_src_obj_typ
88         and trunc(sysdate) between trunc(nvl(start_date_active,sysdate))
89                            and     trunc(nvl(end_date_active,  sysdate));
90 
91   v_dummy  varchar2(1);
92 
93 begin
94 
95   open val_src;
96   fetch val_src into v_dummy;
97   if (val_src%notfound) then
98     close val_src;
99     fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_OBJECT_CODE');
100     fnd_message.set_token ('P_OBJECT_TYPE_CODE', 'Document Type:'||p_src_obj_typ);
101     fnd_msg_pub.add ;
102     raise fnd_api.g_exc_error;
103   else
104     close val_src;
105   end if;
106 
107 end val_source_object_type_code;
108 
109 procedure  val_dates (p_start in date, p_end in date) is
110 
111 begin
112 
113   if (p_start is not null) and (p_end is not null) then
114 
115     if (p_end < p_start) then
116       fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_DATES');
117       fnd_message.set_token ('P_DATE_TAG', p_start);
118       fnd_msg_pub.add ;
119       raise fnd_api.g_exc_error;
120     end if;
121 
122   end if;
123 
124 end val_dates;
125 
126 
127 
128 Procedure  CREATE_TASK_TEMPLATE_GROUP
129   (
130   P_API_VERSION             IN  NUMBER,
131   P_INIT_MSG_LIST           IN  VARCHAR2    default fnd_api.g_false,
132   P_COMMIT                  IN  VARCHAR2    default fnd_api.g_false,
133   P_VALIDATE_LEVEL          IN  VARCHAR2    default fnd_api.g_valid_level_full,
134   P_TEMPLATE_GROUP_NAME     IN  VARCHAR2,
135   P_SOURCE_OBJECT_TYPE_CODE IN  VARCHAR2,
136   P_START_DATE_ACTIVE       IN  DATE,
137   P_END_DATE_ACTIVE         IN  DATE,
138   P_DESCRIPTION             IN  VARCHAR2,
139   P_ATTRIBUTE1              IN  VARCHAR2,
140   P_ATTRIBUTE2              IN  VARCHAR2,
141   P_ATTRIBUTE3              IN  VARCHAR2,
142   P_ATTRIBUTE4              IN  VARCHAR2,
143   P_ATTRIBUTE5              IN  VARCHAR2,
144   P_ATTRIBUTE6              IN  VARCHAR2,
145   P_ATTRIBUTE7              IN  VARCHAR2,
146   P_ATTRIBUTE8              IN  VARCHAR2,
147   P_ATTRIBUTE9              IN  VARCHAR2,
148   P_ATTRIBUTE10             IN  VARCHAR2,
149   P_ATTRIBUTE11             IN  VARCHAR2,
150   P_ATTRIBUTE12             IN  VARCHAR2,
151   P_ATTRIBUTE13             IN  VARCHAR2,
152   P_ATTRIBUTE14             IN  VARCHAR2,
153   P_ATTRIBUTE15             IN  VARCHAR2,
154   P_ATTRIBUTE_CATEGORY      IN  VARCHAR2,
155   X_RETURN_STATUS           OUT NOCOPY VARCHAR2,
156   X_MSG_COUNT               OUT NOCOPY NUMBER,
157   X_MSG_DATA                OUT NOCOPY VARCHAR2,
158   X_TASK_TEMPLATE_GROUP_ID  OUT NOCOPY NUMBER,
159   p_APPLICATION_ID 	    IN NUMBER default null
160   ) is
161 
162   l_api_version           constant number := 1.0;
163   l_api_name              constant varchar2(30) := 'CREATE_TASK_TEMPLATE_GROUP'  ;
164   l_return_status         varchar2(1)           := fnd_api.g_ret_sts_success ;
165   l_msg_data              varchar2(2000) ;
166   l_msg_count             number ;
167 
168   l_task_id               jtf_tasks_b.task_id%type ;
169   l_DEPENDENT_ON_TASK_id  jtf_tasks_b.task_id%type ;
170 
171 
172 begin
173 
174   savepoint create_task_template_group;
175 
176   x_return_status := fnd_api.g_ret_sts_success;
177 
178   -- standard call to check for call compatibility
179   if (not fnd_api.compatible_api_call(l_api_version,
180                                       p_api_version,
181                                       l_api_name,
182                                       g_pkg_name) )
183   then
184     raise fnd_api.g_exc_unexpected_error;
185   end if;
186 
187   -- initialize message list i p_init_msg_list is set to true
188   if (fnd_api.to_boolean(p_init_msg_list)) then
189     fnd_msg_pub.initialize;
190   end if;
191 
192   --check for required parameters
193   if (p_template_group_name is null) then
194     fnd_message.set_name('JTF', 'JTF_TK_TMP_GRP_NAME_REQ');
195     fnd_msg_pub.add ;
196     raise fnd_api.g_exc_error;
197   end if;
198 
199   if (p_source_object_type_code is null) then
200     fnd_message.set_name('JTF', 'JTF_TASK_MISSING_OBJECT_CODE');
201     fnd_msg_pub.add ;
202     raise fnd_api.g_exc_error;
203   end if;
204 
205   -- validate fields
206   val_task_temp_group_name (p_template_group_name);
207 
208   val_source_object_type_code (p_source_object_type_code);
209 
210   val_dates (p_start_date_active, p_end_date_active);
211 
212   jtf_task_temp_group_pvt.create_task_template_group
213     (
214     P_COMMIT,
215     P_TEMPLATE_GROUP_NAME,
216     P_SOURCE_OBJECT_TYPE_CODE,
217     P_START_DATE_ACTIVE,
218     P_END_DATE_ACTIVE,
219     P_DESCRIPTION,
220     P_ATTRIBUTE1,
221     P_ATTRIBUTE2,
222     P_ATTRIBUTE3,
223     P_ATTRIBUTE4,
224     P_ATTRIBUTE5,
225     P_ATTRIBUTE6,
226     P_ATTRIBUTE7,
227     P_ATTRIBUTE8,
228     P_ATTRIBUTE9,
229     P_ATTRIBUTE10,
230     P_ATTRIBUTE11,
231     P_ATTRIBUTE12,
232     P_ATTRIBUTE13,
233     P_ATTRIBUTE14,
234     P_ATTRIBUTE15,
235     P_ATTRIBUTE_CATEGORY,
236     X_RETURN_STATUS,
237     X_MSG_COUNT,
238     X_MSG_DATA,
239     X_TASK_TEMPLATE_GROUP_ID,
240     P_APPLICATION_ID
241     );
242 
243 
244 
245   EXCEPTION
246 
247         WHEN FND_API.G_EXC_ERROR THEN
248                 ROLLBACK TO create_task_template_group;
249                 x_return_status := FND_API.G_RET_STS_ERROR ;
250                 FND_MSG_PUB.Count_And_Get
251                         (p_count => x_msg_count ,
252                          p_data => x_msg_data
253                         );
254         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
255                 ROLLBACK TO create_task_template_group;
256                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
257                 FND_MSG_PUB.Count_And_Get
258                 (p_count => x_msg_count ,
259                  p_data => x_msg_data
260                 );
261         WHEN OTHERS THEN
262                 ROLLBACK TO create_task_template_group;
263                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
264                 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
265                         FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name);
266                 END IF;
267                 FND_MSG_PUB.Count_And_Get
268                         (p_count => x_msg_count ,
269                          p_data => x_msg_data
270                         );
271 
272 end create_task_template_group;
273 
274 --Procedure to Upate Task Template Group
275    PROCEDURE lock_TASK_TEMPLATE_GROUP (
276       p_api_version       IN       NUMBER,
277       p_init_msg_list     IN       VARCHAR2 DEFAULT fnd_api.g_false,
278       p_commit            IN       VARCHAR2 DEFAULT fnd_api.g_false,
279       P_TASK_TEMPLATE_GROUP_ID   IN       NUMBER,
280       p_object_version_number IN   NUMBER,
281       x_return_status     OUT NOCOPY      VARCHAR2,
282       x_msg_data          OUT NOCOPY      VARCHAR2,
283       x_msg_count         OUT NOCOPY      NUMBER
284    ) is
285         l_api_version    CONSTANT NUMBER                                 := 1.0;
286         l_api_name       CONSTANT VARCHAR2(30)                           := 'LOCK_TASK_TEMP_GROUPS';
287 
288         Resource_Locked exception ;
289 
290         PRAGMA EXCEPTION_INIT ( Resource_Locked , - 54 ) ;
291 
292    begin
293         SAVEPOINT lock_task_template_group;
294 
295         x_return_status := fnd_api.g_ret_sts_success;
296 
297         IF NOT fnd_api.compatible_api_call (l_api_version, p_api_version, l_api_name, g_pkg_name)
298         THEN
299             RAISE fnd_api.g_exc_unexpected_error;
300         END IF;
301 
302         IF fnd_api.to_boolean (p_init_msg_list)
303         THEN
304             fnd_msg_pub.initialize;
305         END IF;
306 
307         x_return_status := fnd_api.g_ret_sts_success;
308 
309         jtf_task_temp_groups_pkg.lock_row(
310             x_task_template_group_id => p_task_template_group_id ,
311             x_object_version_number => p_object_version_number  );
312 
313 
314         fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
315 
316     EXCEPTION
317        WHEN Resource_Locked then
318             ROLLBACK TO lock_task_template_group;
319             fnd_message.set_name ('JTF', 'JTF_TASK_RESOURCE_LOCKED');
320             fnd_message.set_token ('P_LOCKED_RESOURCE', 'Contacts');
321             fnd_msg_pub.add ;
322             x_return_status := fnd_api.g_ret_sts_unexp_error;
323             fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
324 
325         WHEN fnd_api.g_exc_unexpected_error
326         THEN
327             ROLLBACK TO lock_task_template_group;
328             x_return_status := fnd_api.g_ret_sts_unexp_error;
329             fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
330         WHEN OTHERS
331         THEN
332             ROLLBACK TO lock_task_template_group;
333             fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
334             fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
335             fnd_msg_pub.add ;
336             x_return_status := fnd_api.g_ret_sts_unexp_error;
337             fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
338     END;
339 
340 
341 
342 Procedure  UPDATE_TASK_TEMPLATE_GROUP
343   (
344   P_API_VERSION             IN  NUMBER,
345   P_INIT_MSG_LIST           IN  VARCHAR2    default fnd_api.g_false,
346   P_COMMIT                  IN  VARCHAR2    default fnd_api.g_false,
347   P_VALIDATE_LEVEL          IN  VARCHAR2    default fnd_api.g_valid_level_full,
348   P_TASK_TEMPLATE_GROUP_ID  IN  NUMBER,
349   P_TEMPLATE_GROUP_NAME     IN  VARCHAR2,
350   P_SOURCE_OBJECT_TYPE_CODE IN  VARCHAR2,
351   P_START_DATE_ACTIVE       IN  DATE,
352   P_END_DATE_ACTIVE         IN  DATE,
353   P_DESCRIPTION             IN  VARCHAR2,
354   P_ATTRIBUTE1              IN  VARCHAR2,
355   P_ATTRIBUTE2              IN  VARCHAR2,
356   P_ATTRIBUTE3              IN  VARCHAR2,
357   P_ATTRIBUTE4              IN  VARCHAR2,
358   P_ATTRIBUTE5              IN  VARCHAR2,
359   P_ATTRIBUTE6              IN  VARCHAR2,
360   P_ATTRIBUTE7              IN  VARCHAR2,
361   P_ATTRIBUTE8              IN  VARCHAR2,
362   P_ATTRIBUTE9              IN  VARCHAR2,
363   P_ATTRIBUTE10             IN  VARCHAR2,
364   P_ATTRIBUTE11             IN  VARCHAR2,
365   P_ATTRIBUTE12             IN  VARCHAR2,
366   P_ATTRIBUTE13             IN  VARCHAR2,
367   P_ATTRIBUTE14             IN  VARCHAR2,
368   P_ATTRIBUTE15             IN  VARCHAR2,
369   P_ATTRIBUTE_CATEGORY      IN  VARCHAR2,
370   X_RETURN_STATUS           OUT NOCOPY VARCHAR2,
371   X_MSG_COUNT               OUT NOCOPY NUMBER,
372   X_MSG_DATA                OUT NOCOPY VARCHAR2,
373   X_OBJECT_VERSION_NUMBER   IN OUT NOCOPY NUMBER,
374   p_application_id 	    IN NUMBER default null
375   ) is
376 
377   l_api_version           constant number := 1.0;
378   l_api_name              constant varchar2(30) := 'UPDATE_TASK_TEMPLATE_GROUP'  ;
379   l_return_status         varchar2(1)           := fnd_api.g_ret_sts_success ;
380   l_msg_data              varchar2(2000) ;
381   l_msg_count             number ;
382 
383 begin
384 
385   savepoint update_task_template_group;
386 
387   x_return_status := fnd_api.g_ret_sts_success;
388 
389   -- standard call to check for call compatibility
390   if (not fnd_api.compatible_api_call(l_api_version,
391                                       p_api_version,
392                                       l_api_name,
393                                       g_pkg_name) )
394   then
395     raise fnd_api.g_exc_unexpected_error;
396   end if;
397 
398   -- initialize message list i p_init_msg_list is set to true
399   if (fnd_api.to_boolean(p_init_msg_list)) then
400     fnd_msg_pub.initialize;
401   end if;
402 
403   --check for required parameters
404   if (p_task_template_group_id is null) then
405     fnd_message.set_name('JTF', 'JTF_TASK_MISSING_TEMP_GRP');
406     fnd_msg_pub.add ;
407     raise fnd_api.g_exc_error;
408   end if;
409 
410   if (p_template_group_name is null) then
411     fnd_message.set_name('JTF', 'JTF_TK_TMP_GRP_NAME_REQ');
412     fnd_msg_pub.add ;
413     raise fnd_api.g_exc_error;
414   end if;
415 
416   if (p_source_object_type_code is null) then
417     fnd_message.set_name('JTF', 'JTF_TASK_MISSING_OBJECT_CODE');
418     fnd_msg_pub.add ;
419     raise fnd_api.g_exc_error;
420   end if;
421 
422 
423   -- validate fields
424   val_task_temp_group_id (p_task_template_group_id);
425   val_upd_task_temp_group_name (p_template_group_name, p_task_template_group_id);
426   val_source_object_type_code (p_source_object_type_code);
427   val_dates (p_start_date_active, p_end_date_active);
428 
429   jtf_task_temp_group_pvt.update_task_template_group
430     (
431     P_COMMIT,
432     P_TASK_TEMPLATE_GROUP_ID,
433     P_TEMPLATE_GROUP_NAME,
434     P_SOURCE_OBJECT_TYPE_CODE,
435     P_START_DATE_ACTIVE,
436     P_END_DATE_ACTIVE,
440     P_ATTRIBUTE3,
437     P_DESCRIPTION,
438     P_ATTRIBUTE1,
439     P_ATTRIBUTE2,
441     P_ATTRIBUTE4,
442     P_ATTRIBUTE5,
443     P_ATTRIBUTE6,
444     P_ATTRIBUTE7,
445     P_ATTRIBUTE8,
446     P_ATTRIBUTE9,
447     P_ATTRIBUTE10,
448     P_ATTRIBUTE11,
449     P_ATTRIBUTE12,
450     P_ATTRIBUTE13,
451     P_ATTRIBUTE14,
452     P_ATTRIBUTE15,
453     P_ATTRIBUTE_CATEGORY,
454     X_RETURN_STATUS,
455     X_MSG_COUNT,
456     X_MSG_DATA,
457     X_OBJECT_VERSION_NUMBER,
458     P_APPLICATION_ID
459     );
460 
461 
462 
463   EXCEPTION
464 
465         WHEN FND_API.G_EXC_ERROR THEN
466                 ROLLBACK TO update_task_template_group;
467                 x_return_status := FND_API.G_RET_STS_ERROR ;
468                 FND_MSG_PUB.Count_And_Get
469                         (p_count => x_msg_count ,
470                          p_data => x_msg_data
471                         );
472         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
473                 ROLLBACK TO update_task_template_group;
474                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
475                 FND_MSG_PUB.Count_And_Get
476                 (p_count => x_msg_count ,
477                  p_data => x_msg_data
478                 );
479         WHEN OTHERS THEN
480 
481                 ROLLBACK TO update_task_template_group;
482                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
483                 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
484                         FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name);
485                 END IF;
486                 FND_MSG_PUB.Count_And_Get
487                         (p_count => x_msg_count ,
488                          p_data => x_msg_data
489                         );
490 
491   end UPDATE_TASK_TEMPLATE_GROUP;
492 
493 
494 --Procedure to Delete Task Template Group
495 
496 Procedure  DELETE_TASK_TEMPLATE_GROUP
497   (
498   P_API_VERSION              IN  NUMBER,
499   P_INIT_MSG_LIST           IN  VARCHAR2    default fnd_api.g_false,
500   P_COMMIT                  IN  VARCHAR2    default fnd_api.g_false,
501   P_VALIDATE_LEVEL          IN  VARCHAR2    default fnd_api.g_valid_level_full,
502   P_TASK_TEMPLATE_GROUP_ID   IN  NUMBER,
503   X_RETURN_STATUS            OUT NOCOPY VARCHAR2,
504   X_MSG_COUNT                OUT NOCOPY NUMBER,
505   X_MSG_DATA                 OUT NOCOPY VARCHAR2,
506   X_OBJECT_VERSION_NUMBER    IN NUMBER
507   ) is
508 
509 
510   l_api_version           constant number := 1.0;
511   l_api_name              constant varchar2(30) := 'DELETE_TASK_TEMPLATE_GROUP'  ;
512   l_return_status         varchar2(1)           := fnd_api.g_ret_sts_success ;
513   l_msg_data              varchar2(2000) ;
514   l_msg_count             number ;
515 
516   l_task_id               jtf_tasks_b.task_id%type ;
517 
518 begin
519 
520 
521 
522   --                      to_char(p_task_template_group_id)||
523   --                      '  g_pkg_name:'||g_pkg_name);
524 
525   savepoint delete_task_template_group;
526 
527   x_return_status := fnd_api.g_ret_sts_success;
528 
529   -- standard call to check for call compatibility
530   if (not fnd_api.compatible_api_call(l_api_version,
531                                       p_api_version,
532                                       l_api_name,
533                                       g_pkg_name) )
534   then
535     raise fnd_api.g_exc_unexpected_error;
536   end if;
537 
538   -- initialize message list i p_init_msg_list is set to true
539   if (fnd_api.to_boolean(p_init_msg_list)) then
540     fnd_msg_pub.initialize;
541   end if;
542 
543   --check for required parameters
544   if (p_task_template_group_id is null) then
545     fnd_message.set_name('JTF', 'JTF_TASK_MISSING_TEMP_GRP');
546     fnd_msg_pub.add ;
547     raise fnd_api.g_exc_error;
548   end if;
549 
550   -- validate parameters
551   val_task_temp_group_id (p_task_template_group_id);
552 
553   jtf_task_temp_group_pvt.delete_task_template_group
554     (
555     P_COMMIT,
556     P_TASK_TEMPLATE_GROUP_ID,
557     X_RETURN_STATUS,
558     X_MSG_COUNT,
559     X_MSG_DATA
560     );
561 
562 
563 
564 EXCEPTION
565 
566       WHEN FND_API.G_EXC_ERROR THEN
567 
568               ROLLBACK TO delete_task_template_group;
569               x_return_status := FND_API.G_RET_STS_ERROR ;
570               FND_MSG_PUB.Count_And_Get
571                       (p_count => x_msg_count ,
572                        p_data => x_msg_data
573                       );
574       WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
575 
576               ROLLBACK TO delete_task_template_group;
577               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
578               FND_MSG_PUB.Count_And_Get
579               (p_count => x_msg_count ,
580                p_data => x_msg_data
581               );
582       WHEN OTHERS THEN
583 
584               ROLLBACK TO delete_task_template_group;
585               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
589               FND_MSG_PUB.Count_And_Get
586               IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
587                       FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name);
588               END IF;
590                       (p_count => x_msg_count ,
591                        p_data => x_msg_data
592                       );
593 
594 end delete_task_template_group;
595 
596 Procedure  GET_TASK_TEMPLATE_GROUP
597  (
598  P_API_VERSION              IN  NUMBER,
599  P_INIT_MSG_LIST            IN  VARCHAR2    default fnd_api.g_false,
600  P_COMMIT                   IN  VARCHAR2    default fnd_api.g_false,
601  P_VALIDATE_LEVEL           IN  VARCHAR2    default fnd_api.g_valid_level_full,
602  P_TASK_TEMPLATE_GROUP_ID   IN  NUMBER,
603  P_TEMPLATE_GROUP_NAME      IN  VARCHAR2,
604  P_SOURCE_OBJECT_TYPE_CODE  IN  VARCHAR2,
605  P_START_DATE_ACTIVE        IN  DATE,
606  P_END_DATE_ACTIVE          IN  DATE,
607  P_SORT_DATA                IN  SORT_DATA,
608  P_QUERY_OR_NEXT_CODE       IN  VARCHAR2    default 'Q',
609  P_START_POINTER            IN  NUMBER,
610  P_REC_WANTED               IN  NUMBER,
611  P_SHOW_ALL                 IN  VARCHAR2,
612  X_RETURN_STATUS            OUT NOCOPY VARCHAR2,
613  X_MSG_COUNT                OUT NOCOPY NUMBER,
614  X_MSG_DATA                 OUT NOCOPY VARCHAR2,
615  X_TASK_TEMPLATE_GROUP      OUT NOCOPY TASK_TEMP_GROUP_TBL,
616  X_TOTAL_RETRIEVED          OUT NOCOPY NUMBER,
617  X_TOTAL_RETURNED           OUT NOCOPY NUMBER,
618  p_APPLICATION_ID 	    IN  NUMBER default null
619  ) is
620 
621 
622   l_api_version           constant number := 1.0;
623   l_api_name              constant varchar2(30) := 'GET_TASK_TEMPLATE_GROUP';
624   l_return_status         varchar2(1)           := fnd_api.g_ret_sts_success ;
625   l_msg_data              varchar2(2000) ;
626   l_msg_count             number ;
627 
628   l_task_id               jtf_tasks_b.task_id%type ;
629 
630 begin
631 
632 
633 
634 
635   --                      to_char(p_task_template_group_id)||
636   --                      '  g_pkg_name:'||g_pkg_name);
637 
638   savepoint get_task_template_group;
639 
640   x_return_status := fnd_api.g_ret_sts_success;
641 
642   -- standard call to check for call compatibility
643   if (not fnd_api.compatible_api_call(l_api_version,
644                                       p_api_version,
645                                       l_api_name,
646                                       g_pkg_name) )
647   then
648     raise fnd_api.g_exc_unexpected_error;
649   end if;
650 
651   -- initialize message list i p_init_msg_list is set to true
652   if (fnd_api.to_boolean(p_init_msg_list)) then
653     fnd_msg_pub.initialize;
654   end if;
655 
656   -- required parameters to control records returned
657 
658   -- p_query_or_next_code should be Q or N
659   if (p_query_or_next_code not in ('Q', 'N')) or (p_query_or_next_code is null) then
660     fnd_message.set_name('JTF', 'JTF_TK_INV_QRY_NXT');
661     fnd_msg_pub.add ;
662     raise fnd_api.g_exc_error;
663   end if;
664 
665  -- dbms_output.put_line('1');
666 
667   -- p_show_all should be Y or N
668   if (p_show_all not in ('Y', 'N')) or (p_show_all is null) then
669     fnd_message.set_name('JTF', 'JTF_TK_INV_SHOW_ALL');
670     fnd_msg_pub.add ;
671     raise fnd_api.g_exc_error;
672   end if;
673  -- dbms_output.put_line('2');
674 
675   if (p_show_all = 'N') then
676 
677     if (p_start_pointer is null) then
678   --  dbms_output.put_line('3');
679       fnd_message.set_name('JTF', 'JTF_TK_NULL_STRT_PTR');
680       fnd_msg_pub.add ;
681         raise fnd_api.g_exc_error;
682     end if;
683 
684     if (p_rec_wanted is null) then
685  --   dbms_output.put_line('4');
686       fnd_message.set_name('JTF', 'JTF_TK_NULL_REC_WANT');
687       fnd_msg_pub.add ;
688       raise fnd_api.g_exc_error;
689     end if;
690 
691   end if;
692 
693 
694   -- validate parameters
695   -- if id is entered then check to see if its valid
696   if (p_task_template_group_id is not null) then
697     val_task_temp_group_id (p_task_template_group_id);
698   end if;
699 --  dbms_output.put_line('callign pvt.');
700 
701   jtf_task_temp_group_pvt.GET_TASK_TEMPLATE_GROUP
702      (
703      P_COMMIT                   ,
704      P_TASK_TEMPLATE_GROUP_ID   ,
705      P_TEMPLATE_GROUP_NAME      ,
706      P_SOURCE_OBJECT_TYPE_CODE  ,
707      P_START_DATE_ACTIVE        ,
708      P_END_DATE_ACTIVE          ,
709      P_SORT_DATA                ,
710      P_QUERY_OR_NEXT_CODE       ,
711      P_START_POINTER            ,
712      P_REC_WANTED               ,
713      P_SHOW_ALL                 ,
714      X_RETURN_STATUS            ,
715      X_MSG_COUNT                ,
716      X_MSG_DATA                 ,
717      X_TASK_TEMPLATE_GROUP      ,
718      X_TOTAL_RETRIEVED          ,
719      X_TOTAL_RETURNED,
720      P_APPLICATION_ID
721      );
722 
723 
724 EXCEPTION
725 
726       WHEN FND_API.G_EXC_ERROR THEN
727               ROLLBACK TO get_task_template_group;
728               x_return_status := FND_API.G_RET_STS_ERROR ;
729               FND_MSG_PUB.Count_And_Get
730                       (p_count => x_msg_count ,
731                        p_data => x_msg_data
732                       );
733       WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
734 
735               ROLLBACK TO get_task_template_group;
736               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
737               FND_MSG_PUB.Count_And_Get
738               (p_count => x_msg_count ,
739                p_data => x_msg_data
740               );
741       WHEN OTHERS THEN
742               ROLLBACK TO get_task_template_group;
743               x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
744               IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
745                       FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name);
746               END IF;
747               FND_MSG_PUB.Count_And_Get
748                       (p_count => x_msg_count ,
749                        p_data => x_msg_data
750                       );
751 
752 end get_task_template_group;
753 
754 END;