Tratar erro no ClientDataSet....
Boa tarde...
eu gostaria de saber como faço pra tratar erros retornado do banco de dados para o clientdataset.... sei q no evento OnReconcileError o parametro E:EReconcileError tem a mensagem de erro, e muita gente trata a partir da string da mensagem de erro testando se existe o texto ´violation of FOREIGN KEY´ ou entao ´Error Code:146´... eu queria usar somente o ErrorCode desse parametro E:EReconcileError, mas ele retorna sempre o valor 1....
qual a melhor e mais indicada maneira de se fazer esse tratamento? nao quero criar Exception no banco, quero tratar na aplicação... Obrigado
eu gostaria de saber como faço pra tratar erros retornado do banco de dados para o clientdataset.... sei q no evento OnReconcileError o parametro E:EReconcileError tem a mensagem de erro, e muita gente trata a partir da string da mensagem de erro testando se existe o texto ´violation of FOREIGN KEY´ ou entao ´Error Code:146´... eu queria usar somente o ErrorCode desse parametro E:EReconcileError, mas ele retorna sempre o valor 1....
qual a melhor e mais indicada maneira de se fazer esse tratamento? nao quero criar Exception no banco, quero tratar na aplicação... Obrigado
Davicarrano
Curtidas 0
Respostas
Marco Salles
14/05/2007
eu acho que é mais ou menos por ai... o parametro [u:39ed62aaa7]E [/u:39ed62aaa7] geralmente é usado para abrir a caixa de Dialogo UpdateErtror predefinida no Delphi
por exemplo:
mas nada impede que voce altere este formulário a seu ghosto
por exemplo:
procedure TdmMain.cdsCustomerReconcileError(DataSet: TCustomClientDataSet;
E: EReconcileError; UpdateKind: TUpdateKind;
var Action: TReconcileAction);
begin
Action := HandleReconcileError(DataSet, UpdateKind, E);
end;
mas nada impede que voce altere este formulário a seu ghosto
GOSTEI 0
Davicarrano
14/05/2007
na verdade eu queria é poder criar um tratamento dos erros que o BD retorna para minha aplicacao... pra eu mesmo dar a mensagem ao usuário sobre o erro q ele cometeu.... por exemplo ao tentar violar a integridade entre tabelas..... eu mesmo poder manipular.....
GOSTEI 0