You are on page 1of 9

DROP VIEW APPS.

XXNS_ADP_COMMISSION_PAYROLL_V;

/* Formatted on 10/15/2016 1:38:53 AM (QP5 v5.185.11230.41888) */


CREATE OR REPLACE FORCE VIEW APPS.XXNS_ADP_COMMISSION_PAYROLL_V
(
COMPANY_CODE,
BATCH_ID,
FILE#,
EMPLOYEE_NUM,
"Earnings_3_code",
"Earnings 3 amount",
"pay#",
"tax_frequencey",
"Special_Action",
PRODUCT_FAMILY,
RESOURCE_NAME,
COMPENSATION_CURRENCY_CODE,
PERIOD_NAME,
PERIOD_YEAR,
PAY_GROUP
)
AS
SELECT Company_code Company_code,
'COMM' batch_id,
FILE#,
Employee_num,
NVL (Earnings_3_Amount, 'C') "Earnings_3_code",
SUM (payment_amount) "Earnings 3 amount",
'7' "pay#",
'B' "tax_frequencey",
'W' "Special_Action",
product_family,
resource_name,
compensation_currency_code,
period_name,
period_year,
(SELECT pg.name paygroup
FROM CN_SRP_PAY_GROUPS_ALL spg,
cn_pay_groups_all pg,
jtf_rs_salesreps jtf
WHERE spg.pay_group_id = pg.pay_group_id
AND jtf.salesrep_id = SPG.SALESREP_ID
AND jtf.name = main_query.resource_name
-- AND TRUNC (spg.start_date) >= '01-APR-2016'
---- AND TRUNC (spg.END_DATE) <= '31-MAR-2017'
AND TRUNC (spg.start_date) >=
(SELECT MIN (cps.start_date)
FROM cn_period_statuses_all cps
WHERE period_year = main_query.period_year)
AND NVL (TRUNC (spg.END_DATE),
TO_DATE ('31-MAR-2013', 'DD-MON-YYYY')) <=
(SELECT MAX (cps.end_date)
FROM cn_period_statuses_all cps
WHERE period_year = main_query.period_year))
pay_group
FROM ( SELECT FILE#,
employee_num,
SUM (commission_amount) payment_amount,
product_family,
resource_name,
Earnings_3_Amount,
Company_code,
compensation_currency_code,
period_name,
period_year
FROM ( SELECT DECODE (
SUBSTR (cqa.name, 4),
'Renewal Reps Calculation', 'Renewals Rep Plan',
SUBSTR (cqa.name, 4))
quota_name,
jg.group_name,
ch.attribute1 cust_po_number,
ROUND (TO_NUMBER (NVL (ch.attribute11, '0')), 2)
product_total,
ROUND (TO_NUMBER (ch.attribute12), 2)
service_total,
ch.attribute14 adjustments,
NVL (ch.split_pct, 0) split_pct,
ROUND (TO_NUMBER (ch.attribute15), 2)
adjusted_comm_amt,
ROUND (cl.commission_amount, 3) commission_amount,
ROUND (NVL (cl.commission_rate, 0), 4) * 100
commission_rate,
DECODE (
ch.attribute14,
'Y', 0,
(cl.commission_amount / cl.perf_achieved) * 100)
commission_rate,
NVL (ch.attribute3, 'X-NONE') customer,
ch.attribute8 reseller,
ch.order_number --,ch.attribute7
,
ROUND (
TO_NUMBER (NVL (ch.attribute7, '0'),
'999999999.99999999'),
2)
logged_for_comm,
DECODE (
ch.attribute6,
'Y', 'MDF ' || ch.comments || ' ' ||
cl.comments,
DECODE (
ch.attribute14,
'Y', 'Adjustment ' || ch.adjust_comments,
DECODE (
ch.attribute16,
'Y', 'Non-Quota ' || ch.adjust_comments,
ch.adjust_comments
|| ' '
|| ch.comments
|| ' '
|| cl.comments)))
comments,
ch.PROCESSED_DATE order_date,
cl.credited_salesrep_id,
ROUND (
(DECODE (ch.attribute14,
'Y', NVL (cl.commission_amount, 0),
NVL (cl.perf_achieved, 0))),
2)
perf_achived,
compensation_currency_code
compensation_currency_code,
ch.attribute6 mdf_flag,
cl.perf_achieved perf_achieved1,
ch.quantity quantity,
ch.attribute20 product_type,
ch.attribute21 item_number,
ch.attribute22 item_desc,
ch.attribute30 product_family,
ADP_FILE_NUM FILE#,
employee_num,
re.resource_name,
(SELECT NVL (meaning, 'C')
FROM fnd_lookup_values
WHERE lookup_type = 'XXNS_ICOMP_PROD_FAMILY'
AND lookup_code = ch.attribute30)
Earnings_3_Amount,
Company_code,
TO_CHAR (
NVL (ch.processed_date, SYSDATE + 1000000000),
'MON-YY')
period_name,
(SELECT DISTINCT TO_CHAR (period_year)
FROM xxns.XXNS_CNDBI_PERIOD_STATUSES
WHERE period_id = ch.PROCESSED_PERIOD_ID)
period_year
/*(select to_char(PERIOD_YEAR) from CN_PAY_PERIODS_V
where period_name=TO_CHAR (
NVL (ch.processed_date, SYSDATE
+ 1000000000),
'MON-YY')
AND PERIOD_SET_NAME ='NS GL
CALENDAR')
period_year*/
FROM cn_commission_headers_all ch,
cn_commission_lines_all cl,
JTF_RS_DEFRESGROUPS_VL jg,
jtf_rs_salesreps rep,
cn_quotas_all cqa,
(SELECT re.catg_meaning,
re.resource_id,
re.resource_number,
re.resource_name,
emp.first_name source_first_name,
emp.last_name source_last_name,
ROUND (re.attribute3, 2) fica,
ROUND (re.attribute2, 5) local_conv_rate,
ROUND (re.attribute4, 5)
ret_401k_deduction,
re.compensation_currency_code,
re.commissionable_flag,
rep.salesrep_id,
rep.status REP_STATUS,
EMP.ATTRIBUTE1 ADP_FILE_NUM,
EMP.EMPLOYEE_NUM,
DECODE (XHA.DEFAULT_EXPENSE_GL_CCID,
NULL, NULL,
glcc.concatenated_segments)
glcode,
(SELECT attribute12
FROM per_people_f p
WHERE p.employee_number =
emp.employee_num
AND TRUNC (SYSDATE) BETWEEN
P.EFFECTIVE_START_DATE
AND
P.EFFECTIVE_END_DATE)
Company_code
FROM jtf_rs_defresources_vl re --,(select
resource_id from jtf_rs_resources_vl where resource_type = 'RS_EMPLOYEE') rv
,
jtf_rs_salesreps rep,
HR_EMPLOYEES EMP,
XXNS_HR_EMPLOYEE_ASSIGNMENTS_V XHA,
GL_CODE_COMBINATIONS_KFV GLCC
WHERE re.resource_id = rep.resource_id
---AND RE.SOURCE_NUMBER =
EMP.EMPLOYEE_NUM(+)
AND XHA.PERSON_ID(+) = rep.person_id
AND XHA.DEFAULT_EXPENSE_GL_CCID =
glcc.code_combination_id(+)
AND EMP.EMPLOYEE_ID(+) = rep.person_id) re
-- ,ra_customers rc
WHERE comp_group_id = jg.GROUP_ID
AND jg.RESOURCE_ID = rep.resource_id
AND rep.salesrep_id =
NVL (ch.direct_salesrep_id, -1)
AND cl.commission_header_id =
ch.commission_header_id
-- AND NVL (cl.credited_salesrep_id, -1) =
---- NVL (:p_salesrep_id, cl.credited_salesrep_id)
--AND TO_CHAR (
--NVL (ch.processed_date, SYSDATE + 1000000000),
-- 'MON-YY') = :p_period
AND cl.status = 'CALC'
AND NVL (cqa.QUOTA_id, -1) = NVL (cl.quota_id, -1)
--AND cqa.QUOTA_GROUP_CODE IS NOT NULL
AND cl.org_id = ch.org_id
--- and CH.adjust_status NOT IN ('FROZEN','OTHER')
AND jg.delete_flag = 'N'
AND cl.commission_amount <> 0
AND re.salesrep_id =
NVL (cl.credited_salesrep_id, -1)
--nd ch.order_number='9000053'
--AND rc.customer_id(+) = nvl(ch.customer_id,-1)
--- and
re.compensation_currency_code=:compensation_currency_code
ORDER BY cqa.QUOTA_GROUP_CODE,
cqa.name,
jg.group_name,
Company_code,
customer,
FILE#,
employee_num,
cust_po_number,
ch.order_number,
product_family,
item_number,
re.compensation_currency_code,
period_name) --period_year
GROUP BY FILE#,
employee_num,
product_family,
resource_name,
Company_code,
Earnings_3_Amount,
compensation_currency_code,
period_name,
period_year
UNION ALL
SELECT ADP_FILE_NUM FILE#,
employee_num,
SUM (ROUND (PT.PAYMENT_AMOUNT, 2)) payment_amount,
re.attribute9 product_family,
resource_name,
(SELECT NVL (meaning, 'C')
FROM fnd_lookup_values
WHERE lookup_type = 'XXNS_ICOMP_PROD_FAMILY'
AND lookup_code = re.Attribute9)
Earnings_3_Amount,
Company_code,
compensation_currency_code,
period_name,
TO_CHAR (period_year) period_year
FROM CN_PAYMENT_TRANSACTIONS_ALL pt,
CN_PERIOD_STATUSES_ALL PS,
cn_payruns_all pr,
CN_QUOTAS_ALL QO,
(SELECT re.catg_meaning,
re.resource_id,
re.resource_number,
re.resource_name,
emp.first_name source_first_name,
emp.last_name source_last_name,
ROUND (re.attribute3, 2) fica,
ROUND (re.attribute2, 5) local_conv_rate,
ROUND (re.attribute4, 5) ret_401k_deduction,
re.compensation_currency_code,
re.commissionable_flag,
rep.salesrep_id,
rep.status REP_STATUS,
EMP.ATTRIBUTE1 ADP_FILE_NUM,
EMP.EMPLOYEE_NUM,
DECODE (XHA.DEFAULT_EXPENSE_GL_CCID,
NULL, NULL,
glcc.concatenated_segments)
glcode,
rep.name,
NULL Earnings_3_Amount,
(SELECT attribute12
FROM per_people_f p
WHERE p.employee_number = emp.employee_num
AND TRUNC (SYSDATE) BETWEEN
P.EFFECTIVE_START_DATE
AND
P.EFFECTIVE_END_DATE)
Company_code,
re.attribute9
FROM jtf_rs_defresources_vl re --,(select resource_id from
jtf_rs_resources_vl where resource_type = 'RS_EMPLOYEE') rv
,
jtf_rs_salesreps rep,
HR_EMPLOYEES EMP,
XXNS_HR_EMPLOYEE_ASSIGNMENTS_V XHA,
GL_CODE_COMBINATIONS_KFV GLCC
WHERE re.resource_id = rep.resource_id
---AND RE.SOURCE_NUMBER = EMP.EMPLOYEE_NUM(+)
AND XHA.PERSON_ID(+) = rep.person_id
AND XHA.DEFAULT_EXPENSE_GL_CCID =
glcc.code_combination_id(+)
AND EMP.EMPLOYEE_ID(+) = rep.person_id) re
WHERE PT.PAY_PERIOD_ID = PS.PERIOD_ID
AND pt.payrun_id = pr.payrun_id
AND PT.QUOTA_ID = QO.QUOTA_ID
AND pt.incentive_type_code = 'MANUAL_PAY_ADJ'
-- AND PAYEE_SALESREP_ID =
-- NVL (:p_salesrep_id, PAYEE_SALESREP_ID)
AND PAYEE_SALESREP_ID = re.salesrep_id
--- and re.compensation_currency_code=:compensation_currency_code
-- AND period_name = :p_period
GROUP BY ADP_FILE_NUM,
employee_num,
resource_name,
Company_code,
compensation_currency_code,
period_name,
re.attribute9,
period_year
UNION ALL
SELECT ADP_FILE_NUM FILE#,
employee_num,
SUM (ROUND (PT.PAYMENT_AMOUNT, 2)) payment_amount,
re.Attribute9 product_family,
resource_name,
(SELECT NVL (meaning, 'C')
FROM fnd_lookup_values
WHERE lookup_type = 'XXNS_ICOMP_PROD_FAMILY'
AND lookup_code = re.Attribute9)
Earnings_3_Amount,
Company_code,
compensation_currency_code,
period_name,
TO_CHAR (period_year) period_year
FROM CN_PAYMENT_TRANSACTIONS_ALL pt,
CN_PERIOD_STATUSES_ALL PS,
cn_payruns_all pr,
CN_QUOTAS_ALL QO,
(SELECT re.catg_meaning,
re.resource_id,
re.resource_number,
re.resource_name,
emp.first_name source_first_name,
emp.last_name source_last_name,
ROUND (re.attribute3, 2) fica,
ROUND (re.attribute2, 5) local_conv_rate,
ROUND (re.attribute4, 5) ret_401k_deduction,
re.compensation_currency_code,
re.commissionable_flag,
rep.salesrep_id,
rep.status REP_STATUS,
EMP.ATTRIBUTE1 ADP_FILE_NUM,
EMP.EMPLOYEE_NUM,
DECODE (XHA.DEFAULT_EXPENSE_GL_CCID,
NULL, NULL,
glcc.concatenated_segments)
glcode,
rep.name,
NULL Earnings_3_Amount,
(SELECT attribute12
FROM per_people_f p
WHERE p.employee_number = emp.employee_num
AND TRUNC (SYSDATE) BETWEEN
P.EFFECTIVE_START_DATE
AND
P.EFFECTIVE_END_DATE)
Company_code,
re.attribute9
FROM jtf_rs_defresources_vl re --,(select resource_id from
jtf_rs_resources_vl where resource_type = 'RS_EMPLOYEE') rv
,
jtf_rs_salesreps rep,
HR_EMPLOYEES EMP,
XXNS_HR_EMPLOYEE_ASSIGNMENTS_V XHA,
GL_CODE_COMBINATIONS_KFV GLCC
WHERE re.resource_id = rep.resource_id
---AND RE.SOURCE_NUMBER = EMP.EMPLOYEE_NUM(+)
AND XHA.PERSON_ID(+) = rep.person_id
AND XHA.DEFAULT_EXPENSE_GL_CCID =
glcc.code_combination_id(+)
AND EMP.EMPLOYEE_ID(+) = rep.person_id) re
WHERE PT.PAY_PERIOD_ID = PS.PERIOD_ID
AND pt.payrun_id = pr.payrun_id
AND PT.QUOTA_ID = QO.QUOTA_ID
AND PT.PAYMENT_AMOUNT = 0
----AND pt.incentive_type_code = 'MANUAL_PAY_ADJ'
-- AND PAYEE_SALESREP_ID =
-- NVL (:p_salesrep_id, PAYEE_SALESREP_ID)
AND PAYEE_SALESREP_ID = re.salesrep_id
-- and re.compensation_currency_code=:compensation_currency_code
-- AND period_name = :p_period
GROUP BY ADP_FILE_NUM,
employee_num,
resource_name,
Company_code,
compensation_currency_code,
period_name,
re.attribute9,
period_year
UNION ALL
SELECT ADP_FILE_NUM FILE#,
employee_num,
SUM (COMM_DUE_BB) payment_amount,
re.Attribute9 product_family,
resource_name,
(SELECT NVL (meaning, 'C')
FROM fnd_lookup_values
WHERE lookup_type = 'XXNS_ICOMP_PROD_FAMILY'
AND lookup_code = re.Attribute9)
Earnings_3_Amount,
Company_code,
compensation_currency_code,
period_name,
TO_CHAR (period_year) period_year
FROM cn_payment_worksheets_all cpw,
CN_PERIOD_STATUSES_ALL PS,
CN_PAYRUNS_ALL cp,
(SELECT re.catg_meaning,
re.resource_id,
re.resource_number,
re.resource_name,
emp.first_name source_first_name,
emp.last_name source_last_name,
ROUND (re.attribute3, 2) fica,
ROUND (re.attribute2, 5) local_conv_rate,
ROUND (re.attribute4, 5) ret_401k_deduction,
re.compensation_currency_code,
re.commissionable_flag,
rep.salesrep_id,
rep.status REP_STATUS,
EMP.ATTRIBUTE1 ADP_FILE_NUM,
EMP.EMPLOYEE_NUM,
DECODE (XHA.DEFAULT_EXPENSE_GL_CCID,
NULL, NULL,
glcc.concatenated_segments)
glcode,
rep.name,
NULL Earnings_3_Amount,
(SELECT attribute12
FROM per_people_f p
WHERE p.employee_number = emp.employee_num
AND TRUNC (SYSDATE) BETWEEN
P.EFFECTIVE_START_DATE
AND
P.EFFECTIVE_END_DATE)
Company_code,
re.attribute9
FROM jtf_rs_defresources_vl re --,(select resource_id from
jtf_rs_resources_vl where resource_type = 'RS_EMPLOYEE') rv
,
jtf_rs_salesreps rep,
HR_EMPLOYEES EMP,
XXNS_HR_EMPLOYEE_ASSIGNMENTS_V XHA,
GL_CODE_COMBINATIONS_KFV GLCC
WHERE re.resource_id = rep.resource_id
---AND RE.SOURCE_NUMBER = EMP.EMPLOYEE_NUM(+)
AND XHA.PERSON_ID(+) = rep.person_id
AND XHA.DEFAULT_EXPENSE_GL_CCID =
glcc.code_combination_id(+)
AND EMP.EMPLOYEE_ID(+) = rep.person_id) re
WHERE WORKSHEET_STATUS = 'UNPAID'
AND cp.payrun_id = cpw.payrun_id
AND cp.PAY_PERIOD_ID = ps.PERIOD_ID
AND cpw.SALESREP_ID = re.salesrep_id
GROUP BY ADP_FILE_NUM,
employee_num,
re.Attribute9,
resource_name,
Company_code,
compensation_currency_code,
period_name,
period_year) main_query
--- WHERE Company_code IS NOT NULL ---Commented by Kishan to bring dual role
people into the report
GROUP BY FILE#,
employee_num,
product_family,
resource_name,
Earnings_3_Amount,
Company_code,
compensation_currency_code,
period_name,
period_year
ORDER BY resource_name;

You might also like