64: p_adjustment_time_uom);
65:
66: if l_master_start_date > l_child_start_date
67: then
68: fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_DEPEND_S2S');
69: fnd_msg_pub.add;
70: raise fnd_api.g_exc_error;
71: end if;
72:
81: p_adjustment_time_uom);
82:
83: if (l_master_end_date > l_child_end_date)
84: then
85: fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_DEPEND_F2F');
86: fnd_msg_pub.add;
87: raise fnd_api.g_exc_error;
88: end if;
89:
98: p_adjustment_time_uom);
99:
100: if (l_master_end_date > l_child_start_date)
101: then
102: fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_DEPEND_F2S');
103: fnd_msg_pub.add;
104: raise fnd_api.g_exc_error;
105: end if;
106:
115: p_adjustment_time_uom);
116:
117: if (l_master_start_date > l_child_end_date)
118: then
119: fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_DEPEND_S2F');
120: fnd_msg_pub.add;
121: raise fnd_api.g_exc_error;
122: end if;
123: end if;
129: then
130: return fnd_api.g_ret_sts_error;
131: when others
132: then
133: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
134: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
135: fnd_msg_pub.add;
136: return fnd_api.g_ret_sts_unexp_error;
137: end;
130: return fnd_api.g_ret_sts_error;
131: when others
132: then
133: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
134: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
135: fnd_msg_pub.add;
136: return fnd_api.g_ret_sts_unexp_error;
137: end;
138:
199:
200: if p_task_id = p_dependent_on_task_id
201: then
202: l_return_status := fnd_api.g_ret_sts_error;
203: fnd_message.set_name ('JTF', 'JTF_TASK_ITSELF_DEPENDS');
204: fnd_msg_pub.add;
205: raise fnd_api.g_exc_error;
206: end if;
207:
213: if c_check_dup_temp_y%found
214: then
215: close c_check_dup_temp_y;
216: l_return_status := fnd_api.g_ret_sts_error;
217: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_EXISTS');
218: fnd_msg_pub.add;
219: raise fnd_api.g_exc_error;
220: end if;
221: close c_check_dup_temp_y;
226: if c_check_dup_temp_y%found
227: then
228: close c_check_dup_temp_y;
229: l_return_status := fnd_api.g_ret_sts_error;
230: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_RVERSE_EXISTS');
231: fnd_msg_pub.add;
232: raise fnd_api.g_exc_error;
233: end if;
234: close c_check_dup_temp_y;
239: if c_check_cyc_temp_y%found
240: then
241: close c_check_cyc_temp_y;
242: l_return_status := fnd_api.g_ret_sts_unexp_error;
243: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_CYCLICAL');
244: fnd_msg_pub.add;
245: raise fnd_api.g_exc_error;
246: end if;
247: close c_check_cyc_temp_y;
253: if c_check_dup_temp_n%found
254: then
255: close c_check_dup_temp_n;
256: l_return_status := fnd_api.g_ret_sts_error;
257: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_EXISTS');
258: fnd_msg_pub.add;
259: raise fnd_api.g_exc_error;
260: end if;
261: close c_check_dup_temp_n;
266: if c_check_dup_temp_n%found
267: then
268: close c_check_dup_temp_n;
269: l_return_status := fnd_api.g_ret_sts_error;
270: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_RVERSE_EXISTS');
271: fnd_msg_pub.add;
272: raise fnd_api.g_exc_error;
273: end if;
274: close c_check_dup_temp_n;
279: if c_check_cyc_temp_n%found
280: then
281: close c_check_cyc_temp_n;
282: l_return_status := fnd_api.g_ret_sts_unexp_error;
283: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_CYCLICAL');
284: fnd_msg_pub.add;
285: raise fnd_api.g_exc_error;
286: end if;
287: close c_check_cyc_temp_n;
297: then
298: return fnd_api.g_ret_sts_unexp_error;
299: when others
300: then
301: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
302: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
303: fnd_msg_pub.add;
304: return fnd_api.g_ret_sts_unexp_error;
305: end;
298: return fnd_api.g_ret_sts_unexp_error;
299: when others
300: then
301: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
302: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
303: fnd_msg_pub.add;
304: return fnd_api.g_ret_sts_unexp_error;
305: end;
306:
441: when no_data_found
442: then
443: rollback to reconnect_dependency_pvt;
444: x_return_status := fnd_api.g_ret_sts_unexp_error;
445: fnd_message.set_name ('JTF', 'JTF_TASK_CREATING_DEPENDS');
446: fnd_msg_pub.add;
447: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
448: when others
449: then
448: when others
449: then
450: rollback to reconnect_dependency_pvt;
451: x_return_status := fnd_api.g_ret_sts_unexp_error;
452: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
453: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
454: fnd_msg_pub.add;
455: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
456: end;
449: then
450: rollback to reconnect_dependency_pvt;
451: x_return_status := fnd_api.g_ret_sts_unexp_error;
452: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
453: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
454: fnd_msg_pub.add;
455: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
456: end;
457:
533: then
534: if (jtf_task_utl.get_task_template_group (p_task_id) <>
535: jtf_task_utl.get_task_template_group (p_dependent_on_task_id))
536: then
537: fnd_message.set_name ('JTF', 'JTF_TASK_INCONSISTENT_TEMP');
538: fnd_message.set_token ('P_TASK_TEMPLATE_1', p_task_id);
539: fnd_message.set_token ('P_TASK_TEMPLATE_2', p_dependent_on_task_id);
540: fnd_msg_pub.add;
541: raise fnd_api.g_exc_unexpected_error;
534: if (jtf_task_utl.get_task_template_group (p_task_id) <>
535: jtf_task_utl.get_task_template_group (p_dependent_on_task_id))
536: then
537: fnd_message.set_name ('JTF', 'JTF_TASK_INCONSISTENT_TEMP');
538: fnd_message.set_token ('P_TASK_TEMPLATE_1', p_task_id);
539: fnd_message.set_token ('P_TASK_TEMPLATE_2', p_dependent_on_task_id);
540: fnd_msg_pub.add;
541: raise fnd_api.g_exc_unexpected_error;
542: end if;
535: jtf_task_utl.get_task_template_group (p_dependent_on_task_id))
536: then
537: fnd_message.set_name ('JTF', 'JTF_TASK_INCONSISTENT_TEMP');
538: fnd_message.set_token ('P_TASK_TEMPLATE_1', p_task_id);
539: fnd_message.set_token ('P_TASK_TEMPLATE_2', p_dependent_on_task_id);
540: fnd_msg_pub.add;
541: raise fnd_api.g_exc_unexpected_error;
542: end if;
543: else
572: l_d_source_object_type_code is not null) or
573: (l_source_object_type_code is not null and
574: l_d_source_object_type_code is null))
575: then
576: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_TYPE_CODE');
577: fnd_msg_pub.add;
578: raise fnd_api.g_exc_error;
579: end if;
580:
581: if (l_source_object_type_code is not null and l_d_source_object_type_code is not null)
582: then
583: if (l_source_object_type_code <> l_d_source_object_type_code)
584: then
585: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_TYPE_CODE');
586: fnd_msg_pub.add;
587: raise fnd_api.g_exc_error;
588: end if;
589: end if;
667: WHEN no_data_found
668: THEN
669: ROLLBACK TO create_task_dependency_pvt;
670: x_return_status := fnd_api.g_ret_sts_unexp_error;
671: fnd_message.set_name ('JTF', 'JTF_TASK_CREATING_DEPENDS');
672: fnd_msg_pub.add;
673: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
674: WHEN OTHERS
675: THEN
674: WHEN OTHERS
675: THEN
676: ROLLBACK TO create_task_dependency_pvt;
677: x_return_status := fnd_api.g_ret_sts_unexp_error;
678: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
679: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
680: fnd_msg_pub.add;
681: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
682: END;
675: THEN
676: ROLLBACK TO create_task_dependency_pvt;
677: x_return_status := fnd_api.g_ret_sts_unexp_error;
678: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
679: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
680: fnd_msg_pub.add;
681: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
682: END;
683:
778: FETCH c_jtf_task_depends INTO task_depends;
779:
780: IF c_jtf_task_depends%NOTFOUND
781: THEN
782: fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_DEPENDS_ID');
783: fnd_message.set_token ('P_DEPENDENCY_ID', p_dependency_id);
784: fnd_msg_pub.add;
785: x_return_status := fnd_api.g_ret_sts_unexp_error;
786: RAISE fnd_api.g_exc_unexpected_error;
779:
780: IF c_jtf_task_depends%NOTFOUND
781: THEN
782: fnd_message.set_name ('JTF', 'JTF_TASK_INVALID_DEPENDS_ID');
783: fnd_message.set_token ('P_DEPENDENCY_ID', p_dependency_id);
784: fnd_msg_pub.add;
785: x_return_status := fnd_api.g_ret_sts_unexp_error;
786: RAISE fnd_api.g_exc_unexpected_error;
787: END IF;
835: then
836: if (jtf_task_utl.get_task_template_group (p_task_id) <>
837: jtf_task_utl.get_task_template_group (p_dependent_on_task_id))
838: then
839: fnd_message.set_name ('JTF', 'JTF_TASK_INCONSISTENT_TEMP');
840: fnd_message.set_token ('P_TASK_TEMPLATE_1', p_task_id);
841: fnd_message.set_token ('P_TASK_TEMPLATE_2', p_dependent_on_task_id);
842: fnd_msg_pub.add;
843: raise fnd_api.g_exc_unexpected_error;
836: if (jtf_task_utl.get_task_template_group (p_task_id) <>
837: jtf_task_utl.get_task_template_group (p_dependent_on_task_id))
838: then
839: fnd_message.set_name ('JTF', 'JTF_TASK_INCONSISTENT_TEMP');
840: fnd_message.set_token ('P_TASK_TEMPLATE_1', p_task_id);
841: fnd_message.set_token ('P_TASK_TEMPLATE_2', p_dependent_on_task_id);
842: fnd_msg_pub.add;
843: raise fnd_api.g_exc_unexpected_error;
844: end if;
837: jtf_task_utl.get_task_template_group (p_dependent_on_task_id))
838: then
839: fnd_message.set_name ('JTF', 'JTF_TASK_INCONSISTENT_TEMP');
840: fnd_message.set_token ('P_TASK_TEMPLATE_1', p_task_id);
841: fnd_message.set_token ('P_TASK_TEMPLATE_2', p_dependent_on_task_id);
842: fnd_msg_pub.add;
843: raise fnd_api.g_exc_unexpected_error;
844: end if;
845: else
874: l_d_source_object_type_code is not null) or
875: (l_source_object_type_code is not null and
876: l_d_source_object_type_code is null))
877: then
878: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_TYPE_CODE');
879: fnd_msg_pub.add;
880: raise fnd_api.g_exc_error;
881: end if;
882:
883: if (l_source_object_type_code is not null and l_d_source_object_type_code is not null)
884: then
885: if (l_source_object_type_code <> l_d_source_object_type_code)
886: then
887: fnd_message.set_name ('JTF', 'JTF_TASK_DEPENDS_TYPE_CODE');
888: fnd_msg_pub.add;
889: raise fnd_api.g_exc_error;
890: end if;
891: end if;
980: WHEN no_data_found
981: THEN
982: ROLLBACK TO create_task_dependency_pvt;
983: x_return_status := fnd_api.g_ret_sts_unexp_error;
984: fnd_message.set_name ('JTF', 'JTF_TASK_CREATING_DEPENDS');
985: fnd_msg_pub.add;
986: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
987: WHEN Resource_Locked then
988: ROLLBACK TO lock_task_depends_pub;
985: fnd_msg_pub.add;
986: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
987: WHEN Resource_Locked then
988: ROLLBACK TO lock_task_depends_pub;
989: fnd_message.set_name ('JTF', 'JTF_TASK_RESOURCE_LOCKED');
990: fnd_message.set_token ('P_LOCKED_RESOURCE', 'Contacts');
991: x_return_status := fnd_api.g_ret_sts_unexp_error;
992: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
993: WHEN OTHERS
986: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
987: WHEN Resource_Locked then
988: ROLLBACK TO lock_task_depends_pub;
989: fnd_message.set_name ('JTF', 'JTF_TASK_RESOURCE_LOCKED');
990: fnd_message.set_token ('P_LOCKED_RESOURCE', 'Contacts');
991: x_return_status := fnd_api.g_ret_sts_unexp_error;
992: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
993: WHEN OTHERS
994: THEN
998: END IF;
999:
1000: ROLLBACK TO update_task_dependency_pvt;
1001: x_return_status := fnd_api.g_ret_sts_unexp_error;
1002: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
1003: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
1004: fnd_msg_pub.add;
1005: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1006: END;
999:
1000: ROLLBACK TO update_task_dependency_pvt;
1001: x_return_status := fnd_api.g_ret_sts_unexp_error;
1002: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
1003: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
1004: fnd_msg_pub.add;
1005: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1006: END;
1007:
1049: FETCH c_jtf_task_depends INTO x;
1050:
1051: IF c_jtf_task_depends%FOUND
1052: THEN
1053: fnd_message.set_name ('JTF', 'JTF_TASK_DELETING_DEPEND');
1054: fnd_msg_pub.add;
1055: x_return_status := fnd_api.g_ret_sts_unexp_error;
1056: RAISE fnd_api.g_exc_unexpected_error;
1057: CLOSE c_jtf_task_depends;
1086: x_return_status := fnd_api.g_ret_sts_unexp_error;
1087: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1088: WHEN Resource_Locked then
1089: ROLLBACK TO lock_task_depends_pub;
1090: fnd_message.set_name ('JTF', 'JTF_TASK_RESOURCE_LOCKED');
1091: fnd_message.set_token ('P_LOCKED_RESOURCE', 'Contacts');
1092: x_return_status := fnd_api.g_ret_sts_unexp_error;
1093: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1094: WHEN OTHERS
1087: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1088: WHEN Resource_Locked then
1089: ROLLBACK TO lock_task_depends_pub;
1090: fnd_message.set_name ('JTF', 'JTF_TASK_RESOURCE_LOCKED');
1091: fnd_message.set_token ('P_LOCKED_RESOURCE', 'Contacts');
1092: x_return_status := fnd_api.g_ret_sts_unexp_error;
1093: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1094: WHEN OTHERS
1095: THEN
1094: WHEN OTHERS
1095: THEN
1096: ROLLBACK TO delete_task_dependency_pvt;
1097: x_return_status := fnd_api.g_ret_sts_unexp_error;
1098: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
1099: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
1100: fnd_msg_pub.add;
1101: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1102: END;
1095: THEN
1096: ROLLBACK TO delete_task_dependency_pvt;
1097: x_return_status := fnd_api.g_ret_sts_unexp_error;
1098: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
1099: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
1100: fnd_msg_pub.add;
1101: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
1102: END;
1103: END; -- CREATE OR REPLACE PACKAGE spec