Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-06-2008
Alsaca Alsaca is offline
Miembro
 
Registrado: dic 2007
Posts: 31
Poder: 0
Alsaca Va por buen camino
Arrow Consulta con Tquery

Buenas tardes a todos/as. Comento mi problema, el cual me tiene parado totalmente.


Tengo un form principal, con una tabla paradox llamada tclient, en la cual hay cuatro date, (f_exp, f_cad) y (f_expe, f_cade). Pulsando un botón de este form, consigo ir a otro form, donde me aparece un dbgrid. Quisiera conectarlo con una tquery. Mi pregunta es la siguiente, al pulsar:

Botón1(Por Caducar)

Al pulsar este botón, que me aparezcan en el dbgrid todas las fechas que no estén caducadas.


Botón2(Por Caducar 30 días y menos de 30 días)

Al pulsar este botón, que me aparezcan en el dbgrid todas las fechas que le falten 30 días para caducar.


Botón3(Caducadas)

Al pulsar este botón, que me aparezcan en el dbgrid todas las fechas caducadas.


Espero haberlo explicado bien, o por lo menos que podáis entender, lo que necesito.


Un saludo y muachas gracias.
Responder Con Cita
  #2  
Antiguo 23-06-2008
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
Lo mismo ya lo has solucionado, ya han pasado 2 semanas desde tu post pero bueno como yo lo haría es asociando el dbgrid a una consulta genérica y cuando pinches los botones cambies dicha consulta: siendo estas las consultas:

Código:
// onclick Boton 1
tquery.close;
tquery.sql.clear;
tquery.sql.add('select f_cad from tclient where f_cad < :DAhora');
tquery.parambyname('DAhora').value:=DateToStr(Date);
tquery.open;

// onclick Boton 2: Para 30 días exactos
tquery.close;
tquery.sql.clear;
tquery.sql.add('select f_cad from tclient where f_cad = :DTreinta);
tquery.parambyname('Dtreinta').value:=DateToStr(Date+30);
tquery.open;

// onclick Boton 3
tquery.close;
tquery.sql.clear;
tquery.sql.add('select f_cad from tclient where f_cad > :DAhora);
tquery.parambyname('DAhora').value:=DateToStr(Date);
tquery.open;
Espero haberte ayudado. Saludos, Tony
Responder Con Cita
  #3  
Antiguo 23-06-2008
Alsaca Alsaca is offline
Miembro
 
Registrado: dic 2007
Posts: 31
Poder: 0
Alsaca Va por buen camino
Gracias Tony, lo probaré inmediatamente y te cuento. La verdad que ya no esperaba respuestas, por eso te estoy muy agradecido.



Saludos.
Responder Con Cita
  #4  
Antiguo 23-06-2008
Alsaca Alsaca is offline
Miembro
 
Registrado: dic 2007
Posts: 31
Poder: 0
Alsaca Va por buen camino
Tony, ya lo he probado, y me da el siguiente error: Type mismatch in expresion.




Saludos.
Responder Con Cita
  #5  
Antiguo 23-06-2008
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
cambia en los 3 tquery.parambyname(xxxx).value por la siguiente linea:

Código:
tquery.parameters[0].value:=DatetoSTR(xxxxx)
Ya me cuentas....
Responder Con Cita
  #6  
Antiguo 23-06-2008
Alsaca Alsaca is offline
Miembro
 
Registrado: dic 2007
Posts: 31
Poder: 0
Alsaca Va por buen camino
Tony, lo siento, pero ahora da este error: Undeclarer identifier: 'parameters'.




Saludos.
Responder Con Cita
  #7  
Antiguo 24-06-2008
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
upsss perdona, es que yo trabajo con tadoquerys, supongo que tu trabajaras con tquery a secas , bueno pues con una tquery en vez de parameters es params de tal manera que:

Código:
query1.Params[0].value:=Edit1.text;
Saludos, Tony
Responder Con Cita
  #8  
Antiguo 24-06-2008
[basti] basti is offline
Miembro Premium
 
Registrado: ago 2004
Posts: 388
Poder: 20
basti Va por buen camino
Te aconsejo que no uses value para los parámetros cuando sea posible, sobre todo si el campo es de tipo fecha. Así hace la conversión del formato fecha automáticamente sin preocuparte del formato.

Código Delphi [-]
tquery.ParamByName('DAhora').AsDatetime := Date;
__________________
Saludos.
Responder Con Cita
  #9  
Antiguo 25-06-2008
Alsaca Alsaca is offline
Miembro
 
Registrado: dic 2007
Posts: 31
Poder: 0
Alsaca Va por buen camino
Gracias a todos lo s que me habéis ayudado, prácticamente está resuelto.




Saludos, Alsaca.
Responder Con Cita
Respuesta



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta sobre TQuery... AFilth Varios 6 06-11-2007 09:48:05
Decimales en una consulta (TQUERY ) a paradox Wonni Conexión con bases de datos 6 14-11-2006 21:22:33
consulta en sus propiedades de Tquery jorgito Conexión con bases de datos 9 31-01-2006 15:57:35
consulta en sus propiedades de Tquery jorgito Conexión con bases de datos 1 20-01-2006 23:06:32
Re - ordenar consulta de un TQuery ContraVeneno SQL 18 12-10-2005 19:28:34


La franja horaria es GMT +2. Ahora son las 19:18:59.


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
Copyright 1996-2007 Club Delphi