DENNLER
Messages postés6Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention15 septembre 2009
-
25 août 2005 à 14:05
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 2013
-
12 sept. 2005 à 17:52
Je filtre la table puis j'effectue le traitement qui fait que la base (de type DBF) devient vide.
Sur la Form j'utilise des composants types TStringField,TMemoField, TBlobField;
Comment empêcher l'apparition de l'erreur "8705 En début de table"
QUERY1.First;
QUERY1.Edit; // Pour être en saisie
WHILE NOT QUERY1.EOF DO
BEGIN
QUERY1.EDIT;
Query1.FieldByName('LOGICIEL').AsString:=INFO;
try
QUERY1.POST;
except // Aucun effet
On E: Exception do
BEGIN
Showmessage('Erreur');
END;
end;
END; // Du While
DENNLER
Messages postés6Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention15 septembre 2009 12 sept. 2005 à 12:44
Remarques :
- l'instruction Query1.Next n'a pas été oublié en effet avant de lancer cette procedure la table est filtrée
- je repose ma question pour qu'enfin quelqu'un puisse me réponde :
1) J'affiche sur une nouvelle Forme grâce aux composants types TStringField,TMemoField, TBlobField une table filtrée(Important).
3) L'utilisateur peut alors lancer une opération qui peut avoir comme effet de ne plus avoir à afficher d'enregistrements respectant le filtre et le message "8705 En début de table" apparait.
Comment empêcher ou intercepter l'apparition du message l'erreur "8705 En début de table"
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 12 sept. 2005 à 17:52
"l'instruction Query1.Next n'a pas été oublié en effet avant de lancer cette procedure la table est filtrée"
Désolé, mais je ne vois pas le rapport.
En revanche, si tu mets une boucle du type :
WHILE NOT QUERY1.EOF DO
Assure toi de passer à l'enregistrement suivant, faute de quoi tu n'atteindras jamais la fin de l'ensemble de données, qu'il soit filtré ou non. Et pour cela, il faut soit ajouter un appel à la méthode Next du composant requête, soit écrire une requête plus appropriée (voir la première proposition plus haut).
Et je persiste en affirmant qu'une requête du type UPDATE serait plus efficace.
<HR color=#008000>
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.