Skip to content

Commit

Permalink
fix: Internal Party validation fix
Browse files Browse the repository at this point in the history
  • Loading branch information
deepeshgarg007 committed Jan 21, 2021
1 parent 3f6f20b commit 71976de
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 4 deletions.
5 changes: 4 additions & 1 deletion erpnext/buying/doctype/supplier/supplier.py
Expand Up @@ -52,7 +52,10 @@ def validate(self):
self.validate_internal_supplier()

def validate_internal_supplier(self):
if self.is_internal_supplier and frappe.db.get_value("Supplier", {"represents_company": self.represents_company}, "name"):
internal_supplier = frappe.db.get_value("Supplier",
{"is_internal_supplier": 1, "represents_company": self.represents_company, "name": ("!=", self.name)}, "name")

if internal_supplier:
frappe.throw(_("Internal Supplier for company {0} already exists").format(
frappe.bold(self.represents_company)))

Expand Down
8 changes: 6 additions & 2 deletions erpnext/public/js/controllers/transaction.js
Expand Up @@ -235,7 +235,7 @@ erpnext.TransactionController = erpnext.taxes_and_totals.extend({
}
};

this.frm.trigger('set_internal_warehouses');
this.frm.trigger('set_default_internal_warehouse');

return frappe.run_serially([
() => set_value('currency', currency),
Expand Down Expand Up @@ -733,7 +733,11 @@ erpnext.TransactionController = erpnext.taxes_and_totals.extend({
this.calculate_taxes_and_totals(false);
},

set_internal_warehouses: function() {
update_stock: function() {
this.frm.trigger('set_default_internal_warehouse');
},

set_default_internal_warehouse: function() {
let me = this;
if ((this.frm.doc.doctype === 'Sales Invoice' && me.frm.doc.update_stock)
|| this.frm.doc.doctype == 'Delivery Note') {
Expand Down
5 changes: 4 additions & 1 deletion erpnext/selling/doctype/customer/customer.py
Expand Up @@ -84,7 +84,10 @@ def validate_default_bank_account(self):
frappe.throw(_("{0} is not a company bank account").format(frappe.bold(self.default_bank_account)))

def validate_internal_customer(self):
if self.is_internal_customer and frappe.db.get_value('Customer', {"represents_company": self.represents_company}, "name"):
internal_customer = frappe.db.get_value("Customer",
{"is_internal_customer": 1, "represents_company": self.represents_company, "name": ("!=", self.name)}, "name")

if internal_customer:
frappe.throw(_("Internal Customer for company {0} already exists").format(
frappe.bold(self.represents_company)))

Expand Down

0 comments on commit 71976de

Please sign in to comment.