Converter Tipo Variante para Numerico

Delphi

24/07/2004

Caros amigos , tenho um ClientDataSet totalizando um valor utilizando um campo Aggregate com a expression sum(valor).
O Valor resultante às vezes é mostrado num DBEdit , em outras da um erro de conversão de tipo variante.
Achei que o campo resultante era do tipo BCDField, ou float , ou qualquer um numerico , mas putz , é do tipo variante e não consigo converter para string.
Alguem tem uma solução ou uma dica de conversão de tipos variante->float ou string direto ?


Smartsistemas

Smartsistemas

Curtidas 0

Respostas

G1b4

G1b4

24/07/2004

Caro smartsistemas,
O valor do campo ´valor´ só pode ser numérico (integer, float, etc).
Para transformar variant em qualquer tipo, você pode usar [b:9e4e90de84]VarAsType[/b:9e4e90de84].
Mas acho o que deve estar acontecendo aí, é que funciona a soma mas você não consegue pegar o valor do aggregate, é isso? Se for, tente o código exemplo:
var
  resultado: real;
begin
  resultado:=ClientDataSet1.FieldByName(´total´).Value;
  ShowMessage(FloatToStr(resultado));
end;

Espero ter ajudado :D !!!


GOSTEI 0
POSTAR