Hola amigos vamos a ver como agregar un nuevo formato de impresión de un documento (Boletas) para un modelo determinado.
Por ejemplo en el menú de Imprimir del formulario de Factura vemos que por defecto en viene el submenu Facturas, vamos agregar un nuevo formato de impresión (Boletas) de tal forma que visualicemos así:
-
PASO 1: CREAMOS UN NUEVO REPORTE.
Nos vamos a la ruta siguiente en Odoo Configuracion/Tecnico/Informes/informes creamos un nuevo reporte
y rellenamos los campos solicitados de fondo morado.
Los Campos:
Nombre: Es el nombre del submenú que se mostrará, como se ve en la imagen primera.
Nombre de Plantilla: Siempre empieza con el nombre del modulo.nombre_reporte.Un detalle a tener en cuenta es ver en la barra de direcciones el id que asigna Odoo a este reporte luego de guardarlo, para nuestro caso id=439 tal como vemos en la imagen siguiente:
-
PASO 2: CREANDO LA VISTA
Nos vamos a la ruta Configuracion/Tecnico/Interfaz de Usuario/Vistas y creamos una nueva vista y rellenamos los campos de fondo morados que son los obligatorios, tal como muestra la imagen siguiente:
Tipo de vista: Odoo a partir de la version 8 (v8) trabaja con Qweb como motor de plantillas para reportes
Estructura: Es aquí es donde colocaremos el código fuente en HTML para construir nuestro reporte
<?xml version="1.0"?> <t t-name="account.report_invoice_boleta"> <t t-call="report.html_container"> <t t-foreach="docs" t-as="o"> <div class="page"> HOLA MUNDO BOLETA! </div> </t> </t> </t>
Linea 5: Este <div class=»page»> siempre debe de ir, ya que dentro de ella se diseñará el reporte.
El nombre de la plantilla creada lo asignamos con el atributo
t-name=»account.report_invocie_boleta«, este nombre debe ser el mismo que se colocó en el formulario del paso 1, campo Nombre de Plantilla (Ver imagen)
Luego de guardar la Vista debemos de ver en la barra de direcciones del navegador web el id que asignó Odoo a nuestra vista, para nuestro caso es id=808
-
PASO 3: CREANDO UN NUEVO IDENTIFICADOR
Este nos permitirá crear un id externo a nuestra vista.
Nos vamos a la ruta Configuracion/Tecnico/Secuencias e identificadores/Identificadores externos, y creamos un nuevo identificador
Modulo: Para nuestro caso es el modulo account
Identificador externo: para nuestro caso report_invoice_boleta, es el nombre de la plantilla (PASO 1) solo que hemos suprimido account, por convención es de esa forma.
Nombre del modelo: Como estamos creando un identificador para una vista el valor siempre es: ir.ui.view
ID de registro: Este campo es importante ya que aquí colocamos el ID de nuestra vista (paso 2) al cual asociaremos el identificador, para nuestro ejemplo id=808
Guardamos y veremos la asociación hecha:
Podemos estar seguro de que la asociación fue hecha correctamente porque el campo Display Name muestra el nombre de la vista hecha en el paso 2, para nuestro caso Plantilla de Boleta.
-
PASO 4: CREANDO UNA ACCION
Permite asociar una acción al reporte creado en el paso 1.
Nos vamos a la ruta Configuracion/Tecnico/Acciones/Enlace acciones
Creamos un nuevo enlaceReferencia de la acción: Aquí colocamos el id del reporte que nos generó Odoo en el paso 1, para nuestro caso es id=439.
ir.actions.report.xml,439
Finalmente regresamos al formulario de Factura y veremos el Menú creado.
Es todo amigos espero que les sea de ayuda.
Gracias.
14 comentarios
RUBEN ISLA · 19/03/2015 a las 8:46 am
buenos dias, en el paso 4 cual es el id=339(el cual en la imagen pones 439) de registro que mencionas el cual genera el paso 1, en donde lo consigo?
Javier Salazar Carlos · 19/03/2015 a las 10:19 am
Hola he escrito mal el ID, ya lo corregí, en realidad es ID=439, este ID lo consigues en el paso1, caso contrario deberías de ingresar en modo desarrollador en Odoo y conseguir este ID.
Samuel Quispe · 04/07/2015 a las 10:24 pm
Buenas como logras conseguir que aparesca la opcion Tecnico en tu opciones (Configuracion/Tecnico/Informes/informes), en las version 7 si la veia pero en Odoo 8 no, espero tu respuesta, te lo agradeceria bastante.
Javier Salazar Carlos · 16/07/2015 a las 8:16 am
Al usuario admin debes de darle el permiso de «Características Técnica»
Martin Quispe · 23/12/2015 a las 1:03 pm
Hola !!, torpeza mia ya esta activado !!, gracias !!, ahora sin abusar de tu confianza, una vez ya creado ese reporte, se puede agregar a la ventana del tpv?, es decir que salga la opcion Invoice (Factura) y Boleta??, o ya sale por inercia?, y tambien como modificar ese «Hola Mundo», espero tu respuesta, saludos¡¡
Francisco Lira · 02/09/2015 a las 11:24 pm
Excelente ejemplo, muy claro, pero ¿cuál sería el código para un módulo que haga esto?
Saludos.
Juan Carlos Castillo · 02/10/2015 a las 3:46 am
¡Excelente tutorial!, no he encontrado nada parecido en la web. felicidades.
Pero… ¿Existe algun tutorial para configurar el contenido del informe?, es decir, modificar ese HOLA MUNDO BOLETA! por el original modificado unicamente en formato del pdf generado.
Muchas gracias
HErnan · 16/08/2016 a las 2:09 pm
Hola! En el ejemplo cual sería el nombre con el saldría el PDF? Se puede personalizar para que salga con el número de boleta o factura?
Hernan Pinzon · 31/03/2017 a las 2:23 pm
Buen Dia
Amigos cominidad Odoo, estos reportes se les pede agregar una grafica? se pueden exportar los informes ya creados?
Yeimy Carolina · 20/04/2017 a las 3:17 pm
Buen día, no cuento con los permisos para crear el enlace de acciones … me aparece el siguiente mensaje … Acceso denegado
La operación no ha podido ser completada por restricciones de seguridad. Por favor contacte con su administrador de sistema.
(Tipo de documento: ir.values, Operación: write)
por favor me colaboran con la solución,
mil gracias,
Javier Salazar Carlos · 11/05/2017 a las 5:12 pm
Toda la operación se recomienda realizar con el usuario admin.
Walter Falla Morales · 14/07/2017 a las 1:07 pm
Saludos
Como pongo una imagen de fondo, es decir para dejar un membrete en el formato de cotizaciones.
_Gracias..!!!
Eduardo Segovia Cruz · 20/09/2018 a las 1:44 pm
ValueError: External ID not found in the system: mrp.workorder.report_workorder
me tira el error de id externo no encontrado
Josue · 19/11/2019 a las 11:02 am
Cómo hago para que me imprima como en el formato ticket, o cambiar el formato de papel