Consulta Verificar Existencias OC
This commit is contained in:
@@ -6921,27 +6921,29 @@ Partial Class OC
|
||||
Dim tmpDTPS As DataTable = DtDetalle
|
||||
Dim DTAlmacen = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltraParametros($" CveTipoAlmacen IN (1,9) ") 'AND CveSucursal = {CveSucursal}")
|
||||
Dim objInv As New ClsInventarios
|
||||
Dim consulta As New StringBuilder
|
||||
'Dim consulta As New StringBuilder
|
||||
|
||||
|
||||
consulta.Append(" ")
|
||||
consulta.Append(" DECLARE @TEMP TABLE (CvePS INT, CveSubProyecto INT);")
|
||||
For Each row As DataRow In tmpDTPS.Rows
|
||||
consulta.AppendFormat("INSERT INTO @TEMP VALUES ({0},{1});", row("CvePS"), row("CveSubProyecto"))
|
||||
Next
|
||||
consulta.Append(" SELECT CASE WHEN LEN (ISNULL (P.Codigo, '')) = 0 THEN P.PS ELSE CONCAT( P.Codigo, ' - ', P.PS) END AS Producto, SUM(OCPR.Cantidad) AS [Por Recibir] ")
|
||||
For Each row As DataRow In DTAlmacen.Rows
|
||||
consulta.AppendFormat(" ,SUM(CASE WHEN CS.CveAlmacen={0} THEN CS.Existencia - ISNULL(INV.Cantidad,0) ELSE 0 END) AS [{1}] ", row("CveAlmacen"), row("Almacen"))
|
||||
Next
|
||||
consulta.Append(" FROM @TEMP T ")
|
||||
consulta.Append(" INNER JOIN [ProductosServicios] P ON P.CvePS = T.CvePS ")
|
||||
consulta.Append(" LEFT JOIN [Inv_ExistenciasProductos] CS ON P.CvePS = CS.CvePS ")
|
||||
consulta.Append(" LEFT JOIN Vw_InventarioPorSurtir INV ON INV.CvePS = P.CvePS AND INV.CveAlmacen = CS.CveAlmacen ")
|
||||
consulta.Append(" LEFT JOIN Vw_OC_PorRecibir OCPR ON OCPR.CvePS = P.CvePS AND OCPR.CveAlmacen = CS.CveAlmacen AND OCPR.CveSubProyecto = T.CveSubProyecto")
|
||||
consulta.Append(" WHERE P.CveTipoPS = 2")
|
||||
consulta.Append(" GROUP BY P.CvePS,P.Codigo,P.PS")
|
||||
'consulta.Append(" ")
|
||||
'consulta.Append(" DECLARE @TEMP TABLE (CvePS INT, CveSubProyecto INT);")
|
||||
'For Each row As DataRow In tmpDTPS.Rows
|
||||
' consulta.AppendFormat("INSERT INTO @TEMP VALUES ({0},{1});", row("CvePS"), row("CveSubProyecto"))
|
||||
'Next
|
||||
'consulta.Append(" SELECT CASE WHEN LEN (ISNULL (P.Codigo, '')) = 0 THEN P.PS ELSE CONCAT( P.Codigo, ' - ', P.PS) END AS Producto, SUM(OCPR.Cantidad) AS [Por Recibir] ")
|
||||
'For Each row As DataRow In DTAlmacen.Rows
|
||||
' consulta.AppendFormat(" ,SUM(CASE WHEN CS.CveAlmacen={0} THEN CS.Existencia - ISNULL(INV.Cantidad,0) ELSE 0 END) AS [{1}] ", row("CveAlmacen"), row("Almacen"))
|
||||
'Next
|
||||
'consulta.Append(" FROM @TEMP T ")
|
||||
'consulta.Append(" INNER JOIN [ProductosServicios] P ON P.CvePS = T.CvePS ")
|
||||
'consulta.Append(" LEFT JOIN [Inv_ExistenciasProductos] CS ON P.CvePS = CS.CvePS ")
|
||||
'consulta.Append(" LEFT JOIN Vw_InventarioPorSurtir INV ON INV.CvePS = P.CvePS AND INV.CveAlmacen = CS.CveAlmacen ")
|
||||
'consulta.Append(" LEFT JOIN Vw_OC_PorRecibir OCPR ON OCPR.CvePS = P.CvePS AND OCPR.CveAlmacen = CS.CveAlmacen AND OCPR.CveSubProyecto = T.CveSubProyecto")
|
||||
'consulta.Append(" WHERE P.CveTipoPS = 2")
|
||||
'consulta.Append(" GROUP BY P.CvePS,P.Codigo,P.PS")
|
||||
|
||||
objInv.GetQuery(consulta.ToString())
|
||||
'objInv.GetQuery(consulta.ToString())
|
||||
|
||||
objInv.GetExistenciasAlmacenDT(CveOrdenCompra, UsuarioActual.CveEmpresa)
|
||||
|
||||
' limpio los almacenes donde no tiene ningun producto existencia
|
||||
For i = objInv.DtResultados.Columns.Count - 1 To 1 Step -1
|
||||
|
||||
Reference in New Issue
Block a user