Selecao DevMedia QUERO SER PRIME

Fórum Como tratar o Response do OnUpdateError DataSetProvider ???? #324573

01/07/2006

0

Boa noite!

Estou desenvolvendo um sistema client/server mas preparado para 3camadas. Tenho um RDM onde estão todas as regras de negócio e um DM onde estão os ClientDataSets. Até ae tudo bem! Como não quero sair dessa maneira de programar, estou com um problema. Uso o FB 1.5 como banco, mas como a estrutura é para ser futuramente em 3camadas não existe nada no banco (trigger, procedure) só generator! Para eu tratar das chaves primarias e dos IDs, utilizo tudo no RDM!

Essa é a função do BeforeUpdateRecord!

[img:ebd2b71dd8]http://siffra.no-ip.com:20000/luiz/before.jpg[/img:ebd2b71dd8]

Assim eu consigo controlar os IDs no RDM!



O problema é quando o generator está errado, vai dar um “violação de chave primária”!

Eu gostaria de usar o evento OnUpdateError para tratar isso, mas não estou conseguindo!


Ta ae o meu evento. Nesse evento eu quero verificar se ocorreu um erro de chave e se o campo do dataset for integer ae ele vai tratar o erro. Alem de consertar o ID tbm quero colocar o valor certo para o generator!

Tudo roda certo, o valor do Generator é consertado mas da um erro estranho de “Invalid response”.

Evento.

[img:ebd2b71dd8]http://siffra.no-ip.com:20000/luiz/updateerror.jpg[/img:ebd2b71dd8]

Muito obrigado!


Luizito

Luizito

Responder

Posts

01/07/2006

Luizito

Ta ae as figuras !!!

[img:90547c775e]http://publico.siffra.com/luiz/before.jpg[/img:90547c775e]


e a segunda

[img:90547c775e]http://publico.siffra.com/luiz/updateerror.jpg[/img:90547c775e]


Responder

Gostei + 0

05/07/2006

Luizito

Poxa ninguem vai responder ??????????????????????????????


Responder

Gostei + 0

05/07/2006

Luizito

É realmente ninguem sabe me responder !!!

Nossa !!!!!!!!!!!!!!!!


Responder

Gostei + 0

06/07/2006

Luizito

Ninguém ainda ?????????????????????????????


Responder

Gostei + 0

06/07/2006

Emerson Nascimento

porque você não faz a verficação no próprio BeforeUpdateRecord? se o valor do generator estiver inconsistente você o atualiza e depois atribui o novo valor ao seu registro. assim você evita o erro e não precisa se preocupar em tratar o UpdateError.

é só uma idéia...


Responder

Gostei + 0

09/07/2006

Luizito

Para eu fazer a verificação da consistência no BeforeUpdateRecord eu teria que fazer 2 consultas ao banco, uma que ja é feita para buscar o proximo ID e outra para verificar se o ID é válido.
Se eu fizesse o tratamento só na hora do erro eu economizaria muitos selects desnecessários no banco ! Só trataria o que realmente tivesse dado erro !
Mas tbm pode ser uma solução. O problema é que meu aplicativo é em 3camadas e quanto mais eu puder evitar ´idas´ ao banco melhor, assim melhoraria a performance!

Abraço !


Responder

Gostei + 0

11/07/2006

Luizito

Nossa , ninguém mesmo ???????


Responder

Gostei + 0

12/07/2006

Luizito

Tá difícil alguém responder mesmo !


Responder

Gostei + 0

21/07/2006

Luizito

É realmente ninguém sabe !!!!!!!!!!!!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar