Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-03-2009
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Saludos!!

Creo que has respondido mi pregunta, la mayor parte de los campos en la base de datos los tengo en Char incluyendo los campos de cantidades, al llamar los campos y al hacer operaciones los convierto en datos de tipo floatante y regreso el resultado a string nuevamente.

Habra alguna solución para mostrar datos en pantalla de tipo numerico con comas y cecimales sin que me afecte la operacion??

Gracias Delphius!!
Responder Con Cita
  #2  
Antiguo 20-03-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por odrack Ver Mensaje
Saludos!!

Creo que has respondido mi pregunta, la mayor parte de los campos en la base de datos los tengo en Char incluyendo los campos de cantidades, al llamar los campos y al hacer operaciones los convierto en datos de tipo floatante y regreso el resultado a string nuevamente.

Habra alguna solución para mostrar datos en pantalla de tipo numerico con comas y cecimales sin que me afecte la operacion??

Gracias Delphius!!
Bueno, lo ideal y lógico sería que cambiases el tipo de dato en tu base de datos.
Ya que esto te evita estar haciendo esas innecesarias conversiones que lo único que hacen es complicar la lógica de tu aplicativo.

Ahora bien, hacer esto implica eliminar los campos persistentes y volver a crearlos. Y tal vez algunas que otras modificaciones en tu código.

Si por alguna cuestión no puedes cambiar el tipo, lo que puedes hacer es emplear los eventos onGetText y OnSetText de tus campos.

Este evento se puede aprovechar para cambiar el texto a mostrar y a guardar. Si te fijas ambos eventos tienen un parámetro Text. Es éste Text el que se debe y puede aprovechar para alterar el texto a mostrar y/o a guardar:

Código Delphi [-]
procedure TForm1.IBTable1MONEDAGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin

end;

procedure TForm1.IBTable1MONEDASetText(Sender: TField; const Text: String);
begin

end;

En mi ejemplo uso un IBTable, y un campo llamado MONEDAS.


Revisa la ayuda para más información.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 20-03-2009
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Nuevamente gracias delphius!!

Solo tengo una duda, los datos de ongettext y onsettext tambien me sirven para un TQuery??, ya que no he logrado ver esas propiedades en los eventos

Saludos!!
Responder Con Cita
  #4  
Antiguo 20-03-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por odrack Ver Mensaje
Nuevamente gracias delphius!!

Solo tengo una duda, los datos de ongettext y onsettext tambien me sirven para un TQuery??, ya que no he logrado ver esas propiedades en los eventos

Saludos!!
A ver si nos entendemos,

OnGetText y OnSetText son dos eventos disponibles para los objetos TField y descendientes de éste, es decir que se aplican a los campos. Es independiente del dataset que se emplee.

¿Que propiedades?
Selecciona el campo persistente, ve a la solapa eventos... allí está el evento. Ya, lo que hagas allí dentro es otra cosa...

Por favor, se más detallista de como estás haciendo esto. Cuanto más nos puedas explicar y comentar de los pasos que estás haciendo más fácil será ayudarte.
No estoy a tu lado, no puedo ver donde tienes el problema.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 20-03-2009
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
No me explique bien,

Lo que trato de decir es lo siguiente, tengo una forma que contiene un button, dbgrid, dbedit, Tquery y un Datasource.

Con el boton hago la consulta de mi base de datos

Query1.close;
query1....
....

Con esto obtengo los datos en el dbgrid y en dbedit.text

Los eventos ongettext y onsettext los he buscado en Tquery, Dbgrid y en los dbedit, pero no los veo para poder crear el procedimiento que mencionas

Código Delphi [-]
procedure TForm1.IBTable1MONEDAGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin

end;

Mi pregunta era que si en los eventos de Tquery o dbgrid se encontraban OnGetText y OnSetText.

Espero haberme explicado, por que creo que ya me confundi un poco!
Responder Con Cita
  #6  
Antiguo 20-03-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
¡Y yo ya no se como decirte que esos eventos no pertenecen al dataset (en tu caso TQuery) sino a los campos persistentes!

Si buscas en los foros sobre OnGetText y OnSetText vas a encontrar algunos ejemplos.
Por otro lado, si no lo hiciste aún, recomiendo la lectura del libro La Cara Oculta de Delphi 4. No tiene desperdicio.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Poner el numero de pagina con formato 2/2 en quick report raco Impresión 6 04-06-2011 01:20:22
Formato de numero en QReport DarkSide Impresión 6 01-09-2006 22:42:14
dar formato un numero sin que se redonde.... uper Varios 2 25-07-2005 18:06:22
formato de un número aip Conexión con bases de datos 2 20-08-2004 20:19:51
Cual es la mejor manera para darle formato a un numero ctronx Varios 4 21-07-2004 19:27:33


La franja horaria es GMT +2. Ahora son las 07:52:34.


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
Copyright 1996-2007 Club Delphi