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 :

Format monétaire dans un DBedit


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de cdlr27
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 98
    Par défaut Format monétaire dans un DBedit
    Sous Delphi Pro 6, une base ACCESS

    J'ai un DBedit connecté sur un ADOQuery, juste là pas trop de probléme, je balaye le recorset issu de la requète et j'affiche le contenu du champ, mais dans ma base ACCESS, c'est un champ monétaire qui est déclaré et je n'en obtient que la valeur.

    Comment forcer l'affichage en monétaire ?.

    Marcel

  2. #2
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Par défaut
    Salut,

    Une fois que tu as tout des champs (les champs de ta base de donnée de type fields), tu peux utiliser la propriété EditMask de ces champs pour définir leur format d'affichage dans le DBEdit.

    A+

  3. #3
    Membre confirmé Avatar de cdlr27
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 98
    Par défaut Monetaire dans DBEdit
    Suite à ta remarque , j'ai regardé le Tfield et j'aitrouvé une définition
    DBPrixVenteTTC.Field.AsCurrency;

    Mais, cela ne fonctionne pas

    Dommage, cela semblait correspondre à mon besoin. Je veux juste un affichage correct sans saisie.

    Marcel

  4. #4
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Par défaut
    Non non!

    En fait, ce que tu dois faire c'est :

    sélectionner le champ auquel tu veux appliquer un format particulier
    dans la fenêtre des propriétés/évènements, tu verras une propriété nommé EditMask, tu cliques dessus
    une fenêtre s'ouvre où certains formats te sont proposées. entre autres le format pour les dates (longues et courtes), les heures etc...

    A ce niveau, tu choisis le format que tu veux. L'affichage du DBEdit s'adaptera en conséquence.

  5. #5
    Membre confirmé Avatar de cdlr27
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 98
    Par défaut
    Là, je comprend trés bien où tu m'emmène, mais je ne trouve pas l'accés à EditMask.
    J'ai seulement accés à IsMasked
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     if not DBPrixVenteTTC.IsMasked then
         DBPrixVenteTTC.???????
    Me manquerais t'il pas une unité ?.
    pour accéder à la suite

    j'ai trouvé Dans TCustomMaskEdit un accés à EditMask, mais je n'arrive pas à le connecter sur mon DBedit.

  6. #6
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Par défaut
    Tu ne m'as pas bien suivit

    En définitive tu dois être amener à choisir un masque qui est de la forme
    par exemple

    De sorte que lorsque l'utilisateur tape dans le DBEdit, il ne pourra que taper des caractères particuliers et dans des limites que tu pourras spécifier. Le fichier de masque ont l'extension .dem et se trouvent dans ...Program Files\Borland\Bin

    Concrètement, je ne te parle pas d'un autre composant mais ta réaction me pousse à te demander quelle version de Delphi tu disposes (parce je ne connais que la 6 et la 7).

    EditMask est une propriété que tu applique à un field. Clique sur le field et dans la fenêtre des propriétes et des évènement tu verras cette propriété avec des points de suspension. Tu cliques sur les points de suspension et tu seras amené vers une fenêtre où tu pourras choisir un masque (il y'en a pour les dates, les heures etc..) et tu te rendras compte qu'il n'ya pas de masque pour les monnaies mais je t'en propose un, à toi de voir comment l'utiliser dans ton programme.

    Tu peux le télécharger ici (à copier dans le repertoire mentionné ci-dessus)

    A+

  7. #7
    Membre confirmé Avatar de cdlr27
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 98
    Par défaut
    Cela s'améliore

    j'obtiens une erreur au lancement du programme 'EAccessViolation' avec les différents essais suivants :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     dbgprod.Fiels[0].EditMask:='!000\000\ - ()'; // DBGRID
    dbpvttc.Field.EditMask:='!000-000;1'; // DBEDIT
    test.Text:=dbpvttc.Field.EditMaskPtr;
    Lorsque je clique sur l'objet Tcolumn du DBGRID ou sur DBEdit , la propriétés EditMask n'apparait pas.
    mais l'assistance à l'écriture m'a amener EditMask suite à Field.

    Il doit me manquer quelque chose ?;

    Je travaile sur D6 pro (Build 6.163)

    Pour ton exemple, Est-ce la bonne adresse ?.
    http://fow-clan.150m.com/perso.dem

  8. #8
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Par défaut
    Salut,

    Laisse tomber pour le fichier, de toutes les façons, il ne contenait qu'une seule ligne que tu pourras écrire toi même.
    Si je me rappele bien, à l'intérieur il y'avait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    !999\ 999\ 990\ . 999\ 999\ 999\ Euro
    Donc tu peux enregistrer au format .dem et le placer dans Program Files\Borland\Bin

    Bref, concrètement il faut que tu comprennes que ces formats sont utilisés pour en quelque sorte obliger l'utilisateur a entrer les données sous une forme précise. Ainsi le format que je propose permet de stocker des valeurs comprises entre 0 et 999 999 999 euros (donc suffisemment )

    Une fois de plus, tu n'as pas à écrire les formats à la main! Tu disposes de cette fenêtre dont j'ai fait mention un peu plus bas (propriétés d'un Field), certains masques sont déjà prédéfinies et tu peux juste les utiliser (tu auraius d'ailleurs pu utiliser le format entier long et coller un label à côté du DBEdit avec poir caption Euro par exemple).

    J'espère que cà résoudra ton problème...

    Une dernière chose est que tu ouvrir les fichiers .dem avec le bloc notes pour voir la syntaxe, cà peut toujours aider.

    A+

  9. #9
    Membre confirmé Avatar de cdlr27
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 98
    Par défaut
    Je te remercie pour ton aide, c'est que je me suis un peu déformer avec ACCESS qui permet de formater les affichages facilement.
    J'ai bien visiter les *DEM qui sont dans Delphi.
    Comme cela est juste pour faire beau à l'écran, je met ce point en suspend car ce n'est pas l'essentiel.
    Pour info : L'objet est une Gestion de Stocks d'un magasin de Prêt à porter.

    A +

    Marcel

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

Discussions similaires

  1. [D6] Spécifier format monétaire dans Excel ?
    Par Lung dans le forum Delphi
    Réponses: 9
    Dernier message: 03/09/2019, 15h05
  2. Vérifier un format monétaire dans un formulaire
    Par Efhache84 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 20/01/2010, 15h04
  3. Format Monétaire dans un gridView
    Par PatStan17 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 15/08/2009, 17h37
  4. Réponses: 10
    Dernier message: 22/06/2008, 17h12
  5. format monétaire dans une colone listview ?
    Par sauceaupistou dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 27/06/2007, 15h24

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