Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   30/12/1899 cuando fecha en campo es null ? (https://www.clubdelphi.com/foros/showthread.php?t=82302)

Loviedo 20-02-2013 23:29:36

30/12/1899 cuando fecha en campo es null ?
 
Solicito ayuda. Alguien conoce la respuesta. Gracias anticipadas.
Cuando en un campo fecha de una tabla contiene null, en el dbgrid al mostrarlo aparaece la fecha 30/12/99.
En el displayformat del campo tengo 'dd/mm/yy'. ¿Que puedo hacer para que no aparezca nada en caso de null?
Saludos.

Loviedo 20-02-2013 23:34:34

Perdón olvidé indicar que me sucede cuando la tabla esta unida a un TClientDataset, con un TQuery va bien.
Gracias.

Loviedo 20-02-2013 23:40:00

No se el motivo, pero lo he podido solucionar poniendo los campos como Text.
En un Campo Fecha:
CampoClienteDataset.Text := CampoQuery.Text;
Saludos.

roman 20-02-2013 23:47:15

Supongo, sin afirmar, que el comportamiento se debe a que no existe tal cosa como una fecha "cero". Al poner null en un campo fecha, imagino que el clientdataset hace la conversión a entero resultando un cero en lugar de null. Para delphi, una fecha es un número entero que representa el número de díias desde una fecha fija: 30/12/1899. De manera que el cero se traduce en esa fecha base.

Al usar el campo como texto, seguramente la conversión traduce el null en una cadena vacía.

// Saludos

Loviedo 21-02-2013 12:36:29

Gracias.
Saludos.


La franja horaria es GMT +2. Ahora son las 17:31:40.

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