Ver Mensaje Individual
  #6 (permalink)  
Antiguo 01/04/2016, 22:50
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 1 mes
Puntos: 2658
Respuesta: Grabar varias tablas de manera concurrente por varios usuarios

Mirá, el tema es complejo y lleva bastante tiempo de desarrollo, y mucho más tiempo de pruebas para poder implementarlo.
La transaccionalidad es una parte de la solución, pero tienes que tener en cuenta que todo proceso concurrente donde se estén realizando ventas o entregas de biens de cualquier tipo necesitan segurizar el estado de los bienes en cada momento.
¿Que quiere decir eso?
Que cada proceso de venta que se inicia debe con solo consultar, realizar la reserva de los bienes a entregar. Y cada vez que se pasa a una nueva etapa del proceso se debe validar que los bienes sigan estando disponibles, antes de cerrar la venta.
Para poder hacerlo correctamente debes definir cuidadosamente los pasos de cada proceso, y ver qué validaciones y recaudo se deben tener no sólo para que la venta sea exitosa, sino para que se pueda deshacer completamente en caso de fallo o cancelación.
Y esto último debe ser en cada una de las etapas de cancelación posible, incluyendo cuando se ha terminado y facturado la venta (el cliente puede pretender cancelarla, y tiene derecho a hacerlo).

No existe un método único para lograr eso, hay tantos métodos como sistemas de venta se diseñan. Cada uno puede tener soluciones diferentes en el contexto de cada empresa, completamente contrapuestos a otra.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)