dbo.backend_status_socio

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_id_socio int 4
@p_user_id int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Samuel Gonzalez>
-- Create date: <18 Jul 2017>
-- Description: <agrega o modifica socio>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.backend_status_socio 
 -- Add the parameters for the stored procedure here
 @p_id_socio int,
 @p_user_id int = null 
AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

 BEGIN
  UPDATE socios SET 
   visible = 1 - visible, 
   modified = GETDATE(),
   modified_by = @p_user_id
  WHERE (id_socios = @p_id_socio)
 END

 -- Si quedo como visible = 1 
 declare @visible bit = null,
   @ultimo char(1) = null,
   @cuit varchar(20) = null,
   @cuit_socio varchar(20) = null,
   @cargo varchar(20) = null

 select @visible = visible, 
     @ultimo = c04_ultimo,
     @cuit = c01_cuit, 
     @cuit_socio = c01_cuit_soc, 
     @cargo = car_codigo
   from socios 
   WHERE id_socios = @p_id_socio 

 if (@visible = 1 and @ultimo = 'S')
 begin
  --Si esta con otro cargo, al otro cargo lo paso como ultimo = 'N'
  IF ((SELECT COUNT(*) FROM socios WHERE c01_cuit = @cuit  AND c01_cuit_soc = @cuit_socio AND car_codigo != @cargo AND visible = 1 and c04_ultimo = 'S') != 0)
  BEGIN 
   update socios set c04_ultimo = 'N', modified_by = @p_user_id, modified = GETDATE()
    WHERE c01_cuit = @cuit AND c01_cuit_soc = @cuit_socio AND car_codigo != @cargo AND visible = 1 and c04_ultimo = 'S'
  END
 end
 


 SELECT @p_id_socio AS id_socio -- Verifico el Ășltimo modificado.
END

GO

Depends On

1

Used By

No items found