FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
añadir ,00 a un TQRDBText
tengo un problemilla aver si alguien me puede ayudar...muestro una informacion de una base de datos en un quickreport, usando TQRDBText, el problema es que son valores numericos reales, y me gustaria que si son enteros, me añadiese ,00...
La base de datos es en access y aunque el tipo de dato de la BD, es decimal, cuando el valor que se mete no es real, no guarda ,00...y al mostrarlo no me deja ponerlo....se puede poner en el quickreport...o forzar a access a meter el ,00???? GRACIAS
__________________
Un saludo Antonio |
#2
|
||||
|
||||
En la consulta que hagas, al campo en cuestión, añádele el DisplayFormat:= ,0.00
así añade la coma de millares y el punto decimal con 2 decimales. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#3
|
||||
|
||||
Tu respuesta me ha sido muy util, muchas gracias, aunque el problema es que solo me sirve para ACCESS...
Yo estoy intentando mostrar unos datos de access en un dbgrid de builder C++. Es decir hago una consulta con un QUERY, y con un datasource lo conecto al DBgrid....el dato que me muestra es un FLOAT, y el problema es que aunque en access me lo muestra bien (1,34 por ejemplo), en el dbgrid es 1,340000000000...) Os pongo unas imagenes aclarativas... http://es.geocities.com/antonio_garcia_web/1.JPG http://es.geocities.com/antonio_garcia_web/2.JPG Alguien podria ayudarme en esto...GRACIAS
__________________
Un saludo Antonio |
#4
|
||||
|
||||
En delphi, doble clic al query en tiempo de diseño , boton derecho, add all fields, ahora haces clic en el campo en cuestion, y por último en su propiedad DisplayFormat añades el ,0.00 que tambien añade la coma de separación de millares. Si solo quieres el separador decimal... 0.00
Con el dbgrid solo hay un problema, que si editas un campo te deja escribir más de 2 decimales, pero despues al salir del campo te mostrará solo 2 y en la base de datos tambien debe guardar 2. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 18-04-2006 a las 11:25:05. |
#5
|
||||
|
||||
Pues...es que no lo habia entendido bien....pero la cosa es que sigo teniendo problemas....porque no me aparece esa propiedad en el objeto:
http://es.geocities.com/antonio_garcia_web/3.JPG He probado a tomar el campo desde la tabla, desde un query, desde el dbgrid pero no me aparece esa propiedad, relacionada con ese objeto.... Pongo esto para acceder al campo: BD->Consulta->FieldByName("Precio")->DisplayFormat... ->ERROR GRID->Columns->Items[0]->DisplayFormat... ->ERROR Uso Builder c++ 5 Esa propiedad es de alguna otra version??? Como podria ponerlo?? Si puedes ayudarme, me resultaria muy muy util....Gracias
__________________
Un saludo Antonio |
#6
|
||||
|
||||
Según Delphi, esa propiedad está disponible para campos numéricos:
TIntegerField, TLargeintField, TFloatField, TBCDField, TFMTBCDField Por tanto tu campo en la consulta, o en el TTable tiene que ser de uno de esos 5, si C++ te dice que es de otro tipo.... pues no la tendrás. Sin embargo decías que estaba como decimal
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#7
|
||||
|
||||
Pues como te venía diciendo hace 2 posts...
Cuando en C++ le das doble clic a un TTable / Tquery, te sale una ventanita, en ella clic con el boton derecho y Add all fields, ahora, verás que se rellena con los campos y de hecho cada uno de esos campos será un TintegerField, TstringField, etc. Haciendo clic en uno de ellos, en el Inspector de objetos debes tener esa propiedad. saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#8
|
||||
|
||||
Bueno, no sé que ha pasado pero mi respuesta se ha colado antes que el tuyo, por favor leela.
saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#9
|
||||
|
||||
Pues en c++ te pongo lo que tengo....
Propiedades del objeto "Tabla" Código:
In TTable CanModify DataSource DefaultIndex Exclusive Exists Handle IndexDefs IndexFieldCount IndexFieldNames IndexFields IndexFiles IndexName KeyExclusive KeyFieldCount MasterFields MasterSource ReadOnly StoreDefs TableLevel TableName TableType TField* __fastcall FieldByName(const AnsiString FieldName); lo uso de la siguiente manera: Tabla->FieldByName("Campo")->Tipo....En tipo pongo como quiero que me capture el dato.... AsString AsFloat AsInteger AsBoolean Propiedades del campo (Donde deberia estar DisplayFormat...pero nada) Código:
In TField Alignment AsBoolean AsCurrency AsDateTime AsFloat AsInteger AsString AsVariant AttributeSet AutoGenerateValue Calculated CanModify ConstraintErrorMessage CurValue CustomConstraint DataSet DataSize DataType DefaultExpression DisplayLabel DisplayName DisplayText DisplayWidth EditMask EditMaskPtr FieldKind FieldName FieldNo FullName HasConstraints ImportedConstraint Index IsIndexField IsNull KeyFields Lookup LookupCache LookupDataSet LookupKeyFields LookupList LookupResultField NewValue Offset OldValue Origin ParentField ProviderFlags ReadOnly Required Size Text ValidChars Value Visible Código:
TField is the common ancestor of all the field components in a dataset. Unit db Description TField encapsulates the fundamental behavior common to all field components. It introduces the properties, events, and methods that are used to: Change the value of a field in a dataset. Convert the value of a field from one data type to another. Validate data that the user enters for a field. Define how the data in the field appears as it is displayed or edited. Calculate the value of a field from code written in the OnCalcFields event of the dataset. Look up the field’s value from another dataset. Do not create instances of TField. TField descendants are created automatically each time a dataset is activated. These descendants can be dynamic (the default) or persistent. Dynamic field components reflect the actual columns of the underlying physical table at the time a dataset is opened. Persistent field components are created at design time using the Fields editor, which specifies the fields in the dataset, their properties, and their ordering. Creating persistent field components guarantees that each time an application runs, it uses and displays the same columns, in the same order, even if the physical structure of the underlying database changes. If a column on which a persistent field component is based is deleted or changed, C++Builder generates an exception rather than opening the table against a nonexistent column or mismatched data. If this happens, remove the field component for the nonexistent field using the Fields editor. A field in a dataset is always treated as one of the following TField descendant classes below: TADTField TDateField TReferenceField TAggregateField TDateTimeField TSmallIntField TArrayField TFloatField TStringField TAutoIncField TGraphicField TTimeField TBCDField TGuidField TVarBytesField TBlobField TIDispatchField TVariantField TBooleanField TIntegerField TWideStringField TBytesField TLargeintField TWordField TCurrencyField TMemoField In addition to these front-line field classes, there are a number of field classes that serve only as abstract classes. These field classes are not used to instantiate field objects, only to provide functionality for descendant classes. These abstract field classes include TBinaryField, TDataSetField, TInterfaceField, TNumericField, and TObjectField. ...pero no se como poder acceder a esa propiedad... Alguna idea???
__________________
Un saludo Antonio |
#10
|
||||
|
||||
Ok...PERFECT!!! MUCHAS GRACIAS!!
El problema es que yo lo hago todo por codigo, acceso a los campos, tablas, consultas...con lo que el objeto Table o Query, solo lo utilizo para conectar con la BD y seleccionar la tabla. Todo lo demas, acceso a los campos...todo desde codigo...y desde codigo no me salia...pero con tu ultima explicacion ya si me ha salido....y ademas hasta redondea, con lo que me ahorro mi funcion de redondeo...je je je Gracias y lamento haber sido tan pesado!!!
__________________
Un saludo Antonio |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Otra del Quickreport TQRDBtext Mask | Carlos Arevalo | Impresión | 3 | 11-04-2006 18:59:13 |
Añadir bd a Sql server | comba | SQL | 1 | 21-11-2005 19:07:31 |
Añadir a un Combo Box | Acker | Varios | 1 | 08-11-2005 13:58:07 |
fallo : incompatible types : String and TQRDBText | chele | Impresión | 7 | 27-10-2004 16:10:17 |
Consulta simple TQRDBText | niogon | Impresión | 1 | 03-03-2004 18:32:19 |
|