Merge pull request #7164 from KanchanChauhan/quoted-item-comparison-report-fix
[Fix] Quoted Item Comparison
diff --git a/erpnext/buying/report/quoted_item_comparison/quoted_item_comparison.py b/erpnext/buying/report/quoted_item_comparison/quoted_item_comparison.py
index 1793fc3..f627b4a 100644
--- a/erpnext/buying/report/quoted_item_comparison/quoted_item_comparison.py
+++ b/erpnext/buying/report/quoted_item_comparison/quoted_item_comparison.py
@@ -3,11 +3,9 @@
from __future__ import unicode_literals
from erpnext.setup.utils import get_exchange_rate
-
import frappe
def execute(filters=None):
-
qty_list = get_quantity_list(filters.item)
data = get_quote_list(filters.item, qty_list)
@@ -15,12 +13,9 @@
columns = get_columns(qty_list)
return columns, data
-
def get_quote_list(item, qty_list):
-
out = []
-
if item:
price_data = []
suppliers = []
@@ -38,8 +33,11 @@
#Add a row for each supplier
for root in set(suppliers):
- supplier_currency = frappe.db.get_value("Supplier",root,"default_currency")
- exg = get_exchange_rate(supplier_currency,company_currency)
+ supplier_currency = frappe.db.get_value("Supplier", root, "default_currency")
+ if supplier_currency:
+ exchange_rate = get_exchange_rate(supplier_currency, company_currency)
+ else:
+ exchange_rate = 1
row = frappe._dict({
"supplier_name": root
@@ -48,7 +46,7 @@
# Get the quantity for this row
for item_price in price_data:
if str(item_price.qty) == col.key and item_price.supplier == root:
- row[col.key] = item_price.rate * exg
+ row[col.key] = item_price.rate * exchange_rate
row[col.key + "QUOTE"] = item_price.parent
break
else:
@@ -56,15 +54,11 @@
row[col.key + "QUOTE"] = ""
out.append(row)
-
-
return out
def get_quantity_list(item):
-
out = []
-
if item:
qty_list = frappe.db.sql("""select distinct qty from `tabSupplier Quotation Item` where ifnull(item_code,'')=%s and docstatus < 2""", item, as_dict=1)
qty_list.sort(reverse=False)
@@ -102,5 +96,4 @@
"width": 90
})
-
- return columns
\ No newline at end of file
+ return columns