Bonjour,
Ce message sera peut-être en double car à l'inscription directe dans une nouvelle discussion dans le forum, il a disparu
J'avance petit à petit dans la connaissance de Lazarus sous XP et Linus Fedora 9. Utilsateur de Delphi 4 et des tables de type Dbase (système que j'utilise depuis plus de 20 ans et c'est lui qui m'a ammené à Delphi, puis aujourdh'ui à Lazarus). Pour les table de données je ne suis pas encore arrivé à Sqlite.
Donc dans mon approche j'ai réussi sous Lazarus 0.9.24 à écrire une petite application dans laquelle je crée une tables de type Dbase 4 pou 7 pour j'écris dans cette table après l'avoir activée les données mise en forme exctraite d'un fichier au format texte avec séparateur des champs par un caractère du genre des fichiers *.cvs. Je passe par un boucle de lecture de ce fameux fichier, par des procédures de mises en forme et une procédure d'écriture qui commence par une commande "ma table .insert" puis les différents champs à introduire et je termine cette procédure d'écriture par ma commande "ma table.post" et je vois le résultat dans un DbGrid.
Sous la version du composant TDbf de Lazarus 0.9.24 tout va bien.
Dernièrement je suis passé à la version 0.9.26 avec ses composants installés avec l'IDE, j'ai recompilé mon petit bout d'essai de programmation, sans erreur signalée, mais quand je lance l'execution, j'ai un plantage au cours de la deuxième séquance d'écriture avec un message en Anglais qui semble dire que la commande ma table n'est pas en situation d'insertion ou d'édition.
J'ai cherché via un point d'arrêt à comprendre le problème. Résultat la première séquence d'écriture dans un nouvel enregistrement se fait bien je le vois dans le DbGrid, le problème se déclare au moment de la commande du nouveau *.post.
J'ai essayé avec l'Evaluateur Crt F7 le voir l'état de la table comme je fais avec celui de Delphi, en ecrivant dans la zône à evaluer le mon de ma table avec ".Active", mais la réponse c'est un message d'erreur xxxx......Near.
Alors si l'un d'entre vous peut m'aider merci d'avance
Partager