Mikmoro Posted February 1 Share Posted February 1 Buenos días. Tengo que mantener una instalación de PS 8.1.7 heredada. ¿Alguien sabe por qué modificando los archivo invoice.tpl o invoice-product.tpl, la generación del PDF de una factura no cambia absolutamente nada? Si modifico el style afecta correctamente, pero modificando los archivos que supuestamente deberían afectar al contenido no ocurre nada. De hecho, incluso eliminando el archivo tampoco ocurre nada, así que me temo que lo está generando con otros archivos que no consigo encontrar. Existe un archivo override/classes/pdf/HTMLTemplateInvoice.php, que afecta al ancho de las columnas, pero tampoco el contenido del bloque de productos varía cambie lo que cambie. La verdad es que no encuentro qué ocurre. Gracias de antemano. Link to comment Share on other sites More sharing options...
JCarlosRuiz Posted February 3 Share Posted February 3 Hola, Has probado a limpiar cache después de realizar los cambios? Link to comment Share on other sites More sharing options...
Mikmoro Posted February 4 Author Share Posted February 4 Sí, gracias por responder. No consigo averiguar qué ocurre. El bloque de productos no aparece al 100% de ancho y no encuentro qué le cambia el width con respecto a lo que indican la plantilla y el override. Link to comment Share on other sites More sharing options...
JCarlosRuiz Posted February 5 Share Posted February 5 puedes indicar que parte del código está cambiando? en teoria hay unos parámetros en ese archivo que indican el % del ancho de cada columna y que entre todos deben sumar 100%. Link to comment Share on other sites More sharing options...
Mikmoro Posted February 6 Author Share Posted February 6 Bueno, parece que el problema del ancho proviene del override: <?php class HTMLTemplateInvoice extends HTMLTemplateInvoiceCore { protected function computeLayout(array $params) { $layout = [ 'reference' => [ 'width' => 12, ], 'product' => [ 'width' => 33, ], 'quantity' => [ 'width' => 8, ], 'tax_code' => [ 'width' => 7, ], 'unit_price_tax_excl' => [ 'width' => 0, ], 'total_tax_excl' => [ 'width' => 0, ], 'total_tax_incl' => [ 'width' => 0, ], ]; if (isset($params['has_discount']) && $params['has_discount']) { $layout['before_discount'] = ['width' => 0]; $layout['product']['width'] -= 5; $layout['reference']['width'] -= 3; } $total_width = 0; $free_columns_count = 0; foreach ($layout as $data) { if ($data['width'] === 0) { ++$free_columns_count; } $total_width += $data['width']; } $delta = 100 - $total_width; foreach ($layout as $row => $data) { if ($data['width'] === 0) { $layout[$row]['width'] = $delta / $free_columns_count; } } $layout['_colCount'] = count($layout); return $layout; } No encuentro por ninguna parte información de cómo conseguir que la factura para clientes finales (no B2B), presente los precios PVP, es decir, con el IVA incluido y no excluido, como aparecen ahora. Link to comment Share on other sites More sharing options...
JCarlosRuiz Posted February 6 Share Posted February 6 Los productos tienen asociado un impuesto? En la configuración del grupo está marcado mostrar con impuestos? Link to comment Share on other sites More sharing options...
Mikmoro Posted February 6 Author Share Posted February 6 Sí, y sí Gracias por responder, jcarlosruiz. Yo creo que casi todo lo configurable desde el backend está probado. Imagino que es algo del php en el override que no consigo encontrar. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now