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 :

Erreur champs vides


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Par défaut Erreur champs vides
    Salut à tous, voilà je rencontre un petit problème très étrange.
    J'ai une table avec des enregistrements sous access. Certains champs sont vides (pas de problèmes puisqu'ils sont autorisés à ne contenir aucune valeur grâce à la propriété NULL interdit = NON).

    Dans mon appli delphi j'ai une DBGrid ainsi que des ComboBox. La DBGrid contient tous les enregistrements de la table citée ci-dessus et les comboBox récupèrent les valeurs de certains champs lors de l'évènement OnClickCell de la DBGrid.

    J'obtiens 2 erreurs (une lors de l'activation de la table pour le chargement des enregistrements dans le DBGrid et une lors de l'évènement OnCellClick)

    L'erreur est la suivant : "impossible de convertir le variant de type "Null" en type "String".

    J'ai testé avec un enregistrement dont les champs ne sont pas vides, les comboBox sont bien remplies sans erreur mais avec des champs vides impossible d'alimenter les combo. Je ne vois pas pourquoi en principe affecter à un ComboBox.text une valeur vide n'a jamais posé de problème à ce que je sache ?

    Quelqu'un aurait-il une idée ?

  2. #2
    Membre Expert
    Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Par défaut
    pour moi j'effectu un test avec fields[].isnull avant d'affecté un Tedit ou autre

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Par défaut
    oui si ce n'était que ça y'aurai pas de problème
    Le problème se trouve visiblement sur la dbgrid crée dynamiquement, dans ce cas aucune possibilité de vérification de chaque champ de la bdd. Le problème se situe au niveau de l'activation de la table puisqu'elle alimente le dbgrid qui n'aime visiblement pas les champs vides de la bdd.

  4. #4
    Membre éclairé

    Inscrit en
    Janvier 2005
    Messages
    532
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 532
    Par défaut
    Salut,
    pour plus de précision veuilleez nous indiquer les différents champs de votre table et plus précisemment le champs qui contien des valeurs NULL.
    Bonne chance.
    Merci.

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Par défaut
    Citation Envoyé par hocine
    Salut,
    pour plus de précision veuilleez nous indiquer les différents champs de votre table et plus précisemment le champs qui contien des valeurs NULL.
    Bonne chance.
    Merci.
    hocine le problème est qu'il y a beaucoup de champs non rempli dans la bdd, il serait difficile de tout vous transmettre. Cependant tous les champs acceptent par leur propriété les valeurs NULL.

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Par défaut
    Pour plus de précision, ce qui est très étonnant c'est qu'après avoir supprimé tous les enregistrements de la table afin de n'en conserveur qu'un seul et qu'après avoir rempli tous les champs vides de cet enregistrement l'erreur persiste :s

  7. #7
    Membre Expert
    Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Par défaut
    Citation Envoyé par RodEpsi
    Dans mon appli delphi j'ai une DBGrid ainsi que des ComboBox.
    enléve les combobox et voir si l'erreur perssiste

  8. #8
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Par défaut
    enléve les combobox et voir si l'erreur perssiste
    L'erreur sur les comboBox ne persiste évidemment pas si on les retire puisqu'il n'y a plus cette afectation de valeur NULL, ce qui ne résoud pas mon problème . De plus l'erreur a aussi lieux au niveau de la dbgrid.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/06/2009, 16h27
  2. erreur si test de champs vide
    Par jlb59 dans le forum Langage
    Réponses: 5
    Dernier message: 09/05/2008, 18h27
  3. Comment contrer une erreur de champs vide saisi ?
    Par jlb59 dans le forum Langage
    Réponses: 2
    Dernier message: 09/04/2008, 12h07
  4. champ vide en erreur a jointure de tables
    Par pierre22 dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 12/09/2007, 18h20
  5. champ vide et message d'erreur
    Par lionski dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 05/07/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