功能字段在OpenERP中不起作用 [英] Function field is not working in OpenERP
问题描述
在purchase.order.line
中,我添加了新字段pln price
,并将单价字段更改为功能:
In purchase.order.line
I added new field pln price
and changed unit price field to function:
'price_unit': fields.function(_amount_pln, string='Unit Price', required=True, digits_compute= dp.get_precision('Product Price')),
'plnprice': fields.float('PLN Price', digits_compute= dp.get_precision('PLN Price')),
这是功能:
def _amount_pln(self, cr, uid, ids, prop, arg, context=None):
res = {}
for line in self.browse(cr, uid, ids, context=context):
res[line.id] = line.plnprice * 0.25
return res
现在,
交换值已进行硬编码,如_amount_pln
函数中所示0.25
exchange value now is hardcoded, 0.25
as you see in _amount_pln
function
然后我在purchase.order
类中添加了新字段:
Then I added new field in purchase.order
class:
'exchange_value': fields.float('Exchange',readonly=False)
但是我不知道如何将该字段值添加到我的_amount_pln
函数中.
您能帮我解决这个问题吗?
But how get this field value to my _amount_pln
function I don't know.
can you please help me how to resolve this problem?
推荐答案
"purchase.order"和"purchase.order.line"之间的关系是"order_id". "purchase.order.line"包含"order_id".您可以使用此"order_id"获取"purchase.order"的值.
Relation between "purchase.order" and "purchase.order.line" is "order_id". "purchase.order.line" contains "order_id". You can get values of "purchase.order" using this "order_id".
for purchase_line in self.browse(cr, uid, ids, context=context):
res[line.id] = purchase_line.plnprice * purchase_line.order_id.exchange_value
这篇关于功能字段在OpenERP中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!