Rebonjour ![]()
Suite à notre mise à jour V5 et notre migration de vps, la réservation/paiement ne fonctionne plus.
DĂ©jĂ , depuis le portail, ça affiche 0⏠alors que le tarif est Ă 20âŹ.
Ensuite je peux mettre au panier, ça indique bien 20⏠ici, je peux aller jusquâau moment de âpasser commandeâ, et lĂ jâai une erreur qui bloque tout.
Quand je regarde mon log dâerreurs de paiements jâai les 2 erreurs ci-dessous.
Au cas oĂč câĂ©tait lâenvoi de la notification de rĂ©servation enregistrĂ©e qui plantait et bloquait tout, jâai voulu la dĂ©sactiver mais je ne peux pas car ââImpossible de trouver Module: Venueâ.
Voici les erreurs du log, svp avez-vous des idées ? Encore merci ![]()
Titre : âč SalesOrderItem âș object has no attribute âč item_booking âș
Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
e = 'SalesOrderItem' object has no attribute 'item_booking'
title = ''SalesOrderItem' object has no attribute 'item_booking''
File "apps/frappe/frappe/utils/safe_block_eval.py", line 44, in safe_block_eval
return frappe.safe_eval(code, _globals, _locals)
code = 'doc.order_type == "Shopping Cart" and any(item.item_booking for item in doc.items)'
_globals = None
_locals = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
output_var = None
kwargs = {}
File "apps/frappe/frappe/utils/__init__.py", line 1181, in safe_eval
return safe_eval(code, eval_globals, eval_locals)
code = 'doc.order_type == "Shopping Cart" and any(item.item_booking for item in doc.items)'
eval_globals = None
eval_locals = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
safe_eval = <function safe_eval at 0x779a9ffb1220>
File "apps/frappe/frappe/utils/safe_exec.py", line 156, in safe_eval
return eval(_compile_code(code, filename="<safe_eval>", mode="eval"), eval_globals, eval_locals)
code = 'doc.order_type == "Shopping Cart" and any(item.item_booking for item in doc.items)'
eval_globals = {'__builtins__': {}, 'int': <class 'int'>, 'float': <class 'float'>, 'long': <class 'int'>, 'round': <built-in function round>, 'any': <built-in function any>, '_getattr_': <function _get_attr_for_eval at 0x779a9ffb3110>, '_getitem_': <function _getitem at 0x779a9ffb2fb0>, '_getiter_': <built-in function iter>, '_iter_unpack_sequence_': <function guarded_iter_unpack_sequence at 0x779a9ff6e770>, '_inplacevar_': <function protected_inplacevar at 0x779a9ffa2560>}
eval_locals = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
unicodedata = <module 'unicodedata' (built-in)>
File "<safe_eval>", line 1, in <module>
doc = Sales Order (STREAM-ORD-2026-0026)
nowdate = <function nowdate at 0x779aa5264eb0>
frappe = frappe.utils.safe_exec.NamespaceDict{'flags': frappe.types.frappedict._dict{}, 'format': <function format_value at 0x779aa39aa4b0>, 'format_value': <function format_value at 0x779aa39aa4b0>, 'date_format': 'dd/mm/yyyy', 'time_format': 'HH:mm', 'number_format': # ###,##, 'format_date': <function global_date_format at 0x779aa5268bf0>, 'form_dict': frappe.types.frappedict._dict{'cmd': 'webshop.webshop.shopping_cart.cart.place_order'}, 'bold': <function bold at 0x779aa52745c0>, 'errprint': <function errprint at 0x779aa530f1c0>, 'qb': frappe.utils.local.MariaDB, 'get_meta': <function get_meta at 0x779aa3b0ac40>, 'get_doc': <function get_doc at 0x779aa3aa6980>, 'get_last_doc': <function get_las... make_patch_request at 0x779aa1386cf0>, 'make_delete_request': <function make_delete_request at 0x779aa1386e50>, 'enqueue': <function safe_enqueue at 0x779a9ffb26c0>, 'is_job_queued': <function is_job_queued at 0x779a9ffb2610>, 'redirect_to_message': <function redirect_to_message at 0x779aa46f8040>}
File "<safe_eval>", line 1, in <genexpr>
.0 = list_iterator()
item = Sales Order Item (0cuu36pgcf)
File "apps/frappe/frappe/utils/safe_exec.py", line 776, in _get_attr_for_eval
return getattr(object, name) if default is ARGUMENT_NOT_SET else getattr(object, name, default)
object = Sales Order Item (0cuu36pgcf)
name = 'item_booking'
default = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking'
et une autre,
Titre : Error
Traceback with variables (most recent call last):
File "apps/webshop/webshop/webshop/shopping_cart/cart.py", line 288, in place_order
sales_order.submit()
quotation_name = None
quotation = Quotation (SAL-QTN-2026-00029)
cart_settings = Webshop Settings (Webshop Settings)
_make_sales_order = <function _make_sales_order at 0x779a9cf3b060>
sales_order = Sales Order (STREAM-ORD-2026-0026)
item = Sales Order Item (0cuu36pgcf)
is_stock_item = 0
File "apps/frappe/frappe/utils/typing_validations.py", line 48, in wrapper
return func(*args, **kwargs)
args = (Sales Order (STREAM-ORD-2026-0026))
kwargs = {}
app = 'frappe'
apply_condition = <function _in_request_or_test at 0x779aa530f950>
force_types = True
func = <function Document.submit at 0x779aa3aaea30>
File "apps/frappe/frappe/model/document.py", line 1692, in submit
return self._submit()
self = Sales Order (STREAM-ORD-2026-0026)
File "apps/frappe/frappe/model/document.py", line 1673, in _submit
return self.save()
self = Sales Order (STREAM-ORD-2026-0026)
File "apps/frappe/frappe/model/document.py", line 723, in save
return self._save(*args, **kwargs)
self = Sales Order (STREAM-ORD-2026-0026)
args = ()
kwargs = {}
File "apps/frappe/frappe/model/document.py", line 793, in _save
self.run_post_save_methods()
self = Sales Order (STREAM-ORD-2026-0026)
ignore_permissions = None
ignore_version = None
File "apps/frappe/frappe/model/document.py", line 1800, in run_post_save_methods
self.run_method("on_submit")
self = Sales Order (STREAM-ORD-2026-0026)
File "apps/frappe/frappe/model/document.py", line 1608, in run_method
self.run_notifications(method)
self = Sales Order (STREAM-ORD-2026-0026)
method = 'on_submit'
args = ()
kwargs = {}
fn = <function Document.run_method.<locals>.fn at 0x779a9c8e8880>
out = None
File "apps/frappe/frappe/model/document.py", line 1666, in run_notifications
_evaluate_alert(alert)
self = Sales Order (STREAM-ORD-2026-0026)
method = 'on_submit'
_get_notifications = <function Document.run_notifications.<locals>._get_notifications at 0x779a9c8eb690>
notifications = [frappe.types.frappedict._dict{'name': 'Réservation Enregistrée', 'event': 'Submit', 'method': None}, frappe.types.frappedict._dict{'name': 'Nouvelle Réservation de Ressource', 'event': 'Submit', 'method': None}]
_evaluate_alert = <function Document.run_notifications.<locals>._evaluate_alert at 0x779a9c8e8d50>
event_map = {'on_update': 'Save', 'after_insert': 'New', 'on_submit': 'Submit', 'on_cancel': 'Cancel', 'on_change': 'Value Change'}
alert = {'name': 'Réservation Enregistrée', 'event': 'Submit', 'method': None}
event = 'Submit'
evaluate_alert = <function evaluate_alert at 0x779a9d543740>
File "apps/frappe/frappe/model/document.py", line 1650, in _evaluate_alert
evaluate_alert(self, alert.name, alert.event)
alert = {'name': 'Réservation Enregistrée', 'event': 'Submit', 'method': None}
evaluate_alert = <function evaluate_alert at 0x779a9d543740>
self = Sales Order (STREAM-ORD-2026-0026)
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 873, in evaluate_alert
frappe.throw(msg, title=_("Error in Notification"))
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
message = 'Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepco......
File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking''
title = ''SalesOrderItem' object has no attribute 'item_booking''
msg = '<details><summary>'SalesOrderItem' object has no attribute 'item_booking'</summary>Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
... File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking'</details>'
File "apps/frappe/frappe/utils/messages.py", line 159, in throw
msgprint(
msg = '<details><summary>'SalesOrderItem' object has no attribute 'item_booking'</summary>Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
... File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking'</details>'
exc = frappe.exceptions.ValidationError
title = 'Erreur dans la notification'
is_minimizable = False
wide = False
as_list = False
primary_action = None
allow_dangerous_html = False
File "apps/frappe/frappe/utils/messages.py", line 118, in msgprint
_raise_exception()
msg = '<details><summary>'SalesOrderItem' object has no attribute 'item_booking'</summary>Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
... File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking'</details>'
title = 'Erreur dans la notification'
raise_exception = frappe.exceptions.ValidationError
as_table = False
as_list = False
indicator = 'red'
alert = False
primary_action = None
is_minimizable = False
wide = False
realtime = False
allow_dangerous_html = False
clean_html = <function clean_html at 0x779aa52752d0>
_raise_exception = <function msgprint.<locals>._raise_exception at 0x779a9c8e85c0>
inspect = <module 'inspect' from '/usr/lib/python3.14/inspect.py'>
out = {'message': '\'SalesOrderItem\' object has no attribute \'item_booking\'Traceback with variables (most recent call last):\n File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert\n if not safe_block_eval(alert.condition, None, context):\n doc = Sales Order (STREAM-ORD-2026-0026)\n alert = Notification (Réservation Enregistrée)\n event = \'Submit\'\n TemplateError = jinja2.exceptions.TemplateError\n context = Traceback (most recent call last):\n ...traceback_with_variables internal stacks...\n File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer\n v = deepcopy(v)\n ... container or iterable\n \nbuiltins.AttributeError: \'SalesOrderItem\' object has no attribute \'item_booking\'', 'as_table': False, 'title': 'Erreur dans la notification', 'indicator': 'red', 'raise_exception': 1, '__frappe_exc_id': '989c2315de08ffc463685487cc65db11fa176fba15dd90792a0576d6'}
File "apps/frappe/frappe/utils/messages.py", line 59, in _raise_exception
raise exc
exc = <details><summary>'SalesOrderItem' object has no attribute 'item_booking'</summary>Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
... File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking'</details>
inspect = <module 'inspect' from '/usr/lib/python3.14/inspect.py'>
msg = '<details><summary>'SalesOrderItem' object has no attribute 'item_booking'</summary>Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
... File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking'</details>'
out = {'message': '\'SalesOrderItem\' object has no attribute \'item_booking\'Traceback with variables (most recent call last):\n File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert\n if not safe_block_eval(alert.condition, None, context):\n doc = Sales Order (STREAM-ORD-2026-0026)\n alert = Notification (Réservation Enregistrée)\n event = \'Submit\'\n TemplateError = jinja2.exceptions.TemplateError\n context = Traceback (most recent call last):\n ...traceback_with_variables internal stacks...\n File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer\n v = deepcopy(v)\n ... container or iterable\n \nbuiltins.AttributeError: \'SalesOrderItem\' object has no attribute \'item_booking\'', 'as_table': False, 'title': 'Erreur dans la notification', 'indicator': 'red', 'raise_exception': 1, '__frappe_exc_id': '989c2315de08ffc463685487cc65db11fa176fba15dd90792a0576d6'}
raise_exception = frappe.exceptions.ValidationError
frappe.exceptions.ValidationError: <details><summary>'SalesOrderItem' object has no attribute 'item_booking'</summary>Traceback with variables (most recent call last):
File "apps/frappe/frappe/email/doctype/notification/notification.py", line 833, in evaluate_alert
if not safe_block_eval(alert.condition, None, context):
doc = Sales Order (STREAM-ORD-2026-0026)
alert = Notification (Réservation Enregistrée)
event = 'Submit'
TemplateError = jinja2.exceptions.TemplateError
context = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
e = 'SalesOrderItem' object has no attribute 'item_booking'
title = ''SalesOrderItem' object has no attribute 'item_booking''
File "apps/frappe/frappe/utils/safe_block_eval.py", line 44, in safe_block_eval
return frappe.safe_eval(code, _globals, _locals)
code = 'doc.order_type == "Shopping Cart" and any(item.item_booking for item in doc.items)'
_globals = None
_locals = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
output_var = None
kwargs = {}
File "apps/frappe/frappe/utils/__init__.py", line 1181, in safe_eval
return safe_eval(code, eval_globals, eval_locals)
code = 'doc.order_type == "Shopping Cart" and any(item.item_booking for item in doc.items)'
eval_globals = None
eval_locals = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
safe_eval = <function safe_eval at 0x779a9ffb1220>
File "apps/frappe/frappe/utils/safe_exec.py", line 156, in safe_eval
return eval(_compile_code(code, filename="<safe_eval>", mode="eval"), eval_globals, eval_locals)
code = 'doc.order_type == "Shopping Cart" and any(item.item_booking for item in doc.items)'
eval_globals = {'__builtins__': {}, 'int': <class 'int'>, 'float': <class 'float'>, 'long': <class 'int'>, 'round': <built-in function round>, 'any': <built-in function any>, '_getattr_': <function _get_attr_for_eval at 0x779a9ffb3110>, '_getitem_': <function _getitem at 0x779a9ffb2fb0>, '_getiter_': <built-in function iter>, '_iter_unpack_sequence_': <function guarded_iter_unpack_sequence at 0x779a9ff6e770>, '_inplacevar_': <function protected_inplacevar at 0x779a9ffa2560>}
eval_locals = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 372, in dict_printer
v = deepcopy(v)
File "/usr/lib/python3.14/copy.py", line 131, in deepcopy
y = copier(x, memo)
File "/usr/lib/python3.14/copy.py", line 202, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
~~~~~~~~^^^^^^^^^^^^^
File "/usr/lib/python3.14/copy.py", line 138, in deepcopy
y = copier(memo)
File "apps/frappe/frappe/utils/safe_exec.py", line 63, in default_function
raise AttributeError(f"module has no attribute '{key}'")
AttributeError: module has no attribute '__deepcopy__'
unicodedata = <module 'unicodedata' (built-in)>
File "<safe_eval>", line 1, in <module>
doc = Sales Order (STREAM-ORD-2026-0026)
nowdate = <function nowdate at 0x779aa5264eb0>
frappe = frappe.utils.safe_exec.NamespaceDict{'flags': frappe.types.frappedict._dict{}, 'format': <function format_value at 0x779aa39aa4b0>, 'format_value': <function format_value at 0x779aa39aa4b0>, 'date_format': 'dd/mm/yyyy', 'time_format': 'HH:mm', 'number_format': # ###,##, 'format_date': <function global_date_format at 0x779aa5268bf0>, 'form_dict': frappe.types.frappedict._dict{'cmd': 'webshop.webshop.shopping_cart.cart.place_order'}, 'bold': <function bold at 0x779aa52745c0>, 'errprint': <function errprint at 0x779aa530f1c0>, 'qb': frappe.utils.local.MariaDB, 'get_meta': <function get_meta at 0x779aa3b0ac40>, 'get_doc': <function get_doc at 0x779aa3aa6980>, 'get_last_doc': <function get_las... make_patch_request at 0x779aa1386cf0>, 'make_delete_request': <function make_delete_request at 0x779aa1386e50>, 'enqueue': <function safe_enqueue at 0x779a9ffb26c0>, 'is_job_queued': <function is_job_queued at 0x779a9ffb2610>, 'redirect_to_message': <function redirect_to_message at 0x779aa46f8040>}
File "<safe_eval>", line 1, in <genexpr>
.0 = list_iterator()
item = Sales Order Item (0cuu36pgcf)
File "apps/frappe/frappe/utils/safe_exec.py", line 776, in _get_attr_for_eval
return getattr(object, name) if default is ARGUMENT_NOT_SET else getattr(object, name, default)
object = Sales Order Item (0cuu36pgcf)
name = 'item_booking'
default = <exception while printing> Traceback (most recent call last):
...traceback_with_variables internal stacks...
File "apps/frappe/frappe/utils/__init__.py", line 374, in dict_printer
if key in v:
^^^^^^^^
TypeError: argument of type 'object' is not a container or iterable
builtins.AttributeError: 'SalesOrderItem' object has no attribute 'item_booking'</details>
Florent

