Ayuda [Optimizar el proceso de carga de un Kardex sin utilizar cur

14/12/2004 - 18:31 por Ricardo | Informe spam
Hola amigos del foro, tengo varias tablas que contienen los registros de
movimientos (ingresos, guias de salidas, ventas, etc). quiero unir toda esta
data y calcular los saldos y costos actuales por articulo(kardex). Lo que
pense hacer es pasar toda esta data a un temporal y luego, con un cursor,
barrerme toda la tabla y realizar los calculos(costos y saldos por registro).
el problema es que para una cantidad de 850,000 registros demora
demasiado...como podria optimizar este procedimiento sin utilizar un cursor,
ya que al usar un while para acceder a cada registro y actualizar los valores
del mismo, el tiempo de proceso es extremadamente largo.
 

Leer las respuestas

#1 Paulino Padial
14/12/2004 - 18:46 | Informe spam
Mas sencillo que eso, creo que deberias usar un DTS. Basicamente hacer esto.

Creas una vista que e devuelva los datos que necesitas, y esa la usas como
fuente de datos del DTS, y el destino la tabla que quieres ;)

creo que eso podria funcionar...

__________________________________________

Paulino Padial López
Murcia - España

Microsoft SQL-Server Administrator.
Microsoft Certified Solution Developer
Microsoft Certified Trainer
Oracle Certified Asociate
__________________________________________
"Ricardo" escribió en el mensaje
news:
Hola amigos del foro, tengo varias tablas que contienen los registros de
movimientos (ingresos, guias de salidas, ventas, etc). quiero unir toda


esta
data y calcular los saldos y costos actuales por articulo(kardex). Lo que
pense hacer es pasar toda esta data a un temporal y luego, con un cursor,
barrerme toda la tabla y realizar los calculos(costos y saldos por


registro).
el problema es que para una cantidad de 850,000 registros demora
demasiado...como podria optimizar este procedimiento sin utilizar un


cursor,
ya que al usar un while para acceder a cada registro y actualizar los


valores
del mismo, el tiempo de proceso es extremadamente largo.

Preguntas similares