Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
1| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_contratista | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
/*
declare @hhh int
exec Imperium_vista_contratista_Cumplimiento_General 1965,@hhh output
select @hhh
*/
CREATE OR ALTER PROCEDURE dbo.Imperium_contratista_Cumplimiento_General
-- Add the parameters for the stored procedure here
@p_contratista int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
DECLARE @rate FLOAT
DECLARE @verificados FLOAT
DECLARE @totales FLOAT
/*SELECT @verificados = COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL
AND led_docs.tipo_doc IN
(select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_contratista_multi lcm on
(lc.contratista = lcm.contratista AND lcc.tipo_contratista = lcm.tipo_contratista)
inner join led_contratista_periodo lcp on lc.contratista = lcp.contratista
where lcc.requiere_upload = 1
and lcc.activo = 1
and lcm.activo = 1
and lcm.vigencia_desde <= GETDATE()
and (lcm.vigencia_hasta IS NULL OR lcm.vigencia_hasta >= GETDATE())
and lcp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc
UNION
select lce.tipo_doc
from led_cliente_empleado lce
inner join led_empleados le on lce.tipo_empleado = le.tipo_empleado
inner join led_contratistas lc on
(le.contratista_1 = lc.contratista and lce.cliente = lc.cliente)
inner join led_empleado_multi lem on
(le.empleado = lem.empleado AND lce.tipo_empleado = lem.tipo_empleado)
inner join led_empleados_periodo lep on le.empleado = lep.empleado
where lce.requiere_upload = 1
and lce.activo = 1
and lem.activo = 1
and lem.vigencia_desde <= GETDATE()
and (lem.vigencia_hasta IS NULL OR lem.vigencia_hasta >= GETDATE())
and lep.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and le.contratista_1 = @p_contratista
group by lce.tipo_doc
UNION
select lcv.tipo_doc
from led_cliente_vehiculo lcv
inner join led_vehiculos lv on
(lcv.tipo_vehiculo = lv.tipo_vehiculo AND lcv.cliente = lv.cliente)
inner join led_vehiculos_periodo lvp on lv.vehiculo = lvp.vehiculo
where lcv.requiere_upload = 1
and lcv.activo = 1
and lvp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lv.contratista_1 = @p_contratista
group by lcv.tipo_doc
UNION
select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_subcontratista_periodo lsp on
(lc.contratista = lsp.subcontratista AND lc.contratista_1 = lsp.contratista_1)
where lcc.requiere_upload = 1
and lcc.activo = 1
and lsp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc)
SELECT @totales = COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL
AND led_docs.tipo_doc IN
(select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_contratista_multi lcm on
(lc.contratista = lcm.contratista AND lcc.tipo_contratista = lcm.tipo_contratista)
inner join led_contratista_periodo lcp on lc.contratista = lcp.contratista
where lcc.requiere_upload = 1
and lcc.activo = 1
and lcm.activo = 1
and lcm.vigencia_desde <= GETDATE()
and (lcm.vigencia_hasta IS NULL OR lcm.vigencia_hasta >= GETDATE())
and lcp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc
UNION
select lce.tipo_doc
from led_cliente_empleado lce
inner join led_empleados le on lce.tipo_empleado = le.tipo_empleado
inner join led_contratistas lc on
(le.contratista_1 = lc.contratista and lce.cliente = lc.cliente)
inner join led_empleado_multi lem on
(le.empleado = lem.empleado AND lce.tipo_empleado = lem.tipo_empleado)
inner join led_empleados_periodo lep on le.empleado = lep.empleado
where lce.requiere_upload = 1
and lce.activo = 1
and lem.activo = 1
and lem.vigencia_desde <= GETDATE()
and (lem.vigencia_hasta IS NULL OR lem.vigencia_hasta >= GETDATE())
and lep.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and le.contratista_1 = @p_contratista
group by lce.tipo_doc
UNION
select lcv.tipo_doc
from led_cliente_vehiculo lcv
inner join led_vehiculos lv on
(lcv.tipo_vehiculo = lv.tipo_vehiculo AND lcv.cliente = lv.cliente)
inner join led_vehiculos_periodo lvp on lv.vehiculo = lvp.vehiculo
where lcv.requiere_upload = 1
and lcv.activo = 1
and lvp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lv.contratista_1 = @p_contratista
group by lcv.tipo_doc
UNION
select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_subcontratista_periodo lsp on
(lc.contratista = lsp.subcontratista AND lc.contratista_1 = lsp.contratista_1)
where lcc.requiere_upload = 1
and lcc.activo = 1
and lsp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc) */
SELECT @verificados =
(SELECT COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_empleados_periodo
ON (led_docs.empleado = led_empleados_periodo.empleado
AND led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_cliente_empleado ON
(led_docs.tipo_doc = led_cliente_empleado.tipo_doc
AND led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_empleados.cliente = led_cliente_empleado.cliente
AND ISNULL(led_cliente_empleado.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_vehiculos_periodo
ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
AND led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
AND led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_vehiculos.cliente = led_cliente_vehiculo.cliente
AND ISNULL(led_cliente_vehiculo.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_subcontratista_periodo
ON (led_docs.contratista = led_subcontratista_periodo.subcontratista
AND led_docs.periodo = led_subcontratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
SELECT @totales =
(SELECT COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_empleados_periodo
ON (led_docs.empleado = led_empleados_periodo.empleado
AND led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_cliente_empleado ON
(led_docs.tipo_doc = led_cliente_empleado.tipo_doc
AND led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_empleados.cliente = led_cliente_empleado.cliente
AND ISNULL(led_cliente_empleado.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_vehiculos_periodo
ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
AND led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
AND led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_vehiculos.cliente = led_cliente_vehiculo.cliente
AND ISNULL(led_cliente_vehiculo.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_subcontratista_periodo
ON (led_docs.contratista = led_subcontratista_periodo.subcontratista
AND led_docs.periodo = led_subcontratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
DECLARE @cumplimiento INT
IF (@totales > 0) BEGIN
SET @rate = ROUND(@verificados / @totales * 100, 0)
SET @cumplimiento = CAST(@rate AS int)
END ELSE
SET @cumplimiento = 0
SELECT @cumplimiento as cumplimiento
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
/*
declare @hhh int
exec Imperium_vista_contratista_Cumplimiento_General 1965,@hhh output
select @hhh
*/
CREATE OR ALTER PROCEDURE dbo.Imperium_contratista_Cumplimiento_General
-- Add the parameters for the stored procedure here
@p_contratista int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
DECLARE @rate FLOAT
DECLARE @verificados FLOAT
DECLARE @totales FLOAT
/*SELECT @verificados = COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL
AND led_docs.tipo_doc IN
(select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_contratista_multi lcm on
(lc.contratista = lcm.contratista AND lcc.tipo_contratista = lcm.tipo_contratista)
inner join led_contratista_periodo lcp on lc.contratista = lcp.contratista
where lcc.requiere_upload = 1
and lcc.activo = 1
and lcm.activo = 1
and lcm.vigencia_desde <= GETDATE()
and (lcm.vigencia_hasta IS NULL OR lcm.vigencia_hasta >= GETDATE())
and lcp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc
UNION
select lce.tipo_doc
from led_cliente_empleado lce
inner join led_empleados le on lce.tipo_empleado = le.tipo_empleado
inner join led_contratistas lc on
(le.contratista_1 = lc.contratista and lce.cliente = lc.cliente)
inner join led_empleado_multi lem on
(le.empleado = lem.empleado AND lce.tipo_empleado = lem.tipo_empleado)
inner join led_empleados_periodo lep on le.empleado = lep.empleado
where lce.requiere_upload = 1
and lce.activo = 1
and lem.activo = 1
and lem.vigencia_desde <= GETDATE()
and (lem.vigencia_hasta IS NULL OR lem.vigencia_hasta >= GETDATE())
and lep.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and le.contratista_1 = @p_contratista
group by lce.tipo_doc
UNION
select lcv.tipo_doc
from led_cliente_vehiculo lcv
inner join led_vehiculos lv on
(lcv.tipo_vehiculo = lv.tipo_vehiculo AND lcv.cliente = lv.cliente)
inner join led_vehiculos_periodo lvp on lv.vehiculo = lvp.vehiculo
where lcv.requiere_upload = 1
and lcv.activo = 1
and lvp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lv.contratista_1 = @p_contratista
group by lcv.tipo_doc
UNION
select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_subcontratista_periodo lsp on
(lc.contratista = lsp.subcontratista AND lc.contratista_1 = lsp.contratista_1)
where lcc.requiere_upload = 1
and lcc.activo = 1
and lsp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc)
SELECT @totales = COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL
AND led_docs.tipo_doc IN
(select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_contratista_multi lcm on
(lc.contratista = lcm.contratista AND lcc.tipo_contratista = lcm.tipo_contratista)
inner join led_contratista_periodo lcp on lc.contratista = lcp.contratista
where lcc.requiere_upload = 1
and lcc.activo = 1
and lcm.activo = 1
and lcm.vigencia_desde <= GETDATE()
and (lcm.vigencia_hasta IS NULL OR lcm.vigencia_hasta >= GETDATE())
and lcp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc
UNION
select lce.tipo_doc
from led_cliente_empleado lce
inner join led_empleados le on lce.tipo_empleado = le.tipo_empleado
inner join led_contratistas lc on
(le.contratista_1 = lc.contratista and lce.cliente = lc.cliente)
inner join led_empleado_multi lem on
(le.empleado = lem.empleado AND lce.tipo_empleado = lem.tipo_empleado)
inner join led_empleados_periodo lep on le.empleado = lep.empleado
where lce.requiere_upload = 1
and lce.activo = 1
and lem.activo = 1
and lem.vigencia_desde <= GETDATE()
and (lem.vigencia_hasta IS NULL OR lem.vigencia_hasta >= GETDATE())
and lep.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and le.contratista_1 = @p_contratista
group by lce.tipo_doc
UNION
select lcv.tipo_doc
from led_cliente_vehiculo lcv
inner join led_vehiculos lv on
(lcv.tipo_vehiculo = lv.tipo_vehiculo AND lcv.cliente = lv.cliente)
inner join led_vehiculos_periodo lvp on lv.vehiculo = lvp.vehiculo
where lcv.requiere_upload = 1
and lcv.activo = 1
and lvp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lv.contratista_1 = @p_contratista
group by lcv.tipo_doc
UNION
select lcc.tipo_doc
from led_cliente_contratista lcc
inner join led_contratistas lc on lcc.cliente = lc.cliente
inner join led_subcontratista_periodo lsp on
(lc.contratista = lsp.subcontratista AND lc.contratista_1 = lsp.contratista_1)
where lcc.requiere_upload = 1
and lcc.activo = 1
and lsp.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
and lc.contratista_1 = @p_contratista
group by lcc.tipo_doc) */
SELECT @verificados =
(SELECT COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_empleados_periodo
ON (led_docs.empleado = led_empleados_periodo.empleado
AND led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_cliente_empleado ON
(led_docs.tipo_doc = led_cliente_empleado.tipo_doc
AND led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_empleados.cliente = led_cliente_empleado.cliente
AND ISNULL(led_cliente_empleado.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_vehiculos_periodo
ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
AND led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
AND led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_vehiculos.cliente = led_cliente_vehiculo.cliente
AND ISNULL(led_cliente_vehiculo.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_subcontratista_periodo
ON (led_docs.contratista = led_subcontratista_periodo.subcontratista
AND led_docs.periodo = led_subcontratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc = 'V'
AND led_docs.doc_id_lista IS NULL)
SELECT @totales =
(SELECT COUNT(*)
FROM led_docs INNER JOIN led_contratista_periodo
ON (led_docs.contratista = led_contratista_periodo.contratista
AND led_docs.periodo = led_contratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_empleados_periodo
ON (led_docs.empleado = led_empleados_periodo.empleado
AND led_docs.periodo = led_empleados_periodo.periodo)
INNER JOIN led_empleados ON led_docs.empleado = led_empleados.empleado
INNER JOIN led_cliente_empleado ON
(led_docs.tipo_doc = led_cliente_empleado.tipo_doc
AND led_empleados.tipo_empleado = led_cliente_empleado.tipo_empleado
AND led_empleados.cliente = led_cliente_empleado.cliente
AND ISNULL(led_cliente_empleado.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_vehiculos_periodo
ON (led_docs.vehiculo = led_vehiculos_periodo.vehiculo
AND led_docs.periodo = led_vehiculos_periodo.periodo)
INNER JOIN led_vehiculos ON led_docs.vehiculo = led_vehiculos.vehiculo
INNER JOIN led_cliente_vehiculo ON
(led_docs.tipo_doc = led_cliente_vehiculo.tipo_doc
AND led_vehiculos.tipo_vehiculo = led_cliente_vehiculo.tipo_vehiculo
AND led_vehiculos.cliente = led_cliente_vehiculo.cliente
AND ISNULL(led_cliente_vehiculo.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
+ (SELECT COUNT(*)
FROM led_docs INNER JOIN led_subcontratista_periodo
ON (led_docs.contratista = led_subcontratista_periodo.subcontratista
AND led_docs.periodo = led_subcontratista_periodo.periodo)
INNER JOIN led_contratistas ON led_docs.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON
(led_docs.tipo_doc = led_cliente_contratista.tipo_doc
AND led_contratistas.tipo_contratista = led_cliente_contratista.tipo_contratista
AND led_contratistas.cliente = led_cliente_contratista.cliente
AND ISNULL(led_cliente_contratista.afecta_compliance, 0) > 0)
WHERE led_docs.contratista_1 = @p_contratista
AND led_docs.periodo BETWEEN dbo.PeriodoAnual() AND dbo.PeriodoVencido()
AND led_docs.estado_doc IN ('N','I','R','V')
AND led_docs.doc_id_lista IS NULL)
DECLARE @cumplimiento INT
IF (@totales > 0) BEGIN
SET @rate = ROUND(@verificados / @totales * 100, 0)
SET @cumplimiento = CAST(@rate AS int)
END ELSE
SET @cumplimiento = 0
SELECT @cumplimiento as cumplimiento
END
GO