Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
7| Name | Data Type | Length | Description |
|---|---|---|---|
| @cliente | int | 4 | |
| @periodo_desde | int | 4 | |
| @periodo_hasta | int | 4 | |
| @tipos_contratista | varchar | -1 | |
| @estado_doc | varchar | 10 | |
| @vencimiento_desde | datetime | 8 | |
| @vencimiento_hasta | datetime | 8 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- exec Imperium_reporte_documentacion_FULL 2028732,202304,202403,null,'V,I,N,R',null,null
-- EXEC Imperium_reporte_documentacion_full 7048064,'202405','202405',null,'V,N,I,R',null,null
-- EXEC Imperium_reporte_documentacion_full 9936068,202403,202502,NULL,'N,I,R'
CREATE OR ALTER PROCEDURE dbo.Imperium_reporte_documentacion_FULL
@cliente int,
@periodo_desde int,
@periodo_hasta int,
@tipos_contratista varchar(max),
@estado_doc varchar(10) = null,
@vencimiento_desde datetime = null,
@vencimiento_hasta datetime = null
AS
BEGIN
IF (@estado_doc IS NULL)
BEGIN
set @estado_doc = 'I,N,R'
END
if (@cliente = 70480640)
begin
set @cliente = 0
end
--set @estado_doc = 'I,N,R'
IF (@CLIENTE = 9936068)
BEGIN
--select * from clientes where nombre_cliente like '%akapol%'
/*declare @cliente int = 9936068
declare @estado_doc varchar(10)= 'N,I,R'
declare @periodo_desde INT = '202301'
declare @periodo_hasta INT = '202307'
*/
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
ESTADO = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
NULL as TIPO_RECURSO
/*,iif(led_cliente_contratista.verificacion='C','CLIENTE','FIDELITAS') AS QUIEN_VERIFICA */
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_contratista_periodo on (led_docs.contratista_1 = led_contratista_periodo.contratista
and led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_tipos_doc ON
(led_docs.tipo_doc = led_tipos_doc.tipo_doc
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN led_tipos_contratista ON
(led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
inner join ln_contrapartes on ln_contrapartes.id_imperium=led_contratistas.contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('C')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
AND led_contratistas.estado_CONTRATISTA = 'A'
and ln_contrapartes.activo=1
-- and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.estado_contratista, led_contratistas.codigo_interno, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2),
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO ,led_cliente_contratista.verificacion
UNION
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
CASE WHEN led_empleados.estado_empleado = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO
/*,iif(led_cliente_contratista.verificacion='C','CLIENTE','FIDELITAS') AS QUIEN_VERIFICA */
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
INNER JOIN led_cliente_empleado ON
(led_cliente_contratista.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
inner join ln_contrapartes on ln_contrapartes.id_imperium=led_contratistas.contratista
INNER JOIN led_empleados_periodo on (led_docs.empleado = led_empleados_periodo.empleado
and led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('E')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
AND led_contratistas.estado_CONTRATISTA = 'A'
and ln_contrapartes.activo=1
--and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_empleados.estado_empleado,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO, led_tipos_empleado.nombre_tipo_empleado ,led_cliente_contratista.verificacion
UNION
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
NULL AS CUIT_EMPLEADO,
CASE WHEN led_vehiculos.estado_vehiculo = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO
/*,iif(led_cliente_contratista.verificacion='C','CLIENTE','FIDELITAS') AS QUIEN_VERIFICA */
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_cliente_contratista.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
INNER JOIN led_vehiculos_periodo on (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
and led_docs.periodo = led_vehiculos_periodo.periodo)
inner join ln_contrapartes on ln_contrapartes.id_imperium=led_contratistas.contratista
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('V')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
AND led_contratistas.estado_CONTRATISTA = 'A'
and ln_contrapartes.activo=1
--and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_vehiculos.estado_vehiculo,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_vehiculo.nombre_tipo_vehiculo,led_cliente_contratista.verificacion
ORDER BY /*cliente asc, actividad asc, */razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
END
if (@tipos_contratista is not null and @cliente !=9936068 )
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
ESTADO = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
NULL as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_contratista_periodo on (led_docs.contratista_1 = led_contratista_periodo.contratista
and led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_tipos_doc ON
(led_docs.tipo_doc = led_tipos_doc.tipo_doc
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN led_tipos_contratista ON
(led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
INNER JOIN dbo.spListToTable_ORDERED(@tipos_contratista,',') splList ON led_tipos_contratista.tipo_contratista = splList.item
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('C')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.estado_contratista, led_contratistas.codigo_interno, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2),
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
CASE WHEN led_empleados.estado_empleado = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
INNER JOIN led_cliente_empleado ON
(led_cliente_contratista.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
INNER JOIN led_empleados_periodo on (led_docs.empleado = led_empleados_periodo.empleado
and led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@tipos_contratista,',') splList ON led_tipos_contratista.tipo_contratista = splList.item
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('E')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_empleados.estado_empleado,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_empleado.nombre_tipo_empleado
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
NULL AS CUIT_EMPLEADO,
CASE WHEN led_vehiculos.estado_vehiculo = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
left outer join led_tipos_vehiculo on led_tipos_vehiculo.tipo_vehiculo = led_vehiculos.tipo_vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_cliente_contratista.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
INNER JOIN led_vehiculos_periodo on (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
and led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@tipos_contratista,',') splList ON led_tipos_contratista.tipo_contratista = splList.item
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('V')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_vehiculos.estado_vehiculo,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_vehiculo.nombre_tipo_vehiculo
ORDER BY cliente asc, actividad asc, razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
ELSE /* REPORTE DOCUMENTACION */
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
ESTADO = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
NULL as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_contratista_periodo on (led_docs.contratista_1 = led_contratista_periodo.contratista
and led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_tipos_doc ON
(led_docs.tipo_doc = led_tipos_doc.tipo_doc
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN led_tipos_contratista ON
(led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('C')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.estado_contratista, led_contratistas.codigo_interno, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2),
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
CASE WHEN led_empleados.estado_empleado = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
INNER JOIN led_cliente_empleado ON
(led_cliente_contratista.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
INNER JOIN led_empleados_periodo on (led_docs.empleado = led_empleados_periodo.empleado
and led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('E')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_empleados.estado_empleado,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO, led_tipos_empleado.nombre_tipo_empleado
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
NULL AS CUIT_EMPLEADO,
CASE WHEN led_vehiculos.estado_vehiculo = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_cliente_contratista.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
INNER JOIN led_vehiculos_periodo on (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
and led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('V')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_vehiculos.estado_vehiculo,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_vehiculo.nombre_tipo_vehiculo
ORDER BY cliente asc, actividad asc, razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
END
GO
GO
-- exec Imperium_reporte_documentacion_FULL 2028732,202304,202403,null,'V,I,N,R',null,null
-- EXEC Imperium_reporte_documentacion_full 7048064,'202405','202405',null,'V,N,I,R',null,null
-- EXEC Imperium_reporte_documentacion_full 9936068,202403,202502,NULL,'N,I,R'
CREATE OR ALTER PROCEDURE dbo.Imperium_reporte_documentacion_FULL
@cliente int,
@periodo_desde int,
@periodo_hasta int,
@tipos_contratista varchar(max),
@estado_doc varchar(10) = null,
@vencimiento_desde datetime = null,
@vencimiento_hasta datetime = null
AS
BEGIN
IF (@estado_doc IS NULL)
BEGIN
set @estado_doc = 'I,N,R'
END
if (@cliente = 70480640)
begin
set @cliente = 0
end
--set @estado_doc = 'I,N,R'
IF (@CLIENTE = 9936068)
BEGIN
--select * from clientes where nombre_cliente like '%akapol%'
/*declare @cliente int = 9936068
declare @estado_doc varchar(10)= 'N,I,R'
declare @periodo_desde INT = '202301'
declare @periodo_hasta INT = '202307'
*/
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
ESTADO = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
NULL as TIPO_RECURSO
/*,iif(led_cliente_contratista.verificacion='C','CLIENTE','FIDELITAS') AS QUIEN_VERIFICA */
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_contratista_periodo on (led_docs.contratista_1 = led_contratista_periodo.contratista
and led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_tipos_doc ON
(led_docs.tipo_doc = led_tipos_doc.tipo_doc
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN led_tipos_contratista ON
(led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
inner join ln_contrapartes on ln_contrapartes.id_imperium=led_contratistas.contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('C')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
AND led_contratistas.estado_CONTRATISTA = 'A'
and ln_contrapartes.activo=1
-- and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.estado_contratista, led_contratistas.codigo_interno, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2),
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO ,led_cliente_contratista.verificacion
UNION
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
CASE WHEN led_empleados.estado_empleado = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO
/*,iif(led_cliente_contratista.verificacion='C','CLIENTE','FIDELITAS') AS QUIEN_VERIFICA */
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
INNER JOIN led_cliente_empleado ON
(led_cliente_contratista.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
inner join ln_contrapartes on ln_contrapartes.id_imperium=led_contratistas.contratista
INNER JOIN led_empleados_periodo on (led_docs.empleado = led_empleados_periodo.empleado
and led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('E')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
AND led_contratistas.estado_CONTRATISTA = 'A'
and ln_contrapartes.activo=1
--and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_empleados.estado_empleado,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO, led_tipos_empleado.nombre_tipo_empleado ,led_cliente_contratista.verificacion
UNION
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
NULL AS CUIT_EMPLEADO,
CASE WHEN led_vehiculos.estado_vehiculo = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO
/*,iif(led_cliente_contratista.verificacion='C','CLIENTE','FIDELITAS') AS QUIEN_VERIFICA */
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_cliente_contratista.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
INNER JOIN led_vehiculos_periodo on (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
and led_docs.periodo = led_vehiculos_periodo.periodo)
inner join ln_contrapartes on ln_contrapartes.id_imperium=led_contratistas.contratista
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('V')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
AND led_contratistas.estado_CONTRATISTA = 'A'
and ln_contrapartes.activo=1
--and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_vehiculos.estado_vehiculo,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_vehiculo.nombre_tipo_vehiculo,led_cliente_contratista.verificacion
ORDER BY /*cliente asc, actividad asc, */razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
END
if (@tipos_contratista is not null and @cliente !=9936068 )
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
ESTADO = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
NULL as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_contratista_periodo on (led_docs.contratista_1 = led_contratista_periodo.contratista
and led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_tipos_doc ON
(led_docs.tipo_doc = led_tipos_doc.tipo_doc
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN led_tipos_contratista ON
(led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
INNER JOIN dbo.spListToTable_ORDERED(@tipos_contratista,',') splList ON led_tipos_contratista.tipo_contratista = splList.item
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('C')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.estado_contratista, led_contratistas.codigo_interno, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2),
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
CASE WHEN led_empleados.estado_empleado = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
INNER JOIN led_cliente_empleado ON
(led_cliente_contratista.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
INNER JOIN led_empleados_periodo on (led_docs.empleado = led_empleados_periodo.empleado
and led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@tipos_contratista,',') splList ON led_tipos_contratista.tipo_contratista = splList.item
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('E')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_empleados.estado_empleado,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_empleado.nombre_tipo_empleado
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
NULL AS CUIT_EMPLEADO,
CASE WHEN led_vehiculos.estado_vehiculo = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
left outer join led_tipos_vehiculo on led_tipos_vehiculo.tipo_vehiculo = led_vehiculos.tipo_vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_cliente_contratista.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
INNER JOIN led_vehiculos_periodo on (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
and led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@tipos_contratista,',') splList ON led_tipos_contratista.tipo_contratista = splList.item
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('V')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_vehiculos.estado_vehiculo,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_vehiculo.nombre_tipo_vehiculo
ORDER BY cliente asc, actividad asc, razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
ELSE /* REPORTE DOCUMENTACION */
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
ESTADO = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
NULL as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_contratista_periodo on (led_docs.contratista_1 = led_contratista_periodo.contratista
and led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_tipos_doc ON
(led_docs.tipo_doc = led_tipos_doc.tipo_doc
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN led_tipos_contratista ON
(led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista)
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('C')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.estado_contratista, led_contratistas.codigo_interno, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2),
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
CASE WHEN led_empleados.estado_empleado = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
INNER JOIN led_cliente_empleado ON
(led_cliente_contratista.cliente = led_cliente_empleado.cliente
and led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_docs.tipo_doc = led_cliente_empleado.tipo_doc)
INNER JOIN led_empleados_periodo on (led_docs.empleado = led_empleados_periodo.empleado
and led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('E')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_empleados.estado_empleado,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO, led_tipos_empleado.nombre_tipo_empleado
UNION ALL
SELECT DISTINCT
clientes.nombre_cliente AS CLIENTE, led_tipos_contratista.nombre_tipo_contratista AS ACTIVIDAD, padrones.nombre_persona AS RAZON_SOCIAL,
padrones.identificacion AS CUIT, led_contratistas.codigo_interno as CODIGO_INTERNO,
CASE WHEN led_contratistas.estado_contratista = 'A' then 'ACTIVO' else 'NO ACTIVO' END as ESTADO_CONTRATISTA,
led_tipos_doc.NOMBRE_TIPO_DOC,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END
, left(led_docs.periodo,4) AS ANIO
, right(led_docs.periodo,2) AS MES
,iif(led_docs.led_seccion = 'E',pe.nombre_persona,led_vehiculos.dominio) AS RECURSO,
NULL AS CUIT_EMPLEADO,
CASE WHEN led_vehiculos.estado_vehiculo = 'A' then 'ACTIVO' else 'NO ACTIVO' end as ESTADO_RECURSO,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
estado = CASE led_docs.estado_doc
WHEN 'N' THEN 'PENDIENTE DE INGRESAR'
WHEN 'R' THEN 'RECHAZADO'
WHEN 'V' THEN 'VERIFICADO'
WHEN 'I' THEN 'PENDIENTE DE VERIFICAR'
END,
iif(led_docs.aprobacion_parcial = 1 AND led_docs.estado_doc = 'I','APROBACION PARCIAL','') as DETALLE,
SQ1.INFO as INFORMACION_DOC,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO
FROM led_cliente_contratista INNER JOIN
clientes ON led_cliente_contratista.cliente = clientes.cliente INNER JOIN
led_contratistas ON led_cliente_contratista.cliente = led_contratistas.cliente INNER JOIN
padrones ON padrones.id_padron = led_contratistas.id_padron INNER JOIN
led_docs ON led_contratistas.contratista = led_docs.contratista
INNER JOIN led_vehiculos ON led_vehiculos.vehiculo = led_docs.vehiculo
LEFT OUTER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_cliente_contratista.cliente = led_cliente_vehiculo.cliente
and led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc)
INNER JOIN led_vehiculos_periodo on (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
and led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_tipos_doc ON
led_docs.tipo_doc = led_tipos_doc.tipo_doc
INNER JOIN led_tipos_contratista ON
led_contratistas.tipo_contratista = led_tipos_contratista.tipo_contratista
INNER JOIN dbo.spListToTable_ORDERED(@estado_doc,',') listaEstados ON led_docs.estado_doc = listaEstados.item
LEFT OUTER JOIN led_empleados ON led_empleados.empleado = led_docs.empleado
LEFT OUTER JOIN padrones AS pe ON led_empleados.id_padron = pe.id_padron
LEFT OUTER JOIN
(select led_docs.doc_id, DATOS.titulo_campo + ': ' + isnull(DATOS.valor,'') as INFO
from led_docs
INNER JOIN
(select led_docs.doc_id,
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_texto),
ISNULL(CONVERT(VARCHAR,led_campos_doc.valor_numerico),
CONVERT(VARCHAR,led_campos_doc.valor_fecha)) ) as valor,
led_campos_tipo_doc.titulo_campo
from led_docs inner join led_campos_doc
on (led_campos_doc.tipo_doc = led_docs.tipo_doc AND led_campos_doc.doc_id = led_docs.doc_id)
inner join led_campos_tipo_doc
on (led_campos_doc.campo_tipo_doc = led_campos_tipo_doc.campo_tipo_doc AND led_campos_doc.tipo_doc = led_campos_tipo_doc.tipo_doc)
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) DATOS on led_docs.doc_id = DATOS.doc_id
where led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
and led_docs.cliente = @cliente) SQ1
ON led_docs.doc_id = SQ1.doc_id
WHERE led_tipos_doc.led_seccion in ('V')
AND led_tipos_doc.tipo_doc_lista IS NULL
and led_docs.cliente = @cliente
and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta
--and led_docs.fecha_tolerancia BETWEEN @vencimiento_desde AND @vencimiento_hasta
--and led_docs.estado_doc in (@estado_doc)
--AND led_contratistas.estado_CONTRATISTA = 'A'
and led_cliente_contratista.verificacion='F'
GROUP BY clientes.nombre_cliente, led_tipos_contratista.nombre_tipo_contratista, led_contratistas.codigo_interno, led_contratistas.estado_contratista, padrones.nombre_persona, padrones.identificacion, led_tipos_doc.nombre_tipo_doc, led_docs.led_seccion, left(led_docs.periodo,4)
, right(led_docs.periodo,2), led_vehiculos.estado_vehiculo,
pe.nombre_persona, pe.identificacion,led_docs.fecha_tolerancia,led_docs.estado_doc,led_docs.aprobacion_parcial,led_vehiculos.dominio, SQ1.INFO,
led_tipos_vehiculo.nombre_tipo_vehiculo
ORDER BY cliente asc, actividad asc, razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
END
GO
Depends On
20- dbo.clientes
- dbo.led_campos_doc
- dbo.led_campos_tipo_doc
- dbo.led_cliente_contratista
- dbo.led_cliente_empleado
- dbo.led_cliente_vehiculo
- dbo.led_contratista_periodo
- dbo.led_contratistas
- dbo.led_docs
- dbo.led_empleados
- dbo.led_empleados_periodo
- dbo.led_tipos_contratista
- dbo.led_tipos_doc
- dbo.led_tipos_empleado
- dbo.led_tipos_vehiculo
- dbo.led_vehiculos
- dbo.led_vehiculos_periodo
- dbo.LN_contrapartes
- dbo.padrones
- dbo.spListToTable_ORDERED
Used By
No items found