Hola a todos,
utilizo delphi7 e tablas .dbf,
cuando guardo registros de mi dbgrid em mi table1.dbf por primera vez funciona bien, ahora cuando modifico o adiciono un registro em mi dbgrid, surge un problema, y es que repite todos los datos del dbgrid y vuelve a salvarlos, es decir, si tengo:
dbgrid:
001 - teste
002 - varios
salva bien en mi table1
cuando adiciono:
001 - teste
002 - varios
003 - xxxxxx
me salva los 3 registros pero mi table1, queda asi:
001 - teste
002 - varios
001 - teste
002 - varios
003 - xxxxxx
mi funcion es:
Código Delphi
[-]
procedure TFormCprograma.BtnSalvarClick(Sender: TObject);
begin
DBGrid3.Options := DBGrid3.Options + [dgMultiSelect];
with DBGrid3.DataSource.DataSet do
begin
First;
for vlLinha := 0 to RecordCount - 1 do
begin
DBGrid3.SelectedRows.CurrentRowSelected := True;
Next;
end;
end;
DBGrid3.SelectedRows.Refresh;
if DBGrid3.SelectedRows.Count > 0 then
begin
for Idx := 0 to DBGrid3.SelectedRows.Count-1 do
begin
CDS.GotoBookmark(pointer(DBGrid3.SelectedRows.Items[Idx]));
Table1.Append;
Table1ALUNOMATRI.Value := TabGlobal.Dprograma.alunomatricula.Conteudo;
Table1ALUMNOID.Value := TabGlobal.Dprograma.alumnoID.Conteudo;
Table1DTINICIO.Value := TabGlobal.Dprograma.dt_inicio.Conteudo;
Table1ID.Value := CDS.Fields[0].Value;
Table1COD.Value := CDS.Fields[1].Value;
Table1EXERCICIO.Value := CDS.Fields[2].Value;
Table1TIEMPO.Value := CDS.Fields[3].Value;
Table1.Post;
end;
end;
end;
gracias
saludos