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 | date | 3 | |
| @periodo_hasta | date | 3 | |
| @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 2028732,202203,null,null
2046807993 - PAE
1758083682 - SUPERVIELLE
1226057645 - BBVA
3915936 - SAN ANDRES
1564570 - HIPOTECARIO
2028732 - INC
exec Imperium_reporte_documentacion_FULL2 2046807993,202209,202308,null,'N,I,V,R',null,null
PAE 2046807993
select * from clientes where nombre_cliente like '%hipotecario%' --1758083682,1226057645
exec Imperium_reporte_documentacion_FULL2 9936068,202207,202208,null,'N,I,V,R',null,null
exec Imperium_reporte_documentacion_FULL2 3915936,202309,202310,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1564570,202309,202310,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1226057645,'2023-08-01','2024-08-01',null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1758083682,202311,202410,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1226057645,202111,202210,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 2028732,202304,202403,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 2046807993,202307,202406,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 9936068,202311,202412,null,'N,I,V,R',null,null
select * from ln_indicadores where clave_indicador = 'CUMPLIMIENTO_ANUAL'
*/
--select * from clientes where nombre_cliente like '%inc %'
-- exec Imperium_reporte_documentacion_FULL2 1758083682,'2000-11-01','2029-01-31',null,'N,R,I,V',null,null
/*insert into ln_contrapartes_queue (contraparte,id_taken)
select contraparte,7 from ln_contrapartes where cliente = 1758083682 and activo=1
*/
-- exec Imperium_reporte_documentacion_FULL2 9936068,'2024-01-01','2026-01-01',null,'N,I,R',null,null
-- select * from led_tipos_contratista where nombre_tipo_contratista like '%oficiales%'
-- ver este exec imperium_reportes_especiales
/*
select * from led_contratistas where contratista in (3418,3448,8253)
select * from led_contratista_multi where contratista in (3418,3448,8253)
select id_imperium,* from ln_contrapartes where id_imperium in (3418,3448,8253)
select * from ln_contraparte_indicadores where contraparte in (189907,189910)
select ln_contrapartes.id_imperium,ln_contrapartes.activo,led_contratistas.* from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=1 and led_contratistas.estado_contratista = 'N'
update led_contratista_multi set activo=1 where activo=0 and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=1 and led_contratistas.estado_contratista = 'N')
update led_contratistas set estado_contratista = 'A' where estado_contratista='N' and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=1 and led_contratistas.estado_contratista = 'N')
update led_contratista_multi set activo=0 where activo=1 and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=0 and led_contratistas.estado_contratista = 'A')
update led_contratistas set estado_contratista = 'N' where estado_contratista='A' and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=0 and led_contratistas.estado_contratista = 'A')
*/
CREATE OR ALTER PROCEDURE dbo.Imperium_reporte_documentacion_FULL2
@cliente int,
@periodo_desde date,
@periodo_hasta date,
@tipos_contratista varchar(max),
@estado_doc varchar(10),
@vencimiento_desde datetime = null,
@vencimiento_hasta datetime = null
AS
BEGIN
/*
if (@periodo_desde is null) set @periodo_desde = (select dbo.periodoanual())
if (@periodo_hasta is null) set @periodo_hasta = (select dbo.periodovencido())
*/
if (@periodo_desde is null) set @periodo_desde = getdate()-30
if (@periodo_hasta is null) set @periodo_hasta = getdate() + 30
/*SET @periodo_hasta = 202202*/
declare @ind_cumpl int = (select indicador from ln_indicadores where clave_indicador = 'CUMPLIMIENTO_ANUAL')
IF (@estado_doc IS NULL)
BEGIN
set @estado_doc = 'N,R'
END
if (@tipos_contratista is not null)
/* contratistas */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
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
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 join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
/*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_contratistas.tipo_contratista=58 */
/* and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta*/
and led_docs.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* empleados */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
pe.nombre_persona as RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
iif(led_empleados.estado_empleado = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN led_contratistas ON led_empleados.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN padrones pe ON led_empleados.id_padron = pe.id_padron
inner join led_cliente_empleado ON (led_contratistas.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 clientes ON led_cliente_empleado.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratistas.tipo_contratista=58 */
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* vehiculos */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'vehiculoS'
WHEN 'V' THEN 'VEHICULOS'
END,
left(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
led_vehiculos.dominio as RECURSO,
NULL AS CUIT_EMPLEADO,
iif(led_vehiculos.estado_vehiculo = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_contratistas ON led_vehiculos.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_vehiculo ON (led_contratistas.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 clientes ON led_cliente_vehiculo.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratistas.tipo_contratista=58 */
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* Subcontratistas */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,ps.nombre_persona as SUBCONTRATISTA,
ps.identificacion AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs
INNER JOIN led_contratistas ON led_contratistas.contratista = led_docs.contratista_1
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN led_contratistas Sub ON led_contratistas.contratista=led_docs.contratista
INNER JOIN padrones ps ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
INNER JOIN led_subcontratista_periodo on (led_docs.contratista = led_subcontratista_periodo.subcontratista
and led_docs.periodo = led_subcontratista_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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratistas.tipo_contratista=58 */
/*AND led_tipos_contratista.tipo_contratista=242*/
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
ORDER BY cliente asc, actividad asc, razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
ELSE
-- exec Imperium_reporte_documentacion_FULL2 1226057645,'2023-08-01','2024-08-01',null,'N,R,I,V',null,null
/* contratistas */
SELECT distinct 'AA' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
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
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.contratista_1 = led_docs.contratista
-- and led_docs.periodo BETWEEN 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
-- and led_docs.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratista_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_contratista_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* empleados */
SELECT distinct 'BB' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
pe.nombre_persona as RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
iif(led_empleados.estado_empleado = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN led_contratistas ON led_empleados.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN padrones pe ON led_empleados.id_padron = pe.id_padron
inner join led_cliente_empleado ON (led_contratistas.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 clientes ON led_cliente_empleado.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
--and led_docs.ingresado between @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/* and led_empleados_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_empleados_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* vehiculos */
SELECT distinct 'CC' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
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 as DOCUMENTO,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'vehiculoS'
WHEN 'V' THEN 'VEHICULOS'
END,
left(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
led_vehiculos.dominio as RECURSO,
NULL AS CUIT_EMPLEADO,
iif(led_vehiculos.estado_vehiculo = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_contratistas ON led_vehiculos.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_vehiculo ON (led_contratistas.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 clientes ON led_cliente_vehiculo.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
--and led_docs.ingresado between @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_vehiculos_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_vehiculos_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* Subcontratistas */
SELECT distinct 'DD' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
null AS CLIENTE,
/*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 as DOCUMENTO,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'SUB CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END,
left(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
/*
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
*/
ps.nombre_persona as RECURSO,
ps.identificacion AS CUIT_EMPLEADO,
CASE WHEN sub.estado_contratista = 'A' then 'Activo' else 'No activo' END as ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,ps.nombre_persona as SUBCONTRATISTA,
ps.identificacion AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs
INNER JOIN led_contratistas ON led_contratistas.contratista = led_docs.contratista_1
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN led_contratistas Sub ON SUB.contratista=led_docs.contratista
INNER JOIN padrones ps ON Sub.id_padron = ps.id_padron
/*
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
*/
INNER JOIN led_subcontratista_periodo on (led_docs.contratista = led_subcontratista_periodo.subcontratista and led_docs.periodo = led_subcontratista_periodo.periodo)
left JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
left 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 join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
/*
INNER JOIN led_contratistas ON led_contratistas.contratista = led_docs.contratista_1
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN led_contratistas Sub ON SUB.contratista=led_docs.contratista
INNER JOIN padrones ps ON PS.id_padron = ps.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
INNER JOIN led_subcontratista_periodo on (led_docs.contratista = led_subcontratista_periodo.subcontratista
and led_docs.periodo = led_subcontratista_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 join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
*/
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 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
-- and led_docs.ingresado between @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/* and led_subcontratista_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_subcontratista_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
/*AND led_tipos_contratista.tipo_contratista=242*/
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
ORDER BY razon_social asc ,recurso asc,anio,mes, led_tipos_doc.nombre_tipo_doc asc
--ORDER BY razon_social asc,recurso asc
-- exec Imperium_reporte_documentacion_FULL2 9936068,'2025-01-01','2026-01-01',null,'N,I,R',null,null AGB
END
GO
GO
/*
exec Imperium_reporte_documentacion 2028732,202203,null,null
2046807993 - PAE
1758083682 - SUPERVIELLE
1226057645 - BBVA
3915936 - SAN ANDRES
1564570 - HIPOTECARIO
2028732 - INC
exec Imperium_reporte_documentacion_FULL2 2046807993,202209,202308,null,'N,I,V,R',null,null
PAE 2046807993
select * from clientes where nombre_cliente like '%hipotecario%' --1758083682,1226057645
exec Imperium_reporte_documentacion_FULL2 9936068,202207,202208,null,'N,I,V,R',null,null
exec Imperium_reporte_documentacion_FULL2 3915936,202309,202310,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1564570,202309,202310,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1226057645,'2023-08-01','2024-08-01',null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1758083682,202311,202410,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 1226057645,202111,202210,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 2028732,202304,202403,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 2046807993,202307,202406,null,'N,R,I,V',null,null
exec Imperium_reporte_documentacion_FULL2 9936068,202311,202412,null,'N,I,V,R',null,null
select * from ln_indicadores where clave_indicador = 'CUMPLIMIENTO_ANUAL'
*/
--select * from clientes where nombre_cliente like '%inc %'
-- exec Imperium_reporte_documentacion_FULL2 1758083682,'2000-11-01','2029-01-31',null,'N,R,I,V',null,null
/*insert into ln_contrapartes_queue (contraparte,id_taken)
select contraparte,7 from ln_contrapartes where cliente = 1758083682 and activo=1
*/
-- exec Imperium_reporte_documentacion_FULL2 9936068,'2024-01-01','2026-01-01',null,'N,I,R',null,null
-- select * from led_tipos_contratista where nombre_tipo_contratista like '%oficiales%'
-- ver este exec imperium_reportes_especiales
/*
select * from led_contratistas where contratista in (3418,3448,8253)
select * from led_contratista_multi where contratista in (3418,3448,8253)
select id_imperium,* from ln_contrapartes where id_imperium in (3418,3448,8253)
select * from ln_contraparte_indicadores where contraparte in (189907,189910)
select ln_contrapartes.id_imperium,ln_contrapartes.activo,led_contratistas.* from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=1 and led_contratistas.estado_contratista = 'N'
update led_contratista_multi set activo=1 where activo=0 and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=1 and led_contratistas.estado_contratista = 'N')
update led_contratistas set estado_contratista = 'A' where estado_contratista='N' and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=1 and led_contratistas.estado_contratista = 'N')
update led_contratista_multi set activo=0 where activo=1 and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=0 and led_contratistas.estado_contratista = 'A')
update led_contratistas set estado_contratista = 'N' where estado_contratista='A' and contratista in (
select led_contratistas.contratista from ln_contrapartes inner join led_contratistas on ln_contrapartes.id_imperium = led_contratistas.contratista
where ln_contrapartes.cliente = 9936068 and ln_contrapartes.activo=0 and led_contratistas.estado_contratista = 'A')
*/
CREATE OR ALTER PROCEDURE dbo.Imperium_reporte_documentacion_FULL2
@cliente int,
@periodo_desde date,
@periodo_hasta date,
@tipos_contratista varchar(max),
@estado_doc varchar(10),
@vencimiento_desde datetime = null,
@vencimiento_hasta datetime = null
AS
BEGIN
/*
if (@periodo_desde is null) set @periodo_desde = (select dbo.periodoanual())
if (@periodo_hasta is null) set @periodo_hasta = (select dbo.periodovencido())
*/
if (@periodo_desde is null) set @periodo_desde = getdate()-30
if (@periodo_hasta is null) set @periodo_hasta = getdate() + 30
/*SET @periodo_hasta = 202202*/
declare @ind_cumpl int = (select indicador from ln_indicadores where clave_indicador = 'CUMPLIMIENTO_ANUAL')
IF (@estado_doc IS NULL)
BEGIN
set @estado_doc = 'N,R'
END
if (@tipos_contratista is not null)
/* contratistas */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
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
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 join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
/*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_contratistas.tipo_contratista=58 */
/* and led_docs.periodo BETWEEN @periodo_desde AND @periodo_hasta*/
and led_docs.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* empleados */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
pe.nombre_persona as RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
iif(led_empleados.estado_empleado = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN led_contratistas ON led_empleados.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN padrones pe ON led_empleados.id_padron = pe.id_padron
inner join led_cliente_empleado ON (led_contratistas.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 clientes ON led_cliente_empleado.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratistas.tipo_contratista=58 */
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* vehiculos */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'vehiculoS'
WHEN 'V' THEN 'VEHICULOS'
END,
left(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
led_vehiculos.dominio as RECURSO,
NULL AS CUIT_EMPLEADO,
iif(led_vehiculos.estado_vehiculo = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_contratistas ON led_vehiculos.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_vehiculo ON (led_contratistas.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 clientes ON led_cliente_vehiculo.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratistas.tipo_contratista=58 */
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* Subcontratistas */
SELECT distinct led_docs.contratista_1,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,ps.nombre_persona as SUBCONTRATISTA,
ps.identificacion AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs
INNER JOIN led_contratistas ON led_contratistas.contratista = led_docs.contratista_1
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN led_contratistas Sub ON led_contratistas.contratista=led_docs.contratista
INNER JOIN padrones ps ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
INNER JOIN led_subcontratista_periodo on (led_docs.contratista = led_subcontratista_periodo.subcontratista
and led_docs.periodo = led_subcontratista_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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratistas.tipo_contratista=58 */
/*AND led_tipos_contratista.tipo_contratista=242*/
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
ORDER BY cliente asc, actividad asc, razon_social asc , led_tipos_doc.nombre_tipo_doc asc, anio, mes asc, recurso asc
ELSE
-- exec Imperium_reporte_documentacion_FULL2 1226057645,'2023-08-01','2024-08-01',null,'N,R,I,V',null,null
/* contratistas */
SELECT distinct 'AA' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
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
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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.contratista_1 = led_docs.contratista
-- and led_docs.periodo BETWEEN 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
-- and led_docs.ingresado BETWEEN @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_contratista_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_contratista_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* empleados */
SELECT distinct 'BB' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
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 as DOCUMENTO,
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(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
pe.nombre_persona as RECURSO,
pe.identificacion AS CUIT_EMPLEADO,
iif(led_empleados.estado_empleado = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_empleado.nombre_tipo_empleado as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_tipos_empleado ON led_empleados.tipo_empleado = led_tipos_empleado.tipo_empleado
INNER JOIN led_contratistas ON led_empleados.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN padrones pe ON led_empleados.id_padron = pe.id_padron
inner join led_cliente_empleado ON (led_contratistas.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 clientes ON led_cliente_empleado.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
--and led_docs.ingresado between @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/* and led_empleados_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_empleados_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* vehiculos */
SELECT distinct 'CC' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
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 as DOCUMENTO,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'vehiculoS'
WHEN 'V' THEN 'VEHICULOS'
END,
left(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
led_vehiculos.dominio as RECURSO,
NULL AS CUIT_EMPLEADO,
iif(led_vehiculos.estado_vehiculo = 'A','Activo','No activo') AS ESTADO_RECURSO,
led_tipos_vehiculo.nombre_tipo_vehiculo as TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,NULL as SUBCONTRATISTA,
NULL AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_tipos_vehiculo ON led_vehiculos.tipo_vehiculo = led_tipos_vehiculo.tipo_vehiculo
INNER JOIN led_contratistas ON led_vehiculos.contratista = led_contratistas.contratista
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
inner join led_cliente_vehiculo ON (led_contratistas.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 clientes ON led_cliente_vehiculo.cliente = clientes.cliente
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
(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*/
left join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
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 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
--and led_docs.ingresado between @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/*and led_vehiculos_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_vehiculos_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
--AND led_tipos_contratista.tipo_contratista IN (241, 242)
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
UNION
/* Subcontratistas */
SELECT distinct 'DD' AS AA, led_docs.contratista_1, led_contratistas.estado_contratista,
null AS CLIENTE,
/*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 as DOCUMENTO,
SECCION = CASE led_docs.led_seccion
WHEN 'C' THEN 'SUB CONTRATISTAS'
WHEN 'S' THEN 'SUB CONTRATISTAS'
WHEN 'E' THEN 'EMPLEADOS'
WHEN 'V' THEN 'VEHICULOS'
END,
left(CONVERT(VARCHAR,led_docs.periodo),4) AS ANIO,
right(CONVERT(VARCHAR,led_docs.periodo),2) AS MES,
/*
NULL as RECURSO,
NULL AS CUIT_EMPLEADO,
NULL AS ESTADO_RECURSO,
*/
ps.nombre_persona as RECURSO,
ps.identificacion AS CUIT_EMPLEADO,
CASE WHEN sub.estado_contratista = 'A' then 'Activo' else 'No activo' END as ESTADO_RECURSO,
NULL AS TIPO_RECURSO,
CONVERT(VARCHAR(10),led_docs.fecha_tolerancia,103) as VTO_CARGA,
convert(date,led_docs.fecha_tolerancia) as FECHA_TOLERANCIA,
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*/
,CI.valor_numerico as cumplimiento_anual
,case
when CI.valor_numerico = 100 then 'VERDE'
when CI.valor_numerico < 100 then 'ROJO'
when CI.valor_numerico is null then NULL
else NULL
end as cumplimiento_anual_txt
,ps.nombre_persona as SUBCONTRATISTA,
ps.identificacion AS CUIT_SUBCONTRATISTA
,iif(led_docs.fecha_tolerancia > led_docs.ingresado, null, datediff(day,led_docs.fecha_tolerancia,led_docs.ingresado)) as difCarga,
datediff(day,led_docs.ingresado,getdate()) as difVerif,led_tipos_doc.modalidad
FROM led_docs
INNER JOIN led_contratistas ON led_contratistas.contratista = led_docs.contratista_1
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN led_contratistas Sub ON SUB.contratista=led_docs.contratista
INNER JOIN padrones ps ON Sub.id_padron = ps.id_padron
/*
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
*/
INNER JOIN led_subcontratista_periodo on (led_docs.contratista = led_subcontratista_periodo.subcontratista and led_docs.periodo = led_subcontratista_periodo.periodo)
left JOIN led_tipos_doc ON led_docs.tipo_doc = led_tipos_doc.tipo_doc
left 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 join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
/*
INNER JOIN led_contratistas ON led_contratistas.contratista = led_docs.contratista_1
INNER JOIN padrones ON led_contratistas.id_padron = padrones.id_padron
INNER JOIN led_contratistas Sub ON SUB.contratista=led_docs.contratista
INNER JOIN padrones ps ON PS.id_padron = ps.id_padron
inner join led_cliente_contratista ON (led_contratistas.cliente = led_cliente_contratista.cliente
and led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
and led_docs.tipo_doc = led_cliente_contratista.tipo_doc)
INNER JOIN clientes ON led_cliente_contratista.cliente = clientes.cliente
INNER JOIN led_subcontratista_periodo on (led_docs.contratista = led_subcontratista_periodo.subcontratista
and led_docs.periodo = led_subcontratista_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 join LN_contrapartes C on C.id_imperium = led_docs.contratista_1
left join LN_Gestiones G on (G.contraparte = C.contraparte and vigente = 1 and desde <= GETDATE() and hasta >= GETDATE())
left join ln_contraparte_indicadores CI on (CI.contraparte = C.contraparte and CI.gestion = G.gestion and CI.visible = 1 and CI.indicador = @ind_cumpl)
*/
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 202308 AND 202407
/*and led_contratistas.tipo_contratista=58 */
-- and led_docs.ingresado between @periodo_desde AND @periodo_hasta
and led_contratistas.estado_contratista IN ('A','N')
/* and led_subcontratista_periodo.periodo between @periodo_desde AND @periodo_hasta*/
and led_subcontratista_periodo.fecha_afectacion between @periodo_desde AND @periodo_hasta
/*AND led_tipos_contratista.tipo_contratista=242*/
-- select * from led_tipos_contratista where nombre_tipo_contratista like 'REDUCIDO'
ORDER BY razon_social asc ,recurso asc,anio,mes, led_tipos_doc.nombre_tipo_doc asc
--ORDER BY razon_social asc,recurso asc
-- exec Imperium_reporte_documentacion_FULL2 9936068,'2025-01-01','2026-01-01',null,'N,I,R',null,null AGB
END
GO
Depends On
22- dbo.clientes
- 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_subcontratista_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_contraparte_indicadores
- dbo.LN_contrapartes
- dbo.LN_gestiones
- dbo.LN_indicadores
- dbo.padrones
- dbo.spListToTable_ORDERED
Used By
No items found