In Oracle eBS HRMS Standard India Legislation, the Monthly Income Tax amount will be calculated based on the Projected Annual Gross & Projected Tenure Month Period.
But in some Organization, Employees are request the Payroll Officer to deduct the Income Tax based on the Employee’s Input for the first some periods and Remaining balance value to be adjusted in the future period and accordingly actual Income tax will be deducted in the Year End.
In Standard functionality, It is not possible to accommodate in the System. In the below Steps, it is described how to achieve this process flow in Oracle HRMS R12.2.8.
Step 1: Create Two Elements as mentioned below,
Element Name 1: User Income Tax
Element Name 2: User Declared Income Tax.
Navigation: India HRMS Manager --> Total Compensation --> Basic --> Element Description
Name |
|
User Income Tax |
User Declared Income Tax |
Reporting Name |
|
User Income Tax |
User Declared Income Tax |
Description |
|
User Income Tax |
User Declared Income Tax |
Date From |
|
User Defined |
User Defined |
Date To |
|
31-Dec-4712 |
31-Dec-4712 |
Primary Classification |
|
Information |
Voluntary Deductions |
Benefit Classification |
|
Null |
Null |
Type: Recurring/ Nonrecurring |
|
Non Recurring |
Recurring |
Termination Rule: Actual Termination/ Final Close |
|
Final Close |
Final Close |
Multiple Entries Allowed |
|
Unchecked |
Unchecked |
Additional Entry Allowed |
|
Unchecked |
Unchecked |
Closed for Entry |
|
Unchecked |
Unchecked |
Process in Run |
|
Checked |
Checked |
Once Each Period |
|
Unchecked |
Unchecked |
Indirect Results |
|
Checked |
Unchecked |
Adjustment Only |
|
Unchecked |
Unchecked |
Third Party Payment |
|
Unchecked |
Unchecked |
Priority |
|
36001 |
36002 |
Skip Rule |
|
|
|
Input Values for the above defined Elements,
Element Name : User Income Tax
Name |
Sequence |
Units |
Required |
User Enterable |
Database Item |
Balance Tax |
1 |
Money |
Unchecked |
Checked |
Unchecked |
Balance Cess |
2 |
Money |
Unchecked |
Checked |
Unchecked |
Balance Sec and HE Cess |
3 |
Money |
Unchecked |
Checked |
Unchecked |
Balance Surcharge |
4 |
Money |
Unchecked |
Checked |
Unchecked |
Element Name : User Declared Income Tax
Name |
Sequence |
Units |
Required |
User Enterable |
Database Item |
Pay Value |
1 |
Money |
Unchecked |
Checked |
Checked |
Tax |
2 |
Money |
Unchecked |
Checked |
Unchecked |
Cess |
3 |
Money |
Unchecked |
Checked |
Unchecked |
Sec and HE Cess |
4 |
Money |
Unchecked |
Checked |
Unchecked |
Surcharge |
5 |
Money |
Unchecked |
Checked |
Unchecked |
Allow System to Calculate |
6 |
Character |
Unchecked |
Checked |
Unchecked |
Step 2: Customize the Standard Package :
Query the Package Name Called : PAY_IN_TAX_UTILS
***Add the Package Spec at the Bottom of the Above mentioned Package:***
function get_tax_skip_check( p_assignment_id in number
,p_business_group_id in number
,p_date_earned in date)
return varchar2;
***Add the Package Body at the Bottom of the Above mentioned Package:***
function get_tax_skip_check( p_assignment_id in number
,p_business_group_id in number
,p_date_earned in date) return varchar2
is
cursor sys_recalc_flag is
select peev.screen_entry_value from
pay_element_entry_values_f peev,
pay_element_entries_f pee,
pay_element_types_f pet,
pay_input_values_f piv
where pet.element_name = 'User Declared Income Tax'
and pet.business_group_id = p_business_group_id
and piv.element_type_id = pet.element_type_id
and pee.element_type_id = pet.element_type_id
and pee.element_entry_id = peev.element_entry_id
and piv.name='Allow System to Calculate'
and pee.assignment_id = p_assignment_id
and peev.input_value_id = piv.input_value_id
and p_date_earned between pet.effective_start_date and pet.effective_end_date
and p_date_earned between piv.effective_start_date and piv.effective_end_date
and p_date_earned between pee.effective_start_date and pee.effective_end_date
and p_date_earned between peev.effective_start_date and peev.effective_end_date;
l_flag varchar2(5);
begin
open sys_recalc_flag;
fetch sys_recalc_flag into l_flag;
if sys_recalc_flag%NOTFOUND THEN
close sys_recalc_flag ;
RETURN 'Y';
END IF;
close sys_recalc_flag ;
return l_flag;
end get_tax_skip_check;
Step 3 : Create Formula Function
Navigation: India HRMS Manager --> Other Definition --> Formula Function
Name : INBG_TAX_CALC
Data Type : Text
Class : External Function
Definition : pay_in_tax_utils.get_tax_skip_check
Step 4: Create Fast Formula for the New Elements Created :
Navigation : India HRMS Manager --> Total Compensation --> Basic --> Write Formulas.
Name : USER_INCOME_TAX
Type : Oracle Payroll
Description : To be attached to User Income Tax
Formula Code:
DEFAULT FOR Balance_Tax IS 0
DEFAULT FOR Balance_Surcharge IS 0
DEFAULT FOR Balance_Sec_and_HE_Cess IS 0
DEFAULT FOR Balance_Cess IS 0
INPUTS ARE Balance_Tax, Balance_Surcharge, Balance_Sec_and_HE_Cess, Balance_Cess
/*Allow System to Calculate is ‘No’ then it means user will provide his tax values .
So skip or nullify those already calculated by system*/
IF INBG_TAX_CALC() ='N' THEN
(x=IN_DEBUG('****************************************','************')
x=IN_DEBUG('Balance_Tax',TO_CHAR(Balance_Tax)) x=IN_DEBUG('Balance_Surcharge',TO_CHAR(Balance_Surcharge)) x=IN_DEBUG('Balance_Sec_and_HE_Cess',TO_CHAR(Balance_Sec_and_HE_Cess))
x=IN_DEBUG('Balance_Cess',TO_CHAR(Balance_Cess)) x=IN_DEBUG('***********************************','*********')
l_income_tax = - Balance_Tax
l_surcharge = - Balance_Surcharge
l_education_cess = - Balance_Cess
l_sec_and_he_cess = - Balance_Sec_and_HE_Cess
l_total_tax = l_income_tax + l_surcharge + l_education_cess + l_sec_and_he_cess
l_balance_tax = - l_total_tax x=IN_DEBUG('**************************************','**************')
x=IN_DEBUG('l_income_tax',TO_CHAR(l_income_tax)) x=IN_DEBUG('l_surcharge',TO_CHAR(l_surcharge)) x=IN_DEBUG('l_education_cess',TO_CHAR(l_education_cess)) x=IN_DEBUG('l_sec_and_he_cess',TO_CHAR(l_sec_and_he_cess)) x=IN_DEBUG('l_total_tax',TO_CHAR(l_total_tax)) x=IN_DEBUG('l_balance_tax',TO_CHAR(l_balance_tax))
x=IN_DEBUG('*************************************','*************')
RETURN l_income_tax, l_surcharge, l_education_cess, l_sec_and_he_cess, l_total_tax,
l_balance_tax
)
ELSE
RETURN
-----------------------------------------------------------------
Name : USER_USER_DEFINED_IT
Type : Oracle Payroll
Description : To be attached to User Declared Income Tax
Formula Code:
DEFAULT FOR Tax IS 0
DEFAULT FOR Cess IS 0
DEFAULT FOR Surcharge IS 0
DEFAULT FOR Sec_and_HE_Cess IS 0
INPUTS ARE Tax, Cess, Surcharge, Sec_and_HE_Cess
IF INBG_TAX_CALC()='N' THEN
(
x=IN_DEBUG('********************************','***************')
x=IN_DEBUG('Tax',TO_CHAR(Tax))
x=IN_DEBUG('Cess',TO_CHAR(Cess))
x=IN_DEBUG('Surcharge',TO_CHAR(Surcharge))
x=IN_DEBUG('Sec_and_HE_Cess',TO_CHAR(Sec_and_HE_Cess))
x=IN_DEBUG('***************************','********************')
l_tax = tax
l_cess = Cess
l_surcharge = Surcharge
l_sec_and_he_cess = Sec_and_HE_Cess
l_pay_value = l_tax + l_cess + l_surcharge + l_sec_and_he_cess
l_balance_tax = - l_pay_value
RETURN l_tax,
l_cess,
l_surcharge,
l_sec_and_he_cess,
l_pay_value,
l_balance_tax
)
ELSE
RETURN
Step 4 : Create Eligibility Link for User Declared Income Tax Element.
Navigation : India HRMS Manager --> Total Compensation --> Basic --> Link
Step 5 : Create Formula Results Rules.
Navigation : India HRMS Manager --> Total Compensation --> Basic -->
Formula Results
Element Name : Income Tax Information
Processing Rules:
Name : Standard
Formula : IN_INCOME_TAX
Add the below mentioned formula results in addition to the existing.
Name | Type | Element | Input Value |
CESS_THIS_PAY | Indirect result | User Income Tax | Balance Cess |
SEC_AND_HE_CESS_THIS_PAY | Indirect result | User Income Tax | Balance Sec and HE Cess |
SURCHARGE_THIS_PAY | Indirect result | User Income Tax | Balance Surcharge |
TAX_THIS_PAY | Indirect result | User Income Tax | Balance Tax |
-----------------------------------------------------
Element Name : User Income Tax
Processing Rules:
Name : Standard
Formula : USER_INCOME_TAX
Add the below mentioned formula results in addition to the existing.
Name | Type | Element | Input Value |
L_EDUCATION_CESS | Indirect result | Income Tax | Cess |
L_INCOME_TAX | Indirect result | Income Tax | Tax |
L_SEC_AND_HE_CESS | Indirect result | Income Tax | Sec and HE Cess |
L_SURCHARGE | Indirect result | Income Tax | Surcharge |
L_TOTAL_TAX | Indirect result | Income Tax | Pay Value |
L_BALANCE_TAX | Indirect result | Form16 Income Tax Information | Balance Tax |
L_EDUCATION_CESS | Indirect result | Form16 Income Tax Information | Education Cess till Date |
L_INCOME_TAX | Indirect result | Form16 Income Tax Information | Income Tax till Date |
L_SEC_AND_HE_CESS | Indirect result | Form16 Income Tax Information | Sec and HE Cess till Date |
L_SURCHARGE | Indirect result | Form16 Income Tax Information | Surcharge till Date |
-----------------------------------------------------
Element Name : User Declared Income Tax
Processing Rules:
Name : Standard
Formula : USER_USER_DEFINED_IT
Add the below mentioned formula results in addition to the existing.
Name | Type | Element | Input Value |
L_CESS | Indirect result | Income Tax | Cess |
L_PAY_VALUE | Indirect result | Income Tax | Pay Value |
L_SEC_AND_HE_CESS | Indirect result | Income Tax | Sec and HE Cess |
L_SURCHARGE | Indirect result | Income Tax | Surcharge |
L_TAX | Indirect result | Income Tax | Tax |
L_BALANCE_TAX | Indirect result | Form16 Income Tax Information | Balance Tax |
L_CESS | Indirect result | Form16 Income Tax Information | Education Cess till Date |
L_TAX | Indirect result | Form16 Income Tax Information | Income Tax till Date |
L_SEC_AND_HE_CESS | Indirect result | Form16 Income Tax Information | Sec and HE Cess till Date |
L_SURCHARGE | Indirect result | Form16 Income Tax Information | Surcharge till Date |
Step 6 : Assign the Employee Declared Income Tax Amount.
Navigation : India HRMS Manager --> People --> Enter & Maintain --> Assignment
--> Add Element as
User Declared Income Tax – Effective from 01-Apr-2021
Test Case :
Employee Basic Value is 1,00,000 Rs.
Annual Gross = 12,00,000
Standard Exemption Deduction = 50,000
Tax On Income = 1,57,500
Cess = 6300
Total Tax Liability = 1,63,800
As per System Standard Deduction for the Month Apr ’21 = 13,650 .
But Employee requests Payroll to deduct 5200 every month starting from Apr’21 to Dec’21.
And From Jan’22 to Mar’22 the remaining tax value to be deducted from Employee’s Salary.
After completing the Element Entry Input Value as mentioned in the above Screenshot, Run Quick Pay .
Step 7 : Quick Pay Run
Navigation : India HRMS Manager --> People --> Enter & Maintain --> Assignment-->
Quick Pay – Apr’21 Month.
Check Run Results,System automatically nullify the Standard Deduction value & Updated the User declared Income Tax amount as Monthly Tax for the Month of Apr’21.
No comments:
Post a Comment