PDA

Ver la Versión Completa : TimeStamp en Paradox


bestiux
03-06-2004, 20:26:04
Tengo un problema con el formato de la fecha que almacena Paradox.

El problema es que al ponerle a un campo el tipo '@' es decir Timestamp lo que ocurre es que me almacena la fecha como MM/DD/YYYY HH:MM:SS y cuando lo muestro en un DbGrid sale de igual forma.

Me gustaría conseguir que o bien se almacene como DD/MM/YYYY HH:MM:SS, o por lo menos que lo pueda mostrar así en el DBGrid.

Un saludo y muchas gracias.

jachguate
03-06-2004, 20:39:55
Hola bestiux. En primer lugar bienvenido(a) a los foros del clubdelphi. Te recomiendo, de entrada, la lectura de la guia de estilo de los foros (http://www.clubdelphi.com/foros/guiaestilo.php), que reune las reglas para una buena convivencia en este lugar.

El almacenamiento que hace paradox te aseguro que es totalmente independiente del formato que se usa para visualizarlo. Nunca profundice mucho con esta bd... pero para referencia puedo decirte, con respecto del almacenamiento, que estoy casi seguro que lo que almacena es un número de coma flotante.

El formato de despliegue también es ajeno al dbGrid. Atañe al TField asociado a ese campo en la base de datos. Alli encontrarás una propiedad llamada DisplayFormat y el campo se encargará de visualizarse correctamente en DBGrids, dbEdits, dbText, dbqrText y en general en cualquier componente DataAware.

Hasta luego.

;)

bestiux
08-06-2004, 11:37:21
Gracias por tu ayuda Jachguate, decirte que ya he leido la guia de estilo y me acabo de dar cuenta de que posiblemente me he equivocado en el foro donde he publicado mi pregunta, y te garantizo que mi intención será que no vuelva a ocurrir.

De todas formas en referencia a mi mensaje, resulta Paradox y Delphi se hacen un lio en cuanto a las fechas, puesto que cuando Delphi pasa la fecha como DD/MM/AAAA a Paradox, este la voltea poniendola como MM/DD/AAAA en la tabla, entonces para que Paradox almacene bien la fecha hay que pasarsela como MM/DD/AAAA y así al darle la vuelta queda almacenda correctamente.

Este error también se repite cuando Paradox devuelve la fecha a Delphi, o sea que parece un poco lioso pero una vez lo coges resulta bastante facil.

De todas formas, muchas gracias.

jachguate
08-06-2004, 15:16:27
Hola.

Hace bastante tiempo que no trabajo con paradox. Pero al igual que con otros motores, para evitar conflictos, es mejor que "le pases" la información relacionada con fechas en forma de parámetros en las sentencias SQL. En el caso de TFields, basta con que establezcas su DisplayFormat al formato que te plazca.

Hasta luego.

;)