我必须计算三个条件的医疗假的工资单。
例如:
result = worked_days.Medical and worked_days.Medical.number_of_days or False
if(result>25):result=contract.wage-10000
elif(result<25 and result>10):reuslt=contract.wage-20000
else:result=30000`发布于 2014-04-25 06:01:00
试试看,我在空中编码。希望能帮上忙。
创建一个用于医疗的代码,就像WORK100的代码一样,而且您可以在薪资规则中访问它。就像worked_days.Medical.no_of_medical_leave_days,否则就会产生错误,就像Wrong python code.
<record id="hr_rule_medical_days" model="hr.salary.rule">
<field name="name">Medical Leave Days</field>
<field name="sequence" eval="1"/>
<field name="code">MEDICAL</field>
<field name="category_id" ref="hr_payroll.DED"/>
<field name="condition_select">none</field>
<field name="amount_select">code</field>
<field name="amount_python_compute">result = 0
days = worked_days.Medical.no_of_medical_leave_days
if days>25:
result=100000;
elif(days<25 and days>10):
result=20000;
else:
result=30000</field>
</record>并将上述id添加到hr_rule_medical_days和Salary Structure中。
https://stackoverflow.com/questions/23283855
复制相似问题