The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT *
FROM CSL_LOBS_INQ
WHERE tranid$$ = b_tranid
AND clid$$cs = b_user_name;
This procedure is called by APPLY_RECORD when an inserted record is to be
processed.
***/
PROCEDURE APPLY_INSERT
(
p_record IN C_FND_LOBS%ROWTYPE,
p_error_msg OUT NOCOPY VARCHAR2,
x_return_status IN OUT NOCOPY VARCHAR2
) IS
-- Variables needed for public API
l_seq_num number;
SELECT debrief_header_id FROM csf_debrief_headers
WHERE task_assignment_id = p_task_assignment_id
ORDER BY debrief_header_id;
SELECT nvl(max(fad.seq_num),0)+10
FROM fnd_attached_documents fad, fnd_documents fd
WHERE fad.pk1_value=to_char(p_debrief_header_id)
AND fd.document_id = fad.document_id
AND EXISTS
(SELECT 1
FROM fnd_document_categories_tl cat_tl
WHERE cat_tl.category_id = fd.category_id
AND cat_tl.user_name = 'Signature'
);
SELECT category_id FROM fnd_document_categories_tl
WHERE user_name = 'Signature';
SELECT 1 FROM fnd_lobs WHERE file_id = p_file_id;
l_error_msg := 'Entering ' || g_object_name || '.APPLY_INSERT'
|| ' for PK ' || to_char( p_record.FILE_ID);
INSERT INTO fnd_lobs(
file_id, file_name, file_content_type, file_data,
upload_date, language, file_format)
VALUES (p_record.file_id, 'INTERNAL', 'image/bmp', empty_blob(),
SYSDATE, p_record.language, 'binary')
RETURN file_data into l_signature_loc;
l_error_msg := 'Leaving ' || g_object_name || '.APPLY_INSERT'
|| ' for PK ' || to_char (p_record.FILE_ID );
|| '.APPLY_INSERT:' || ' ' || sqlerrm
|| ' for PK ' || to_char (p_record.FILE_ID );
fnd_msg_pub.Add_Exc_Msg( g_object_name, 'APPLY_INSERT', sqlerrm);
l_error_msg := 'Leaving ' || g_object_name || '.APPLY_INSERT'
|| ' for PK ' || to_char (p_record.FILE_ID );
END APPLY_INSERT;
APPLY_INSERT
(
p_record,
p_error_msg,
x_return_status
);
l_error_msg := 'Update is not supported for this entity ' || g_object_name;
l_error_msg := 'Delete is not supported for this entity ' || g_object_name ;
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);
, v_message => 'Entering ' || g_object_name || '.APPLY_INSERT'
, v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL
);
/*** Yes -> delete record from inqueue ***/
IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
jtm_message_log_pkg.Log_Msg
( v_object_id => r_fnd_lobs.task_assignment_id
, v_object_name => g_object_name
, v_message => 'Record successfully processed, deleting from inqueue'
, v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
CSL_SERVICEL_WRAPPER_PKG.DELETE_RECORD
(
p_user_name,
p_tranid,
r_FND_LOBS.seqno$$,
r_FND_LOBS.FILE_ID, -- put PK column here
g_object_name,
g_pub_name,
l_error_msg,
l_process_status
);
/*** was delete successful? ***/
IF l_process_status <> FND_API.G_RET_STS_SUCCESS THEN
/*** no -> rollback ***/
IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
jtm_message_log_pkg.Log_Msg
( v_object_id => r_FND_LOBS.task_assignment_id
, v_object_name => g_object_name
, v_message => 'Deleting from inqueue failed, rolling back to savepoint'
, v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
/*** Record was not processed successfully or delete failed
-> defer and reject record ***/
IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
jtm_message_log_pkg.Log_Msg
( v_object_id => r_FND_LOBS.task_assignment_id
, v_object_name => g_object_name
, v_message => 'Deleting from inqueue failed, rolling back to savepoint'
, v_level_id => JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);