Jump to content

[Solucionado] Abrir facturas y albaranes (pdf) directamente en el navegador


Eusebio100
 Share

Recommended Posts

Hola, ¿alguien sabe como hacer para que los albaranes y facturas se abran directamente con el navegador?

Me gustaria que se abriesen directamente con el visor de chrome o firefox, pero no se abren, solo me da la opción de descargar y abrir después con acrobat o similar. Si alguien sabe como hacerlo le estaría agradecido.

 

Un saludo.

Edited by Eusebio100 (see edit history)

Share this post


Link to post
Share on other sites

Lo del explorer no es válido por que no usamos ese navegador.

 

La info que indica jordiob si que la tengo ya mirada. El caso es que no tengo ningún problema para abrir otros archivos, solo me pasa con los albaranes y facturas de prestashop; sin ir más lejos, las etiquetas de envío que las creo con prestashop se abren sin ningún problema, tanto en firefox como en chrome.

Share this post


Link to post
Share on other sites

¿Pero esto, no era dependiente de la configuración del navegador?

Si y no, depende de la configuración que tengas te preguntará o no, si quieres abrirlo; también puedes desde el sistema configurar el navegador como programa por defecto para visualizar PDF.

Pero lo que yo pregunto es otra cosa, y creo que he encontrado la solución. En la clase PDF de prestashop hay una variable $mode que puede coger los valores "d" (display) y "D" download, por defecto está en "D" y hay que cambiarlo; pero creo que aún hay algo más, cuando acabe las urgencias de la tarde me pongo a ello. Ya os contaré la solución cuando lo tenga probado.

Share this post


Link to post
Share on other sites

Si y no, depende de la configuración que tengas te preguntará o no, si quieres abrirlo; también puedes desde el sistema configurar el navegador como programa por defecto para visualizar PDF.

Pero lo que yo pregunto es otra cosa, y creo que he encontrado la solución. En la clase PDF de prestashop hay una variable $mode que puede coger los valores "d" (display) y "D" download, por defecto está en "D" y hay que cambiarlo; pero creo que aún hay algo más, cuando acabe las urgencias de la tarde me pongo a ello. Ya os contaré la solución cuando lo tenga probado.

 

¿La has cambiado? ¿Como fue?

Share this post


Link to post
Share on other sites

Asunto resuelto; lo pongo por si le sirve a alguien.

 

Cambiando el valor de la variable como dije en el post anterior, se consigue que en lugar de abrir una ventana de descarga, se abra el archivo directamente con el visor pdf que tengas preestablecido.

En PDF.php cambiar:

public static function invoice($order, $mode = 'D', $multiple = false, &$pdf = NULL, $slip = false, $delivery = false)

Por:

public static function invoice($order, $mode = 'd', $multiple = false, &$pdf = NULL, $slip = false, $delivery = false)

 

Si lo que queremos es que se abra siempre con el navegador, sea cual sea el visor por defecto, lo que hay que hacer es evitar que genere un nombre de archivo al crear el pdf.

En la misma función, al final, cambiar:

return $pdf->Output(sprintf('%06d', self::$order->id).'.pdf', $mode);

Por:

// return $pdf->Output(sprintf('%06d', self::$order->id).'.pdf', $mode);
  return $pdf->Output();

Por supuesto que el navegador debe tener instalado el plugin para visualizar pdf's.

 

Edito: Añado que el mismo proceso es válido para la impresión multiple de albaranes y/o facturas; en el mismo archivo hay que buscar la función correspondiente y hacer los cambios.

Eso es todo.

Edited by Eusebio100 (see edit history)

Share this post


Link to post
Share on other sites

Asunto resuelto; lo pongo por si le sirve a alguien.

 

Cambiando el valor de la variable como dije en el post anterior, se consigue que en lugar de abrir una ventana de descarga, se abra el archivo directamente con el visor pdf que tengas preestablecido.

En PDF.php cambiar:

public static function invoice($order, $mode = 'D', $multiple = false, &$pdf = NULL, $slip = false, $delivery = false)

Por:

public static function invoice($order, $mode = 'd', $multiple = false, &$pdf = NULL, $slip = false, $delivery = false)

 

Si lo que queremos es que se abra siempre con el navegador, sea cual sea el visor por defecto, lo que hay que hacer es evitar que genere un nombre de archivo al crear el pdf.

En la misma función, al final, cambiar:

return $pdf->Output(sprintf('%06d', self::$order->id).'.pdf', $mode);

Por:

// return $pdf->Output(sprintf('%06d', self::$order->id).'.pdf', $mode);
  return $pdf->Output();

Por supuesto que el navegador debe tener instalado el plugin para visualizar pdf's.

 

Eso es todo.

 

Estimado Eusebio100,

 

Gracias por tu colaboración con la comunidad de Prestashop !

 

Si tienes un hueco, te recomiendo recopilar tal información y crear un post como aporte en la sección de aportes: http://www.prestasho...ambian-la-vida/

 

En estos momentos se esta creando distintos indices.

 

Por cierto, si das el tema como solucionado, edita el titulo del tema, editando el primer mensaje, pulsando en editar, y después en "Usar editor completo", añadiendo la palabra "Solucionado" al titulo, esto ayudara, a mantener una mayor organización en el foro.

 

Un Saludo

Share this post


Link to post
Share on other sites

Pues efectivamente resulta mucho más cómodo y rápido usar el navegador para los pdf's, pero nos hemos dado cuenta que para abrir los pdf's en el navegador, se hace necesario abrirlos siempre en una nueva pestaña (o ventana), si no lo haces así, es fácil equivocarse y cerrar el navegador, perdiendo la sesión, etc.

 

Lo he modificado para que siempre se abra en una nueva pestaña, y de paso he tuneado un poco el admin para que sea un poco más visible y claro, adjunto captura:

Captura.JPG

Adjunto también los archivos modificados sobre el original de PS 1.4.7.0, que es el que nosotros tenemos; para esta versión basta con sustituir los archivos, para otras versiones o si teneis modificaciones previas, usad un comparador y hacer los correspondientes cambios en los archivos.

 

- Los archivos AdminDeliverySlip.php, AdminInvoices.php y AdminOrders.php van a la carpeta: admin/tab/

- El archivo PDF.php a la carpeta: classes/

- El archivo images_pdf2.gif a la carpeta: images/admin/

No olvideis hacer las traducciones de los cambios.

 

Eso es todo, espero que os sirva.

AdminDeliverySlip.php

AdminInvoices.php

AdminOrders.php

post-334519-0-60237100-1357383141.gif

PDF.php

Share this post


Link to post
Share on other sites

Estimado Eusebio100,

 

Esto que has comentado, añadelo como te dije anteriormente aquí: http://www.prestasho...ambian-la-vida/, sino tu aporte, no podra ser añadido al índice de aportes de la comunidad y por lo tanto sera menos visible para el resto de usuarios.

 

Un saludo y gracias por la colaborar con la comunidad.

Hecho.

Un saludo, y que los reyes os traigan lo que le pedís, y no lo que les da la gana como a mi.

Share this post


Link to post
Share on other sites

Hecho.

Un saludo, y que los reyes os traigan lo que le pedís, y no lo que les da la gana como a mi.

 

Estimado Eusebio100,

 

Perfecto !

 

PD: (Siento ser un poco pesado, pero es que sino, no organizamos el foro, ni comiendo conguitos)

 

(Tu aporte recien creado, ya ha sido añadido al índice de aportes: http://www.prestasho...s-foro-espanol/ )

 

Un Saludo !

Share this post


Link to post
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More