Buenos días,
Hace unos meses hice un programa de gestión en VB.NET para la empresa para la que trabajo (es una PYME) , se encarga de gestionar reparaciones, presupuestos, facturación y clientes (vamos lo muy básico para de una ojeada llevar un control de todo). La cuestión es que hay usuarios algo torpes que suelen cagarla a la hora de modificar cosas, que se equivocan y tal.
Hasta ahora los cambios se guardaban en tiempo real, conforme modificabas cualquier cosa de un formulario actualizaba su campo en la base de datos.
Ahora mi jefe me ha pedido si podría ser posible que cuando se trabaja con un formulario no se guarde nada hasta que al salir se le pregunte al usuario. Esto seria fácil excepto porque según que modificaciones hacen recargar el formulario y necesito que no se pierda lo que haya estado modificando el usuario hasta el momento, aunque no actualice la base de datos.
Había pensado en tener tablas temporales en las que cargar los datos mientras se trabaja con ellos y en caso de querer guardar finalmente trasladar esa información a las tablas definitivas pero no se si es muy correcto o algo chapucero.
Os pongo un ejemplo del por qué de la complicación, ya que mis nociones de programación son mínimas:
Tenemos el formulario que contiene una factura. Por un lado tenemos los datos del cliente y en un groupbox acumulo los textbox referentes a los conceptos y precios de esa factura. Cuando añado una linea nueva o borro una existente modifico la base de datos, limpio y cargo de nuevo el groupbox con los datos actualizados de la base de datos. Estoy seguro que mi forma de operar no es la correcta pero hasta ahora iba tirando así.
¿Alguien me arroja algo de luz acerca de como modificarlo en base a lo planteado? Con una teoría base ya me buscaría la vida para hacerlo funcionar.