The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT *
FROM CSM_MTL_MATERIAL_TXNS_INQ
WHERE tranid$$ = b_tranid
AND clid$$cs = b_user_name;
SELECT *
FROM CSM_MTL_TXNS_LOT_NUM_INQ
WHERE tranid$$ = b_tranid
AND clid$$cs = b_user_name
AND transaction_id = b_transaction_id;
SELECT *
FROM CSM_MTL_UNIT_TXNS_INQ
WHERE tranid$$ = b_tranid
AND clid$$cs = b_user_name
AND transaction_id = b_transaction_id;
This procedure is called by APPLY_CLIENT_CHANGES when an inserted record is to be processed.
***/
PROCEDURE APPLY_INSERT
(
p_record IN c_material_transaction%ROWTYPE,
p_error_msg OUT NOCOPY VARCHAR2,
x_return_status IN OUT NOCOPY VARCHAR2
)
IS
l_lot_number c_lot_number%ROWTYPE;
SELECT TRANSACTION_ID
, INVENTORY_ITEM_ID
, ORGANIZATION_ID
, SUBINVENTORY_CODE
FROM MTL_MATERIAL_TRANSACTIONS
WHERE TRANSACTION_SET_ID = b_transaction_set_id;
SELECT RESOURCE_ID
FROM ASG_USER
WHERE USER_NAME = b_client_name;
, message => p_record.TRANSACTION_ID || ' Entering ' || g_object_name || '.APPLY_INSERT'
, log_level => FND_LOG.LEVEL_STATEMENT);
, message => p_record.TRANSACTION_ID || ' Leaving ' || g_object_name || '.APPLY_INSERT'
, log_level => FND_LOG.LEVEL_STATEMENT);
, message => p_record.TRANSACTION_ID || ' Exception occurred in APPLY_INSERT:' || fnd_global.local_chr(10) || sqlerrm
, log_level => FND_LOG.LEVEL_ERROR);
fnd_msg_pub.Add_Exc_Msg( g_object_name, 'APPLY_INSERT', sqlerrm);
END APPLY_INSERT;
This procedure is called by APPLY_CLIENT_CHANGES when an updated record is to be processed.
***/
PROCEDURE APPLY_UPDATE
(
p_record IN c_material_transaction%ROWTYPE,
p_error_msg OUT NOCOPY VARCHAR2,
x_return_status IN OUT NOCOPY VARCHAR2
) IS
BEGIN
CSM_UTIL_PKG.LOG
( module => g_object_name
, message => p_record.TRANSACTION_ID || ' Entering ' || g_object_name || '.APPLY_UPDATE'
, log_level => FND_LOG.LEVEL_STATEMENT);
, message => p_record.TRANSACTION_ID || ' Leaving ' || g_object_name || '.APPLY_UPDATE'
, log_level => FND_LOG.LEVEL_STATEMENT);
, message => p_record.TRANSACTION_ID || ' Exception occurred in APPLY_UPDATE:' || fnd_global.local_chr(10) || sqlerrm
, log_level => FND_LOG.LEVEL_ERROR);
fnd_msg_pub.Add_Exc_Msg( g_object_name, 'APPLY_UPDATE', sqlerrm);
END APPLY_UPDATE;
APPLY_INSERT
(
p_record,
p_error_msg,
x_return_status
);
, message => p_record.TRANSACTION_ID || ' Updates and Deletes is not supported for this entity'
, log_level => FND_LOG.LEVEL_ERROR);
a fast sync. This procedure will insert the data that came from mobile into the backend tables using
public APIs.
***/
PROCEDURE APPLY_CLIENT_CHANGES
(
p_user_name IN VARCHAR2,
p_tranid IN NUMBER,
p_debug_level IN NUMBER,
x_return_status IN OUT NOCOPY VARCHAR2
) IS
l_process_status VARCHAR2(1);
/*** Yes -> delete record from inqueue ***/
CSM_UTIL_PKG.LOG
( module => g_object_name
, message => r_material_transaction.TRANSACTION_ID || ' Record successfully processed, deleting from inqueue'
, log_level => FND_LOG.LEVEL_PROCEDURE);
CSM_UTIL_PKG.DELETE_RECORD
(
p_user_name,
p_tranid,
r_material_transaction.seqno$$,
r_material_transaction.TRANSACTION_ID,
g_object_name,
g_mat_pub_name,
l_error_msg,
l_process_status
);
/*** was delete successful? ***/
IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
/*** no -> rollback ***/
CSM_UTIL_PKG.LOG
( module => g_object_name
, message => r_material_transaction.TRANSACTION_ID || ' Deleting from inqueue failed, rolling back to savepoint'
, log_level => FND_LOG.LEVEL_PROCEDURE);
/* Delete matching contact record(s) */
CSM_UTIL_PKG.DELETE_RECORD
(
p_user_name,
p_tranid,
r_lot_number.seqno$$,
r_lot_number.TRANSACTION_ID,
g_object_name,
g_lot_pub_name,
l_error_msg,
l_process_status
);
/*** was delete successful? ***/
IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
CSM_UTIL_PKG.LOG
( module => g_object_name
, message => r_lot_number.tranid$$ || ' Deleting from inqueue failed, Defer and reject record'
, log_level => FND_LOG.LEVEL_PROCEDURE);
/* Delete matching contact record(s) */
CSM_UTIL_PKG.DELETE_RECORD
(
p_user_name,
p_tranid,
r_unit_transaction.seqno$$,
r_unit_transaction.TRANSACTION_ID,
g_object_name,
g_unit_pub_name,
l_error_msg,
l_process_status
);
/*** was delete successful? ***/
IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
CSM_UTIL_PKG.LOG
( module => g_object_name || 'MTL_UNIT_TRANSACTIONS'
, message => r_unit_transaction.TRANSACTION_ID || ' Deleting from inqueue failed, Defer and reject record'
, log_level => FND_LOG.LEVEL_PROCEDURE);
/*** Record was not processed successfully or delete failed -> defer and reject record ***/
CSM_UTIL_PKG.LOG
( module => g_object_name
, message => r_material_transaction.TRANSACTION_ID || ' Record not processed successfully, deferring and rejecting record'
, log_level => FND_LOG.LEVEL_PROCEDURE);