Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
2| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_contratista | int | 4 | |
| @cumplimiento | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_vista_contratista_Cumplimiento_General_OLD
-- Add the parameters for the stored procedure here
@p_contratista int,
@cumplimiento int output
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)
IF (@totales > 0) BEGIN
SET @rate = @verificados / @totales * 100
SET @cumplimiento = CAST(@rate AS int)
END ELSE
SET @cumplimiento = 0
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_vista_contratista_Cumplimiento_General_OLD
-- Add the parameters for the stored procedure here
@p_contratista int,
@cumplimiento int output
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)
IF (@totales > 0) BEGIN
SET @rate = @verificados / @totales * 100
SET @cumplimiento = CAST(@rate AS int)
END ELSE
SET @cumplimiento = 0
END
GO
Depends On
15- dbo.PeriodoAnual
- dbo.PeriodoVencido
- dbo.led_cliente_contratista
- dbo.led_cliente_empleado
- dbo.led_cliente_vehiculo
- dbo.led_contratista_multi
- dbo.led_contratista_periodo
- dbo.led_contratistas
- dbo.led_docs
- dbo.led_empleado_multi
- dbo.led_empleados
- dbo.led_empleados_periodo
- dbo.led_subcontratista_periodo
- dbo.led_vehiculos
- dbo.led_vehiculos_periodo
Used By
No items found