我想使用 onchange 将帐户发票价格设置为 res.partner 中设置的默认价格。谁能给我一个例子?
谢谢,乔
插件中有很多关于 onchange 的例子。
例如,如果您想更改“名称”字段的值并希望根据所选产品设置产品名称:
def onchange_product_id(self, cr, uid, ids, product_id, context=None):
if product_id:
prod = self.pool.get('product.product').browse(cr, uid, product_id, context=context)
return {'value': {'name': prod.name}}
return {}
在 your_invoice_view.xml 中写入:
<field name="product_id" on_change="product_id_change(product_id, parent.partner_id, context)"/>
在“invoice_line”模型(类)下的 your_invoice.py 中写入 onchange:
def onchange_product_id_change(self, cr, uid, ids, product_id, partner_id context=None):
if product_id and partner_id:
product_brw = self.pool.get('product.product').browse(cr, uid, product_id, context=context)
partner_brw = self.pool.get('res.partner').browse(cr, uid, partner_id, context=context)
/*write your logic */
return {'value': {'price_unit': your calculated value}}
return {}