diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index b90db05..4da7a72 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -19,7 +19,8 @@
 	get_link_to_form,
 	getdate,
 	nowdate,
-	today,
+	now,
+	today
 )
 from six import text_type
 
@@ -811,6 +812,52 @@
 			if frappe.db.get_single_value('Accounts Settings', 'unlink_advance_payment_on_cancelation_of_order'):
 				unlink_ref_doc_from_payment_entries(self)
 
+			if self.doctype == "Sales Order":
+				self.unlink_ref_doc_from_po()
+
+	def unlink_ref_doc_from_po(self):
+		print("\n"*5, "*"*50, "\n"*5)
+
+		so_items = []
+		for item in self.items:
+			so_items.append(item.name)
+
+		print("SO Items: ", so_items)
+
+		linked_po = frappe.get_all(
+			'Purchase Order Item',
+			filters = {
+				'sales_order': self.name,
+				'sales_order_item': ['in', so_items],
+				'docstatus': ['<', 2]
+			},
+			pluck='parent'
+		)
+
+		print("Before unlinking: ", linked_po)
+
+		if linked_po:
+			frappe.db.sql("""update `tabPurchase Order Item`
+				set sales_order = null, sales_order_item = null,
+				modified = %s, modified_by = %s
+				where sales_order = %s and sales_order_item in %s
+				and docstatus < 2""", (now(), frappe.session.user, self.name, so_items))
+
+			frappe.msgprint(_("Purchase Orders {0} are un-linked").format("\n".join(linked_po)))
+
+		linked_po = frappe.get_all(
+			'Purchase Order Item',
+			filters = {
+				'sales_order': self.name,
+				'sales_order_item': ['in', so_items],
+				'docstatus': ['<', 2]
+			},
+			pluck='parent'
+		)
+		print("After unlinking: ", linked_po)
+
+		print("\n"*5, "*"*50, "\n"*5)
+
 	def get_tax_map(self):
 		tax_map = {}
 		for tax in self.get('taxes'):
diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py
index 9367609..4397d19 100755
--- a/erpnext/selling/doctype/sales_order/sales_order.py
+++ b/erpnext/selling/doctype/sales_order/sales_order.py
@@ -209,6 +209,12 @@
 			from erpnext.accounts.doctype.pricing_rule.utils import update_coupon_code_count
 			update_coupon_code_count(self.coupon_code,'cancelled')
 
+	def cancel(self):
+		import pdb
+
+		pdb.set_trace()
+		super(SalesOrder, self).cancel()
+
 	def update_project(self):
 		if frappe.db.get_single_value('Selling Settings', 'sales_update_frequency') != "Each Transaction":
 			return
