From 1e84f6763716c76195cc03f8fe36066de30dec35 Mon Sep 17 00:00:00 2001 From: Chris Biersbach Date: Fri, 5 Apr 2013 09:51:39 +0200 Subject: [PATCH] [FIX] Generating the Stock Level Forecast report while having arabic or other foreign characters in the product name no longer causes a traceback bzr revid: cbi@openerp.com-20130405075139-j327x6kzut3mamqa --- addons/stock/report/product_stock.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/addons/stock/report/product_stock.py b/addons/stock/report/product_stock.py index 9ccda54b693..e3a4c8c9435 100644 --- a/addons/stock/report/product_stock.py +++ b/addons/stock/report/product_stock.py @@ -30,6 +30,7 @@ from openerp.report.render import render import stock_graph from openerp import pooler import StringIO +import unicodedata class external_pdf(render): def __init__(self, pdf): @@ -106,7 +107,12 @@ class report_stock(report_int): io = StringIO.StringIO() gt = stock_graph.stock_graph(io) for prod_id in products: - gt.add(prod_id, names.get(prod_id, 'Unknown'), products[prod_id]) + prod_name = names.get(prod_id,'Unknown') + if isinstance(prod_name, str): + prod_name = prod_name.decode('utf-8') + prod_name = unicodedata.normalize('NFKD',prod_name) + prod_name = prod_name.encode('ascii','replace') + gt.add(prod_id, prod_name, products[prod_id]) gt.draw() gt.close() self.obj = external_pdf(io.getvalue())