dbo.AUH_TITULARES_2_DATOS_PERSONAS

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
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
/**


EXEC AUH_TITULARES_2_DATOS_PERSONAS


**/



-- Description: <Description,,>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.AUH_TITULARES_2_DATOS_PERSONAS 
 -- Add the parameters for the stored procedure here

AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

    -- Insert statements for procedure here

 DECLARE @cuit       varchar(50)
 DECLARE @fnac       date
 DECLARE @sexo       varchar(50)
 DECLARE @cuit_persona     varchar(50)



 /*select TOP 50000 CUIL_TIT_COBRO AS CUIT, 
  DATEFROMPARTS(SUBSTRING(FECHANAC_CUIL_TIT_COBRO,7,4),SUBSTRING(FECHANAC_CUIL_TIT_COBRO,4,2),SUBSTRING(FECHANAC_CUIL_TIT_COBRO,1,2)) AS FECHA_NAC,
  LEFT(SEXO_CUIL_TIT_COBRO,1) AS SEXO
  FROM AUH_Titulares_Cobro
  WHERE ISNULL(_datos_personas_proc, 0) = 0*/



 DECLARE AUHTit CURSOR FOR

 SELECT TOP 50000 AUH_Titulares_Cobro.CUIL_TIT_COBRO AS CUIT, 
   DATEFROMPARTS(SUBSTRING(AUH_Titulares_Cobro.FECHANAC_CUIL_TIT_COBRO,7,4),SUBSTRING(AUH_Titulares_Cobro.FECHANAC_CUIL_TIT_COBRO,4,2),SUBSTRING(AUH_Titulares_Cobro.FECHANAC_CUIL_TIT_COBRO,1,2)) AS FECHA_NAC,
   LEFT(AUH_Titulares_Cobro.SEXO_CUIL_TIT_COBRO,1) AS SEXO,
   DATOS_PERSONAS.c01_cuit
 FROM AUH_Titulares_Cobro 
 LEFT OUTER JOIN DATOS_PERSONAS ON AUH_Titulares_Cobro.CUIL_TIT_COBRO = DATOS_PERSONAS.c01_cuit
 WHERE DATOS_PERSONAS.c02_fecha_nac IS NULL
 AND ISNULL(AUH_Titulares_Cobro._datos_personas_proc, 0) = 0

 
 OPEN AUHTit

 FETCH NEXT FROM AUHTit into @cuit, @fnac, @sexo, @cuit_persona

 WHILE @@FETCH_STATUS = 0 BEGIN

  /*IF EXISTS (SELECT c01_cuit FROM DATOS_PERSONAS WHERE c01_cuit = @cuit) BEGIN*/

  IF (@cuit_persona IS NOT NULL) BEGIN

   UPDATE DATOS_PERSONAS SET c02_fecha_nac = @fnac
   WHERE c01_cuit = @cuit AND c02_fecha_nac IS NULL

  END
  
  ELSE BEGIN

   INSERT INTO DATOS_PERSONAS (c01_cuit, c02_fecha_nac)
   VALUES (@cuit, @fnac)

  END

  /*
   anulado para no realizar un update directo sobre padrones. 
   enviamos a una tabla temporal que será procesada más tarde.
  
   IF EXISTS (SELECT identificacion FROM padrones
   WHERE identificacion = @cuit AND isnull(sexo,'X') != @sexo) begin
  
   UPDATE padrones SET sexo = @sexo 
   WHERE identificacion = @cuit 
  
   end*/


  if not exists (select cuit from padrones_sexo_update where cuit = @cuit) begin
   insert into padrones_sexo_update (cuit, sexo) values (@cuit, @sexo)
  end

  UPDATE AUH_Titulares_Cobro SET _datos_personas_proc = 1 WHERE CUIL_TIT_COBRO = @cuit

  --SELECT @cuit as CUIT_PROCESADO

  FETCH NEXT FROM AUHTit into @cuit, @fnac, @sexo, @cuit_persona
 END

 CLOSE AUHTit
 DEALLOCATE AUHTit
 
END
GO

Used By

No items found