lpf Posted December 5, 2020 Share Posted December 5, 2020 (edited) Bonjour à tous, J'ai besoin d'intégrer le numéro de client dans les factures. Je travail donc sur le fichier "facture.summary-tab.tpl" et notamment sur cette partie du code correspondant au tableau à modifier : <table id = "summary-tab" width = "100%"> <tr> <th class = "header small" valign = "middle"> {ls = 'Numéro de facture' d = 'Shop.Pdf' pdf = ' true '} </th> <th class = "header small" valign = "middle"> {ls =' Facture Date 'd =' Shop.Pdf 'pdf =' true '} </th> <th class = " header small "valign =" middle "> {ls = 'Order Reference' d = 'Shop.Pdf' pdf = 'true'} </th> <th class =" header small "valign =" middle "> {ls = 'Order date' d = 'Shop.Pdf' pdf = 'true'} </th> {if $ addresses.invoice-> vat_number} <th class = "header small "valign =" middle "> {ls = 'VAT Number' d = 'Shop.Pdf' pdf = 'true'} </th> {/ if} </tr> <tr> <td class =" center petit blanc "> {$ title | escape: 'html': 'UTF-8'} </td> <td class = "center small white"> {dateFormat date = $ order-> facture_date full = 0} </td> <td class = "center small white"> {$ order-> getUniqReference ()} </td> <td class = "center small white"> {dateFormat date = $ order-> date_add full = 0} </td> {if $ addresses.invoice-> vat_number} <td class = "center small white"> {$ addresses .invoice-> vat_number} </td> Donc rajouter une colonne avec 2 cellules "numéro de client" et dessous "son numéro", avec la valeur { id_customer} Donc première ligne quelque chose comme : <th class = "header small" valign = "middle"> {ls = 'Customer Number' d = 'Shop.Pdf' pdf = 'true'} </th> Ou déclarer le fameux " Numéro de client "pour avoir le texte" Numéro de client " Et deuxième ligne quelque chose comme :<td class = "center small white"> {le je ne sais pas car id_customer } </td> ne fonctionne pas. J'ai fait beaucoup de recherche et pas mal de tentatives en vain ... Merci pour votre retour Version prestashop 1.7.6.5 Edited December 5, 2020 by lpf (see edit history) Link to comment Share on other sites More sharing options...
doekia Posted December 5, 2020 Share Posted December 5, 2020 (edited) Vous devez en 1er faire une override du HTMLTemplate pour qu'il injecte en smarty les vazrables dont vous avez besoin et non native Mais ici la valeur existe dans {$order->id_customer} Edited December 5, 2020 by doekia (see edit history) Link to comment Share on other sites More sharing options...
lpf Posted December 8, 2020 Author Share Posted December 8, 2020 Bonjour doekia et bonjour à tous. Doekia, merci pour cette piste. Pour bien comprendre, je ne suis absolument pas codeur, donc j'ai étudié longuement la structure du code original et la façon don les "appels" par principe ce faisaient. Donc j'ai commencé à coder comme ceci : Dans le fichier ...\classes\pdf\HTMLTemplateInvoice.php J'ai ajouté cette ligne comme suit : Quote $data = array( 'order' => $this->order, 'order_invoice' => $this->order_invoice, 'order_details' => $order_details, 'carrier' => $carrier, 'cart_rules' => $cart_rules, 'delivery_address' => $formatted_delivery_address, 'invoice_address' => $formatted_invoice_address, 'addresses' => array('invoice' => $invoice_address, 'delivery' => $delivery_address), 'tax_excluded_display' => $tax_excluded_display, 'display_product_images' => $display_product_images, 'layout' => $layout, 'tax_tab' => $this->getTaxTabContent(), 'customer' => $customer, 'footer' => $footer, 'ps_price_compute_precision' => _PS_PRICE_COMPUTE_PRECISION_, 'round_type' => $round_type, 'legal_free_text' => $legal_free_text, /* Modifications numéro de client dans facture */ 'customer_number' => $order->id_customer, Puis dans ...\\themes\MonTheme\pdf\invoice.summary-tab.tpl J'ai ajouté le code comme suit : Quote <table id="summary-tab" width="100%"> <tr> {* Début modifications numéro de client dans facture *} <th class="header small" valign="middle">{l s='Customer number:' d='Shop.Pdf' pdf='true'}</th> {* Fin modifications numéro de client dans facture *} <th class="header small" valign="middle">{l s='Invoice Number' d='Shop.Pdf' pdf='true'}</th> <th class="header small" valign="middle">{l s='Invoice Date' d='Shop.Pdf' pdf='true'}</th> <th class="header small" valign="middle">{l s='Order Reference' d='Shop.Pdf' pdf='true'}</th> <th class="header small" valign="middle">{l s='Order date' d='Shop.Pdf' pdf='true'}</th> {if $addresses.invoice->vat_number} <th class="header small" valign="middle">{l s='VAT Number' d='Shop.Pdf' pdf='true'}</th> {/if} </tr> <tr> {* Début modifications numéro de client dans facture *} <td class="center small white">{$order->id_customer}</td> {* Fin modifications numéro de client dans facture *} <td class="center small white">{$title|escape:'html':'UTF-8'}</td> <td class="center small white">{dateFormat date=$order->invoice_date full=0}</td> <td class="center small white">{$order->getUniqReference()}</td> <td class="center small white">{dateFormat date=$order->date_add full=0}</td> {if $addresses.invoice->vat_number} <td class="center small white"> {$addresses.invoice->vat_number} </td> {/if} </tr> </table> Voila, je le répète, je ne suis absolument pas codeur, donc j'ai besoin de votre expertise pour mettre en évidences mes erreurs avant de mettre mon code en ligne et de planter une boutique en pleine production. Encore merci de vos remarques. Link to comment Share on other sites More sharing options...
doekia Posted December 8, 2020 Share Posted December 8, 2020 En fait, dans votre cas précis l'override n'est pas nécessaire puisque l'information existe sur order déjà présente. La modification du invoice-summary-tab.tpl suffit Testez sur votre local, si ça marche, bingo, sinon revenez avec le problème rencontré Link to comment Share on other sites More sharing options...
lpf Posted December 22, 2020 Author Share Posted December 22, 2020 Bonjour à tous bonjour @doekia BINGO ! Cela fonctionne parfaitement. Encore merci. Bonnes fêtes à tous et bon code. 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