From cfdc24aef565d88ec04c6e28c8e6ef51fddd8cfe Mon Sep 17 00:00:00 2001 From: prssanna Date: Mon, 17 Feb 2020 18:56:30 +0530 Subject: [PATCH] fix: dayofyear unit function for child table query --- frappe/desk/doctype/dashboard_chart/dashboard_chart.py | 2 +- frappe/model/db_query.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/frappe/desk/doctype/dashboard_chart/dashboard_chart.py b/frappe/desk/doctype/dashboard_chart/dashboard_chart.py index cc7f2ad155..fec10d4213 100644 --- a/frappe/desk/doctype/dashboard_chart/dashboard_chart.py +++ b/frappe/desk/doctype/dashboard_chart/dashboard_chart.py @@ -186,7 +186,7 @@ def get_unit_function(doctype, datefield, timegrain): unit_function = '' if timegrain=='Daily': if frappe.db.db_type == 'mariadb': - unit_function = 'dayofyear({datefield})'.format( + unit_function = 'dayofyear(`tab{doctype}`.{datefield})'.format( doctype=doctype, datefield=datefield) else: unit_function = 'extract(doy from `tab{doctype}`.{datefield})'.format( diff --git a/frappe/model/db_query.py b/frappe/model/db_query.py index f781bac320..596aa18b09 100644 --- a/frappe/model/db_query.py +++ b/frappe/model/db_query.py @@ -261,7 +261,7 @@ class DatabaseQuery(object): if self.fields: for f in self.fields: if ( not ("tab" in f and "." in f) ) or ("locate(" in f) or ("strpos(" in f) or \ - ("count(" in f) or ("avg(" in f) or ("sum(" in f) or ("extract(" in f): + ("count(" in f) or ("avg(" in f) or ("sum(" in f) or ("extract(" in f) or ("dayofyear(" in f): continue table_name = f.split('.')[0]