problème de copier de dataset en delphi - Programmation
Marsh Posté le 15-06-2002 à 11:31:55
- pourquoi tu commences par faire un insert dans cdsBesoin ?
- tu devrais faire cdsGeneral.Post plutôt que .Next, non ?
Marsh Posté le 15-06-2002 à 16:53:43
ok j'ai enlevé ces lignes
cdsBesoin.Insert;
if cdsBesoin.ChangeCount>0 then
cdsBesoin.Post;
j'avais mis ces lignes car mon dataset est lié a un grid, il y a des infos du grid qui ne sont pas encore posté donc je pensais qu'il fallait les posté avant de pouvoir les copiés
en les enlèvement, j'ai pu d'enregistrement vide et je copie sans problème les donnée qui n'ont pas été posté, dans l'autre dataset...
je trouve cela bizarre....
Marsh Posté le 15-06-2002 à 17:08:28
bhen si tu fais un Insert avant de copier c'est normal que tu aies une ligne en trop.
À la limite tu peux laisser le Post pour être sûr que tout est mis à jour...
Marsh Posté le 15-06-2002 à 17:43:50
si je laissait pas le insert, j'avais une erreur disant que le dataset n'était pas en mode édition ou insertion....
j'ai enlever les lignes, j'ai fait de nombreux test et c'est toujours mis à jour correctement....
Marsh Posté le 15-06-2002 à 17:46:25
ouasi enfin avant de faire le post tu peux voir si tu es en mode édition ou pas hein (c'était sous-entendu dans mon post précédent)
Marsh Posté le 15-06-2002 à 05:03:24
j'ai un problème lorsque je copie un dataset dans un autre, il me copie toujours un enregistrement de trop
exemple que n'ai que 2 enregistrement dans mon dataset et il m'en copie 3
voici mon code
begin
cdsBesoin.Insert;
if cdsBesoin.ChangeCount>0 then
cdsBesoin.Post;
cdsBesoin.First;
while not(cdsBesoin.Eof) do
begin
cdsGeneral.Insert;
cdsGeneral.FieldByName('Nom'.AsString := cdsBesoin.FieldByName('Nom'.AsString;
cdsBesoin.Next;
cdsGeneral.Next;
end;
end;
Quelqu'un a une solution pour remidier à ça?
---------------
Borland rulez: http://pages.infinit.net/borland