2016-02-29 66 views
1

我在sale.order模型中有一個表單視圖。我添加了一個按鈕,可以在「表單」視圖中獨立地打印每個產品的報告。如何獨立打印每個產品的報告?

有沒有可能這樣做?

下圖更好地解釋了上述情況。

圖片:http://es.zimagez.com/zimage/formview.php

我想的是,按下按鈕打印產品,它打印該產品的報告中特別。所以爲每一行添加一個按鈕。

這是打印方法按鈕:

<button name="print_report" string="Print Service Ticket" type="object" icon="gtk-print"/> 


    @api.multi 
    def print_report(self):  
     return self.env['report'].get_action(self, 'sale.ticket_servicio') 

這是我的報告視圖:

<report 
      id="ticket_servicio" 
      string="Ticket de Servicio" 
      model="sale.order" 
      report_type="qweb-pdf" 
      file="sale.ticket_servicio" 
      name="sale.ticket_servicio" 
/> 

這是所有。非常感謝您的時間和奉獻。我感謝任何意見,建議和協助。

+0

我不會爲你做你的工作,但如果你添加一個類到print_report作爲一個標識符,並把它放在你用來渲染你的行的for循環中,你可以找出哪一行與按鈕使用jquery。這應該是你需要的一切 –

回答

1

看來你沒有在谷歌上進行適當的搜索,因爲網絡上有很多這樣的例子。無論如何,你應該返回這個動作,但是你必須傳遞一些參數,比如你想要打印的物品的ID/s。喜歡的東西:

return { 
    'type': 'ir.actions.report.xml', 
    'report_name':'my.report.name', 
    'datas': { 
      'model':'my.model', 
      'id': ids and ids[0] or False, 
      'ids': ids and ids or [], 
     } 
} 

注意,你可以從動作本身讀取默認的數據(只是在數據庫中的對象),然後在你回來的字典注入的ID。