diff --git a/erpnext/selling/doctype/sales_order/sales_order.json b/erpnext/selling/doctype/sales_order/sales_order.json index 1542721d117..4bbdb20d311 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.json +++ b/erpnext/selling/doctype/sales_order/sales_order.json @@ -1484,9 +1484,9 @@ }, { "default": "0", + "depends_on": "eval:doc.order_type == 'Maintenance';", "fieldname": "skip_delivery_note", "fieldtype": "Check", - "hidden": 1, "hide_days": 1, "hide_seconds": 1, "label": "Skip Delivery Note", @@ -1671,7 +1671,7 @@ "idx": 105, "is_submittable": 1, "links": [], - "modified": "2025-07-28 12:14:29.760988", + "modified": "2026-02-06 11:06:16.092658", "modified_by": "Administrator", "module": "Selling", "name": "Sales Order", diff --git a/erpnext/selling/doctype/sales_order/test_sales_order.py b/erpnext/selling/doctype/sales_order/test_sales_order.py index 13759d0f7f7..d38473e4b69 100644 --- a/erpnext/selling/doctype/sales_order/test_sales_order.py +++ b/erpnext/selling/doctype/sales_order/test_sales_order.py @@ -57,6 +57,28 @@ class TestSalesOrder(AccountsTestMixin, FrappeTestCase): def tearDown(self): frappe.set_user("Administrator") + def test_sales_order_skip_delivery_note(self): + so = make_sales_order(do_not_submit=True) + so.order_type = "Maintenance" + so.skip_delivery_note = 1 + so.append( + "items", + { + "item_code": "_Test Item 2", + "qty": 2, + "rate": 100, + }, + ) + so.save() + so.submit() + + so.reload() + si = make_sales_invoice(so.name) + si.insert() + si.submit() + so.reload() + self.assertEqual(so.status, "Completed") + @change_settings("Selling Settings", {"allow_negative_rates_for_items": 1}) def test_sales_order_with_negative_rate(self): """