From 8b9b77959d0b2b03158cfa376d3d4d74ee1b3005 Mon Sep 17 00:00:00 2001 From: Mangesh-Khairnar Date: Tue, 13 Aug 2019 13:20:10 +0530 Subject: [PATCH] fix: fetch min date when carry forward expiry is greater than leave allocation expiry --- erpnext/hr/doctype/leave_allocation/leave_allocation.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/erpnext/hr/doctype/leave_allocation/leave_allocation.py b/erpnext/hr/doctype/leave_allocation/leave_allocation.py index c11c125c6a..296a52c2c7 100755 --- a/erpnext/hr/doctype/leave_allocation/leave_allocation.py +++ b/erpnext/hr/doctype/leave_allocation/leave_allocation.py @@ -3,7 +3,7 @@ from __future__ import unicode_literals import frappe -from frappe.utils import flt, date_diff, formatdate, add_days, today +from frappe.utils import flt, date_diff, formatdate, add_days, today, getdate from frappe import _ from frappe.model.document import Document from erpnext.hr.utils import set_employee_name, get_leave_period @@ -127,10 +127,11 @@ class LeaveAllocation(Document): def create_leave_ledger_entry(self, submit=True): if self.unused_leaves: expiry_days = frappe.db.get_value("Leave Type", self.leave_type, "expire_carry_forwarded_leaves_after_days") + end_date = add_days(self.from_date, expiry_days - 1) if expiry_days else self.to_date args = dict( leaves=self.unused_leaves, from_date=self.from_date, - to_date=add_days(self.from_date, expiry_days - 1) if expiry_days else self.to_date, + to_date= min(getdate(end_date), getdate(self.to_date)), is_carry_forward=1 ) create_leave_ledger_entry(self, args, submit)