dbo.monitoreos_batch_cendeu

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

1
Name Data Type Length Description
@yesterday date 3

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

--exec monitoreos_batch_cendeu '2018-04-16'
--select * from monitoreos_resultados where tabla = 'cendeu1'
--delete from monitoreos_resultados where tabla = 'cendeu1'
--select * from monitoreos_resultados where tabla = 'cendeu' and CONVERT(date,fecha) = '2017-07-17'

CREATE OR ALTER PROCEDURE dbo.monitoreos_batch_cendeu
@yesterday date = null

AS
BEGIN
    SET NOCOUNT ON;
 declare @r_id_cendeu int
 declare @r_cuit varchar(20)
 declare @yesterday_1 date = @yesterday
 declare @r_situacion char(2) 
 
  -- recorre por monitoreo
  DECLARE bn CURSOR

  FOR
   select distinct cuit
     from monitoreos 
    where visible = 1 
      and seccion_mantenimiento = 10 
      and (fecha_vigencia_mantenimiento is null or fecha_vigencia_mantenimiento >= @yesterday)
  OPEN bn 
  Fetch next from bn INTO  @r_cuit

  WHILE (@@FETCH_STATUS <> -1 )
 
  BEGIN 
   DECLARE cendeuc CURSOR
   FOR
    select id_cendeu, situacion
      from cendeu 
      where iden = @r_cuit 
        and vigente = 1
     and convert(date,created) between @yesterday_1 and @yesterday 
     
   OPEN cendeuc 
    FETCH next from cendeuc INTO  @r_id_cendeu, @r_situacion
   WHILE (@@FETCH_STATUS <> -1 )
    BEGIN 
     if (CONVERT(int,@r_situacion) = 1) 
     begin
      FETCH next from cendeuc INTO @r_id_cendeu, @r_situacion
      continue
     end 
   
     insert into monitoreos_resultados 
         (id_tabla,     tabla,    cuit,    seccion_mantenimiento, fecha,      novedad, tipo_novedad)
     values (@r_id_cendeu, 'cendeu', @r_cuit, 10,                    @yesterday, 1,       'Bancos');
    
     update monitoreos 
        set fecha_ultimo_procesamiento = @yesterday,
         fecha_modificacion = @yesterday
      where cuit= @r_cuit 
        and seccion_mantenimiento = 10
        and (fecha_vigencia_mantenimiento is null or fecha_vigencia_mantenimiento >= @yesterday)
        and (fecha_desde is null or fecha_desde <= @yesterday)
    
     FETCH next from cendeuc INTO @r_id_cendeu, @r_situacion

    END
   CLOSE cendeuc
   DEALLOCATE cendeuc 

   FETCH next from bn INTO  @r_cuit

  END
  
  CLOSE bn
  DEALLOCATE bn 


END 

GO

Depends On

2

Used By

No items found