From d11597f9915f3cea6dc1e98d64b2b5b0a935cbbf Mon Sep 17 00:00:00 2001 From: Charles-Henri Decultot Date: Tue, 30 Jan 2024 15:10:20 +0100 Subject: [PATCH 1/3] fix: Skip delivery note for cart orders only if item booking --- erpnext/selling/doctype/sales_order/sales_order.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index 05d8a9a8c8c..c9907e1d3ac 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -585,7 +585,9 @@ class SalesOrder(SellingController): def set_skip_delivery_note(self): if self.order_type == "Shopping Cart" and not self.skip_delivery_note: - self.skip_delivery_note = 1 + for d in self.items: + if d.item_booking or frappe.get_cached_value("Item", d.item_code, "enable_item_booking"): + self.skip_delivery_note = 1 def validate_reserved_stock(self): """Clean reserved stock flag for non-stock Item""" -- GitLab From 6acfcee5efd60170fb6240d0994eeff7fab7408a Mon Sep 17 00:00:00 2001 From: Charles-Henri Decultot Date: Tue, 30 Jan 2024 15:12:38 +0100 Subject: [PATCH 2/3] fix: Skip delivery note only if all items are skipable --- erpnext/selling/doctype/sales_order/sales_order.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index c9907e1d3ac..b0732d08bb1 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -585,9 +585,13 @@ class SalesOrder(SellingController): def set_skip_delivery_note(self): if self.order_type == "Shopping Cart" and not self.skip_delivery_note: - for d in self.items: - if d.item_booking or frappe.get_cached_value("Item", d.item_code, "enable_item_booking"): - self.skip_delivery_note = 1 + if all( + [ + d.item_booking or frappe.get_cached_value("Item", d.item_code, "enable_item_booking") + for d in self.items + ] + ): + self.skip_delivery_note = 1 def validate_reserved_stock(self): """Clean reserved stock flag for non-stock Item""" -- GitLab From ebdbed01382c5eb2d5b9605427eed079d04b3ae6 Mon Sep 17 00:00:00 2001 From: Charles-Henri Decultot Date: Tue, 30 Jan 2024 15:14:35 +0100 Subject: [PATCH 3/3] fix: Syntax --- erpnext/selling/doctype/sales_order/sales_order.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index b0732d08bb1..8f1e55519ad 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -586,10 +586,8 @@ class SalesOrder(SellingController): def set_skip_delivery_note(self): if self.order_type == "Shopping Cart" and not self.skip_delivery_note: if all( - [ - d.item_booking or frappe.get_cached_value("Item", d.item_code, "enable_item_booking") - for d in self.items - ] + d.item_booking or frappe.get_cached_value("Item", d.item_code, "enable_item_booking") + for d in self.items ): self.skip_delivery_note = 1 -- GitLab