PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2025 → Valeure entière ou décimale
Valeure entière ou décimale
Débuté par jp.bloch, 09 déc. 2004 13:01 - 7 réponses
Posté le 09 décembre 2004 - 13:01
Dans une table, je saisis une quantité.

Si la valeur saisie est entière, je dois afficher le format entier (18),
Si la valeur saisie est décimale, je dois afficher le format décimal (18,5)...

Est-ce possible ? Comment ?
Merci de votre aide.
Posté le 09 décembre 2004 - 15:12
je vois qu'une solution : la colonne doit être de type texte
A+
Posté le 09 décembre 2004 - 15:25
moi je ferais un truc come ça :
en fin de saisie :

SI partieDécimale(tonRéel) <> 0 ALORS
chaine= tonRéel
ELSE
chaine=partieEntière(tonRéel)
FIN

// affiche chaine
....
Posté le 09 décembre 2004 - 15:58
Je viens d'essayer d'utliser un type texte, mais cela crée d'autres problèmes car il faut modifier tout le code de l'application car le champ est utilisé un peu partout.

Autre inconvénient, la virgule décimale devient un point en texte !!

Merci de vos idées !

JPB
Posté le 09 décembre 2004 - 16:11
Joue sur les masques de saisie numériques...
si t'as une partie décimale nulle, tu mets un masque de saisie d'entier,
etc...

"Jean-Pierre Bloch" <jp.bloch@monsiur-store.net> a écrit dans le message de
news: 41b84ff3$1@news.pcsoft.fr...

Je viens d'essayer d'utliser un type texte, mais cela crée d'autres
problèmes car il faut modifier tout le code de l'application car le champ
est utilisé un peu partout.

Autre inconvénient, la virgule décimale devient un point en texte !!

Merci de vos idées !

JPB
Posté le 09 décembre 2004 - 17:49
Oui, mais ce n'est pas un champ isolé, c'est dans une table.
Alors comment faire varier le masque d'une ligne à l'autre ?

Jean-Pierre
Posté le 09 décembre 2004 - 18:06
essaye avec NomTable[i]..MasqueSaisie="999 999" si c'est un entier par
exemple
i étant biensur l'indice de la ligne...
je n'ai pas testé !!!

"Jean-Pierre Bloch" <jp.bloch@monsiur-store.net> a écrit dans le message de
news: 41b869eb@news.pcsoft.fr...

Oui, mais ce n'est pas un champ isolé, c'est dans une table.
Alors comment faire varier le masque d'une ligne à l'autre ?

Jean-Pierre
Posté le 09 décembre 2004 - 20:02
Bonsoir,

En windev 8 (je n'ai pas testé dans les autres versions), il suffit
d'utiliser un masque de saisie du type 99,0 ou 99,00 suivant si l'on veut 1
ou 2 décimales après la virgule. Dans ce cas windev affichera la partie
décimale uniquement si elle existe.
Par exemple avec le masque 99,00 on aura :
18 si l'on tape 18 !!!
18,5 si l'on tape 18,50
et 18,51 si l'on tape 18,51 !

Espérant avoir aidé.


--
David Berthemet

"La forme même des pyramides d'Égypte montre que déjà les ouvriers avaient
tendance à en faire de moins en moins." Will Cuppy - Humoriste et
journaliste américain