2: /* $Header: csltaacb.pls 120.0 2005/05/24 18:02:19 appldev noship $ */
3:
4: /*** Globals ***/
5: g_acc_table_name CONSTANT VARCHAR2(30) := 'CSL_JTF_TASK_ASS_ACC';
6: g_publication_item_name CONSTANT JTM_HOOK_UTIL_PKG.t_publication_item_list :=
7: JTM_HOOK_UTIL_PKG.t_publication_item_list('CSL_JTF_TASK_ASSIGNMENTS');
8: g_table_name CONSTANT VARCHAR2(30) := 'JTF_TASK_ASSIGNMENTS';
9: g_pk1_name CONSTANT VARCHAR2(30) := 'TASK_ASSIGNMENT_ID';
10: g_old_resource_id NUMBER; -- variable containing old resource_id; populated in Pre_Update hook
3:
4: /*** Globals ***/
5: g_acc_table_name CONSTANT VARCHAR2(30) := 'CSL_JTF_TASK_ASS_ACC';
6: g_publication_item_name CONSTANT JTM_HOOK_UTIL_PKG.t_publication_item_list :=
7: JTM_HOOK_UTIL_PKG.t_publication_item_list('CSL_JTF_TASK_ASSIGNMENTS');
8: g_table_name CONSTANT VARCHAR2(30) := 'JTF_TASK_ASSIGNMENTS';
9: g_pk1_name CONSTANT VARCHAR2(30) := 'TASK_ASSIGNMENT_ID';
10: g_old_resource_id NUMBER; -- variable containing old resource_id; populated in Pre_Update hook
11: g_debug_level NUMBER; -- debug level
51:
52:
53: BEGIN
54: /*** get debug level ***/
55: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
56:
57: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
58: jtm_message_log_pkg.Log_Msg
59: ( p_task_assignment_id
53: BEGIN
54: /*** get debug level ***/
55: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
56:
57: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
58: jtm_message_log_pkg.Log_Msg
59: ( p_task_assignment_id
60: , g_table_name
61: , 'Entering Replicate_Record'
58: jtm_message_log_pkg.Log_Msg
59: ( p_task_assignment_id
60: , g_table_name
61: , 'Entering Replicate_Record'
62: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
63: END IF;
64:
65: OPEN c_task_assignment( p_task_assignment_id );
66: FETCH c_task_assignment INTO r_task_assignment;
65: OPEN c_task_assignment( p_task_assignment_id );
66: FETCH c_task_assignment INTO r_task_assignment;
67: IF c_task_assignment%NOTFOUND THEN
68: /*** could not find assignment record -> exit ***/
69: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
70: jtm_message_log_pkg.Log_Msg
71: ( p_task_assignment_id
72: , g_table_name
73: , 'Replicate_Record error: Could not find task_assignment_id ' || p_task_assignment_id
70: jtm_message_log_pkg.Log_Msg
71: ( p_task_assignment_id
72: , g_table_name
73: , 'Replicate_Record error: Could not find task_assignment_id ' || p_task_assignment_id
74: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
75: END IF;
76:
77: CLOSE c_task_assignment;
78: RETURN FALSE;
81:
82: /*** is this an ASSIGNEE task assignment? ***/
83: IF NVL(r_task_assignment.assignee_role,'') <> 'ASSIGNEE' THEN
84: /*** No -> exit ***/
85: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
86: jtm_message_log_pkg.Log_Msg
87: ( p_task_assignment_id
88: , g_table_name
89: , 'Replicate_Record returned FALSE' || fnd_global.local_chr(10) ||
87: ( p_task_assignment_id
88: , g_table_name
89: , 'Replicate_Record returned FALSE' || fnd_global.local_chr(10) ||
90: 'ASSIGNEE_ROLE <> ''ASSIGNEE'''
91: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
92: END IF;
93: RETURN FALSE;
94: END IF;
95:
94: END IF;
95:
96: IF p_flow_type <> CSL_CS_INCIDENTS_ALL_ACC_PKG.G_FLOW_HISTORY THEN
97: /*** is resource a mobile user? ***/
98: IF NOT JTM_HOOK_UTIL_PKG.isMobileFSresource( r_task_assignment.resource_id ) THEN
99: /*** No -> exit ***/
100: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
101: jtm_message_log_pkg.Log_Msg
102: ( p_task_assignment_id
96: IF p_flow_type <> CSL_CS_INCIDENTS_ALL_ACC_PKG.G_FLOW_HISTORY THEN
97: /*** is resource a mobile user? ***/
98: IF NOT JTM_HOOK_UTIL_PKG.isMobileFSresource( r_task_assignment.resource_id ) THEN
99: /*** No -> exit ***/
100: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
101: jtm_message_log_pkg.Log_Msg
102: ( p_task_assignment_id
103: , g_table_name
104: , 'Replicate_Record returned FALSE' || fnd_global.local_chr(10) ||
102: ( p_task_assignment_id
103: , g_table_name
104: , 'Replicate_Record returned FALSE' || fnd_global.local_chr(10) ||
105: 'Resource_id ' || r_task_assignment.resource_id || ' is not a mobile user.'
106: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
107: END IF;
108:
109: RETURN FALSE;
110: END IF;
119: IF c_assignment_status%NOTFOUND THEN
120: /*** status should not be replicated -> exit ***/
121: CLOSE c_assignment_status;
122: CLOSE c_personal_task;
123: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
124: jtm_message_log_pkg.Log_Msg
125: ( p_task_assignment_id
126: , g_table_name
127: , 'Replicate_Record returned FALSE' || fnd_global.local_chr(10) ||
126: , g_table_name
127: , 'Replicate_Record returned FALSE' || fnd_global.local_chr(10) ||
128: 'Assignment status should have either ASSIGNED_FLAG, CANCELLED_FLAG, '||
129: 'COMPLETED_FLAG or CLOSED_FLAG set to ''Y''.'
130: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
131: END IF;
132: RETURN FALSE;
133: END IF;--c_assignment_status%NOTFOUND
134: CLOSE c_assignment_status;
134: CLOSE c_assignment_status;
135: END IF; --c_personal_task%NOTFOUND
136: CLOSE c_personal_task;
137:
138: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
139: jtm_message_log_pkg.Log_Msg
140: ( p_task_assignment_id
141: , g_table_name
142: , 'Replicate_Record returned TRUE'
139: jtm_message_log_pkg.Log_Msg
140: ( p_task_assignment_id
141: , g_table_name
142: , 'Replicate_Record returned TRUE'
143: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
144: END IF;
145:
146: /** Record matched criteria -> return true ***/
147: RETURN TRUE;
160:
161: l_debrief_header_id NUMBER;
162:
163: BEGIN
164: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
165: jtm_message_log_pkg.Log_Msg
166: ( p_task_assignment_id
167: , g_table_name
168: , 'Entering Insert_ACC_Record'
165: jtm_message_log_pkg.Log_Msg
166: ( p_task_assignment_id
167: , g_table_name
168: , 'Entering Insert_ACC_Record'
169: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
170: END IF;
171:
172: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
173: jtm_message_log_pkg.Log_Msg
168: , 'Entering Insert_ACC_Record'
169: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
170: END IF;
171:
172: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
173: jtm_message_log_pkg.Log_Msg
174: ( p_task_assignment_id
175: , g_table_name
176: , 'Inserting ACC record for resource_id = ' || p_resource_id
173: jtm_message_log_pkg.Log_Msg
174: ( p_task_assignment_id
175: , g_table_name
176: , 'Inserting ACC record for resource_id = ' || p_resource_id
177: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
178: END IF;
179:
180: JTM_HOOK_UTIL_PKG.Insert_Acc
181: ( P_PUBLICATION_ITEM_NAMES => g_publication_item_name
176: , 'Inserting ACC record for resource_id = ' || p_resource_id
177: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
178: END IF;
179:
180: JTM_HOOK_UTIL_PKG.Insert_Acc
181: ( P_PUBLICATION_ITEM_NAMES => g_publication_item_name
182: ,P_ACC_TABLE_NAME => g_acc_table_name
183: ,P_PK1_NAME => g_pk1_name
184: ,P_PK1_NUM_VALUE => p_task_assignment_id
203: ,p_resource_id
204: );
205:
206:
207: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
208: jtm_message_log_pkg.Log_Msg
209: ( p_task_assignment_id
210: , g_table_name
211: , 'Leaving Insert_ACC_Record'
208: jtm_message_log_pkg.Log_Msg
209: ( p_task_assignment_id
210: , g_table_name
211: , 'Leaving Insert_ACC_Record'
212: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
213: END IF;
214: END Insert_ACC_Record;
215:
216: /*** Private procedure that re-sends given assignment to mobile ***/
220: ,p_acc_id IN NUMBER
221: )
222: IS
223: BEGIN
224: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
225: jtm_message_log_pkg.Log_Msg
226: ( p_task_assignment_id
227: , g_table_name
228: , 'Entering Update_ACC_Record'
225: jtm_message_log_pkg.Log_Msg
226: ( p_task_assignment_id
227: , g_table_name
228: , 'Entering Update_ACC_Record'
229: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
230: END IF;
231:
232: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
233: jtm_message_log_pkg.Log_Msg
228: , 'Entering Update_ACC_Record'
229: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
230: END IF;
231:
232: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
233: jtm_message_log_pkg.Log_Msg
234: ( p_task_assignment_id
235: , g_table_name
236: , 'Updating ACC record for resource_id = ' || p_resource_id || fnd_global.local_chr(10) || 'access_id = ' || p_acc_id
233: jtm_message_log_pkg.Log_Msg
234: ( p_task_assignment_id
235: , g_table_name
236: , 'Updating ACC record for resource_id = ' || p_resource_id || fnd_global.local_chr(10) || 'access_id = ' || p_acc_id
237: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
238: END IF;
239:
240: JTM_HOOK_UTIL_PKG.Update_Acc
241: ( P_PUBLICATION_ITEM_NAMES => g_publication_item_name
236: , 'Updating ACC record for resource_id = ' || p_resource_id || fnd_global.local_chr(10) || 'access_id = ' || p_acc_id
237: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
238: END IF;
239:
240: JTM_HOOK_UTIL_PKG.Update_Acc
241: ( P_PUBLICATION_ITEM_NAMES => g_publication_item_name
242: ,P_ACC_TABLE_NAME => g_acc_table_name
243: ,P_RESOURCE_ID => p_resource_id
244: ,P_ACCESS_ID => p_acc_id
243: ,P_RESOURCE_ID => p_resource_id
244: ,P_ACCESS_ID => p_acc_id
245: );
246:
247: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
248: jtm_message_log_pkg.Log_Msg
249: ( p_task_assignment_id
250: , g_table_name
251: , 'Leaving Update_ACC_Record'
248: jtm_message_log_pkg.Log_Msg
249: ( p_task_assignment_id
250: , g_table_name
251: , 'Leaving Update_ACC_Record'
252: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
253: END IF;
254: END Update_ACC_Record;
255:
256: /*** Private procedure that deletes assignment for resource from acc table ***/
259: ,p_resource_id IN NUMBER
260: )
261: IS
262: BEGIN
263: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
264: jtm_message_log_pkg.Log_Msg
265: ( p_task_assignment_id
266: , g_table_name
267: , 'Entering Delete_ACC_Record'
264: jtm_message_log_pkg.Log_Msg
265: ( p_task_assignment_id
266: , g_table_name
267: , 'Entering Delete_ACC_Record'
268: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
269: END IF;
270:
271: /* Delete Attachments - Signature */
272: CSL_LOBS_ACC_PKG.delete_acc_record
280: ( p_task_assignment_id,
281: p_resource_id
282: );
283:
284: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
285: jtm_message_log_pkg.Log_Msg
286: ( p_task_assignment_id
287: , g_table_name
288: , 'Deleting ACC record for resource_id = ' || p_resource_id
285: jtm_message_log_pkg.Log_Msg
286: ( p_task_assignment_id
287: , g_table_name
288: , 'Deleting ACC record for resource_id = ' || p_resource_id
289: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
290: END IF;
291:
292: /*** Delete task assignment ACC record ***/
293: JTM_HOOK_UTIL_PKG.Delete_Acc
289: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
290: END IF;
291:
292: /*** Delete task assignment ACC record ***/
293: JTM_HOOK_UTIL_PKG.Delete_Acc
294: ( P_PUBLICATION_ITEM_NAMES => g_publication_item_name
295: ,P_ACC_TABLE_NAME => g_acc_table_name
296: ,P_PK1_NAME => g_pk1_name
297: ,P_PK1_NUM_VALUE => p_task_assignment_id
297: ,P_PK1_NUM_VALUE => p_task_assignment_id
298: ,P_RESOURCE_ID => p_resource_id
299: );
300:
301: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
302: jtm_message_log_pkg.Log_Msg
303: ( p_task_assignment_id
304: , g_table_name
305: , 'Leaving Delete_ACC_Record'
302: jtm_message_log_pkg.Log_Msg
303: ( p_task_assignment_id
304: , g_table_name
305: , 'Leaving Delete_ACC_Record'
306: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
307: END IF;
308: END Delete_ACC_Record;
309:
310: /*** function that returns parent TASK_ID for given TASK_ASSIGNMENT_ID ***/
321: OPEN c_task_assignment( p_task_assignment_id );
322: FETCH c_task_assignment INTO r_task_assignment;
323: IF c_task_assignment%NOTFOUND THEN
324: /*** could not find assignment record -> exit ***/
325: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
326: CLOSE c_task_assignment;
327: jtm_message_log_pkg.Log_Msg
328: ( p_task_assignment_id
329: , g_table_name
327: jtm_message_log_pkg.Log_Msg
328: ( p_task_assignment_id
329: , g_table_name
330: , 'Post_Delete_Child error: Could not find task_assignment_id ' || p_task_assignment_id
331: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
332: -- RAISE_APPLICATION_ERROR(-20000, 'Post_Delete_Child error: Could not find task_assignment_id ' || p_task_assignment_id);
333: RETURN -1;
334: END IF;
335: END IF;
351: IS
352: l_success BOOLEAN;
353: BEGIN
354: /*** get debug level ***/
355: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
356:
357: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
358: jtm_message_log_pkg.Log_Msg
359: ( p_task_assignment_id
353: BEGIN
354: /*** get debug level ***/
355: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
356:
357: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
358: jtm_message_log_pkg.Log_Msg
359: ( p_task_assignment_id
360: , g_table_name
361: , 'Entering Pre_Insert_Child procedure'
358: jtm_message_log_pkg.Log_Msg
359: ( p_task_assignment_id
360: , g_table_name
361: , 'Entering Pre_Insert_Child procedure'
362: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
363: END IF;
364:
365: l_success := FALSE;
366: /*** no -> does record match criteria? ***/
384: l_success := TRUE;
385: END IF;
386: END IF;
387:
388: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
389: jtm_message_log_pkg.Log_Msg
390: ( p_task_assignment_id
391: , g_table_name
392: , 'Leaving Pre_Insert_Child procedure'
389: jtm_message_log_pkg.Log_Msg
390: ( p_task_assignment_id
391: , g_table_name
392: , 'Leaving Pre_Insert_Child procedure'
393: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
394: END IF;
395:
396: RETURN l_success;
397: END Pre_Insert_Child;
407: IS
408: l_acc_id NUMBER;
409: BEGIN
410: /*** get debug level ***/
411: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
412:
413: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
414: jtm_message_log_pkg.Log_Msg
415: ( p_task_assignment_id
409: BEGIN
410: /*** get debug level ***/
411: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
412:
413: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
414: jtm_message_log_pkg.Log_Msg
415: ( p_task_assignment_id
416: , g_table_name
417: , 'Entering Post_Delete_Child'
414: jtm_message_log_pkg.Log_Msg
415: ( p_task_assignment_id
416: , g_table_name
417: , 'Entering Post_Delete_Child'
418: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
419: END IF;
420:
421: /*** does record exist in ACC table? ***/
422: l_acc_id := JTM_HOOK_UTIL_PKG.Get_Acc_Id
418: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
419: END IF;
420:
421: /*** does record exist in ACC table? ***/
422: l_acc_id := JTM_HOOK_UTIL_PKG.Get_Acc_Id
423: ( P_ACC_TABLE_NAME => g_acc_table_name
424: ,P_PK1_NAME => g_pk1_name
425: ,P_PK1_NUM_VALUE => p_task_assignment_id
426: ,P_RESOURCE_ID => p_resource_id);
431: ( p_task_assignment_id
432: ,p_resource_id);
433:
434: /*** call delete task ***/
435: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
436: jtm_message_log_pkg.Log_Msg
437: ( p_task_assignment_id
438: , g_table_name
439: , 'Calling CSL_JTF_TASKS_ACC_PKG.Post_Delete_Child'
436: jtm_message_log_pkg.Log_Msg
437: ( p_task_assignment_id
438: , g_table_name
439: , 'Calling CSL_JTF_TASKS_ACC_PKG.Post_Delete_Child'
440: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
441: END IF;
442: /*If history flow is SR -> task -> assignment, so no need to call tasks again*/
443: IF p_flow_type <> CSL_CS_INCIDENTS_ALL_ACC_PKG.G_FLOW_HISTORY THEN
444: CSL_JTF_TASKS_ACC_PKG.Post_Delete_Child( GetParentId( p_task_assignment_id), p_resource_id );
444: CSL_JTF_TASKS_ACC_PKG.Post_Delete_Child( GetParentId( p_task_assignment_id), p_resource_id );
445: END IF;
446: END IF;
447:
448: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
449: jtm_message_log_pkg.Log_Msg
450: ( p_task_assignment_id
451: , g_table_name
452: , 'Leaving Post_Delete_Child'
449: jtm_message_log_pkg.Log_Msg
450: ( p_task_assignment_id
451: , g_table_name
452: , 'Leaving Post_Delete_Child'
453: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
454: END IF;
455: END Post_Delete_Child;
456:
457:
525: l_task_assignment_id := jtf_task_assignments_pub.p_task_assignments_user_hooks.task_assignment_id;
526: l_resource_id := jtf_task_assignments_pub.p_task_assignments_user_hooks.resource_id;
527:
528: /*** get debug level ***/
529: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
530:
531: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
532: jtm_message_log_pkg.Log_Msg
533: ( l_task_assignment_id
527:
528: /*** get debug level ***/
529: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
530:
531: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
532: jtm_message_log_pkg.Log_Msg
533: ( l_task_assignment_id
534: , g_table_name
535: , 'Entering POST_INSERT hook'
532: jtm_message_log_pkg.Log_Msg
533: ( l_task_assignment_id
534: , g_table_name
535: , 'Entering POST_INSERT hook'
536: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
537: END IF;
538:
539: /*** Insert record if applicable ***/
540: l_dummy := Pre_Insert_Child
541: ( l_task_assignment_id
542: ,l_resource_id
543: );
544:
545: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
546: jtm_message_log_pkg.Log_Msg
547: ( l_task_assignment_id
548: , g_table_name
549: , 'Leaving POST_INSERT hook'
546: jtm_message_log_pkg.Log_Msg
547: ( l_task_assignment_id
548: , g_table_name
549: , 'Leaving POST_INSERT hook'
550: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
551: END IF;
552:
553: x_return_status := FND_API.G_RET_STS_SUCCESS;
554: RETURN;
554: RETURN;
555:
556: EXCEPTION WHEN OTHERS THEN
557: /*** hook failed -> log error ***/
558: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
559: jtm_message_log_pkg.Log_Msg
560: ( l_task_assignment_id
561: , g_table_name
562: , 'Caught exception in POST_INSERT hook:' || fnd_global.local_chr(10) || sqlerrm
559: jtm_message_log_pkg.Log_Msg
560: ( l_task_assignment_id
561: , g_table_name
562: , 'Caught exception in POST_INSERT hook:' || fnd_global.local_chr(10) || sqlerrm
563: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
564: END IF;
565: fnd_msg_pub.Add_Exc_Msg('CSL_JTF_TASK_ASS_ACC_PKG','POST_INSERT_TASK_ASSIGNMENT',sqlerrm);
566: -- x_return_status := FND_API.G_RET_STS_ERROR;
567: x_return_status := FND_API.G_RET_STS_SUCCESS;
589: /*** get assignment record details from public API ***/
590: l_task_assignment_id := jtf_task_assignments_pub.p_task_assignments_user_hooks.task_assignment_id;
591:
592: /*** get debug level ***/
593: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
594:
595: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
596: jtm_message_log_pkg.Log_Msg
597: ( l_task_assignment_id
591:
592: /*** get debug level ***/
593: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
594:
595: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
596: jtm_message_log_pkg.Log_Msg
597: ( l_task_assignment_id
598: , g_table_name
599: , 'Entering PRE_UPDATE hook'
596: jtm_message_log_pkg.Log_Msg
597: ( l_task_assignment_id
598: , g_table_name
599: , 'Entering PRE_UPDATE hook'
600: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
601: END IF;
602:
603: /*** retrieve old resource_id for task assignment ***/
604: OPEN c_task_assignment(l_task_assignment_id);
605: FETCH c_task_assignment INTO r_task_assignment;
606: g_old_resource_id := r_task_assignment.resource_id;
607: CLOSE c_task_assignment;
608:
609: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
610: jtm_message_log_pkg.Log_Msg
611: ( l_task_assignment_id
612: , g_table_name
613: , 'Leaving PRE_UPDATE hook'
610: jtm_message_log_pkg.Log_Msg
611: ( l_task_assignment_id
612: , g_table_name
613: , 'Leaving PRE_UPDATE hook'
614: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
615: END IF;
616:
617: x_return_status := FND_API.G_RET_STS_SUCCESS;
618:
617: x_return_status := FND_API.G_RET_STS_SUCCESS;
618:
619: EXCEPTION WHEN OTHERS THEN
620: /*** hook failed -> log error ***/
621: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
622: jtm_message_log_pkg.Log_Msg
623: ( l_task_assignment_id
624: , g_table_name
625: , 'Caught exception in PRE_UPDATE hook:' || fnd_global.local_chr(10) || sqlerrm
622: jtm_message_log_pkg.Log_Msg
623: ( l_task_assignment_id
624: , g_table_name
625: , 'Caught exception in PRE_UPDATE hook:' || fnd_global.local_chr(10) || sqlerrm
626: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
627: END IF;
628: fnd_msg_pub.Add_Exc_Msg('CSL_JTF_TASK_ASS_ACC_PKG','PRE_UPDATE_TASK_ASSIGNMENT',sqlerrm);
629: -- x_return_status := FND_API.G_RET_STS_ERROR;
630: x_return_status := FND_API.G_RET_STS_SUCCESS;
651: l_task_assignment_id := jtf_task_assignments_pub.p_task_assignments_user_hooks.task_assignment_id;
652: l_resource_id := jtf_task_assignments_pub.p_task_assignments_user_hooks.resource_id;
653:
654: /*** get debug level ***/
655: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
656:
657: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
658: jtm_message_log_pkg.Log_Msg
659: ( l_task_assignment_id
653:
654: /*** get debug level ***/
655: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
656:
657: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
658: jtm_message_log_pkg.Log_Msg
659: ( l_task_assignment_id
660: , g_table_name
661: , 'Entering POST_UPDATE hook'
658: jtm_message_log_pkg.Log_Msg
659: ( l_task_assignment_id
660: , g_table_name
661: , 'Entering POST_UPDATE hook'
662: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
663: END IF;
664:
665: /*** did resource_id get changed? ***/
666: IF (g_old_resource_id <> l_resource_id) THEN
664:
665: /*** did resource_id get changed? ***/
666: IF (g_old_resource_id <> l_resource_id) THEN
667: /*** yes -> do cascading delete for old resource_id ***/
668: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
669: jtm_message_log_pkg.Log_Msg
670: ( l_task_assignment_id
671: , g_table_name
672: , 'Task assignment resource_id changed from ' || g_old_resource_id || ' to ' || l_resource_id || '.' || fnd_global.local_chr(10) ||
670: ( l_task_assignment_id
671: , g_table_name
672: , 'Task assignment resource_id changed from ' || g_old_resource_id || ' to ' || l_resource_id || '.' || fnd_global.local_chr(10) ||
673: 'Deleting old assignment ACC record (if exists).'
674: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
675: END IF;
676:
677: Post_Delete_Child
678: ( l_task_assignment_id
681: /*** record doesn't exist for new resource_id yet ***/
682: l_acc_id := -1;
683: ELSE
684: /*** resource_id is same as before the update -> check if it already exists on mobile ***/
685: l_acc_id := JTM_HOOK_UTIL_PKG.Get_Acc_Id
686: ( P_ACC_TABLE_NAME => g_acc_table_name
687: ,P_PK1_NAME => g_pk1_name
688: ,P_PK1_NUM_VALUE => l_task_assignment_id
689: ,P_RESOURCE_ID => l_resource_id);
708: ELSE
709: /*** record should not be replicated ***/
710: IF l_acc_id > -1 THEN
711: /*** record exists on mobile but should not be replicated anymore -> delete from mobile ***/
712: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
713: jtm_message_log_pkg.Log_Msg
714: ( l_task_assignment_id
715: , g_table_name
716: , 'Task assignment was replicated before update, but should not be replicated anymore.'
713: jtm_message_log_pkg.Log_Msg
714: ( l_task_assignment_id
715: , g_table_name
716: , 'Task assignment was replicated before update, but should not be replicated anymore.'
717: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
718: END IF;
719:
720: Post_Delete_Child
721: ( l_task_assignment_id
722: ,l_resource_id);
723: END IF;
724: END IF;
725:
726: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
727: jtm_message_log_pkg.Log_Msg
728: ( l_task_assignment_id
729: , g_table_name
730: , 'Leaving POST_UPDATE hook'
727: jtm_message_log_pkg.Log_Msg
728: ( l_task_assignment_id
729: , g_table_name
730: , 'Leaving POST_UPDATE hook'
731: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
732: END IF;
733:
734: x_return_status := FND_API.G_RET_STS_SUCCESS;
735: EXCEPTION WHEN OTHERS THEN
733:
734: x_return_status := FND_API.G_RET_STS_SUCCESS;
735: EXCEPTION WHEN OTHERS THEN
736: /*** hook failed -> log error ***/
737: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
738: jtm_message_log_pkg.Log_Msg
739: ( l_task_assignment_id
740: , g_table_name
741: , 'Caught exception in POST_UPDATE hook:' || fnd_global.local_chr(10) || sqlerrm
738: jtm_message_log_pkg.Log_Msg
739: ( l_task_assignment_id
740: , g_table_name
741: , 'Caught exception in POST_UPDATE hook:' || fnd_global.local_chr(10) || sqlerrm
742: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
743: END IF;
744: fnd_msg_pub.Add_Exc_Msg('CSL_JTF_TASK_ASS_ACC_PKG','POST_UPDATE_TASK_ASSIGNMENT',sqlerrm);
745: -- x_return_status := FND_API.G_RET_STS_ERROR;
746: x_return_status := FND_API.G_RET_STS_SUCCESS;
764: l_task_assignment_id := jtf_task_assignments_pub.p_task_assignments_user_hooks.task_assignment_id;
765: l_resource_id := jtf_task_assignments_pub.p_task_assignments_user_hooks.resource_id;
766:
767: /*** get debug level ***/
768: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
769:
770: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
771: jtm_message_log_pkg.Log_Msg
772: ( l_task_assignment_id
766:
767: /*** get debug level ***/
768: g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
769:
770: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
771: jtm_message_log_pkg.Log_Msg
772: ( l_task_assignment_id
773: , g_table_name
774: , 'Entering PRE_DELETE hook'
771: jtm_message_log_pkg.Log_Msg
772: ( l_task_assignment_id
773: , g_table_name
774: , 'Entering PRE_DELETE hook'
775: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
776: END IF;
777:
778: /*** yes -> delete assignment related data from the ACC tables ***/
779: Post_Delete_Child
781: ,l_resource_id);
782:
783: x_return_status := FND_API.G_RET_STS_SUCCESS;
784:
785: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
786: jtm_message_log_pkg.Log_Msg
787: ( l_task_assignment_id
788: , g_table_name
789: , 'Leaving PRE_DELETE hook'
786: jtm_message_log_pkg.Log_Msg
787: ( l_task_assignment_id
788: , g_table_name
789: , 'Leaving PRE_DELETE hook'
790: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
791: END IF;
792:
793: EXCEPTION WHEN OTHERS THEN
794: /*** hook failed -> log error ***/
791: END IF;
792:
793: EXCEPTION WHEN OTHERS THEN
794: /*** hook failed -> log error ***/
795: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
796: jtm_message_log_pkg.Log_Msg
797: ( l_task_assignment_id
798: , g_table_name
799: , 'Caught exception in PRE_DELETE hook:' || fnd_global.local_chr(10) || sqlerrm
796: jtm_message_log_pkg.Log_Msg
797: ( l_task_assignment_id
798: , g_table_name
799: , 'Caught exception in PRE_DELETE hook:' || fnd_global.local_chr(10) || sqlerrm
800: , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
801: END IF;
802: fnd_msg_pub.Add_Exc_Msg('CSL_JTF_TASK_ASS_ACC_PKG','PRE_DELETE_TASK_ASSIGNMENT',sqlerrm);
803: -- x_return_status := FND_API.G_RET_STS_ERROR;
804: x_return_status := FND_API.G_RET_STS_SUCCESS;
871: jtm_message_log_pkg.Log_Msg
872: (rcur_purge_task_assignments.task_assignment_id,
873: 'CSL_JTF_TASK_ASS_ACC',
874: 'Exception occured in PURGE_TASK_ASSIGNMENT for id: ' || rcur_purge_task_assignments.task_assignment_id,
875: JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
876:
877: END PURGE_TASK_ASSIGNMENTS;
878:
879: END CSL_JTF_TASK_ASS_ACC_PKG;