SQLTable e ClientDataSet não gravam no DBGrid

Delphi

28/10/2003

Estou começando a trabalhar com dbexpress no Delphi6.

Quando faço minhas alterações no dbGrid parece que está tudo bem, mas quando saio e volto no aplicativo, percebo que nao foi ´postado´ nada.

Uso um SQLConnection, um SQLTable, um DataSetPrivider, um ClientDataSet - cds, e um DataSource ligado a este CDS. Também um dbNavigator e o dbGrid.

Qual o evento de qual componente que devo aplicar o cds.applyUpdates.

No cds.refresh não funciona, só se eu forçar um refresh no dbNavigator, o que acho não ser necessário.

Parece simples mas em boa parte dos eventos que testei o Delphi exibe aquela mensagem de que a operação não é aceita para DataSets unidirecionais.

Existe alguma propriedade a mais que deveria configurar?

Agradeço qqr de ajuda nessa.


Théo

Théo

Curtidas 0

Respostas

Marcelo.c

Marcelo.c

28/10/2003

Tente o evento BeforeClose (antes de fechar):

cds.applyupdates(-1);


GOSTEI 0
Rômulo Barros

Rômulo Barros

28/10/2003

Na sua tabela, vá no evento AfterPost e inclua:
Tabela.applyupdates(-1);


GOSTEI 0
Théo

Théo

28/10/2003

Tente o evento BeforeClose (antes de fechar): cds.applyupdates(-1);


Olá. Infelizmente não funcionou!


GOSTEI 0
Théo

Théo

28/10/2003

Tente o evento BeforeClose (antes de fechar): cds.applyupdates(-1);


Retificando, eu espera que no fechamento do form ele chamasse o evento, mas tive que dar um básico cds.active := false dentro do evento close do form.

Muito obrigado pela preciosa ajuda!


GOSTEI 0
Théo

Théo

28/10/2003

[quote:5fa4685dd6=´Undeclared Identifier´]Na sua tabela, vá no evento AfterPost e inclua:
Tabela.applyupdates(-1);[/quote:5fa4685dd6]

10! Funcionou! Valeu!


GOSTEI 0
POSTAR