PDA

Ver la Versión Completa : Validar Fecha en Edit


eljavi
03-03-2007, 21:20:10
Hola:

estoy usando un componente que se llama JFEdit y le puse un boton que biene en este componente para usar un calendario y le di una mascara de dMy que me pone el dia, el mes con letra, y el año con 4 digitos. Mi problema es que a la hora de capturar si tecleo el año con 2 digitos por ejemplo 02 (para 2002) me acompleta como 0002, si pongo 97 (para 1997) me acompleta 0097.
anteriormente avia utilizado un componente llamado DateTimePicker y aqui si me acompletaba la fecha correctamente pero me dio algunos problemas pork tomaba un valor con fecha y hora.

Lepe
03-03-2007, 21:58:00
El TDatetimePicker tiene dos estilos, date o time, estableciendo en Date, y el formato adecuado dd/mm/yyyy puedes acceder a la propiedad Date del componente, obteniendo solo la fecha.

Saludos

roman
03-03-2007, 22:45:20
Hola, Lepe, otra vez yo :o

Ayer estuvimos enredados con un problema extraño (http://www.clubdelphi.com/foros/showthread.php?t=40947) relacionado con el paso de una fecha a una consulta con ADO. En algún momento se sugirió utilizar parámetros para pasar el valor pero algo no funcionaba, según comento en el mensaje 35 (http://www.clubdelphi.com/foros/showpost.php?p=186024&postcount=35).

Me gustaría que lo vieras, y si tú usas BDS2006, corrobores cuál es el comportamiento del DateTimePicker.Date.

// Saludos

Lepe
04-03-2007, 03:24:16
Tienes razón, en BDS2006 tiene el mismo comportamiento da la fecha y hora.

Visto lo visto, (que no doy una al derecho), me retiro unos días de los foros :(. Lástima que las vacaciones queden tan lejos :D :D

Saludos peña

roman
04-03-2007, 03:34:33
¿Cómo que te retiras unos días? Yo hubiera jurado lo mismo que tú. De hecho, la propiedad Date está implementada con:


function TCommonCalendar.GetDate: TDate;
begin
Result := TDate(FDateTime);
end;


Yo antes pensaba que un moldeo así, el compilador lo que hacía era truncar el valor, pero ya veo que no. Mas entonces, es un error de la componente, debería ser:


function TCommonCalendar.GetDate: TDate;
begin
Result := TDate(Trunc(FDateTime));
end;


// Saludos