Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Problema Creacion-Cancelacion Registros (https://www.clubdelphi.com/foros/showthread.php?t=24703)

Maury Manosalva 31-08-2005 00:20:30

Problema Creacion-Cancelacion Registros
 
Hola, Buena tarde, quiero explicarle claramente mi problema, yo tengo un formulario el cual apunta por un dataset y un Ttable a una tabla Paradox que tiene un tiene 2 Campos un Id y un Nombre, bueno el problema es el siguiente, yo cree mi propia barra de navegacion para desplazarme dentro de los registros porque tuve problemas con la barra de Navegacion de Delphi, cuando yo doy click en el boton Insertar el me crea un numero consecutivo que lo estoy incrementando por codigo, si el usuario da click en el boton Guardar sin colocar el nombre, me aparece un error mostrado por ShowMessage (debe digitar nombre) y me manda el foco al nombre nuevamente, que sucede si se decide cancelar la creacion, sale pero me deja este registro en blanco. no he dado en que evento colocarle para que me borre o si se pudiese que coloque el numero al final de la creacion, seria fabuloso, pero me aparece un error que el Id debe tener un valor y me bloquea el form. si uno de los colaboradores sabe, se los sabria agradecer.

Maury Manosalva

Lepe 31-08-2005 12:29:09

Debería bastar con NombreDataset.Cancel en el boton que usas para cancelar.

Aunque depende de donde hagas la validación del Id.

Intuyo en que no usas ninguna excepción para mostrar el Showmessage "debe digitalizar nombre",

Normalmente en el OnNewRecord, incrementas el ID y lo asignas al campo.
En el evento BeforePost haces una validación así:
Código Delphi [-]

if DAtasetNombre.AsString = Emptystr then
begin
 ShowMessage('Debe poner el nombre');
 Sysutils.Abort;
end;

Si no pones el "Abort", el registro en curso se grabará ¡¡Aunque no tenga el nombre puesto!!

De esta forma, se cancela el grabado, y el registro quedará en modo Inserción.

Un saludo

Maury Manosalva 31-08-2005 15:43:03

Gracias Lepe, voy a verificar esta ayuda. Muy Gentil


Maury

Maury Manosalva 20-09-2005 23:18:32

Funciono perfecto, gracias Lepe


La franja horaria es GMT +2. Ahora son las 08:57:14.

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