ClientDataSet1.ApplyUpdates(-1); - Não dá erro mas também não atualiza a tabela

Rogerio Monteiro monteirorama em gmail.com
Sáb Dez 12 14:46:55 -03 2009


Colegas, boa tarde.

O problema estava na RPMQuery1_CDS1 cuja propriedade CachedUpdates deveria 
ser False e não True. Por isso não atualizava a tabela no banco.

[]´s

Rogerio.

"Rogerio Monteiro" <monteirorama em gmail.com> 
escreveu na mensagem news:hfum0i$m78$1 em ger.gmane.org...
> Olá Colegas.
>
> Utilizo Delphi 7 + Zeos Lib 6.6.2-RC + FB 2.1
>
> Problema:
>
> Tenho um cadastro de modelos de etiqueta, no qual há uma tabela Pai e uma 
> tabela Filha.
>
>
> Para a tabela Pai temos: RPMQuery1 (TZConnection) Nome no FB: MODETIQUETA
>
> Para a tabela Filha temos: RPMQuery1_CDS1 (TZConnection) + 
> DataSetProvider1 + ClientDataSet1  Nome no FB: CAMPOSLINHAETIQ
>
> Muito bem, no evento AfterPost de RPMQuery1, há a gravação das alterações 
> assim:
>
> With Form_MenuPrincipal do
>      begin
>         try
>            RPMConexao.StartTransaction;
>
>               // Grava a Tabela Principal (MODETIQUETA)
>               RPMQuery1.ApplyUpdates;
>
>               // Grava a Tabela Secundária (CAMPOSLINHAETIQ)
>               if (ClientDataSet1.ChangeCount > 0) then
>                  ClientDataSet1.ApplyUpdates(-1);   // ----------->>> 
> PASSA POR AQUI, ZERA O ChangeCount MAS NÃO ATUALIZA A TABELA.
>
>            RPMConexao.Commit;
>
>      except
>         RPMConexao.Rollback;
>         raise;
>      end;
>   end;
>   RPMQuery1.CommitUpdates;
>
> Resumindo, após executado os comandos acima, não dá erro, nem exception, 
> porém somente a tabela principal (MODETIQUETA) é atualizada, mas a que tem 
> o esquema do ClientDataSet não é, apesar de passar pelo comando e o 
> changecount de 1 ou 2 vai para 0.
>
> Se alguém puder me dar uma luz, desde já agradeço.
>
> Rogerio.
>
>
>
>


--------------------------------------------------------------------------------


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 







Mais detalhes sobre a lista de discussão lista