Erro no Try/Except
Falaeee galera..... blzra.
Estou com um problema, coloquei em uma parte do código fonte do programa um try except para verificar se o conteúdo de um edit eh string ou integer(Código abaixo):
Acontece o seguinte: chega até a função StrToInt e para lá sai de tudo como se eu não tivesse digitado nada !!!!! :?: :?: :?:
Não sei mais o que fazer Alguem tem alguma sugestão???
Desde já Obrigado.
Estou com um problema, coloquei em uma parte do código fonte do programa um try except para verificar se o conteúdo de um edit eh string ou integer(Código abaixo):
Try StrToInt(edtBusca.Text); qryConsulta.ParamByName(´CODIGO´).AsString := ´¬´ + edtBusca.Text; Except qryConsulta.ParamByName(´CODIGO´).AsString := edtBusca.Text + ´¬´; End;
Acontece o seguinte: chega até a função StrToInt e para lá sai de tudo como se eu não tivesse digitado nada !!!!! :?: :?: :?:
Não sei mais o que fazer Alguem tem alguma sugestão???
Desde já Obrigado.
Alexferri
Curtidas 0
Respostas
Eniorm
12/12/2005
Olá, a função StrToInt RETORNA um inteiro a partir de uma string, então vc deve usar assim
vc pode tbm mudar o ParamByName(´CODIGO´).AsInteger para:
para isso vc deve mudar o SQL:
assim não havera erro caso o valor de edConsulta.Text for letras,...
abraço
var inteiro : integer; ... try inteiro := StrToInt(edBusca.Text); qryConsulta.ParamByName(´CODIGO´).AsInteger := inteiro ...
vc pode tbm mudar o ParamByName(´CODIGO´).AsInteger para:
qryConsulta.ParamByName(´CODIGO´).AsString := edConsulta.Text; ...
para isso vc deve mudar o SQL:
... FROM TABELA WHERE CAMPO LIKE :PARAMETRO
assim não havera erro caso o valor de edConsulta.Text for letras,...
abraço
GOSTEI 0
Alexferri
12/12/2005
E ai blz, Cara a minha intenção de colocar desse jeito eh a seguite, se der erro o ´¬´ do sql vai muda de lugar entendeu para que se eu digita um codigo o parametro fica assim ´¬123´ e se for letras ficara assim ´¬abc´.
só que sai do try except no strtoint, sai e não da erro nenhum.
c sabe o q eh isso sai sem da erro nenhum ???
Valeu pela resposta.
só que sai do try except no strtoint, sai e não da erro nenhum.
c sabe o q eh isso sai sem da erro nenhum ???
Valeu pela resposta.
GOSTEI 0
Adriano Santos
12/12/2005
E ai blz, Cara a minha intenção de colocar desse jeito eh a seguite, se der erro o ´¬´ do sql vai muda de lugar entendeu para que se eu digita um codigo o parametro fica assim ´¬123´ e se for letras ficara assim ´¬abc´.
só que sai do try except no strtoint, sai e não da erro nenhum.
c sabe o q eh isso sai sem da erro nenhum ???
Valeu pela resposta.
Vc não tem nenhum componente ou função que esteja desviando o evento de erro? Tente fazer o seguinte.
Antes do StrToInt jogue o codigo:
Application.onException := nil;
GOSTEI 0
Massuda
12/12/2005
...fica assim ´¬123´ e se for letras ficara assim ´¬abc´.
O código que você postou, no caso de não ser um número, resulta em ´abc¬´; se o campo estiver vazio, acho que seu código retorna apenas ´¬´. Se você estiver executando passo-a-passo, acho que a IDE não irá pular para o código entre o except...end, mas esse código é executado.GOSTEI 0
Alexferri
12/12/2005
VALEU GALERA ERA ISSO MESMO O PASSO A PASSO NÃO ENTRAVA ENTRE O EXCEPT E O END, MAS TAVA EXECUTANDO VALEW MEMO FLW... :D
GOSTEI 0