Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
2| Name | Data Type | Length | Description |
|---|---|---|---|
| @periodo | int | 4 | |
| @IDCliente | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE OR ALTER PROCEDURE dbo.Imperium_Led_Resumen_Periodo
@periodo int,
@IDCliente int
AS
BEGIN
SET NOCOUNT ON;
DECLARE @ERRORNUMBER SMALLINT
if (@periodo is null)
BEGIN
SET @periodo = convert(varchar(4),datepart(year,getdate())) + RIGHT('00' +convert(varchar(2),datepart(month,getdate())),2)
END
DECLARE @LastDay_AnyMonth DATETIME
--Last Day of Any Month and Year
DECLARE @dtDate DATETIME, @nextMonth DATETIME, @LastDayNextMonth DATETIME
SET @dtDate = substring(CONVERT(varchar(6),@periodo),1,4) + '-' + substring(CONVERT(varchar(6),@periodo),5,2) + '-01'
SET @nextMonth = DATEADD(mm, 1, @dtDate)
set @LastDay_AnyMonth = DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@dtDate)+1,0))
set @LastDayNextMonth = DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@nextMonth)+1,0))
DECLARE @tipo_doc INT,@estado_doc VARCHAR(1),@led_seccion VARCHAR(1),@cliente INT,@contratista INT,@empleado INT,@vehiculo INT
DECLARE @contratista_1 INT,@insertado DATETIME,@fecha_tolerancia DATETIME,@compliance_doc VARCHAR(1),@fecha_vigencia DATETIME,@doc_log VARCHAR(150),@grupo_doc INT
DECLARE LedResumenPeriodo Cursor
FOR
select distinct led_contratista_periodo.contratista from led_contratista_periodo
INNER JOIN led_contratistas ON led_contratista_periodo.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON led_contratistas.cliente = led_cliente_contratista.cliente
where led_contratistas.cliente = @IDCliente
and led_contratista_periodo.periodo = @periodo
Open LedResumenPeriodo
Fetch NEXT FROM LedResumenPeriodo INTO @contratista
While (@@FETCH_STATUS <> -1)
BEGIN
/*
SELECT @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
insert INTO led_resumen_periodo(contratista, subcontratistas,empleados_dir, empleados_ind, vehiculos_dir, vehiculos_ind, total_empleados, total_vehiculos, periodo, score_ci_total, score_cc_total)
select @contratista as contratista,subcontratistas = (select count(*) as subcontratistas from led_subcontratista_periodo where contratista_1 = @contratista and periodo = @periodo),
empleados_dir= (select count(*) as empleados_dir from led_empleados_periodo where contratista_1 = @contratista and periodo = @periodo),
empleados_ind = (select count(*) as empleados_ind from led_empleados_periodo where contratista in
(select distinct subcontratista from led_subcontratista_periodo where led_subcontratista_periodo.contratista_1 = @contratista and periodo = @periodo)
and periodo = @periodo),
vehiculos_dir = (select count(*) as vehiculos_dir from led_vehiculos_periodo where contratista_1 = @contratista and periodo = @periodo),
vehiculos_ind = (select count(*) as vehiculos_ind from led_vehiculos_periodo where contratista in
(select distinct vehiculo from led_vehiculos_periodo where led_vehiculos_periodo.contratista_1 = @contratista and periodo = @periodo)
and periodo = @periodo),
total_empleados = (select (select count(*) as empleados_dir from led_empleados_periodo where contratista_1 = @contratista and periodo = @periodo) + (select count(*) as empleados_ind from led_empleados_periodo where contratista in
(select distinct subcontratista from led_subcontratista_periodo where led_subcontratista_periodo.contratista_1 = @contratista and periodo = @periodo)
and periodo = @periodo) as total_empleados),
total_vehiculos = (select (select count(*) as vehiculos_dir from led_vehiculos_periodo where contratista_1 = @contratista and periodo = @periodo) + (select count(*) as vehiculos_ind from led_vehiculos_periodo where contratista in
(select distinct vehiculo from led_vehiculos_periodo where led_vehiculos_periodo.contratista_1 = @contratista and periodo = @periodo) and periodo = @periodo) as total_vehiculos),
@periodo as periodo,
score_ci_total = (select 87 as score_ci_total),
score_cc_total = (select 92 as score_cc_total)
BEGIN TRY
/*
SELECT @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
set @compliance_doc = '1'
/*
insert into led_docs (
tipo_doc,
estado_doc,
led_seccion,
cliente,
contratista,
empleado,
vehiculo,
periodo,
contratista_1,
insertado,
fecha_tolerancia,
compliance_doc,
fecha_vigencia,
doc_log,
grupo_doc
)
values
(@tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc)
*/
END TRY
BEGIN CATCH
/*
SET @ERRORNUMBER = 1
*/
/*
SELECT @ERRORNUMBER,@tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
/*
select 'insert into led_docs (
tipo_doc,
estado_doc,
led_seccion,
cliente,
contratista,
empleado,
vehiculo,
periodo,
contratista_1,
insertado,
fecha_tolerancia,
compliance_doc,
fecha_vigencia,
doc_log,
grupo_doc
)
values'
*/
/*
select @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
select 'error'
END CATCH
Fetch NEXT FROM LedResumenPeriodo INTO @contratista
/*
Fetch NEXT FROM LedResumenPeriodo INTO @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
END
CLOSE LedResumenPeriodo
DEALLOCATE LedResumenPeriodo
END
GO
GO
CREATE OR ALTER PROCEDURE dbo.Imperium_Led_Resumen_Periodo
@periodo int,
@IDCliente int
AS
BEGIN
SET NOCOUNT ON;
DECLARE @ERRORNUMBER SMALLINT
if (@periodo is null)
BEGIN
SET @periodo = convert(varchar(4),datepart(year,getdate())) + RIGHT('00' +convert(varchar(2),datepart(month,getdate())),2)
END
DECLARE @LastDay_AnyMonth DATETIME
--Last Day of Any Month and Year
DECLARE @dtDate DATETIME, @nextMonth DATETIME, @LastDayNextMonth DATETIME
SET @dtDate = substring(CONVERT(varchar(6),@periodo),1,4) + '-' + substring(CONVERT(varchar(6),@periodo),5,2) + '-01'
SET @nextMonth = DATEADD(mm, 1, @dtDate)
set @LastDay_AnyMonth = DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@dtDate)+1,0))
set @LastDayNextMonth = DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@nextMonth)+1,0))
DECLARE @tipo_doc INT,@estado_doc VARCHAR(1),@led_seccion VARCHAR(1),@cliente INT,@contratista INT,@empleado INT,@vehiculo INT
DECLARE @contratista_1 INT,@insertado DATETIME,@fecha_tolerancia DATETIME,@compliance_doc VARCHAR(1),@fecha_vigencia DATETIME,@doc_log VARCHAR(150),@grupo_doc INT
DECLARE LedResumenPeriodo Cursor
FOR
select distinct led_contratista_periodo.contratista from led_contratista_periodo
INNER JOIN led_contratistas ON led_contratista_periodo.contratista = led_contratistas.contratista
INNER JOIN led_cliente_contratista ON led_contratistas.cliente = led_cliente_contratista.cliente
where led_contratistas.cliente = @IDCliente
and led_contratista_periodo.periodo = @periodo
Open LedResumenPeriodo
Fetch NEXT FROM LedResumenPeriodo INTO @contratista
While (@@FETCH_STATUS <> -1)
BEGIN
/*
SELECT @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
insert INTO led_resumen_periodo(contratista, subcontratistas,empleados_dir, empleados_ind, vehiculos_dir, vehiculos_ind, total_empleados, total_vehiculos, periodo, score_ci_total, score_cc_total)
select @contratista as contratista,subcontratistas = (select count(*) as subcontratistas from led_subcontratista_periodo where contratista_1 = @contratista and periodo = @periodo),
empleados_dir= (select count(*) as empleados_dir from led_empleados_periodo where contratista_1 = @contratista and periodo = @periodo),
empleados_ind = (select count(*) as empleados_ind from led_empleados_periodo where contratista in
(select distinct subcontratista from led_subcontratista_periodo where led_subcontratista_periodo.contratista_1 = @contratista and periodo = @periodo)
and periodo = @periodo),
vehiculos_dir = (select count(*) as vehiculos_dir from led_vehiculos_periodo where contratista_1 = @contratista and periodo = @periodo),
vehiculos_ind = (select count(*) as vehiculos_ind from led_vehiculos_periodo where contratista in
(select distinct vehiculo from led_vehiculos_periodo where led_vehiculos_periodo.contratista_1 = @contratista and periodo = @periodo)
and periodo = @periodo),
total_empleados = (select (select count(*) as empleados_dir from led_empleados_periodo where contratista_1 = @contratista and periodo = @periodo) + (select count(*) as empleados_ind from led_empleados_periodo where contratista in
(select distinct subcontratista from led_subcontratista_periodo where led_subcontratista_periodo.contratista_1 = @contratista and periodo = @periodo)
and periodo = @periodo) as total_empleados),
total_vehiculos = (select (select count(*) as vehiculos_dir from led_vehiculos_periodo where contratista_1 = @contratista and periodo = @periodo) + (select count(*) as vehiculos_ind from led_vehiculos_periodo where contratista in
(select distinct vehiculo from led_vehiculos_periodo where led_vehiculos_periodo.contratista_1 = @contratista and periodo = @periodo) and periodo = @periodo) as total_vehiculos),
@periodo as periodo,
score_ci_total = (select 87 as score_ci_total),
score_cc_total = (select 92 as score_cc_total)
BEGIN TRY
/*
SELECT @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
set @compliance_doc = '1'
/*
insert into led_docs (
tipo_doc,
estado_doc,
led_seccion,
cliente,
contratista,
empleado,
vehiculo,
periodo,
contratista_1,
insertado,
fecha_tolerancia,
compliance_doc,
fecha_vigencia,
doc_log,
grupo_doc
)
values
(@tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc)
*/
END TRY
BEGIN CATCH
/*
SET @ERRORNUMBER = 1
*/
/*
SELECT @ERRORNUMBER,@tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
/*
select 'insert into led_docs (
tipo_doc,
estado_doc,
led_seccion,
cliente,
contratista,
empleado,
vehiculo,
periodo,
contratista_1,
insertado,
fecha_tolerancia,
compliance_doc,
fecha_vigencia,
doc_log,
grupo_doc
)
values'
*/
/*
select @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
select 'error'
END CATCH
Fetch NEXT FROM LedResumenPeriodo INTO @contratista
/*
Fetch NEXT FROM LedResumenPeriodo INTO @tipo_doc,@estado_doc,@led_seccion,@cliente,@contratista,@empleado,@vehiculo,@periodo,@contratista_1,@insertado,@fecha_tolerancia,@compliance_doc,@fecha_vigencia,@doc_log,@grupo_doc
*/
END
CLOSE LedResumenPeriodo
DEALLOCATE LedResumenPeriodo
END
GO
Depends On
6Used By
No items found