Oddo - Печать выбранных записей вида дерева из мастера в PDF - PullRequest
0 голосов
/ 07 ноября 2019

Мне нужно распечатать список выбранных записей древовидной структуры в отчете pdf из мастера, я добавляю новый пункт меню в выпадающее меню печати, как показано на следующем рисунке

введите описание изображения здесь

мне нужна помощь

1 Ответ

0 голосов
/ 14 ноября 2019

Я создал мастер, он будет искать записи с даты и на сегодняшний день, вам это нужно для PDF, вы можете написать шаблон в формате PDF, я думаю, что это может помочь вам

class WizardContract(models.TransientModel):
_name = 'order.wizard'
customer_ids=fields.Many2one('res.partner',string='Customer Name' )
datefrom = fields.Date(string="Date From")
dateto = fields.Date(string="Date To")
current_date= fields.datetime.now()     

@api.depends('customer_ids','datefrom','dateto')
def print_report(self):

    search_id = self.env['sale.order'].search([('partner_id','=', self.customer_ids.id),('date_order', '>=', self.datefrom), ('date_order', '<=', self.dateto)])
    lst = []
    for loop in search_id:
        lst.append(str(loop.partner_id.name))
        lst.append(str(self.datefrom))
        lst.append(str(self.current_date))
    lines=[]
    if self.current_date:
        current_date= str(self.current_date)
        total=0     
        lines=[]
        rec_sale_line = self.env['sale.order.line'].search([('order_id','=', loop.id),('order_partner_id','=', self.customer_ids.id)])
        for line in rec_sale_line:
            dict_lines = {'product_id':line.product_id.id,
                          'product_uom_qty':line.product_uom_qty,
                          'price_unit':line.price_unit,
                          'sub_total':line.price_subtotal
                }
            lines.append(dict_lines)
    partner_id=lst[0] 
    data = {
                'partner_id': partner_id,
                'confirmation_date': fields.Datetime.now(),
                'lst':lst,
                'lines':lines,
                }
    print line.product_id.name
    print line
    print type(lst)

    return self.env['report'].get_action([],'order_log.report_template_demo',data=data) 
...