Champs vides dans une table paradox

Résolu
nou366 Messages postés 92 Date d'inscription samedi 21 janvier 2006 Statut Membre Dernière intervention 10 octobre 2010 - 11 févr. 2006 à 07:31
nou366 Messages postés 92 Date d'inscription samedi 21 janvier 2006 Statut Membre Dernière intervention 10 octobre 2010 - 11 févr. 2006 à 12:58
Bonjour,

J'utilise une table paradox. Je fait une application courante avec cette table, Ajouter un client, Modifier, et Rechercher. J'utilise des edit pour les caractéristiques.
Lors de l'ajout d'un nouveau client, il accepte toutes les donnés mêmes si je rentre des caractéristiques vides. Le problème survient lorsque je fais une recherche d'un client pour lequel je n'ai pas rempli tous les champs ( ca marche bien pour ceux à qui j'ai complété tous les champs) --> il m'indique impossible de convertir un null en string ci dessous le code. Quelqu'un sait comment faire pour récupérer une entrée même si elle a des champs vide. merci pour la réponse
if(table1.Locate('NumFour',Reponse,[loCaseInsensitive])=true)
then


begin
edit1.Text:=table1.fieldbyname('NumFour').Value;
edit2.Text:=table1.fieldbyname('Nom').Value;
edit3.Text:=table1.fieldbyname('PersonneContact').Value;
edit4.Text:=table1.fieldbyname('Adresse').Value;
edit5.Text:=table1.fieldbyname('CP').Value;
edit6.Text:=table1.fieldbyname('Localite').Value;

2 réponses

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
11 févr. 2006 à 11:14
La propriété Value est du type variant. La conversion vers le type de destination s'opère en analysant le contenu. Or, quand le contenu est vide, comment deviner le type de conversion à effectuer.
Un conseil, évite d'utiliser des variants que ce n'est pas franchement nécessaire. C'est un vrai bouffe mémoire (un variant occupe 32 octets).
Dans ton code ci-dessus, au lieu d'utiliser la propriété value, utilise plutôt la propriété AsString. En plus, tu y gagneras en rapidité d'exécution. Et comme une chaine peut être vide, tu n'auras pas de problème.


<HR color=#008000>
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
3
nou366 Messages postés 92 Date d'inscription samedi 21 janvier 2006 Statut Membre Dernière intervention 10 octobre 2010
11 févr. 2006 à 12:58
Enorme merci Delphiprog
0