From ee538763df6be40d2979133a9c0b332ccb436211 Mon Sep 17 00:00:00 2001 From: "Achraf (abz)" Date: Mon, 26 Dec 2022 12:11:18 +0000 Subject: [PATCH] [FIX] hr_expense: Fix IndexError in create_expense_from_attachments An `IndexError` traceback that occurs in `hr_expense_predict_product/HrExpense:_onchange_predict_product` was caught by Sentry This tuple index out of range happens because we are trying to access the first record of a recordset returned by `records.filtered()` without checking that it actually contains records. since https://github.com/odoo/enterprise/pull/34994 opw-3111577 closes odoo/odoo#108720 Enterprise: https://github.com/odoo/enterprise/pull/35232 X-original-commit: 0a74cc1175377826a0adfb52ac68286b17630894 Related: odoo/enterprise#35245 Signed-off-by: Achraf --- addons/hr_expense/models/hr_expense.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/hr_expense/models/hr_expense.py b/addons/hr_expense/models/hr_expense.py index 99c27d08c30..ba758e8b7f7 100644 --- a/addons/hr_expense/models/hr_expense.py +++ b/addons/hr_expense/models/hr_expense.py @@ -348,7 +348,7 @@ class HrExpense(models.Model): product = self.env['product.product'].search([('can_be_expensed', '=', True)]) if product: - product = product.filtered(lambda p: p.default_code == "EXP_GEN")[0] or product[0] + product = product.filtered(lambda p: p.default_code == "EXP_GEN")[:1] or product[0] else: raise UserError(_("You need to have at least one category that can be expensed in your database to proceed!"))