'child_depend':fields.boolean('Children Rule'),
'child_ids':fields.one2many('hr.salary.rule', 'sal_rule_id', 'Child Salary Sructure'),
'company_id':fields.many2one('res.company', 'Company', required=False),
- 'register_id':fields.many2one('hr.contibution.register', 'Contri Reg', select=True),
+ 'register_id':fields.property(
+ 'hr.contibution.register',
+ type='many2one',
+ relation='hr.contibution.register',
+ string="Contribution Register",
+ method=True,
+ view_load=True,
+ help="Contribution register based on company",
+ required=False
+ ),
+ 'gratuity':fields.boolean('Use for Gratuity ?', required=False),
'computational_expression':fields.text('Computational Expression', required=True, readonly=False, help='This will use to computer the % fields values, in general its on basic, but You can use all heads code field in small letter as a variable name i.e. hra, ma, lta, etc...., also you can use, static varible basic'),
'conditions':fields.char('Condition', size=1024, required=True, readonly=False, help='Applied this head for calculation if condition is true'),
'sequence': fields.integer('Sequence', required=True, help='Use to arrange calculation sequence'),
+ 'active':fields.boolean('Active', required=False),
}
_defaults = {
- 'conditions': lambda *a: 'True',
- 'computational_expression': lambda *a:'basic',
- 'sequence': lambda *a:5,
-# 'computation_based':'rules',
- 'appears_on_payslip': 1
+ 'conditions': 'True',
+ 'computational_expression': 'basic',
+ 'sequence': 5,
+ 'appears_on_payslip': True,
+ 'active': True,
}
hr_salary_rule()
<group col="6" colspan="6">
<field name="name"/>
<field name="code" select="1"/>
+ <field name="active"/>
+ <field name="sequence" />
+ <field name="company_id"/>
<field name="appears_on_payslip"/>
- <field name="condition_range_min"/>
- <field name="condition_range_max"/>
</group>
<group col="6" colspan="6">
- <group col="2" colspan="2">
- <separator colspan="4" string="Calculations"/>
- <field name="category_id" on_change="onchange_category(category_id)"/>
- <field name="type"/>
- <field name="amount_type"/>
- <field name="amount" on_change="onchange_amount(amount, amount_type)" attrs="{'readonly':[('amount_type','=','func')]}"/>
- <field name="sequence" />
- <field name="conditions"/>
- </group>
- <group col="2" colspan="4">
- <separator colspan="4" string="Computational Expression"/>
- <field name="computational_expression" colspan="4" nolabel="1"/>
- </group>
+ <group col="2" colspan="2">
+ <separator colspan="4" string="Calculations"/>
+ <field name="category_id" on_change="onchange_category(category_id)"/>
+ <field name="type"/>
+ <field name="amount_type"/>
+ <field name="condition_range_min"/>
+ <field name="condition_range_max"/>
+ <field name="amount" on_change="onchange_amount(amount, amount_type)" attrs="{'readonly':[('amount_type','=','func')]}"/>
+
+ <field name="conditions"/>
+ </group>
+ <group col="2" colspan="2">
+ <group col="2" colspan="2">
+ <separator colspan="4" string="Company contribution"/>
+ <field name="register_id"/>
+ <field name="company_contrib"/>
+ </group>
+ <group col="2" colspan="4">
+ <separator colspan="4" string="Computational Expression"/>
+ <field name="computational_expression" colspan="4" nolabel="1"/>
+ </group>
+ </group>
</group>
<notebook colspan="4">
<page string="Child Rules" groups="base.group_extended">
<field name="child_depend"/>
<field colspan="4" name="child_ids" nolabel="1"/>
</page>
- <page string="Company contribution">
- <separator colspan="4" string="Company contribution"/>
- <group col="2" colspan="2">
- <field name="company_id"/>
- <field name="company_contrib"/>
- <field name="register_id" string="Contribution Register"/>
- </group>
- </page>
<page string="Description">
<separator colspan="4" string="Description"/>
<field name="note" colspan="4" nolabel="1"/>