Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problema DateTimePicker (https://www.clubdelphi.com/foros/showthread.php?t=46446)

m.ruiz 01-08-2007 10:29:42

Problema DateTimePicker
 
Hola a todos. Como siempre recurro a vuestro foro para poder sacar adelante mis pequeños apuros con delphi. Os comento:

Tengo en mi formulario varios componentes (edits, buttons, datetimepicker ...), que me sirven para que el usuario introduzca los valores que quiera y cuando pulse en el boton aceptar grabe todos estos valores en una tabla ...

Antes de insertar en la tabla hago varias comprobaciones de errores para tener un poco controlados los datos que se meten.
El problema se me presenta cuando pongo la siguiente condicion:



</SPAN>
Código Delphi [-]
if (DateTimePicker1.DateTime > now) then
begin
MessageDlg('No puede asignar una fecha de montaje superior a la de hoy.', mtError, [mbOk], 0);
Datetimepicker1.SetFocus;
end






Aparentemente está bien, y no me da errores al compilar ni nada, pero cuando pulso el boton aceptar y tengo la fecha a día de hoy, me salta la comprobacion que yo he escrito.
Esto me deja un poco perpleja, porke no tengo ni idea donde me estoy colando. si en el datetimepicker pongo la fecha de hoy, no es una fecha superior para que me salte la comprobacion.

En fin, si alguien puede arrojar algo de luz sobre esto, sería genial.
muxas gracias por adelantado...:D

droguerman 01-08-2007 14:04:26

intenta esto:
Código Delphi [-]
if (daysBetween(now, DateTimePicker1.DateTime)<0) then
begin
MessageDlg('No puede asignar una fecha de montaje superior a la de hoy.', mtError, [mbOk], 0);
Datetimepicker1.SetFocus;
end

m.ruiz 01-08-2007 16:32:46

Solucionado!! Genial muchas gracias por tu ayuda...para la proxima vez que trabaje con fechas me repasaré todos estos procedimientos que tienen.

saludos!!!:D :D

ContraVeneno 01-08-2007 17:59:11

que bueno que ya se resolvió.

Solo me gustaría comentar que tal vez, el error se ocasiona por que el dtpicket tambien compara la hora y tal vez, en tiempo de diseño, tu dtpicker tenía una hora muy alta, supongamos 23 horas. Y al hacer la comparación contra la función "Now", la fecha es la misma, sí, pero la hora es mayor y es por eso que te toma como verdadera la condición.

Pero como dije, que bueno que se solucionó, solo te comento esto para que lo consideras a la próxima. :p

m.ruiz 01-08-2007 18:03:06

Muchas gracias por tu aportacion...Además me viene genial que me comentéis los textos y preguntas que pongo, ya que me aportan nuevos conocimientos...y pa futuros pues no paso por los mismos errores...

NO habia considerado el tema de la hora en el datetimepicker...
Para la proxima consideraré esta opcion...

gracias de nuevo!!!:D :D


La franja horaria es GMT +2. Ahora son las 23:14:53.

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