Ir para conteúdo
  • Cadastre-se

dev botao

Exibição de números em notação científica (Lazarus+Zeos)


Ver Solução Respondido por Juliomar Marchetti,
  • Este tópico foi criado há 1446 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Os dados numéricos do são apresentados no DBGrid em notação científica (3,1E4 por exemplo). Estou usando o DisplayFormat para resolver isso, porém preciso alterar em todos os campos do DataSet.

Existe alguma solução automatizada para resolver isto?

(Lazarus IDE: 2.0.6, FPC: 3.0.4 - TZQuery Zeos - Firebird)

Link para o comentário
Compartilhar em outros sites

  • Moderadores
  • Solution

Bom dia.

no caso sugestão é usar Orientação a objetos e injeção de dependência. cria uma função que faça isso passando nos fields e identificando os do tipo númerico depois é só chamar passando cada dataset do form ou do dm

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

4 horas atrás, Juliomar Marchetti disse:

Bom dia.

no caso sugestão é usar Orientação a objetos e injeção de dependência. cria uma função que faça isso passando nos fields e identificando os do tipo númerico depois é só chamar passando cada dataset do form ou do dm

No caso a orientação a objetos que você se refere é criar novas classes para todas as entidades do sistema como no PHP com os métodos Get e Set? Pensei em fazer isso, mas vai demandar muito tempo e implicaria em reestruturar todo a aplicação, também perder um pouco a idéia de RAD da IDE.  Quando comecei a migrar pra Lazarus e escolhi Zeos para acesso aos dados não sabia desse pequeno incoveniente.

Quanto à chamada a uma função também ficou claro. Por enquanto vou editando as propriedades DisplayFormat dos campos.

Obrigado pela dica.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Hum entendi está entrando agora em pascal?

mas a ideia é uma function ou procedure
 

function formatacampos(adataset : tdataset):boolean;

var

i: integerl;

begin

for i:= 0 to adataset.fields.count -1 do

begin

if adataset.fields[i].datatype = double then

adataset.fields[i].displayformat := '.##.#####'

end;

end;

estou chutando acima mas é fazer uma função fácil fácil

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1446 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.