IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_CONTROL_INVENTARIO]')) DROP VIEW [RDX_V_CONTROL_INVENTARIO] GO IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIO_STOCK_DESGLOSADO]')) DROP VIEW [RDX_V_INVENTARIO_STOCK_DESGLOSADO] GO IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_CALCULADO_DESGLOSADO]')) DROP VIEW [RDX_V_STOCK_CALCULADO_DESGLOSADO] GO IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_CALCULADO]')) DROP VIEW [RDX_V_STOCK_CALCULADO] GO IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK]')) DROP VIEW [RDX_V_STOCK] GO IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_VENTAS]')) DROP VIEW [RDX_V_STOCK_VENTAS] GO IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_INVENTARIO]')) DROP VIEW [RDX_V_STOCK_INVENTARIO] GO IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_VARELA]')) DROP VIEW [RDX_V_STOCK_VARELA] GO /*--------------- SQL ---------------*/ CREATE VIEW RDX_V_STOCK_VARELA AS SELECT ESTOQUE_PRODUTOS.FILIAL, ESTOQUE_PRODUTOS.PRODUTO AS CODIGO, ESTOQUE_PRODUTOS.COR_PRODUTO AS COLOR, PRODUCTO = PRODUTOS.DESC_PRODUTO, PRODUTOS.TIPO_PRODUTO, PRODUTOS.GRUPO_PRODUTO, COLECCION = PRODUTOS.COLECAO, CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES1 ELSE 0 END AS K36, CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES2 ELSE ESTOQUE_PRODUTOS.ES1 END AS K38, CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES3 ELSE ESTOQUE_PRODUTOS.ES2 END AS K40, CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES4 ELSE ESTOQUE_PRODUTOS.ES3 END AS K42, CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES5 ELSE ESTOQUE_PRODUTOS.ES4 END AS K44, CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES6 ELSE ESTOQUE_PRODUTOS.ES5 END AS K46, CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES7 ELSE ESTOQUE_PRODUTOS.ES6 END AS K48, ESTOQUE_PRODUTOS.ESTOQUE as KT FROM ESTOQUE_PRODUTOS LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = ESTOQUE_PRODUTOS.PRODUTO) WHERE FILIAL LIKE '%VARELA IMAGEN Y DISEÑO%' GO /*--------------- SQL ---------------*/ CREATE VIEW RDX_V_STOCK_INVENTARIO AS SELECT FECHA = ISNULL(RDX_V_INVENTARIOEDI.FECHA, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.FECHA, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FECHA, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.FECHA))), CENTRO = ISNULL(RDX_V_INVENTARIOEDI.CENTRO, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CENTRO, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CENTRO, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CENTRO))), FILIAL = ISNULL(RDX_V_INVENTARIOEDI.FILIAL, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.FILIAL, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FILIAL, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.FILIAL))), CODIGO = ISNULL(RDX_V_INVENTARIOEDI.CODIGO, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CODIGO, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CODIGO, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CODIGO))), PRODUCTO = ISNULL(RDX_V_INVENTARIOEDI.PRODUCTO, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.PRODUCTO, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.PRODUCTO, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.PRODUCTO))), COLOR = ISNULL(RDX_V_INVENTARIOEDI.COLOR, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.COLOR, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.COLOR, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.COLOR))), TALLA = ISNULL(RDX_V_INVENTARIOEDI.TALLA, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.TALLA, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TALLA, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.TALLA))), CANTIDAD = ISNULL(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CANTIDAD, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CANTIDAD, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CANTIDAD, RDX_V_INVENTARIOEDI.CANTIDAD))), OPERACION = CASE RDX_V_INVENTARIOEDI.TIPOCANT WHEN '194' THEN 'R' WHEN '46' THEN 'E' WHEN '145' THEN 'RM' WHEN '48' THEN 'S' WHEN '61' THEN 'D' WHEN '65' THEN 'T' ELSE CASE WHEN RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CANTIDAD IS NOT NULL THEN 'R' WHEN RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CANTIDAD IS NOT NULL THEN 'D' ELSE RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TIPO END END FROM RDX_V_INVENTARIOEDI FULL OUTER JOIN RDX_V_RECEPCION_AJUSTES_DESGLOSADO ON (RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND (RDX_V_INVENTARIOEDI.CENTRO = RDX_V_INVENTARIOEDI.CENTRO2) AND (RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND (RDX_V_RECEPCION_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND (RDX_V_RECEPCION_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND (RDX_V_RECEPCION_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA) FULL OUTER JOIN RDX_V_TRASPASOS_AJUSTES_DESGLOSADO ON (RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND (RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CENTRO2 = RDX_V_INVENTARIOEDI.CENTRO2) AND (RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND (RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND (RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND (RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA) AND (RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TIPO = RDX_V_INVENTARIOEDI.TIPOCANT) FULL OUTER JOIN RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO ON (RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND (RDX_V_INVENTARIOEDI.CENTRO = RDX_V_INVENTARIOEDI.CENTRO2) AND (RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND (RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND (RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND (RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA) GO /*--------------- SQL ---------------*/ CREATE VIEW RDX_V_STOCK_VENTAS AS SELECT PERVENINI AS FECHA, DAY(PERVENINI) AS DIA, DATENAME(DW, PERVENINI) DIASEMANA, DATENAME(MONTH, PERVENINI) AS MES, YEAR(PERVENINI) AS ANO, EANLUG AS CENTRO, FILIAL AS FILIAL, CODIGO = ISNULL(PRODUTO, '107CH.EN.01'), DESC_PRODUTO AS PRODUCTO, GRUPO_PRODUTO AS GRUPOPRODUCTO, TIPO_PRODUTO AS TIPOPRODUCTO, COLECAO AS COLECCION, COLOR = ISNULL(COR_PRODUTO, '300'), GRADE AS TALLA, CANTIDAD = ISNULL(CANVEN, 0) + CASE WHEN ISNULL(CANVENNET, 0) < 0 THEN ISNULL(CANVENNET, 0) ELSE 0 END + ISNULL(CANESP, 0) FROM RDX_V_VENTASEDI_RESUELTAS WHERE NOT ((DESC_PRODUTO LIKE '%ERROR REFERENCIA%') AND ((VALVEN < 1) AND (VALVEN > 0))) /* QUITAR COMPOSTURAS */ GO /*--------------- SQL ---------------*/ CREATE VIEW RDX_V_STOCK AS SELECT FECHA = ISNULL(RDX_V_STOCK_INVENTARIO.FECHA, RDX_V_STOCK_VENTAS.FECHA), CENTRO = ISNULL(RDX_V_STOCK_INVENTARIO.CENTRO, RDX_V_STOCK_VENTAS.CENTRO), FILIAL = ISNULL(RDX_V_STOCK_INVENTARIO.FILIAL, RDX_V_STOCK_VENTAS.FILIAL), CODIGO = ISNULL(RDX_V_STOCK_INVENTARIO.CODIGO, RDX_V_STOCK_VENTAS.CODIGO), PRODUCTO = ISNULL(RDX_V_STOCK_INVENTARIO.PRODUCTO, RDX_V_STOCK_VENTAS.PRODUCTO), TIPO_PRODUCTO = PRODUTOS.TIPO_PRODUTO, GRUPO_PRODUCTO = PRODUTOS.GRUPO_PRODUTO, COLECCION = PRODUTOS.COLECAO, COLOR = ISNULL(RDX_V_STOCK_INVENTARIO.COLOR, RDX_V_STOCK_VENTAS.COLOR), E36 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) WHEN '36' THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'RM' THEN 0 WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), E38 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '38') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'S')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'RM' THEN 0 WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), E40 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '40') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'M')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'RM' THEN 0 WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), E42 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '42') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'L')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'RM' THEN 0 WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), E44 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '44') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'XL')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'RM' THEN 0 WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), E46 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) WHEN '46' THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'RM' THEN 0 WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), E48 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) WHEN '48' THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'RM' THEN 0 WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), S36 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) WHEN '36' THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), S38 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '38') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'S')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), S40 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '40') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'M')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), S42 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '42') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'L')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), S44 = SUM(CASE WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '44') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'XL')) THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), S46 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) WHEN '46' THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END), S48 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) WHEN '48' THEN CASE RDX_V_STOCK_INVENTARIO.OPERACION WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1) ELSE 0 END + CASE WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN RDX_V_STOCK_VENTAS.CANTIDAD * (-1) ELSE 0 END END) FROM RDX_V_STOCK_INVENTARIO FULL OUTER JOIN RDX_V_STOCK_VENTAS ON (RDX_V_STOCK_INVENTARIO.CENTRO = RDX_V_STOCK_VENTAS.CENTRO) AND (RDX_V_STOCK_INVENTARIO.CODIGO = RDX_V_STOCK_VENTAS.CODIGO) AND (RDX_V_STOCK_INVENTARIO.COLOR = RDX_V_STOCK_VENTAS.COLOR) AND (RDX_V_STOCK_INVENTARIO.TALLA = RDX_V_STOCK_VENTAS.TALLA) AND (RDX_V_STOCK_INVENTARIO.FECHA = RDX_V_STOCK_VENTAS.FECHA) LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = ISNULL(RDX_V_STOCK_INVENTARIO.CODIGO, RDX_V_STOCK_VENTAS.CODIGO)) GROUP BY ISNULL(RDX_V_STOCK_INVENTARIO.FECHA, RDX_V_STOCK_VENTAS.FECHA), ISNULL(RDX_V_STOCK_INVENTARIO.CENTRO, RDX_V_STOCK_VENTAS.CENTRO), ISNULL(RDX_V_STOCK_INVENTARIO.FILIAL, RDX_V_STOCK_VENTAS.FILIAL), ISNULL(RDX_V_STOCK_INVENTARIO.CODIGO, RDX_V_STOCK_VENTAS.CODIGO), ISNULL(RDX_V_STOCK_INVENTARIO.PRODUCTO, RDX_V_STOCK_VENTAS.PRODUCTO), PRODUTOS.TIPO_PRODUTO, PRODUTOS.GRUPO_PRODUTO, PRODUTOS.COLECAO, ISNULL(RDX_V_STOCK_INVENTARIO.COLOR, RDX_V_STOCK_VENTAS.COLOR) GO /*--------------- SQL ---------------*/ CREATE VIEW RDX_V_STOCK_CALCULADO AS SELECT FECHA, CENTRO, FILIAL, CODIGO, PRODUCTO, TIPO_PRODUCTO, GRUPO_PRODUCTO, COLECCION, COLOR, E36, E38, E40, E42, E44, E46, E48, TE = ISNULL(E36, 0) + ISNULL(E38, 0) + ISNULL(E40, 0) + ISNULL(E42, 0) + ISNULL(E44, 0) + ISNULL(E46, 0) + ISNULL(E48, 0), S36, S38, S40, S42, S44, S46, S48, TS = ISNULL(S36, 0) + ISNULL(S38, 0) + ISNULL(S40, 0) + ISNULL(S42, 0) + ISNULL(S44, 0) + ISNULL(S46, 0) + ISNULL(S48, 0), K36 = ISNULL(E36, 0) + ISNULL(S36, 0), K38 = ISNULL(E38, 0) + ISNULL(S38, 0), K40 = ISNULL(E40, 0) + ISNULL(S40, 0), K42 = ISNULL(E42, 0) + ISNULL(S42, 0), K44 = ISNULL(E44, 0) + ISNULL(S44, 0), K46 = ISNULL(E46, 0) + ISNULL(S46, 0), K48 = ISNULL(E48, 0) + ISNULL(S48, 0), KT = ISNULL(E36, 0) + ISNULL(E38, 0) + ISNULL(S38, 0) + ISNULL(E40, 0) + ISNULL(S40, 0) + ISNULL(E42, 0) + ISNULL(S42, 0) + ISNULL(E44, 0) + ISNULL(S44, 0) + ISNULL(E46, 0) + ISNULL(S46, 0) + ISNULL(E48, 0) + ISNULL(S48, 0) FROM RDX_V_STOCK GO /*--------------- SQL ---------------*/ /*AQUI TENGO INCLUIDAS LAS S CON LAS 38 LA M CON LA 40..... EL PROBLEMA LO TENEMOS AL HACER EL JOIN CON RDX_TALLAS QUE TENDRÁ TODAS (DEBEREMOS ELEGIR SOLO LAS DE TIPO1(38,40,42,44,48) */ /*Y NO LAS DE TIPO2(S,M,L,XL)*/ CREATE VIEW RDX_V_STOCK_CALCULADO_DESGLOSADO AS SELECT FECHA, CENTRO, FILIAL, CODIGO, PRODUCTO, TIPO_PRODUCTO, GRUPO_PRODUCTO, COLECCION, COLOR, RDX_TALLAS.TALLA, CANTIDAD = CASE RDX_TALLAS.TALLA WHEN '36' THEN RDX_V_STOCK_CALCULADO.K36 WHEN '38' THEN RDX_V_STOCK_CALCULADO.K38 WHEN '40' THEN RDX_V_STOCK_CALCULADO.K40 WHEN '42' THEN RDX_V_STOCK_CALCULADO.K42 WHEN '44' THEN RDX_V_STOCK_CALCULADO.K44 WHEN '46' THEN RDX_V_STOCK_CALCULADO.K46 WHEN '48' THEN RDX_V_STOCK_CALCULADO.K48 END FROM RDX_TALLAS, RDX_V_STOCK_CALCULADO WHERE RDX_TALLAS.TIPO_TALLAJE = 1 GO /*--------------- SQL ---------------*/ /*PROBLEMA CON TALLA RDX_ULTIMO_INVENTARIO VIENE LAS TALLAS DE TIPO2 Y EL RDX_STOK_CALCULADO_DESGLOSADO YA HEMOS METIDO LS TALLAS DE TIPO2 EN TIPO1*/ /*El problema se arregla en la vista RDX_V_ULTIMO_INVENTARIO*/ CREATE VIEW RDX_V_INVENTARIO_STOCK_DESGLOSADO AS SELECT ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.FECHA, RDX_V_ULTIMO_INVENTARIO.FECHA) as FECHA, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.CENTRO, RDX_V_ULTIMO_INVENTARIO.CENTRO) as CENTRO, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.FILIAL, RDX_V_ULTIMO_INVENTARIO.FILIAL) as FILIAL, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.CODIGO, RDX_V_ULTIMO_INVENTARIO.CODIGO) as CODIGO, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.PRODUCTO, RDX_V_ULTIMO_INVENTARIO.PRODUCTO) as PRODUCTO, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.COLOR, RDX_V_ULTIMO_INVENTARIO.COLOR) as COLOR, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.TALLA, RDX_V_ULTIMO_INVENTARIO.TALLA) as TALLA, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.TIPO_PRODUCTO, RDX_V_ULTIMO_INVENTARIO.TIPO_PRODUCTO) as TIPO_PRODUCTO, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.GRUPO_PRODUCTO, RDX_V_ULTIMO_INVENTARIO.GRUPO_PRODUCTO) as GRUPO_PRODUCTO, ISNULL(RDX_V_STOCK_CALCULADO_DESGLOSADO.COLECCION, RDX_V_ULTIMO_INVENTARIO.COLECCION) as COLECCION, RDX_V_STOCK_CALCULADO_DESGLOSADO.CANTIDAD as CANTIDAD_STOCK, RDX_V_ULTIMO_INVENTARIO.CANTIDAD as CANTIDAD_INVENTARIO FROM RDX_V_ULTIMO_INVENTARIO FULL OUTER JOIN RDX_V_STOCK_CALCULADO_DESGLOSADO ON (RDX_V_ULTIMO_INVENTARIO.FILIAL = RDX_V_STOCK_CALCULADO_DESGLOSADO.CENTRO) AND (RDX_V_ULTIMO_INVENTARIO.CODIGO = RDX_V_STOCK_CALCULADO_DESGLOSADO.CODIGO) AND (RDX_V_ULTIMO_INVENTARIO.COLOR = RDX_V_STOCK_CALCULADO_DESGLOSADO.COLOR) AND (RDX_V_ULTIMO_INVENTARIO.TALLA = RDX_V_STOCK_CALCULADO_DESGLOSADO.TALLA) AND (RDX_V_ULTIMO_INVENTARIO.FECHA = RDX_V_STOCK_CALCULADO_DESGLOSADO.FECHA) GO /*--------------- SQL ---------------*/ CREATE VIEW RDX_V_CONTROL_INVENTARIO AS select FECHA, CENTRO, FILIAL, CODIGO, PRODUCTO, COLOR, TIPO_PRODUCTO, GRUPO_PRODUCTO, COLECCION, I36 = SUM(CASE TALLA WHEN '36' THEN CANTIDAD_INVENTARIO ELSE 0 END) ,I38 = SUM(CASE TALLA WHEN '38' THEN CANTIDAD_INVENTARIO ELSE 0 END) ,I40 = SUM(CASE TALLA WHEN '40' THEN CANTIDAD_INVENTARIO ELSE 0 END) ,I42 = SUM(CASE TALLA WHEN '42' THEN CANTIDAD_INVENTARIO ELSE 0 END) ,I44 = SUM(CASE TALLA WHEN '44' THEN CANTIDAD_INVENTARIO ELSE 0 END) ,I46 = SUM(CASE TALLA WHEN '46' THEN CANTIDAD_INVENTARIO ELSE 0 END) ,I48 = SUM(CASE TALLA WHEN '48' THEN CANTIDAD_INVENTARIO ELSE 0 END) ,K36 = SUM(CASE TALLA WHEN '36' THEN CANTIDAD_STOCK ELSE 0 END) ,K38 = SUM(CASE TALLA WHEN '38' THEN CANTIDAD_STOCK ELSE 0 END) ,K40 = SUM(CASE TALLA WHEN '40' THEN CANTIDAD_STOCK ELSE 0 END) ,K42 = SUM(CASE TALLA WHEN '42' THEN CANTIDAD_STOCK ELSE 0 END) ,K44 = SUM(CASE TALLA WHEN '44' THEN CANTIDAD_STOCK ELSE 0 END) ,K46 = SUM(CASE TALLA WHEN '46' THEN CANTIDAD_STOCK ELSE 0 END) ,K48 = SUM(CASE TALLA WHEN '48' THEN CANTIDAD_STOCK ELSE 0 END) from RDX_V_INVENTARIO_STOCK_DESGLOSADO group by FECHA, CENTRO, FILIAL, CODIGO, PRODUCTO, COLOR, TIPO_PRODUCTO, GRUPO_PRODUCTO, COLECCION GO /*--------------- SQL ---------------*/