THX9999 Posted October 2, 2012 Share Posted October 2, 2012 (edited) Bonjour, Je bascule mon site qui fonctionne depuis 2006 sur oScommerce vers Prestashop 1.5 ; je travaille depuis plusieurs mois sur cette nouvelle version prometteuse et compte d'ici quelque temps basculer définitivement sur cette 1.5. Dans l'ensemble j'arrive à m'en sortir, surtout grâce aux nombreuses réponses disponibles sur ce forum très actif. Malgré tout je n'arrive pas à trouver la solution pour remplacer les références commande de type "TRKUKRKML" par un chiffre de type "15648645". Si quelqu'un à la solution, merci d'avance. Cordialement. Olivier. Edited October 3, 2012 by THX9999 (see edit history) Link to comment Share on other sites More sharing options...
J. Danse Posted October 3, 2012 Share Posted October 3, 2012 Cela se passe dans la classe Order, voici la méthode: /** * Gennerate a unique reference for orders generated with the same cart id * This references, is usefull for check payment * * @return String */ public static function generateReference() { return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC')); } Il est donc possible de faire un override de la classe pour lui demander de ne mettre que du numérique. Attention, seul 9 caractères autorisés: (sauf si modification de la base de données !) 1 Link to comment Share on other sites More sharing options...
THX9999 Posted October 3, 2012 Author Share Posted October 3, 2012 Bonjour J.Danse, Génial, ça marche ! un grand merci pour ton aide. Olivier. 1 Link to comment Share on other sites More sharing options...
Foxalone Posted November 24, 2012 Share Posted November 24, 2012 (edited) bonjour, comment faut-il modifier cette partie pour qu'on retrouve bien les références commande en numérique comme avant la mise à jour vers la 1.5.2 j'ai bien lu le message au dessus mais ... jene sais pas comment faire merci d'avance Edited November 24, 2012 by Foxalone (see edit history) Link to comment Share on other sites More sharing options...
THX9999 Posted November 24, 2012 Author Share Posted November 24, 2012 (edited) Foxalone, Tu vas dans le dossier "classes", puis dans le dossier "order", tu ouvre le fichier order.php et tu trouves la ligne (autour de 1370) : return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC')); A la place tu mets : return strtoupper(Tools::passwdGen(9, 'NUMERIC')); et voilà... Edited November 24, 2012 by THX9999 (see edit history) 2 Link to comment Share on other sites More sharing options...
Foxalone Posted November 24, 2012 Share Posted November 24, 2012 (edited) Foxalone, Tu vas dans le dossier "classes", puis dans le dossier "order", tu ouvre le fichier order.php et tu trouves la ligne (autour de 1370) : return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC')); A la place tu mets : return strtoupper(Tools::passwdGen(9, 'NUMERIC')); et voilà... merci pour ton retour rapide oui ca je l'avais bien fait (ouf ça me rassure un peu ) mais je ne retrouve pas les références comme avant (avec les numéros 000000805) je retrouve bine des références numériques mais désordonnées. avant j'avais : id 805 références : 000000805 et maintenant j'ai id811 références : 378047802 c'est peut-être pas important mais cela me permet de bien me retrouver au niveau des commandes, facture etc... Edited November 24, 2012 by Foxalone (see edit history) Link to comment Share on other sites More sharing options...
Foxalone Posted November 25, 2012 Share Posted November 25, 2012 bonjour, comment est-il possible de faire comme indiqué en commentaire : " * Gennerate a unique reference for orders generated with the same cart id * This references, is usefull for check payment l'indication " @return String" doit permettre cela non ? a bientot Link to comment Share on other sites More sharing options...
PatJ Posted January 31, 2013 Share Posted January 31, 2013 Salut, Foxalone >> As-tu pu avancer et trouver une solution pour revenir à un numéro de commande en numérique et incrémentées ? Car le nouveau mode de numérotation me casse superbement les pieds... Link to comment Share on other sites More sharing options...
stephmrls Posted February 12, 2013 Share Posted February 12, 2013 (edited) Bonjour à tous, Quelqu'un a-t-il trouvé comment mettre les références eu format id 805 références : 000000805 et non 4568552452 ?? C'est vrai que c'est une nouveauté que je n'ai toujours pas compris... Edited February 12, 2013 by stephmrls (see edit history) Link to comment Share on other sites More sharing options...
A1TH Posted February 13, 2013 Share Posted February 13, 2013 Je suis moi-même intéressé. je suis sur PS1.5.3. Spécialement pour le suivi invité, il est préferable que le client insère le numéro de la commande qu'il a reçu lors de la confirmation de sa commande, alors qu'en ce moment on lui demande d'ecrire la référence du type "TRKUKRKML". Donc, - soit comme dans la version PS 1.4.9 mettre le numéro de commande pour le suivi invité. - soit faire en sorte que la référence = numéro de commande. Mais comment faire ? Merci de votre aide. Link to comment Share on other sites More sharing options...
A1TH Posted February 13, 2013 Share Posted February 13, 2013 Re bonjour, A force de fouiner depuis hier là dessus (c'est la raison, force de désespoir, que j'avais posté mon post précédent)... je viens de trouver ceci ce module gratuit. http://www.prestashop.com/forums/topic/218257-module-change-order-reference-using-order-id-andor-cart-id/ Ca marche pour moi et ça répond à mon souci. 1 Link to comment Share on other sites More sharing options...
wiso Posted March 26, 2013 Share Posted March 26, 2013 Merci pour le topic, je viens d'installer le module recommandé par @A1TH Re bonjour, A force de fouiner depuis hier là dessus (c'est la raison, force de désespoir, que j'avais posté mon post précédent)... je viens de trouver ceci ce module gratuit. http://www.prestasho...-andor-cart-id/ Ca marche pour moi et ça répond à mon souci. Je viens d'installer le module chez moi ça fonctionne aussi 1 Link to comment Share on other sites More sharing options...
lambi521 Posted May 28, 2013 Share Posted May 28, 2013 (edited) Moi j'ai tout simplement remplacé dans l'historique client et dans l'admin le numéro de 9 lettres aléatoires (très chiant pour retrouver la commande d'un client que vous avez au téléphone.. B comme bernard, F comme françoise...) par l'id de commande enregistré en BDD. L'id de la commande en BDD est, comme pour toutes ce genre de tables, en auto_increment donc aucun doublon possible entre les commandes. De plus, ils sont ordonés par ordre croissant donc très facile de retrouver les commandes comme cela Il faut donc remplacer dans les fichiers .tpl {Order::getUniqReferenceOf($order.id_order)} par la variable $order.id_order. Pour l'affichage style n°000851 il faut mettre dans le .tpl {l s='#'}{$order.id_order|string_format:"%06d"} Edited May 28, 2013 by lambi521 (see edit history) 1 Link to comment Share on other sites More sharing options...
CorentinDav Posted May 31, 2013 Share Posted May 31, 2013 Bonjour. Sinon il suffit d'override la classe Order.php et de réécrire la méthode generateReference en utilisant la fonction php strpad avec l'id de la commande. 1 Link to comment Share on other sites More sharing options...
assasa Posted June 2, 2013 Share Posted June 2, 2013 Bonjour. Sinon il suffit d'override la classe Order.php et de réécrire la méthode generateReference en utilisant la fonction php strpad avec l'id de la commande. Ton message est rés pertinent c'est exactement celas qu'il faudrai faire. Comment tu réalise ca pour des newwbie comme moi. Aurai tu un bout de code ? Merci d'avance Link to comment Share on other sites More sharing options...
Le-cathare Posted August 5, 2013 Share Posted August 5, 2013 Foxalone, Tu vas dans le dossier "classes", puis dans le dossier "order", tu ouvre le fichier order.php et tu trouves la ligne (autour de 1370) : return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC')); A la place tu mets : return strtoupper(Tools::passwdGen(9, 'NUMERIC')); et voilà... Merci Link to comment Share on other sites More sharing options...
domisy Posted November 15, 2013 Share Posted November 15, 2013 Merci A1TH, je viens de tester le module et ça fonctionne aussi, ouf ! On se demande quand même par quel processus l'équipe Prestashop arrive à ce genre de modification tordue d'une version à l'autre... 1 Link to comment Share on other sites More sharing options...
sims17 Posted March 19, 2014 Share Posted March 19, 2014 Bonjour, Je fais actuellement des essais sur la version 1.6 de Presta. Super travail des développeurs mais ….. POURQUOI des lettres à la place des chiffres pour les confirmations de commande ??? Des numéros de commande à suivre du style: 5001, 5002, 5003 est plus logique et plus facile à gérer que des lettres aléatoires …. FLROEIZSE , LOPRKELED, … Je n’arrive pas à comprendre l’intérêt de cette modification. Il faut espérer que pour la version 1.7, les confirmations de commandes ne vont pas ressembler à ça : x+&@≥€Ø£2F LITERIE SHOP www.literieshop.com Link to comment Share on other sites More sharing options...
Michel presta Posted April 24, 2014 Share Posted April 24, 2014 Bonjour. Sinon il suffit d'override la classe Order.php et de réécrire la méthode generateReference en utilisant la fonction php strpad avec l'id de la commande. Bonjour, Je déterre un sujet un peu ancien car je cherche et je ne comprends pas bien. Pouvez vous expliquer en détail ce qu'il faut faire pour un novice? Merci d'avance Link to comment Share on other sites More sharing options...
PrestaDif Posted April 29, 2014 Share Posted April 29, 2014 Bonjour, Oui, bien dommage qu'il faille passer par un module externe ou une modification de fichier pour revenir à cette numérotation classique de commande .... Cordialement Link to comment Share on other sites More sharing options...
Michel presta Posted April 29, 2014 Share Posted April 29, 2014 Bonjour, En fait mon problème n'est toujours pas résolu, en effet, le module permet de changer la référence des commandes mais je reçois toujours les mails de confirmations avec la référence en lettre. les clients eux, reçoivent bien les confirmations et les factures avec la bonne référence. c'est uniquement sur les mails d'alerte que la référence est erronée. Si quelqu'un pouvait m'aider. Merci Link to comment Share on other sites More sharing options...
mandoraa Posted May 28, 2014 Share Posted May 28, 2014 Bonsoir pareil pour moi..."c'est uniquement sur les mails d'alerte que la référence est erronée" Link to comment Share on other sites More sharing options...
Michel presta Posted May 29, 2014 Share Posted May 29, 2014 Moi je regarde dans le sujet du mail et là apparaît la bonne référence , mais dans le mail lui même la référence est erronée aussi. Link to comment Share on other sites More sharing options...
mandoraa Posted May 29, 2014 Share Posted May 29, 2014 Bonjour, ouai perso je fais un site pour quelqu'un et le mail avec l'ancienne référence est très rédhibitoire... Link to comment Share on other sites More sharing options...
Olympe Posted June 4, 2014 Share Posted June 4, 2014 Moi c'est l'inverse, le mail que le marchand reçoit est correct mais celui du clients est en mode alpha. Cela est devenu comme ça depuis la mise un jour d'un module, je sais plus lequel. Est ce que quelqu'un a une solution ? J'aimerais afficher la référence comme celà 36320 (id du produit étant 000036320). Je ne retrouve même pas les fichiers dans lequel cela se passe donc si quelqu'un je suis preneur. Merci d'avance Link to comment Share on other sites More sharing options...
Klaus Boutik Posted July 5, 2014 Share Posted July 5, 2014 Bonjour En effet pas simple à gérer des commandes IZQSCAYLEH .... surtout pour les classer par ordre !! Avant c'était simple : 1906, 1907, 1908, etc ... On découvre plein de choses originales avec la 1.6 !!! Question : le module cité plus haut est-il comptatible avec la 1.6 ? Merci (Et merci aux dévelloppeurs de Prestashop de nous pondre de telles inepties !) Link to comment Share on other sites More sharing options...
hit Posted July 30, 2014 Share Posted July 30, 2014 j'ai testé sur une version 1.6.08 ça fonctionne. je n'ai pas encore testé sur une multiboutique je vais voir ce que ça donne et si on peut avoir in ID par boutique ex : B10000052 pour la boutique 1 et B20000053 pour la boutique 2 a+ Link to comment Share on other sites More sharing options...
Klaus Boutik Posted July 30, 2014 Share Posted July 30, 2014 OK ... Je suis en phase de test sur un Prestashop d'essai et visiblement cela fonctionne. J'ai également contacté le développeur en Hollande qui m'a assuré du bon fonctionnement de son module. Leur site : http://prestadev.nl/nl/gratis-modules/ Tout cela m'a l'air sérieux Donc au diable ces fichus numéros en XSFJDF !!! Face à la gène occasionnée par cette numérotation alphabétique, Prestashop aurait pu tout de même prévoir dans les préférences commandes, une possibilité permettant d'opter entre la numérotation numérique ou bien alphabétique pour ceux qui le souhaitent ! 1 Link to comment Share on other sites More sharing options...
PatJ Posted August 27, 2014 Share Posted August 27, 2014 Bonjour, J'ai essayé de commander (pour le télécharger) le module gratuit indiqué ci-dessus. Malheureusement, pas moyen de créer un compte client, leur site semble avoir un problème et donc pas moyen de récupérer ce module. Je leur ai envoyé un mot pour signaler la difficulté mais pas de réponse pour l'instant. Le problème est qu'on ne peut renseigner des informations de contact complètes (le formulaire est incomplet) et donc on ne peut terminer la commande et télécharger le module ... Link to comment Share on other sites More sharing options...
kelsoo Posted August 28, 2014 Share Posted August 28, 2014 Moi j'ai tout simplement remplacé dans l'historique client et dans l'admin le numéro de 9 lettres aléatoires (très chiant pour retrouver la commande d'un client que vous avez au téléphone.. B comme bernard, F comme françoise...) par l'id de commande enregistré en BDD. L'id de la commande en BDD est, comme pour toutes ce genre de tables, en auto_increment donc aucun doublon possible entre les commandes. De plus, ils sont ordonés par ordre croissant donc très facile de retrouver les commandes comme cela Il faut donc remplacer dans les fichiers .tpl {Order::getUniqReferenceOf($order.id_order)} par la variable $order.id_order. Pour l'affichage style n°000851 il faut mettre dans le .tpl {l s='#'}{$order.id_order|string_format:"%06d"} Link to comment Share on other sites More sharing options...
PatJ Posted August 28, 2014 Share Posted August 28, 2014 Salut, Je suis parvenu à télécharger le module. Leur site merdait complètement sous Firefox ou Opera (pourtant à jour) et je suis revenu à IE pour pouvoir passer la commande gratuite et télécharger le module. Installé sur mon site de test sous 1.6.0.9, le module semble fonctionner tout a fait correctement. Les traductions en Français sont un peu "Google like" mais à part ça c'est impecc. Link to comment Share on other sites More sharing options...
kelsoo Posted August 28, 2014 Share Posted August 28, 2014 Bonjour comment faire pour que la série de neuf chiffre soit dans un ordre croissant merci d'anvance Link to comment Share on other sites More sharing options...
bunam Posted September 1, 2014 Share Posted September 1, 2014 (edited) Cette sordide histoire de numérotation est une réponse au problème de confidentialité des activités numériques des sites. En clair je suis le concurrent d'un site (ou une administration ? , je passe une petite commande régulièrement sur ce site et je regarde alors l'évolution du numéro de commande. J+0 : 000170 J+10 : 000182 Donc je suppose 12 commandes en 10 jours. Après Prestashop aurait pus faire un petit bouton : "Je préfère les codes séquentiels pour mes commandes même si cela donne des indications sur mon activité" Edited September 1, 2014 by bunam (see edit history) Link to comment Share on other sites More sharing options...
PatJ Posted September 1, 2014 Share Posted September 1, 2014 Salut, Oui j'ai déjà lu cette explication, à mon avis elle ne tiens pas la route: les factures restent avec une numérotation incrémentale... Donc le concurrent a toujours l'information qu'il recherche ! Et donc ce système de numérotation de commande casse les pieds a (presque) tout le monde pour rien... Link to comment Share on other sites More sharing options...
Klaus Boutik Posted September 1, 2014 Share Posted September 1, 2014 Tout à fait ! avec le numéro de facture, il est possible de suivre l'évolution des commandes ! Donc cette numérotation FKLZMGHAKP NE SERT A RIEN !!! Génial pour classer les fiches commandes ! Genial pour entrer les numéros de commandes dans Expeditor ! Genial pour suivre les commandes en cours etc ... etc ... Merci à Prestashop de nous pondre de telles aberrations et surtout laisser toute la communauté avec ce problème et ne pas écouter ses utilisateurs ! Link to comment Share on other sites More sharing options...
Gefke89 Posted September 5, 2014 Share Posted September 5, 2014 Bonjour, Est-ce que quelqu'un aurait pu récupérer le module en question? Le site NL est fermé... Je suis très intéressé par ce module qui simplifierais pas mal de chose. Merci Link to comment Share on other sites More sharing options...
A1TH Posted September 5, 2014 Share Posted September 5, 2014 Bonjour, Est-ce que ceci peut aider modrefchange.zip Attention, je n'ai pas testé cette version A+ Link to comment Share on other sites More sharing options...
7m7g7 Posted September 9, 2014 Share Posted September 9, 2014 (edited) Bonjour, B2B, une autre approche : j'aimerais mettre la référence du client (son numéro de commande) dans ce champs... existe-il un module pour cela ? Cette référence, doit-elle être impérativement unique ? (pas pour moi, je me retrouverais - mais pour PS ? ) Edited September 10, 2014 by 7m7g7 (see edit history) Link to comment Share on other sites More sharing options...
fredekac Posted October 7, 2014 Share Posted October 7, 2014 Bonjour, Est-ce que ceci peut aider modrefchange.zip Attention, je n'ai pas testé cette version A+ J'ai trouvé celui-ci qui à 2 mois à l'heure actuelle alors que ta version A1TH à apparemment 1 an. https://www.dropbox.com/s/7kkhtgkrpq4h755/modrefchange.zip Si ça peut servir, je vais voir pour la tester. Link to comment Share on other sites More sharing options...
LiliB. Posted November 12, 2014 Share Posted November 12, 2014 Bonjour, J'utilise ce module qui fonctionne correctement. J'ai juste un souci avec le préfixe de l'ID. Je veux intégrer l'année de la commande. Je précise %Y dans la config comme indiqué. L'ID de la commande commence alors par %Y2014 et non pas juste 2014... Quelqu'un aurait une solution ? Merci ! Link to comment Share on other sites More sharing options...
fredekac Posted November 12, 2014 Share Posted November 12, 2014 J'ai malheureusement le même problème, le "code " fonctionne bien, il affiche le résultat correspondant mais le code apparaît en plus ! Comme toi Link to comment Share on other sites More sharing options...
LiliB. Posted November 13, 2014 Share Posted November 13, 2014 Ouais c'est ballot ! Je remarque sur la facture avoir aussi le numéro de facture précédé de #. Peut-être que cela vient du paramétrage de la facture et non pas du module ???? Link to comment Share on other sites More sharing options...
zoekkoez Posted March 23, 2015 Share Posted March 23, 2015 (edited) Bonjour, Pour ceux qui veulent rappeler l'id_order à la place de la référence, modifier la classe Order.php comme ci-dessous : public static function generateReference() { /* *return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC')); */ $query = new DbQuery(); $query->select('MAX(id_order) as max'); $query->from('orders'); $query->where('id_cart' > 0); $order = Db::getInstance()->getRow($query); $reference = $order['max'] +1 ; return sprintf('CMD%06d', $reference); } Edited March 23, 2015 by zoekkoez (see edit history) 1 Link to comment Share on other sites More sharing options...
MonBlason Posted July 26, 2015 Share Posted July 26, 2015 Voici enfin une solution qui fonctionne sous 1.6.1: http://www.webbax.ch/2014/12/15/numerotation-des-factures-en-chiffre-sous-prestashop/ Link to comment Share on other sites More sharing options...
Azzedesign Posted July 27, 2015 Share Posted July 27, 2015 Bonjour, Perso je cherche une solution pour donner quelque chose comme mon système de numérotation de factures pour mon activité d'installateur : CCCC-###-YYYY avec CCCC les 4 premières lettres du nom du client en majuscules ### un incrément de 001 à 999 en fonction du reste du numéro et YYYY l'année de facture. En gros si Mr TOTO en est à sa 4è facture de l'année il recevra le n° TOTO-004-2015. Bien sure si un Mr TOTORO a commandé 7 fois et que Mr TOTO fait sa 4è commande on en sera à TOTO-011-2015. Chaque année l'incrément se remet à 0. Est-il possible de faire ainsi? (je sais que ce n'est pas facile, j'ai l'avantage que le volume installateur n'est pas de 500 commandes chaque année et que l'incrément est fait manuellement, passer cela en informatique risque de ne pas être aussi simple). Merci d'avance pour vos réponses. PS : avec un numéro comme celui là on ne risque pas d'avoir des clients qui jugent le niveau de commande sur le site... Link to comment Share on other sites More sharing options...
nmj Posted November 6, 2015 Share Posted November 6, 2015 Bonjour à toutes et à tous. Je viens d'installer le module VENTE FLASH PRO dans la version de prestashop 1.6 il m'est impossible de le paramétrer . Comment résoudre ce problème: [PrestaShop] Erreur fatale dans le fichier de module: /htdocs/fret/modules/flashsalespro/flashsalespro.php: Vous ne pouvez pas passer le paramètre 13 par référence merci Link to comment Share on other sites More sharing options...
vad Posted January 7, 2016 Share Posted January 7, 2016 Voici enfin une solution qui fonctionne sous 1.6.1: http://www.webbax.ch/2014/12/15/numerotation-des-factures-en-chiffre-sous-prestashop/ Merci MonBlason, pour moi ça marche, mais en supprimant le fichier « class_index.php » dans le répertoire « cache ». Link to comment Share on other sites More sharing options...
Rosiel Posted May 25, 2016 Share Posted May 25, 2016 Bonjour, Comment overrider la solution de zoekkoez : Bonjour, Pour ceux qui veulent rappeler l'id_order à la place de la référence, modifier la classe Order.php comme ci-dessous : public static function generateReference() { /* *return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC')); */ $query = new DbQuery(); $query->select('MAX(id_order) as max'); $query->from('orders'); $query->where('id_cart' > 0); $order = Db::getInstance()->getRow($query); $reference = $order['max'] +1 ; return sprintf('CMD%06d', $reference); } Cela ne marche pas. Je voudrais éviter un écrasement lors des prochaines maj. Avez-vous une idée du problème ? Merci Link to comment Share on other sites More sharing options...
koule Posted May 4, 2017 Share Posted May 4, 2017 https://www.prestashop.com/forums/topic/548800-free-module-custom-order-reference/?p=2383260 il y a sinon ce merveilleux module, à tester évidemment et voir si jamais il y a des soucis, puis un autre module encore une fois GRATUIT qui est celui du post suivant: https://www.prestashop.com/forums/topic/433999-free-module-order-reference-change-module/?p=2017126 et encore un: https://www.prestashop.com/forums/topic/495065-free-module-numeric-order-reference/?p=2220916 voilà Link to comment Share on other sites More sharing options...
Cecil_ Posted May 5, 2017 Share Posted May 5, 2017 Voici enfin une solution qui fonctionne sous 1.6.1: http://www.webbax.ch/2014/12/15/numerotation-des-factures-en-chiffre-sous-prestashop/ C'est simple, rapide, et ca marche parfaitement! Merci! 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