diff --git a/addons/product_visible_discount/product_visible_discount.py b/addons/product_visible_discount/product_visible_discount.py index 275bfcd68b1..6ce35a741e2 100644 --- a/addons/product_visible_discount/product_visible_discount.py +++ b/addons/product_visible_discount/product_visible_discount.py @@ -74,7 +74,7 @@ class sale_order_line(osv.osv): result=res['value'] pricelist_obj=self.pool.get('product.pricelist') product_obj = self.pool.get('product.product') - if product: + if product and pricelist: if result.get('price_unit',False): price=result['price_unit'] else: @@ -88,7 +88,7 @@ class sale_order_line(osv.osv): new_list_price = get_real_price(list_price, product.id, qty, uom, pricelist) if so_pricelist.visible_discount and list_price[pricelist] != 0 and new_list_price != 0: - if so_pricelist.currency_id.id != product.company_id.currency_id.id: + if product.company_id and so_pricelist.currency_id.id != product.company_id.currency_id.id: # new_list_price is in company's currency while price in pricelist currency new_list_price = self.pool['res.currency'].compute(cr, uid, product.company_id.currency_id.id, so_pricelist.currency_id.id, @@ -101,4 +101,6 @@ class sale_order_line(osv.osv): result['discount'] = 0.0 else: result['discount'] = 0.0 + else: + result['discount'] = 0.0 return res