Openerp 如何使用采购订单行odoo的onchange from product field到one2many field

Openerp 如何使用采购订单行odoo的onchange from product field到one2many field,openerp,odoo-8,openerp-8,Openerp,Odoo 8,Openerp 8,就像我在product.template中有一个字段名为squ_-meter,我需要在采购订单行的自定义字段中复制该值,该字段名为squ_-meter,我想在采购订单行字段上应用onchange 任何形式的帮助都将不胜感激。提前谢谢 这是我的密码 类别采购订单行(osv.osv): 采购订单行.xml <field name="name">purchase.order.inherit</field> <field name="model">purchase.o

就像我在product.template中有一个字段名为squ_-meter,我需要在采购订单行的自定义字段中复制该值,该字段名为squ_-meter,我想在采购订单行字段上应用onchange

任何形式的帮助都将不胜感激。提前谢谢

这是我的密码

类别采购订单行(osv.osv):

采购订单行.xml

<field name="name">purchase.order.inherit</field>
<field name="model">purchase.order</field>
<field name="inherit_id" ref="purchase.purchase_order_form"/>
<field name="arch" type="xml">      
    <xpath expr="//page[@string='Products']//field[@name='order_line']//field[@name='product_qty']"  position="after">
        <field name="squ_meter"/>
    </xpath>
</field>
purchase.order.inherit
采购订单

相关字段

当您想要保留任何关系字段的值(除了它的引用)时,Related字段非常有用,这样做会更简单

_columns ={
        'squ_meter': fields.related('product_id','squ_meter', type='float',    relation='product.product', string='Square Meter', readonly=True),
    }
其中

  • 第一组参数是指向的参考字段链 跟随,所需字段位于末尾
  • 类型是所需字段的类型
  • 如果所需字段仍然是某种引用,请使用关系。关系是要在其中查找该引用的表

_columns ={
        'squ_meter': fields.related('product_id','squ_meter', type='float',    relation='product.product', string='Square Meter', readonly=True),
    }
不再有字段。相关字段

相反,您只需设置与模型相关的name参数:

squ_meter = Fields.Float(string='Square Meter', related='product_id.squ_meter' , readonly=True)
采购订单行.xml

<field name="name">purchase.order.inherit</field>
<field name="model">purchase.order</field>
<field name="inherit_id" ref="purchase.purchase_order_form"/>
<field name="arch" type="xml">      
    <xpath expr="//page[@string='Products']//field[@name='order_line']//field[@name='product_qty']"  position="after">
        <field name="squ_meter" readonly="1" />
    </xpath>
</field>
purchase.order.inherit
采购订单