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 :

tester le type d'un champ


Sujet :

Bases de données Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2002
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 28
    Points : 24
    Points
    24
    Par défaut tester le type d'un champ
    Bonjour à tous,

    J'aimerai tester le type d'un champs.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if ftFloat = DataModule_u.MyDM.QrySrcFact.FieldDefList.FieldDefs[i].DataType then
    Mais sa ne passe pas.

    Merci d'avance.

  2. #2
    Membre régulier
    Homme Profil pro
    Chef de projet
    Inscrit en
    Juin 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 101
    Points : 122
    Points
    122
    Par défaut
    Voici la bonne syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if DataModule_u.MyDM.QrySrcFact.Fields[i].Datatype = [ftFloat] then
    ftFloat étant un élément de TFieldType qui est de type énumération...

  3. #3
    Membre habitué
    Inscrit en
    Mai 2002
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 275
    Points : 185
    Points
    185
    Par défaut
    Re,

    Cela fonctionne très bien chez moi.
    As-tu un message d'erreur?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2002
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    il bug sur le .Data

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2002
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    et il parle de type incompatible

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2002
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if DataModule_u.MyDM.QrySrcFact.Fields[i].DataType = [ftCurrency] then
    Message : types incompatible.

  7. #7
    Membre habitué
    Inscrit en
    Mai 2002
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 275
    Points : 185
    Points
    185
    Par défaut
    J'ai testé en rajoutant dans la boucle faite au topic précedent sur la recherche du nom du champ, le code suivant: .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ftString = Query.FieldDefList.FieldDefs[CptChamp].DataType then
    Je n'ai pas eu de message de type incompatible.
    Le DataType est de type TFieldType et le ftString est de même type.
    Cela fonctionne.
    J'ai Delphi7

  8. #8
    Membre régulier
    Homme Profil pro
    Chef de projet
    Inscrit en
    Juin 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 101
    Points : 122
    Points
    122
    Par défaut
    Voici ce que j'utilise tous les jours (enfin, presque...) pour gérer l'affichage des résultats (alignement)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            If Qry2.Fields[ii].DataType in [ftBCD,ftCurrency,ftInteger,ftFloat] then
    et ça fonctionne parfaitement.

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2002
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    oui sa marche sans les crochets.

    Merci beaucoup.

  10. #10
    Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 62
    Points : 59
    Points
    59
    Par défaut
    N'oubliez pas de rajouter le tag [ RESOLU] pour nous permettre d'identifier rapidement les collègurs qui ont encore besoin d'aide afin que nous puissons apporter notre aide.
    Bonne programmation!

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

Discussions similaires

  1. Tester le type d'un champ
    Par Maxi-môme dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 04/07/2007, 14h41
  2. comment tester le typed'un champ avant de le changer?
    Par korntex5 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/06/2007, 17h52
  3. Facilité de tester les types de champs dans un FORM ?
    Par shadeoner dans le forum Langage
    Réponses: 5
    Dernier message: 30/03/2006, 20h49
  4. [Excel] Comment tester le type de champ ?
    Par natie_49 dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 17/06/2005, 15h17
  5. [VB6] [Interface] Tester le Type de Controle
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 16/09/2002, 09h51

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