Skip to content

Commit 91ae5b1

Browse files
[IMP] util.hr_payroll: ensure salary rule neutralization on removal
1 parent b704ffa commit 91ae5b1

1 file changed

Lines changed: 18 additions & 2 deletions

File tree

src/util/hr_payroll.py

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,22 @@
77
_logger = logging.getLogger(__name__)
88

99

10+
def _neutralize_rule(cr, xmlid):
11+
rid = ref(cr, xmlid)
12+
cr.execute(
13+
"""
14+
UPDATE hr_salary_rule
15+
SET condition_select = 'python',
16+
condition_python = 'result = False',
17+
amount_select = 'fix',
18+
amount_fix = 0.0
19+
WHERE id = %s
20+
""",
21+
[rid],
22+
)
23+
delete_unused(cr, xmlid, deactivate=True)
24+
25+
1026
def _remove_salary_rule(cr, xmlid):
1127
rid = ref(cr, xmlid)
1228
cr.execute(
@@ -40,12 +56,12 @@ def _remove_salary_rule(cr, xmlid):
4056
xmlid,
4157
)
4258
remove_field(cr, "hr.payroll.report", fname)
43-
delete_unused(cr, xmlid, deactivate=True)
59+
_neutralize_rule(cr, xmlid)
4460

4561

4662
if not version_between("16.0", "saas~18.4"):
4763

4864
def remove_salary_rule(cr, xmlid):
49-
delete_unused(cr, xmlid, deactivate=True)
65+
_neutralize_rule(cr, xmlid)
5066
else:
5167
remove_salary_rule = _remove_salary_rule

0 commit comments

Comments
 (0)