[MERGE] Merge KBH branch for Indian payroll account module not finished yet

lp:~openerp-dev/openerp-india/payroll-india-trunk-module-descriptor-kbh

bzr revid: mra@tinyerp.com-20120517071336-q0fuc1vk7dzjoz6m
This commit is contained in:
Mustufa Rangwala (OpenERP)
2012-05-17 12:43:36 +05:30
13 changed files with 1040 additions and 0 deletions
+8
View File
@@ -31,6 +31,12 @@
<field name="register_id" ref="hr_houserent_register"/>
<field name="name">House Rent Allowance</field>
<field name="sequence" eval="5"/>
<field name="note">Rent receipts can be shown for taking tax benefit for living in a rented house.Income tax exemption for HRA will be least of following:
1. The actual amount of HRA received as a part of salary.
2. 40% (if living in non-metro area) or 50% (if living in metro area) of (basic salary+Dearness allowance (DA)).
3. Rent paid minus 10% of (basic salary+DA).
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1upoomH73
</field>
</record>
<record id="hr_salary_rule_convanceallowance1" model="hr.salary.rule">
@@ -50,6 +56,8 @@
<field name="category_id" ref="hr_payroll.DED"/>
<field name="register_id" ref="hr_professional_tax_register"/>
<field name="name">Professional Tax</field>
<field name="note">Professional tax deducted from salary by employer should be removed from taxable salary before computation of income tax.
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uugbJcaM</field>
</record>
<record id="hr_salary_rule_providentfund1" model="hr.salary.rule">
+26
View File
@@ -0,0 +1,26 @@
# -*- encoding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import hr_payroll
import l10n_in_hr_payroll
import report
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+55
View File
@@ -0,0 +1,55 @@
# -*- encoding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
{
'name': 'India payroll',
'category': 'Localization',
'init_xml': [],
'author': 'OpenERP SA',
'website':'http://www.openerp.com',
'depends': ['hr_payroll'],
'version': '1.0',
'description': """
Indian Payroll Rules.
=======================
* Employee Details
* Employee Contracts
* Passport based Contract
* Allowances / Deductions
* Allow to configure Basic / Grows / Net Salary
* Employee PaySlip
* Monthly Payroll Register
* Integrated with Holiday Management
* Medical Allowance, Travel Allowance, Child Allowance, ...
""",
'active': False,
'update_xml': [
'l10n_in_hr_payroll_view.xml',
'l10n_in_hr_payroll_data.xml',
'data/hr.salary.rule.csv',
'l10n_in_hr_payroll_report.xml',
],
'demo_xml': ['l10n_in_hr_payroll_demo.xml'],
'installable': True
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -0,0 +1,10 @@
"id","amount_select","condition_range_min","condition_range_max","amount_percentage","amount_fix","name","category_id","sequence","code","parent_rule_id/id","condition_select","condition_range","amount_percentage_base"
1,"fix",1,1,,1200,"Education Allowance","Child Education Allowance",23,"CHEAONE","hr_payroll_rule_child1","range","employee.children",
2,"fix",2,10,,2400,"Education Allowance","Child Education Allowance",24,"CHEATWO","hr_payroll_rule_child1","range","employee.children",
,,,,,,,,,,,,,
,,,,,,,,,,,,,
5,"fix",0,2999,,0,"Professional Tax for Gujarat","Deduction",121,"PT0","hr_payslip_line_professionaltax_guj","range","categories.GROSS",
6,"fix",3000,5999,,-20,"Professional Tax for Gujarat","Deduction",121,"PT20","hr_payslip_line_professionaltax_guj","range","categories.GROSS",
7,"fix",6000,8999,,-80,"Professional Tax for Gujarat","Deduction",121,"PT80","hr_payslip_line_professionaltax_guj","range","categories.GROSS",
8,"fix",9000,11999,,-150,"Professional Tax for Gujarat","Deduction",121,"PT150","hr_payslip_line_professionaltax_guj","range","categories.GROSS",
9,"fix",12000,1000000,,-200,"Professional Tax for Gujarat","Deduction",121,"PT200","hr_payslip_line_professionaltax_guj","range","categories.GROSS",
1 id amount_select condition_range_min condition_range_max amount_percentage amount_fix name category_id sequence code parent_rule_id/id condition_select condition_range amount_percentage_base
2 1 fix 1 1 1200 Education Allowance Child Education Allowance 23 CHEAONE hr_payroll_rule_child1 range employee.children
3 2 fix 2 10 2400 Education Allowance Child Education Allowance 24 CHEATWO hr_payroll_rule_child1 range employee.children
4
5
6 5 fix 0 2999 0 Professional Tax for Gujarat Deduction 121 PT0 hr_payslip_line_professionaltax_guj range categories.GROSS
7 6 fix 3000 5999 -20 Professional Tax for Gujarat Deduction 121 PT20 hr_payslip_line_professionaltax_guj range categories.GROSS
8 7 fix 6000 8999 -80 Professional Tax for Gujarat Deduction 121 PT80 hr_payslip_line_professionaltax_guj range categories.GROSS
9 8 fix 9000 11999 -150 Professional Tax for Gujarat Deduction 121 PT150 hr_payslip_line_professionaltax_guj range categories.GROSS
10 9 fix 12000 1000000 -200 Professional Tax for Gujarat Deduction 121 PT200 hr_payslip_line_professionaltax_guj range categories.GROSS
@@ -0,0 +1,34 @@
#-*- coding:utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2011 OpenERP SA (<http://openerp.com>). All Rights Reserved
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from osv import fields, osv
import decimal_precision as dp
class hr_contract_in(osv.osv):
_inherit = 'hr.contract'
_columns = {
'tds': fields.float('TDS', digits_compute=dp.get_precision('Payroll')),
}
hr_contract_in()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -0,0 +1,416 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<!-- Hr Salary Rules Categories-->
<record id="CEA" model="hr.salary.rule.category">
<field name="name">Child Education Allowance</field>
<field name="code">CEA</field>
<field name="parent_id" ref="hr_payroll.ALW"/>
</record>
<!-- Hr Salary Rules-->
<record id="hr_salary_rule_da" model="hr.salary.rule">
<field name="code">DA</field>
<field name="name">Dearness Allowance</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">percentage</field>
<field name="amount_percentage_base">contract.wage</field>
<field name="amount_percentage" eval="51"/>
<field name="sequence" eval="20"/>
<field name="note">DA is calculated in %
for more details:http://www.citehr.com/26809-how-calculate-dearness-allowance-da.html</field>
</record>
<record id="hr_payroll_rule_child_edu" model="hr.salary.rule">
<field name="code">CEA</field>
<field name="name">Child Education Allowance</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field name="condition_select">none</field>
<field name="sequence" eval="21"/>
<field name="note"> Per school going child 1200 per annum is non-taxable. Maximum for 2 children, so max 2400 per annum becomes non-taxable.</field>
</record>
<record id="hr_payroll_rule_child1" model="hr.salary.rule">
<field name="code">CHEA</field>
<field name="name">Education Allowance</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="parent_rule_id" ref="hr_payroll_rule_child_edu"/>
<field name="condition_select">python</field>
<field name="condition_python">result = bool(employee.children)</field>
<field name="amount_select">fix</field>
<field name="note">Per school going child 1200 per annum is non-taxable. Maximum for 2 children, so max 2400 per annum becomes non-taxable.</field>
<field name="sequence" eval="22"/>
</record>
<record id="hr_salary_rule_special" model="hr.salary.rule">
<field name="code">MGMTA</field>
<field name="name">Grade/Special/Management/Supplementary Allowance</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="100.0" name="amount_fix"/>
<field name="sequence" eval="28"/>
<field name="note">This allowance is normally given as an additional benefit to employees and is fully taxable.
for more details : http://www.rupeetalk.com/finance-basics/income-tax-basics/income-tax-guides/tax-implications-of-salary-components.php</field>
</record>
<record id="hr_salary_rule_city" model="hr.salary.rule">
<field name="code">CCA</field>
<field name="name">City Compensatory Allowance</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="100.0" name="amount_fix"/>
<field name="sequence" eval="29"/>
<field name="note">10% of basic+da is the maximum.
for more details :http://www.citehr.com/250071-what-cca-allowance.html</field>
</record>
<record id="hr_salary_rule_arrears" model="hr.salary.rule">
<field name="code">ARRE</field>
<field name="name">Arrears</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="100.0" name="amount_fix"/>
<field name="sequence" eval="30"/>
<field name="note">Generally arrears are fully taxable, but employee may claim exemption u/s 89(1).
One would need to compute income tax on the arrears if it would have been received in actual year.
Now difference of income tax between payment year and actual year would be allowed for deduction.
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uurtGGGd</field>
</record>
<record id="hr_salary_rule_gratuity" model="hr.salary.rule">
<field name="code">GRA</field>
<field name="name">Gratuity</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="condition_select">none</field>
<field name="amount_select">code</field>
<field name="amount_python_compute">result = (categories.NET/26) * 15 * 5</field>
<field name="sequence" eval="500"/>
<field name="note">Covered under the Payment of Gratuity Act, 1971: (Last drawn monthly basic salary + dearness allowance)/26 x 15 days x number of years of service (date of joining – date of retirement/leaving job)
</field>
</record>
<record id="hr_salary_rule_lta" model="hr.salary.rule">
<field name="code">LTA</field>
<field name="name">Leave Travel Allowance</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">percentage</field>
<field name="amount_percentage_base">contract.wage</field>
<field name="amount_percentage" eval="0.0833"/>
<field name="sequence" eval="32"/>
<field name="note">As per Income tax rules of India, if transport bills for LTA are not provided,
the amount will be taxed. E.g. If an employee has LTA allowance as Rs 50,000 in his CTC(cost to company),
and he provides proofs of Rs 40,000 (boarding pass, air tickets, taxi vouchers) then income tax will be
deducted for rest of the Rs 10,000. Does not matter whats the amount of LTA in an employee’s package,
income tax laws only permits domestic air tickets only for LTA claim.
Read more: http://www.pankajbatra.com/news/lta-proof-reimbursement-to-employer-not-required-supreme-court-india-ruling/#ixzz1uutlHSez</field>
</record>
<record id="hr_salary_rule_le" model="hr.salary.rule">
<field name="code">LE</field>
<field name="name">Leave Encashment</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="condition_select">none</field>
<field name="amount_select">fix</field>
<field name="amount_fix">0.0</field>
<field name="sequence" eval="33"/>
<field name="note"> Payment by way of leave encashment received by Central and State Govt.
employees at the time of retirement in respect of the period of earned
leave at credit is fully exempt. In case of other employees, the exemption
is to be limited to minimum of all below:
1.The actual amount received
2.The cash equivalent of leave balance (max 30 days per year of service)
3.Maximum of 10 months of leave encashment, based on last 10 months average salary
4.Rs. 3 Lakh
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uuunHwjE
</field>
</record>
<record id="hr_salary_rule_bonus" model="hr.salary.rule">
<field name="code">PI</field>
<field name="name">Performance Incentive/Bonus</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="5000.0" name="amount_fix"/>
<field name="sequence" eval="34"/>
<field name="note">This would be fully taxable based on incentive.</field>
</record>
<record id="hr_salary_rule_medical" model="hr.salary.rule">
<field name="code">MEDA</field>
<field name="name">Medical Reimbursement</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="2500.0" name="amount_fix"/>
<field name="sequence" eval="35"/>
<field name="note">This component is on-taxable up to 15000 per year (or Rs 1250 per month) on producing medical bills.</field>
</record>
<record id="hr_salary_rule_journals" model="hr.salary.rule">
<field name="code">PERJ</field>
<field name="name">Periodical Journals</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="5000.0" name="amount_fix"/>
<field name="sequence" eval="36"/>
<field name="note">Some employers may provide component for buying magazines,
journals and books as a part of knowledge enhancement for business growth.
This part would become non taxable on providing original bills.</field>
</record>
<record id="hr_salary_rule_uniform" model="hr.salary.rule">
<field name="code">UNIF</field>
<field name="name">Uniform/Dress Allowance</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="500.0" name="amount_fix"/>
<field name="sequence" eval="37"/>
<field name="note">Some sections of employees mat get allowance for purchase of office dress/uniform.
In such case, the component would become non-taxable.</field>
</record>
<record id="hr_salary_rule_telephone" model="hr.salary.rule">
<field name="code">TELR</field>
<field name="name">Telephone Reimbursement</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="500.0" name="amount_fix"/>
<field name="sequence" eval="38"/>
<field name="note">In some of the cases, companies may provide a component for telephone bills.
Employees may provide actual phone usage bills to reimburse this component and make it non-taxable.
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uuvaUK7A
</field>
</record>
<record id="hr_payroll_rule_car" model="hr.salary.rule">
<field name="code">CAR</field>
<field name="name">Car Expenses Reimbursement</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="500.0" name="amount_fix"/>
<field name="sequence" eval="39"/>
<field name="note">In case company provides component for this and employee use self owned car for official
and personal purposes, Rs 1800 per month would be non-taxable on showing bills for fuel or
can maintenance. This amount would be Rs 2400 in case car is more capacity than 1600cc.
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uuw12Cjj</field>
</record>
<record id="hr_salary_rule_internet" model="hr.salary.rule">
<field name="code">INT</field>
<field name="name">Internet Expense</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="500.0" name="amount_fix"/>
<field name="sequence" eval="40"/>
<field name="note">Employer may also provide reimbursement of internet expenses and thus this would become non taxable.</field>
</record>
<record id="hr_salary_rule_driver" model="hr.salary.rule">
<field name="code">DRI</field>
<field name="name">Driver Salary</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="500.0" name="amount_fix"/>
<field name="sequence" eval="41"/>
<field name="note">Rs. 900 per month (non taxable)</field>
</record>
<record id="hr_salary_rule_Gift_nr" model="hr.salary.rule">
<field name="code">GFNR</field>
<field name="name">Gifts From Non-Relatives</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="5000.0" name="amount_fix"/>
<field name="sequence" eval="42"/>
<field name="note"> gift gift is from non relatives person worth more than Rs.50000,
one is liable to pay the tax what ever he received excess of the limit or Rs 50,000.</field>
</record>
<record id="hr_salary_rule_Gift_r" model="hr.salary.rule">
<field name="code">GFR</field>
<field name="name">Gifts From Relatives</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="5000.0" name="amount_fix"/>
<field name="sequence" eval="43"/>
<field name="note"> gift is from relaives whould be non taxable with no limits.</field>
</record>
<record id="hr_salary_rule_hri" model="hr.salary.rule">
<field name="code">HRI</field>
<field name="name">House Rent Income</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="5000.0" name="amount_fix"/>
<field name="note">Income from house property</field>
<field name="sequence" eval="44"/>
<field name="note">30% of the rental income can be reduced as a standard deduction</field>
</record>
<record id="hr_salary_rule_Other" model="hr.salary.rule">
<field name="code">OTI</field>
<field name="name">Other Income</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="condition_select">python</field>
<field name="condition_python">result = bool(contract.others)</field>
<field name="amount_select">code</field>
<field name="amount_python_compute">result = contract.others</field>
<field name="note">Bank account/NSC/Post Office/SCSS interest</field>
<field name="sequence" eval="45"/>
</record>
<record id="hr_salary_rule_st_gains" model="hr.salary.rule">
<field name="code">STG</field>
<field name="name">Short Term Gains from Share Trading/Equity MFs</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="5000.0" name="amount_fix"/>
<field name="sequence" eval="46"/>
<field name="note">if stocks/equity mutual funds are sold before one year,
15% tax would be payable on such gains. STT should have been on transaction.
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uuwSxEvI</field>
</record>
<record id="hr_salary_rule_lt_gains" model="hr.salary.rule">
<field name="code">LTG</field>
<field name="name">Long Term Gains from Share Trading/Equity MFs</field>
<field name="category_id" ref="hr_payroll.ALW"/>
<field name="amount_select">fix</field>
<field eval="5000.0" name="amount_fix"/>
<field name="sequence" eval="47"/>
<field name="note">If stocks/equity mutual funds are kept for more than a year before sale,
it would be long term gains and such gains would be fully exempt from income tax.
Securities transaction tax (STT) must have been paid on transactions for availing
this exemption.
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uuwtRkCT</field>
</record>
<!--Deductions -->
<record id="hr_payslip_line_professionaltax_guj" model="hr.salary.rule">
<field name="code">PTG</field>
<field name="name">Professional Tax for Gujarat</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="120" name="sequence"/>
<field eval="-0.0" name="amount_fix"/>
<field eval="False" name="appears_on_payslip"/>
<field name="note">
PROFESSIONAL TAX FOR COMPANY SHOULD BE PAID ON OR BEFORE 30TH SEPT,
THE AMOUNT IS Rs. 2000 PER YEAR. THERE IS NO PAYMENT FORM TO BE FLLED.
Attribution: http://www.citehr.com/249518-companys-professional-tax-gujarat.html#ixzz1uuyvgt2L</field>
</record>
<record id="hr_payslip_rule_tds" model="hr.salary.rule">
<field name="code">TDS</field>
<field name="name">Tax Deducted at Source</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="condition_select">python</field>
<field name="condition_python">result = bool(contract.tds)</field>
<field name="amount_select">code</field>
<field name="amount_python_compute">result = -(contract.tds)</field>
<field name="sequence" eval="140"/>
<field name="note">As per income tax rules, all payment which are taxable in nature should be
done after deduction of taxes at the source itself. Hence employer compute
income tax on salary payment and deduct it every month. This TDS is based
on employee’s saving/investment declaration at the start of year. If
investments for tax saving is not done, large amount may be deducted in last few months.
Read more: http://www.pankajbatra.com/finance/income-tax-calculator-2012-2013-2014/#ixzz1uv0gPhgQ</field>
</record>
<record id="hr_payslip_rule_vpf" model="hr.salary.rule">
<field name="code">VPF</field>
<field name="name">Voluntarily Provident Fund Contribution</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="-200.0" name="amount_fix"/>
<field name="sequence" eval="130"/>
<field name="note">
VPF is a safe option wherein you can contribute more than the PF ceiling of 12%
that has been mandated by the government. This additional amount enjoys all the
benefits of PF except that the employer is not liable to contribute any extra amount
apart from 12%. An added advantage is that the interest rate is equal to the interest
rate of PF and the withdrawal is tax free. Please note that the maximum contribution
towards VPF is 100% of your Basic. The highest rate of interest (close to 9%) makes
it a very attractive saving scheme. Because of these advantages many employees chose
not to close their PF account even after getting employment else where other than India.
Employees also get a major tax break on their entire contribution to the fund up to a
ceiling of Rs. 70,000/-
for more details:http://www.dotcominfoway.com/blog/vpf-or-voluntary-provident-fund-special-benefits-for-employees</field>
</record>
<record id="hr_payslip_rule_cpt" model="hr.salary.rule">
<field name="code">CPT</field>
<field name="name">Dedution for Company Provided Transport</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="-1800.0" name="amount_fix"/>
<field name="sequence" eval="155"/>
</record>
<record id="hr_payslip_rule_lwf" model="hr.salary.rule">
<field name="code">LWF</field>
<field name="name">Dedution Towards State Labour Welfare Fund</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="-3.0" name="amount_fix"/>
<field name="sequence" eval="160"/>
<field name="note">The LWF is applicable to all the members of the organisation except the
Management staff (Staffs having authority to sign on the cheque/official
documents on behalf of the organisation)
Employee Contribution is Rs. 3.00 and Employer contribution Rs. 6.00
Total Rs 9.00 and deposited to the LWF office.
It is half yearly contribution (June and December)
Attribution: http://www.citehr.com/270132-labour-welfare-fund-deduction-salary.html</field>
</record>
<record id="hr_payslip_rule_cgti" model="hr.salary.rule">
<field name="code">CGTI</field>
<field name="name">Dedution Towards Company Provided Group Term Insurance</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="-200.0" name="amount_fix"/>
<field name="sequence" eval="167"/>
</record>
<record id="hr_payslip_rule_dla" model="hr.salary.rule">
<field name="code">DLA</field>
<field name="name">Dedution Towards Leave Availed</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="-200.0" name="amount_fix"/>
<field name="sequence" eval="170"/>
</record>
<record id="hr_payslip_rule_cmt" model="hr.salary.rule">
<field name="code">CMT</field>
<field name="name">Dedution Towards Company Provided Medical Insurance</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="-50.0" name="amount_fix"/>
<field name="sequence" eval="172"/>
</record>
<record id="hr_payslip_rule_ode" model="hr.salary.rule">
<field name="code">ODE</field>
<field name="name">Other Dedution from Employer</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">fix</field>
<field eval="-200.0" name="amount_fix"/>
<field name="sequence" eval="175"/>
</record>
<record id="hr_payslip_rule_epc" model="hr.salary.rule">
<field name="code">EPC</field>
<field name="name">Employer's PF Contribution</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="amount_select">code</field>
<field name="amount_python_compute">result = (rules.PF.amount_percentage * contract.wage)/100</field>
<field name="sequence" eval="122"/>
</record>
</data>
</openerp>
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<!-- Hr Salary structure-->
<record id="hr_payroll_salary_structure_emp_ind" model="hr.payroll.structure">
<field name="code">IND</field>
<field name="name">Indian Employee</field>
<field eval="[(6, 0, [ref('hr_salary_rule_medical'),ref('hr_salary_rule_lta'),ref('hr_salary_rule_telephone'), ref('hr_salary_rule_internet'),ref('hr_payroll_rule_child_edu'),ref('hr_salary_rule_gratuity')])]" name="rule_ids"/>
<field name="company_id" ref="base.main_company"/>
<field name="parent_id" ref="hr_payroll.structure_base"/>
</record>
</data>
</openerp>
@@ -0,0 +1,14 @@
<?xml version="1.0"?>
<openerp>
<data>
<report
auto="False"
id="payslip_details_report"
model="hr.payslip"
name="paylip.details.in"
rml="l10n_in_hr_payroll/report/report_payslip_details.rml"
string="PaySlip Details" />
</data>
</openerp>
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="hr_contract_form_in_inherit" model="ir.ui.view">
<field name="name">hr.contract.form.in.inherit</field>
<field name="model">hr.contract</field>
<field name="type">form</field>
<field name="priority">20</field>
<field name="inherit_id" ref="hr_contract.hr_contract_view_form"/>
<field name="arch" type="xml">
<data>
<xpath expr="/form/notebook/page[@name='information']/group[@name='right_column']/field[@name='struct_id']" position="after">
<field name="tds"/>
</xpath>
</data>
</field>
</record>
</data>
</openerp>
@@ -0,0 +1,27 @@
#!/usr/bin/env python
#-*- coding:utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>). All Rights Reserved
# d$
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import report_payslip_details
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -0,0 +1,38 @@
#!/usr/bin/env python
#-*- coding:utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>). All Rights Reserved
# d$
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from report import report_sxw
from hr_payroll import report
class payslip_details_report_in(report.report_payslip_details.payslip_details_report):
def __init__(self, cr, uid, name, context):
super(payslip_details_report_in, self).__init__(cr, uid, name, context)
self.localcontext.update({
'get_details_by_rule_category': self.get_details_by_rule_category,
})
report_sxw.report_sxw('report.paylip.details.in', 'hr.payslip', 'l10n_in_hr_payroll/report/report_payslip_details.rml', parser=payslip_details_report_in)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -0,0 +1,372 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
</template>
<stylesheet>
<blockTableStyle id="Standard_Outline">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table1">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table2">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="3,-1" stop="3,-1"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
</blockTableStyle>
<blockTableStyle id="Table4">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="3,-1" stop="3,-1"/>
</blockTableStyle>
<blockTableStyle id="Table5">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="3,-1" stop="3,-1"/>
</blockTableStyle>
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="3,0" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="3,-1" stop="3,-1"/>
</blockTableStyle>
<blockTableStyle id="Table10">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table11">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
</blockTableStyle>
<blockTableStyle id="Table12">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
</blockTableStyle>
<blockTableStyle id="Table8">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table7">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Table16">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Table13">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
<paraStyle name="P1" fontName="Helvetica" fontSize="2.0" leading="3"/>
<paraStyle name="P2" fontName="Helvetica" fontSize="2.0" leading="3"/>
<paraStyle name="P3" rightIndent="-56.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P4" rightIndent="-56.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P5" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P6" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P7" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P8" fontName="Helvetica-Bold" fontSize="14.0" leading="17" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P9" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P10" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P11" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P12" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P13" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT"/>
<paraStyle name="P14" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT"/>
<paraStyle name="P15" fontName="Helvetica-Bold" fontSize="8.0" leading="10"/>
<paraStyle name="P16" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P17" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P18" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P19" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT"/>
<paraStyle name="P20" fontName="Helvetica" fontSize="2.0" leading="3"/>
<paraStyle name="P21" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P22" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT"/>
<paraStyle name="P23" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT"/>
<paraStyle name="P24" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P25" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P26" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Standard" fontName="Helvetica"/>
<paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Caption" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Index" fontName="Helvetica"/>
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_8" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_space" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="14.0" leading="17" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Centre_8" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Centre_9" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Bold_8" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Bold_9" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_10" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Table Contents" fontName="Helvetica"/>
<paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER"/>
<paraStyle name="payslip_adj" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<images/>
</stylesheet>
<story>
<para style="P3">[[repeatIn(objects,'o')]]</para>
<blockTable colWidths="539.0" style="Table1">
<tr>
<td>
<para style="P8">Pay Slip Details</para>
</td>
</tr>
</blockTable>
<para style="terp_header_Centre">
<font face="Helvetica" size="6.0">[[o.credit_note==False and removeParentNode('para')]]</font>
<font face="Helvetica-Bold" size="14.0">Credit</font>
<font face="Helvetica" size="14.0"/>
<font face="Helvetica-Bold" size="14.0">Note</font>
</para>
<para style="P9">([[o.name or removeParentNode('para')]])</para>
<blockTable colWidths="63.0,206.0,89.0,181.0" style="Table2">
<tr>
<td>
<para style="P16">Name</para>
</td>
<td>
<para style="P16">[[o.employee_id.name]]</para>
</td>
<td>
<para style="P16">Designation </para>
</td>
<td>
<para style="P5">[[ o.employee_id.job_id.name or '' ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="63.0,476.0" style="Table3">
<tr>
<td>
<para style="terp_default_Bold_8">
<font face="Helvetica">Address </font>
</para>
</td>
<td>
<para style="P5">[[o.employee_id.address_home_id and o.employee_id.address_home_id.name or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.street or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.street2 or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.zip or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.city or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.state_id and o.employee_id.address_home_id.state_id.name or '' ]] [[o.employee_id.address_home_id and o.employee_id.address_home_id.country_id and o.employee_id.address_home_id.country_id.name or '' ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="63.0,206.0,89.0,181.0" style="Table4">
<tr>
<td>
<para style="P16">Email</para>
</td>
<td>
<para style="P5">[[ o.employee_id.work_email or '' ]]</para>
</td>
<td>
<para style="terp_default_Bold_8">
<font face="Helvetica">Identification No</font>
</para>
</td>
<td>
<para style="P5">[[ o.employee_id.identification_id or '' ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="63.0,206.0,89.0,181.0" style="Table5">
<tr>
<td>
<para style="P16">Reference</para>
</td>
<td>
<para style="P5">[[ o.number or '' ]]</para>
</td>
<td>
<para style="P16">Bank Account</para>
</td>
<td>
<para style="P5">[[ o.employee_id.otherid or '' ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="63.0,206.0,89.0,181.0" style="Table6">
<tr>
<td>
<para style="P16">Date From</para>
</td>
<td>
<para style="P5">[[ o.date_from or '']]</para>
</td>
<td>
<para style="terp_default_Bold_8">
<font face="Helvetica" size="8.0">Date To</font>
</para>
</td>
<td>
<para style="P5">[[ o.date_to or '' ]]</para>
</td>
</tr>
</blockTable>
<para style="P7"/>
<para style="P11">
<font color="white"> </font>
</para>
<para style="P5">
<font color="white"> </font>
</para>
<blockTable colWidths="539.0" style="Table10">
<tr>
<td>
<para style="P10">Details by Salary Rule Category: </para>
</td>
</tr>
</blockTable>
<blockTable colWidths="54.0,388.0,97.0" style="Table11">
<tr>
<td>
<para style="P15">Code</para>
</td>
<td>
<para style="P15">Salary Rule Category</para>
</td>
<td>
<para style="P14">Total</para>
</td>
</tr>
</blockTable>
<para style="P1">
<font color="white"> </font>
</para>
<section>
<para style="P16">[[repeatIn(get_details_by_rule_category(o.details_by_salary_rule_category),'h') ]]</para>
<blockTable colWidths="54.0,388.0,97.0" style="Table12">
<tr>
<td>
<para style="P16">
<font face="Helvetica">[[ h['code'] ]]</font>
<font face="Helvetica">[[ h['level']!=0 and ( setTag('para','para',{'style':'terp_default_8'})) or removeParentNode('font')]]</font>
</para>
</td>
<td>
<para style="P17"><font face="Helvetica" color="white">[[ '..'*h['level'] ]]</font>[[ h['rule_category'] ]]<font face="Helvetica">[[ h['level']!=0 and ( setTag('para','para',{'style':'terp_default_8'})) or removeParentNode('font') ]]</font></para>
</td>
<td>
<para style="P6">[[ formatLang(h['total']) ]] [[o.company_id and o.company_id.currency_id.symbol or '']] <font face="Helvetica" size="8.0">[[ h['level']==0 and ( setTag('para','para',{'style':'terp_default_10'})) or removeParentNode('font') ]]</font></para>
</td>
</tr>
</blockTable>
</section>
<para style="P7">
<font color="white"> </font>
</para>
<blockTable colWidths="269.0,269.0" style="Table13">
<tr>
<td>
<para style="P5">
<font color="white"> </font>
</para>
</td>
<td>
<para style="P12">
<font color="white"> </font>
</para>
<para style="P12">
<font color="white"> </font>
</para>
<para style="P12">
<font color="white"> </font>
</para>
<para style="P12">Authorized Signature </para>
</td>
</tr>
</blockTable>
<para style="P4">
<font color="white"> </font>
</para>
</story>
</document>
@@ -0,0 +1,3 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_hr_salary_head","hr.salary.head","model_hr_salary_head","base.group_hr_user",1,1,1,1
"access_hr_salary_rule","hr.salary.rule","model_hr_salary_rule","base.group_hr_user",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_hr_salary_head hr.salary.head model_hr_salary_head base.group_hr_user 1 1 1 1
3 access_hr_salary_rule hr.salary.rule model_hr_salary_rule base.group_hr_user 1 1 1 1