From fe9ae2a9eab4b9549c315b2ca13059493738379f 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 9d3a77bb5a7..2519d0d2c3c 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -580,7 +580,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 690f009718e66ef097f626bc3496647fcd3891bc 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 2519d0d2c3c..f4d8dd787d6 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -580,9 +580,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 3bb6da5e5dc17a467c9410a0b4bdf02abedf891a 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 f4d8dd787d6..ee51172edce 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -581,10 +581,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