Fixed merge conflict
diff --git a/erpnext/controllers/status_updater.py b/erpnext/controllers/status_updater.py
index ccbf377..968e6b8 100644
--- a/erpnext/controllers/status_updater.py
+++ b/erpnext/controllers/status_updater.py
@@ -301,12 +301,7 @@
 			ref_doc = frappe.get_doc(ref_dt, ref_dn)
 
 			ref_doc.db_set("per_billed", per_billed)
-
-			if frappe.get_meta(ref_dt).get_field("billing_status"):
-				if per_billed < 0.001: billing_status = "Not Billed"
-				elif per_billed >= 99.99: billing_status = "Fully Billed"
-				else: billing_status = "Partly Billed"
-				ref_doc.db_set('billing_status', billing_status)
+			ref_doc.set_status(update=True)
 
 def get_tolerance_for(item_code, item_tolerance={}, global_tolerance=None):
 	"""
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 3f19f92..d9ef272 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -319,3 +319,4 @@
 execute:frappe.db.sql("delete from `tabTimesheet Detail` where NOT EXISTS (select name from `tabTimesheet` where name = `tabTimesheet Detail`.parent)")
 erpnext.patches.v7_0.update_mode_of_payment_type
 finally:erpnext.patches.v7_0.update_timesheet_communications
+erpnext.patches.v7_0.update_status_of_zero_amount_sales_order
diff --git a/erpnext/patches/v7_0/update_status_of_zero_amount_sales_order.py b/erpnext/patches/v7_0/update_status_of_zero_amount_sales_order.py
new file mode 100644
index 0000000..9b2b247
--- /dev/null
+++ b/erpnext/patches/v7_0/update_status_of_zero_amount_sales_order.py
@@ -0,0 +1,7 @@
+from __future__ import unicode_literals
+import frappe
+
+def execute():
+	for data in frappe.get_all('Sales Order', fields = ["name"], filters = [["docstatus", "=", "1"], ["grand_total", "=", "0"]]):
+		sales_order = frappe.get_doc('Sales Order', data.name)
+		sales_order.set_status(update=True, update_modified = False)
\ No newline at end of file