The following lines contain the word 'select', 'insert', 'update' or 'delete':
IS SELECT INQ_NAME FROM ASG_PUB_ITEM WHERE ITEM_ID =C_PIV_NAME;
select sys_context('CSM5_VAULT_NS', 'APPLICATION') into x from dual;
l_QUERY_TEXT1 := 'SELECT * FROM ' ||
p_TABLE_NAME ||
' WHERE ' || p_pk_name || ' = :PK_VALUE';
PROCEDURE INSERT_CACHE(P_U IN VARCHAR2,PI IN VARCHAR2,P_D IN CLOB, P_CNT IN NUMBER)
IS
PRAGMA AUTONOMOUS_TRANSACTION;
INSERT INTO CSM_HTML5_CACHE(USER_NAME,PI_NAME,DATA,REC_CNT,SESSION_ID) VALUES(P_U,PI,P_D,P_CNT,G_SESSION_ID);
END INSERT_CACHE;
PROCEDURE DELETE_CACHE(PI IN VARCHAR2,P_U IN VARCHAR2:=NULL)
IS
PRAGMA AUTONOMOUS_TRANSACTION;
DELETE FROM CSM_HTML5_CACHE WHERE PI_NAME=PI;
DELETE FROM CSM_HTML5_CACHE WHERE PI_NAME=PI AND USER_NAME=P_U;
END DELETE_CACHE;
SELECT DATA,REC_CNT INTO X_DATA,X_CNT FROM CSM_HTML5_CACHE WHERE USER_NAME=P_U AND PI_NAME=PI;
DELETE FROM CSM_HTML5_CACHE B WHERE EXISTS(SELECT 1 FROM ASG_SYSTEM_DIRTY_QUEUE
WHERE CLIENT_ID=B.USER_NAME
AND PUB_ITEM=B.PI_NAME);
select prf_value into l_str from csm_html5_clients_info where user_name=p_user_name and prf_name=p_in_prof;
UPDATE csm_html5_clients_info SET PRF_VALUE=pvalue
WHERE PRF_NAME=pname AND USER_NAME=p_uname;
INSERT INTO csm_html5_clients_info(USER_NAME,PRF_NAME,PRF_VALUE) VALUES(p_uname,pname, pvalue);
SELECT PRF_VALUE INTO l_temp FROM csm_html5_clients_info
WHERE USER_NAME=p_user_name
AND PRF_NAME='XML_ERROR';
UPDATE csm_html5_clients_info
SET PRF_VALUE=l_temp||'.'
WHERE USER_NAME=p_user_name
AND PRF_NAME='XML_ERROR';
UPDATE csm_html5_clients_info
SET PRF_VALUE=l_temp
WHERE USER_NAME=p_user_name
AND PRF_NAME='XML_ERROR';
INSERT INTO csm_html5_clients_info(USER_NAME,PRF_NAME,PRF_VALUE) VALUES(p_user_name,'XML_ERROR',p_PI_NAME||':'||p_pk_value||';');
FOR rec IN (SELECT USER_NAME FROM ASG_USER au WHERE ENABLED='Y' AND MULTI_PLATFORM='Y'
AND NOT EXISTS(SELECT 1 FROM CSM_HTML5_CLIENTS_INFO
WHERE USER_NAME=au.USER_NAME AND PRF_NAME='INDXREF' AND PRF_VALUE=p_idx)
AND EXISTS(SELECT 1 FROM CSM_HTML5_SYNC_INFO WHERE USER_NAME =au.USER_NAME)
)
LOOP
INSERT INTO CSM_HTML5_CLIENTS_INFO(USER_NAME,PRF_NAME,PRF_VALUE) VALUES(rec.USER_NAME,'INDXREF',p_idx);
DELETE FROM CSM_HTML5_CACHE WHERE USER_NAME='APPLICATION' AND PI_NAME=(SELECT ITEM_ID FROM ASG_PUB_ITEM_INDEX WHERE INDEX_ID=p_idx) ;
FOR rec IN (SELECT USER_NAME FROM ASG_USER au WHERE ENABLED='Y' AND MULTI_PLATFORM='Y' AND USER_NAME=p_USER_NAME
AND NOT EXISTS(SELECT 1 FROM CSM_HTML5_CLIENTS_INFO
WHERE USER_NAME=au.USER_NAME AND PRF_NAME='INDXREF' AND PRF_VALUE=p_idx)
AND EXISTS(SELECT 1 FROM CSM_HTML5_SYNC_INFO WHERE USER_NAME =au.USER_NAME)
)
LOOP
INSERT INTO CSM_HTML5_CLIENTS_INFO(USER_NAME,PRF_NAME,PRF_VALUE) VALUES(rec.USER_NAME,'INDXREF',p_idx);
DELETE FROM CSM_HTML5_CACHE WHERE USER_NAME='APPLICATION' AND PI_NAME=(SELECT ITEM_ID FROM ASG_PUB_ITEM_INDEX WHERE INDEX_ID=p_idx) ;
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_USER_NAME AND PRF_NAME like 'INDXREF%';
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE PRF_NAME='INDXREF' AND PRF_VALUE IN (SELECT INDEX_ID FROM ASG_PUB_ITEM_INDEX WHERE ITEM_ID=p_pi);
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_USER_NAME
AND PRF_NAME='INDXREF' AND PRF_VALUE IN (SELECT INDEX_ID FROM ASG_PUB_ITEM_INDEX WHERE ITEM_ID=p_pi);
DELETE FROM csm_html5_clients_info WHERE USER_NAME='APPLICATION' AND PRF_NAME='SCHEMA_REUSE';
DELETE_CACHE(p_pi);
FOR rec IN (SELECT USER_NAME FROM ASG_USER au WHERE ENABLED='Y' AND MULTI_PLATFORM='Y'
AND NOT EXISTS(SELECT 1 FROM CSM_HTML5_CLIENTS_INFO
WHERE USER_NAME=au.USER_NAME AND PRF_NAME='COMPREF' AND PRF_VALUE=p_pi)
AND NOT EXISTS(SELECT 1 FROM ASG_PURGE_SDQ WHERE USER_NAME =au.USER_NAME AND pub_name = 'SERVICEP' AND TRANSACTION_ID IS NULL)
)
LOOP
INSERT INTO CSM_HTML5_CLIENTS_INFO(USER_NAME,PRF_NAME,PRF_VALUE) VALUES(rec.USER_NAME,'COMPREF',p_pi);
FOR rec IN (SELECT USER_NAME FROM ASG_USER au WHERE ENABLED='Y' AND MULTI_PLATFORM='Y' AND USER_NAME=p_user_name
AND MULTI_PLATFORM='Y' AND NOT EXISTS(SELECT 1 FROM CSM_HTML5_CLIENTS_INFO
WHERE USER_NAME=au.USER_NAME AND PRF_NAME='COMPREF' AND PRF_VALUE=p_pi))
LOOP
INSERT INTO CSM_HTML5_CLIENTS_INFO(USER_NAME,PRF_NAME,PRF_VALUE) VALUES(p_USER_NAME,'COMPREF',p_pi);
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_USER_NAME
AND PRF_NAME='COMPREF' AND PRF_VALUE=p_pi;
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_USER_NAME AND PRF_NAME like 'COMPREF%';
FOR rec IN (SELECT item_id ,index_name,index_columns,enabled
FROM CSM_HTML5_CLIENTS_INFO a, ASG_PUB_ITEM_INDEX b
WHERE a.USER_NAME=p_user_name AND a.PRF_NAME='INDXREF'
AND a.PRF_VALUE=b.index_id)
LOOP
l_stmt:=l_stmt||'appsdb.doDDL("DROP INDEX '||rec.index_name||'",[],";",";");'||g_nl_chr;
FOR rec IN (select index_name,index_columns,enabled from ASG_PUB_ITEM_INDEX where item_id =p_pi)
LOOP
l_stmt:=l_stmt||'appsdb.doDDL("DROP INDEX '||rec.index_name||'",[],";",";");'||g_nl_chr;
for rec in (select item_id,upper(base_object_name) piv,primary_key_column from asg_pub_item where item_id=p_pi and rownum=1) --only one record selected any way
loop
l_name_tab.DELETE;
l_dtype_tab.DELETE;
OPEN c_cur FOR 'select column_name,decode(data_type,''CLOB'',''TEXT'',''CHAR'',''TEXT'',''VARCHAR2'',''TEXT'',''DATE'',''TIME'',''NUMBER'',DECODE(NVL(DATA_SCALE,0),0,''INTEGER'',''REAL''),data_type)
from all_tab_columns where owner='''||G_APPS_SCHEMA||''' and table_name='''||rec.piv||''' order by column_id';
INSERT_CACHE('CSM_CACHE_PVT',p_pi,l_stmt,null);
for rec in (select item_id,query1 from asg_pub_item where pub_name='SERVICEP' and enabled='Y'
and nvl(html5_offline,'N')='Y')
loop
CSM_UTIL_PKG.LOG('Processing schema of '||rec.item_id,'CSM_HTML5_PKG.query_get_schema_js',FND_LOG.LEVEL_ERROR);
SELECT to_number(PRF_VALUE) into instId FROM csm_html5_clients_info WHERE USER_NAME='APPLICATION' AND PRF_NAME='SCHEMA_REUSE';
select result into l_blob from csm_query_results_acc where instance_id = instId and query_id=5;
CSM_QUERY_PKG.INSERT_INSTANCE(asg_base.get_user_id(p_user_name), 5, NULL, 'REUSABLE_SCHEMA', l_id, l_ch, l_dt,NULL, instId, ret, m);
CSM_UTIL_PKG.LOG('Instance Insert Status:'||instId||':'||ret||':'||m, 'CSM_HTML5_PKG.query_schema_js', FND_LOG.LEVEL_PROCEDURE);
INSERT INTO CSM_QUERY_RESULTS_ACC(ACCESS_ID , USER_ID , QUERY_ID , INSTANCE_ID , LINE_ID,
RESULT ,CREATED_BY,CREATION_DATE,LAST_UPDATED_BY, LAST_UPDATE_DATE,LAST_UPDATE_LOGIN)
VALUES (CSM_QUERY_RESULTS_ACC_S.NEXTVAL, asg_base.get_user_id(p_user_name), 5, instId, 1,
l_blob, fnd_global.user_id, SYSDATE, fnd_global.user_id, SYSDATE, fnd_global.login_id);
INSERT INTO csm_html5_ajax_info(AJAX_SESSION_ID,USER_NAME,CREATION_DATE,SYNC_RESPONSE,SYNC_ID)
VALUES(csm_html5_ajax_s.NEXTVAL,p_user_name,SYSDATE,p_response,p_sync_id);
SELECT csm_html5_sync_s.NEXTVAL INTO l_session_id FROM DUAL;
INSERT INTO csm_html5_sync_info(SESSION_ID,USER_NAME,START_DATE,FULL_SYNC,STATUS,STATUS_DESC,SYNC_TYPE,Q_INSTANCE_ID)
VALUES(l_session_id,p_user_name,SYSDATE,p_full_sync,'IN_PROGRESS','Sync has started successfuly',p_mode,l_instance);
procedure update_session_details(p_session_id IN NUMBER,p_pi IN VARCHAR2, p_count IN NUMBER,p_dummy IN OUT NOCOPY BOOLEAN,p_comp_ref IN VARCHAR2 :='N')
IS
PRAGMA AUTONOMOUS_TRANSACTION;
INSERT INTO csm_html5_sync_details(SESSION_ID, pi_name,record_count,comp_ref)
values(p_session_id,p_pi,p_count,p_comp_ref);
UPDATE csm_html5_sync_info SET STATUS_DESC=STATUS_DESC||' :Processed pi-s :'||p_pi
WHERE SESSION_ID=p_session_id;
UPDATE csm_html5_sync_info SET STATUS_DESC=STATUS_DESC||' ,'||p_pi
WHERE SESSION_ID=p_session_id;
END update_session_details;
UPDATE csm_html5_sync_info SET END_DATE=SYSDATE ,STATUS =p_status,STATUS_DESC=NVL(p_status_desc,STATUS_DESC||' : Sync Ended Successfully.')
WHERE SESSION_ID=p_session_id;
SELECT USER_ID INTO x FROM ASG_USER
WHERE USER_NAME=p_user_name
AND ENABLED='Y'
AND MULTI_PLATFORM='Y';
EXECUTE IMMEDIATE 'SELECT count(1) FROM '||l_temp_tab||' WHERE ROWNUM=1' INTO l_exists;
execute immediate 'CREATE GLOBAL TEMPORARY TABLE '||l_temp_tab||' ON COMMIT DELETE ROWS AS SELECT * FROM '||piv;
execute immediate 'INSERT INTO '||l_temp_object||' SELECT * FROM '||piv;
|| ' if(d) { head.removeChild(d); delete(d);} delete_sync_element(true); }); '||g_nl_chr||g_nl_chr
delete from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_6';
l_final:=l_final ||'var sqlS="";appsdb.delete_record("DELETE FROM CSM_CONFIG_DATA");'||g_nl_chr;
select useR_name,language,resource_id,useR_id,responsibility_id,app_id,lasT_synch_date_end
into l_uname,l_lang,lrid,l_uid,l_respid,l_app_id,l_synch_date from asg_user where user_name=upper(p_user_name);
for rec in (select item_id,base_objecT_name from asg_pub_item where pub_name='SERVICEP' and enabled='Y'
and nvl(html5_offline,'N')='Y' order by item_id)
LOOP
CSM_UTIL_PKG.LOG('Processing PI :'||rec.item_id, 'CSM_HTML5_PKG.query_sync_data_js', FND_LOG.LEVEL_PROCEDURE);
l_final:=l_final ||'appsdb.delete_record("DELETE FROM '||rec.item_id||'");'||g_nl_chr;
DELETE FROM ASG_SYSTEM_DIRTY_QUEUE WHERE CLIENT_ID=p_user_name AND PUB_ITEM=rec.item_id; --clear SDQ records here, so that new records inserted into sdq during this process
OPEN c_cur FOR 'SELECT ACCESS_ID from '||l_base_object|| ' where access_id is not null';
l_COL_NAME_IDX.DELETE;l_COL_CLOB_LIST.DELETE;
l_stmt :='sqlS="INSERT INTO '||rec.item_id||'('||l_COL_NAME_LIST(1);
INSERT_CACHE(p_user_name,rec.item_id,l_cache,l_rec_count);
UPDATE_SESSION_DETAILS(l_session_id,rec.item_id,l_rec_count,l_dummy,'Y');
delete from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_6';
|| ' if(d) { head.removeChild(d); delete(d);} '
||' delete_sync_element(); }); ';
/* M:=asg_download.purgeSdq(p_user_name); -- Replaced with delete at PI processing*/
UPDATE asg_purge_sdq set TRANSACTION_ID=NVL(l_session_id,1) WHERE user_name = p_user_name; --first sync over
UPDATE asg_complete_refresh set synch_completed='Y' WHERE user_name = p_user_name;
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_user_name AND PRF_NAME='APP_REVISION';
delete from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_6';
SELECT PRF_VALUE INTO l_t FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_user_name
AND PRF_NAME='COMPREF' AND PRF_VALUE=p_pi;
for rec in (select item_id,base_objecT_name from asg_pub_item where pub_name='SERVICEP' and enabled='Y'
and name=p_pi)
LOOP
l_final:=l_final || create_table_js(p_pi);
DELETE FROM ASG_SYSTEM_DIRTY_QUEUE WHERE CLIENT_ID=p_user_name AND PUB_ITEM=p_pi; --clear records here, so that new records inserted into sdq during this process
OPEN c_cur FOR 'SELECT ACCESS_ID from '||l_base_object|| ' where access_id is not null';
l_COL_NAME_IDX.DELETE;l_COL_CLOB_LIST.DELETE;
l_stmt := 'sqlS="INSERT INTO '||rec.item_id||'('||l_COL_NAME_LIST(1);
INSERT_CACHE(p_user_name,p_pi,l_cache,l_rec_count-p_count);
UPDATE_SESSION_DETAILS(p_session_id,rec.item_id,l_rec_count-p_count,p_dummy,'Y');
l_insertDML_pk_list l_c_idx_list_t;
l_insertDML_pi_list l_n_idx_list_t;
l_insertDML_pi VARCHAR2(200):=NULL;
l_insertpk_cols VARCHAR2(1000):=NULL;
|| ' if(d) { head.removeChild(d); delete(d);} delete_sync_element(); }); '||g_nl_chr||g_nl_chr
UPDATE asg_purge_sdq set TRANSACTION_ID=NVL(l_session_id,1) WHERE user_name = p_user_name; --first sync over
UPDATE asg_complete_refresh set synch_completed='Y' WHERE user_name = p_user_name;
DELETE FROM CSM_HTML5_CLIENTS_INFO a WHERE USER_NAME=p_user_name
AND PRF_NAME LIKE 'COMPREF-TID-%' AND EXISTS(SELECT 1 FROM CSM_HTML5_CLIENTS_INFO b WHERE a.USER_NAME=b.USER_NAME AND b.PRF_NAME='COMPREF' AND a.PRF_VALUE=b.PRF_VALUE) ;
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_user_name
AND PRF_NAME LIKE 'COMPREF-TID-%' AND TO_NUMBER(SUBSTR(PRF_NAME,13))
UPDATE CSM_HTML5_CLIENTS_INFO SET PRF_NAME='COMPREF' WHERE USER_NAME=p_user_name
AND PRF_NAME LIKE 'COMPREF-TID-%';
DELETE FROM CSM_HTML5_CLIENTS_INFO a WHERE USER_NAME=p_user_name
AND PRF_NAME LIKE 'INDXREF-TID-%' AND EXISTS(SELECT 1 FROM CSM_HTML5_CLIENTS_INFO b WHERE a.USER_NAME=b.USER_NAME AND b.PRF_NAME='INDXREF' AND a.PRF_VALUE=b.PRF_VALUE) ;
DELETE FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_user_name
AND PRF_NAME LIKE 'INDXREF-TID-%' AND TO_NUMBER(SUBSTR(PRF_NAME,13))
UPDATE CSM_HTML5_CLIENTS_INFO SET PRF_NAME='INDXREF' WHERE USER_NAME=p_user_name
AND PRF_NAME LIKE 'INDXREF-TID-%';
--remove successfully deleted DMLs from SDQ
DELETE FROM asg_delete_queue
WHERE qid IN (SELECT qid
FROM asg_system_dirty_queue
WHERE client_id = p_user_name AND
(transaction_id < p_tranid OR pub_item in (SELECT NAME FROM ASG_PUB_ITEM WHERE nvl(html5_offline,'N')='N' AND PUB_NAME='SERVICEP')));
DELETE FROM asg_system_dirty_queue
WHERE client_id = p_user_name AND
(transaction_id < p_tranid OR pub_item in (SELECT NAME FROM ASG_PUB_ITEM WHERE nvl(html5_offline,'N')='N' AND PUB_NAME='SERVICEP'));
UPDATE asg_system_dirty_queue SET transaction_id=p_tranid
WHERE client_id = p_user_name and rownum<=2000; --inc sync processes only max 2000 records(exclusive of comp ref) per sync
for pi in (SELECT NAME FROM ASG_PUB_ITEM WHERE nvl(html5_offline,'N')='Y')
loop
set_comp_ref(p_user_name,pi.name);
select useR_name,language,resource_id,useR_id,responsibility_id,app_id,lasT_synch_date_end
into l_uname,l_lang,lrid,l_uid,l_respid,l_app_id,l_synch_date from asg_user where user_name=upper(p_user_name);
for pi in (SELECT a.NAME FROM ASG_PUB_ITEM a,CSM_HTML5_CLIENTS_INFO b
WHERE nvl(html5_offline,'N')='Y'
AND PRF_NAME='COMPREF'
AND PRF_VALUE=a.NAME
AND b.USER_NAME=p_user_name ORDER BY a.NAME)
loop
l_final:=l_final||g_nl_chr||complete_refresh(l_session_id,p_user_name,pi.name,l_total_r_count,l_warning,l_dummy)||g_nl_chr;
UPDATE CSM_HTML5_CLIENTS_INFO SET PRF_NAME='COMPREF-TID-'||p_tranid
WHERE USER_NAME=p_user_name AND PRF_NAME='COMPREF' AND PRF_VALUE= pi.name; --check and clear in next sync
UPDATE CSM_HTML5_CLIENTS_INFO
SET PRF_NAME='INDXREF-TID-'||p_tranid
WHERE USER_NAME=p_user_name AND PRF_NAME='INDXREF'; --check and clear in next sync
for rec in (select b.pub_item,b.access_id,b.dml_type,base_object_name,a.primary_key_column
from asg_pub_item a,
(select pub_item,access_id,client_id,min(dml_type) as dml_type
from asG_system_dirty_queue
where client_id=p_useR_name
and transaction_id = p_tranid
and nvl(download_flag,'Y')='Y' --Bug 16456574: process conflicts
and pub_item in (SELECT NAME FROM ASG_PUB_ITEM WHERE nvl(html5_offline,'N')='Y')
group by pub_item,access_id,client_id) b
where b.pub_item=a.item_id
order by b.pub_item)
LOOP
CSM_UTIL_PKG.LOG('Found/Processing PI -'||rec.pub_item||' with access_id:'||rec.access_id, 'CSM_HTML5_PKG.q_inc_sync_data_js', FND_LOG.LEVEL_PROCEDURE);
UPDATE_SESSION_DETAILS(l_session_id,l_last_pi,l_rec_count,l_dummy);
l_final:=l_final ||'appsdb.delete_record("DELETE FROM '||rec.pub_item||' WHERE ACCESS_ID='||to_char(rec.access_id)||'",[],"doProgress(++sqlR,'''||rec.pub_item||''');");'||g_nl_chr;
l_COL_NAME_IDX.DELETE;l_COL_CLOB_LIST.DELETE;
IF (rec.dml_type = 1) THEN --INSERT dml
l_stmt:='';
IF NOT l_insertDML_pk_list.exists(rec.pub_item) THEN
l_insertDML_pk_list(rec.pub_item):=rec.primary_key_column;
l_insertDML_pi_list(l_pp_cnt):=rec.pub_item;
||'"INSERT INTO '||rec.pub_item||'('||l_COL_NAME_LIST(1);
l_stmt := 'appsdb.update_record("UPDATE '||rec.pub_item||' SET ';
FOR I IN 1..l_insertDML_pi_list.COUNT
LOOP
l_final:=l_final||'sync.clearOldInserts("'||l_insertDML_pi_list(I)||'","'||l_insertDML_pk_list(l_insertDML_pi_list(I))||'");'||g_nl_chr;
UPDATE_SESSION_DETAILS(l_session_id,l_last_pi,l_rec_count,l_dummy);
DELETE FROM csm_html5_clients_info WHERE USER_NAME=p_user_name AND PRF_NAME like 'REUSABLE%';
delete from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_9';
|| ' if(d) { head.removeChild(d); delete(d);} delete_sync_element(); }); '||g_nl_chr||g_nl_chr
delete from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_9';
UPDATE ASG_PUB_ITEM SET HTML5_OFFLINE='Y' WHERE ITEM_ID=p_pi;
DELETE FROM csm_html5_clients_info WHERE PRF_NAME like 'REUSABLE%' OR PRF_NAME like 'SCHEMA%REUSE%';
UPDATE ASG_PUB_ITEM SET HTML5_OFFLINE='N' WHERE ITEM_ID=p_pi;
DELETE FROM csm_html5_clients_info WHERE PRF_NAME like 'REUSABLE%';
SELECT 1
FROM jtm_con_request_data
WHERE product_code = 'CSM'
AND package_name = 'CSM_HTML5_PKG'
AND procedure_name = 'PURGE_HTML5_DATA'
FOR UPDATE OF last_run_date NOWAIT;
select profile_option_value from fnd_profile_option_values where profile_option_id in
(select profile_option_id from fnd_profile_options where profile_option_name='CSM_PURGE_INTERVAL')
and level_id=10001;
DELETE FROM CSM_HTML5_CLIENTS_INFO a WHERE USER_NAME<>'APPLICATION' AND NOT EXISTS (SELECT 1 FROM ASG_USER au WHERE au.USER_NAME=a.USER_NAME);
delete from csm_html5_ajax_info where creation_date < (sysdate-l_days);
delete from csm_html5_sync_info where start_date < (sysdate-l_days);
delete from csm_html5_sync_details a where not exists(select 1 from csm_html5_sync_info b where a.session_id=b.session_id);
delete from csm_query_instances_acc
where creation_date < (sysdate-l_days)
and query_id between 1 and 99
and instance_id not in (select to_number(prf_value) from csm_html5_clients_info WHERE PRF_NAME='SCHEMA_REUSE' OR PRF_NAME like 'REUSABLE%' OR PRF_NAME LIKE 'USER_CREAT%')
and not exists (select 1 from csm_html5_sync_info where instance_id=q_instance_id);
delete from csm_query_results_acc where instance_id not in ( select instance_id from csm_query_instances_acc where query_id between 1 and 99 );
UPDATE jtm_con_request_data
SET last_run_date = l_last_run_date
WHERE CURRENT OF l_upd_last_run_date_csr;
SELECT USER_ID INTO x FROM ASG_USER
WHERE USER_NAME=p_user_name
AND ENABLED='Y'
AND MULTI_PLATFORM='Y';
SELECT client_number INTO l_client_num
FROM asg_user
WHERE user_name = p_user_name;
UPDATE asg_sequence_partitions SET curr_val = l_curr_val
WHERE CLIENTID = p_user_name
AND name = l_seq_name
AND curr_val < l_curr_val;
CSM_UTIL_PKG.log ('Updated sequence for user: ' || p_user_name ||'\n sequence: ' || l_seq_name || '\n Seq value: ' || l_curr_val, 'CSM_HTML5_PKG.process_sequences',FND_LOG.LEVEL_PROCEDURE);
SELECT sequence
FROM asg_conf_info
WHERE user_name = p_user_name AND
transaction_id = p_upload_tranid AND
pub_item = p_pubitem AND
sequence IS NOT NULL;
SELECT conflict_callout INTO l_conflict_callout
FROM asg_pub_item WHERE name = p_pubitem;
insert into asg_conf_info (user_name,
pub_item,
transaction_id,
access_id,
sequence,
resolution,
creation_date,
created_by,
last_update_date,
last_updated_by)
SELECT p_user_name, p_pubitem, p_upload_tranid, access_id,b.sequence, l_client_wins,
sysdate, 1, sysdate, 1
FROM asg_system_dirty_queue a, CSM_HTML5_PARSED_DATA b
WHERE client_id = p_user_name AND pub_item = p_pubitem AND
transaction_id is NULL AND a.dml_type = 2
AND b.session_id=p_upload_tranid AND b.piv_name=a.pub_item AND a.access_id=b.pk_value AND b.dml_type='U'
AND NOT EXISTS(SELECT 1 FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME=p_user_name AND PRF_NAME='COMPREF' AND PRF_VALUE=p_pubitem);
l_query_string := 'SELECT ' || l_conflict_callout ||'(:1,:2,:3) from dual';
UPDATE asg_conf_info
SET resolution = l_conf_resolution
WHERE user_name = p_user_name AND
transaction_id = p_upload_tranid AND
pub_item = p_pubitem AND
sequence = l_sequence;
UPDATE asg_system_dirty_queue
SET download_flag = 'N'
WHERE client_id = p_user_name AND
pub_item = p_pubitem AND
transaction_id is NULL AND
dml_type = 2 AND
access_id in (select access_id
FROM asg_conf_info
WHERE user_name = p_user_name AND
transaction_id = p_upload_tranid AND
pub_item = p_pubitem AND
sequence IS NOT NULL AND
resolution = l_client_wins);
FOR rec IN (SELECT api.item_id
FROM csm_html5_inq ci, asg_pub_item api
WHERE ci.user_name = p_user_name
AND ci.sync_id = p_upload_tran_id
AND ci.pi_name = api.name
AND api.detect_conflict = 'Y')
LOOP
CSM_UTIL_PKG.LOG('Processing ' ||rec.item_id || ' for conflicts.', 'CSM_HTML5_PKG.process_conflicts', FND_LOG.LEVEL_PROCEDURE);
For rec IN (select a.session_id from csm_html5_upload_data a, csm_html5_sync_info c
where a.status<>'PARSED' and a.session_id=c.session_id
and c.useR_name=p_user_name order by session_id asc)
loop
CSM_HTML5_PKG.HTML5_PARSE_XML(rec.SESSION_ID,x_return_status,x_error_message);
UPDATE CSM_HTML5_UPLOAD_DATA
SET LAST_UPDATE_DATE = SYSDATE,
LAST_UPDATED_BY = 1,
STATUS = 'PARSE_ERROR',
COMMENTS = x_error_message
WHERE SESSION_ID = rec.SESSION_ID;
SELECT USER_ID,RESPONSIBILITY_ID,APP_ID INTO l_user_id,l_resp_id,l_app_id FROM ASG_USER WHERE USER_NAME=p_user_name;
INSERT INTO CSM_HTML5_UPLOAD_DATA(SESSION_ID,STATUS,COMMENTS,UPLOADED_PAYLOAD,CREATED_BY,CREATION_DATE,LAST_UPDATED_BY,LAST_UPDATE_DATE)
VALUES(l_session_id,'RECEIVED','Sync successfully dumped the data',p_sync_data,l_user_id,SYSDATE,l_user_id,SYSDATE);
UPDATE CSM_HTML5_UPLOAD_DATA
SET LAST_UPDATE_DATE = SYSDATE,
LAST_UPDATED_BY = 1,
STATUS = 'PARSE_ERROR',
COMMENTS = l_err
WHERE SESSION_ID = l_session_id;
FOR rec IN (SELECT PIV_NAME,COUNT(1) cnt FROM CSM_HTML5_PARSED_DATA
WHERE SESSION_ID=l_session_id GROUP BY PIV_NAME ORDER BY PIV_NAME)
LOOP
UPDATE_SESSION_DETAILS(l_session_id,rec.PIV_NAME,rec.cnt,l_dummy);
SELECT COUNT(*) INTO req_id FROM CSM_HTML5_PARSED_DATA
WHERE SESSION_ID=l_session_id AND STATUS='PARSE_ERROR';
CSM_QUERY_PKG.INSERT_INSTANCE(asg_base.get_user_id(p_user_name), 16, NULL, 'SYNCHRONOUS_UPLOAD', l_id, l_ch, l_dt,NULL, instId, ret, m);
UPDATE csm_html5_sync_info SET Q_INSTANCE_ID=instId WHERE SESSION_ID=l_session_id;
select responsibility_id ,application_id into l_resp_id ,l_app_id
from fnd_responsibility a, fnd_oracle_userid b
where responsibility_key='OMFS_PALM' and a.application_id=b.oracle_id
and b.oracle_username=l_app_name ;
PROCEDURE set_app_revision(p_version IN VARCHAR2,p_force_update IN VARCHAR2 :='N')
IS
l_cur_version VARCHAR2(100):=get_app_revision;
INSERT INTO csm_html5_clients_info(USER_NAME,PRF_NAME,PRF_VALUE)
VALUES('APPLICATION','REVISION',p_version);
UPDATE csm_html5_clients_info SET PRF_VALUE=p_version
WHERE USER_NAME='APPLICATION' AND PRF_NAME='REVISION';
UPDATE csm_html5_clients_info SET PRF_VALUE=p_force_update
WHERE USER_NAME='APPLICATION' AND PRF_NAME='FORCE_UPDATE';
INSERT INTO csm_html5_clients_info(USER_NAME,PRF_NAME,PRF_VALUE)
VALUES('APPLICATION','FORCE_UPDATE',p_force_update);
SELECT MAX(PRF_VALUE) into x FROM csm_html5_clients_info
WHERE USER_NAME='APPLICATION' AND PRF_NAME='REVISION';
UPDATE csm_html5_clients_info SET PRF_VALUE=p_v
WHERE USER_NAME=P_U AND PRF_NAME='LAST_SYNC_APP_VERSION';
INSERT INTO csm_html5_clients_info(USER_NAME,PRF_NAME,PRF_VALUE)
VALUES(P_U,'LAST_SYNC_APP_VERSION',p_v);
SELECT PRF_VALUE into x FROM csm_html5_clients_info
WHERE USER_NAME=p_user_name AND PRF_NAME='APP_REVISION';
DELETE FROM csm_html5_clients_info
WHERE USER_NAME=p_user_name AND PRF_NAME='APP_REVISION';
SELECT PRF_VALUE into x FROM csm_html5_clients_info
WHERE USER_NAME='APPLICATION' AND PRF_NAME='REVISION';
SELECT '1' INTO x FROM ASG_SYSTEM_DIRTY_QUEUE sdq WHERE CLIENT_ID=p_USER_NAME AND ROWNUM<2
AND EXISTS(SELECT 1 FROM ASG_PUB_ITEM pi WHERE pi.item_id=sdq.pub_item and nvl(html5_offline,'N')='Y');
DELETE FROM csm_html5_clients_info WHERE USER_NAME=p_USER_NAME AND PRF_NAME like 'REUSABLE%';
SELECT PRF_VALUE into x FROM csm_html5_clients_info
WHERE USER_NAME=p_USER_NAME AND PRF_NAME='USER_CREATION_DATA';
DELETE FROM csm_html5_clients_info WHERE USER_NAME=p_USER_NAME AND PRF_NAME='USER_CREATION_DATA';
SELECT PRF_VALUE into x FROM csm_html5_clients_info
WHERE USER_NAME=p_USER_NAME AND PRF_NAME='REUSABLE_'||p_QUERY_ID;
select '-2' into x from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_'||p_QUERY_ID;
select 1 into x from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_'||p_QUERY_ID;
delete from csm_html5_clients_info where user_name=p_user_name and prf_name='REUSE_AUTH_'||p_QUERY_ID;
CSM_QUERY_PKG.INSERT_INSTANCE(asg_base.get_user_id(p_user_name), 12, NULL, 'GENERATE_USER_DATA', l_id, l_ch, l_dt,NULL, instId, ret, m);
L_STMT := 'INSERT INTO '||P_TABLE_NAME||'(';
SELECT UPLOADED_PAYLOAD
FROM CSM_HTML5_UPLOAD_DATA
WHERE SESSION_ID = sync_id
AND STATUS<>'PARSED';
SELECT au.USER_NAME, USER_ID, RESPONSIBILITY_ID, APP_ID
FROM CSM_HTML5_SYNC_INFO si, ASG_USER au
WHERE SESSION_ID =SYNC_ID
AND au.USER_NAME =si.USER_NAME;
SELECT upper(VALUE)
FROM NLS_SESSION_PARAMETERS
WHERE PARAMETER='NLS_DATE_FORMAT';
l_first_lst := dbms_xslprocessor.selectNodes(dbms_xmldom.makeNode(L_XML_DOC),'/SYNC_DATA/PIV');
l_sec_lst := dbms_xslprocessor.selectNodes(dbms_xmldom.makeNode(L_XML_DOC),'/SYNC_DATA/PIV/DATA');
l_COL_NAME_IDX.DELETE;l_COL_CLOB_LIST.DELETE;
SELECT 1 INTO dummy FROM csm_html5_inq
WHERE USER_NAME=L_SYNC_USER_NAME AND pi_name=L_PIV_NAME AND SYNC_ID=p_SYNC_ID;
INSERT INTO csm_html5_inq (USER_NAME,PI_NAME,SYNC_ID) VALUES(L_SYNC_USER_NAME,L_PIV_NAME,p_SYNC_ID);
INSERT INTO CSM_HTML5_PARSED_DATA(SESSION_ID,SEQUENCE, PIV_NAME, PK_VALUE,
DML_TYPE, STATUS, CREATION_DATE, CREATED_BY, LAST_UPDATE_DATE, LAST_UPDATED_BY)
VALUES(P_SYNC_ID,l_seq,L_PIV_NAME,L_ACCESS_ID,L_DML_TYPE,'MOVED_TO_INQ',SYSDATE,L_USER_ID,SYSDATE,L_USER_ID);
INSERT INTO CSM_HTML5_PARSED_DATA(SESSION_ID,SEQUENCE, PIV_NAME, PK_VALUE,
DML_TYPE,PAYLOAD, STATUS,COMMENTS, CREATION_DATE, CREATED_BY, LAST_UPDATE_DATE, LAST_UPDATED_BY)
VALUES(P_SYNC_ID,l_seq,L_PIV_NAME,L_ACCESS_ID,L_DML_TYPE,PART_XML,'PARSE_ERROR',X_ERROR_MESSAGE,SYSDATE,L_USER_ID,SYSDATE,L_USER_ID);
UPDATE CSM_HTML5_UPLOAD_DATA
SET LAST_UPDATE_DATE = SYSDATE,
LAST_UPDATED_BY = 1,
STATUS = 'PARSED',
COMMENTS = 'Uploaded Data Parsed Successfully'
WHERE SESSION_ID = P_SYNC_ID;
UPDATE asg_user SET hwm_tranid = P_SYNC_ID WHERE user_name = L_SYNC_USER_NAME;
l_select_store_sqlstring VARCHAR2(512);
l_select_inqcnt_sqlstring VARCHAR2(512);
l_delete_inq_sqlstring VARCHAR2(512);
SELECT resource_id
FROM asg_user
WHERE user_name = p_user_name;
l_select_inqcnt_sqlstring :=
'SELECT count(*) FROM CSM_HTML5_INQ ci ' ||
'WHERE user_name = :1 AND ' ||
' sync_id = :2 AND ' ||
' pi_name in (select item_id from asg_pub_item) ' ||
'AND NOT EXISTS (SELECT 1 FROM asg_users_inqinfo ' ||
' WHERE device_user_name = ci.user_name AND TRANID =ci.sync_id) ' ;
EXECUTE IMMEDIATE l_select_inqcnt_sqlstring INTO l_inq_count USING p_user_name, p_tranid;
INSERT INTO asg_users_inqinfo (device_user_name,
resource_id,
tranid,
sync_date,
processed,
deferred,
archive,
last_update_date,
last_updated_by,
creation_date,
created_by)
VALUES (p_user_name,
l_resource_id,
p_tranid,
sysdate,
'N',
'N',
'Y',
SYSDATE,
1,
SYSDATE,
1);
l_select_store_sqlstring :=
'SELECT pi_name FROM CSM_HTML5_INQ ci '||
'WHERE user_name = :1 AND ' ||
' sync_id = :2 AND ' ||
' pi_name in (select item_id from asg_pub_item) '||
' AND NOT EXISTS (SELECT 1 FROM asg_users_inqarchive ' ||
' WHERE device_user_name = ci.user_name AND TRANID =ci.sync_id) '||
' ORDER BY pi_name';
DBMS_SQL.PARSE (l_cursor_id1, l_select_store_sqlstring, DBMS_SQL.v7);
INSERT INTO asg_users_inqarchive (device_user_name,
resource_id,
tranid,
sync_date,
processed,
deferred,
pub_items1,
pub_items2,
last_update_date,
last_updated_by,
creation_date,
created_by)
VALUES (p_user_name,
l_resource_id,
p_tranid,
sysdate,
'N',
'N',
l_pubitems_1,
l_pubitems_2,
SYSDATE,
1,
SYSDATE,
1);
SELECT resource_id
FROM asg_user
WHERE user_name = p_user_name;
select primary_key_column from asg_pub_item where item_id=b_pi and instr(primary_key_column,',')=0;
OPEN c_cur FOR 'SELECT DMLTYPE$$,SEQNO$$ ,to_char('||l_pk||') FROM '||inq_tbl_name||' a WHERE clid$$cs='''||p_user_name||''' and TRANID$$='||p_tranid
||'and not exists (SELECT 1 FROM asg_deferred_traninfo WHERE device_user_name = a.clid$$cs AND deferred_tran_id = a.tranid$$ and sequence=a.seqno$$ AND object_name ='''
||curr_pubitem||''')';
sql_string := 'INSERT INTO asg_deferred_traninfo ('||
'DEVICE_USER_NAME, ' ||
'RESOURCE_ID, ' ||
'DEFERRED_TRAN_ID, ' ||
'MOBILE_ERROR_ID, ' ||
'ERROR_DESCRIPTION, ' ||
'OBJECT_NAME, ' ||
'SEQUENCE, ' ||
'STATUS, ' ||
'SYNC_TIME, ' ||
'FAILURES, ' ||
'LAST_UPDATE_DATE, ' ||
'LAST_UPDATED_BY, ' ||
'CREATION_DATE, ' ||
'CREATED_BY) ' ||
'SELECT :1, :2, :3, NULL,''Row deferred because it was left unprocessed'', :4,seqno$$, 1,NULL,1,SYSDATE,1,SYSDATE,1 ' ||
' FROM '|| inq_tbl_name ||
' b WHERE b.clid$$cs = :5 AND ' ||
' tranid$$ = :6 AND ' ||
' b.seqno$$ not in (SELECT sequence ' ||
'FROM asg_deferred_traninfo ' ||
'WHERE device_user_name = :7 AND ' ||
' deferred_tran_id = :8 '||
' AND object_name = :9)';
DELETE FROM CSM_HTML5_INQ WHERE USER_NAME=p_user_name AND SYNC_ID=p_tranid AND PI_NAME=curr_pubitem;
UPDATE asg_users_inqinfo
SET deferred = 'Y', processed = 'I',
last_update_date = SYSDATE, last_updated_by = 1
WHERE device_user_name = p_user_name AND
tranid = p_tranid;
CURSOR l_c IS SELECT PI_NAME FROM CSM_HTML5_INQ WHERE USER_NAME=p_user_name AND SYNC_ID=p_tranid;
UPDATE asg_users_inqinfo
SET processed = 'Y', last_update_date=SYSDATE, last_updated_by=1
WHERE device_user_name = p_user_name AND
tranid = p_tranid AND
tranid not IN
(SELECT distinct deferred_tran_id
FROM asg_deferred_traninfo
WHERE device_user_name = p_user_name AND
deferred_tran_id = p_tranid);
SELECT tranid FROM asg_users_inqinfo
WHERE device_user_name = p_user_name AND
tranid <= p_max_tranid;
DELETE FROM CSM_HTML5_PARSED_DATA a
WHERE A.SESSION_ID=curr_tranid
AND a.status='MOVED_TO_INQ'
AND NOT EXISTS (SELECT 1 FROM asg_deferred_traninfo b
WHERE a.session_id=b.DEFERRED_TRAN_ID
AND a.sequence=b.sequence); --reject record requires the data if deferred
DELETE FROM CSM_HTML5_UPLOAD_DATA b
WHERE SESSION_ID <= g_current_tranid
AND NOT EXISTS(SELECT 1 FROM CSM_HTML5_PARSED_DATA a WHERE a.SESSION_ID=b.SESSION_ID);
SELECT tranid, processed, deferred, archive
FROM asg_users_inqinfo
WHERE device_user_name = p_user_name;
UPDATE asg_users_inqarchive
SET processed = 'Y', deferred = curr_tran_deferred,
last_update_date = SYSDATE, last_updated_by = 1
WHERE device_user_name = p_user_name AND
tranid = curr_tranid;
DELETE FROM asg_users_inqinfo
WHERE device_user_name = p_user_name AND processed = 'Y';
SELECT min(tranid) tran_id
FROM asg_users_inqinfo a
WHERE a.device_user_name = p_user_name AND
a.deferred='N'
AND a.tranid <=
(SELECT nvl(hwm_tranid,1000000000000)
FROM asg_user
WHERE user_name=a.device_user_name);
SELECT min(tranid) tran_id
FROM asg_users_inqinfo a
WHERE tranid > p_tranid
AND a.device_user_name = p_user_name AND a.deferred='N'
AND a.tranid <= (SELECT nvl(hwm_tranid,1000000000000)
FROM asg_user WHERE user_name=a.device_user_name);
SELECT au.user_id,pr.responsibility_id, pr.app_id
INTO l_userid,l_respid,l_appid
FROM asg_user_pub_resps pr ,asg_user au
WHERE pr.user_name = upper(p_user_name)
AND au.user_name=pr.user_name
AND pr.pub_name = upper('SERVICEP') AND ROWNUM=1;
SELECT PI_NAME
FROM CSM_HTML5_INQ a,ASG_PUB_ITEM b
WHERE a.PI_NAME=b.ITEM_ID
AND a.user_name=p_user_name
AND a.SYNC_ID=p_tranid
ORDER BY nvl(b.table_weight,0);
FOR REC IN (SELECT object_name
FROM asg_deferred_traninfo a,asg_pub_item b
WHERE device_user_name = p_user_name
AND deferred_tran_id = p_tranid
AND b.item_id=a.object_name
AND NOT EXISTS(SELECT 1 FROM CSM_HTML5_INQ
WHERE PI_NAME= object_name
AND USER_NAME=device_user_name
AND SYNC_ID=deferred_tran_id)
ORDER BY nvl(b.table_weight,0))
LOOP
l_n:=l_n+1;
SELECT count(*) count
FROM asg_deferred_traninfo
WHERE device_user_name = p_user_name AND
deferred_tran_id = p_tranid AND
status <> 0;
SELECT au.user_id,pr.responsibility_id, pr.app_id
INTO l_user_id,l_resp_id,l_app_id
FROM asg_user_pub_resps pr ,asg_user au
WHERE pr.user_name = upper(p_user_name)
AND au.user_name=pr.user_name
AND pr.pub_name = upper('SERVICEP') AND ROWNUM=1;
UPDATE asg_users_inqinfo
SET deferred = 'S'
WHERE device_user_name = p_user_name AND
tranid = p_tranid;
FOR rec IN (select a.session_id,c.user_name from csm_html5_upload_data a,asg_user b, csm_html5_sync_info c
where a.status<>'PARSED' and a.session_id=c.session_id
and nvl(fnd_profile.value_specific('ASG_SYNCHRONOUS_UPLOAD',b.user_id,b.responsibility_id,b.app_id),'N')='N'
and b.user_name=c.user_name and b.multi_platform='Y' and b.enabled='Y' ORDER BY c.USER_NAME,a.SESSION_ID ASC)
LOOP
IF(l_uname IS NULL OR l_uname<>rec.USER_NAME) THEN
CSM_HTML5_PKG.HTML5_PARSE_XML(rec.SESSION_ID,RETCODE,errbuf);
UPDATE CSM_HTML5_UPLOAD_DATA
SET LAST_UPDATE_DATE = SYSDATE,
LAST_UPDATED_BY = 1,
STATUS = 'PARSE_ERROR',
COMMENTS = errbuf
WHERE SESSION_ID = rec.SESSION_ID;
FOR rec IN (SELECT DISTINCT USER_NAME FROM CSM_HTML5_INQ)
LOOP
CSM_HTML5_PKG.process_upload(rec.USER_NAME);
DELETE FROM csm_html5_clients_info WHERE PRF_NAME='FORCE_LOCAL_LOGIN' AND USER_NAME=p_user_name;
SELECT PRF_VALUE INTO l_local
FROM CSM_HTML5_CLIENTS_INFO
WHERE USER_NAME=p_user_name
AND PRF_NAME='FORCE_LOCAL_LOGIN'
AND PRF_VALUE='Y';
SELECT user_id,responsibility_id, app_id
INTO l_user_id,l_resp_id,l_app_id
FROM asg_user WHERE user_name=p_user_name;
procedure delete_user_vault(p_user_id IN NUMBER)
is
begin
set_context('CSM5_VAULT_NS', 'VAULT', 'Y');
CSM_UTIL_PKG.LOG('Exception:'||' for user_id:'||p_user_id||' with msg:'||substr(sqlerrm,1,2000), 'CSM_HTML5_PKG.delete_user_vault', FND_LOG.LEVEL_PROCEDURE);
end delete_user_vault;
DELETE FROM csm_html5_clients_info WHERE USER_NAME=(SELECT USER_NAME
FROM ASG_USER WHERE USER_ID=p_user_id) AND PRF_NAME NOT IN ('REVISION','FORCE_UPDATE'); --if any user has name as APPLICATION
DELETE FROM CSM_HTML5_CACHE WHERE USER_NAME=(SELECT USER_NAME
FROM ASG_USER WHERE USER_ID=p_user_id);
CSM_HTML5_PKG.DELETE_USER_VAULT(p_user_id);
SELECT 1 INTO l_t
FROM asg_purge_sdq
WHERE user_name = p_user_name
AND pub_name = 'SERVICEP'
AND TRANSACTION_ID IS NULL;
SELECT (SELECT NVL(MAX(PRF_VALUE),'N') FROM CSM_HTML5_CLIENTS_INFO WHERE USER_NAME='APPLICATION' AND PRF_NAME='FORCE_UPDATE')
||';'|| fnd_profile.value_specific('CSM_MULTI_APP_STORE_URL',USER_ID,RESPONSIBILITY_ID)