Fazer com que o delphi retorne o número do erro.

Delphi

02/09/2004

Olá,

Tenho duas tabelas (access) uma chada Marca e outra chamada Produto fiz o relacionamento de 1 para N no access.

Se vc tenta excluir uma marca que está cadstrada em alguim produto dá um erro. Eu gostaria de interceptar esse erro antes dele ser mostrado para o usuário e mandar a minha mensagem de erro.

Existe a possíbilidade de fazer isso? eu pensei em pegar o número do erro, mas não sei como fazer isso.



desde já muito obrigado.


Balceiro

Balceiro

Curtidas 0

Respostas

Balceiro

Balceiro

02/09/2004

ainda sem solução


GOSTEI 0
Balceiro

Balceiro

02/09/2004

sobe em 07 de setembro às 10:27 am


GOSTEI 0
Balceiro

Balceiro

02/09/2004

sobe em 08/09/2004


GOSTEI 0
Balceiro

Balceiro

02/09/2004

sobe em 12/09/2004 - 12:41 pm


GOSTEI 0
Gandalf.nho

Gandalf.nho

02/09/2004

Dê uma pesquisada no help do Delphi sobre Exception e você verá como fazer isso.


GOSTEI 0
Edmarss

Edmarss

02/09/2004

Application.OnException:=TrataErros;

Procedure Trataerros(Sender: TObject; E: Exception);
Var
mensagem: String;
Begin
If Pos(UpperCase(´is Not a valid date´), UpperCase(E.Message)) <> 0 Then
Mensagem:=´Data inválida, proceda a correção.´;
If (Pos(UpperCase(´key violation´), UpperCase(E.Message)) <> 0) Or (Pos(UpperCase(´Violation of primary´), UpperCase(E.Message)) <> 0) Then
Mensagem:=´Houve violação de Chave. Registro já existe.´;
If Pos(UpperCase(´Input value´), UpperCase(E.Message)) <> 0 Then
Mensagem:=´Campo preenchido com valor não válido. Proceda a correção.´;
If Mensagem=´´ Then Begin
MessageDlg(E.Message, mtwarning, [mbOk], 0);
End Else Begin
MessageDlg(Mensagem, mtwarning, [mbOk], 0);
End;
End;


GOSTEI 0
POSTAR