2016-03-22 60 views
0

我在sale.order.line模型上創建按鈕時打開一個彈出窗口,此視圖在stock.picking.form中。問題是,當我打開彈出窗口顯示空白窗體。而我想要的是彈出窗口顯示我在sale.order.line表單中輸入的數據。例如:產品名稱,數量,客戶名稱等... enter image description hereenter image description here如何從另一個模型中獲取彈出視圖的值?

這是我在我的view.xml用按鈕:

<button name="action_stock_picking" string="Inventario" type="object" icon="fa-arrow-right"/> 

這是打開彈出我的按鈕功能:

@api.multi 
def action_stock_picking(self): 
    self.ensure_one() 
    picking_form = self.env.ref('stock.view_picking_form', False) 
    ctx = dict(
     default_model='stock.picking', 
     default_res_id=self.id, 
     default_composition_mode='comment', 
     mark_invoice_as_sent=True, 
    ) 
    return { 
     'name': _('Formulario de Inventario: Recepciones'), 
     'type': 'ir.actions.act_window', 
     'view_type': 'form', 
     'view_mode': 'form', 
     'res_model': 'stock.picking', 
     'views': [(picking_form.id, 'form')], 
     'view_id': picking_form.id, 
     'target': 'new', 
     'context': ctx, 
    } 

我在研究,我認爲你應該使用上下文屬性在視圖之間傳遞數據,但不知道如何做到這一點。 請如果有人能幫忙,我會非常感激。 感謝您的幫助。

回答

0

事實上,您可以使用上下文設置默認數據。語法很簡單:

default_fieldx : val 

示例設置默認的產品名稱在您的嚮導這一行添加到您的代碼

ctx = dict(
    default_name : self.name, 
    default_model='stock.picking', 
    default_res_id=self.id, 
    default_composition_mode='comment', 
    mark_invoice_as_sent=True, 
) 
+0

如果我想的產品名稱添加到彈出視圖的線,就像它顯示在以前的圖像? 我該怎麼做? – beriliox

相關問題