117: x_return_status := FND_API.G_RET_STS_ERROR;
118: p_error_msg := 'The receiver '||p_record.receiver ||' of your message does not exist.';
119:
120: /*
121: p_error_msg := CSM_UTIL_PKG.GET_ERROR_MESSAGE_TEXT
122: (
123: p_message => 'CSL_MAIL_RECEIVER_UNKNOWN'
124: , p_token_name1 => 'MAIL_RECEIVER'
125: , p_token_value1 => p_record.receiver
190:
191: exception
192: when others then
193: fnd_msg_pub.Add_Exc_Msg( g_object_name, 'APPLY_INSERT', sqlerrm);
194: p_error_msg := CSM_UTIL_PKG.GET_ERROR_MESSAGE_TEXT
195: (
196: p_api_error => TRUE
197: );
198: CSM_UTIL_PKG.log( 'Exception in ' || g_object_name || '.APPLY_INSERT:'
194: p_error_msg := CSM_UTIL_PKG.GET_ERROR_MESSAGE_TEXT
195: (
196: p_api_error => TRUE
197: );
198: CSM_UTIL_PKG.log( 'Exception in ' || g_object_name || '.APPLY_INSERT:'
199: || ' for PK ' || p_record.NOTIFICATION_ID ,'CSM_MAIL_MESSAGES_PKG.APPLY_INSERT',FND_LOG.LEVEL_EXCEPTION);
200: x_return_status := FND_API.G_RET_STS_ERROR;
201: END APPLY_INSERT;
202:
224: x_return_status
225: );
226: ELSE
227: -- Process delete and update; not supported for this entity
228: CSM_UTIL_PKG.LOG
229: ( 'Delete and Update is not supported for this entity'
230: || ' for PK ' || p_record.notification_id ,'CSM_MAIL_MESSAGES_PKG.APPLY_RECORD',FND_LOG.LEVEL_ERROR);
231:
232: p_error_msg := CSM_UTIL_PKG.GET_ERROR_MESSAGE_TEXT
228: CSM_UTIL_PKG.LOG
229: ( 'Delete and Update is not supported for this entity'
230: || ' for PK ' || p_record.notification_id ,'CSM_MAIL_MESSAGES_PKG.APPLY_RECORD',FND_LOG.LEVEL_ERROR);
231:
232: p_error_msg := CSM_UTIL_PKG.GET_ERROR_MESSAGE_TEXT
233: (
234: p_message => 'CSM_DML_OPERATION'
235: , p_token_name1 => 'DML'
236: , p_token_value1 => p_record.dmltype$$
240: END IF;
241:
242: EXCEPTION WHEN OTHERS THEN
243: /*** defer record when any process exception occurs ***/
244: CSM_UTIL_PKG.LOG
245: ( 'Exception occurred in CSM_mail_messages_PKG.APPLY_RECORD:' || ' ' || sqlerrm
246: || ' for PK ' || p_record.notification_id,'CSM_MAIL_MESSAGES_PKG.APPLY_RECORD',FND_LOG.LEVEL_EXCEPTION );
247:
248: fnd_msg_pub.Add_Exc_Msg( g_object_name, 'APPLY_RECORD', sqlerrm);
245: ( 'Exception occurred in CSM_mail_messages_PKG.APPLY_RECORD:' || ' ' || sqlerrm
246: || ' for PK ' || p_record.notification_id,'CSM_MAIL_MESSAGES_PKG.APPLY_RECORD',FND_LOG.LEVEL_EXCEPTION );
247:
248: fnd_msg_pub.Add_Exc_Msg( g_object_name, 'APPLY_RECORD', sqlerrm);
249: p_error_msg := CSM_UTIL_PKG.GET_ERROR_MESSAGE_TEXT
250: (
251: p_api_error => TRUE
252: );
253:
254: x_return_status := FND_API.G_RET_STS_ERROR;
255: END APPLY_RECORD;
256:
257: /***
258: This procedure is called by CSM_UTIL_PKG when publication item
260: a fast sync. This procedure will insert the data that came from mobile into the backend tables using
261: public APIs.
262: ***/
292: /*** was record processed successfully? ***/
293: IF l_process_status = FND_API.G_RET_STS_SUCCESS THEN
294:
295: /*** Yes -> reject record because of changed pk ***/
296: CSM_UTIL_PKG.LOG ( 'Record successfully processed, rejecting record ' || ' for PK '
297: || r_mail_messages.notification_id
298: ,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES'
299: ,FND_LOG.LEVEL_PROCEDURE); -- put PK column here
300:
297: || r_mail_messages.notification_id
298: ,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES'
299: ,FND_LOG.LEVEL_PROCEDURE); -- put PK column here
300:
301: CSM_UTIL_PKG.REJECT_RECORD
302: (
303: p_user_name,
304: p_tranid,
305: r_mail_messages.seqno$$,
312:
313:
314: IF l_process_status = FND_API.G_RET_STS_SUCCESS THEN
315: /*** Reject successfull than reject matching records in mail recipient ***/
316: CSM_UTIL_PKG.LOG
317: ( 'Mail message record rejected. Now rejecting records in mail recipient ' || ' for PK '
318: || r_mail_messages.notification_id
319: ,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES'
320: ,FND_LOG.LEVEL_PROCEDURE); -- put PK column here
321:
322: FOR r_mail_recipients IN c_mail_recipients( p_user_name
323: , p_tranid
324: , r_mail_messages.notification_id ) LOOP
325: CSM_UTIL_PKG.REJECT_RECORD
326: ( p_user_name,
327: p_tranid,
328: r_mail_recipients.seqno$$,
329: r_mail_recipients.notification_id,
337:
338:
339: /*** Yes -> delete record from inqueue ***/
340:
341: CSM_UTIL_PKG.DELETE_RECORD
342: (
343: p_user_name,
344: p_tranid,
345: r_mail_messages.seqno$$,
352:
353: /*** was delete successful? ***/
354: IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
355: /*** no -> rollback ***/
356: CSM_UTIL_PKG.LOG
357: ( 'Deleting from inqueue failed, rolling back to savepoint'
358: || ' for PK ' || r_mail_messages.notification_id ,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES',FND_LOG.LEVEL_ERROR); -- put PK column here
359: ROLLBACK TO save_rec;
360: x_return_status := FND_API.G_RET_STS_ERROR;
362: END IF;
363:
364: IF l_process_Status <> FND_API.G_RET_STS_SUCCESS THEN
365: /*** Record was not processed successfully or delete failed -> defer and reject record ***/
366: CSM_UTIL_PKG.LOG
367: ( 'Record not processed successfully, deferring and rejecting record'
368: || ' for PK ' || r_mail_messages.notification_id ,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES',FND_LOG.LEVEL_ERROR); -- put PK column here
369:
370: CSM_UTIL_PKG.DEFER_RECORD
366: CSM_UTIL_PKG.LOG
367: ( 'Record not processed successfully, deferring and rejecting record'
368: || ' for PK ' || r_mail_messages.notification_id ,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES',FND_LOG.LEVEL_ERROR); -- put PK column here
369:
370: CSM_UTIL_PKG.DEFER_RECORD
371: (
372: p_user_name
373: , p_tranid
374: , r_mail_messages.seqno$$
382:
383: /*** Was defer successful? ***/
384: IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
385: /*** no -> rollback ***/
386: CSM_UTIL_PKG.LOG
387: ( 'Defer record failed, rolling back to savepoint'
388: || ' for PK ' || r_mail_messages.notification_id,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES',FND_LOG.LEVEL_ERROR ); -- put PK column here
389: ROLLBACK TO save_rec;
390: x_return_status := FND_API.G_RET_STS_ERROR;
394: END LOOP;
395:
396: EXCEPTION WHEN OTHERS THEN
397: /*** catch and log exceptions ***/
398: CSM_UTIL_PKG.LOG
399: ( 'Exception occurred in APPLY_CLIENT_CHANGES:' || ' ' || sqlerrm
400: ,'CSM_MAIL_MESSAGES_PKG.APPLY_CLIENT_CHANGES',FND_LOG.LEVEL_EXCEPTION);
401: x_return_status := FND_API.G_RET_STS_ERROR;
402: END APPLY_CLIENT_CHANGES;