![]() |
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. |
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:
Para guardar los cambios:
Para cancelar los cambios:
Un saludo. |
Muchas gracias ecfisa,
el lunes en cuanto llegue al trabajo lo pruebo y te digo si me ha funcionado. Un saludo. |
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. |
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. |
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. |
La franja horaria es GMT +2. Ahora son las 21:41:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi