Bonjour,
J'ai été confronté à un problème, à présent résolu et je souhaite comprendre mon erreur. Je vous la soumets, en espérant que quelqu'un saura y répondre.
(J'utilise Delphi 5.)
J'ai une requête qui va récupérer un identifiant(un entier) id_pres.
Cet identifiant est utilisé dans une autre requête pour chercher un libellé.
Dans l'appel de cette deuxième requête, il faut envoyer l'id_pres en chaine de caractère.
Voilà ce que je faisais:
id_pres := rechercherpres(a,b);
ShowMessage('pres = '+intToStr(id_pres)+'!');
//j'ai rajouté le point d'exclamation pour voir si il ne rajoutait pas d'espace à la //fin. la valeur affichée était la bonne!
libelle := sql_rechercher_pres(...,...,intToStr(id_pres),...,...);
La, ça ne marchait pas!
J'ai modifié par
pres_tmp = string;
id_pres := rechercherpres(a,b);
pres_tmp := intToStr(id_pres);
libelle := sql_rechercher_pres(...,...,pres_tmp,...,...);
Et là, miracle, ça marche.
Dans le reste de mon code, j'ai d'autres fonctions qui marchent et où les arguments sont soumis à certaines conversions!
Mon interrogation est de savoir pourquoi la première fonction ne marchait pas?
Merci d'avance pour vos réponses!
Partager