Numéro des factures et BDC

6 messages dans ce sujet

Posté(e) · Signaler ce message

Bonjour à toutes et à tous !

voilà mon problème (hé ouiiiiii Gilles !! encore un !!! ;) :) )

J'ai déjà pour le moment quelques commandes (déjà traitées/payées/expédiées) et en cours, et leur référence est du type :

WEB-[iD]-2010.

Aujourd'hui je voudrais changer totalement les références des commandes/factures à venir, et je voudrais adopter un style : 212011[iD] ou [iD] serait un nombre de 4 chiffres (0000 à 9999).

J'ai donc 2 questions...

Si je modifie maintenant dans le backoffice l'aspect de mes références, est ce que les commandes déjà traitées et en cours vont être touchées ??? je voudrais qu'elles gardent cet ancien format WEBID2011. Si elles vont être touchées, y a t'il un moyen de faire en sorte qu'elles ne bougent pas ??

ensuite, comment faut il faire dans la table peel pour faire en sorte d'avoir un ID à 4 chiffres svp ? même pour les petits nombres ? (0001, 0099, 0187, 4512)

merci pour vos infos

cordialement

Jean-Luc

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Les factures déjà existentes ne seront pas affectées par ce changement, puisque leur numéro de facture est déjà défini.

Néanmoins lors de leur édition, je ne sais pas si le numéro sera regénéré => je vous laisse vérifier

Votre mode de fonctionnement sur 4 chiffres ne me semble pas adapté car c'est mettre une limite relativement basse au nombre de factures annuelles, rien ne vous dit que dans quelques années vous ne dépasserez pas.

Pour faire votre modification, touchez à la fonction get_bill_number($bill_number_format, $id) dans lib/fonctions/order.php vers ligne 45 :

vous pouvez utiliser str_pad(............, 4, 0, STR_PAD_LEFT)

=> remplacez

$bill_number_format = str_replace("[" . $this_column . "]", $this_value, $bill_number_format);

par

$bill_number_format = str_replace("[" . $this_column . "]", str_pad($this_value, 4, 0, STR_PAD_LEFT), $bill_number_format);

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour Gilles

merci pour votre réponse... je l'ai fais

voilà ce que ça donne :

la facture PDF donne bien 4 chiffres (ici 0017)

par contre, le bon de commande indique toujours 17

Facture proforma en pdf affiche aussi 17.

n'y a t'il pas moyen d'homogénéiser tout ça pour avoir les 4 chiffres présents partout ?

en plus, je vais poser une question bête je pense, mais tant pis, je me lance...

Gilles ?

en terme de commercial, est ce qu'une commande appelée 9720110017 peut être suivie d'une facture 9720110017 ? c'est possible d'avoir le même numéro ?

moi c'est un peu ce que je cherche à avoir en fait.

Autre question.

je vous avais demandé comment faire pour avoir un ID à 4 chiffres, parce que je voulais rajoutter le code 972011 devant à chaque fois. Or, ça ne se fait QUE pour la facture pdf, mais pas pour la commande ...

est ce normal ?

Dernière question... Imaginons que je veuille finalement démarrer dans ma base de données l'ID des factures à 9720110017, tout en gardant mes factures précédentes numérotées de 1 à 16...

Quelle commande sql taper dans php admin pour faire celà ??

merci grandement pour vos réponses et encore longue vie à Peel Shopping !!

cordialement

Jean-Luc

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Les bons de commande et facture proforma vont récupérer l'id de commande, alors que la facture récupère le numéro de facture formaté avec la fonction sur laquelle vous êtes intervenu. La logique n'est pas la même, donc c'est "normal".

Si vous voulez modifier tout cela, vous pouvez mais vous rentrez à nouveau dans du spécifique aux conséquences qui peuvent être multiples.

L'explication ci-dessus répond aussi à vos autres questions : id <> numéro de facture formaté .

Concernant phpmyadmin, vous pouvez faire des commandes du type :

UPDATE peel_commandes SET numero=CONCAT(".........", id) WHERE id<=16

UPDATE peel_commandes SET numero=CONCAT(".........", id) WHERE id>=16

Faites attention de faire une sauvegarde de votre table avant de faire cela ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

ok gilles !!

j'ai bien compris !!

DONC je pense que je vais pas m'embêter, et que je vais rester au format "NUMERIQUE", sans m'embêter à rajoutter le code 972011 avant l'id.

MAIS ce que je veux faire maintenant, c'est carrément donner le numéro 9720110017 à ma prochaine commande et incrémenter de 1.

Je veux garder les factures 1 à 16 quand même dans ma base de donnée... et c'est là que ça se complique...

comment je déclare dans ma base de donnée que mainant l'id ne sera pas 17 mais 9720110017 et qu'on continue d'incrémenter de 1 ?

(ok, je vais faire une sauvegarde de la base !! LOL)

merci gilles pour votre soutien ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Vous pouvez utiliser phpmyadmin et dans l'onglet des opérations de la table, mettez votre valeur dans le champ autoincrement.

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping