Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Tipos de dato Numeric...??? (https://www.clubdelphi.com/foros/showthread.php?t=7886)

mguixot 01-03-2004 10:27:09

Tipos de dato Numeric...???
 
Hola,
estoy intentando averiguar el tipo de datos de una tabla mapeada en un ibquery. Utilizo la propiedad DSAlbaranVenta.DataSet.Fields[i].FieldName pero estoy teniendo problemas con el tipo de datos NUMERIC (bbdd en Interbase), que no lo reconoce Delphi.
Sabeis si lo interpreta como algún otro tipo??.

Saludos y gracias

__cadetill 01-03-2004 11:37:33

Creo que tendrías que acceder al DataType

Código:

DSAlbaranVenta.DataSet.Fields[i].DataType
y en la Unit DB tienes los tipos de datos posible que reconoce Delphi, que son:

Cita:

Empezado por Unit DB
TFieldType = (ftUnknown, ftString, ftSmallint, ftInteger, ftWord,
ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime,
ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo,
ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString,
ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob,
ftVariant, ftInterface, ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd);


mguixot 01-03-2004 12:46:09

Perdona, es que en el hilo puse FieldName, y queria decir FieldType. Sobre los posibles tipos ya lo he mirado, pero es que ninguno es el correspondiente al Numeric que utilizo en la bbdd.

Saludos

__cadetill 01-03-2004 12:53:22

Supongo que el Numeric lo detectara como ftFloat

mguixot 01-03-2004 13:07:43

No, ya lo he probado.

__cadetill 01-03-2004 13:21:43

Y porque no pones un break point en la linea donde estás haciendo la comparación y lo ves? Luego para la ejecución del programa y modificas el código según lo que te dé

Al González 06-03-2004 23:03:32

¡Buen día a todos!


Cita:

Empezado por mguixot
...los posibles tipos ya lo he mirado, pero es que ninguno es el correspondiente al Numeric que utilizo en la bbdd...

Es probable que se trate del tipo de campo ftBCD (estándar Decimal Codificado en Binario). Tengo una base de datos Firebird (InterBase open source) que tiene algunos campos Numeric 15, 4 para guardar valores monetarios. Cuando agrego los campos persistentes del conjunto de datos TIBxxx, para dichos campos se crean objetos de clase TIBBCDField, de los cuales sólo pongo su propiedad Currency en True para que se muestren como valores monetarios (aunque internamente se guardan como BCDs).


Espero esto sea de utilidad. Seguimos en contacto.

Al González :).


La franja horaria es GMT +2. Ahora son las 10:18:03.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi