Campo Float em tabela Paradox

Delphi

22/09/2003

Olá!
Bom estou com o seguinte problema:
Tenho uma tabela paradox, e estou tentando obter algumas informações de um determinado campo na minha tabela. Tais como: Tamanho e quantidade de decimais. Só que pelo fato de ser do tipo ftFloat, ele não me retorna a quantidade de decimais conforme foi feito na tabela. Ele retorna a quantidade de decimais que tem no tipo Float.

ALguem sabe como retornar estas informaçoes corretamente?

Obrigado!


Nildo

Nildo

Curtidas 0

Respostas

Bacalhau

Bacalhau

22/09/2003

Nildo, vais ter sempre esse retorno, já que o campo float é pré-definido nas casas decimais.
Uma solução é ir multiplicando o valor do registo por 10 e ver quando só tem parte inteira. Por exemplo, com o valor 15,234:

var s : string;
t : currency; // por exemplo
i : integer;

begin
t := 15,234;
i := 0;

repeat
s := floattostr(t);
if pos(s,´,´) <> 0 then i := i + 1;
t := t * 10;
until pos(s,´,´) = 0; // isto é, já não existe uma vírgula no número

showmessage(´o numero tem ´ + inttostr(i) + ´ casas decimais´);

end;


Espero ter ajudado
abraço


GOSTEI 0
Nildo

Nildo

22/09/2003

Obrigado.
Mas o problema é que não estou conseguindo pegar a quatidade de casas decimais do Campo de uma tabela. Eu não vou ter o valor que está la dentro em um determinado registro. Somente vou ter a estrutura da tabela. E atravez desta estrutura tenho que pegar a quantidade de casas decimais de um campo.

Entendeu?

Obigado mesmo assim pela ajuda
:wink:


GOSTEI 0
Bacalhau

Bacalhau

22/09/2003

A tabela é Paradox? É que o campo float (Number) tem casas decimais fixas :shock:


GOSTEI 0
Nildo

Nildo

22/09/2003

Ah tah.. Mais uma duvida? Preciso ler tambm a quantidade de decimais de uma tabela Access pelo ADO. tem como?


GOSTEI 0
Bacalhau

Bacalhau

22/09/2003

Nildo i´m sorry isso para mim é chinês. Acho que o Zanela pode dar uma ajuda :cry:


GOSTEI 0
Nildo

Nildo

22/09/2003

Firmeza! Valew de qualquer maneira..

Brigadaum
abraços
t+


GOSTEI 0
POSTAR