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
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
Depends On
2Used By
No items found