La modificación y la maquetación de los pdf que generamos en los pedidos, albaranes y facturas de Vituemart, son bastante complejos y no es una tarea fácil.

Aunque el componente virtuemart nos ofrece en el menù >>Tienda una forma bastante interactiva de modificar los pdf que genera, aunque con bastantes limitaciones.

Modificacion FacturasEmailsVirtuemart

 

IDEAL CREAR UN COMPONENTE INDEPENDIENTE A VIRTUEMART

Si quisieramos algo más funcional y práctico deberíamos crear un componente totalmente independiente de virtuemart, donde obtuviera los datos de los pedidos que se generan en virtuemart, para luego generar nosotros esa documentacion (pedidos,albaranes y facturas ), de una forma mucho más práctica y editable.

De momento por falta de tiempo, está opción la descartamos, aunque no buscamos en la red por si ya existe algo hecho.

EMPEZAMOS CON LA MAQUETACIÓN Y PROGRAMACION PDF VIRTUEMART

Antes de nada debemos saber como funciona virtuemart con el tema de los pdf que genera virtuemart.

Lo primero que debemos saber es que los pdf de las facturas los guarda en el directorio que le indicamos en la configuracion de virtuemart en pestalla de plantilla en casilla "Ruta Segura".

ruta-segura-virtuemart

En la ruta que le indicamos hay un directorio con el nombre invoice , donde guarda los pdf de las facturas que ya generamos.

Por este motivo, tenemos que tener en cuenta que estos ficheros no se vuelve a generar aunque hago clic en factura dentro de pedido, simplemente nos muestra los el fichero de esa carpeta.

Por lo que es recomendable, que se haga una copia de seguridad de esos ficheros, y luego eliminarlos de ese directorio para poder ver los resultados de la maquetacion que estamos cambiando.

Otra cosa que debemos conocer si queremos entender este tutorial o guia, es que nosotros realizamos overwrite de las vistas virtuemart en nuestra plantilla, así de esta forma tenemos asegurado que aunque actualicemos virtuemart, nunca nos va borrar nuestros cambios

IDENTIFICAR LOS FICHEROS QUE CREAN LOS PDF.

Como ya comente, el nivel de dificultad de cambiar los pdf , es bastante elevado, por lo que debéis tener conocimiento amplio del funcionamiento Joomla, algo php y html.

Los ficheros de nuestra plantilla que debemos cambiar son /template/html/com_virtuemar/invoice

No penseís que como estamos en la parte administrativa, tenemos que modificar o crear overwirte de la vista de back-end Joomla, ya que Virtuemart utiliza los ficheros front-end para generar los pdf, por lo que queda claro que los ficheros que tocamos son overwrite la plantilla que utilizamos en FRONT-END.

Ficheros que identificamos en template/com_virtuemart/invoice/:

  • invoice.php : Este fichero nos muestra datos del vendedor y carga el resto ficheros.
  • invoice_order: Muestra los datos iniciales despues de la cabecera, como son numero de factura y los datos facturacion.
  • invoice_items: Muestra los datos linea a linea de los productos.
  • invoice_history: No muestra los pedidos anteriores.

Hasta aquí no hay nada que podamos decir peligroso, ya que es cambios en overwirte de nuestra plantilla.

Lo complejo es si queremos cambiar la cabecera de los pdf, ya los carga antes de invoice, algo que no entiendo porque lo hacen así en virtuemart.

Lo carga en el fichero del views del componente , en el fichero components/com_virtuemart/views/invoice/view.html.php , por lo que recomiendo intentar por todos lo medios no tocarlo ya que cualquier actualización virtuemart puede afectar esos cambios.

<< Bueno hasta aquí llegué , más adelante continuo explicando algunos detalles de los cambios que nos pidieron en un tienda on-line creada con virtuemart >>

 

 

FUENTE DE REFERENCIA:

- SVN de virtuemart: http://dev.virtuemart.net/svn/virtuemart/trunk/virtuemart/components/com_virtuemart/helpers/vmpdf.php

- Foro de webempresa: Con este foro me surgieron algunas ideas.