dbo.backend_vigente_balances

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

3
Name Data Type Length Description
@p_id_balance int 4
@p_id_persona int 4
@p_usuario int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

CREATE OR ALTER PROCEDURE dbo.backend_vigente_balances
@p_id_balance int,
@p_id_persona int, 
@p_usuario int
AS
BEGIN
    SET NOCOUNT ON;
 declare @estado_actual bit
 declare @fecha date
 declare @cuit varchar(20)

 select @cuit = cuit,
     @estado_actual = visible, 
        @fecha = fecha_balance
   from balances_contables where id_balance = @p_id_balance

 if (@estado_actual = '0') 
     begin
   if exists (select * from balances_contables where cuit = @cuit 
                                     and fecha_balance = @fecha
             and visible = '1') 
         begin 
        select '1' as error, 'No se puede activar el registro. Ya existe un Balance con esa fecha Activo' as mensaje
      end
            else 
      begin
         update balances_contables
            set visible = iif(visible='0', '1', '0'),
             id_padron = @p_id_persona, 
             modified = GETDATE(),
             modified_by = @p_usuario
            where id_balance = @p_id_balance
         select '0' as error, 'Activación OK' as mensaje
      end 
  end 
 else 
     begin
     update balances_contables
        set visible = iif(visible='0', '1', '0'),
         id_padron = @p_id_persona, 
         modified = GETDATE(),
         modified_by = @p_usuario
      where id_balance = @p_id_balance
     select '0' as error, 'Baja OK (el registro pasó a Inactivo)' as mensaje
  end  
 
END 

GO

Depends On

1

Used By

No items found