Siirry sisältöön
Menu
Sinun on rekisteröidyttävä, jotta voit olla vuorovaikutuksessa yhteisön kanssa.
Tämä kysymys on merkitty
692 Näkymät

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
Hylkää