Saber se houve modificação ClientDataSet antes ApplyUpdate
Pessoal,
Estou utilizando BDS 2006 + SQL Server 2005 e DBExpress, faço um post nos meus dados utilizando TClientDataSet.Post e em seguinda TClientDataSet.Applyupdates(0).
Tem como antes de dar um ApplyUpdate eu verificar se o TClientDataSet foi modificado ? Eu usei a propriedade:
if myClientDataSet.Modified = True then
myClientDataSet.ApplyUpdate(0);
Mas mesmo com o código acima eu alterando a tabela gravando ou excluindo o registro ele não diz q o TClientDataSet foi modificado. Tem como saber isso pelo Delta ? (Não sei onde ví isso)
Obrigado
Estou utilizando BDS 2006 + SQL Server 2005 e DBExpress, faço um post nos meus dados utilizando TClientDataSet.Post e em seguinda TClientDataSet.Applyupdates(0).
Tem como antes de dar um ApplyUpdate eu verificar se o TClientDataSet foi modificado ? Eu usei a propriedade:
if myClientDataSet.Modified = True then
myClientDataSet.ApplyUpdate(0);
Mas mesmo com o código acima eu alterando a tabela gravando ou excluindo o registro ele não diz q o TClientDataSet foi modificado. Tem como saber isso pelo Delta ? (Não sei onde ví isso)
Obrigado
Adrbrusc
Curtidas 0
Melhor post
Marco Salles
19/09/2006
Tem como saber isso pelo Delta ? (Não sei onde ví isso)
Delta é um OLEVariant que armazena as ALTERAÇÕES feitas em um ClientDataSet.
voce pode tentar fazer assim
if ClientDataSet1.ChangeCount > 0 then faz o que tem que ser feito pois houve alteraçoes
GOSTEI 1
Mais Respostas
Raserafim
19/09/2006
esta verificação que vc está fazendo não é para saber se o campo foi alterado, esta propriedade diz se pode ser alterado ou não (somente leitura ou não).
vc deverá fazer esta verificação através do DataSource ao qual o ClientdataSet está ligado, verificando a propriedade State assim:
ou seja, caso o registro esteja em modo de edição ou inserção.
vc deverá fazer esta verificação através do DataSource ao qual o ClientdataSet está ligado, verificando a propriedade State assim:
if DataSource1.State in [dsInsert, dsEdit] then ...
ou seja, caso o registro esteja em modo de edição ou inserção.
GOSTEI 0
Adrbrusc
19/09/2006
Ok, obrigado...
Mas é que já dei o Post na tabela ou às vezes não precisei pois só foi consulta e ai quando eu sair do formulário eu queria dar um único ApplyUpdate caso houvesse modificações. Por isso estou tentando saber se houveram alterações para este possível ApplyUpdate.
Obrigado
Mas é que já dei o Post na tabela ou às vezes não precisei pois só foi consulta e ai quando eu sair do formulário eu queria dar um único ApplyUpdate caso houvesse modificações. Por isso estou tentando saber se houveram alterações para este possível ApplyUpdate.
Obrigado
GOSTEI 0