erro dbexpress firebird
quando edito um registro e salvo (apos salvar applyupdates) e tento usar o refresh da o seguinte erro ... clientdataset1: must apply updates before refreshing data.
o interessante é que se saio mesmo apos o appyupdates não grava os dados no banco, a as vezes qdo tento usar orefresh ele da certo e ai os dados são gravados.... lasca...
uso sqlquery, datasetprovides e clinetdataset ... firebird 1.5 .. delphi 7
o interessante é que se saio mesmo apos o appyupdates não grava os dados no banco, a as vezes qdo tento usar orefresh ele da certo e ai os dados são gravados.... lasca...
uso sqlquery, datasetprovides e clinetdataset ... firebird 1.5 .. delphi 7
Guibas
Curtidas 0
Respostas
Vinicius2k
27/08/2004
Colega,
O problema é que o ApplyUpdates não está sendo executado com sucesso...
Vc já verificou se estão havendo erros no ApplyUpdates?
Desculpe a crítica, mas vc está com problemas por não levar em consideração nossas respostas... eu e o afarias já lhe falamos isso por duas vezes em outro tópico... http://delphiforum.icft.com.br/forum/viewtopic.php?t=50164
:!: [b:c0422bb263]O método ApplyUpdates não gera exceção em caso de erros.[/b:c0422bb263]
Se quiser saber o erro busque-o no evento OnReconcileError do ClientDataSet com , por exemplo:
T+
O problema é que o ApplyUpdates não está sendo executado com sucesso...
Vc já verificou se estão havendo erros no ApplyUpdates?
if cds.ApplyUpdates(0) > 0 then // houveram erros
Desculpe a crítica, mas vc está com problemas por não levar em consideração nossas respostas... eu e o afarias já lhe falamos isso por duas vezes em outro tópico... http://delphiforum.icft.com.br/forum/viewtopic.php?t=50164
:!: [b:c0422bb263]O método ApplyUpdates não gera exceção em caso de erros.[/b:c0422bb263]
Se quiser saber o erro busque-o no evento OnReconcileError do ClientDataSet com , por exemplo:
ShowMessage(E.Message);
T+
GOSTEI 0
Guibas
27/08/2004
apareceu essa msg de erro agora
update affected more than 1 record
como resolver?
coloquei a propriedade do dsprovider aloowmultirecordupdates pra true ele funcionou mas só que alterou em todos os registro da tabela e não apenas na que alterei :)
update affected more than 1 record
como resolver?
coloquei a propriedade do dsprovider aloowmultirecordupdates pra true ele funcionou mas só que alterou em todos os registro da tabela e não apenas na que alterei :)
GOSTEI 0
Vinicius2k
27/08/2004
Mas pq vc mudou a propriedade se não queria que vários registros fossem afetados?
Olha só, ´cada caso é um caso´... não posso ´chutar´ para vc o que está acontencendo pois não estou vendo o problema e não conheço a estrutura da base e o tipo de inserção e operações que vc está fazendo nela...
Meu conselho é que vc estude (Help do Delphi) para que serve e como utilizar cada propriedade do DataSetProvider (UpdateMode, Options) e também as 4 ´ProviderFlags´ dos TFields...
Todas elas tem uma função fundamental e que devem ser corretamente ajustadas, muitas vezes de forma diferente, para cada tabela ou update da aplicação...
T+
Olha só, ´cada caso é um caso´... não posso ´chutar´ para vc o que está acontencendo pois não estou vendo o problema e não conheço a estrutura da base e o tipo de inserção e operações que vc está fazendo nela...
Meu conselho é que vc estude (Help do Delphi) para que serve e como utilizar cada propriedade do DataSetProvider (UpdateMode, Options) e também as 4 ´ProviderFlags´ dos TFields...
Todas elas tem uma função fundamental e que devem ser corretamente ajustadas, muitas vezes de forma diferente, para cada tabela ou update da aplicação...
T+
GOSTEI 0