135:
136: /***************************************************************************
137: ** Initialize API return status to success
138: ***************************************************************************/
139: x_return_status := FND_API.G_RET_STS_SUCCESS;
140: l_id := p_record.id;
141: l_user_name := p_record.CLID$$CS;
142: l_notification_id := p_record.notification_id;
143: l_as_type := p_record.as_type;
181: END IF;
182:
183:
184:
185: IF x_return_status <> FND_API.G_RET_STS_SUCCESS
186: THEN
187: x_return_status := FND_API.G_RET_STS_ERROR;
188:
189: CSM_UTIL_PKG.log( 'Error in ' || g_object_name || '.APPLY_INSERT:'
183:
184:
185: IF x_return_status <> FND_API.G_RET_STS_SUCCESS
186: THEN
187: x_return_status := FND_API.G_RET_STS_ERROR;
188:
189: CSM_UTIL_PKG.log( 'Error in ' || g_object_name || '.APPLY_INSERT:'
190: || ' ROOT ERROR: create statement'
191: || ' for PK ' || p_record.NOTIFICATION_ID,
197:
198:
199: -- success
200: -- delete csm_auto_sync_log_inq where clid$$cs = l_user_name and notification_id = l_notification_id;
201: x_return_status := FND_API.G_RET_STS_SUCCESS;
202: COMMIT;
203:
204: EXCEPTION
205: WHEN others THEN
207: || ' for PK ' || p_record.notification_id,
208: g_object_name || '.APPLY_INSERT',
209: FND_LOG.LEVEL_EXCEPTION );
210:
211: x_return_status := FND_API.G_RET_STS_ERROR;
212:
213: END APPLY_INSERT;
214:
215:
258: FND_LOG.LEVEL_PROCEDURE );
259: /***************************************************************************
260: ** Initialize API return status to success
261: ***************************************************************************/
262: x_return_status := FND_API.G_RET_STS_SUCCESS;
263: l_notification_id := p_record.notification_id;
264: l_user_name := p_record.CLID$$CS;
265:
266: IF (c_auto_sync_log%ISOPEN) THEN
317:
318:
319: -- success
320: -- delete csm_auto_sync_log_inq where clid$$cs = l_user_name and notification_id = l_notification_id;
321: x_return_status := FND_API.G_RET_STS_SUCCESS;
322:
323: EXCEPTION
324:
325: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
321: x_return_status := FND_API.G_RET_STS_SUCCESS;
322:
323: EXCEPTION
324:
325: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
326: IF (c_auto_sync_log%ISOPEN) THEN
327: CLOSE c_auto_sync_log;
328: END IF;
329: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
325: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
326: IF (c_auto_sync_log%ISOPEN) THEN
327: CLOSE c_auto_sync_log;
328: END IF;
329: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
330:
331: WHEN others THEN
332: CSM_UTIL_PKG.log( 'Exception in ' || g_object_name || '.APPLY_UPDATE:'
333: || ' for PK ' || p_record.notification_id,
333: || ' for PK ' || p_record.notification_id,
334: g_object_name || '.APPLY_UPDATE',
335: FND_LOG.LEVEL_EXCEPTION );
336:
337: x_return_status := FND_API.G_RET_STS_ERROR;
338:
339: END APPLY_UPDATE;
340:
341:
352: ) IS
353: BEGIN
354:
355: /*** initialize return status and message list ***/
356: x_return_status := FND_API.G_RET_STS_SUCCESS;
357: FND_MSG_PUB.INITIALIZE;
358:
359:
360: IF p_record.dmltype$$='I' THEN
389: , p_token_name1 => 'DML'
390: , p_token_value1 => p_record.dmltype$$
391: );
392:
393: x_return_status := FND_API.G_RET_STS_ERROR;
394: END IF;
395:
396: EXCEPTION
397: WHEN OTHERS THEN
407: (
408: p_api_error => TRUE
409: );
410:
411: x_return_status := FND_API.G_RET_STS_ERROR;
412:
413: END APPLY_RECORD;
414: ----------------------------------------------------------------------------------------------------------------------
415:
432: BEGIN
433: csm_util_pkg.log ( g_object_name || '.APPLY_CLIENT_CHANGES entered',
434: FND_LOG.LEVEL_PROCEDURE);
435: g_debug_level := p_debug_level;
436: x_return_status := FND_API.G_RET_STS_SUCCESS;
437:
438: /*** loop through records in inqueue ***/
439: FOR r_auto_sync_log IN c_auto_sync_log_inq( p_user_name, p_tranid) LOOP
440:
449: , l_reject_row
450: );
451: /***--------------------------------------------------------------**/
452: /*** was record processed successfully? ***/
453: IF l_process_status = FND_API.G_RET_STS_SUCCESS THEN
454: /*** If Yes -> delete record from inqueue ***/
455: IF l_reject_row THEN
456: CSM_UTIL_PKG.REJECT_RECORD
457: (
478: ); --process doesn't depend on this delete_record API
479: END IF;
480:
481: /*** was delete/reject successful? ***/
482: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
483: /*** If No -> rollback ***/
484: CSM_UTIL_PKG.LOG
485: ( 'Deleting from inqueue failed, rolling back to savepoint'
486: || ' for PK ' || r_auto_sync_log.notification_id ,
486: || ' for PK ' || r_auto_sync_log.notification_id ,
487: g_object_name || '.APPLY_CLIENT_CHANGES',
488: FND_LOG.LEVEL_ERROR); -- put PK column here
489: ROLLBACK TO save_rec;
490: x_return_status := FND_API.G_RET_STS_ERROR;
491: END IF;
492: END IF; /*** end of IF l_process_status = FND_API.G_RET_STS_SUCCESS ***/
493:
494: IF l_process_Status <> FND_API.G_RET_STS_SUCCESS THEN
488: FND_LOG.LEVEL_ERROR); -- put PK column here
489: ROLLBACK TO save_rec;
490: x_return_status := FND_API.G_RET_STS_ERROR;
491: END IF;
492: END IF; /*** end of IF l_process_status = FND_API.G_RET_STS_SUCCESS ***/
493:
494: IF l_process_Status <> FND_API.G_RET_STS_SUCCESS THEN
495: /*** Record was not processed successfully or delete failed
496: -> defer and reject record ***/
490: x_return_status := FND_API.G_RET_STS_ERROR;
491: END IF;
492: END IF; /*** end of IF l_process_status = FND_API.G_RET_STS_SUCCESS ***/
493:
494: IF l_process_Status <> FND_API.G_RET_STS_SUCCESS THEN
495: /*** Record was not processed successfully or delete failed
496: -> defer and reject record ***/
497: CSM_UTIL_PKG.LOG
498: ( 'Record not processed successfully, deferring and rejecting record'
512: , r_auto_sync_log.dmltype$$
513: );
514:
515: /*** Was defer successful? ***/
516: IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
517: /*** no -> rollback ***/
518: CSM_UTIL_PKG.LOG
519: ( 'Defer record failed, rolling back to savepoint'
520: || ' for PK ' || r_auto_sync_log.notification_id ,
520: || ' for PK ' || r_auto_sync_log.notification_id ,
521: g_object_name || '.APPLY_CLIENT_CHANGES',
522: FND_LOG.LEVEL_ERROR); -- put PK column here
523: ROLLBACK TO save_rec;
524: x_return_status := FND_API.G_RET_STS_ERROR;
525: END IF;
526: END IF;
527:
528: END LOOP;
532: CSM_UTIL_PKG.LOG
533: ( 'Exception occurred in ' || g_object_name || '.APPLY_CLIENT_CHANGES:' || ' ' || SQLERRM,
534: g_object_name || '.APPLY_CLIENT_CHANGES',
535: FND_LOG.LEVEL_EXCEPTION);
536: x_return_status := FND_API.G_RET_STS_ERROR;
537:
538: END APPLY_CLIENT_CHANGES;
539:
540: