Skip to content

Commit f983ba9

Browse files
committed
[FIX] hr_expense: Wrong journal entries
Steps to reproduce the bug: - Let's consider an expense E paid by the company - Validate E and post journal entries Bug: Two journal entries were created: 1. Account Payable (debit) / Outstanding payments (credit) as draft 2. Expense (debit) / Outstanding payments (credit) as posted instead of Expense (debit) / Account Payable (credit) as draft opw:2510663 closes odoo#71627 X-original-commit: 25ac51e Signed-off-by: William André (wan) <wan@odoo.com>
1 parent 042c95b commit f983ba9

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

addons/hr_expense/models/hr_expense.py

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -493,16 +493,10 @@ def _get_expense_account_source(self):
493493

494494
def _get_expense_account_destination(self):
495495
self.ensure_one()
496-
account_dest = self.env['account.account']
497-
if self.payment_mode == 'company_account':
498-
if not self.sheet_id.bank_journal_id.payment_credit_account_id:
499-
raise UserError(_("No Outstanding Payments Account found for the %s journal, please configure one.") % (self.sheet_id.bank_journal_id.name))
500-
account_dest = self.sheet_id.bank_journal_id.payment_credit_account_id.id
501-
else:
502-
if not self.employee_id.sudo().address_home_id:
503-
raise UserError(_("No Home Address found for the employee %s, please configure one.") % (self.employee_id.name))
504-
partner = self.employee_id.sudo().address_home_id.with_company(self.company_id)
505-
account_dest = partner.property_account_payable_id.id or partner.parent_id.property_account_payable_id.id
496+
if not self.employee_id.sudo().address_home_id:
497+
raise UserError(_("No Home Address found for the employee %s, please configure one.") % (self.employee_id.name))
498+
partner = self.employee_id.sudo().address_home_id.with_company(self.company_id)
499+
account_dest = partner.property_account_payable_id.id or partner.parent_id.property_account_payable_id.id
506500
return account_dest
507501

508502
def _get_account_move_line_values(self):
@@ -619,8 +613,11 @@ def action_move_create(self):
619613
expense.sheet_id.paid_expense_sheets()
620614

621615
# post the moves
622-
for move in move_group_by_sheet.values():
623-
move._post()
616+
for expense in self:
617+
if not expense.payment_mode == 'company_account':
618+
for move in move_group_by_sheet[expense.sheet_id.id]:
619+
if move.state != 'posted':
620+
move._post()
624621

625622
return move_group_by_sheet
626623

0 commit comments

Comments
 (0)