The following lines contain the word 'select', 'insert', 'update' or 'delete':
/* Select all inq records */
CURSOR c_client_undo( b_user_name VARCHAR2, b_tranid NUMBER) is
SELECT *
FROM CSM_CLIENT_UNDO_REQUEST_INQ
WHERE tranid$$ = b_tranid
AND clid$$cs = b_user_name;
This procedure is called by APPLY_CLIENT_CHANGES when an inserted record is to be processed.
***/
PROCEDURE APPLY_UNDO
(
p_record IN c_client_undo%ROWTYPE,
p_error_msg OUT NOCOPY VARCHAR2,
x_return_status IN OUT NOCOPY VARCHAR2
)
IS
/*CURSOR c_get_undo_inq ( c_user_name VARCHAR2, c_tranid NUMBER,c_pk1_value NUMBER)
IS
SELECT SEQNO$$
FROM CSM_CLIENT_UNDO_REQUEST_INQ
WHERE tranid$$ = c_tranid
AND clid$$cs = c_user_name
AND PK1_VALUE = c_pk1_value;
SELECT INQ.TASK_ASSIGNMENT_ID,INQ.TRANID$$,INQ.SEQNO$$,DMLTYPE$$, TASK_ID
FROM CSM_TASK_ASSIGNMENTS_INQ INQ
WHERE INQ.TASK_ASSIGNMENT_ID = c_task_assignment_id
AND INQ.CLID$$CS = c_user_name;
SELECT ACCESS_ID
FROM CSM_TASK_ASSIGNMENTS_ACC acc
WHERE ACC.USER_ID = c_user_id
AND ACC.TASK_ASSIGNMENT_ID = c_task_assignment_id;
SELECT TASK_ID
FROM JTF_TASK_ASSIGNMENTS b
WHERE B.TASK_ASSIGNMENT_ID = c_task_assignment_id;
SELECT INQ.ASSIGNMENT_AUDIT_ID,INQ.TRANID$$,INQ.SEQNO$$,INQ.DMLTYPE$$
FROM CSM_TASK_ASSIGNMENTS_AUDIT_INQ INQ
WHERE INQ.ASSIGNMENT_ID = c_task_assignment_id
AND INQ.CLID$$CS = c_user_name;
SELECT INQ.TRANID$$,INQ.SEQNO$$,DMLTYPE$$,SOURCE_OBJECT_TYPE_CODE,SOURCE_OBJECT_ID
FROM CSM_TASKS_INQ inq
WHERE inq.TASK_ID = c_task_id
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID
FROM CSM_TASKS_ACC acc
WHERE acc.TASK_ID = c_task_id
AND acc.USER_ID = c_user_id;
SELECT SOURCE_OBJECT_TYPE_CODE,SOURCE_OBJECT_ID
FROM JTF_TASKS_B b
WHERE b.TASK_ID = c_task_id;
SELECT INQ.TRANID$$,INQ.SEQNO$$,DMLTYPE$$
FROM CSM_INCIDENTS_ALL_INQ inq
WHERE inq.INCIDENT_ID = c_incident_id
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID
FROM CSM_INCIDENTS_ALL_ACC acc
WHERE acc.USER_ID = c_user_id
AND acc.INCIDENT_ID = c_incident_id;
SELECT ACCESS_ID,INQ.DEBRIEF_HEADER_ID,INQ.TRANID$$,INQ.SEQNO$$
FROM CSM_DEBRIEF_HEADERS_ACC acc,
CSM_DEBRIEF_HEADERS_INQ inq
WHERE acc.USER_ID(+) = c_user_id
AND inq.TASK_ASSIGNMENT_ID = c_task_assg_id
AND inq.DEBRIEF_HEADER_ID = acc.DEBRIEF_HEADER_ID(+)
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID,INQ.DEBRIEF_LINE_ID,INQ.TRANID$$,INQ.SEQNO$$
FROM CSM_DEBRIEF_LINES_ACC acc,
CSF_M_DEBRIEF_EXPENSES_INQ inq
WHERE acc.USER_ID(+) = c_user_id
AND inq.TASK_ASSIGNMENT_ID = c_task_assg_id
AND inq.DEBRIEF_LINE_ID = acc.DEBRIEF_LINE_ID(+)
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID,INQ.DEBRIEF_LINE_ID,INQ.TRANID$$,INQ.SEQNO$$
FROM CSM_DEBRIEF_LINES_ACC acc,
CSF_M_DEBRIEF_LABOR_INQ inq
WHERE acc.USER_ID(+) = c_user_id
AND inq.TASK_ASSIGNMENT_ID = c_task_assg_id
AND inq.DEBRIEF_LINE_ID = acc.DEBRIEF_LINE_ID(+)
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID,INQ.DEBRIEF_LINE_ID,INQ.TRANID$$,INQ.SEQNO$$
FROM CSM_DEBRIEF_LINES_ACC acc,
CSF_M_DEBRIEF_PARTS_INQ inq
WHERE acc.USER_ID(+) = c_user_id
AND inq.TASK_ASSIGNMENT_ID = c_task_assg_id
AND inq.DEBRIEF_LINE_ID = acc.DEBRIEF_LINE_ID(+)
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID,INQ.REQUIREMENT_HEADER_ID,INQ.TRANID$$,INQ.SEQNO$$
FROM CSM_REQ_HEADERS_ACC acc,
CSM_REQ_HEADERS_INQ inq
WHERE acc.USER_ID(+) = c_user_id
AND inq.TASK_ASSIGNMENT_ID = c_task_assg_id
AND inq.REQUIREMENT_HEADER_ID = acc.REQUIREMENT_HEADER_ID(+)
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID,INQ.REQUIREMENT_LINE_ID,INQ.TRANID$$,INQ.SEQNO$$
FROM CSM_REQ_LINES_ACC acc,
CSM_REQ_LINES_INQ inq
WHERE acc.USER_ID (+) = c_user_id
AND inq.REQUIREMENT_HEADER_ID = c_req_header_id
AND inq.REQUIREMENT_LINE_ID = acc.REQUIREMENT_LINE_ID (+)
AND inq.CLID$$CS = c_user_name;
SELECT ACCESS_ID,INQ.JTF_NOTE_ID,INQ.TRANID$$,INQ.SEQNO$$, INQ.DMLTYPE$$
FROM CSM_NOTES_ACC acc,
CSF_M_NOTES_INQ inq
WHERE acc.USER_ID (+) = c_user_id
AND inq.JTF_NOTE_ID = acc.JTF_NOTE_ID (+)
AND inq.CLID$$CS = c_user_name
AND (
( inq.SOURCE_OBJECT_CODE = 'TASK' AND inq.SOURCE_OBJECT_ID = c_task_id )
OR ( inq.SOURCE_OBJECT_CODE = 'SR' AND inq.SOURCE_OBJECT_ID = c_incident_id)
OR ( inq.SOURCE_OBJECT_CODE = 'SD' AND inq.SOURCE_OBJECT_ID = c_debrief_header_id)
);
SELECT ACCESS_ID,INQ.FILE_ID,INQ.TRANID$$,INQ.SEQNO$$, INQ.DMLTYPE$$
FROM CSM_FND_LOBS_ACC acc,
CSF_M_LOBS_INQ inq
WHERE acc.USER_ID (+) = c_user_id
AND inq.FILE_ID = acc.FILE_ID (+)
AND inq.CLID$$CS = c_user_name
AND (
( inq.ENTITY_NAME = 'JTF_TASKS_B' AND inq.PK1_VALUE = c_task_id )
OR ( inq.ENTITY_NAME = 'CS_INCIDENTS' AND inq.PK1_VALUE = c_incident_id)
);
SELECT USER_ID
FROM ASG_USER
WHERE USER_NAME = c_user_name;
ELSIF l_dml_type = 'I' THEN --insert
--Reject the Insert record
CSM_UTIL_PKG.REJECT_RECORD
( l_user_name
, l_tran_id
, l_sequence
, l_task_assignment_id
, l_ta_obj_name
, l_ta_pub_name
, l_error_msg
, l_process_status
);
OPEN cur FOR 'select DISTINCT STORE from '||asg_base.G_OLITE_SCHEMA||'.c$inq c_inq
WHERE CLID$$CS ='''||l_user_name||''' AND TRANID$$ = '||l_tran_id
||' AND EXISTS(SELECT 1 FROM ASG_PUB_ITEM WHERE ITEM_ID = c_inq.STORE) ' ;
ELSIF l_dml_type = 'I' THEN --insert
--Reject the Insert record
CSM_UTIL_PKG.REJECT_RECORD
( l_user_name
, l_tran_id
, l_sequence
, l_task_id
, l_task_obj_name
, l_task_pub_name
, l_error_msg
, l_process_status
);
ELSIF l_dml_type = 'I' THEN --insert
--Reject the Insert record
CSM_UTIL_PKG.REJECT_RECORD
( l_user_name
, l_tran_id
, l_sequence
, l_incident_id
, l_sr_obj_name
, l_sr_pub_name
, l_error_msg
, l_process_status
);
ELSE --Delete and update is not supported for this PI
-- invalid dml type
CSM_UTIL_PKG.LOG
( 'Invalid DML type: ' || p_record.dmltype$$ || ' is not supported for this entity'
|| ' for Undo Request ID ' || p_record.PK1_VALUE ,'CSM_UNDO_PKG.APPLY_RECORD',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);
/*** was delete successful? ***/
IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
/*** no -> rollback ***/
CSM_UTIL_PKG.LOG
( 'Reject record failed, rolling back to savepoint'
|| ' for PK ' || r_client_undo_rec.REQUEST_ID ,'CSM_UNDO_PKG.APPLY_CLIENT_CHANGES',FND_LOG.LEVEL_ERROR); -- put PK column here