Ver Mensaje Individual
  #4  
Antiguo 10-06-2005
Avatar de mamcx
mamcx mamcx is online now
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.939
Reputación: 27
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Precisamente, lo que tiene ADOCommand1 se ejecuta en linea pero lo que tiene ADODataSet... queda almacenado en memoria. Estas mezclando dos cosas al tiempo. Lo que deberias hacer (para una operacion en batch) tener la tabla de productos en un dataset tambien en batch y recalcular alli....

SIN EMBARGO eso te causaria problemas de concurrencia (porque los demas usuarios tendrian su propia copia) y me imagino por eso lo haces como esta. Lo que te toca hacer es:

1- Usar un trigger en las tablas que afectan estos datos...
2- Usar un sistema de calculadora en memoria, donde almacenas todos los calculos, osea tener una lista asi:

ListaOperaciones

Codigo Cantidad
1 2
1 -1
3 -1
2 3

y al finalizar el usuario ejecutar TODAS las acciones almacenadas. De hecho, eso es tener un log de transacciones. Asi es como se puede hacer de forma fiable en un ambiente de batch sin perjudicarse por las acciones de los demas usuarios...
__________________
El malabarista.
Responder Con Cita