Merge pull request #5833 from nabinhait/fix_108
Validate warehouse if update stock checked in Purchase Invoice
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
index b4ae7f8..176e529 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
@@ -147,6 +147,14 @@
["Purchase Receipt", "purchase_receipt", "pr_detail"]
])
+ def validate_warehouse(self):
+ if self.update_stock:
+ for d in self.get('items'):
+ if not d.warehouse:
+ frappe.throw(_("Warehouse required at Row No {0}").format(d.idx))
+
+ super(PurchaseInvoice, self).validate_warehouse()
+
def set_expense_account(self):
auto_accounting_for_stock = cint(frappe.defaults.get_global_default("auto_accounting_for_stock"))
@@ -155,6 +163,7 @@
stock_items = self.get_stock_items()
if self.update_stock:
+ self.validate_warehouse()
warehouse_account = get_warehouse_account()
for item in self.get("items"):