Compare commits

...

2 Commits

Author SHA1 Message Date
R-Jayaraman
5121092160 test: add regression test for zero quantity Blanket Order
(cherry picked from commit d80b0f67cc)
2026-08-05 06:43:15 +00:00
R-Jayaraman
613e04745d fix: validate Blanket Order item quantity is greater than zero
(cherry picked from commit e897c4d82d)
2026-08-05 06:43:14 +00:00
2 changed files with 22 additions and 2 deletions

View File

@@ -120,8 +120,8 @@ class BlanketOrder(Document):
def validate_item_qty(self):
for d in self.items:
if flt(d.qty) < 0:
frappe.throw(_("Row {0}: Quantity cannot be negative.").format(d.idx))
if flt(d.qty) <= 0:
frappe.throw(_("Row {0}: Quantity must be greater than zero.").format(d.idx))
@frappe.whitelist()

View File

@@ -113,6 +113,26 @@ class TestBlanketOrder(FrappeTestCase):
bo = make_blanket_order(blanket_order_type="Purchasing", supplier=supplier, item_code=item_code)
self.assertEqual(bo.items[0].party_item_code, "SUPP-PART-1")
def test_blanket_order_zero_quantity(self):
bo = frappe.new_doc("Blanket Order")
bo.blanket_order_type = "Selling"
bo.company = "_Test Company"
bo.customer = "_Test Customer"
bo.from_date = today()
bo.to_date = add_months(today(), 12)
bo.append(
"items",
{
"item_code": "_Test Item",
"qty": 0,
"rate": 100,
},
)
with self.assertRaises(frappe.ValidationError):
bo.insert()
def make_blanket_order(**args):
args = frappe._dict(args)