Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Agenda de Citas (MonthCalendar) (https://www.clubdelphi.com/foros/showthread.php?t=21617)

PiPerraK 23-05-2005 16:48:57

Agenda de Citas (MonthCalendar)
 
Hola, tengo un gran quebradero de cabeza con este componente. Bueno mi problema es el siguiente:

Trabajo con Delphi6 y quiero hacer una Agenda de Citas para una peluquería canina. La estructura es la siguiente:

Tengo una Tabla llamada Agenda cuyos campos son FECHA/HORA/MOTIVO/DNI_CLIENTE
Donde el campo clave esta formado por los campos FECHA/HORA.

Hasta ahí todo bien, le asigno al DBEditFecha el Valor de la fecha que tengamos señalada en el calendario, y se añade sin problemas. Pero mi problema viene ahora, ¿cómo puedo hacer para mostrar en un DBGrid sólo las citas que haya programadas para el día que tengamos seleccionado en el componente MonthCalendar? Así tal como está me muestra todas las citas juntas de todos los días que haya añadido.

Sólo decir más que trabajo con AdoQuerys y tablas en Access.

Gracias por vuestra ayuda de antemano!

Kreyser 23-05-2005 16:59:12

Hola.

Así, a simple vista se me ocurre q utilices la propiedad Filter del dataset al q tengas conectado el DBGrid, colocando algo como:

Código:

DataSet.Filter:='NombreCampoFecha ='+QuotedStr(MonthCalendar.Date);
DataSet.Filtered:=True;

Esto podrias ponerlo en el evento OnClick del MonthCalendar.

Espero te sirva o al menos oriente.;)

Saludos.

Lepe 23-05-2005 17:03:52

MonthCalendar tiene la propiedad Date para obtener la fecha y hora seleccionada.

Simplemente puedes construir una consulta en sql.
Código:

'select fecha, hora, motivo from agenda where fecha = '+FormatDateTime('mm/dd/yyyy',MonthCalendar1.date);
y enlazar el DBgrid con esta consulta.

Un saludo

PiPerraK 23-05-2005 17:23:53

Gracias por las respuestas, probé lo del filtro, pero me da un error que dice algo así como que el campo Hora no puede quedarse vacío (?)
Y la consulta SQL, donde la meto?? en la propiedad SQL del AdoQuery?
De ser así que sintaxis uso?? porque con la anterior me da error :(

Kreyser 23-05-2005 17:45:56

Hola.

Pon algo del código que estas usando en la actualidad y los errores concretos, para que tengamos algo sobre lo que ayudarte.:confused:

Cita:

probé lo del filtro, pero me da un error que dice algo así como que el campo Hora no puede quedarse vacío (?)
Cita:

Y la consulta SQL, donde la meto?? en la propiedad SQL del AdoQuery?
De ser así que sintaxis uso?? porque con la anterior me da error
Saludos.

marcoszorrilla 23-05-2005 17:48:29

En Filtros el formato fecha es:
dd/mm/yyyy

y en consultas:
mm/dd/yyyy

Un Saludo.

Lepe 24-05-2005 16:57:07

Código Delphi [-]
procedure BotonBuscar;
begin
adoquery1.sql.text :=  'select fecha, hora, motivo from agenda where fecha = 
'+FormatDateTime('mm/dd/yyyy',MonthCalendar1.date);
adoquery1.open
end;

// Un saludo o dos ;)


La franja horaria es GMT +2. Ahora son las 12:36:56.

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