Ayuda con query en kardex

15/12/2006 - 22:21 por jcac | Informe spam
Hola lista

Esta es la información que tengo en una tabla, este es la info de la
cabecera de la tabla es un kardex

Alm Facha Movimiento
002 30/01/2006 Salida por Ventas-11730
002 30/01/2006 Salida por Ventas-11735
002 30/01/2006 Salida por Ventas-11738
002 30/01/2006 Salida por Ventas-11739
001 30/01/2006 Ingreso por Fabricación-2733
001 31/01/2006 Salida por Ventas-7629
001 31/01/2006 Salida por Ventas-7631
001 31/01/2006 Salida por Ventas-7632
002 31/01/2006 Salida por Ventas-11749


Este es el detalle del kardex, bueno he omitido el producto que es se puede
repetir, pero esto es de un solo producto

Alm Facha Movimiento Ingreso F Salida F Saldo F CUA Ingreso
V Salida V Saldo V
002 30/01/2006 Salida por Ventas-11730 72 73299
- 6.44 4,114.63
002 30/01/2006 Salida por Ventas-11735 12 73287
- 1.07 4,113.56
002 30/01/2006 Salida por Ventas-11738 12 73275
- 1.07 4,112.48
002 30/01/2006 Salida por Ventas-11739 288 72987
- 25.75 4,086.73
001 30/01/2006 Ingreso por Fabricación-2733 5184 54738
0.0894270833 463.59 - 4,550.32
001 31/01/2006 Salida por Ventas-7629 144 54594
- 12.88 4,537.44
001 31/01/2006 Salida por Ventas-7631 144 54450
- 12.88 4,524.56
001 31/01/2006 Salida por Ventas-7632 144 54306
- 12.88 4,511.69
002 31/01/2006 Salida por Ventas-11749 12 72975
- 1.07 4,510.61


Como observaran puedo tener el mismo producto en distintos almacenes, lo que
deseo hacer es obtener un saldo por cada almacen a una fecha determina, pero
no puedo dar con el query, lo que deseo es algo asi:

002 30/01/2006 Saldo al 30/01/2006 288 72987
- 25.75 4,086.73

001 30/01/2006 Saldo al 30/01/2006 5184 78171 0.0894270833
463.59 - 4,550.32


el query que mas o menos tengo es este, pero aqui estoy utilizando los
campos reales de la BD, la relacion entre la cabecera y el detalle son los
siguientes campos:
D.SUCR_Codigo = V.SUCR_Codigo And D.ALMA_Codigo = V.ALMA_Codigo And
D.TIPO_TabVale = V.TIPO_TabVale And D.TIPO_CodVale = V.TIPO_CodVale And
D.VALE_NumVale = V.VALE_NumVale, viniendo a ser D el detalle y V la cabecera

Select D.SUCR_Codigo, D.ALMA_Codigo, D.PROD_CodProd, Max(D.DVAL_FecConfir),
(Select DVAL_SaldoF From DetValesAlm Where D.SUCR_Codigo = SUCR_Codigo And
D.ALMA_Codigo = ALMA_Codigo And D.TIPO_TabVale = TIPO_TabVale And
D.TIPO_CodVale = TIPO_CodVale And D.VALE_NumVale = VALE_NumVale And
D.PROD_CodProd = PROD_CodProd)
From (
Select D.*
From DetValesAlm D
Inner Join Vales V
On D.SUCR_Codigo = V.SUCR_Codigo And D.ALMA_Codigo = V.ALMA_Codigo And
D.TIPO_TabVale = V.TIPO_TabVale And D.TIPO_CodVale = V.TIPO_CodVale And
D.VALE_NumVale = V.VALE_NumVale
Where D.PROD_CodProd = '2110010242'
And D.DVAL_FecConfir < '20060101'
And V.VALE_Estado = 'C') D
Group by D.SUCR_Codigo, D.ALMA_Codigo, D.PROD_CodProd

Gracias por su tiempo
 

Leer las respuestas

#1 Maxi
16/12/2006 - 15:11 | Informe spam
Hola, no se ve muy bien la data porque se corta en el correo, podrias
pasarnos esa data en un archivo .txt y por favor las ddl de las tablas.

Gracias!


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
http://maxiaccotto.blogspot.com/
"jcac" wrote in message
news:
Hola lista

Esta es la información que tengo en una tabla, este es la info de la
cabecera de la tabla es un kardex

Alm Facha Movimiento
002 30/01/2006 Salida por Ventas-11730
002 30/01/2006 Salida por Ventas-11735
002 30/01/2006 Salida por Ventas-11738
002 30/01/2006 Salida por Ventas-11739
001 30/01/2006 Ingreso por Fabricación-2733
001 31/01/2006 Salida por Ventas-7629
001 31/01/2006 Salida por Ventas-7631
001 31/01/2006 Salida por Ventas-7632
002 31/01/2006 Salida por Ventas-11749


Este es el detalle del kardex, bueno he omitido el producto que es se
puede repetir, pero esto es de un solo producto

Alm Facha Movimiento Ingreso F Salida F Saldo F CUA Ingreso
V Salida V Saldo V
002 30/01/2006 Salida por Ventas-11730 72 73299 -
6.44 4,114.63
002 30/01/2006 Salida por Ventas-11735 12 73287 -
1.07 4,113.56
002 30/01/2006 Salida por Ventas-11738 12 73275 -
1.07 4,112.48
002 30/01/2006 Salida por Ventas-11739 288 72987 -
25.75 4,086.73
001 30/01/2006 Ingreso por Fabricación-2733 5184 54738
0.0894270833 463.59 - 4,550.32
001 31/01/2006 Salida por Ventas-7629 144 54594 -
12.88 4,537.44
001 31/01/2006 Salida por Ventas-7631 144 54450 -
12.88 4,524.56
001 31/01/2006 Salida por Ventas-7632 144 54306 -
12.88 4,511.69
002 31/01/2006 Salida por Ventas-11749 12 72975 -
1.07 4,510.61


Como observaran puedo tener el mismo producto en distintos almacenes, lo
que deseo hacer es obtener un saldo por cada almacen a una fecha
determina, pero no puedo dar con el query, lo que deseo es algo asi:

002 30/01/2006 Saldo al 30/01/2006 288 72987 - 25.75
4,086.73

001 30/01/2006 Saldo al 30/01/2006 5184 78171 0.0894270833
463.59 - 4,550.32


el query que mas o menos tengo es este, pero aqui estoy utilizando los
campos reales de la BD, la relacion entre la cabecera y el detalle son los
siguientes campos:
D.SUCR_Codigo = V.SUCR_Codigo And D.ALMA_Codigo = V.ALMA_Codigo And
D.TIPO_TabVale = V.TIPO_TabVale And D.TIPO_CodVale = V.TIPO_CodVale And
D.VALE_NumVale = V.VALE_NumVale, viniendo a ser D el detalle y V la
cabecera

Select D.SUCR_Codigo, D.ALMA_Codigo, D.PROD_CodProd,
Max(D.DVAL_FecConfir), (Select DVAL_SaldoF From DetValesAlm Where
D.SUCR_Codigo = SUCR_Codigo And D.ALMA_Codigo = ALMA_Codigo And
D.TIPO_TabVale = TIPO_TabVale And D.TIPO_CodVale = TIPO_CodVale And
D.VALE_NumVale = VALE_NumVale And D.PROD_CodProd = PROD_CodProd)
From (
Select D.*
From DetValesAlm D
Inner Join Vales V
On D.SUCR_Codigo = V.SUCR_Codigo And D.ALMA_Codigo = V.ALMA_Codigo And
D.TIPO_TabVale = V.TIPO_TabVale And D.TIPO_CodVale = V.TIPO_CodVale And
D.VALE_NumVale = V.VALE_NumVale
Where D.PROD_CodProd = '2110010242'
And D.DVAL_FecConfir < '20060101'
And V.VALE_Estado = 'C') D
Group by D.SUCR_Codigo, D.ALMA_Codigo, D.PROD_CodProd

Gracias por su tiempo

Preguntas similares