Fixes related to department tree
diff --git a/erpnext/hr/doctype/department/department.py b/erpnext/hr/doctype/department/department.py
index 99a9b85..063ed05 100644
--- a/erpnext/hr/doctype/department/department.py
+++ b/erpnext/hr/doctype/department/department.py
@@ -4,7 +4,7 @@
 from __future__ import unicode_literals
 import frappe
 from frappe import _
-from frappe.utils.nestedset import NestedSet
+from frappe.utils.nestedset import NestedSet, get_root_of
 from erpnext.utilities.transaction_base import delete_events
 from frappe.model.document import Document
 
@@ -12,16 +12,17 @@
 	nsm_parent_field = 'parent_department'
 
 	def autoname(self):
-		if not self.department_name==_("All Departments"):
+		if self.department_name != get_root_of("Department"):
 			abbr = frappe.db.get_value('Company', self.company, 'abbr')
 			self.name = '{0} - {1}'.format(self.department_name, abbr)
 		else:
 			self.name = self.department_name
 
 	def validate(self):
-		if not self.parent_department and self.department_name != _("All Departments") \
-			and frappe.db.exists("Department", _("All Departments")):
-				self.parent_department = _("All Departments")
+		if not self.parent_department:
+			root = get_root_of("Department")
+			if root:
+				self.parent_department = root
 
 	def update_nsm_model(self):
 		frappe.utils.nestedset.update_nsm(self)
@@ -40,7 +41,7 @@
 def get_children(doctype, parent=None, company=None, is_root=False):
 	condition = ''
 	if company == parent:
-		condition = 'name="All Departments"'
+		condition = "name='%s'".format(get_root_of("Department"))
 	elif company:
 		condition = "parent_department='{0}' and company='{1}'".format(parent, company)
 	else:
diff --git a/erpnext/patches/v11_0/create_department_records_for_each_company.py b/erpnext/patches/v11_0/create_department_records_for_each_company.py
index 4210c01..a5b76e9 100644
--- a/erpnext/patches/v11_0/create_department_records_for_each_company.py
+++ b/erpnext/patches/v11_0/create_department_records_for_each_company.py
@@ -1,4 +1,5 @@
 import frappe
+from frappe import _
 from frappe.utils.nestedset import rebuild_tree
 
 def execute():
@@ -15,7 +16,7 @@
 
 	for department in departments:
 		# skip root node
-		if department.name == "All Departments":
+		if department.name == _("All Departments"):
 			continue
 
 		# for each company, create a copy of the doc
diff --git a/erpnext/patches/v11_0/update_department_lft_rgt.py b/erpnext/patches/v11_0/update_department_lft_rgt.py
index 9bb1772..533055a 100644
--- a/erpnext/patches/v11_0/update_department_lft_rgt.py
+++ b/erpnext/patches/v11_0/update_department_lft_rgt.py
@@ -7,11 +7,13 @@
 	frappe.reload_doc("hr", "doctype", "department")
 
 	if not frappe.db.exists("Department", _('All Departments')):
-		frappe.get_doc({
+		dept = frappe.get_doc({
 			'doctype': 'Department',
 			'department_name': _('All Departments'),
 			'is_group': 1
-		}).insert(ignore_permissions=True)
+		})
+		dept.flags.ignore_validate=True
+		dept.insert(ignore_permissions=True)
 
 	frappe.db.sql("""update `tabDepartment` set parent_department = '{0}'
 		where is_group = 0""".format(_('All Departments')))