diff --git a/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.py b/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.py
index 60d3595..12be479 100644
--- a/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.py
+++ b/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.py
@@ -5,13 +5,14 @@
 from __future__ import unicode_literals
 import frappe
 from frappe.model.document import Document
+from frappe import _
 from frappe.utils import add_days
 
 class LeaveLedgerEntry(Document):
 	pass
 
-def create_leave_ledger_entry(ref_doc, args):
-	ledger = dict(
+def create_leave_ledger_entry(ref_doc, args, submit):
+	ledger = frappe._dict(
 		doctype='Leave Ledger Entry',
 		employee=ref_doc.employee,
 		employee_name=ref_doc.employee_name,
@@ -20,6 +21,27 @@
 		transaction_type=ref_doc.doctype,
 		transaction_name=ref_doc.name
 	)
-
 	ledger.update(args)
-	frappe.get_doc(ledger).insert(ignore_permissions=True)
\ No newline at end of file
+
+	if submit:
+		frappe.get_doc(ledger).insert(ignore_permissions=True)
+	else:
+		delete_ledger_entry(ledger)
+
+def delete_ledger_entry(ledger):
+	''' Delete ledger entry on cancel of leave application/allocation '''
+	ledger_entry, creation_date = frappe.db.get_value("Leave Ledger Entry",
+		{'transaction_name': ledger.transaction_name},
+		['name', 'creation']
+		)
+	leave_application_records = frappe.get_all("Leave Ledger Entry",
+		filters={
+			'transaction_type': 'Leave Application',
+			'creation_date': (">", creation_date)
+		},
+		fields=['transaction_type'])
+	if not leave_application_records:
+		frappe.delete_doc("Leave Ledger Entry", ledger_entry)
+	else:
+		frappe.throw(_("Leave allocation %s is linked with leave application %s"
+			% (ledger_entry, ', '.join(leave_application_records))))
\ No newline at end of file
