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_cliente | int | 4 | |
| @p_lista | varchar | -1 | |
| @p_servicio_contratado | int | 4 |
SQL Script
Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
/*
select * from clientes where cli_codigo = 2000
exec [LN_panel_control_excel_deuda_previsional] 2046807993,'151669,156425,32013'
EXEC LN_dashboard_cliente 'VALORES_GRILLA_NEW','2046807993',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0,NULL,'47'
*/
CREATE OR ALTER PROCEDURE dbo.LN_panel_control_excel_deuda_previsional
@p_cliente int,
@p_lista varchar(max) = null,
@p_servicio_contratado int = 47
AS
BEGIN
SET NOCOUNT ON;
declare @contraparte int
declare @cuit varchar(20)
declare @lista_301 varchar(max) = null
declare @lista_351 varchar(max) = null
/* '301' 'Aportes a la Seg. Social'
'351' 'Contribuciones a la Seg. Social' */
declare @valores table (contraparte int, deuda_301 varchar(max), deuda_351 varchar(max))
if (@p_lista is NOT null)
begin
DECLARE C_Cursor CURSOR FOR
select ln_contrapartes.contraparte, padrones.identificacion
from ln_contrapartes
inner join padrones on padrones.id_padron = LN_contrapartes.id_padron
INNER JOIN dbo.DelimitedSplit8K(@p_lista, ',') Contrapartes ON LN_contrapartes.contraparte = Contrapartes.Item
where cliente = @p_cliente
and ln_contrapartes.activo = 1
and servicio_contratado = @p_servicio_contratado
end
else
begin
DECLARE C_Cursor CURSOR FOR
select ln_contrapartes.contraparte, padrones.identificacion
from ln_contrapartes
inner join padrones on padrones.id_padron = LN_contrapartes.id_padron
where cliente = @p_cliente
and ln_contrapartes.activo = 1
and servicio_contratado = @p_servicio_contratado
end
OPEN C_Cursor
FETCH NEXT FROM C_Cursor INTO @contraparte, @cuit
WHILE @@fetch_status = 0
BEGIN
set @lista_301 = null
set @lista_351 = null
select @lista_301 = STUFF((
SELECT '-' + SUBSTRING(convert(varchar,periodo),5,2) + '/' + SUBSTRING(convert(varchar,periodo),1,4)
from deuda_previsional
inner join padrones on (identificacion = cuit and habilitado = 1)
where cuit = @cuit and codigo = 301 and periodo is not null
and visible = 1
order by periodo
FOR XML PATH('')
), 1, 1, '')
select @lista_351 = STUFF((
SELECT '-' + SUBSTRING(convert(varchar,periodo),5,2) + '/' + SUBSTRING(convert(varchar,periodo),1,4)
from deuda_previsional
inner join padrones on (identificacion = cuit and habilitado = 1)
where cuit = @cuit and codigo = 351 and periodo is not null
and visible = 1
order by periodo
FOR XML PATH('')
), 1, 1, '')
insert into @valores (contraparte, deuda_301, deuda_351) values (@contraparte, @lista_301, @lista_351)
FETCH NEXT FROM C_Cursor INTO @contraparte, @cuit
END
CLOSE C_Cursor
DEALLOCATE C_Cursor
select * from @valores
END
GO
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
/*
select * from clientes where cli_codigo = 2000
exec [LN_panel_control_excel_deuda_previsional] 2046807993,'151669,156425,32013'
EXEC LN_dashboard_cliente 'VALORES_GRILLA_NEW','2046807993',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1,NULL,0,NULL,'47'
*/
CREATE OR ALTER PROCEDURE dbo.LN_panel_control_excel_deuda_previsional
@p_cliente int,
@p_lista varchar(max) = null,
@p_servicio_contratado int = 47
AS
BEGIN
SET NOCOUNT ON;
declare @contraparte int
declare @cuit varchar(20)
declare @lista_301 varchar(max) = null
declare @lista_351 varchar(max) = null
/* '301' 'Aportes a la Seg. Social'
'351' 'Contribuciones a la Seg. Social' */
declare @valores table (contraparte int, deuda_301 varchar(max), deuda_351 varchar(max))
if (@p_lista is NOT null)
begin
DECLARE C_Cursor CURSOR FOR
select ln_contrapartes.contraparte, padrones.identificacion
from ln_contrapartes
inner join padrones on padrones.id_padron = LN_contrapartes.id_padron
INNER JOIN dbo.DelimitedSplit8K(@p_lista, ',') Contrapartes ON LN_contrapartes.contraparte = Contrapartes.Item
where cliente = @p_cliente
and ln_contrapartes.activo = 1
and servicio_contratado = @p_servicio_contratado
end
else
begin
DECLARE C_Cursor CURSOR FOR
select ln_contrapartes.contraparte, padrones.identificacion
from ln_contrapartes
inner join padrones on padrones.id_padron = LN_contrapartes.id_padron
where cliente = @p_cliente
and ln_contrapartes.activo = 1
and servicio_contratado = @p_servicio_contratado
end
OPEN C_Cursor
FETCH NEXT FROM C_Cursor INTO @contraparte, @cuit
WHILE @@fetch_status = 0
BEGIN
set @lista_301 = null
set @lista_351 = null
select @lista_301 = STUFF((
SELECT '-' + SUBSTRING(convert(varchar,periodo),5,2) + '/' + SUBSTRING(convert(varchar,periodo),1,4)
from deuda_previsional
inner join padrones on (identificacion = cuit and habilitado = 1)
where cuit = @cuit and codigo = 301 and periodo is not null
and visible = 1
order by periodo
FOR XML PATH('')
), 1, 1, '')
select @lista_351 = STUFF((
SELECT '-' + SUBSTRING(convert(varchar,periodo),5,2) + '/' + SUBSTRING(convert(varchar,periodo),1,4)
from deuda_previsional
inner join padrones on (identificacion = cuit and habilitado = 1)
where cuit = @cuit and codigo = 351 and periodo is not null
and visible = 1
order by periodo
FOR XML PATH('')
), 1, 1, '')
insert into @valores (contraparte, deuda_301, deuda_351) values (@contraparte, @lista_301, @lista_351)
FETCH NEXT FROM C_Cursor INTO @contraparte, @cuit
END
CLOSE C_Cursor
DEALLOCATE C_Cursor
select * from @valores
END
GO
Used By
No items found