From 80674364689bc4544df9355dc50213a6bb9755c1 Mon Sep 17 00:00:00 2001 From: Josse Colpaert Date: Thu, 7 Mar 2013 09:25:10 +0100 Subject: [PATCH] [FIX] Discount should only appear on sales order if it is checked in the settings. bzr revid: jco@openerp.com-20130307082510-mckayx175qu9ispo --- addons/sale/report/sale_order.py | 11 ++++++++++- addons/sale/report/sale_order.rml | 4 ++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/addons/sale/report/sale_order.py b/addons/sale/report/sale_order.py index b4f0b1589aa..e66a9021276 100644 --- a/addons/sale/report/sale_order.py +++ b/addons/sale/report/sale_order.py @@ -27,9 +27,18 @@ class order(report_sxw.rml_parse): def __init__(self, cr, uid, name, context=None): super(order, self).__init__(cr, uid, name, context=context) self.localcontext.update({ - 'time': time, + 'time': time, + 'show_discount':self._show_discount, }) + def _show_discount(self, uid, context=None): + cr = self.cr + try: + group_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'sale', 'group_discount_per_so_line')[1] + except: + return False + return group_id in [x.id for x in self.pool.get('res.users').browse(cr, uid, uid, context=context).groups_id] + report_sxw.report_sxw('report.sale.order', 'sale.order', 'addons/sale/report/sale_order.rml', parser=order, header="external") # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sale/report/sale_order.rml b/addons/sale/report/sale_order.rml index a00d2d4e3ef..1798ee1d301 100644 --- a/addons/sale/report/sale_order.rml +++ b/addons/sale/report/sale_order.rml @@ -251,7 +251,7 @@ Unit Price - Disc.(%) + [[show_discount(user.id) and "Disc.(%)" or '']] Price @@ -275,7 +275,7 @@ [[ formatLang(line.price_unit , digits=get_digits(dp='Product Price'))]] - [[ formatLang(line.discount, digits=get_digits(dp='Discount'))]] + [[show_discount(user.id) and formatLang(line.discount, digits=get_digits(dp='Discount')) or '']] [[ formatLang(line.price_subtotal, digits=get_digits(dp='Account'), currency_obj=o.pricelist_id.currency_id) ]]