USE [NSXShared] GO /****** Object: StoredProcedure [SharedDB].[ObtenerInformacionSyscom] Script Date: 13/08/2024 10:18:16 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: Sistemas Insepet Ltda (MR) -- Create date: 05/12/2022 -- Description: Obtiene información de ventas para exportar a Syscom TX15 -- ============================================= ALTER PROCEDURE [SharedDB].[ObtenerInformacion] -- Add the parameters for the stored procedure here @FechaInicial DateTime = NULL, @FechaFinal DateTime = NULL, @Equipo int = NULL, @Cara int = NULL, @Posicion int = NULL, @Isla int = NULL, @CodProducto int = NULL, @IdTipoTransaccion int = NULL, @Turno int = NULL, @Corte int = NULL, @CedulaVendedor int = NULL, @Consecutivo int = NULL AS BEGIN SET NOCOUNT ON; SELECT iv.[Consecutivo] ,iv.[ConsecutivoDetalle] ,iv.[Prefijo] ,iv.[Factura] ,iv.[Equipo] ,iv.[Cara] ,iv.[Posicion] ,iv.[Manguera] ,iv.[Isla] ,iv.[CodProducto] ,iv.[Producto] ,iv.[Cantidad] ,iv.[ValorUnitario] ,iv.[ValorTotal] as ValorTotalOld ,iv.[FechaInicial] ,iv.[FechaFinal] ,iv.[LecturaVolumenInicial] ,iv.[LecturaVolumenFinal] ,iv.[LecturaDineroInicial] ,iv.[LecturaDineroFinal] ,CASE WHEN iv.FormaPago = 'BPS' THEN 4 WHEN iv.FormaPago = 'SOD' THEN 4 WHEN iv.FormaPago = 'PTS' THEN 4 ELSE iv.IdTipoTransaccion END as IdTipoTransaccion --[IdTipoTransaccion] ,CASE WHEN iv.FormaPago = 'BPS' THEN 'Efectivo' WHEN iv.FormaPago = 'SOD'AND iv.FENumeroDocumento IS NULL THEN 'Efectivo' WHEN iv.FormaPago = 'PTS' THEN 'Efectivo' ELSE iv.TipoTransaccion END as TipoTransaccion --[TipoTransaccion] ,CASE WHEN iv.IdFormaPago = 22 THEN 22 WHEN iv.IdFormaPago = 23 THEN 23 WHEN iv.IdFormaPago = 34 THEN 34 ELSE ISNULL(iv.[IdFormaPago], 100+iv.IdTipoTransaccion) END as IdFormaPago ,ISNULL(iv.[FormaPago], iv.TipoTransaccion) as FormaPago ,iv.[Cuenta] ,CASE WHEN iv.IdTipoTransaccion in (2,3,4,5) THEN iv.NIT WHEN iv.NIT IS NULL THEN iv.FENumeroDocumento ELSE iv.FENumeroDocumento END as NIT --WHEN FormaPago = 'PTS' THEN '860005223' ELSE NIT END as NIT --[NIT] ,iv.[Placa] ,iv.[IdRom] ,iv.[Kilometraje] ,iv.[CedulaConductor] ,iv.[NombreConductor] ,iv.[Turno] ,iv.[CedulaVendedor] ,iv.[NombreVendedor] ,iv.[Corte] ,iv.[ValorFP] as ValorTotal ,iv.[FENumeroFactura] as NoVale ,CASE WHEN iv.IdTipoTransaccion in (2,3,4,5) THEN iv.NIT ELSE iv.FENumeroDocumento END as Identificacion ,iv.FENumeroDocumento ,CASE WHEN iv.FENumeroDocumento = '22222222222' THEN 'CONSUMIDOR FINAL' ELSE iv.FENombreCliente END as FENombreCliente ,iv.FETipoDocumento ,iv.FEDigitoVerificacion ,CASE WHEN iv.FENumeroDocumento = '22222222222' THEN 'AK 24 62 - 39' WHEN iv.FEDireccion = '' THEN cfe.[Direccion] WHEN iv.FEDireccion IS NULL THEN cfe.Direccion ELSE iv.FEDireccion END as FEDireccion ,CASE WHEN iv.FENumeroDocumento = '22222222222' THEN '3164311031' WHEN iv.FETelefono = '' THEN cfe.Telefono WHEN iv.FETelefono IS NULL THEN cfe.Telefono ELSE iv.FETelefono END as FETelefono ,isnull(cfe.[Email], 'facturae@inversionesautomotrices.co') as FECorreo FROM [SharedDB].[InfoVentas] iv left join EstacionNSX.FElectronica.ClienteFE cfe on cfe.Documento = iv.FENumeroDocumento WHERE iv.FechaFinal BETWEEN ISNULL(@FechaInicial, (select min(FechaFinal) from [SharedDB].InfoVentas)) and ISNULL(@FechaFinal, GETDATE()) and iv.Equipo = isnull(@Equipo, iv.Equipo) and iv.Cara = isnull(@Cara, iv.Cara) and iv.posicion = isnull(@Posicion, iv.Posicion) and iv.isla = isnull(@Isla, iv.Isla) and iv.CodProducto = isnull(@CodProducto, iv.CodProducto) and iv.IdTipoTransaccion = isnull(@IdTipoTransaccion, iv.IdTipoTransaccion) and iv.Turno = isnull(@Turno, iv.Turno) and iv.Corte = isnull(@Corte, iv.Corte) and iv.CedulaVendedor = isnull(@CedulaVendedor, iv.CedulaVendedor) and iv.Consecutivo = ISNULL(@Consecutivo, iv.Consecutivo) union all SELECT iv.[Consecutivo] ,iv.[ConsecutivoDetalle] ,iv.[Prefijo] ,iv.[Factura] ,iv.[Equipo] ,iv.[Cara] ,iv.[Posicion] ,iv.[Manguera] ,iv.[Isla] ,iv.[CodProducto] ,iv.[Producto] ,iv.[Cantidad] ,iv.[ValorUnitario] ,iv.[ValorTotal] as ValorTotalOld ,iv.[FechaInicial] ,iv.[FechaFinal] ,iv.[LecturaVolumenInicial] ,iv.[LecturaVolumenFinal] ,iv.[LecturaDineroInicial] ,iv.[LecturaDineroFinal] ,iv.[IdTipoTransaccion] ,'Efectivo' as TipoTransaccion ,101 as IdFormaPago ,'Efectivo' as FormaPago ,iv.[Cuenta] ,iv.[NIT] ,iv.[Placa] ,iv.[IdRom] ,iv.[Kilometraje] ,iv.[CedulaConductor] ,iv.[NombreConductor] ,iv.[Turno] ,iv.[CedulaVendedor] ,iv.[NombreVendedor] ,iv.[Corte] ,iv.ValorTotal - SUM(iv.[ValorFP]) ValorTotal ,iv.[FENumeroFactura] as NoVale ,iv.[FENumeroDocumento] as Identificacion ,iv.FENumeroDocumento ,CASE WHEN iv.FENumeroDocumento = '22222222222' THEN 'CONSUMIDOR FINAL' ELSE iv.FENombreCliente END as FENombreCliente ,iv.FETipoDocumento ,iv.FEDigitoVerificacion ,CASE WHEN iv.FENumeroDocumento = '22222222222' THEN 'AK 24 62 - 39' WHEN iv.FEDireccion = '' THEN cfe.[Direccion] WHEN iv.FEDireccion IS NULL THEN cfe.Direccion ELSE iv.FEDireccion END as FEDireccion ,CASE WHEN iv.FENumeroDocumento = '22222222222' THEN '3164311031' WHEN iv.FETelefono = '' THEN cfe.Telefono WHEN iv.FETelefono IS NULL THEN cfe.Telefono ELSE iv.FETelefono END as FETelefono ,isnull(cfe.[Email], 'facturae@inversionesautomotrices.co') as FECorreo FROM [SharedDB].[InfoVentas] iv left join EstacionNSX.FElectronica.ClienteFE cfe on cfe.Documento = iv.FENumeroDocumento WHERE iv.FechaFinal BETWEEN ISNULL(@FechaInicial, (select min(FechaFinal) from [SharedDB].InfoVentas)) and ISNULL(@FechaFinal, GETDATE()) and iv.Equipo = isnull(@Equipo, iv.equipo) and iv.Cara = isnull(@Cara, iv.Cara) and iv.posicion = isnull(@Posicion, iv.Posicion) and iv.isla = isnull(@Isla, iv.Isla) and iv.CodProducto = isnull(@CodProducto, iv.CodProducto) and iv.IdTipoTransaccion = isnull(@IdTipoTransaccion, iv.IdTipoTransaccion) and iv.Turno = isnull(@Turno, iv.Turno) and iv.Corte = isnull(@Corte, iv.Corte) and iv.CedulaVendedor = isnull(@CedulaVendedor, iv.CedulaVendedor) and iv.Consecutivo = ISNULL(@Consecutivo, iv.Consecutivo) group by iv.Consecutivo, iv.ConsecutivoDetalle, iv.Prefijo, iv.Factura, iv.Equipo, iv.Cara, iv.Posicion, iv.Manguera, iv.Isla, iv.CodProducto, iv.Producto, iv.Cantidad, iv.ValorUnitario, iv.ValorTotal, iv.FechaInicial, iv.FechaFinal, iv.LecturaVolumenInicial, iv.LecturaVolumenFinal, iv.LecturaDineroInicial, iv.LecturaDineroFinal, iv.IdTipoTransaccion, iv.TipoTransaccion, --IdFormaPago, --FormaPago, iv.Cuenta, iv.NIT, iv.Placa, iv.IdRom, iv.Kilometraje, iv.CedulaConductor, iv.NombreConductor, iv.Turno, iv.CedulaVendedor, iv.NombreVendedor, iv.Corte, iv.FENumeroFactura, iv.FENumeroDocumento, iv.FENombreCliente, iv.FETipoDocumento, iv.FEDigitoVerificacion, iv.FEDireccion, iv.FETelefono, cfe.Documento, cfe.RazonSocial, cfe.TipoDocumento, cfe.DV, cfe.Direccion, cfe.Telefono, cfe.Email Having ValorTotal <> SUM(iv.ValorFP) order by iv.Consecutivo END