[CIGAM] Alertas via Procedure em MSSQL

Complementando o post anterior, segue agora a procedure da geração dos alertas em MSSQL:


SET ansi_nulls  OFF 
GO 
SET quoted_identifier  OFF 
GO 

CREATE PROCEDURE cgpr_utl_criaalerta( 
                @assunto VARCHAR(300)  = 'TESTE', 

                @cd_usu_aviso CHAR(3)  = 'SQL', 
                @dt_previsao_ini DATETIME  = NULL, 
                @hr_previsao_ini CHAR(6)  = NULL, 
                @dt_aviso DATETIME  = NULL, 
                @hr_aviso CHAR(6)  = NULL, 
                @concluido CHAR(1)  = 'N', 
                @categoria CHAR(2)  = ' ', 
                @tipo_registro CHAR(1)  = ' ', 
                @embar_pedido_oc CHAR(12)  = ' ', 
                @cont_os_lanc_nf INTEGER  = 0,
                @sequencia_item INTEGER  = 0, 
                @empresa_acomp VARCHAR(6)  = ' ',
                @usu_criacao VARCHAR(3)  = 'SQL',
                @dt_criacao DATETIME  = NULL, 
                @hr_criacao VARCHAR(6)  = NULL,
                @sessao INTEGER  = 0, 
                @usu_modificacao VARCHAR(3)  = ' ',
                @dt_modificacao DATETIME  = NULL, 
                @tempo_calculado NUMERIC  = 0)
AS 
  DECLARE  @id INT 
   
  BEGIN 
    SET dateformat  dmy   

    EXEC  dbo . cg_pr_ultid  ' ' , '280' , @id  OUTPUT 
     
    INSERT INTO gealerta 
    VALUES(

      @id, 
      isnull(@DT_PREVISAO_INI, 
             convert(VARCHAR,getdate(),103)), 
      isnull(@HR_PREVISAO_INI,

             replace(convert(VARCHAR(8),getdate(),108),':','')), 
      isnull(@DT_AVISO,convert(VARCHAR,getdate(),103)), 
      isnull(@HR_AVISO, 

             replace(convert(VARCHAR(8),
                     dateadd(MINUTE,1,getdate()),108),':','')), 
      @CD_USU_AVISO,
      @CONCLUIDO,
      @CATEGORIA,
      @ASSUNTO, 
      @TIPO_REGISTRO,
      @EMBAR_PEDIDO_OC,
      @CONT_OS_LANC_NF,
      @SEQUENCIA_ITEM,
      @EMPRESA_ACOMP,
      @USU_CRIACAO,
      isnull(@DT_CRIACAO,convert(VARCHAR,getdate(),103)), 
      isnull(@HR_CRIACAO, 

             replace(convert(VARCHAR(8),getdate(),108),':','')), 
      @SESSAO,

      @USU_MODIFICACAO, 
      @DT_MODIFICACAO, 
      @TEMPO_CALCULADO,
      NULL,
      NULL,
      NULL, 
      NULL,
      ' ',
      ' ',
      ' ',
      ' ',
      ' ',  
      ' ',
      ' ',
      ' ',
      ' ',
      ' ',
      ' ',
      ' ',
      ' ',
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      ' ',
      NULL,
      0)

  END;
3 comentários

Postagens mais visitadas deste blog

[eXo] - Remover janela de solicitação de Registro

[Kettle] - Ajuste de problema com horário de verão

Pegando informações de Sessão no Oracle e equivalente no MSSQL