dbo.ws_obtener_cancelaciones_morosidad

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

2
Name Data Type Length Description
@p_Cuit varchar 20
@p_meses int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

CREATE OR ALTER PROCEDURE dbo.ws_obtener_cancelaciones_morosidad
@p_Cuit varchar(20),
@p_meses int 
AS


BEGIN
    SET NOCOUNT ON;
 
 declare @ok char(1)
 declare @eve_codigo varchar(10)
 declare @evento     varchar(50)
  
 declare @mes_1 varchar(7)
 declare @mes_2 varchar(7)
 declare @fecha_cancela date
 declare @fecha_cancela_dmy varchar(10) 
 declare @fec_inf_desde date
 declare @fec_inf_hasta date 
    
 declare @id int
 declare @iden varchar(11)
 declare @cau_codigo varchar(10)
 declare @fecha date
 declare @codigo_ent varchar(3)
 declare @monto_original numeric(12,2)
 declare @monto_act numeric(12,2)
 declare @observaciones varchar(max)
 declare @vigente bit
 declare @id_persona int
 declare @created_by int
 declare @created datetime
 declare @modified_by int
 declare @modified datetime
 declare @estado varchar(10)
 declare @fecha_dmy varchar(10)
 declare @entidad varchar(100)
 declare @cau_nombre varchar(100)
 declare @tipo char(1)
 declare @habeas_data varchar(100)
 declare @monto_1 char(13)
 declare @monto_2 char(13)
   
 declare @entrada table (id int, iden varchar(11), cau_codigo varchar(10), fecha date, codigo_ent varchar(3), monto_original numeric(12,2), monto_act numeric(12,2), 
                         observaciones varchar(max), vigente bit, id_persona int, created_by int, crated datetime, modified_by int, modified datetime, estado varchar(10), 
       fecha_dmy varchar(10), entidad varchar(100), cau_nombre varchar(100), tipo char(1), habeas_data varchar(100), monto_1 char(13), monto_2 char(13))

 declare @respuesta table (cau_nombre varchar(100), cod int, entidad varchar(100), tipo char(1), fecha_desde varchar(7), fecha_hasta varchar(7), fecha varchar(10), evento varchar(50))

 -- Recorro las morosidades que se mostraron 
 insert into @entrada 
 exec backend_morosidad @p_Cuit, @p_meses, 1
  
 DECLARE bn CURSOR FOR
  select * from @entrada 

 OPEN bn 
 Fetch next from bn INTO
        @id,
        @iden,
        @cau_codigo,
        @fecha,
        @codigo_ent,
        @monto_original,
        @monto_act,
        @observaciones,
        @vigente,
        @id_persona,
        @created_by,
        @created,
        @modified_by,
        @modified,
        @estado,
        @fecha_dmy,
        @entidad,
        @cau_nombre,
        @tipo,
        @habeas_data,
        @monto_1,
        @monto_2 
  
 WHILE (@@FETCH_STATUS <> -1 )
 BEGIN
 --- busco en morosidad_cancela, si algun registro cancela/regulariza/etc alguno de los reg. mostrados
     DECLARE cn CURSOR
    FOR select eve_codigo,
               convert(date,fec_inf_desde),
      convert(date,fec_inf_hasta),
      max(fecha)
    from morosidad_cancela 
    where iden = @iden
      and vigente = '1'
      and codigo_ent = @codigo_ent 
      and (convert(date,fec_inf_desde) <= @fecha and dateadd(MM,1,convert(date,fec_inf_hasta)) > @fecha)
      group by eve_codigo,
               convert(date,fec_inf_desde),
            convert(date,fec_inf_hasta)
     OPEN cn
      Fetch next from cn INTO @eve_codigo, @fec_inf_desde, @fec_inf_hasta, @fecha_cancela
     WHILE (@@FETCH_STATUS <> -1 )
     BEGIN
      set @evento = (select eve_nombre
           from Eventos_Deudas
          where eve_codigo = @eve_codigo)
         set @mes_1 = SUBSTRING(convert(varchar(10),@fec_inf_desde),6,2) + '/' + SUBSTRING(convert(varchar(10),@fec_inf_desde),1,4) 
      set @mes_2 = SUBSTRING(convert(varchar(10),@fec_inf_hasta),6,2) + '/' + SUBSTRING(convert(varchar(10),@fec_inf_hasta),1,4) 
      set @fecha_cancela_dmy = CONVERT(varchar(10),@fecha_cancela,103) 
     
       insert into @respuesta values(@cau_nombre, @codigo_ent, @entidad, @tipo, @mes_1, @mes_2, @fecha_cancela_dmy, @evento)
      
      Fetch next from cn INTO @evento, @fec_inf_desde, @fec_inf_hasta, @fecha_cancela
       END 
     CLOSE cn
     DEALLOCATE cn 
     Fetch next from bn INTO
        @id,
        @iden,
        @cau_codigo,
        @fecha,
        @codigo_ent,
        @monto_original,
        @monto_act,
        @observaciones,
        @vigente,
        @id_persona,
        @created_by,
        @created,
        @modified_by,
        @modified,
        @estado,
        @fecha_dmy,
        @entidad,
        @cau_nombre,
        @tipo,
        @habeas_data,
        @monto_1,
        @monto_2 
 END
 CLOSE bn
 DEALLOCATE bn 

 select distinct * from @respuesta
 
END 

GO

Used By

No items found