63:
64: BEGIN
65:
66: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
67: jtm_message_log_pkg.Log_Msg
68: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
69: , v_object_name => g_object_name
70: , v_message => 'Entering ' || g_object_name || '.APPLY_INSERT'
71: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
209: );
210: END IF;
211:
212: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
213: jtm_message_log_pkg.Log_Msg
214: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
215: , v_object_name => g_object_name
216: , v_message => 'Leaving ' || g_object_name || '.APPLY_INSERT'
217: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
218: END IF;
219:
220: EXCEPTION WHEN OTHERS THEN
221: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
222: jtm_message_log_pkg.Log_Msg
223: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
224: , v_object_name => g_object_name
225: , v_message => 'Exception occurred in APPLY_INSERT:' || fnd_global.local_chr(10) || sqlerrm
226: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
232: p_api_error => TRUE
233: );
234:
235: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
236: jtm_message_log_pkg.Log_Msg
237: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
238: , v_object_name => g_object_name
239: , v_message => 'Leaving ' || g_object_name || '.APPLY_INSERT'
240: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
293: l_msg_count NUMBER;
294: l_msg_data VARCHAR2(240);
295: BEGIN
296: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
297: jtm_message_log_pkg.Log_Msg
298: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
299: , v_object_name => g_object_name
300: , v_message => 'Entering ' || g_object_name || '.APPLY_UPDATE'
301: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
382: );
383: END IF;
384:
385: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
386: jtm_message_log_pkg.Log_Msg
387: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
388: , v_object_name => g_object_name
389: , v_message => 'Leaving ' || g_object_name || '.APPLY_UPDATE'
390: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
391: END IF;
392:
393: EXCEPTION WHEN OTHERS THEN
394: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
395: jtm_message_log_pkg.Log_Msg
396: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
397: , v_object_name => g_object_name
398: , v_message => 'Exception occurred in APPLY_UPDATE:' || fnd_global.local_chr(10) || sqlerrm
399: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
405: p_api_error => TRUE
406: );
407:
408: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
409: jtm_message_log_pkg.Log_Msg
410: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
411: , v_object_name => g_object_name
412: , v_message => 'Leaving ' || g_object_name || '.APPLY_UPDATE'
413: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
430: x_return_status := FND_API.G_RET_STS_SUCCESS;
431: FND_MSG_PUB.INITIALIZE;
432:
433: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
434: jtm_message_log_pkg.Log_Msg
435: ( v_object_id => p_record.COUNTER_VALUE_ID-- put PK column here
436: , v_object_name => g_object_name
437: , v_message => 'Entering ' || g_object_name || '.APPLY_RECORD'
438: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
438: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
439: END IF;
440:
441: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
442: jtm_message_log_pkg.Log_Msg
443: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
444: , v_object_name => g_object_name
445: , v_message => 'Processing CS_COUNTER_VALUE = ' || p_record.COUNTER_VALUE_ID /* put PK column here */ || fnd_global.local_chr(10) ||
446: 'DMLTYPE = ' || p_record.dmltype$$
465: );
466: ELSIF p_record.dmltype$$='D' THEN
467: -- Process delete; not supported for this entity
468: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
469: jtm_message_log_pkg.Log_Msg
470: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
471: , v_object_name => g_object_name
472: , v_message => 'Delete is not supported for this entity'
473: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
483: x_return_status := FND_API.G_RET_STS_ERROR;
484: ELSE
485: -- invalid dml type
486: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
487: jtm_message_log_pkg.Log_Msg
488: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
489: , v_object_name => g_object_name
490: , v_message => 'Invalid DML type: ' || p_record.dmltype$$
491: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
501: x_return_status := FND_API.G_RET_STS_ERROR;
502: END IF;
503:
504: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
505: jtm_message_log_pkg.Log_Msg
506: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
507: , v_object_name => g_object_name
508: , v_message => 'Leaving ' || g_object_name || '.APPLY_RECORD'
509: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
510: END IF;
511: EXCEPTION WHEN OTHERS THEN
512: /*** defer record when any process exception occurs ***/
513: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
514: jtm_message_log_pkg.Log_Msg
515: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
516: , v_object_name => g_object_name
517: , v_message => 'Exception occurred in APPLY_RECORD:' || fnd_global.local_chr(10) || sqlerrm
518: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
524: p_api_error => TRUE
525: );
526:
527: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
528: jtm_message_log_pkg.Log_Msg
529: ( v_object_id => p_record.COUNTER_VALUE_ID -- put PK column here
530: , v_object_name => g_object_name
531: , v_message => 'Leaving ' || g_object_name || '.APPLY_RECORD'
532: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
555: g_debug_level := p_debug_level;
556: x_return_status := FND_API.G_RET_STS_SUCCESS;
557:
558: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
559: jtm_message_log_pkg.Log_Msg
560: ( v_object_id => null
561: , v_object_name => g_object_name
562: , v_message => 'Entering ' || g_object_name || '.Apply_Client_Changes'
563: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
579: /*** was record processed successfully? ***/
580: IF l_process_status = FND_API.G_RET_STS_SUCCESS THEN
581: /*** Yes -> delete record from inqueue ***/
582: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
583: jtm_message_log_pkg.Log_Msg
584: ( v_object_id => r_CS_COUNTER_VALUES.COUNTER_VALUE_ID -- put PK column here
585: , v_object_name => g_object_name
586: , v_message => 'Record successfully processed, deleting from inqueue'
587: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
602: /*** was delete successful? ***/
603: IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
604: /*** no -> rollback ***/
605: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
606: jtm_message_log_pkg.Log_Msg
607: ( v_object_id => r_CS_COUNTER_VALUES.COUNTER_VALUE_ID -- put PK column here
608: , v_object_name => g_object_name
609: , v_message => 'Deleting from inqueue failed, rolling back to savepoint'
610: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
615:
616: IF l_process_Status <> FND_API.G_RET_STS_SUCCESS THEN
617: /*** Record was not processed successfully or delete failed -> defer and reject record ***/
618: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
619: jtm_message_log_pkg.Log_Msg
620: ( v_object_id => r_CS_COUNTER_VALUES.COUNTER_VALUE_ID -- put PK column here
621: , v_object_name => g_object_name
622: , v_message => 'Record not processed successfully, deferring and rejecting record'
623: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
638: /*** Was defer successful? ***/
639: IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
640: /*** no -> rollback ***/
641: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
642: jtm_message_log_pkg.Log_Msg
643: ( v_object_id => r_CS_COUNTER_VALUES.COUNTER_VALUE_ID -- put PK column here
644: , v_object_name => g_object_name
645: , v_message => 'Defer record failed, rolling back to savepoint'
646: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
651:
652: END LOOP;
653:
654: IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
655: jtm_message_log_pkg.Log_Msg
656: ( v_object_id => null
657: , v_object_name => g_object_name
658: , v_message => 'Leaving ' || g_object_name || '.Apply_Client_Changes'
659: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
661:
662: EXCEPTION WHEN OTHERS THEN
663: /*** catch and log exceptions ***/
664: IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
665: jtm_message_log_pkg.Log_Msg
666: ( v_object_id => null
667: , v_object_name => g_object_name
668: , v_message => 'Exception occurred in APPLY_CLIENT_CHANGES:' || fnd_global.local_chr(10) || sqlerrm
669: , v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);