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)
-   -   Concatenar Fecha con Texto (https://www.clubdelphi.com/foros/showthread.php?t=20530)

Triton 18-04-2005 17:52:34

Concatenar Fecha con Texto
 
Hola a todos forer@s

Tengo un problemilla cuando voy a concatenar 2 campos (uno varchar y otro date) en un varchar. Estoy usando firebird 1.5.1 en WINDOWS.

ESTADO= :FASE||' '||:FECHA_FIN

El caso es que me lo hace de la siguiente manera:

fase 18/APR/2005

¿Hay alguna manera de poder quitar el APR y cambiarlo por un 04?

Un saludo :cool:

marcoszorrilla 18-04-2005 17:56:52

Creo que si cambias el formato de la fecha desde Delphi por Código puede funcionar.

Un Saludo.

Triton 18-04-2005 18:12:41

Lo conseguí...
 
Hola Marcos y hola a todos en general :D

Lo he conseguido pero he tenido que añadir unas cuantas líneas extra de comandos...

Código:

  aux=extract(day from fecha_fin);
  aux=aux||'/'||extract(month from fecha_fin);
  aux=aux||'/'||extract(year from fecha_fin);

  new.estado_prod=:fase||' '||:aux;

Gracias a todos por vuestras respuestas

P.D.: decir que aux,estado_prod y fase son varchar

Saludetes :)

marcoszorrilla 18-04-2005 18:25:20

Justamente yo quería evitar llegar a esa situación, pero si te funciona satisfactoriamente, sigue la máxima de programación.

"Si funciona, no lo arregles..."

Un Saludo.

Rufus 19-04-2005 10:26:41

Triton, '18/APR/2005' no es la forma "normal" que tiene firebird 1.5 de devolver la fecha.

¿Si ejecutas ese codigo en una ventana isql te lo devuelve en el mismo formato? Si es así, entonces yo probaría a utilizar cast() al recoger la fecha, de la siguiente manera: CAST(CampoFecha as CHAR(10))

Aunque ya lo hayas solucionado con extract.

Triton 20-04-2005 17:17:05

ok
 
Hi Rufus.

Ya sé que ese no es el formato en el que devuelve firebird las fechas.
Lo que pasa es que al concatena una varaible fecha con una variable varchar en un campo varchar me devolvía la fecha de esa forma.

De todos modos probaré como me dices, a ver que tal sale.

Salu2 :)


La franja horaria es GMT +2. Ahora son las 23:42:36.

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