dbo.LN_docs_activo

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

4
Name Data Type Length Description
@p_contraparte int 4
@p_doc_id int 4
@aplica bit 1
@p_user_id int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO

CREATE OR ALTER PROCEDURE dbo.LN_docs_activo
@p_contraparte int, 
@p_doc_id int,
@aplica bit, 
@p_user_id int
AS
BEGIN
    SET NOCOUNT ON;
 DECLARE @nombre varchar(100)
 IF (@p_user_id IS NOT NULL) 
  SELECT @nombre = first_name + ' ' + last_name
  FROM users
  WHERE user_id = @p_user_id
  ELSE 
  SET @nombre = ''
  
 if (@aplica = 0)  -- Se pasa el documento a NO APLICA
 begin
  update LN_docs 
   set aplica = 0, 
       modified = GETDATE(),
    modified_by = @p_user_id, 
     doc_log = CONVERT(VARCHAR(max),doc_log) + CHAR(10) + CONVERT(VARCHAR(10), GETDATE(),103) + ' ' +
        CONVERT(VARCHAR(5), GETDATE(), 14) + ': Pasado a NO APLICA' + 
        iif(@nombre <> '', ' por ' + @nombre, '')
  where doc_id = @p_doc_id and contraparte = @p_contraparte
  select '0' as error, 'Pasado a No Aplica' as mensaje
  return 
 end 

 if (@aplica = 1) -- Se pasa el documento a APLICA
 begin
      update LN_docs 
   set aplica = 1, 
       modified = GETDATE(),
    modified_by = @p_user_id, 
     doc_log = CONVERT(VARCHAR(max),doc_log) + CHAR(10) + CONVERT(VARCHAR(10), GETDATE(),103) + ' ' +
        CONVERT(VARCHAR(5), GETDATE(), 14) + ': Pasado a SI APLICA' + 
        iif(@nombre <> '', ' por ' + @nombre, '')
    where doc_id = @p_doc_id and contraparte = @p_contraparte    
    select '0' as error, 'Pasado a Si Aplica' as mensaje
    return 
 end 
 select '1' as error, 'Ninguna acción' as mensaje 
   
END 

GO

Depends On

1

Used By

No items found