ApplyUpdates

Delphi

19/07/2005

Alguém sabe me informar se existe algum bug no ApplyUpdate?
Não sei o que ocorre, mas se vou mandando vários comandos, por exemplo de deleção, e dou um apply a cada deleção, algumas vezes trava. Isso tem acontecido bastante recentemente, mas não é a primeira vez que acontece. Será que existe algum bug. Estou usndo o comando assim: ClientDataSet.ApplyUpdates(0).


Carololiveirarod

Carololiveirarod

Curtidas 0

Respostas

Robsons

Robsons

19/07/2005

Olá !!!

Tb Tenho passado por este tipo de problema com o ClientDataSet...

Qual o Banco de Dados que vc está usando ???

Já Experimentou usar ClientDataSet.Applyupdates(0);

Se Souber de Algo novo poderia me informar tb ...

Obrigado...


GOSTEI 0
Carololiveirarod

Carololiveirarod

19/07/2005

Alguém sabe me informar se existe algum bug no ApplyUpdate? Não sei o que ocorre, mas se vou mandando vários comandos, por exemplo de deleção, e dou um apply a cada deleção, algumas vezes trava. Isso tem acontecido bastante recentemente, mas não é a primeira vez que acontece. Será que existe algum bug. Estou usndo o comando assim: ClientDataSet.ApplyUpdates(0).


Obs. Estou usando o Apply em um ClientDataSet que é um Detail de outro Client. Não sei se pode ter alguma coisa a ver.


GOSTEI 0
Adriano Santos

Adriano Santos

19/07/2005

Cara tente usar o método CloseDataSets do TSQLConnection.

SqlConnection.CloseDataSets;

Ele força o envio das informações salvas em Cache para o banco. Talvez pare o problema.


GOSTEI 0
Carololiveirarod

Carololiveirarod

19/07/2005

Cara tente usar o método CloseDataSets do TSQLConnection. SqlConnection.CloseDataSets; Ele força o envio das informações salvas em Cache para o banco. Talvez pare o problema.


Essa solução que você passou não me resolve porque fecha as Querys e eu não quero fecha-las.


GOSTEI 0
Carololiveirarod

Carololiveirarod

19/07/2005

Cara..não sei o que fazer...tentei mudar o Apply pra ser dado na Query Master, mas trava do mesmo jeito. Credo...Acho que isso é bug. Não tem o mínimo sentido. E o pior que o comando de deleção é passado direitinho, já verifiquei o log do banco e aparentemente não tem nada errado.


GOSTEI 0
Kotho

Kotho

19/07/2005

Obs. Estou usando o Apply em um ClientDataSet que é um Detail de outro Client. Não sei se pode ter alguma coisa a ver.


Quando se utiliza o ClientDataSet com Master/Detail... o ApplyUpdates deve ser dado na tabela master somente, e todos os Details serão atualizados (inclusive dentro de uma única transação)...


GOSTEI 0
Carololiveirarod

Carololiveirarod

19/07/2005

Foi exatamente isso que eu fiz. Troquei o Apply pra ser dado no Master...mas adivinha !! O Erro persistiu !!


GOSTEI 0
Cesarpir

Cesarpir

19/07/2005

Amigos tive problemas parecidos e só que não aparecia mensagem exatamente do erro, ai virou caça ao rato até que no evento onReconcileError eu coloquei o seguinte código:

=====================
MessageDlg(´Mensagem: ´+E.Message,mtInformation,[mbok],0);
Action := raCancel;
=================

Bom pelo menos deu para sacar o tipo de problema, um era quando eu editava e tinha um campo do tipo blob, que se o usuário num digitava nada ai vinha o erro, isto após o applyupdates(0), outro erro que o banco retorna como erro mas na verdade era uma referência de integridade, tentei excluir um pedido sem eliminar os itens antes, bom espero que pelo menos de uma luz, se não perdoem-me, uso delphi 7 com firebird 1.5, dbexpress.

César


GOSTEI 0
Carololiveirarod

Carololiveirarod

19/07/2005

O meu promblema é que não entra no Reconcile Error. Só pra você ter uma idéia, quando coloco um controle de transação, da seguinte maneira:

try
Bd.ApplicationServer.StartTransaction;
dmdDigitacao.QueryCapaLote.ApplyUpdates(0);
Bd.ApplicationServer.Commit;
except
Bd.ApplicationServer.Rollback;
MessageDlg( MsgErroGeral,mtError,[mbOk],0)
end;

O comando passa pelo Apply normalmente e só trava no Commit, mas se tiro o controle de transação ele trava no Apply, sem passar pelo reconcile. Não tá dando pra pegar o erro. Ahh...e isso só acontece em rede...quando estou no mesmo banco, porém local, não trava. Só que com a rede está tudo beleza....já rodei programinhas de verificação de rede enquanto eu executava a transação e trava mesmo quando a rede está beleza.


GOSTEI 0
Carololiveirarod

Carololiveirarod

19/07/2005

Será que alguém pode me ajudar?? Não sei mais o que fazer...não consigo achar o erro.


GOSTEI 0
Cesarpir

Cesarpir

19/07/2005

Amigo, ta dificil em imaginar o erro mas vc ja tentou inserir dados direto no banco de dados via insert into, quem sabe o erro num esta la, fica dicifil imaginar sem ver codigos, banco por inteiro.
Se tiver mais detalhes ainda , ajudaria.


César


GOSTEI 0
Caduoli

Caduoli

19/07/2005

quando ta na rede local funciona quando ta na rede externa do o commit trava o banco


GOSTEI 0
Caduoli

Caduoli

19/07/2005

quando ta na rede local funciona quando ta na rede externa do o commit trava o banco


GOSTEI 0
POSTAR