FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Tratamiento de fechas en Firebird
Creo que puse este Post en el lugar incorrecto, pido por favor a algún moderador que lo mueva a su lugar correspondiente.
Bueno, resulta que quiero traer un campo de tipo fecha desde Firebdir 2.1 hacia mi formulario., hago lo siguiente
El caso es que cuando me tiene que devolver la fecha (o sea que e.fecha < 2011/12/31 --> lo pongo de la forma aaaa/mm/dd porque es la única forma que Firebird me hace la comparativa correctamente), lo hace de la siguiente manera: 2009-10-30; yo quiero que me lo devuelva de la forma: 30/10/2009 que es como el usuario lo cargó en la BD y como figura en las tablas. Bueno, esto me está causando un problema, ¿alguien sabe la manera de arreglarlo para que Firebird me devuelva bien las fechas? Gracias, Santiago.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. Última edición por santiago14 fecha: 16-01-2013 a las 23:18:20. Razón: Errores de ortografía |
#2
|
||||
|
||||
Encontré una forma, aunque poco elegante a mi entender, funciona muy bien.
Esto está muy bien, pero el problema sigue cuando hago un LIST() de fechas, me las muestra al revés.... Santiago.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. |
#3
|
||||
|
||||
Esa fecha está bien. Es una fecha en formato ISO.
Otra cosa es como quiera uno que se muestre en la pantalla. Por ello la siguiente pregunta: ¿esa consulta la tienes asociada a un conjunto de datos, cuyo campo de fecha (el resultado de la consulta) muestras en algún formulario? ¿Qué razón hay para hacer trabajar al servidor (y a la conexión de red) encargándole devolver la cadena 'Fecha es mayor a 2011'? Quizá una mejor idea sería emplear un campo fecha normal y usar en Delphi su evento OnGetText para condicionar qué es lo que debe mostrar o cómo debe mostrarlo. Saludos. |
#4
|
||||
|
||||
Cita:
Igualmente, usando EXTRACT se arregla. En este caso, la consulta se hace a través de un MDOQuery y luego la mando a una grilla para que se puedan ver los datos. Gracias.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. |
#5
|
||||
|
||||
Cita:
Si el problema es entonces de mera presentación, tan sólo basta que le indiques al campo, a través de su propiedad DisplayFormat, el formato que debe usar, por ejemplo: dd/mm/yyyy. Lo más fácil es hacerlo con el inspector de objetos, y también se puede por código:
Espero haberme explicado. |
#6
|
||||
|
||||
Exacto, ahora sí.
Les comento como me fue cuando haga las pruebas pertinentes. Gracias, Santiago.
__________________
Uno es responsable de lo que hace y de lo que omite hacer. |
#7
|
||||
|
||||
El problema radica en la forma como trata el mensaje:
Ahí se maneja un solo tipo de dato, firebird en ese IIF hace un cast sobre "e.fecha" y lo regresa como varchar ya que el texto 'Fecha es mayor a 2011' no lo puede tratar como tipo fecha,así pues al dar displayFormat a el texto creo que sacará una excepción...
__________________
"Como pasa el tiempo..... ayer se escribe sin H y hoy con H" |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Manejo de Fechas en Firebird 2.1 | Jose Roman | SQL | 3 | 17-02-2009 17:15:03 |
Firebird dialect 3 y fechas | IVAND | Firebird e Interbase | 5 | 17-09-2008 19:16:48 |
firebird y fechas | jmlifi | Varios | 4 | 05-09-2007 09:54:59 |
Fechas en Firebird | Puche | Firebird e Interbase | 3 | 27-07-2006 10:09:52 |
Formato de fechas en FireBird 1.5 | defcon1_es | Firebird e Interbase | 1 | 02-04-2004 17:02:52 |
|