Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Crystal Reports
Crystal Reports Forum d'entraide sur Crystal Reports. Avant de poster --> FAQ Crystal, Tutoriels Crystal
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/02/2008, 16h20   #1
Jsh
Membre du Club
 
Avatar de Jsh
 
Inscription : août 2005
Messages : 98
Détails du profil
Informations personnelles :
Âge : 44

Informations forums :
Inscription : août 2005
Messages : 98
Points : 57
Points : 57
Par défaut [CR XI] Suppression des zéros inutiles après une virgule

Bonjour à tous,

Existe-t-il une fonction qui permet de supprimer les zéros inutiles d'un champ ramené d'une base de données, mais sans passer par la mise en forme d'un champ texte ?

En fait, le Round() ne pourra pas répondre à ce que j'attends.

Ainsi :

Si dans ma BDD j'ai 5,52 dans mon rapport j'aimerais retrouver 5,52,
Si dans ma BDD j'ai 5,50 dans mon rapport j'aimerais retrouver 5,5,
Si dans ma BDD j'ai 5,502 dans mon rapport j'aimerais retrouver 5,502.

Merci par avance !
Jsh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2008, 16h33   #2
Inactif
 
Avatar de Aitone
 
Inscription : novembre 2006
Messages : 3 569
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 3 569
Points : 3 291
Points : 3 291
Bonjour,

La réponse est dans la FAQ à cet endroit.

Pour le cas présent, il faut remplacer le * de mon exemple par 0
Aitone est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2008, 15h48   #3
Jsh
Membre du Club
 
Avatar de Jsh
 
Inscription : août 2005
Messages : 98
Détails du profil
Informations personnelles :
Âge : 44

Informations forums :
Inscription : août 2005
Messages : 98
Points : 57
Points : 57
Gloups ! Je suis passé sur cet article de la FAQ sans capter !

Honte sur moi !

Merci beaucoup
Jsh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2008, 22h32   #4
Inactif
 
Avatar de Aitone
 
Inscription : novembre 2006
Messages : 3 569
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 3 569
Points : 3 291
Points : 3 291
Oupssss j'ai enlevé le

Citation:
Envoyé par Jsh Voir le message
Si dans ma BDD j'ai 5,52 dans mon rapport j'aimerais retrouver 5,52,
Si dans ma BDD j'ai 5,50 dans mon rapport j'aimerais retrouver 5,5,
Si dans ma BDD j'ai 5,502 dans mon rapport j'aimerais retrouver 5,502.
Pour le dernier exemple, ma solution ne fonctionnera pas car elle affichera 5,5

je regarde demain du boulot
Aitone est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2008, 22h42   #5
Jsh
Membre du Club
 
Avatar de Jsh
 
Inscription : août 2005
Messages : 98
Détails du profil
Informations personnelles :
Âge : 44

Informations forums :
Inscription : août 2005
Messages : 98
Points : 57
Points : 57
Ah oui effectivement !

Mais nous sommes dimanche tu as raison, voyons ça demain
Jsh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2008, 22h49   #6
Inactif
 
Avatar de Aitone
 
Inscription : novembre 2006
Messages : 3 569
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 3 569
Points : 3 291
Points : 3 291
faudrait compter les 0 après la virgule et tronquer au dernier
Aitone est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2008, 06h17   #7
Jsh
Membre du Club
 
Avatar de Jsh
 
Inscription : août 2005
Messages : 98
Détails du profil
Informations personnelles :
Âge : 44

Informations forums :
Inscription : août 2005
Messages : 98
Points : 57
Points : 57
Je réfléchis au boulot et quand je trouve je pose la solution ici
Jsh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2008, 09h49   #8
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
Hello,
voici ma (la?) solution :
dans le formatage du champ, onglet Nombre, je prends style personnalisé et je mets la formule suivante au niveau de décimale:
Code :
1
2
3
4
5
IF  {Commande.FIELD} = round({Commande.FIELD} ,0)
then 0 //aucune décimale
else IF  {Commande.FIELD}  = round({Commande.FIELD} ,1) 
then 1 // une seule
else 2//deux
bon...désolé...j'ai lu trop vite, j'avais pas vu la contrainte de départ : ne pas passer par le formatage du champ.

mais tu veux le faire d'où alors?
au pire, tu peux prendre ma solution au sein d'une formule
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/02/2008, 11h30   #9
Jsh
Membre du Club
 
Avatar de Jsh
 
Inscription : août 2005
Messages : 98
Détails du profil
Informations personnelles :
Âge : 44

Informations forums :
Inscription : août 2005
Messages : 98
Points : 57
Points : 57
Je veux le faire dans une formule justement, je n'ai pas encore eu le temps de m'y pencher, mais je vais étudier attentivement ta solution.

Merci
Jsh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2008, 14h13   #10
Jsh
Membre du Club
 
Avatar de Jsh
 
Inscription : août 2005
Messages : 98
Détails du profil
Informations personnelles :
Âge : 44

Informations forums :
Inscription : août 2005
Messages : 98
Points : 57
Points : 57
J'ai enfin pu me pencher sur la question et j'ai réussi à appliquer la fonction de say. Merci !
Jsh est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h29.


 
 
 
 
Partenaires

Hébergement Web