IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

Afficher les zéros après la virgule


Sujet :

Bases de données Delphi

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Afficher les zéros après la virgule
    bonjour, je souhaiterai afficher les zero apres la virgule :

    pour 600 afficher 600,00

    j'ai cherché sur le forum et je n'ai pas trouvé.

    dans une table Paradox en Delphi7

    merci d'avance.

  2. #2
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var valeur: Real
    begin
       Valeur := 600;
       ShowMessage(FormatFloat('0.00', Valeur));
    end;
    De mémoire et à tester.

    André

  3. #3
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    salut

    je présume que vous utilisez un objet TTable, si c'est le cas :
    double clique sur l'objet en suite clique droit ajouter des champs, vous ajoutez tous vos champs, selectionnez celui-que vous voullez mettre en forme vous mettez "#,##0.00" la la propréité DisplayMask si je me souviens bien.

    a@

  4. #4
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    je regrette mais je connais formatfloat mais la propriete display je ne l'ai pas trouve pour une table paradox en delphi.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    a:=(strtofloat(edit1.Text)*strtofloat(dbedit1.Text));
       edit2.Text:=floattostr(a);
        edit2.text:=formatfloat('0.00',a);
       with table3 do
        begin
         append;
        fieldvalues['Designation']:=dblookupcombobox1.text;
        fieldvalues['Quantite']:=edit1.text;
        fieldvalues['Prix_Unit']:=dbedit1.text;
        fieldvalues['Montant']:=edit2.Text;
        fieldvalues['Item']:=edit7.text;
        post;
        end;
    la valeur fieldvalues['montant']:=edit2.text; ne se mets pas avec 2 zeros
    apres virgule cad 600,00.

  5. #5
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Essaye en enlevant:
    edit2.Text:=floattostr(a);

    André

  6. #6
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    vous avez mal saisie ce que je vouais dire

    suit cest étapes point par point.
    1. double clique sur ta table3.
    2. ensuite vous aurez une petite fenêtre qui vas apparaitre, dans celle-ci tu clique droit avec la souris.
    3. dans le PopupMenu tu choisi ajouter des champs.
    4. une autres fenêtre t'invite a sélectionné les champs à ajouter, vous les ajoutez tous CTRL+L.
    5. ensuite dans la petit fenêtre vous sélectionnez votre champs.
    6. dans l'inspecteur d'objet vous les propriétés du champs, cherchez DisplayFormat et vous mettez "#,##0.00" sans les quottes.

  7. #7
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Afficher les zéros après la virgule
    Pour Mr Andreditdd
    j'ai essayé d'enlever edit2.text:=floattostr(a); mais ça n'a rien donné
    au niveau de l'edit l'ecriture est 600,00 mais dans la table 600.
    je vous remercie .

  8. #8
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Afficher les zéros après la virgule
    A Mr Ait Yahia
    j'ai suivi toutes les étapes et apres selection le champs montant je ne trouve pas la propriété Displayformat dans l'inspecteur d'objet.je vous informe que je travaille en Delphi7 édition entreprise version française 2002

  9. #9
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    salut,
    je souhaiterai afficher les zero apres la virgule :
    pour 600 afficher 600,00
    1-double clique sur ta table.
    2-tu verras une petite fenêtre qui apparaitra, dans celle-ci, clique sur le champ en question.
    3-dans l'inspecteur d'objet, dans la propriété "DisplayFormat", saisis ""#,##0.00".

    Bonne chance.

    NABIL74

  10. #10
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Afficher les zéros après la virgule
    A Nabil
    Salut

    je n'ai pas trouvé displayformat dans l'inspecteur d'objet en faisant ce que tu m'as demandé de faire

  11. #11
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    quel est le type de ton champ? float?

    a+

    NABIL74

  12. #12
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 163
    Points : 41 346
    Points
    41 346
    Billets dans le blog
    63
    Par défaut
    la valeur fieldvalues['montant']:=edit2.text; ne se mets pas avec 2 zeros apres virgule cad 600,00.
    Que la valeur dans la base de données ne prenne pas les zéros après la virgule me semble normal et somme toute quelle importance ?

    par contre pour l'affichage , que de complications ....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    edit2.text:=format('%3.2f',[table3.fieldvalues['Montant']]);

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 560
    Points : 576
    Points
    576
    Par défaut
    Bonjour,

    Je pense que vous n'avez pas bien compris ce que aityahia voulait dire.


    en gros on peut dire que généralement on se connecte à une base de donné via un composant TTable ou Tquery, qui sont tous deux des TDataSource.

    L'interface entre la base de donnée (paradox/oracle ou autre) est établie pat le TDatasource utilisé.

    quelque soit la base de donnée qui est connecté, le TDataSsource vas créer des champs dérivé de TField permettent de gérer le champs dans la base. Le type de champs générer dépend du type de champs de la base, et donc de la base.
    Par exemple suivant la base de donnée utiliser et le type de champs défini dans la base un champs entier pourrat correspondre à un TSmallIntField ou à un TIntegerField.

    Ce n'est pas important. Ce qui est important c'est que tout les champs (Généré automatiquement par delphi) correspondant à un champs numérique comprenne une propriété DisplayFormat.

    Essayer par exemple quelque chose du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
      Myquery.fieldByName['Montant'].DisplayFormat
    			 := '00.##';
    Cela correspondra peeut être a votre besoin.

  14. #14
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    bonjour à toutes et à tous,
    @ Tardiff Jean-François, ta solution ne marche pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Myquery.fieldByName['Montant'].DisplayFormat
    			 := '00.##';
    la solution que nous avons proposée à Madjid52 marche très bien par contre chez lui ça bloque car je suis certain que le type de son champ est de type "string" et ce genre de type n'a pas de propriété "DisplayFormat" dans l'inspecteur d'objets.

    on peut lui proposer une autre solution qui marche aussi, c'est d'ajouter "TFloatField" pour le champ "Montant":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    TFloatField(Table1.fieldByName('Montant')).DisplayFormat:='#,##0.00';
    end;
    a+

    NABIL74

  15. #15
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 560
    Points : 576
    Points
    576
    Par défaut
    si le champs est un champs string, transtyper le champs ne fonctionnera pas.
    Les dérivé de TField dédier au string n'ayant pas de display format.
    Display format ne fonctionne qu'avec les dérivé de TNumericField (TField -> TNumericField -> TFloatFiled TCurencyFiled etc..)

    Si le type du champs est un string, je ne vois guère qu'un champs calculé pour le satisfaire. Mais c'est un champs en lecture et non en lecture / écriture.

    Cela luis conviendrait il ?

    Ceci dis je trouve un peux étonnant de formater un champs string en numérique. les risque d'erreur de conversion ne sont pas négligeable.

  16. #16
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Afficher les zéros après la virgule
    A Mr Nabil74
    je vous remercie vivement de votre idée maintenant les valeurs de la table
    sont avec 2 zeros apres virgule mais en faisant visualiser l'etat
    par form7.quickrep1.Preview;les champs de la table comme Montant ne se mets pas à 600,00.pour le type de champ de la table Paradox il est de type (N)
    numerique

  17. #17
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    salut,

    A Mr Nabil74
    je vous remercie vivement de votre idée maintenant les valeurs de la table
    sont avec 2 zeros apres virgule mais en faisant visualiser l'etat
    par form7.quickrep1.Preview;les champs de la table comme Montant ne se mets pas à 600,00.pour le type de champ de la table Paradox il est de type (N)
    numerique
    Madjid52, si tu gardes le type de ton champ qui est numérique, il ne va pas t'afficher le format que tu souhaites voir à l'écran:'#,##0.00',donc, il n'accepte pas des chiffres après le séparateur décimal.la solution c'est que tu dois le changer en "float" pour qu'il accepte des chiffres après le séparateur décimal.

    a+

    NABIL74

  18. #18
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Afficher les zéros après la virgule
    A NABIL74
    Salut

    je travaille avec les tables en Paradox ou le type de champ (N) qui correspond
    au valeur entier et décimal je ne trouve pas de problème pour par exemple
    600,25 dans la table et dans l'etat le probleme pour les zeros apres virgule.
    Merci.

  19. #19
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    Citation Envoyé par Madjid52 Voir le message
    A NABIL74
    Salut

    je travaille avec les tables en Paradox ou le type de champ (N) qui correspond
    au valeur entier et décimal je ne trouve pas de problème pour par exemple
    600,25 dans la table et dans l'etat le probleme pour les zeros apres virgule.
    Merci.
    Madjid52, pour le champ "Montant", les valeurs doivent-êtres flottantes, genre:"1235.26" , "158.99"... et non numériques:"1235" , "158".
    Sous Paradox ce type est "DCB" =>" # "
    le champ de type numérique n'affiche que des valeurs entières comme "122" et non "122.25".

    c'est simple, change le type de ce champ en "FLOAT" ou en "Monétaire" et le tour est joué!
    comme ça, tu n'auras aucun soucis concernant l'affichage soit dans ta table ou dans Quickreport.

    Bonne chance.

    NABIL74

  20. #20
    Membre à l'essai
    Inscrit en
    Août 2008
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Afficher les zéros après la virgule
    A Mr NABIL74

    je vous remercie très chaleureusement pour vos bonnes idées.
    de toute manière j'ai trouvé la solution pour quickrep j'ai introduit dans la propriété Mask de l'inspecteur d'objet en sélection Montant la valeur
    ## ####.00 et ça a marché très bien maintenant j'ai terminé ma facture .
    je remercie tous les membres qui m'ont répondu .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Supprimer les zéros après la virgule
    Par Latimer dans le forum Général Java
    Réponses: 8
    Dernier message: 21/05/2014, 00h50
  2. Afficher les nombres après la virgule
    Par ghir_ana dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 20/02/2012, 12h30
  3. [AC-2007] afficher zéro après la virgule
    Par ometsoc dans le forum VBA Access
    Réponses: 4
    Dernier message: 23/06/2011, 11h01
  4. Supprimer les zéro après la virgule
    Par Analfabete dans le forum Langage
    Réponses: 2
    Dernier message: 28/11/2007, 12h41
  5. Afficher les zéros après la virgule
    Par tonton51 dans le forum Langage
    Réponses: 2
    Dernier message: 09/07/2007, 12h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo