Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
3| Name | Data Type | Length | Description |
|---|---|---|---|
| @p_contratista | int | 4 | |
| @p_user_id | int | 4 | |
| @p_periodo | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: Luis Prenafeta
-- Create date: 07/11/2019
-- Description: Dado un contratista, ratifica la nóminas de todos los empleados y vehículos de sus subcontratistas en el período vencido
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_Ratificacion_Recursos_Subcontratistas
-- Add the parameters for the stored procedure here
@p_contratista int = null,
@p_user_id int = null,
@p_periodo int = null
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 @cliente int
declare @subc int
declare @descripcion varchar(250)
select @cliente = cliente from led_contratistas where contratista = @p_contratista
if (@p_periodo is null)
set @p_periodo = dbo.PeriodoVencido()
declare Subcontratistas cursor for
select subcontratista from led_subcontratista_periodo
where contratista_1 = @p_contratista
and periodo = @p_periodo
Open Subcontratistas
Fetch next from Subcontratistas into @subc
While @@FETCH_STATUS = 0 begin
update led_subcontratista_periodo set
ratif_empleados = 1,
ratif_empleados_usuario = @p_user_id,
ratif_empleados_fecha = GETDATE()
where subcontratista = @subc and periodo = @p_periodo
update led_subcontratista_periodo set
ratif_vehiculos = 1,
ratif_vehiculos_usuario = @p_user_id,
ratif_vehiculos_fecha = GETDATE()
where subcontratista = @subc and periodo = @p_periodo
set @descripcion = 'Ratificación de la nómina de empleados de subcontratista en el período ' + convert(varchar(6),@p_periodo)
insert into led_log
(led_seccion, cliente, contratista_1, contratista, tipo_log, descripcion_log, horario_log, user_id)
values
('E', @cliente, @p_contratista, @subc, 'K', @descripcion, GETDATE(), @p_user_id)
set @descripcion = 'Ratificación de la nómina de vehículos de subcontratista en el período ' + convert(varchar(6),@p_periodo)
insert into led_log
(led_seccion, cliente, contratista_1, contratista, tipo_log, descripcion_log, horario_log, user_id)
values
('V', @cliente, @p_contratista, @subc, 'K', @descripcion, GETDATE(), @p_user_id)
Fetch next from Subcontratistas into @subc
end
update led_contratista_periodo set ratif_rec_subcontratistas = 1,
ratif_rec_subcontratistas_fecha = GETDATE(),
ratif_rec_subcontratistas_usuario = @p_user_id
where contratista = @p_contratista
and periodo = @p_periodo
END
GO
GO
-- =============================================
-- Author: Luis Prenafeta
-- Create date: 07/11/2019
-- Description: Dado un contratista, ratifica la nóminas de todos los empleados y vehículos de sus subcontratistas en el período vencido
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_Ratificacion_Recursos_Subcontratistas
-- Add the parameters for the stored procedure here
@p_contratista int = null,
@p_user_id int = null,
@p_periodo int = null
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 @cliente int
declare @subc int
declare @descripcion varchar(250)
select @cliente = cliente from led_contratistas where contratista = @p_contratista
if (@p_periodo is null)
set @p_periodo = dbo.PeriodoVencido()
declare Subcontratistas cursor for
select subcontratista from led_subcontratista_periodo
where contratista_1 = @p_contratista
and periodo = @p_periodo
Open Subcontratistas
Fetch next from Subcontratistas into @subc
While @@FETCH_STATUS = 0 begin
update led_subcontratista_periodo set
ratif_empleados = 1,
ratif_empleados_usuario = @p_user_id,
ratif_empleados_fecha = GETDATE()
where subcontratista = @subc and periodo = @p_periodo
update led_subcontratista_periodo set
ratif_vehiculos = 1,
ratif_vehiculos_usuario = @p_user_id,
ratif_vehiculos_fecha = GETDATE()
where subcontratista = @subc and periodo = @p_periodo
set @descripcion = 'Ratificación de la nómina de empleados de subcontratista en el período ' + convert(varchar(6),@p_periodo)
insert into led_log
(led_seccion, cliente, contratista_1, contratista, tipo_log, descripcion_log, horario_log, user_id)
values
('E', @cliente, @p_contratista, @subc, 'K', @descripcion, GETDATE(), @p_user_id)
set @descripcion = 'Ratificación de la nómina de vehículos de subcontratista en el período ' + convert(varchar(6),@p_periodo)
insert into led_log
(led_seccion, cliente, contratista_1, contratista, tipo_log, descripcion_log, horario_log, user_id)
values
('V', @cliente, @p_contratista, @subc, 'K', @descripcion, GETDATE(), @p_user_id)
Fetch next from Subcontratistas into @subc
end
update led_contratista_periodo set ratif_rec_subcontratistas = 1,
ratif_rec_subcontratistas_fecha = GETDATE(),
ratif_rec_subcontratistas_usuario = @p_user_id
where contratista = @p_contratista
and periodo = @p_periodo
END
GO
Used By
No items found