2012-11-27 40 views
0

我正在寫一份Aeroo報告以打印OpenERP產品標籤。在openerp報告中檢索產品的價格含稅

我設法打印產品的名稱,描述,圖像,條形碼......但我在價格上遇到了麻煩。我可以打印產品的基本價格,不含稅:

<o.price> 

,但我需要打印的價格與稅收和稅收金額也,我怎樣才能做到這一點?

編輯: 這個工作,但必須有一個更好的辦法:

<o.list_price * (1 + sum([t.amount for t in o.taxes_id]))> 

,不考慮折扣

感謝, LLUIS

回答

1

解決創建一個模塊並添加PVP方法到product_product哪使用tax.compute_all

from osv import fields, osv 

class product_product(osv.osv): 
    _name = "product.product" 
    _inherit = "product.product" 

    def _pvp(self, cr, uid, ids, field_name, arg, context=None): 
     """Return calculated PVP with taxes 
     """ 
     res = {} 
     tax_obj = self.pool.get('account.tax') 
     for product in self.browse(cr, uid, ids, context): 
      t = tax_obj.compute_all(cr, uid, product.taxes_id, product.list_price, 1)['total_included'] 
      res[product.id] = "{0:.2f}".format(t) 
     return res 

    _columns = { 
     'pvp': fields.function(_pvp, type="string", method=True, string="PVP"), # calculates PVP with taxes 
    } 

product_product()