Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   cancelar una accion (https://www.clubdelphi.com/foros/showthread.php?t=69157)

marcos_0586 29-07-2010 22:18:05

cancelar una accion
 
hola gente del foro, tengo una aplicacion en delphi 7 en la cual se ingresa para modificar los datos de una persona, y nesecito poner un boton para cancelar cualquier modificacion que se halla echo(por si se arrepiente) por ejemplo si le modifique el nombre y la direccion pero despues me doy cuenta de que no era la persona indicada para modificar pueda volver a lo que estaba antes y otro boton para ir cancelando la ultima accion realizada como el boton deshacer de word. se puede???? gracias.

delphi.com.ar 29-07-2010 22:21:35

Obvio que se puede. Pero sería importante saber como has cargado los datos del formulario, si utilizas componentes DBAware o los cargas manualmente. Supongo que estas usando conexión a alguna base de datos. Por favor, explica un poco mas la situación.

Saludos!

marcos_0586 29-07-2010 23:05:15

Cita:

Empezado por delphi.com.ar (Mensaje 372049)
Obvio que se puede. Pero sería importante saber como has cargado los datos del formulario, si utilizas componentes DBAware o los cargas manualmente. Supongo que estas usando conexión a alguna base de datos. Por favor, explica un poco mas la situación.

Saludos!

es verdad, aclare muy poco, bueno, yo ingreso un numero de DNI en un edit para buscar los datos de un empleado en una tabla,y tengo 6 DBedit y dos DBLookupComboBox que los relaciono con la tabla empleado, que es de donde saco los datos para modificar despues tengo otro boton donde lo unico que hago es guardar lo que hay en cada dbedit en ese registro de mi tabla y a los DBLookupComboBox no hace falta
Form1.table1.Edit;
Form1.Table1.FieldByName('Ape').AsString:=DBEdit1.Text;
Form1.Table1.FieldByName('Nom').AsString:=DBEdit2.Text;
Form1.Table1.FieldByName('Dni').AsInteger:=StrToInt(DBEdit3.Text);
Form1.Table1.FieldByName('Direccion').AsString:=DBEdit4.Text;
Form1.Table1.FieldByName('Telfijo').AsString:=DBEdit5.Text;
Form1.Table1.FieldByName('Telmovil').AsString:=DBEdit6.Text;
Form1.table1.Post;

ecfisa 30-07-2010 00:33:13

Hola marcos.

Si todavía los datos no fueron guardados lo solucionás con:
Código:

  Table1.Cancel;
De otro modo deberías usar en la apertura:
Código:

  Table1.CachedUpdates:= True;
  Table1.Open;
  ...

Y para deshacer los cambios:
Código:

  Table1.RevertRecord;
RevertRecord sólo funciona si CachedUpdates está activado.
En la ayuda de Delphi, en el foro y en internet tenés mucho escrito sobre el tema.



Saludos.


La franja horaria es GMT +2. Ahora son las 13:16:48.

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