2017-02-08 6 views
0

HELOを選択すると、インライン編集モードでフィールドを更新し、私は、製品を選択したら、オーダーライン(例えばpurchase.order.lineツリービュー)のフィールド(たとえば、説明)を更新する必要がどのように製品

Odooインライン編集モードでは、バックエンドで選択した製品をフェッチして、フロントエンドで目的のフィールドを更新するにはどうすればよいですか?

モデルpurchase.order.line:

ありがとうPRODUCT_ID

説明、

+0

Wあなたはこれまでに試したことがありますか? onchangeイベントがOdooでどのように使われているか知っていますか? – CZoellner

+0

モデルpurchase.order.lineで宣言されたonchangeを試しましたが、新しい製品ラインを追加するとトリガされません。私はXMLで宣言されている他の関数についてチェックしています。これはproduct_idフィールドのOnchange属性で定義されています: Salim

+0

onchange_product_id()をオーバーライドしようとしましたか? – CZoellner

答えて

0

onchange_product_idを(オーバーライド)は私の問題を解決する、と私は扱うことができますよ新しい選択した商品を追加し、ツリービューで別のフィールドを更新する:

class purchase_ordr_line(models.Model): 

_inherit = "purchase.order.line" 


@api.multi 
def onchange_product_id(self, pricelist_id, product_id, qty, uom_id, 
     partner_id, date_order=False, fiscal_position_id=False, date_planned=False, 
     name=False, price_unit=False, state='draft'): 
     dic_res = super(purchase_ordr_line, self).onchange_product_id(pricelist_id, product_id, qty, uom_id,partner_id, date_order=False, fiscal_position_id=False, date_planned=False, 
     name=False, price_unit=False, state='draft') 
     #Following the custom code: 
     dic_value = dic_res['value'] 
     dic_value['new_field_to_update'] = new_value 
     return dic_res 
関連する問題