Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
3 Odpowiedzi
6697 Widoki

Hii, I am trying to write a python expression in xml file for salary rule. My expression is multi line, so when I import and compute salary, it gives error on python expression...

Python code

unpaid = payslip.total_unpaid_leave_days 
basic = contract.wage
result = basic - (unpaid * basic/30)

xml code

<record id="hr_payroll.hr_rule_basic" model="hr.salary.rule">
<field name="name">Basic Salary</field>
<field name="sequence" eval="1"/>
<field name="code">BASIC</field>
<field name="category_id" ref="hr_payroll.BASIC"/>
<field name="condition_select">none</field>
<field name="amount_select">code</field>
<field name="amount_python_compute">unpaid = payslip.total_unpaid_leave_days basic = contract.wage result = basic - (unpaid * basic/30)</field>
</record>

I put it in one line, it did not work...How to do it here

Awatar
Odrzuć
Najlepsza odpowiedź

You can write muti line python code in salary rule in xml with proper indentation. Search for .<field name="amount_select">code</field> in your Odoo source code. you will find some example.

Awatar
Odrzuć
Najlepsza odpowiedź

Hi,

You can use directly like this:

result = contract.wage - (payslip.total_unpaid_leave_days * contract.wage/30)


Awatar
Odrzuć
Autor

This is also correct

Powiązane posty Odpowiedzi Widoki Czynność
0
lis 22
2232
2
mar 15
11476
2
lut 23
2474
0
mar 24
2064
3
lut 21
16518