USE [PROCESOXML] GO /****** Object: StoredProcedure [dbo].[SP_EXPORTACIONES_PARA_DESCARGAR] Script Date: 19/06/2018 12:53:19 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --ALTER VIEW V_EXPORTACIONES_PARA_DESCARGAR --as ALTER PROCEDURE [dbo].[SP_EXPORTACIONES_PARA_DESCARGAR] ( @fecha_de_oficializacion_desde DATETIME, @fecha_de_oficializacion_hasta DATETIME, @codigo_producto NVARCHAR(50), @exportacion NVARCHAR(50) ) AS select CODIGO_PRODUCTO = CTIT_PRODUCTOS.Codigo, CANTIDAD = SUM(CONVERT(DECIMAL, ITEMS_SUBITEMS.CANTIDAD_DECLARADA)), CARATULA_CARATULA.MONTO_FOB, EXPORTACION = CARATULA_CARATULA.DESPACHO, CARATULA_CARATULA.FECHA_OFICIALIZACION, FECHA_LIBERADO = (SELECT top 1 cast(FechaMovEstado as Datetime) FROM ProcesoXML.dbo.[Movimientos_Estados_Despachos] WHERE (idn_despacho = CARATULA_CARATULA.DESPACHO) and ( ( ( (CHARINDEX('IDA',IDN_DESPACHO ) > 0) or (CHARINDEX('IT',IDN_DESPACHO ) > 0) or (CHARINDEX('ET', IDN_DESPACHO) > 0) ) and [Id_Estado] = 1) Or ([Id_Estado] = 3) ) ) from ITEMS_SUBITEMS INNER JOIN CTIT_PRODUCTOS ON ITEMS_SUBITEMS.SUFIJOS_DE_VALOR LIKE '%' + CTIT_PRODUCTOS.CODIGO + '%' INNER JOIN CARATULA_CARATULA ON ITEMS_SUBITEMS.IDN_DESPACHO=CARATULA_CARATULA.DESPACHO --INNER JOIN ITEMS_VENTAJAS ON ITEMS_SUBITEMS.IDN_DESPACHO = ITEMS_VENTAJAS.IDN_DESPACHO WHERE --CONVERT(DATETIME, CARATULA_CARATULA.FECHA_OFICIALIZACION) >'01-01-2017' --AND ITEMS_VENTAJAS.CODIGO ='EXPOREPOSTOCK' CARATULA_CARATULA.DESTINACION IN ('EC01','EC18','ECA1','ECA3','ECR1','EC01') AND (@fecha_de_oficializacion_desde is null or CARATULA_CARATULA.FECHA_OFICIALIZACION BETWEEN @fecha_de_oficializacion_desde AND @fecha_de_oficializacion_hasta) AND (@fecha_de_oficializacion_desde is null or CARATULA_CARATULA.FECHA_OFICIALIZACION >= @fecha_de_oficializacion_desde) AND (@codigo_producto is null or CTIT_PRODUCTOS.Codigo = @codigo_producto) AND (@exportacion is null or CARATULA_CARATULA.DESPACHO = @exportacion) AND NOT EXISTS ( --La vista V_DESPACHOS_CTIT_STOCK_EXPO tambien contempla la tabla ctit_stock_pendiente SELECT 1 FROM V_DESPACHOS_CTIT_STOCK_EXPO WHERE ITEMS_SUBITEMS.IDN_DESPACHO = V_DESPACHOS_CTIT_STOCK_EXPO.EC_EXPO AND ITEMS_SUBITEMS.SUFIJOS_DE_VALOR LIKE '%' + V_DESPACHOS_CTIT_STOCK_EXPO.CODIGO_DE_PRODUCTO + '%' AND ITEMS_SUBITEMS.IDN_ITEM = V_DESPACHOS_CTIT_STOCK_EXPO.NUMERO_DE_ITEM ) GROUP BY CTIT_PRODUCTOS.Codigo, ITEMS_SUBITEMS.CANTIDAD_DECLARADA, CARATULA_CARATULA.DESPACHO, CARATULA_CARATULA.FECHA_OFICIALIZACION, CARATULA_CARATULA.MONTO_FOB