![]() |
Como formatear numeros en TQuery?
Tengo un componente TQuery con varios campos que se crean dinamicamente simultaneamente con su sentencia sql que se arma a gusto del usuario.
El problema es que necesito formatear los campos numericos flotantes de tal manera que me elimine el e-nn propio de los nùmeros muy grandes o muy pequeños. He intentado displayformat pero no lo reconoce. Alguna sugerencia?? MiQuery.Fields[CampoNo].?????? :='###,###,##0' Que propiedad coloco en la interrogaciòn de la instrucción de arriba o existe algun otro metodo? |
Hola:
Aunque creo que la máscara que utilizas es excesiva (demasiadas almohadillas me refiero), la propiedad correcta es DisplayFormat, pero puesto que los campos se crean dinámicamente, trata de asignarla en el AfterOpen del TQuery, mediante un bucle que recorra todos los campos y asigne sólo los que son numéricos. Si lo has hecho así, no veo por qué no deba funcionar. Código:
for i:=0 to Dataset.FieldCount - 1 do |
Lo que debes hacer es un casteo al tipo de campo pertinente, es decir, algo así:
TIntegerField(Query1.Fields[1]).DisplayFormat := '###,###,##0'; Para saber el tipo de casteo a hacer, puedes utilizar el DataType de los TFields (en la ayuda verás los distintos tipos posibles) Query1.Fields[1].DataType Espero te sirva |
La franja horaria es GMT +2. Ahora son las 12:41:33. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi