Jump to content

¡Solucionado! Artículos cortados en pdf de factura


AliceCAD

Recommended Posts

Buenas tardes...
Espero que alguien me pueda ayudar.
Cuando imprimo el pdf de una factura, al final de una página me pone la descripción del artículo, cantidad y precio y envía al inicio de la siguiente página la imagen del artículo.
Adjunto pdf con factura impresa para mostrar el corte de los artículos que menciono.
¿Cómo puedo arreglar el generador del pdf para que no corte los artículos?

Espero sus comentarios y muchas gracias por su atención.
Saludos,
Alicia

GN002323.pdf

Edited by AliceCAD (see edit history)
Link to comment
Share on other sites

Hola AliceCAD,

Nosotros (la agencia Rekire: https://rekire.com), lo que hacemos en estos casos es uso de un módulo que está muy bien.

image.thumb.png.3570bfab1a38bb567ecfdbcc5032d027.png

Con este módulo, puedes crear la plantilla de tu factura a medida con formato HTML.
Además, si quieres el módulo más el servicio de configuración, en Rekire está a buen precio, tiene un coste de 2,5 horas de trabajo.
Si tienes interés, me contactas por privado, y si no, pues adelante con el módulo, lo recomiendo y seguro que te saca del apuro.

Saludos.

Link to comment
Share on other sites

eres de Cuernavaca, mexico, te recomiendo primero pongas el tamaño de papel a LETTER .

{server}/classes/pdf/PDFGenerator.php

por la linea 83    'A4'    a 'LETTER'

        parent::__construct($orientation, 'mm', 'A4', true, 'UTF-8', $use_cache, false);

 

para ocultar precio base.

veo que usas las facturas predeterminadas de prestashop.. la pregunta, que tipo de factura usas, ya que prestashop tiene dos (invoice, o invoice-b2b)

en el caso si usaras invoice los archivos estan aqui y es este archivo

{server}/pdf/invoice.product-tab.tpl

 

{l s='Base price' pdf='true'} <br /> {l s='(Tax excl.)' pdf='true'}    <<<---comentas este contenido, es el texto de la cabezera. al parecer por la linea 34

 

tambien comentaras esto, estos son los valores a mostrar de cada producto de precio base por la linea 79

                    {if isset($order_detail.unit_price_tax_excl_before_specific_price)}
                        {displayPrice currency=$order->id_currency price=$order_detail.unit_price_tax_excl_before_specific_price}
                    {else}
                        --
                    {/if}
 

espero te ayude, deja trato de ver lo de la imagen... 

saludos a Cuernavaca, Ciudad de la Eterna Primavera

 

Link to comment
Share on other sites

58 minutes ago, Gerardo Martinez G said:

eres de Cuernavaca, mexico, te recomiendo primero pongas el tamaño de papel a LETTER .

{server}/classes/pdf/PDFGenerator.php

por la linea 83    'A4'    a 'LETTER'

        parent::__construct($orientation, 'mm', 'A4', true, 'UTF-8', $use_cache, false);

 

para ocultar precio base.

veo que usas las facturas predeterminadas de prestashop.. la pregunta, que tipo de factura usas, ya que prestashop tiene dos (invoice, o invoice-b2b)

en el caso si usaras invoice los archivos estan aqui y es este archivo

{server}/pdf/invoice.product-tab.tpl

 

{l s='Base price' pdf='true'} <br /> {l s='(Tax excl.)' pdf='true'}    <<<---comentas este contenido, es el texto de la cabezera. al parecer por la linea 34

 

tambien comentaras esto, estos son los valores a mostrar de cada producto de precio base por la linea 79

                    {if isset($order_detail.unit_price_tax_excl_before_specific_price)}
                        {displayPrice currency=$order->id_currency price=$order_detail.unit_price_tax_excl_before_specific_price}
                    {else}
                        --
                    {/if}
 

espero te ayude, deja trato de ver lo de la imagen... 

saludos a Cuernavaca, Ciudad de la Eterna Primavera

 

Buenas tardes, Gerardo...

Cuernavaca también te manda calurosos saludos.

Muchas gracias por tu aporte... Logré avanzar bastante.

Adjunto el archivo con los cambios que me sugirieron tú y Mikel EPALZA. No saben cuánto se los agradezco.

Ahora, el encabezado del cuerpo de los artículos, en la sección de producto, el tamaño se redujo.

Por otro lado... No deseo eliminar la imagen, pretendo que no me corte los artículos al final de cada página y, que tampoco, se encime en el pie de página. Y si observas el inicio de la página 2, el artículo se encima en mi logotipo. Me queda claro que, como dice Mikel, debo jugar con ciertos porcentajes o parámetros de medida, pero aún no doy con cuáles.

Ya logré encontrar cómo hacer que se imprima página 1/2, porque no salía. Pero, al no ser programadora, voy avanzando muy poco a poco.

Agradezco toda la ayuda que me están brindando.

Saludos cordiales,
AliceCAD

GN002323.pdf

Link to comment
Share on other sites

Buenas tardes, Gerardo...

Ya logré avanzar... Ya solo me resta poder limitar que los artículos, en la base de la hoja, no se encimen al pie de página y, que en inicio de la siguiente página, no se encimen en el logotipo.

Te adjunto archivo, para que puedas ver mis avances.
No sé en qué archivo pueden estar los valores de los márgenes del cuerpo de la factura (porque supongo que por ahí va la cosa). Como que he logrado entender que el encabezado lo toma de un lado, el cuerpo del generador del pdf y en otro los datos del pie de página. Pero, los márgenes que está tomando el cuerpo de la factura no los he logrado encontrar.

Muchas gracias por tu ayuda.
Saludos cordiales,
AliceCAD

GN002343.pdf

Link to comment
Share on other sites

juega con estos valores, son los margenes, la verdad no se que tanto podrias jugar con ellos... apuntalos por un lado por si no cuadran

{server}/classes/pdf/PDFGenerator.php   <<<--- por la linea 214

 

    public function writePage()
    {
        $this->SetHeaderMargin(5);
        $this->SetFooterMargin(21);
        $this->setMargins(10, 40, 10);
        $this->AddPage();
        $this->writeHTML($this->content, true, false, true, false, '');
    }

 

Link to comment
Share on other sites

58 minutes ago, Gerardo Martinez G said:

juega con estos valores, son los margenes, la verdad no se que tanto podrias jugar con ellos... apuntalos por un lado por si no cuadran

{server}/classes/pdf/PDFGenerator.php   <<<--- por la linea 214

 

    public function writePage()
    {
        $this->SetHeaderMargin(5);
        $this->SetFooterMargin(21);
        $this->setMargins(10, 40, 10);
        $this->AddPage();
        $this->writeHTML($this->content, true, false, true, false, '');
    }

 

Buenas noches, Gerardo...
Mil gracias por toda tu ayuda. Gracias a ti, he avanzado mucho en la personalización de mi factura (que nosotros llamamos orden de compra).

Solo falta el tema de los artículos que se cortan en el cambio de página. Pero la verdad, es que con tu ayuda me atreví a meterme a estos archivos.

¡Mil gracias!

Te adjunto el archivo, para que veas los avances con tu alumna de primer grado.

Que tengas excelente noche.

AliceCAD

GN002334.pdf

Link to comment
Share on other sites

por nada, me alegra que te aya servido esto.

para lo de la imagen es aqui.

{server}/pdf/invoice.product-tab.tpl

de la linea 46 a la 146... es donde se genera todo esto de los productos con su imagen... ahora si, ayuda para que alguien te ayude a poner alguna sentencia {if}  que si esta por terminar la pagina o que ha llegado a su fin del margen de la pagina que aga salto de pagina...

es lo que se me ocurre para corregir ese problema, suerte y que alguien mas nos ayude...

 

Link to comment
Share on other sites

On 9/6/2019 at 2:43 PM, Gerardo Martinez G said:

por nada, me alegra que te aya servido esto.

para lo de la imagen es aqui.

{server}/pdf/invoice.product-tab.tpl

de la linea 46 a la 146... es donde se genera todo esto de los productos con su imagen... ahora si, ayuda para que alguien te ayude a poner alguna sentencia {if}  que si esta por terminar la pagina o que ha llegado a su fin del margen de la pagina que aga salto de pagina...

es lo que se me ocurre para corregir ese problema, suerte y que alguien mas nos ayude...

 

Hola, Gerardo... Buenas tardes.

Muchas gracias por todo el tiempo y ayuda que me has dado.

Ahí la llevo. Aunque no entendí tengo ni idea para que se haga un salto de página, estoy muy satisfecha de los avances.

He estado tratando de encontrar cómo quitar de la parte superior la dirección de facturación (ese bloque completo). Me encontré un archivo invoice.addresses-tab.tpl y estuve jugando a comentarle algunas secciones, pero yo creo que no me sale, porque no sé exactamente de dónde a dónde debo hacerlo.

Muchas gracias, saludos cordiales,

AliceCAD

GN002355.pdf

Link to comment
Share on other sites

5 hours ago, Gerardo Martinez G said:

invoice.addresses-tab.tpl

{*        <td width="50%"><span class="bold">{l s='Billing Address' d='Shop.Pdf' pdf='true'}</span><br/><br/>
                {$invoice_address}
        </td>    *}

Hola, Gerardo... Buenas noches.

No lo logro, pero ahora, el archivo invoice.addresses-tab.tpl original, ya no jala las direcciones a la parte superior de los pedidos. Le agregué ori al final para guardar el original y no dañarlo. Estuve probando y no me salió, pero al copiar el original y quitarle el ori ya no funciona.

No entendí con claridad, el código que me enviaste de dónde a dónde debía colocarlo.

Te adjunto el archivo original.

¿Me puedes ayudar, por favor?

Muchas gracias.

Saludos,
AliceCAD

invoice.addresses-tab.tpl

Link to comment
Share on other sites

14 hours ago, Gerardo Martinez G said:

lo que querias era comentar o quitar la dirección de facturación 

es comentar ese apartado y se comenta al inicio con {*      y al finalll    *}

te adjunto el archivo 

invoice.addresses-tab.tpl 1.46 kB · 0 downloads

Hola, Gerardo... Buenas tardes.

No tienes idea de cuánto agradezco toda tu ayuda y paciencia.

Te mando los archivos de dos pedidos... No sé por qué a veces pone la leyenda de la garantía arriba. Pero ya no voy a darte lata con esto. Ya estamos satisfechos con el avance. Quizá más adelante me dé por mi necedad nuevamente, pero por ahora, te dejaré tranquilo.

Muchísimas gracias!!!!

Saludos,
AliceCAD

GN002355.pdf GN002358.pdf

Link to comment
Share on other sites

On 9/10/2019 at 12:24 PM, AliceCAD said:

Hola, Gerardo... Buenas tardes.

No tienes idea de cuánto agradezco toda tu ayuda y paciencia.

Te mando los archivos de dos pedidos... No sé por qué a veces pone la leyenda de la garantía arriba. Pero ya no voy a darte lata con esto. Ya estamos satisfechos con el avance. Quizá más adelante me dé por mi necedad nuevamente, pero por ahora, te dejaré tranquilo.

Muchísimas gracias!!!!

Saludos,
AliceCAD

GN002355.pdf 23.68 kB · 0 downloads GN002358.pdf 18.06 kB · 0 downloads

Hola, Gerardo...

Disculpa de nuevo la molestia, por favor.

No sé que moví en las últimas modificaciones, que la cabecera de los productos, otra vez me aparece corrida hacia la izquierda.

¿Me puedes recordar como corregir eso, por favor?

Muchas gracias.

Saludos nublados, desde Cuernavaca.

AliceCAD

GN002360.pdf

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...