Fixes in merge functions
diff --git a/accounts/doctype/account/account.py b/accounts/doctype/account/account.py
index cae2028..0640ad9 100644
--- a/accounts/doctype/account/account.py
+++ b/accounts/doctype/account/account.py
@@ -211,6 +211,9 @@
# Validate properties before merging
if merge:
+ if not webnotes.conn.exists("Account", new):
+ webnotes.throw(_("Account ") + new +_(" does not exists"))
+
val = list(webnotes.conn.get_value("Account", new_account,
["group_or_ledger", "debit_or_credit", "is_pl_account"]))
diff --git a/stock/doctype/item/item.py b/stock/doctype/item/item.py
index 01f1d9f..8dbfef7 100644
--- a/stock/doctype/item/item.py
+++ b/stock/doctype/item/item.py
@@ -246,6 +246,9 @@
def before_rename(self, olddn, newdn, merge=False):
if merge:
# Validate properties before merging
+ if not webnotes.conn.exists("Item", newdn):
+ webnotes.throw(_("Item ") + newdn +_(" does not exists"))
+
field_list = ["stock_uom", "is_stock_item", "has_serial_no", "has_batch_no"]
new_properties = [cstr(d) for d in webnotes.conn.get_value("Item", newdn, field_list)]
if new_properties != [cstr(self.doc.fields[fld]) for fld in field_list]:
diff --git a/stock/doctype/warehouse/warehouse.py b/stock/doctype/warehouse/warehouse.py
index 3559960..8b1b5b5 100644
--- a/stock/doctype/warehouse/warehouse.py
+++ b/stock/doctype/warehouse/warehouse.py
@@ -84,6 +84,9 @@
new_warehouse = get_name_with_abbr(newdn, self.doc.company)
if merge:
+ if not webnotes.conn.exists("Warehouse", newdn):
+ webnotes.throw(_("Warehouse ") + newdn +_(" does not exists"))
+
if self.doc.company != webnotes.conn.get_value("Warehouse", new_warehouse, "company"):
webnotes.throw(_("Both Warehouse must belong to same Company"))