patch for removing the address field from company and creating address doc, fixes #9011
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 80d64e8..d833638 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -406,6 +406,7 @@
 erpnext.patches.v8_0.update_stock_qty_value_in_bom_item
 erpnext.patches.v8_0.create_domain_docs	#16-05-2017
 erpnext.patches.v8_0.update_sales_cost_in_project
+erpnext.patches.v8_0.create_address_doc_from_address_field_in_company #10-05-2017
 erpnext.patches.v8_0.save_system_settings
 erpnext.patches.v8_1.delete_deprecated_reports
 erpnext.patches.v8_1.setup_gst_india #2017-06-27
diff --git a/erpnext/patches/v8_0/create_address_doc_from_address_field_in_company.py b/erpnext/patches/v8_0/create_address_doc_from_address_field_in_company.py
new file mode 100644
index 0000000..6e24855
--- /dev/null
+++ b/erpnext/patches/v8_0/create_address_doc_from_address_field_in_company.py
@@ -0,0 +1,33 @@
+# Copyright (c) 2017, Frappe and Contributors
+# License: GNU General Public License v3. See license.txt
+
+from __future__ import unicode_literals
+import frappe
+
+def execute():
+	# new field address_html is created in place of address field for the company's address
+	# patch for moving the address details in the address doc
+	company_list = []
+	if frappe.db.sql("SHOW COLUMNS FROM `tabCompany` LIKE 'address'"):
+		company_list = frappe.db.sql('''select name, address from `tabCompany` where address is not null''', as_dict=1)
+
+	for company in company_list:
+		add_list = company.address.split(" ")
+		if ',' in company.address:
+			add_list = company.address.rpartition(',')
+		elif ' ' in company.address:
+			add_list = company.address.rpartition(' ')
+		else:
+			add_list = [company.address, None, company.address]
+
+		doc = frappe.get_doc({
+			"doctype":"Address",
+			"address_line1": add_list[0],
+			"city": add_list[2],
+			"is_your_company_address":1,
+			"links": [{
+				"link_doctype": "Company",
+				"link_name": company.name
+				}]
+			})
+		doc.save()