61: *=======================================================================*/
62:
63: PROCEDURE response_invitation(
64: p_api_version IN NUMBER,
65: p_init_msg_list IN VARCHAR2 DEFAULT fnd_api.g_false,
66: p_commit IN VARCHAR2 DEFAULT fnd_api.g_false,
67: p_object_version_number IN OUT NOCOPY NUMBER,
68: p_response_invitation_rec IN response_invitation_rec,
69: x_return_status OUT NOCOPY VARCHAR2,
62:
63: PROCEDURE response_invitation(
64: p_api_version IN NUMBER,
65: p_init_msg_list IN VARCHAR2 DEFAULT fnd_api.g_false,
66: p_commit IN VARCHAR2 DEFAULT fnd_api.g_false,
67: p_object_version_number IN OUT NOCOPY NUMBER,
68: p_response_invitation_rec IN response_invitation_rec,
69: x_return_status OUT NOCOPY VARCHAR2,
70: x_msg_count OUT NOCOPY NUMBER,
88: l_object_version_number NUMBER := p_object_version_number;
89: BEGIN
90: SAVEPOINT response_invitation_pvt;
91:
92: x_return_status := fnd_api.g_ret_sts_success;
93:
94: IF fnd_api.to_boolean (p_init_msg_list)
95: THEN
96: fnd_msg_pub.initialize;
90: SAVEPOINT response_invitation_pvt;
91:
92: x_return_status := fnd_api.g_ret_sts_success;
93:
94: IF fnd_api.to_boolean (p_init_msg_list)
95: THEN
96: fnd_msg_pub.initialize;
97: END IF;
98:
106:
107: jtf_task_assignments_pvt.update_task_assignment (
108: p_api_version => p_api_version,
109: p_object_version_number => l_object_version_number,
110: p_init_msg_list => fnd_api.g_true,
111: p_commit => fnd_api.g_false,
112: p_task_assignment_id => rec_assignments.task_assignment_id,
113: p_assignment_status_id => p_response_invitation_rec.assignment_status_id,
114: x_return_status => x_return_status,
107: jtf_task_assignments_pvt.update_task_assignment (
108: p_api_version => p_api_version,
109: p_object_version_number => l_object_version_number,
110: p_init_msg_list => fnd_api.g_true,
111: p_commit => fnd_api.g_false,
112: p_task_assignment_id => rec_assignments.task_assignment_id,
113: p_assignment_status_id => p_response_invitation_rec.assignment_status_id,
114: x_return_status => x_return_status,
115: x_msg_count => x_msg_count,
117: p_enable_workflow => 'N',
118: p_abort_workflow => 'N'
119: );
120:
121: IF NOT (x_return_status = fnd_api.g_ret_sts_success)
122: THEN
123: x_return_status := fnd_api.g_ret_sts_unexp_error;
124: RAISE fnd_api.g_exc_unexpected_error;
125: END IF;
119: );
120:
121: IF NOT (x_return_status = fnd_api.g_ret_sts_success)
122: THEN
123: x_return_status := fnd_api.g_ret_sts_unexp_error;
124: RAISE fnd_api.g_exc_unexpected_error;
125: END IF;
126:
127: IF p_response_invitation_rec.task_id = rec_assignments.task_id
120:
121: IF NOT (x_return_status = fnd_api.g_ret_sts_success)
122: THEN
123: x_return_status := fnd_api.g_ret_sts_unexp_error;
124: RAISE fnd_api.g_exc_unexpected_error;
125: END IF;
126:
127: IF p_response_invitation_rec.task_id = rec_assignments.task_id
128: THEN
130: END IF;
131: END LOOP;
132: ----------------------------------------------------
133:
134: IF fnd_api.to_boolean (p_commit)
135: THEN
136: COMMIT WORK;
137: END IF;
138:
137: END IF;
138:
139: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
140: EXCEPTION
141: WHEN fnd_api.g_exc_unexpected_error
142: THEN
143: ROLLBACK TO response_invitation_pvt;
144: x_return_status := fnd_api.g_ret_sts_unexp_error;
145: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
140: EXCEPTION
141: WHEN fnd_api.g_exc_unexpected_error
142: THEN
143: ROLLBACK TO response_invitation_pvt;
144: x_return_status := fnd_api.g_ret_sts_unexp_error;
145: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
146: WHEN OTHERS
147: THEN
148: ROLLBACK TO response_invitation_pvt;
148: ROLLBACK TO response_invitation_pvt;
149: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
150: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
151: fnd_msg_pub.add;
152: x_return_status := fnd_api.g_ret_sts_unexp_error;
153: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
154: END response_invitation;
155:
156: PROCEDURE add_assignee(
154: END response_invitation;
155:
156: PROCEDURE add_assignee(
157: p_api_version IN NUMBER,
158: p_init_msg_list IN VARCHAR2 DEFAULT fnd_api.g_false,
159: p_commit IN VARCHAR2 DEFAULT fnd_api.g_false,
160: p_add_assignee_rec IN add_assignee_rec,
161: x_return_status OUT NOCOPY VARCHAR2,
162: x_msg_count OUT NOCOPY NUMBER,
155:
156: PROCEDURE add_assignee(
157: p_api_version IN NUMBER,
158: p_init_msg_list IN VARCHAR2 DEFAULT fnd_api.g_false,
159: p_commit IN VARCHAR2 DEFAULT fnd_api.g_false,
160: p_add_assignee_rec IN add_assignee_rec,
161: x_return_status OUT NOCOPY VARCHAR2,
162: x_msg_count OUT NOCOPY NUMBER,
163: x_msg_data OUT NOCOPY VARCHAR2,
195: l_add_option VARCHAR2(1) := p_add_assignee_rec.add_option;
196: BEGIN
197: SAVEPOINT add_assignee_pvt;
198:
199: x_return_status := fnd_api.g_ret_sts_success;
200:
201: IF fnd_api.to_boolean (p_init_msg_list)
202: THEN
203: fnd_msg_pub.initialize;
197: SAVEPOINT add_assignee_pvt;
198:
199: x_return_status := fnd_api.g_ret_sts_success;
200:
201: IF fnd_api.to_boolean (p_init_msg_list)
202: THEN
203: fnd_msg_pub.initialize;
204: END IF;
205:
246: fnd_message.set_name ('JTF', 'JTF_TK_INVALID_RECUR_RULE');
247: fnd_message.set_token ('P_TASK_RECURRENCE_RULE_ID', p_add_assignee_rec.recurrence_rule_id);
248: fnd_msg_pub.add;
249:
250: x_return_status := fnd_api.g_ret_sts_unexp_error;
251: RAISE fnd_api.g_exc_unexpected_error;
252: END IF;
253: CLOSE c_recur;
254:
247: fnd_message.set_token ('P_TASK_RECURRENCE_RULE_ID', p_add_assignee_rec.recurrence_rule_id);
248: fnd_msg_pub.add;
249:
250: x_return_status := fnd_api.g_ret_sts_unexp_error;
251: RAISE fnd_api.g_exc_unexpected_error;
252: END IF;
253: CLOSE c_recur;
254:
255: SELECT jtf_task_recur_rules_s.NEXTVAL
356: -- Add a new invitee
357: ----------------------
358: jtf_task_assignments_pvt.create_task_assignment (
359: p_api_version => 1.0,
360: p_init_msg_list => fnd_api.g_false,
361: p_commit => fnd_api.g_false,
362: p_task_id => rec_tasks.task_id,
363: p_resource_type_code => p_add_assignee_rec.resource_type_code,
364: p_resource_id => p_add_assignee_rec.resource_id,
357: ----------------------
358: jtf_task_assignments_pvt.create_task_assignment (
359: p_api_version => 1.0,
360: p_init_msg_list => fnd_api.g_false,
361: p_commit => fnd_api.g_false,
362: p_task_id => rec_tasks.task_id,
363: p_resource_type_code => p_add_assignee_rec.resource_type_code,
364: p_resource_id => p_add_assignee_rec.resource_id,
365: p_free_busy_type => p_add_assignee_rec.free_busy_type,
371: x_msg_count => x_msg_count,
372: x_msg_data => x_msg_data,
373: x_task_assignment_id => x_task_assignment_id
374: );
375: IF x_return_status <> fnd_api.g_ret_sts_success THEN
376: x_return_status := fnd_api.g_ret_sts_unexp_error;
377: RAISE fnd_api.g_exc_unexpected_error;
378: END IF;
379:
372: x_msg_data => x_msg_data,
373: x_task_assignment_id => x_task_assignment_id
374: );
375: IF x_return_status <> fnd_api.g_ret_sts_success THEN
376: x_return_status := fnd_api.g_ret_sts_unexp_error;
377: RAISE fnd_api.g_exc_unexpected_error;
378: END IF;
379:
380: END LOOP;
373: x_task_assignment_id => x_task_assignment_id
374: );
375: IF x_return_status <> fnd_api.g_ret_sts_success THEN
376: x_return_status := fnd_api.g_ret_sts_unexp_error;
377: RAISE fnd_api.g_exc_unexpected_error;
378: END IF;
379:
380: END LOOP;
381: ----------------------------------------------------
379:
380: END LOOP;
381: ----------------------------------------------------
382:
383: IF fnd_api.to_boolean (p_commit)
384: THEN
385: COMMIT WORK;
386: END IF;
387:
386: END IF;
387:
388: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
389: EXCEPTION
390: WHEN fnd_api.g_exc_unexpected_error
391: THEN
392: ROLLBACK TO add_assignee_pvt;
393: x_return_status := fnd_api.g_ret_sts_unexp_error;
394: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
389: EXCEPTION
390: WHEN fnd_api.g_exc_unexpected_error
391: THEN
392: ROLLBACK TO add_assignee_pvt;
393: x_return_status := fnd_api.g_ret_sts_unexp_error;
394: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
395: WHEN OTHERS
396: THEN
397: ROLLBACK TO add_assignee_pvt;
397: ROLLBACK TO add_assignee_pvt;
398: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
399: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
400: fnd_msg_pub.add;
401: x_return_status := fnd_api.g_ret_sts_unexp_error;
402: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
403: END add_assignee;
404:
405: PROCEDURE delete_assignee(
403: END add_assignee;
404:
405: PROCEDURE delete_assignee(
406: p_api_version IN NUMBER,
407: p_init_msg_list IN VARCHAR2 DEFAULT fnd_api.g_false,
408: p_commit IN VARCHAR2 DEFAULT fnd_api.g_false,
409: p_delete_assignee_rec IN delete_assignee_rec,
410: x_return_status OUT NOCOPY VARCHAR2,
411: x_msg_count OUT NOCOPY NUMBER,
404:
405: PROCEDURE delete_assignee(
406: p_api_version IN NUMBER,
407: p_init_msg_list IN VARCHAR2 DEFAULT fnd_api.g_false,
408: p_commit IN VARCHAR2 DEFAULT fnd_api.g_false,
409: p_delete_assignee_rec IN delete_assignee_rec,
410: x_return_status OUT NOCOPY VARCHAR2,
411: x_msg_count OUT NOCOPY NUMBER,
412: x_msg_data OUT NOCOPY VARCHAR2
449: l_delete_option VARCHAR2(1) := p_delete_assignee_rec.delete_option;
450: BEGIN
451: SAVEPOINT delete_assignee_pvt;
452:
453: x_return_status := fnd_api.g_ret_sts_success;
454:
455: IF fnd_api.to_boolean (p_init_msg_list)
456: THEN
457: fnd_msg_pub.initialize;
451: SAVEPOINT delete_assignee_pvt;
452:
453: x_return_status := fnd_api.g_ret_sts_success;
454:
455: IF fnd_api.to_boolean (p_init_msg_list)
456: THEN
457: fnd_msg_pub.initialize;
458: END IF;
459:
503: fnd_message.set_name ('JTF', 'JTF_TK_INVALID_RECUR_RULE');
504: fnd_message.set_token ('P_TASK_RECURRENCE_RULE_ID', p_delete_assignee_rec.recurrence_rule_id);
505: fnd_msg_pub.add;
506:
507: x_return_status := fnd_api.g_ret_sts_unexp_error;
508: RAISE fnd_api.g_exc_unexpected_error;
509: END IF;
510: CLOSE c_recur;
511:
504: fnd_message.set_token ('P_TASK_RECURRENCE_RULE_ID', p_delete_assignee_rec.recurrence_rule_id);
505: fnd_msg_pub.add;
506:
507: x_return_status := fnd_api.g_ret_sts_unexp_error;
508: RAISE fnd_api.g_exc_unexpected_error;
509: END IF;
510: CLOSE c_recur;
511:
512: SELECT jtf_task_recur_rules_s.NEXTVAL
614: -- Delete this invitee
615: ----------------------
616: jtf_task_assignments_pvt.delete_task_assignment (
617: p_api_version => 1.0,
618: p_init_msg_list => fnd_api.g_false,
619: p_commit => fnd_api.g_false,
620: p_task_assignment_id => rec_assignments.task_assignment_id,
621: p_object_version_number => rec_assignments.object_version_number,
622: p_delete_option => NULL,
615: ----------------------
616: jtf_task_assignments_pvt.delete_task_assignment (
617: p_api_version => 1.0,
618: p_init_msg_list => fnd_api.g_false,
619: p_commit => fnd_api.g_false,
620: p_task_assignment_id => rec_assignments.task_assignment_id,
621: p_object_version_number => rec_assignments.object_version_number,
622: p_delete_option => NULL,
623: p_enable_workflow => 'N',
625: x_return_status => x_return_status,
626: x_msg_count => x_msg_count,
627: x_msg_data => x_msg_data
628: );
629: IF x_return_status <> fnd_api.g_ret_sts_success THEN
630: x_return_status := fnd_api.g_ret_sts_unexp_error;
631: RAISE fnd_api.g_exc_unexpected_error;
632: END IF;
633: END LOOP;
626: x_msg_count => x_msg_count,
627: x_msg_data => x_msg_data
628: );
629: IF x_return_status <> fnd_api.g_ret_sts_success THEN
630: x_return_status := fnd_api.g_ret_sts_unexp_error;
631: RAISE fnd_api.g_exc_unexpected_error;
632: END IF;
633: END LOOP;
634: ----------------------------------------------------
627: x_msg_data => x_msg_data
628: );
629: IF x_return_status <> fnd_api.g_ret_sts_success THEN
630: x_return_status := fnd_api.g_ret_sts_unexp_error;
631: RAISE fnd_api.g_exc_unexpected_error;
632: END IF;
633: END LOOP;
634: ----------------------------------------------------
635:
632: END IF;
633: END LOOP;
634: ----------------------------------------------------
635:
636: IF fnd_api.to_boolean (p_commit)
637: THEN
638: COMMIT WORK;
639: END IF;
640:
639: END IF;
640:
641: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
642: EXCEPTION
643: WHEN fnd_api.g_exc_unexpected_error
644: THEN
645: ROLLBACK TO delete_assignee_pvt;
646: x_return_status := fnd_api.g_ret_sts_unexp_error;
647: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
642: EXCEPTION
643: WHEN fnd_api.g_exc_unexpected_error
644: THEN
645: ROLLBACK TO delete_assignee_pvt;
646: x_return_status := fnd_api.g_ret_sts_unexp_error;
647: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
648: WHEN OTHERS
649: THEN
650: ROLLBACK TO delete_assignee_pvt;
650: ROLLBACK TO delete_assignee_pvt;
651: fnd_message.set_name ('JTF', 'JTF_TASK_UNKNOWN_ERROR');
652: fnd_message.set_token ('P_TEXT', SQLCODE || SQLERRM);
653: fnd_msg_pub.add;
654: x_return_status := fnd_api.g_ret_sts_unexp_error;
655: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
656: END delete_assignee;
657:
658: END jtf_task_repeat_assignment_pvt;