Skip to Content
Menu
This question has been flagged
1 Odpoveď
5273 Zobrazenia

Hello there,

Recently I'm trying to figuring out how Odoo Payroll works. Later then, I'm having an issue where I can't compute my payslip, it says that I submitting a wrong code in my Salary Rules

so here's my code

if contract.wage <= 50000000:
result = -(contract.wage * 0.05)
else:
result = -(contract.wage * 0.15)

I don't really know if it's the right code for If-Else statement haha. I really appreciate any kind of help from you guys, thank you

Avatar
Zrušiť
Best Answer

Am just answering for If-Else statement,

result = 0.00
if contract.wage <= 50000000:
    result = -(contract.wage * 0.05)
else:
    result = -(contract.wage * 0.15)
You should declare the variable result before accessing it and the computation should come inside with an indent spacing in If-Else statement(Python)
Let me know if it doesn't work, then your having an issue in your salary rule logic.
Avatar
Zrušiť
Autor

Hello Karthikeyan :D

First of all, I want to thank you for your time and answer but unfortunately, the code still gave me the same error.

However, I already find a way by splitting that rule into two (Rules AB → Rules A, Rules B) and adding the python code in the Condition section.

So the code for each rule be like:

Rules A (https://prnt.sc/zlo697)

*Condition: result = contract.wage > 50000000

*Computation: result = - (contract.wage * 0.15)

Rules B (https://prnt.sc/zlodok)

*Condition: result = contract.wage <= 50000000

*Computation: result = - (contract.wage * 0.05)

Once again, thank you for your answer Karthikeyan and I hope our answer could help other community members or anyone else :D

Related Posts Replies Zobrazenia Aktivita
1
aug 19
7602
1
máj 25
1178
1
mar 25
1231
0
feb 25
1461
1
dec 24
1908