Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Modificar Datos Grid de Consulta (https://www.clubdelphi.com/foros/showthread.php?t=5243)

DANFIR 14-11-2003 07:44:47

Modificar Datos Grid de Consulta
 
Hola amigos del Club:

Mi problema es el siguiente, tengo un grid enlazado a una Query, en un campo de la consulta me arroja por ejemplo los datos 0,1,0,1,0,0 etc......Necesito que en lugar de que salgan estos numeros se visualice cuando es 1 Finalizado y cuando es 0 No finalizado...por ejemplo.

Si ustedes me podrian decir como puedo hacer esto...por medio de una funcion al realizar el select del Query ó en el evento draw del grid o algo parecido...

Agradezco su Ayuda desde Colombia

Danilo :)

marcoszorrilla 14-11-2003 08:08:42

Crea un campo calculado:

procedure TForm1.Table1CalcFields(DataSet: TDataSet);
begin
If Table1Orderno.Value > 9000 then
Table1Nuevo.value:='Sí'
else
Table1Nuevo.value:='No'
end;

Un Saludo.

LucasArgentino 14-11-2003 14:48:05

Si estas usando un componente Query y al campo que te refieres es un tipo boolean, puedes poner en el editor de campos en el campo correspondiente la propiedad display values Si;No Por ejemplo o Cargado;Descargado. Con esto estaras visualizando el mensaje que tu quieras en cualquier control relacionado...

Espero te sirva suerte...

LucasArgentino 14-11-2003 14:49:24

Si estas usando un componente Query y al campo que te refieres es un tipo boolean, puedes poner en el editor de campos en el campo correspondiente la propiedad display values Si;No Por ejemplo o Cargado;Descargado. Con esto estaras visualizando el mensaje que tu quieras en cualquier control relacionado...

Espero te sirva suerte...

DANFIR 14-11-2003 15:41:46

El campo a evaluar en el Query no es de tipo Booleano, es de tipo entero.
Necesito validar por ejemplo si es 1 colocarle 'General' y si es otro numero por ejeemplo 22 colocar 'Especifico del 22'.
Marcos......no comprendo muy bien tu sugerencia si me la pudieras aclarar..

Agradezco su ayuda
:)

marcoszorrilla 14-11-2003 16:18:34

La sugerencia consiste en crear un campo calculado en la consulta y en en el evento OnCalcFields colocar el valor que te interesese.

Código:

procedure TForm1.Table1CalcFields(DataSet: TDataSet);
begin
If Table1Orderno.Value > 9000 then
Table1Nuevo.value:='Sí'
else
Table1Nuevo.value:='No'
end;

El ejemplo no tienes más que adaptarlo es decir substituir el Ttable por un Tquery y el resto lo mismo.

Un Saludo.

jachguate 14-11-2003 16:52:57

Tambien podes valerte de los eventos OnGetText y OnSetText del field.

Algo como:

Código:

Procedure TForm1.Query1CampoGetText(field : TField; Var DisplayText : String);

begin
  if Query1Campo.Value = 1 Then
    DisplayText := 'Verdadero'
  else if Query1Campo.Value = 0 Then
    DisplayText := 'Falso'
  else
    DisplayText := 'Error';
end;

Para mas informacion, consulta la ayuda.

Hasta luego.

;)


La franja horaria es GMT +2. Ahora son las 05:03:08.

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