2017-12-28 11 views
1

sales.order.lineのsales_shipというフィールドと、ship_saleという名前のフィールドがあります。今私がしたいのは、デフォルトでsale.order.lineのship_saleにデフォルトで来るsales.order内の選択されたsales_shipを持つことです。どのようにコンテキストを使用してそれを行うには?ここに私のフルコードです。odoo 8.0のコンテキストを使用して、デフォルトでsales orderlineの受注フィールドを表示する方法は?

py

from openerp import models , fields 


class ShipInfo (models.Model): 
    _name = "ship.ship" 
    imo = fields.Char (string = "IMO" , size = 64 , required = True) 
    hull_number = fields.Char (string = ' Hull Number ' , size = 64 , required = True) 
    engine_number = fields.Char (string = ' Engine Number ' , size = 64 , required = True) 
    vessel_name = fields.Char (string = 'Vessel Name' , size = 64) 
    build_year = fields.Char (string = 'Build Year' , size = 64) 

    ship_yard = fields.Many2one ('res.partner' , string = 'Ship Yard') 
    ship_owner = fields.Many2one ('res.partner' , string = 'Ship Owner') 
    ship_management = fields.Many2one ('res.partner' ,string= 'Ship Management') 
    engine_builder = fields.Many2one ('res.partner' , string = 'Engine Builder') 
    _rec_name = 'vessel_name' 


class SaleOrderInherited (models.Model): 
    _inherit = 'sale.order' 
    sales_ship = fields.Many2one ('ship.ship' , string = 'Sales Ship') 

class SaleOrderLineInherited (models.Model): 
_inherit = 'sale.order.line' 
ship_sale = fields.Many2one ('ship.ship' , string = 'Sales Ship') 

の.xml

​​

答えて

1
<record id="view_sale_order_custom" model="ir.ui.view"> 
     <field name="name">sale.order.custom.form.inherited</field> 
     <field name="model">sale.order</field> 
     <field name="inherit_id" ref="sale.view_order_form"/> 
     <field name="arch" type="xml"> 
      <xpath expr="//field[@name='partner_id']" position="after"> 
       <field name="sales_ship" /> 
      </xpath>                
      <xpath expr="/form/sheet/notebook/page/field[@name='order_line']" position="attributes"> 
       <attribute name="context">{'default_sales_ship':sales_ship}</attribute> 
      </xpath> 
      <xpath expr="/form/sheet/notebook/page/field[@name='order_line']/tree/field[@name='name']" position="after"> 
       <field name="ship_sale" /> 
      </xpath> 
      <group> 
       <button string="Add to Order Line"/> 
      </group> 
     </field> 
    </record> 
+0

しかし、それはerror.Uncaughtエラーを与える:NameError:名 'sales_shipは、[今すぐチェック – DGL

+0

定義されていません。私の答えを更新しました –

+0

エラーを出しているので、上記のコード行から 'context ='を削除しました。しかし、コードはデフォルトでsale.order.lineのsales_shipを表示しません。 – DGL

関連する問題