cs_Nono40
Messages postés962Date d'inscriptionmercredi 3 avril 2002StatutMembreDernière intervention12 septembre 20062 28 janv. 2003 à 22:30
Oui, c'est effectivement le cas avec le BDE en local. Le plus sûr ( mais aussi le plus bourrin ). Après une série de modifications tu fermes et tu ouvres à nouveau la table. Dans ce cas tu es sur que les modifications sont enregistrées.
--- :sleepy) Nono40@fr.st :sleepy) ---
Nouveau ---> Nono40.fr.st
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 28 janv. 2003 à 23:15
Pour des raisons de performances, les enregistrements modifiés ou créés pendant un session de travail sont contenus dans des buffers en mémoire. Par défaut, le contenu n'est écrit que sur fermeture de la table.
Pour pallier ce problème (existe aussi avec Paradox), tu appelles la méthode FlushBuffers dans le AfterPost de la table puisque tu n'utilises pas les CachedUpdates :
procedure TDataModule1.Table1AfterPost(sender: tobject);
begin
Table1.FlushBuffers;
end;
tof.p
Messages postés31Date d'inscriptionsamedi 20 septembre 2003StatutMembreDernière intervention 6 mars 2006 20 nov. 2003 à 00:40
Bonjour, j'ai un grand besoin d'aide. J'ai lu ce message que tu as laissé sur le site et je crois que ça se rapproche de mon problème:
Je sais que des buffers sont utilisés mais j'aimerais justement qu'après un update, delete, insert, il me renvoie automatiquement les données mises à jour car, c'est sûr que le rafraichissement ne se fait pas tjs, hors c primordial dans le programme que je suis en train d'écrire.
J'ai essayé de suivre ce que tu as dit avec le flush buffers mais il ne me donne pas la possibilité d'utiliser cette propriété. Les cachedupdates, je ne trouve pas non plus. Ca fait vraiment longtemps que je cherches.
Et chose étrange, avt j'utilisais des edit, post, append,... et la, jamais le raffraichissement était fait. Avec le SQL ca va mieux mais c pas encore ça. J'espère avoir été assez clair et je te remercie à l'avance.
Tof