Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-11-2005
Patricio Patricio is offline
Miembro
 
Registrado: jul 2004
Posts: 433
Poder: 20
Patricio Va por buen camino
Problema con Grilla y Fecha

Hola estoy usando un componente wwDBGrid de una pestaña IPControls en Delphi 5, la cual me resulta muy buena.
Toma los datos de una consulta, una de las columnas es un campo fecha el cual lo muestra BARBARO menos en los casos que en la tabla no tiene ningun valor cargado en la fecha y en lugar de no mostrar nada me muestra 30/12/99 o algo asi. como puedo hacer para que no muestra nada o no haga esa conversion
Gracias
Responder Con Cita
  #2  
Antiguo 24-11-2005
Fernando Fernando is offline
Miembro
 
Registrado: ago 2003
Posts: 77
Poder: 21
Fernando Va por buen camino
Revisa el campo "Fecha" en la base de datos. Debe ser "Nulo" en los casos que la fecha deba estar vacía.
Cuando guardes la fecha, asegúrate que sea Null cuando esté vacía.
Responder Con Cita
  #3  
Antiguo 25-11-2005
Patricio Patricio is offline
Miembro
 
Registrado: jul 2004
Posts: 433
Poder: 20
Patricio Va por buen camino
Es Nulo

Yo cuando miro la base en el campo es null, pero la grilla cuando lo muestra me pone 30/12/99
Responder Con Cita
  #4  
Antiguo 28-11-2005
Fernando Fernando is offline
Miembro
 
Registrado: ago 2003
Posts: 77
Poder: 21
Fernando Va por buen camino
Después de abrir la tabla o el query:

(table1.fieldbyname('fecha') AS TDateField).DisplayFormat:= 'dd/mmm/yyyy'
----- el formato lo puedes variar a tu gusto dd/mm/yy, mm/dd/yyyy, etc.

No recuerdo si es TDateField o TDateTimeField (no tengo delphi en esta PC)

Puede ser que con eso.

Saludos.
Responder Con Cita
  #5  
Antiguo 28-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

Creo que la mejor solucion para esto es jugar con el evento OnDrawColumnCell del DBGrid
Código Delphi [-]
.....
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
const
   DX = 5;
   DY = 2;
   Str = ' ';
begin
  if(Column.Field is TDateField) then begin
     if TDateField(Column.Field).IsNull then
       DBGrid1.Canvas.TextRect(Rect, Left + 8, Rect.Top + DY, Str);
  end;
end;
No lo he probado
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
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


La franja horaria es GMT +2. Ahora son las 18:21:25.


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