Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-07-2011
Avatar de weke
weke weke is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia
Posts: 170
Poder: 20
weke Va por buen camino
Question Controlar el Post en quantumgrid

Buenas tardes,
hacía muchísimo tiempo que no posteaba nada pero me he encontrado con un problema que no consigo solucionar.

Estoy utilizando Delphi 2010 y el componente quantumgrid para mostrar los datos. Tengo una pantalla en la que muestro unos datos de cabecera y tengo 2 grids donde inserto lineas (relacionadas con la cabecera), al realizar algún cambio habilito unos botones (cancelar y guardar cambios).

La cuestión es que al modificar e insertar las líneas en los grids cuando cambio de registro me hace el post de forma automáticamente y ya le puedo dar a guardar cambio o a cancelar, que cuando vuelvo a entrar los cambios se guardan de todos modos.

En los botones tengo implementado el Cancel o el Post de las tablas a las que están apuntando los grids y me gustaría controlarlo manualmente, en lugar de que siempre me guarde los cambios (tanto si quiere el usuario como si no).

A ver si alguien se ha encontrado con este problema y me puede echar una manilla. Si no ha quedado clara alguna parte de la explicación no dudeis en preguntar por si no me he explicado lo sificiente claro.

Un saludo y muchas gracias de antemano.
__________________
De lo bueno lo mejor, de lo mejor lo superior.
Responder Con Cita
  #2  
Antiguo 08-07-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Una opción es usar CachedUpdates de manera que sólo se guardaran los cambios si escribis los datos que están en caché.

Por ejemplo en OnCreate de tu form:
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
  DataSet.CachedUpdates:= True;
end;

Para guardar los cambios:
Código Delphi [-]
procedure TForm1.btnGuardarClick(Sender: TObject);
begin
  DataSet.ApplyUpdates;
end;

Para cancelar los cambios:
Código Delphi [-]
procedure TForm1.btnAnularClick(Sender: TObject);
begin
  DataSet.CancelUpdates;
end;

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 09-07-2011
Avatar de weke
weke weke is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia
Posts: 170
Poder: 20
weke Va por buen camino
Muchas gracias ecfisa,
el lunes en cuanto llegue al trabajo lo pruebo y te digo si me ha funcionado.

Un saludo.
__________________
De lo bueno lo mejor, de lo mejor lo superior.
Responder Con Cita
  #4  
Antiguo 11-07-2011
Avatar de weke
weke weke is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia
Posts: 170
Poder: 20
weke Va por buen camino
Buenos días,
ecfisa, acabo de hacer los cambios que me indicas pero no me reconoce ni CachedUpdates ni ApplyUpdates. Estoy utilizando TADOTable como dataset, por si fuera el componente que estoy utilizando.

Seguiré mirando a ver si encuentro alguna opción que me permita hacer esto que me indicas.

Un saludo.
__________________
De lo bueno lo mejor, de lo mejor lo superior.
Responder Con Cita
  #5  
Antiguo 11-07-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola weke.

Realmente no puedo ayudarte mucho con ADO pues no trabajo con él. Pero ví que el componente TADODataSet tiene los métodos UpdateBach y CancelUpdates que cumplen el mismo cometido, espero te sirvan.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 11-07-2011
Avatar de weke
weke weke is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia
Posts: 170
Poder: 20
weke Va por buen camino
Thumbs up

Muchas gracias ecfisa,
con UpdateBach y CancelUpdates todo solucionado.
Solo hay que cambiar el tipo de bloqueo del TADOTable tal y como indica la documentación de Delphi, la verdad es que no me había dado cuenta de esta opción.

Gracias de nuevo y un saludo.
__________________
De lo bueno lo mejor, de lo mejor lo superior.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
QuantumGrid RebeccaGL MySQL 2 27-06-2011 20:42:10
Instalacion QuantumGRid cucuy Varios 20 02-10-2008 03:12:35
Quantumgrid Devèxpresss Leonardo Varios 5 07-02-2008 16:38:41
IBDatase Insert Post Edit Post ariefez Firebird e Interbase 4 12-10-2005 01:53:04
Controlar el post y edit de un TDBNavigator Delphos Conexión con bases de datos 4 08-10-2003 20:41:26


La franja horaria es GMT +2. Ahora son las 19:56:32.


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
Copyright 1996-2007 Club Delphi