diff --git a/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.json b/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.json index c11422211ca..771e706bbb3 100644 --- a/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.json +++ b/erpnext/hr/doctype/leave_ledger_entry/leave_ledger_entry.json @@ -27,6 +27,7 @@ "options": "Employee" }, { + "fetch_from": "employee.employee_name", "fieldname": "employee_name", "fieldtype": "Data", "label": "Employee Name" @@ -101,7 +102,7 @@ ], "in_create": 1, "is_submittable": 1, - "modified": "2019-06-21 00:37:07.782810", + "modified": "2019-08-20 14:40:04.130799", "modified_by": "Administrator", "module": "HR", "name": "Leave Ledger Entry", diff --git a/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py b/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py index 66e3614982e..22f0203c90f 100644 --- a/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py +++ b/erpnext/hr/report/employee_leave_balance/employee_leave_balance.py @@ -97,16 +97,15 @@ def get_approvers(department): def get_total_allocated_leaves(employee, leave_type, from_date, to_date): ''' Returns leave allocation between from date and to date ''' - filters= { - 'from_date': ['between', (from_date, to_date)], - 'to_date': ['between', (from_date, to_date)], - 'docstatus': 1, - 'is_expired': 0, - 'leave_type': leave_type, - 'employee': employee, - 'transaction_type': 'Leave Allocation' - } - - leave_allocation_records = frappe.db.get_all('Leave Ledger Entry', filters=filters, fields=['SUM(leaves) as leaves']) + leave_allocation_records = frappe.db.get_all('Leave Ledger Entry', filters={ + 'docstatus': 1, + 'is_expired': 0, + 'leave_type': leave_type, + 'employee': employee, + 'transaction_type': 'Leave Allocation' + }, or_filters={ + 'from_date': ['between', (from_date, to_date)], + 'to_date': ['between', (from_date, to_date)] + }, fields=['SUM(leaves) as leaves']) return flt(leave_allocation_records[0].get('leaves')) if leave_allocation_records else flt(0) \ No newline at end of file diff --git a/erpnext/patches/v12_0/generate_leave_ledger_entries.py b/erpnext/patches/v12_0/generate_leave_ledger_entries.py index 44b59bf09b0..5e91449c3ed 100644 --- a/erpnext/patches/v12_0/generate_leave_ledger_entries.py +++ b/erpnext/patches/v12_0/generate_leave_ledger_entries.py @@ -3,7 +3,7 @@ from __future__ import unicode_literals import frappe -from frappe.utils import getdate +from frappe.utils import getdate, today def execute(): """ Generates leave ledger entries for leave allocation/application/encashment @@ -66,7 +66,8 @@ def generate_expiry_allocation_ledger_entries(): if not frappe.db.exists("Leave Ledger Entry", {'transaction_type': 'Leave Allocation', 'transaction_name': allocation.name, 'is_expired': 1}): allocation.update(dict(doctype="Leave Allocation")) allocation_obj = frappe.get_doc(allocation) - expire_allocation(allocation_obj) + if allocation_obj.to_date <= getdate(today()): + expire_allocation(allocation_obj) def get_allocation_records(): return frappe.get_all("Leave Allocation", filters={