Hola, buenas tardes a todos, alguien a usado el ADO para trabajar con transacciones?, de antemano agradesco el tiempo que se tomaron en leer esto...
Miren tratare de Explicarme....
Tengo una aplicacion o ams bien voy a realizar una aplicacion, el cual les describo muy general lo que hara
1.- Cargar Informacion de Inventarios
- Lo anterior se hace cada vez que se ejecute la aplicacion.
- Para hacer esto pues uso el objeto Conection del ADO.
--- Mas o menos seria asi:
------ 1.- Crear el Objeto
------ 2.- Begintrans
-------3.- Borrar la informacion vieja
-------4.- Insertar la Nueva
-------5.- Committrans o Rollbacktrans, segun aplique
2.- Usar informacion de Inventario
- Por lo regular cuando consulto informacion, uso el Recordset y le paso una cadena de conexion directa para ahorrarme codigo, esto lo menciono porque no se si afecte con mi duda.
- Lo que yo haria basicamente es restar el inventario que previamente subi a los articulos que tengo en un reprorte.
Esta herramienta puede ser usada por 2 o mas usuarios
Supongamos que existe el usuario A y el B
Estos usuaraios ejecutan la aplicacion casi al mismo tiempo
El usuario A ejecuta la aplicacion, 3 segundos despues lo hace el usuario B. El usuario A inicia la transaccion para actualizar el inventario, cuando el Proceso del usuario B quiere actualizar el invnetario, la BD lo pone en espera porque se esta llevando una transaccion en esa tabla. El usuario A libera la transaccion, entonces ahora la transaccion del usario B empieza....
El paso que sigue es leer el inventario y restarlo en el reporte, el primnero que hace esto es el usuario A, pero recordemos que el usuario B esta modificanto la tabla... Vaya mi duda seria que si el Recordset se da cuenta que hay una transaccion y espera hastra que esta termine, o el sistema manejador de BD le dice al Recordset que espere pues un proceso esta ocupando la tabla en cuestion, o bien al recordset le vale y de como quiera ocnsulta y no me trae nada deinformacion pues la tabal esta bloqueda pero no me avisa...
Espero haberme explicado bien, saludos.