PDA

Ver la Versión Completa : Manejo de Fechas en Delphi para enviar una consulta


rgstuamigo
09-10-2008, 22:30:46
Que tal amigo,primero que nada no sabia si poner este hilo aqui, o en el foro de MySql (http://www.clubdelphi.com/foros/forumdisplay.php?f=21) ,al final decidi ponerlo aqui por que mi duda tiene que ver mas con Programacion.Espero no haberme equivocado:o
Bueno, estoy en duda de como poder hacer para llamar a un prodecimiento(proc) almacenado que tengo en una base de datos(BD) en mysql; este proc recibe como parametro dos fechas(f1,f2) de tipo Datetime y ademas codS que es el codigo de seccion(puede ser el codigo de un departamento de la empresa) de la cual se va a ser una consulta entre el rango(between) de ambas fechas;Eso ya esta todo bien y probado en myqsl; el problema es: ¿como hago para eviarle las dos fechas de tipo datetime:confused: desde Delphi? sabiendo que el usuario pone las fechas en 6 comboBox (cb)de la siguiente manera: ojo cb=ComboBox
cb1 para el dia de la primera fecha,
cb2 para el mes de la primera fecha,
cb3 para el año de la primera fecha,

cb4 para el dia de la segunda fecha,
cb5 para el mes de la segunda fecha,
cb6 para el año de la segunda fecha.

El usuario lo que seleciona un rango de fecha de los comboBox y le da buscar.
No se si me entendieron pero nesecito mandar fechas(Datetime)al servidor.
y consultar con esas fechas.He tratado de usar TDate y no le entiendo he visto tambien TDatetime pero parece que trabaja con float.:o:confused:
¿Como amoldo las fechas en delphi para lograr esto:confused:?

coso
09-10-2008, 22:35:05
Hola, antes que nada yo le echaria un vistazo al componente TDateTimePicker o TMonthCalendar (pestaña win32). si aun asi, mira la funcion EncodeDate a ver si te sirve. Un saludo.

rgstuamigo
09-10-2008, 22:49:57
Muy interesante amigo coso tu sugerencia, estoy tratando de manejarlos:)
Haber si puedes posteame un pequeñito ejemplo para acelerar la ayuda...;)

coso
09-10-2008, 22:50:50
Si pulsas F1 tendras el ejemplo directamente ;) saludos

rgstuamigo
09-10-2008, 23:05:38
Estoy tratando de entender especialmente el componenete TDateTimePicker
tiene una propiedad DateTime que me imagino puedo enviar este al servidor¿no?
Pero no habria error ¿Son compatible los tipos TDateTime de Delphi con Datetime de MySQL?¿Se lo envio tal como esta?¿Me devolveria el servidor los datos deseados?¿O hay que acomodar algo?:confused:

coso
09-10-2008, 23:08:39
echale tambien un vistazo a la funcion datetostr...en el momento de crear la sentencia sql, que es una string, solo deberas usarla con el datetime de los datetimepicker. Ah, veo q usas procedimientos almacenados :confused: ni idea, supongo q pasando DateTimePicker1.Date o bien datetimepicker1.time directamente como parametro ya lo tendrias. Es cuestión de probarlo...saludos

egostar
09-10-2008, 23:11:52
Hola


procedure TForm1.Button1Click(Sender: TObject);
var
fecha: string;
begin
Fecha := DateTimetoStr(DateTimePicker1.DateTime);
ShowMessage(Fecha);
end;


No deberia de darte problemas.

Salud OS

rgstuamigo
09-10-2008, 23:26:14
Gracias Amigos ya lo probe y me funciona:Aqui va el codigo
si ven la forma de mejorarlo diganme por favor:

procedure TForm1.Button1Click(Sender: TObject);
begin
ZQuery1.Close;
ZQuery1.Params[0].Value:=DateTimePicker1.DateTime;
ZQuery1.Params[1].Value:=DateTimePicker2.DateTime;
ZQuery1.Open;
end;

Los resultado lo muestro en un dbGrid.;):D