cs_apz
Messages postés281Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention11 avril 2013
-
7 mai 2002 à 23:18
cs_Nono40
Messages postés962Date d'inscriptionmercredi 3 avril 2002StatutMembreDernière intervention12 septembre 2006
-
8 mai 2002 à 14:12
Salut,
le code suivant me donne l'erreur suivante:
Trop de parametres regionaux
dans la fonction delete(s, pos(' ',s),1);
je crois que le compilateur pour executer cette ligne se refere a TabDest.Delete au lieu de delete(s,pos(' ',s),1) !!?
alors comment faire comprendre au compilateur qu'il s'agit de delete appliqué sur les string et non pas celle appliqué sur les tables ?
je peux enlever tout simplement le With TabDest mais il n'y a pas une methode pour avoir le meme code sans avoir notre message d'erreur ?
var
s : string;
begin
With Tabdest Do
Begin
Open;
First;
While Not TabDest.EOF Do
Begin
s:=FieldByName('Ref').AsString;
If Pos(' ',s)<>0 Then
Begin
While Pos(' ',s)<>0 Do Delete(s,pos(' ',s),1);
Edit;
FieldByName('Ref').AsString:=s;
Post;
End;
Next;
End;
Close;
End;
une autre question : est-ce possible d'ouvrir deux table en meme temps pour eliminer ces espaces devant les champs de travail ?
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 8 mai 2002 à 08:55
Suggestion :
remplacer le code par :
begin
With Tabdest Do
Begin
Open;
First;
While Not EOF Do
Begin
Edit;
FieldByName('Ref').AsString:= Trim(FieldByName('Ref').AsTring);
Post;
Next;
End; {While Not EOF}
Close;
end; {With Tabdest}
end;
Celà éviterait de boucler pour chaque enregistrement trouvé.
NB : les fonctions Trim sont contenues dans l'unité System et sont optimisées.
May Delphi be with you.
Vous n’avez pas trouvé la réponse que vous recherchez ?