dbo.AMX_2020_CSV_

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

CREATE OR ALTER PROCEDURE dbo.AMX_2020_CSV_  

AS
BEGIN
    SET NOCOUNT ON;

 declare @user_id int = 94437923
 declare @familia_2020 varchar(50) = NULL
 declare @cuit varchar(50) = NULL
 declare @razon_social varchar(250) = NULL
 declare @comprado_ars varchar(50) = NULL
 declare @comprado_usd varchar(50) = NULL
 declare @facturado_ars varchar(50) = NULL
 declare @facturado_usd varchar(50) = NULL
 declare @familia_2019 varchar(50) = NULL
 declare @mail varchar(250) = NULL
 declare @te varchar(250) = NULL
 declare @nombre varchar(250) = NULL
 declare @pedir_icomercial varchar(150) = NULL
 declare @pedir_tyc varchar(150) = NULL
 declare @idRow int = NULL
 declare @idfamilia_2019 int = NULL
 declare @idfamilia_2020 int = NULL
 declare @contraparte int = NULL
 declare @id_padron int = NULL
 declare @bitpedir_ic bit = NULL
 declare @bitpedir_tyc bit = NULL
 declare @procesado bit = NULL
 declare @mail_nuevo varchar(255) = NULL
 declare @tipo_proceso varchar(20) = NULL
 declare @procesado_contraparte datetime = NULL
 declare @procesado_gestion datetime = NULL
 declare @procesado_familia datetime = NULL
 
 declare C_Cursor cursor for
 select  familia_2020,
   cuit,
   razon_social,
   comprado_ars,
   comprado_usd,
   facturado_ars,
   facturado_usd,
   familia_2019,
   mail,
   te,
   nombre,
   pedir_icomercial,
   pedir_tyc,
   idRow,
   idfamilia_2019,
   idfamilia_2020,
   contraparte,
   id_padron,
   bitpedir_ic,
   bitpedir_tyc,
   procesado,
   mail_nuevo,
   tipo_proceso,
   procesado_contraparte,
   procesado_gestion,
   procesado_familia
 from AMX_2020_CSV 
 where procesado = 0 --and cuit in ('30707713212', '30707256172')

 OPEN C_Cursor
 FETCH NEXT FROM C_cursor INTO   @familia_2020,
         @cuit,
         @razon_social,
         @comprado_ars,
         @comprado_usd,
         @facturado_ars,
         @facturado_usd,
         @familia_2019,
         @mail,
         @te,
         @nombre,
         @pedir_icomercial,
         @pedir_tyc,
         @idRow,
         @idfamilia_2019,
         @idfamilia_2020,
         @contraparte,
         @id_padron,
         @bitpedir_ic,
         @bitpedir_tyc,
         @procesado,
         @mail_nuevo,
         @tipo_proceso,
         @procesado_contraparte,
         @procesado_gestion,
         @procesado_familia
 declare @total int = 0 

 WHILE @@fetch_status = 0
 BEGIN 
  set @total = @total + 1 
  if (@contraparte is not null) 
  begin
   /*select @contraparte as contraparte, @idfamilia_2019 as familia_2019, @idfamilia_2020 as familia_2020, 
       @mail_nuevo as mail, @te as tel, @nombre as contacto*/

   if (isnull(@idfamilia_2019,'') != isnull(@idfamilia_2020,''))
   -- CAMBIO FAMILIA
   begin
    update ln_contraparte_familias
      set familia = @idfamilia_2020, estado_homologacion = 'N', activo = 1, modified = getdate(), modified_by = @user_id
    where contraparte = @contraparte 
    set @procesado_familia = GETDATE()
   end

   update ln_gestiones set hasta = '2020-03-15', vigente = 0, modified = getdate(), modified_by = @user_id 
   where contraparte = @contraparte and vigente = 1 

   insert into LN_gestiones 
   (cliente, contraparte,  desde,      hasta,       vigente, created,   created_by)
   values 
   (5546348, @contraparte, '2020-03-16','2099-12-31',1,        getdate(), @user_id) 
   set @procesado_gestion = GETDATE()

   update LN_contrapartes set
       carga_inicial = 1,
       limite_carga_inicial = GETDATE() + 21
   where contraparte = @contraparte 

   if (isnull(@mail_nuevo,'') != '')
   begin
    update LN_contrapartes set
              email_contacto = @mail_nuevo
        where contraparte = @contraparte 
   end  
   if (isnull(@te,'') != '')
   begin
    update LN_contrapartes set
              telefono_contacto = @te
        where contraparte = @contraparte 
   end  
   if (isnull(@nombre,'') != '')
   begin
    update LN_contrapartes set
              nombre_contacto = @nombre
        where contraparte = @contraparte 
   end  
   set @procesado_contraparte = GETDATE()

   update AMX_2020_CSV
      set procesado = 1, 
       procesado_contraparte = @procesado_contraparte, 
          procesado_gestion     = @procesado_gestion, 
          procesado_familia     = @procesado_familia
    where contraparte = @contraparte 
  end

  FETCH NEXT FROM C_cursor INTO   @familia_2020,
         @cuit,
         @razon_social,
         @comprado_ars,
         @comprado_usd,
         @facturado_ars,
         @facturado_usd,
         @familia_2019,
         @mail,
         @te,
         @nombre,
         @pedir_icomercial,
         @pedir_tyc,
         @idRow,
         @idfamilia_2019,
         @idfamilia_2020,
         @contraparte,
         @id_padron,
         @bitpedir_ic,
         @bitpedir_tyc,
         @procesado,
         @mail_nuevo,
         @tipo_proceso,
         @procesado_contraparte,
         @procesado_gestion,
         @procesado_familia


 END  

 CLOSE C_Cursor
 DEALLOCATE C_Cursor
 select @total as total 

/* REGENERAMOS LOS DOCS DE LA GESTIÓN ACTIVA*/


 declare @contradocs int 
 declare C_Docs cursor for

  select distinct contraparte  from LN_contrapartes where subcontratista=0 and cliente = 5546348 and activo=1 and country_code='AR'
 OPEN C_Docs
 FETCH NEXT FROM C_Docs INTO   @contradocs
 
 WHILE @@fetch_status = 0
 BEGIN        
 
  /* exec LN_actualizar_legajo @contradocs */

  INSERT INTO LN_contrapartes_queue (contraparte) VALUES (@contradocs)


 FETCH NEXT FROM C_Docs INTO   @contradocs
 
 end

 CLOSE C_Docs
 DEALLOCATE C_Docs
 

END

GO

Used By

No items found