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)
-   -   Dar formato a fecha firebird (https://www.clubdelphi.com/foros/showthread.php?t=72997)

amerika111 24-03-2011 22:08:22

Dar formato a fecha firebird
 
Hola que tal, mi asunto es el siguinte, quisiera darle formato dd,mm,yyy a las fechas que tengo en una tabla, no se si haya alguna manera de hacerlo

Casimiro Notevi 24-03-2011 22:37:33

Los campos fecha se almacenan como un número así, por ejemplo: 46266,13345258887 y su significado es: la parte entera son los días transcurridos desde 31/12/1899 (creo recordar) y la parte decimal es la hora.
Si necesitas presentar la fecha en un dbedit, dbgrid, etc. lo que debes hacer es asignarle un formato, ejemplo:

Código Delphi [-]
edCampoFecha.Text := FormatDateTime('dd.mm.yyyy', tabla.campofecha);

No explicas exactamente cómo, dónde, qué, con qué, etc... así que quedamos a la espera de tu información para aclararte con más exactitud lo más conveniente a tu caso.

ecfisa 24-03-2011 22:38:32

Hola amerika111.

Creo este [ enlace ] va a aclarar tus dudas al respecto.


Un saludo.

amerika111 24-03-2011 22:40:14

lo quiero hacer en un select o no se donde, o como lo ejecuto, solo mente quiero hacer un select en firebird para darle formato a la fecha

Casimiro Notevi 24-03-2011 22:51:03

Cita:

Empezado por amerika111 (Mensaje 394595)
lo quiero hacer en un select o no se donde, o como lo ejecuto, solo mente quiero hacer un select en firebird para darle formato a la fecha

"¿Un select o no se donde, o como lo ejecuto?" :confused:

Tienes una tabla con un campo fecha y si haces algo así como:
Código SQL [-]
select FechaNacimiento from TablaClientes where CodigoCliente=1
¿Y ahora qué quiéres hacer?


Amigo, que no tengamos que estar sacándote la información, explícanos detalladamente lo que quieres hacer. ¿Ya leíste nuestra guía de estilo?

amerika111 24-03-2011 22:53:05

ok si creo q lo hice un poco confuso quiero darle el formato de dd.mm.yy
la columan de fecha la tengo yyyy-mm-dd y la necesito ddmmyyyy

Casimiro Notevi 24-03-2011 22:58:18

¿Dónde?...

amerika111 24-03-2011 23:43:56

en firebird

Casimiro Notevi 25-03-2011 00:18:31

Firebird es la base de datos, ¿dónde quiéres presentar la fecha?

amerika111 25-03-2011 00:19:54

si en firebird tengo la tabla a la cual le quiero dar el formato se llama Empleados y el campo de fecha se llama FechaEntrada entonces quiero darle formato a ese campo

Casimiro Notevi 25-03-2011 01:04:00

Vale, y ¿dónde quiéres presentar la fecha?

beginner01 25-03-2011 01:27:35

saludos.

si lo que quieres es organizar la fecha desde un select este codigo que encontre podria ayudarte.


Código SQL [-]
select
               EXTRACT(month FROM tufecha)||'/'
             || EXTRACT(year FROM tufecha)||'/'
           || EXTRACT(day FROM tufecha)
FROM tutabla

esto extrae la fecha en partes y la muestra en el orden deseado.

guillotmarc 25-03-2011 10:30:39

Como dice Casimiro, Firebird solo es la base de datos donde se almacena esa fecha, pero no tiene la menor relación sobre como se van a presentar esos datos. Eso queda para tu aplicación.

La forma más habitual es poner una máscara dd-mm-yyyy en la propiedad DisplayFormat del campo correspondiente a esa fecha en tu consulta Delphi.

amerika111 29-03-2011 20:01:14

Cita:

Empezado por beginner01 (Mensaje 394609)
saludos.

si lo que quieres es organizar la fecha desde un select este codigo que encontre podria ayudarte.



Código SQL [-]
select
EXTRACT(month FROM tufecha)||
|| EXTRACT(year FROM tufecha)||
|| EXTRACT(day FROM tufecha)
FROM tutabla






esto extrae la fecha en partes y la muestra en el orden deseado.

hola que tal si esto es lo que queria hacer, solo que ocupo que si es mes entre 1-9 aparesca con un cero antes por decir si es la fecha 29 de marzo del 2011 aparesca como esto 29032011 y con ese codigo aparece 2932011 no habra manera de meterle un case o una condicion..

Casimiro Notevi 29-03-2011 21:33:59

Puedes hacerlo, pero insisto :), el formato de presentación debes ponerlo en el componente que uses para mostrarlo al usuario en el formulario o dbgrid que estés usando.

Tú extraes la fecha:
Código SQL [-]
select fecha from tabla where loquesea
y luego la presentas con el formato que quieras, por ejemplo:

Código Delphi [-]
edit1.text := formatdatetime('yyyymmdd',tabla.fecha);

amerika111 29-03-2011 22:14:41

oo sii pero no estoy usando delphi, solo firebird y la fecha no la tengo en ningun componente nada mas quiero seleccionarla con el formato q comento para concatenarla con una cadena y colocarla en otra columna ya la concatenacion.

amerika111 29-03-2011 23:11:43

Cita:

Empezado por Casimiro Notevi (Mensaje 394998)
Puedes hacerlo, pero insisto :), el formato de presentación debes ponerlo en el componente que uses para mostrarlo al usuario en el formulario o dbgrid que estés usando.

Tú extraes la fecha:

Código SQL [-]select fecha from tabla where loquesea

y luego la presentas con el formato que quieras, por ejemplo:


Código Delphi [-]edit1.text := formatdatetime('yyyymmdd',tabla.fecha);

Lo que trato de hacer es lo siguiente no se si se pueda de esa manera.

Código SQL [-]
                         
select EXTRACT(day FROM FECHAMOVIMIENTO)|| (IF(EXTRACT(MONTH FROM FECHAMOVIMIENTO)>10) THEN (EXTRACT(MONTH FROM FECHAMOVIMIENTO)) else +'0'||(EXTRACT(MONTH FORM FECHAMOVIMIENTO))))
FROM A_EXPORTAIMMS

beginner01 29-03-2011 23:17:48

saludos.
de esta manera te agregara el cero. ej. 01032011
Código SQL [-]
SELECT LPAD(EXTRACT(DAY FROM tufecha), 2, '0') ||     
  LPAD(EXTRACT(MONTH FROM tufecha), 2, '0') ||
      EXTRACT(YEAR FROM tufechaa)FROM tutabla

amerika111 30-03-2011 00:43:57

si eso era exactamente thankss.....

guillotmarc 30-03-2011 10:12:07

Hace un par de días hablamos de esto mismo en DelphiAccess.

http://www.delphiaccess.com/forum/fi...esde-consulta/


La franja horaria es GMT +2. Ahora son las 21:02:12.

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