[firebase-br] Erro de conversão - Integer - URGÊNTE!!!
Marcelo Wollmer
marcelowollmer em yahoo.com.br
Sex Jul 6 16:40:34 -03 2007
Pessoal, boa tarde!
Eu trabalho com Delphi 6 + DbExpress + Firebird 1.5
Tenho um sistema de controle de entrada e saída de visitantes. Tenho uma tabela VISITANTES com um campo ID (autonumeração - Generator: GEN_VISITANTE_ID).
Por vários motivos, eu pego o próximo ID através do Delphi usando o componente SQLQuery(sqlNovoVisitante) do dbExpress, com o sequinte comando sql:
Select gen_ID(gen_visitante_id, 1) as nID
>From RDB$Database
E atribuo o valor retornado para uma variável vID_Visitante, a qual declaro como INTEGER, da seguinte forma:
vID_Visitante := DataModulo.sqlNovoVisitante.Fields.Fields[0].AsInteger;
Isso funcionou muito bem até o ID do Visitante de número 9999.
Agora o sistema praticamente parou, pois quando eu executo a rotina acima, para recupear o próximo ID (10000) o sistema me apresenta a seguinte mensagem de erro:
...EConvertError with message '1000?' is not a valid floating point value...
O ID na tabela de visitante é Integer, a variável também declarei como Integer. O que pode estar errado?
Agradeço qualquer ajuda.
Obrigado
Abraços
Mais detalhes sobre a lista de discussão lista