0% found this document useful (0 votes)
128 views5 pages

Enhancement Costing Queries

This SQL query retrieves costing details for employees including their employee number, name, period, date earned, unit, position, element name, cost type, costed value, and chart of accounts details. It joins data from various payroll, people, and general ledger tables to provide a complete picture of payment costs for employees between January 1-31, 2017 for a specific business group.

Uploaded by

Saquib.Mahmood
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
128 views5 pages

Enhancement Costing Queries

This SQL query retrieves costing details for employees including their employee number, name, period, date earned, unit, position, element name, cost type, costed value, and chart of accounts details. It joins data from various payroll, people, and general ledger tables to provide a complete picture of payment costs for employees between January 1-31, 2017 for a specific business group.

Uploaded by

Saquib.Mahmood
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 5

------------QUERY TO GET THE COSTING DETAILS OF CLEARING ACCOUNTS FOR EMPLOYEES

HAVING PREPAYMENT PROCESSED (i.e., NET PAY > 0)---------------


SELECT papf.EMPLOYEE_NUMBER,
papf.FULL_NAME,
(SELECT ptp.PERIOD_NAME
FROM Per_Time_Periods ptp
WHERE ptp.PAYROLL_ID = ppa.PAYROLL_ID
AND ppa.EFFECTIVE_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE)
Period_name,
to_char(ppa.EFFECTIVE_DATE,
'Month - yyyy') period,
ppa.date_earned,
ppa.EFFECTIVE_DATE,
hr_general.DECODE_ORGANIZATION(paaf.organization_id) unit,
(SELECT p.NAME
FROM per_positions p
WHERE p.POSITION_ID = paaf.POSITION_ID
AND p.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID) position,
--XXAPU_FF_UTILITY_PKG.GET_REGION(paaf.organization_id) region,
NVL(petf.reporting_name,
petf.element_name) element_name,
pc.DEBIT_OR_CREDIT,
DECODE(pc.DEBIT_OR_CREDIT,
'D',
'C',
'D') dr_cr,
pc.BALANCE_OR_COST,
pc.COSTED_VALUE,
DECODE(pc.DEBIT_OR_CREDIT,
'D',
pc.COSTED_VALUE,
pc.COSTED_VALUE * -1) result_value,
Pcak.Concatenated_Segments,
Pcak.Segment4 coa
FROM pay_payroll_actions ppa,
pay_assignment_actions paa,
PAY_COSTs pc,
pay_run_results prr,
pay_element_types_f petf,
pay_cost_allocation_keyfle_kfv pcak,
per_all_assignments_f paaf,
Per_People_x papf
WHERE ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
AND paa.ASSIGNMENT_ACTION_ID = pc.ASSIGNMENT_ACTION_ID
AND pc.RUN_RESULT_ID = prr.RUN_RESULT_ID
AND prr.ELEMENT_TYPE_ID = petf.ELEMENT_TYPE_ID
AND ppa.BUSINESS_GROUP_ID =
nvl(petf.BUSINESS_GROUP_ID,ppa.BUSINESS_GROUP_ID)
AND pc.COST_ALLOCATION_KEYFLEX_ID = pcak.cost_allocation_keyflex_id
AND ppa.EFFECTIVE_DATE BETWEEN '01-Jan-2017' AND '31-Jan-2017'
AND ppa.BUSINESS_GROUP_ID = 81
--AND pc.BALANCE_OR_COST = 'B'
AND CLASSIFICATION_ID NOT IN (86,
89)
--AND petf.element_name NOT LIKE '%Leave Plan%'
AND paa.ASSIGNMENT_ID = paaf.ASSIGNMENT_ID
AND ppa.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID
AND paaf.PERSON_ID = papf.PERSON_ID
AND paaf.BUSINESS_GROUP_ID = papf.BUSINESS_GROUP_ID
AND ppa.EFFECTIVE_DATE BETWEEN paaf.EFFECTIVE_START_DATE AND
paaf.EFFECTIVE_END_DATE
AND ppa.EFFECTIVE_DATE BETWEEN petf.EFFECTIVE_START_DATE AND
petf.EFFECTIVE_END_DATE
AND Pcak.Segment4 = '3930'
AND
paa.ASSIGNMENT_ID IN
(SELECT paa1.ASSIGNMENT_ID
FROM pay_payroll_actions ppa1,
pay_assignment_actions paa1,
pay_pre_payments ppp
WHERE ppa1.PAYROLL_ACTION_ID = paa1.PAYROLL_ACTION_ID
AND paa1.ASSIGNMENT_ACTION_ID = ppp.ASSIGNMENT_ACTION_ID
AND ppa1.CONSOLIDATION_SET_ID IN (61,
62)
AND ppa1.EFFECTIVE_DATE BETWEEN '1-jan-2017' AND '31-jan-2017'
AND ppa1.ACTION_STATUS = 'C'
AND paa1.ACTION_STATUS = 'C');
-----------------------------------------------------------------------------------
------------------------------------------
--============================= COSTING OF PAYMENTS QUERY
==============================================--
SELECT papf.EMPLOYEE_NUMBER,
papf.FULL_NAME,
(SELECT ptp.PERIOD_NAME
FROM Per_Time_Periods ptp
WHERE ptp.PAYROLL_ID = paC.PAYROLL_ID
AND paC.EFFECTIVE_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE)
Period_name,
to_char(paC.EFFECTIVE_DATE,
'Month - yyyy') period,
paC.date_earned,
paC.EFFECTIVE_DATE,
hr_general.DECODE_ORGANIZATION(paaf.organization_id) unit,
(SELECT p.NAME
FROM per_positions p
WHERE p.POSITION_ID = paaf.POSITION_ID
AND p.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID) position,
OPM.ORG_PAYMENT_METHOD_NAME PAYMENT_METHOD_NAME,
PCOS.ACCOUNTING_DATE ACCOUNTING_DATE,
HR_GENERAL.DECODE_LOOKUP('PAY_COST_ACCOUNT_TYPE',
PCOS.ACCOUNT_TYPE) COST_TYPE,
HR_GENERAL.DECODE_LOOKUP('DEBIT_CREDIT',
PCOS.DEBIT_OR_CREDIT) DEBIT_OR_CREDIT,
HR_CHKFMT.CHANGEFORMAT(PCOS.VALUE,
'M',
PCOS.CURRENCY_CODE) COSTED_VALUE,
PCOS.SOURCE_TYPE SOURCE_TYPE,
PCOS.SOURCE_ACTION_ID SOURCE_ACTION_ID,
PCOS.ACCOUNT_ID GL_ACCOUNT_CCID,
GCC.CHART_OF_ACCOUNTS_ID FLEX_NUM,
PCOS.ASSIGNMENT_ID,
PCOS.ASSIGNMENT_ACTION_ID,
PCOS.PRE_PAYMENT_ID,
PCOS.PAYMENT_COST_ID,
GCC.SEGMENT1,
GCC.SEGMENT2,
GCC.SEGMENT3,
GCC.SEGMENT4,
GCC.SEGMENT5,
GCC.SEGMENT6,
GCC.SEGMENT7,
GCC.SEGMENT8,
GCC.SEGMENT9
FROM PAY_PAYMENT_COSTS PCOS,
PAY_PRE_PAYMENTS PPP,
PAY_ORG_PAYMENT_METHODS_F OPM,
PAY_ASSIGNMENT_ACTIONS PAA,
PAY_PAYROLL_ACTIONS PAC,
GL_CODE_COMBINATIONS GCC,
PER_ALL_ASSIGNMENTS_F PAAF,
PER_PEOPLE_X PAPF
WHERE PCOS.PRE_PAYMENT_ID = PPP.PRE_PAYMENT_ID
AND PPP.ORG_PAYMENT_METHOD_ID = OPM.ORG_PAYMENT_METHOD_ID
AND PAA.ASSIGNMENT_ACTION_ID = PCOS.ASSIGNMENT_ACTION_ID
AND PAA.PAYROLL_ACTION_ID = PAC.PAYROLL_ACTION_ID
AND PAC.EFFECTIVE_DATE BETWEEN OPM.EFFECTIVE_START_DATE AND
OPM.EFFECTIVE_END_DATE
AND GCC.CODE_COMBINATION_ID = PCOS.ACCOUNT_ID
AND PAc.EFFECTIVE_DATE BETWEEN '01-Jan-2017' AND '31-Jan-2017'
AND PAc.BUSINESS_GROUP_ID = 81
AND paa.ASSIGNMENT_ID = paaf.ASSIGNMENT_ID
AND paC.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID
AND paaf.PERSON_ID = papf.PERSON_ID
AND paaf.BUSINESS_GROUP_ID = papf.BUSINESS_GROUP_ID
AND PAc.EFFECTIVE_DATE BETWEEN paaf.EFFECTIVE_START_DATE AND
paaf.EFFECTIVE_END_DATE;
-----------------------------------------------------------------------------------
-----------------------------------------------------------
--======================================COMPLETE COSTING QUERY
================================================--
SELECT papf.EMPLOYEE_NUMBER,
papf.FULL_NAME,
(SELECT ptp.PERIOD_NAME
FROM Per_Time_Periods ptp
WHERE ptp.PAYROLL_ID = ppa.PAYROLL_ID
AND ppa.EFFECTIVE_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE)
Period_name,
to_char(ppa.EFFECTIVE_DATE,
'Month - yyyy') period,
ppa.date_earned,
ppa.EFFECTIVE_DATE,
hr_general.DECODE_ORGANIZATION(paaf.organization_id) unit,
(SELECT p.NAME
FROM per_positions p
WHERE p.POSITION_ID = paaf.POSITION_ID
AND p.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID) position,
--XXAPU_FF_UTILITY_PKG.GET_REGION(paaf.organization_id) region,
NVL(petf.reporting_name,
petf.element_name) element_name,
pc.DEBIT_OR_CREDIT,
pc.BALANCE_OR_COST,
pc.COSTED_VALUE,
DECODE(pc.DEBIT_OR_CREDIT,
'D',
pc.COSTED_VALUE,
pc.COSTED_VALUE * -1) result_value,
Pcak.Concatenated_Segments,
Pcak.Segment4 coa
FROM pay_payroll_actions ppa,
pay_assignment_actions paa,
PAY_COSTs pc,
pay_run_results prr,
pay_element_types_f petf,
pay_cost_allocation_keyfle_kfv pcak,
per_all_assignments_f paaf,
Per_People_x papf
WHERE ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
AND paa.ASSIGNMENT_ACTION_ID = pc.ASSIGNMENT_ACTION_ID
AND pc.RUN_RESULT_ID = prr.RUN_RESULT_ID
AND prr.ELEMENT_TYPE_ID = petf.ELEMENT_TYPE_ID
AND ppa.BUSINESS_GROUP_ID =
nvl(petf.BUSINESS_GROUP_ID,
ppa.BUSINESS_GROUP_ID)
AND pc.COST_ALLOCATION_KEYFLEX_ID = pcak.cost_allocation_keyflex_id
AND ppa.EFFECTIVE_DATE BETWEEN '01-Jan-2017' AND '31-Jan-2017'
AND ppa.BUSINESS_GROUP_ID = 81
--AND pc.BALANCE_OR_COST = 'B'
--AND CLASSIFICATION_ID NOT IN (86,89)
--AND petf.element_name NOT LIKE '%Leave Plan%'
AND paa.ASSIGNMENT_ID = paaf.ASSIGNMENT_ID
AND ppa.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID
AND paaf.PERSON_ID = papf.PERSON_ID
AND paaf.BUSINESS_GROUP_ID = papf.BUSINESS_GROUP_ID
AND ppa.EFFECTIVE_DATE BETWEEN paaf.EFFECTIVE_START_DATE AND
paaf.EFFECTIVE_END_DATE
AND ppa.EFFECTIVE_DATE BETWEEN petf.EFFECTIVE_START_DATE AND
petf.EFFECTIVE_END_DATE;
-----------------------------------------------------------------------------------
---------------------------------------------------------------
--=================================COSTING FOR EMPLOYEES HAVING PAYMENTS
(PREPAYMENT) NOT DONE (I.E., NET PAY = 0)--
SELECT papf.EMPLOYEE_NUMBER,
papf.FULL_NAME,
(SELECT ptp.PERIOD_NAME
FROM Per_Time_Periods ptp
WHERE ptp.PAYROLL_ID = ppa.PAYROLL_ID
AND ppa.EFFECTIVE_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE)
Period_name,
to_char(ppa.EFFECTIVE_DATE,
'Month - yyyy') period,
ppa.date_earned,
ppa.EFFECTIVE_DATE,
hr_general.DECODE_ORGANIZATION(paaf.organization_id) unit,
(SELECT p.NAME
FROM per_positions p
WHERE p.POSITION_ID = paaf.POSITION_ID
AND p.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID) position,
--XXAPU_FF_UTILITY_PKG.GET_REGION(paaf.organization_id) region,
NVL(petf.reporting_name,
petf.element_name) element_name,
pc.DEBIT_OR_CREDIT,
pc.BALANCE_OR_COST,
pc.COSTED_VALUE,
DECODE(pc.DEBIT_OR_CREDIT,
'D',
pc.COSTED_VALUE,
pc.COSTED_VALUE * -1) result_value,
Pcak.Concatenated_Segments,
Pcak.Segment4 coa
FROM pay_payroll_actions ppa,
pay_assignment_actions paa,
PAY_COSTs pc,
pay_run_results prr,
pay_element_types_f petf,
pay_cost_allocation_keyfle_kfv pcak,
per_all_assignments_f paaf,
Per_People_x papf
WHERE ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
AND paa.ASSIGNMENT_ACTION_ID = pc.ASSIGNMENT_ACTION_ID
AND pc.RUN_RESULT_ID = prr.RUN_RESULT_ID
AND prr.ELEMENT_TYPE_ID = petf.ELEMENT_TYPE_ID
AND ppa.BUSINESS_GROUP_ID =
nvl(petf.BUSINESS_GROUP_ID,
ppa.BUSINESS_GROUP_ID)
AND pc.COST_ALLOCATION_KEYFLEX_ID = pcak.cost_allocation_keyflex_id
AND ppa.EFFECTIVE_DATE BETWEEN '01-Jan-2017' AND '31-Jan-2017'
AND ppa.BUSINESS_GROUP_ID = 81
--AND pc.BALANCE_OR_COST = 'B'
AND CLASSIFICATION_ID NOT IN (86,89)
--AND petf.element_name NOT LIKE '%Leave Plan%'
AND paa.ASSIGNMENT_ID = paaf.ASSIGNMENT_ID
AND ppa.BUSINESS_GROUP_ID = paaf.BUSINESS_GROUP_ID
AND paaf.PERSON_ID = papf.PERSON_ID
AND paaf.BUSINESS_GROUP_ID = papf.BUSINESS_GROUP_ID
AND ppa.EFFECTIVE_DATE BETWEEN paaf.EFFECTIVE_START_DATE AND
paaf.EFFECTIVE_END_DATE
AND ppa.EFFECTIVE_DATE BETWEEN petf.EFFECTIVE_START_DATE AND
petf.EFFECTIVE_END_DATE
AND
paa.ASSIGNMENT_ID NOT IN
(SELECT paa1.ASSIGNMENT_ID
FROM pay_payroll_actions ppa1,
pay_assignment_actions paa1,
pay_pre_payments ppp
WHERE ppa1.PAYROLL_ACTION_ID = paa1.PAYROLL_ACTION_ID
AND paa1.ASSIGNMENT_ACTION_ID = ppp.ASSIGNMENT_ACTION_ID
AND ppa1.CONSOLIDATION_SET_ID IN (61,
62)
AND ppa1.EFFECTIVE_DATE BETWEEN '1-jan-2017' AND '31-jan-2017'
AND ppa1.ACTION_STATUS = 'C'
AND paa1.ACTION_STATUS = 'C');
-----------------------------------------------------------------------------------
------------------------------------------------

You might also like