Imprimiento múltiples reportes en uno

Gustavo Orrillo
- 26/05/2022 - 1 min. de lectura


Muchas veces los usuarios necesitan imprimir múltiples reportes con un solo botón (o tener un reporte que incluye múltiples reportes). Como se puede hacer eso a nivel programación? Lo resolví creando un nuevo reporte, y en el template de dicho reporte llamar a cada uno de los reportes que quiero imprimir. Como ejemplo queremos imprimir juntos dos reportes de facturas; Factura y Factura sin pagos (de vuelta, es un ejemplo). Debajo los muestro el código de como lo hago

Primero creo el archivo report.xml donde defino el reporte (Factura Completa) de la siguiente manera:

<record id="full_report_invoice" model="ir.actions.report">
    <field name="name">Factura Completa</field>
    <field name="model">account.move</field>
    <field name="report_type">qweb-pdf</field>
    <field name="report_name">mi_modulo.account_move_full_report_template</field>
</record>

Y luego defino el template en donde voy a llamar a los dos reportes que necesito imprimir:

<template id="account_move_full_report_template">
    <t t-call="account.report_invoice"></t>
    <t t-call="account.report_invoice_with_payments"></t>
</template>

Como pueden ver, el template nuevo es bastante sencillo y lo único que hace es llamar a los otros reportes. Tengan en cuenta que cada reporte se imprime en una página diferente. Prueben y después me cuentan.

Acerca de:

Gustavo Orrillo

Passionate about programming, he has implemented Odoo for different types of businesses since 2010. In Moldeo Interactive he is a founding Partner and Programmer; In addition to writing on the Blog about different topics related to the developments he makes.