2015-12-17 26 views
1

就像我有一個字段在product.template與字段名稱squ_meter,我需要複製此值在採購訂單行的自定義字段與相同的字段名稱即squ_meter,我想申請onchange在採購訂單行字段我如何使用onchange從產品領域one2many領域的採購訂單行odoo

任何形式的幫助將不勝感激。在此先感謝

這裏是我的代碼

類purchase_order_line(osv.osv):

_inherit = 'purchase.order.line' 

_columns ={'squ_meter' : fields.float('Square Meter'), 

    } 

purchase_order_line.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> 

回答

1

相關領域

相關字段當你wa時很有用nt來保存任何關係字段的值,除了它的引用,那麼這將是更簡單的方法來做到這一點。

OLD API

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

  • 第一組參數是參考字段的鏈 跟隨,並在最後所需的字段。
  • type是所需字段的類型。
  • 如果所需字段仍然是某種參考,請使用關係。關係是查找在引用表。

NEW API

沒有了fields.related領域。

相反,你只需設置相關模型中的名稱參數:

squ_meter = Fields.Float(string='Square Meter', related='product_id.squ_meter' , readonly=True) 

purchase_order_line.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> 
+0

非常感謝親愛的它確實有效 –