fix: Fixed error on stock balance report

This commit is contained in:
Nabin Hait 2019-01-31 15:53:25 +05:30
parent a85f008f30
commit 9ea19b8fe1

View File

@ -216,20 +216,28 @@ def get_item_details(items, sle, filters):
if not items: if not items:
items = list(set([d.item_code for d in sle])) items = list(set([d.item_code for d in sle]))
if items: if not items:
cf_field = cf_join = "" return item_details
if filters.get("include_uom"):
cf_field = ", ucd.conversion_factor"
cf_join = "left join `tabUOM Conversion Detail` ucd on ucd.parent=item.name and ucd.uom=%(include_uom)s"
for item in frappe.db.sql(""" cf_field = cf_join = ""
select item.name, item.item_name, item.description, item.item_group, item.brand, item.stock_uom{cf_field} if filters.get("include_uom"):
from `tabItem` item cf_field = ", ucd.conversion_factor"
cf_join = "left join `tabUOM Conversion Detail` ucd on ucd.parent=item.name and ucd.uom='%s'" \
% frappe.db.escape(filters.get("include_uom"))
item_codes = ', '.join(['"' + frappe.db.escape(i, percent=False) + '"' for i in items])
res = frappe.db.sql("""
select
item.name, item.item_name, item.description, item.item_group, item.brand, item.stock_uom {cf_field}
from
`tabItem` item
{cf_join} {cf_join}
where item.name in ({names}) and ifnull(item.disabled, 0) = 0 where
""".format(cf_field=cf_field, cf_join=cf_join, names=', '.join(['"' + frappe.db.escape(i, percent=False) + '"' for i in items])), item.name in ({item_codes}) and ifnull(item.disabled, 0) = 0
{"include_uom": filters.get("include_uom")}, as_dict=1): """.format(cf_field=cf_field, cf_join=cf_join, item_codes=item_codes), as_dict=1)
item_details.setdefault(item.name, item)
for item in res:
item_details.setdefault(item.name, item)
if filters.get('show_variant_attributes', 0) == 1: if filters.get('show_variant_attributes', 0) == 1:
variant_values = get_variant_values_for(list(item_details)) variant_values = get_variant_values_for(list(item_details))