diff --git a/addons/account_anglo_saxon/invoice.py b/addons/account_anglo_saxon/invoice.py index f27d9b3ae72..a08346a29ed 100644 --- a/addons/account_anglo_saxon/invoice.py +++ b/addons/account_anglo_saxon/invoice.py @@ -117,9 +117,14 @@ class account_invoice_line(osv.osv): for line in res: if a == line['account_id'] and i_line.product_id.id == line['product_id']: uom = i_line.product_id.uos_id or i_line.product_id.uom_id - standard_price = self.pool.get('product.uom')._compute_price(cr, uid, uom.id, i_line.product_id.standard_price, i_line.uos_id.id) - if standard_price != i_line.price_unit and line['price_unit'] == i_line.price_unit and acc: - price_diff = i_line.price_unit - standard_price + converted_standard_price = self.pool.get('product.uom')._compute_price(cr, uid, uom.id, i_line.product_id.standard_price, i_line.uos_id.id) + if inv.currency_id.id != company_currency: + standard_price = self.pool.get('res.currency').compute(cr, uid, company_currency, inv.currency_id.id, converted_standard_price, context={'date': inv.date_invoice}) + else: + standard_price = converted_standard_price + price_unit = self.pool.get('product.uom')._compute_price(cr, uid, uom.id, i_line.price_unit, i_line.uos_id.id) + if standard_price != price_unit and line['price_unit'] == i_line.price_unit and acc: + price_diff = price_unit - standard_price line.update({'price':standard_price * line['quantity']}) diff_res.append({ 'type':'src',