dbo.backend_empleados

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_Cuit varchar 20
@p_periodo varchar 4
@p_empleados varchar 20

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

CREATE OR ALTER PROCEDURE dbo.backend_empleados
@p_Cuit varchar(20),
@p_periodo varchar(4), 
@p_empleados varchar(20) = null 
AS
BEGIN
    SET NOCOUNT ON;
 if (@p_empleados is null) 
 begin 
     if (@p_cuit like '3%') set @p_empleados = 'empleados'
  else set @p_empleados = 'empleadores' 
 end 
 --if (@p_cuit like '3%')
 if (@p_empleados = 'empleados') 
 begin
  select distinct empleados.cuit, pj.nombre_persona as empleador, 
                  empleados.cuil, pf.nombre_persona,  max(isnull(remimp,0)) as sueldo, 
-- format(convert(date,'20'+convert(varchar,periodo)+'01'),'yyyy-MM') as periodo
      format(convert(date,'20'+convert(varchar,RIGHT('0000'+convert(varchar(4),periodo),4))+'01'),'yyyy-MM') as periodo

  from empleados
  left join padrones AS pj ON (pj.identificacion = cuit and pj.habilitado = 1) 
  left join padrones AS pf ON (pf.identificacion = cuil and pf.habilitado = 1) 
  
  where (cuit = @p_Cuit
         /*and visible = '1'*/
      and periodo = @p_periodo)
  group by empleados.cuit, pj.nombre_persona, empleados.cuil, pf.nombre_persona, periodo

    /*
     union
         select distinct empleados_historico.cuit, pj.nombre_persona as empleador, 
                     empleados_historico.cuil, pf.nombre_persona, 0 as sueldo,
     format(convert(date,'20'+convert(varchar,right('0000'+cast(periodo as varchar),4))+'01'),'yyyy-MM') as periodo
     from empleados_historico 
     left join padrones AS pj ON (pj.identificacion = cuit and pj.habilitado = 1) 
     left join padrones AS pf ON (pf.identificacion = cuil and pf.habilitado = 1) 
    
     where (cuit = @p_Cuit
            /*and visible = '1'*/

        and periodo = @p_periodo)
    
     group by empleados_historico.cuit, pj.nombre_persona, empleados_historico.cuil, pf.nombre_persona, periodo
    */

  order by pf.nombre_persona

 end
 else 
 begin
  select distinct empleados.cuit, pj.nombre_persona as empleador, 
                  empleados.cuil, pf.nombre_persona, max(isnull(remimp,0)) as sueldo, 
      --format(convert(date,'20'+convert(varchar,periodo)+'01'),'yyyy-MM') as periodo
      format(convert(date,'20'+convert(varchar,RIGHT('0000'+convert(varchar(4),periodo),4))+'01'),'yyyy-MM') as periodo
  from empleados
  left join padrones AS pj ON (pj.identificacion = cuit and pj.habilitado = 1) 
  left join padrones AS pf ON (pf.identificacion = cuil and pf.habilitado = 1)   
  where (cuil = @p_Cuit
         /*and visible = '1'*/) 
     group by empleados.cuit, pj.nombre_persona, empleados.cuil, pf.nombre_persona, periodo
/*
    union all
     select distinct empleados_historico.cuit, pj.nombre_persona as empleador, 
                empleados_historico.cuil, pf.nombre_persona, 0 as sueldo, 
format(convert(date,'20'+convert(varchar,right('0000'+cast(periodo as varchar),4))+'01'),'yyyy-MM') as periodo
from empleados_historico
left join padrones AS pj ON (pj.identificacion = cuit and pj.habilitado = 1) 
left join padrones AS pf ON (pf.identificacion = cuil and pf.habilitado = 1) 
where (cuil = @p_Cuit
       /*and visible = '1'*/
) 

group by empleados_historico.cuit, pj.nombre_persona, empleados_historico.cuil, pf.nombre_persona, periodo
*/

  order by periodo desc 
 end
END
GO

Used By

No items found