Publicidad

viernes, 16 de octubre de 2015

Solucion a la Impresion sin Estilos de Reportes Qweb (WkhtmltoPdf, Css, Formato,etc..)

Solución a la Impresión de Reportes Qweb sin Estilos


    Hoy quiero hacer mención a un error que nunca me había sucedido y que me tenia frustrado pase varios días investigando para encontrar la solución, el error sucedía en la impresión de reportes hechos con Qweb estos se generaban sin formato y sin estilo, al principio como todo analista trate de identificar el Problema, primero probando la versión de la librería Wkhtmltopdf, esto sin tener ningún éxito, segundo revisando y borrando archivos temporales, cache del servidor, etc. Buscando en foros, grupos y demás encontré parte de la solución y revisando el código del modulo report complemente la solución final.


La imagen anterior muestra la salida de mi reportes Qweb, como observamos no tiene Estilos.

La solución.

Existen 2 formas de solucionar este error:

1. Modificando el Parámetro del Sistema llamado web.base.url  y verificar que en el valor no usemos un alias o una ip diferente a localhost.

En caso de que tengan un alias como la imagen anterior http://poncesoft.noip.com:9069 debemos cambiarla por http://localhost:9069.

2. La segunda forma de solucionar este error es añadiendo un nuevo parámetro llamado report.url  y con el valor mencionado anteriormente http://localhost:9069.
Estos parámetros indican al sistema la dirección física para tomar los estilos del reporte.

Resultado Final:


Nota: Los parámetros del Sistema están ubicados en Configuración --> Parámetros --> Parámetros del Sistema.





37 comentarios:

  1. Una consulta y si quiero hacer una web sin estilos en mi caso es para una factura como se podría hacer.

    Saludos

    ResponderBorrar
    Respuestas
    1. Los estilos se importan al diseñar tu reporte, en caso de que no requieras Estilos estos pueden ser desactivados desde la configuracion de Reporte Qweb o siempre puedes hacerlos en RML, Jasper Reports o Aeroo Reports.

      Saludos.

      Borrar
  2. Respuestas
    1. Claro que si, de hecho odoo aun los usa en algunos modulos, cambiaron la forma de importar las librerias.

      Saludos

      Borrar
  3. Que tal Sr. Ponce usted habla de importar estilos en los reportes, si no es molestia podria dar una pista de como hacer eso.! Gracias

    ResponderBorrar
    Respuestas
    1. Que tal Renier, esto se hace desde la definicion del reporte. Tendria que revisar la documentación de Qweb de Odoo. Saludos

      Borrar
  4. Excelente aporte, me funcionó en odoo v9 y v10. El problema surgió cuando restauré una base de datos. Los reportes de las cotizaciones de pronto se imprimían sin estilos.

    Gracias!!.

    ResponderBorrar
  5. Excelente aporte, me funcionó en la versión 8.0

    ResponderBorrar
  6. Buen Dia

    Escelente aporte, podrias compartir ese formato de factura gracias.

    ResponderBorrar
  7. Buen Dia

    Escelente aporte, podrias compartir ese formato de factura gracias.

    ResponderBorrar
  8. Gracias German esto era un dolor de cabeza!!

    ResponderBorrar
  9. German Buena Tarde es version Odoo 9 gracias.

    ResponderBorrar
  10. Saludos amigo
    Quiero agregar un fondo de pagina a las cotizaciones, ya utilice el comando background pero no me funciona, ¿alguna sugerencia?

    _Gracias..!!!

    ResponderBorrar
    Respuestas
    1. Que tal Walter, puedes utilizar Jasper Reports, este te permite realizar mas adaptaciones a los Reportes.

      Borrar
  11. Buenos dias mi problema es que tengo que tener 26 campos ajustados en un reporte pero solo salen 11 campos como ajustar los campos al tamaño de la hoja?

    ResponderBorrar
    Respuestas
    1. Hay de 2 sopas o generas un tamaño de hoja mas grande o generas estilos con tamaño mas pequeño o un dpi a 300.

      Borrar
  12. Excelente aporte German!
    En mi caso tenía http://ip_publica:9999, lo cambie a http://localhost:9999.

    ResponderBorrar
  13. Muchas gracias por compartir, me ha servido de mucho.

    ResponderBorrar
  14. He probado las dos cosas y sigue igual. osea me pone el formato, pero el tipo de letra es estilo times new roman, que no es la que se ve en las previews de donde seleccionas el modelo de plantilla.

    ResponderBorrar
  15. En mi caso ha ocurrido en la version 11 de Odoo, ejecutandose dentro de un docker que se encuentra dentro de una máquina virtual y gestionado por un nginx dentro de otra máquina virtual de la misma red(192.168.1.5/24). La solución ha sido apuntar el parametro indicado a la red interna del docker, en mi caso 172.18.0.3:8069. Muchas Gracias Germán

    ResponderBorrar
    Respuestas
    1. Muchisimas gracias por el aportazo, Docker me gusta mucho pero sigo aprendiendo, esto no me ha sucedido y con tu ayuda sabre que hacer. Saludos

      Borrar
  16. Me funcionó el primer método. Muchas gracias!

    ResponderBorrar
  17. La solución funciona, pero cuando se trabaja con dbfilter no funciona; supongo porque Odoo busca en la url la BD y con localhost o una ip local no consigue la BD y te saca de sesión y no resuelve el problema. Alguna sugerencia para la solución. Gracias y saludos,

    ResponderBorrar
    Respuestas
    1. Listo, solución encontrada. Hay que colocarle el nombre de la base de datos a la ip local. Ejemplo: http://dbname.127.0.0.1.xip.io:8069

      Borrar
  18. amigo, tengo ese mismo problema en odoo 13 pero no se donde modificar ese parametro!! a donde entro a donde voy!! estoy en modo desarrollador, pero no se a donde ir para buscar ese parametro. podrias por favor inficarme?? gracias

    ResponderBorrar
    Respuestas
    1. Amigo German por favor ayudame!! mi correo es skylangroup@gmil.com y mi numero whatsapp +1 829-549-6230

      Borrar
  19. Muha gracias soluciono mi problema Dios te llene de bendiciones

    ResponderBorrar