PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Numerotation
Numerotation
Débuté par r-elex_, 27 aoû. 2004 12:26 - 4 réponses
Posté le 27 août 2004 - 12:26
Bonjour,
J'ai besoin de numeroter un champ de fichier en 00001, 00002, 00003
Comment peut on arriver à ce résultat

Merci de donner quelque pistes de recherche
R Elex
Posté le 27 août 2004 - 12:43
NumériqueVersChaine + Assistant
ou
NumériqueVersChaine(1, "05,0f")

"R.elex" <r-elex_@9online.fr> a écrit dans le message de
news:412ef070$1@news.pcsoft.fr...

Bonjour,
J'ai besoin de numeroter un champ de fichier en 00001, 00002, 00003
Comment peut on arriver à ce résultat

Merci de donner quelque pistes de recherche
R Elex

Posté le 27 août 2004 - 13:21
FONCTION GetFormatedNumber(NumberIN,NumberLength,Mask = 0)
// NumberIn -> Valeur numerique en entrée
// NumberLength -> taille de la chaine en retour
// Mask -> caractère de completion ("0" par defaut)
LOCAL
i est un entier = 0
ReturnValue est une chaîne = ""

SI Taille(NumériqueVersChaine(NumberIN)) > NumberLength ALORS
// traitement de l'exception... a coder
RENVOYER .....
FIN

POUR i = 1 A NumberLength
ReturnValue += Mask
FIN

RENVOYER Gauche(ReturnValue,Taille(NumériqueVersChaine(NumberIN))+1) + NumériqueVersChaine(NumberIN)


-------Explication-----------
Compteur = 23
NOMFICHIER.NOMRUBRIQUE = GetFormatedNumber(Compteur,5)
DANS CE CAS resultat = "00023"
NOMFICHIER.NOMRUBRIQUE = GetFormatedNumber(Compteur,8)
DANS CE CAS resultat = "00000023"
NOMFICHIER.NOMRUBRIQUE = GetFormatedNumber(Compteur,6,"#")
DANS CE CAS resultat = "####23"
Posté le 27 août 2004 - 13:28
"Magena" <magena@free.fr> wrote:

NumériqueVersChaine + Assistant
ou
NumériqueVersChaine(1, "05,0f")

"R.elex" <r-elex_@9online.fr> a écrit dans le message de
news:412ef070$1@news.pcsoft.fr...

Bonjour,
J'ai besoin de numeroter un champ de fichier en 00001, 00002, 00003
Comment peut on arriver à ce résultat

Merci de donner quelque pistes de recherche
R Elex





La solution de Magena est bonne mais statique
Pas de gestion des exceptions en cas de depassement de la taille et comme
il s'agit d'un compteur .....
Posté le 27 août 2004 - 20:37
Merci pour votre réponse claire
R Elex
"jfc Themia" <jfc_themia@hotmail.com> a écrit dans le message de
news:412efd17$1@news.pcsoft.fr...


FONCTION GetFormatedNumber(NumberIN,NumberLength,Mask = 0)
// NumberIn -> Valeur numerique en entrée
// NumberLength -> taille de la chaine en retour
// Mask -> caractère de completion ("0" par defaut)
LOCAL
i est un entier = 0
ReturnValue est une chaîne = ""

SI Taille(NumériqueVersChaine(NumberIN)) > NumberLength ALORS
// traitement de l'exception... a coder
RENVOYER .....
FIN

POUR i = 1 A NumberLength
ReturnValue += Mask
FIN

RENVOYER Gauche(ReturnValue,Taille(NumériqueVersChaine(NumberIN))+1) +

NumériqueVersChaine(NumberIN)


-------Explication-----------
Compteur = 23
NOMFICHIER.NOMRUBRIQUE = GetFormatedNumber(Compteur,5)
DANS CE CAS resultat = "00023"
NOMFICHIER.NOMRUBRIQUE = GetFormatedNumber(Compteur,8)
DANS CE CAS resultat = "00000023"
NOMFICHIER.NOMRUBRIQUE = GetFormatedNumber(Compteur,6,"#")
DANS CE CAS resultat = "####23"