The following lines contain the word 'select', 'insert', 'update' or 'delete':
l_last_update_dates DateTab;
l_prev_last_update_date DATE;
l_last_update_date DATE;
l_update_count NUMBER;
SELECT log_id, lead_line_id, last_update_date
FROM as_lead_lines_log
WHERE lead_id = p_lead_id
ORDER BY lead_line_id ASC, last_update_date DESC, log_id DESC;
SELECT log_id, sales_credit_id, last_update_date
FROM as_sales_credits_log
WHERE lead_id = p_lead_id
ORDER BY sales_credit_id ASC, last_update_date DESC, log_id DESC;
INTO l_log_ids, l_lead_line_ids, l_last_update_dates;
l_update_count := 0;
l_prev_last_update_date := l_future_date;
l_last_update_date := trunc(l_last_update_dates(i));
IF l_prev_last_update_date = l_last_update_date THEN
l_endday_log_flag := 'N';
l_prev_last_update_date := l_last_update_date;
UPDATE as_lead_lines_log -- @@
SET endday_log_flag = l_endday_log_flags(i)
WHERE log_id = l_log_ids(i) AND endday_log_flag IS NULL;
l_update_count := SQL%ROWCOUNT;
'Num Lead Line Logs Updated=' || l_update_count);
INTO l_log_ids, l_sales_credit_ids, l_last_update_dates;
l_update_count := 0;
l_prev_last_update_date := l_future_date;
l_last_update_date := trunc(l_last_update_dates(i));
IF l_prev_last_update_date = l_last_update_date THEN
l_endday_log_flag := 'N';
l_prev_last_update_date := l_last_update_date;
UPDATE as_sales_credits_log -- @@
SET endday_log_flag = l_endday_log_flags(i)
WHERE log_id = l_log_ids(i) AND endday_log_flag IS NULL;
l_update_count := SQL%ROWCOUNT;
' Num Sales Credits Updated=' || l_update_count);
SELECT lead_id, customer_id
FROM as_leads_all
WHERE lead_id BETWEEN p_start_id AND p_end_id; */
SELECT DISTINCT lead_id
FROM AS_ACCESSES_ALL_OPP_TEMP
WHERE lead_id BETWEEN p_start_id AND p_end_id;
SELECT max(decode(SALESFORCE_ROLE_CODE, NULL, 'N', 'Y') || ACCESS_ID) code_access_id,
salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id,
max(nvl(FREEZE_FLAG, 'N')) freeze_flag,
max(nvl(TEAM_LEADER_FLAG, 'N')) team_leader_flag,
max(nvl(OWNER_FLAG, 'N')) owner_flag,
max(nvl(CONTRIBUTOR_FLAG, 'N')) contributor_flag
FROM AS_ACCESSES_ALL
WHERE lead_id = p_lead_id
GROUP BY salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id
HAVING count(access_id) > 1; */
SELECT lead_id,max(code_access_id) code_access_id,
salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id,
max(FREEZE_FLAG) freeze_flag,
max(TEAM_LEADER_FLAG) team_leader_flag,
max(OWNER_FLAG) owner_flag,
max(CONTRIBUTOR_FLAG) contributor_flag
FROM AS_ACCESSES_ALL_OPP_TEMP -- AS_ACCESSES_ALL
WHERE lead_id = p_lead_id
GROUP BY lead_id,salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id;
CURSOR c1 IS SELECT as_leads_s.nextval FROM dual;
UPDATE AS_ACCESSES_ALL_ALL -- @@
SET DELETE_FLAG = 'Y',
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATE_LOGIN = FND_GLOBAL.conc_login_id
WHERE lead_id = l_lead_id AND -- @@
salesforce_id = uniq_steam_rec.salesforce_id AND
nvl(sales_group_id, -37) = nvl(uniq_steam_rec.sales_group_id, -37) AND
nvl(partner_customer_id, -37) = nvl(uniq_steam_rec.partner_customer_id, -37) AND
nvl(partner_cont_party_id, -37) = nvl(uniq_steam_rec.partner_cont_party_id, -37) AND
access_id <> l_access_id AND
delete_flag IS NULL;
UPDATE AS_ACCESSES_ALL -- @@
SET FREEZE_FLAG = uniq_steam_rec.freeze_flag,
TEAM_LEADER_FLAG = uniq_steam_rec.team_leader_flag,
OWNER_FLAG = uniq_steam_rec.owner_flag,
CONTRIBUTOR_FLAG = uniq_steam_rec.contributor_flag,
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATE_LOGIN = FND_GLOBAL.conc_login_id
WHERE access_id = l_access_id;
l_updated_flag BOOLEAN;
SELECT DISTINCT sales_lead_id
FROM AS_ACCESSES_ALL_LEAD_TEMP
WHERE sales_lead_id BETWEEN p_start_id AND p_end_id;
SELECT max(decode(SALESFORCE_ROLE_CODE, NULL, 'N', 'Y') || ACCESS_ID) code_access_id,
salesforce_id, sales_group_id,
max(nvl(FREEZE_FLAG, 'N')) freeze_flag,
max(nvl(TEAM_LEADER_FLAG, 'N')) team_leader_flag,
max(nvl(OWNER_FLAG, 'N')) owner_flag,
max(nvl(CONTRIBUTOR_FLAG, 'N')) contributor_flag
FROM AS_ACCESSES_ALL
WHERE sales_lead_id = p_sales_lead_id
GROUP BY salesforce_id, sales_group_id
HAVING count(access_id) > 1; */ -- @@
SELECT sales_lead_id,max(code_access_id) code_access_id,
salesforce_id, sales_group_id,
max(FREEZE_FLAG) freeze_flag,
max(TEAM_LEADER_FLAG) team_leader_flag,
max(OWNER_FLAG) owner_flag,
max(CONTRIBUTOR_FLAG) contributor_flag
FROM AS_ACCESSES_ALL_LEAD_TEMP -- AS_ACCESSES_ALL
WHERE sales_lead_id = p_sales_lead_id
GROUP BY salesforce_id, sales_group_id;
l_updated_flag := false;
l_updated_flag := true;
UPDATE AS_ACCESSES_ALL_ALL -- @@
SET DELETE_FLAG = 'Y',
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATE_LOGIN = FND_GLOBAL.conc_login_id
WHERE sales_lead_id = l_sales_lead_id AND -- @@
salesforce_id = uniq_steam_rec.salesforce_id AND
nvl(sales_group_id, -37) = nvl(uniq_steam_rec.sales_group_id, -37) AND
access_id <> l_access_id AND
delete_flag IS NULL;
UPDATE AS_ACCESSES_ALL -- @@
SET FREEZE_FLAG = uniq_steam_rec.freeze_flag,
TEAM_LEADER_FLAG = uniq_steam_rec.team_leader_flag,
OWNER_FLAG = uniq_steam_rec.owner_flag,
CONTRIBUTOR_FLAG = uniq_steam_rec.contributor_flag,
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATE_LOGIN = FND_GLOBAL.conc_login_id
WHERE access_id = l_access_id;
IF l_updated_flag THEN
l_uncommitted_leads := l_uncommitted_leads + 1;
CURSOR c1 IS SELECT hz_parties_s.nextval FROM dual;
SELECT lead_id, customer_id
FROM as_leads_all
WHERE lead_id BETWEEN p_start_id AND p_end_id;
CURSOR c2 IS SELECT as_leads_s.nextval FROM dual;
on as_accesses to insert into 3 tables the few thousand dups of each type
(cust, leads, opps) ..parallel full scans even of the
large as_accesses_all table should just take a few minutes.
- then proceed to launch the worker programs to query up thier respective dup
set from the above tables, and do the corresponding updates. */
BEGIN
IF (fnd_conc_global.request_data IS NULL) THEN
--Create temp table for customer -- @@
INSERT /*+ APPEND PARALLEL(CUST) */
into AS_ACCESSES_ALL_CUST_TEMP CUST
(customer_id,
code_access_id,
salesforce_id,
sales_group_id,
partner_customer_id,
partner_cont_party_id,
freeze_flag,
team_leader_flag,
owner_flag,
contributor_flag)
Select /*+ PARALLEL(A)*/
customer_id,max(decode(SALESFORCE_ROLE_CODE, NULL, 'N', 'Y') || ACCESS_ID) code_access_id,
salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id,
max(nvl(FREEZE_FLAG, 'N')) freeze_flag,
max(nvl(TEAM_LEADER_FLAG, 'N')) team_leader_flag,
max(nvl(OWNER_FLAG, 'N')) owner_flag,
max(nvl(CONTRIBUTOR_FLAG, 'N')) contributor_flag
FROM AS_ACCESSES_ALL A ---- @@
WHERE lead_id IS NULL AND sales_lead_id IS NULL
GROUP BY customer_id,salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id
HAVING count(access_id) > 1;
INSERT /*+ APPEND PARALLEL(CUST) */ into AS_ACCESSES_ALL_LEAD_TEMP CUST
(sales_lead_id,
code_access_id,
salesforce_id,
sales_group_id,
freeze_flag,
team_leader_flag,
owner_flag,
contributor_flag)
Select /*+ PARALLEL(A)*/
sales_lead_id,max(decode(SALESFORCE_ROLE_CODE, NULL, 'N', 'Y') || ACCESS_ID),
salesforce_id, sales_group_id,
max(nvl(FREEZE_FLAG, 'N')) freeze_flag,
max(nvl(TEAM_LEADER_FLAG, 'N')) team_leader_flag,
max(nvl(OWNER_FLAG, 'N')) owner_flag,
max(nvl(CONTRIBUTOR_FLAG, 'N')) contributor_flag
FROM AS_ACCESSES_ALL A ---- @@
WHERE sales_lead_id IS NOT NULL
GROUP BY sales_lead_id,salesforce_id, sales_group_id
HAVING count(access_id) > 1;
INSERT /*+ APPEND PARALLEL(CUST) */ into AS_ACCESSES_ALL_OPP_TEMP CUST
(lead_id,
code_access_id,
salesforce_id,
sales_group_id,
partner_customer_id,
partner_cont_party_id,
freeze_flag,
team_leader_flag,
owner_flag,
contributor_flag)
Select /*+ PARALLEL(A)*/
Lead_id,max(decode(SALESFORCE_ROLE_CODE, NULL, 'N', 'Y') || ACCESS_ID) ,
salesforce_id, sales_group_id, partner_customer_id,partner_cont_party_id,
max(nvl(FREEZE_FLAG, 'N')) freeze_flag,
max(nvl(TEAM_LEADER_FLAG, 'N')) team_leader_flag,
max(nvl(OWNER_FLAG, 'N')) owner_flag,
max(nvl(CONTRIBUTOR_FLAG, 'N')) contributor_flag
FROM AS_ACCESSES_ALL A ---- @@
WHERE Lead_id IS NOT NULL
GROUP BY lead_id,salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id
HAVING count(access_id) > 1;
l_id_list.delete;
Select count(DISTINCT lead_id),min(lead_id),max(lead_id)
into l_dup_count_opp,l_dup_min_opp,l_max_id
From AS_ACCESSES_ALL_OPP_TEMP;
Select distinct lead_id
BULK COLLECT INTO
l_id_list
FROM AS_ACCESSES_ALL_OPP_TEMP
ORDER BY lead_id;
Select count(DISTINCT customer_id),min(customer_id),max(customer_id)
into l_dup_count_cust,l_dup_min_cust,l_max_id
From AS_ACCESSES_ALL_CUST_TEMP;
Select distinct customer_id
BULK COLLECT INTO
l_id_list
FROM AS_ACCESSES_ALL_CUST_TEMP
ORDER BY customer_id;
Select count(DISTINCT sales_lead_id),min(sales_lead_id),max(sales_lead_id)
into l_dup_count_lead,l_dup_min_lead,l_max_id
From AS_ACCESSES_ALL_LEAD_TEMP;
Select distinct sales_lead_id
BULK COLLECT INTO
l_id_list
FROM AS_ACCESSES_ALL_LEAD_TEMP
ORDER BY sales_lead_id;
l_updated_flag BOOLEAN;
SELECT party_id
FROM hz_parties
WHERE party_id BETWEEN p_start_id AND p_end_id
AND party_type IN ('ORGANIZATION', 'PERSON');*/
SELECT distinct temp.customer_id
FROM AS_ACCESSES_ALL_cust_TEMP temp ,hz_parties hz
WHERE temp.customer_id BETWEEN p_start_id AND p_end_id
AND hz.party_type IN ('ORGANIZATION', 'PERSON')
AND temp.customer_id=hz.party_id ;
SELECT max(decode(SALESFORCE_ROLE_CODE, NULL, 'N', 'Y') || ACCESS_ID) code_access_id,
salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id,
max(nvl(FREEZE_FLAG, 'N')) freeze_flag,
max(nvl(TEAM_LEADER_FLAG, 'N')) team_leader_flag,
max(nvl(OWNER_FLAG, 'N')) owner_flag,
max(nvl(CONTRIBUTOR_FLAG, 'N')) contributor_flag
FROM AS_ACCESSES_ALL
WHERE customer_id = p_party_id AND lead_id IS NULL AND sales_lead_id IS NULL
GROUP BY salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id
HAVING count(access_id) > 1; */ -- @@
SELECT customer_id,max(code_access_id) code_access_id,
salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id,
max(FREEZE_FLAG) freeze_flag,
max(TEAM_LEADER_FLAG) team_leader_flag,
max(OWNER_FLAG) owner_flag,
max(CONTRIBUTOR_FLAG) contributor_flag
FROM AS_ACCESSES_ALL_CUST_TEMP -- AS_ACCESSES_ALL
WHERE customer_id = p_party_id
GROUP BY customer_id,salesforce_id, sales_group_id, partner_customer_id,
partner_cont_party_id;
l_updated_flag := false;
l_updated_flag := true;
UPDATE AS_ACCESSES_ALL_ALL -- @@
SET DELETE_FLAG = 'Y',
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATE_LOGIN = FND_GLOBAL.conc_login_id
WHERE customer_id = l_party_id AND -- @@
lead_id IS NULL AND
sales_lead_id IS NULL AND
salesforce_id = uniq_steam_rec.salesforce_id AND
nvl(sales_group_id, -37) = nvl(uniq_steam_rec.sales_group_id, -37) AND
nvl(partner_customer_id, -37) = nvl(uniq_steam_rec.partner_customer_id, -37) AND
nvl(partner_cont_party_id, -37) = nvl(uniq_steam_rec.partner_cont_party_id, -37) AND
access_id <> l_access_id AND
delete_flag IS NULL;
UPDATE AS_ACCESSES_ALL -- @@
SET FREEZE_FLAG = uniq_steam_rec.freeze_flag,
TEAM_LEADER_FLAG = uniq_steam_rec.team_leader_flag,
OWNER_FLAG = uniq_steam_rec.owner_flag,
CONTRIBUTOR_FLAG = uniq_steam_rec.contributor_flag,
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATE_LOGIN = FND_GLOBAL.conc_login_id
WHERE access_id = l_access_id;
IF l_updated_flag THEN
l_uncommitted_parties := l_uncommitted_parties + 1;
CURSOR c1 IS SELECT count(lead_id) FROM as_leads_all;
l_last_update_dates DateTab;
l_prev_last_update_date DATE;
l_last_update_date DATE;
l_update_count NUMBER;
SELECT lead_id, customer_id
FROM as_leads_all;
SELECT log_id, lead_line_id, last_update_date
FROM as_lead_lines_log
WHERE lead_id = p_lead_id
ORDER BY lead_line_id ASC, last_update_date DESC, log_id DESC;
SELECT log_id, sales_credit_id, last_update_date
FROM as_sales_credits_log
WHERE lead_id = p_lead_id
ORDER BY sales_credit_id ASC, last_update_date DESC, log_id DESC;
INTO l_log_ids, l_lead_line_ids, l_last_update_dates;
l_update_count := 0;
l_prev_last_update_date := l_future_date;
l_last_update_date := trunc(l_last_update_dates(i));
IF l_prev_last_update_date = l_last_update_date THEN
l_endday_log_flag := 'N';
l_prev_last_update_date := l_last_update_date;
UPDATE as_lead_lines_log -- @@
SET endday_log_flag = l_endday_log_flags(i)
WHERE log_id = l_log_ids(i) AND endday_log_flag IS NULL;
l_update_count := SQL%ROWCOUNT;
'Num Lead Line Logs Updated=' || l_update_count);
INTO l_log_ids, l_sales_credit_ids, l_last_update_dates;
l_update_count := 0;
l_prev_last_update_date := l_future_date;
l_last_update_date := trunc(l_last_update_dates(i));
IF l_prev_last_update_date = l_last_update_date THEN
l_endday_log_flag := 'N';
l_prev_last_update_date := l_last_update_date;
UPDATE as_sales_credits_log -- @@
SET endday_log_flag = l_endday_log_flags(i)
WHERE log_id = l_log_ids(i) AND endday_log_flag IS NULL;
l_update_count := SQL%ROWCOUNT;
' Num Sales Credits Updated=' || l_update_count);
UPDATE AS_ACCESSES_ALL
SET CUSTOMER_ID = l_customer_id(i),
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATE_LOGIN = FND_GLOBAL.conc_login_id
WHERE LEAD_ID = l_lead_id(i) AND
nvl(CUSTOMER_ID, -37) <> l_customer_id(i);