From dfadc5b62bac67f4c1382e00d93b7a3464c32089 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sat, 23 Dec 2023 18:50:58 +0100 Subject: [PATCH] Do not fail to get keyword action with empty record id Closes #12767 --- trytond/trytond/ir/action.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/trytond/trytond/ir/action.py b/trytond/trytond/ir/action.py index 0c3dc16ff1..de947d60b9 100644 --- a/trytond/trytond/ir/action.py +++ b/trytond/trytond/ir/action.py @@ -265,7 +265,7 @@ class ActionKeyword(ModelSQL, ModelView): if keywords is not None: return keywords keywords = [] - model, model_id = value + model, record_id = value clause = [ ('keyword', '=', keyword), @@ -274,12 +274,12 @@ class ActionKeyword(ModelSQL, ModelView): ('model', '=', None), ], ] - if model_id >= 0: + if record_id is not None and record_id >= 0: clause = ['OR', clause, [ ('keyword', '=', keyword), - ('model', '=', model + ',' + str(model_id)), + ('model', '=', model + ',' + str(record_id)), ], ] clause = [clause, ('action.active', '=', True)] @@ -297,8 +297,9 @@ class ActionKeyword(ModelSQL, ModelView): continue value['keyword'] = keyword keywords.append(value) - if keyword == 'tree_open' and model == Menu.__name__: - menu = Menu(model_id) + if (record_id is not None + and keyword == 'tree_open' and model == Menu.__name__): + menu = Menu(record_id) for value in keywords: if value['type'] == 'ir.action.act_window': if len(keywords) == 1: