Edição e Gravação em DBGrid

Delphi

03/08/2004

Tenho um DBgrid que edito algumas informações. Gostaria de ao clicar no botão Cancelar ele não gravasse as alterações feitas no DBGrid. Percebo que quando mudo de linha ele grava as alterações feitas na linha anterior.
Alguém sabe como resolver isso?

Valeu força!!!

JR.


Jrjoliv2003

Jrjoliv2003

Curtidas 0

Respostas

Tnaires

Tnaires

03/08/2004

Olá
Isso acontece pq, num DBGrid, se vc mudar o cursor da linha, ele dá um Post no DataSet. Vc pode remediar isso usando o recurso de CachedUpdates do DataSet, q permite vc editar os registros mas não gravar diretamente os dados no banco, e sim no cache interno. Então, vc pode colocar dois botões: um chamando o método ApplyUpdates (q grava todas as modificações) e outro chamando CancelUpdates (q desfaz as alterações no cache).
Abraços


GOSTEI 0
Jrjoliv2003

Jrjoliv2003

03/08/2004

Essa Dbgrid usa um ibtable (ibtparcelas). Como ficaria essa programação.
Desculpe, sou novo em programação. É meu projeto final de curso!!

Valeu a força!!!

JR.


GOSTEI 0
Jrjoliv2003

Jrjoliv2003

03/08/2004

Resolvido!!!
data.ibtparcelas.ApplyUpdates;
data.ibtparcelas.CancelUpdates;

E no componete ativei a propriedade CacheUpdates para true.

Valeu!!!

JR.


GOSTEI 0
POSTAR