Ver Mensaje Individual
  #8 (permalink)  
Antiguo 28/08/2015, 07:38
Paty_RR
 
Fecha de Ingreso: enero-2013
Mensajes: 176
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: Concurrencia timestamp

Cita:
Iniciado por iislas Ver Mensaje
Yo tenia 560 usuarios concurrentes en una base de datos, todos tenían un ID (de empleado), aclaro, esto fue en la versión 7.0 de SQL Server.

¿Cómo evitar la concurrencia?

Se me ocurrió colocar un cambio ID en los registros y actualizar este ID con el numero del empleado, cuando este, tuviera el registro.

Así nunca tenia 2 empleados procesado el mismo registro, además de que si el empleado dejaba "a la mitad de proceso" dicho registro, siempre le mandaba el mismo registro hasta concluirlo.

Estamos hablando de un ambiente de CALL CENTER.

En realidad implemente algo parecido....

Use un campo dentro de la tabla tipo timestamp (el cual guarda un arreglo de bytes y automaticamente sql asigan un valor cuando se da de alta o se hace un update al registro).

Dentro de mi aplicación:
  • Al abrir el registro de venta obtenengo el valor del timestamp del registro
  • Al momento de dar clic en guardar, hago un refresh a mi instancia de la bd (uso LINQ)
  • Obtengo nuevamente el valor del timestamp del registro
  • Valido que mi timestamp al elegir la venta sea igual al de después del refresh
  • Si son iguales no han modificado el registro, si son diferentes mando una alerta de que la venta ha sido modificada.

Este proceso lo hago tambien para inventario, ya que a veces vendian el mismo producto al mismo tiempo...

Es algo parecido a lo que tu haces....

Gracias!!!!
__________________
Define tus intereses, se curioso, investiga, comete errores, aprende, practica, mejora, enseña y vuelve a comenzar....