Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
688 Weergaven

is it possible to print multiple record many2many to the qweb in odoo 8 

because i tried its always passing one record. 


class WizProductionRecap(models.TransientModel):
_name = 'wiz.production.recap'


sale_id = fields.Many2many('sale.order', string="Sales Order", required=True)


@api.multi
def action_print(self):
if self.sale_id:
_logger.info("SALE ORDER sale_id: %s", self.sale_id)
datas = {
'ids': self._ids,
'model': 'wiz.production.recap',
'form': self.read()[0]
}
report_name = 'mrp_jewelry_pdo.report_production_recap_document'
pdo_id = self.env['mrp.jewelry.pdo'].search([('sale_id', 'in', self.sale_id.ids)])
if pdo_id:
return self.env['report'].get_action(pdo_id[0], report_name, data=datas)
else:
return None


and the abstract

class ReportProductionRecap(models.AbstractModel):
_name = 'report.mrp_jewelry_pdo.report_production_recap_document'

@api.multi
def render_html(self, data=None):
_logger.info("RENDERING records: %s", self)
report_obj = self.env['report']
report = report_obj._get_report_from_name('mrp_jewelry_pdo.report_production_recap_document')

pdo_obj = self.env['mrp.jewelry.pdo']
docargs_list = []
for record in self:
pdo_records = pdo_obj.search([('sale_id', '=', record.id)])
sales_orders = pdo_records.mapped('sale_id')

docargs = {
'doc_ids': self.env["wiz.production.recap"].browse(data["ids"]),
'doc_model': report.model,
'docs': self,
'data': data,
'pdo_id': pdo_records.ids,
'sale_id': sales_orders.ids,
'pdo_records': pdo_records,
'sales_orders': sales_orders,
}
docargs_list.append(docargs)
return [report_obj.render('mrp_jewelry_pdo.report_production_recap_document', docargs) for docargs in
docargs_list]


Avatar
Annuleer