fix(hr): Delete salary slip when cancel payroll entry (#15757)
diff --git a/erpnext/hr/doctype/payroll_entry/payroll_entry.py b/erpnext/hr/doctype/payroll_entry/payroll_entry.py
index e097cc2..1d419be 100644
--- a/erpnext/hr/doctype/payroll_entry/payroll_entry.py
+++ b/erpnext/hr/doctype/payroll_entry/payroll_entry.py
@@ -20,6 +20,10 @@
if self.validate_employee_attendance():
frappe.throw(_("Cannot Submit, Employees left to mark attendance"))
+ def on_cancel(self):
+ frappe.delete_doc("Salary Slip", frappe.db.sql_list("""select name from `tabSalary Slip`
+ where payroll_entry=%s """, (self.name)))
+
def get_emp_list(self):
"""
Returns list of active employees based on selected criteria