dbo.Imperium_reporte_ART

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

1
Name Data Type Length Description
@Cliente int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================

/*

exec Imperium_reporte_ART 9335603


*/


CREATE OR ALTER PROCEDURE dbo.Imperium_reporte_ART 
 -- Add the parameters for the stored procedure here
 @Cliente 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 @mes1 datetime = DATEADD(month,-1,GETDATE())

 DECLARE @periodo_desde int = CONVERT(int, CONVERT(VARCHAR(4),Year(@mes1)) + RIGHT('00'+ CONVERT(VARCHAR,Month(@mes1)), 2) )


 SELECT emp.nombre_persona AS EMPLEADO, emp.identificador + ' ' + emp.numero AS ID_EMPLEADO,
 te.nombre_tipo_empleado AS TIPO_EMPLEADO, 
 con.nombre_persona as CONTRATISTA, con.identificador + ' ' + con.numero AS ID_CONTRATISTA,
 tc.nombre_tipo_contratista AS TIPO_CONTRATISTA,

 IIF(lc.contratista <> lc.contratista_1, pri.nombre_persona, NULL) as SUBCONTRATISTA_DE, 
 IIF(lc.contratista <> lc.contratista_1, pri.identificador + ' ' + pri.numero, NULL) AS IDENT,
 lc.numeros_art

 from led_empleados le inner join padrones emp on le.id_padron = emp.id_padron
 inner join led_tipos_empleado te on le.tipo_empleado = te.tipo_empleado
 inner join led_contratistas lc on le.contratista = lc.contratista
 inner join led_tipos_contratista tc on lc.tipo_contratista = tc.tipo_contratista
 inner join padrones con on lc.id_padron = con.id_padron
 inner join led_contratistas as lc1 on lc.contratista_1 = lc1.contratista
 inner join padrones pri on lc1.id_padron = pri.id_padron
 inner join (select led_empleados_periodo.empleado 
    from led_empleados_periodo inner join led_empleados
    on led_empleados_periodo.empleado = led_empleados.empleado
    where led_empleados.cliente = @Cliente
    and led_empleados_periodo.periodo >= @periodo_desde
    group by led_empleados_periodo.empleado) prd ON le.empleado = prd.empleado

 where lc.cliente = @Cliente
 and lc.estado_contratista = 'A'
 and le.estado_empleado = 'A'
 and lc1.estado_contratista = 'A'

 order by emp.nombre_persona, con.nombre_persona
 
END

GO

Used By

No items found