Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-07-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Pues creo que con la idea que te da Hector y el cambio "Paradoxiano", que propongo yo lo resuelvas.

Pero estoy intrigado, porque quieres comparar la fecha de esta manera y porque Now y no Date, en cualquier caso Paradox no admite ninguno de las dos expresiones, así que tendras que guardar antes de utilizar en el SQL el resultado de Date o Now en una variable y luego utilizar ésta en tu SQL.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #2  
Antiguo 28-07-2005
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
o hacerlo con la función formatdatetime desde delphi antes de guardarlo en paradox....
__________________

Responder Con Cita
  #3  
Antiguo 28-07-2005
amadis amadis is offline
Miembro
 
Registrado: may 2005
Ubicación: San José, Colón, Entre Ríos, Argentina
Posts: 322
Poder: 22
amadis Va por buen camino
Lightbulb Gracias probare como me sugieren

NO se cuales son las diferencias de date y now a simplevist me parecieron iguales y use now porque si nomás.

Y si lo tengo almacenado en una variable que luego pasa a ser un param dentro del query.

Lo que necesito es y estoy haciendo es un programa que controle vencimietos cada vez que inicia controla todo lo que vence HOY sin importar el año de inicio del servicio ni que año es hoy. Simplemente me interesa saber que personas tienen vencimiento HOY (DIA/MES).

Desde ya Gracias mañana les cuento como me fue!
Responder Con Cita
  #4  
Antiguo 28-07-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Para terminar con la última pregunta que haces, Date.- Devuelve la fecha del sistema y Now devuelve la fecha y la hora del sistema.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.

Última edición por marcoszorrilla fecha: 28-07-2005 a las 19:22:18.
Responder Con Cita
  #5  
Antiguo 28-07-2005
amadis amadis is offline
Miembro
 
Registrado: may 2005
Ubicación: San José, Colón, Entre Ríos, Argentina
Posts: 322
Poder: 22
amadis Va por buen camino
Error

Gracias por la aclaracion de Now y Date!

Respecto de todo lo anterior me da TYME MISMATCH ERROR IN EXPRESSION como si se trataran de tipos de datos distintos...

aqui les dejo el codigo SQL para que lo miren

En la base de datos CLIENTES tengo campos con todos los datos de una persona, CODCLI, NOMBRE, FECHA (que es la fecha de suscripcion y vence cada año) y eso es lo que quiero controlar.


Código SQL [-]
sql_vence.Active := False;

sql_vence.SQL.Clear;
sql_vence.Params.CreateParam(ftDate, 'hoy', ptInput);

sql_vence.ParamByName('hoy').AsDate := DATE;
sql_vence.SQL.Append('Select codcli from clientes');
sql_vence.SQL.Append('WHERE (EXTRACT(Month FROM fecha)) =  (EXTRACT(Month FROM :hoy))');
sql_vence.SQL.Append(' AND  (EXTRACT(Day FROM fecha)) =  (EXTRACT(Day FROM :hoy))');

sql_vence.Active := true;
Responder Con Cita
  #6  
Antiguo 28-07-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Código Delphi [-]
var
 MiFecha:TDate;
 begin
 MiFecha:=Date;
 
 sql_vence.Active := False;
 
 sql_vence.SQL.Clear;
 sql_vence.Params.CreateParam(ftDate, 'hoy', ptInput);
 
 sql_vence.ParamByName('hoy').AsDate := MiFecha;
 sql_vence.SQL.Append('Select codcli from clientes');
 sql_vence.SQL.Append('WHERE (EXTRACT(Month FROM fecha)) =  (EXTRACT(Month FROM :hoy))');
 sql_vence.SQL.Append(' AND  (EXTRACT(Day FROM fecha)) =  (EXTRACT(Day FROM :hoy))');
 
 sql_vence.Active := true;
 
 end;
Prueba con este cambio ya que Paradox no reconoce la sentencia Date en su SQL.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.

Última edición por marcoszorrilla fecha: 28-07-2005 a las 22:56:01.
Responder Con Cita
  #7  
Antiguo 16-12-2006
Patricio Patricio is offline
Miembro
 
Registrado: jul 2004
Posts: 471
Poder: 23
Patricio Va por buen camino
como puedo hacer lo mismo pero en Interbase6

Hola quisiera preguntarles si alguno sabe como hacer la consulta comparando el dia/mes de un campo TimesTamp de Interbase6 con el dia/mes actual.

Muchas Gracias
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 20:49:57.


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