diff --git a/addons/hr_expense/wizard/hr_expense_sheet_register_payment.py b/addons/hr_expense/wizard/hr_expense_sheet_register_payment.py
index be9583b423c..15e6fb4b5f2 100644
--- a/addons/hr_expense/wizard/hr_expense_sheet_register_payment.py
+++ b/addons/hr_expense/wizard/hr_expense_sheet_register_payment.py
@@ -32,7 +32,11 @@ class HrExpenseSheetRegisterPaymentWizard(models.TransientModel):
partner_bank_account_id = fields.Many2one('res.partner.bank', string="Recipient Bank Account", domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]")
journal_id = fields.Many2one('account.journal', string='Payment Method', required=True, domain="[('type', 'in', ('bank', 'cash')), ('company_id', '=', company_id)]")
company_id = fields.Many2one('res.company', related='expense_sheet_id.company_id', string='Company', readonly=True)
- payment_method_id = fields.Many2one('account.payment.method', string='Payment Type', required=True)
+ payment_method_id = fields.Many2one('account.payment.method', string='Payment Type', required=True, domain="""[
+ ('payment_type', '=', 'outbound'),
+ ('id', 'in', available_payment_methods),
+ ]""")
+ available_payment_methods = fields.Many2many(related='journal_id.outbound_payment_method_ids')
amount = fields.Monetary(string='Payment Amount', required=True)
currency_id = fields.Many2one('res.currency', string='Currency', required=True, default=lambda self: self.env.company.currency_id)
payment_date = fields.Date(string='Payment Date', default=fields.Date.context_today, required=True)
@@ -80,11 +84,7 @@ class HrExpenseSheetRegisterPaymentWizard(models.TransientModel):
def _onchange_journal(self):
if self.journal_id:
# Set default payment method (we consider the first to be the default one)
- payment_methods = self.journal_id.outbound_payment_method_ids
- self.payment_method_id = payment_methods and payment_methods[0] or False
- # Set payment method domain (restrict to methods enabled for the journal and to selected payment type)
- return {'domain': {'payment_method_id': [('payment_type', '=', 'outbound'), ('id', 'in', payment_methods.ids)]}}
- return {}
+ self.payment_method_id = self.journal_id.outbound_payment_method_ids[:1]
def _get_payment_vals(self):
""" Hook for extension """
diff --git a/addons/hr_expense/wizard/hr_expense_sheet_register_payment.xml b/addons/hr_expense/wizard/hr_expense_sheet_register_payment.xml
index a64f71449af..921c0c98f22 100644
--- a/addons/hr_expense/wizard/hr_expense_sheet_register_payment.xml
+++ b/addons/hr_expense/wizard/hr_expense_sheet_register_payment.xml
@@ -16,6 +16,7 @@
+