Access Violation no ApplyUpdates do ClientDataSet

17/09/2004

Estou com um problema grave, não estou conseguindo resolver.

No applyudates do meu clientdataset está sendo gerado um erro no ReconcileError de AccesViolation.

Se eu uso applyupdates(0) ele não grava nada no banco, porém se eu usar applyupdates(1) ele grava os dados, mas continua tambem gerando o accesviolation no evento reconcile error.

Fiz um outro projeto no delphi e o erro não acontece, só mesmo neste projeto.

Ja apaguei os componentes (SqlDataSet+DataSetProvider+ClientDataSet) e inseri novamente e o erro continua.

Este AccessViolation acontece quando eu deixo algum valor NULO...sei que este problema da em campos BLOB, mas to usando somente campos TIME.

se alguem sabe a solução me ajude!


Henry.fartura

Respostas

17/09/2004

Henry.fartura

meu msn é fabiomaxximiano@hotmail.com


Responder Citar

17/09/2004

Henry.fartura

descobri o erro:

Se alguem ja passou por isso, eu fiz o seguinte:

tirei da clausula uses o midaslib e o dbexpint e o erro não ocorreu mais.


Responder Citar

17/09/2004

Vinicius2k

Era um erro realmente estranho, mas agora q vc esclareceu o que estava fazendo, devo aconselhar vc e outros colegas...
Apesar de ser possível embutir o driver para IB/FB e a midas dentro da aplicação, [b:3f9e2af6b9]nunca façam isso[/b:3f9e2af6b9].
A razão eu desconheço, mas este problema é apenas um (e que eu desconhecia) de vários outros que ocorrem ao se tentar embutir estas bibliotecas na aplicação.
Prefiram sempre distribuir as DLLs separadamente.

T+


Responder Citar

17/09/2004

Henry.fartura

vinicius, eu descobri isso ao acaso... foi eu que li uma vez que poderia colocar essas unit pra não precisar mais distribuir as DLL...
mas quais outros erros que voce conhece pelo mesmo motivo?

tipo eu ia dando F7 pra debugar mas em nenhuma linha dava erro, e do nada ele ia pro reconcileerror...


Responder Citar

17/09/2004

Vinicius2k

Eu fiz alguns testes logo que comecei a trabalhar com a midas (isso no Delphi 6), e não me recordo de todos os problemas, mas alguns mais sérios como :
Simplesmente não abrir o CDS, algumas vezes.
O CDS não interpretava corretamente parametros.
Algumas vezes, mesmo setando corretamente, as ProviderFlags dos TFields, ele não conseguia aplicar os updates.
Alterações no UpdateMode do Provider não tinham nenhum efeito...

Estes são os que me lembro... talvez alguns problemas já tenham sido corrigidos no Delphi 7 e updates, mas eu abandonei a idéia... distribuir mais duas DLLs, que juntas, somam menos de 500KB não fazem tanta diferença assim, não é verdade? Até pq quando vc embute estas bibliotecas na aplicação ela cresce de tamanho...

T+


Responder Citar