PDA

Ver la Versión Completa : fechas nulas maskedit


krynn77
27-05-2003, 18:55:59
hola¡¡
Uso en un maskedit la mascara de fecha !99/99/0000;1;
Al salir del maskedit y poner los valores en blanco (fecha nula)
da un error .
¿Como podria dejar la fecha en blanco?
¿al grabar y pasar los valores a la tabla que tendria que hacer?
Muchas Gracias¡¡¡

José Luis Garcí
28-05-2003, 10:19:17
Puedes optar por usar el evento Onkeypress y poner una sentencia If que controle la tecla borrado que al pulsarla borre completamente la fecha, con poner despues del then un maskedit.text:=''; tendrias suficiente. Al segundo tema no pases valor alguno al campo si esta vacio y quedara en blanco, pero cuidado si es un campo requerido debes poner una fecha.

Prueba, cuentame y un saludo desde Canarias.

krynn77
28-05-2003, 20:51:49
Gracias pos contestar aun no lo he podido probar pero en cuanto lo pruebe te comento
un saludo

e_god
29-05-2003, 15:56:22
Creo que es el mismo caso que se me presento, lo solucione asi:

If DBEdit31.text=' / / ' then
T_contratocont_venceanticipo.clear
else T_contratocont_venceanticipo.value := StrToDate(DBEdit31.text);


Ojala te sirva.

Édgar.

krynn77
29-05-2003, 18:58:14
Jose Luis me gustaria que me pusieses un ejemplo informativo xq asi no me entero mu bien, soy principiante.
e_god eso no me sirve porque estoy usando maskedits

e_god
30-05-2003, 15:43:55
La mascara que yo uso es !9999/99/00;1;_, año/mes/dia y si el campo no lleva fecha pregunto:

If DBEdit28.text =' / / ' then
T_contratocont_fecvencepoliza.clear
else
xxxxxx

y.... Funciona.

José Luis Garcí
01-06-2003, 12:50:50
No te he dejado de lado pero ahora estoy fuera de mi equipo y quiero ponerte un ejemplo que realmente funcione, y no equivocarme, si sigues interesado mandame un emaily te prometo qe entre el día 2 y el día y el 4 que me incorporo te pongo un ejemplo, si ves que me olvido, recuerdamelo

Un saludo desde Canarias

lirio
03-06-2003, 22:04:35
Hola, y perdonen la manera, pero yo tambien tengo un problema con la mascara de un dbedit.

Utilizo el dbisavechanges, para guardar los cambios sin tener que salir de la aplicacion; en un dbedit tengo una mascara para la fecha. Bueno supongamos que en el campo tengo una fecha en especifico, pero que despues decido modificarla, y la borro, en ese momento al salir al siguiente dbedit, marca el siguiente error
EDBEditError 'Invalid input Value' y despues un
Invalid input value 'Use escape key to abandon change'

He intentado manejarlo con EDBEditError, pero no funciona; lo hace hasta el final, no permitiendome modificar el campo. He intentado en el mismo campo que direcciona el dbEdit en el evento OnValidate y OnsetText y tampoco me funciona. Alguien podria ayudarme

Gracias.

José Luis Garcí
04-06-2003, 09:57:22
Como lo prometido es deuda aqui teneis

procedure TForm1.MaskEdit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#27 then MaskEdit1.Text:='';
end;

Cada vez que el foco esta en el maskedit y pulsamos esc nos lo deja impoluto, tambien se prodri hacer en el evento de salida, si la fecha noes valida que la anule, es 1 sola linea de código, pero busca y allaras.

Me imagino que te valdra tambien para el ¿dbedit? estas seguro del componente:rolleyes:.

Un saludo desde Canarias.