Páginas filhas
  • Como implementar nova rotina de usuário no Event Viewer

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
  • Primeiro devemos criar o evento na tabela E3 das tabelas padrões do sistema:

 Image Removedtabela E3Image Added

Image RemovedItens da tabela E3Image Added

  • Depois criamos um Rdmake utilizando a Função abaixo:

EventInsert(cChannel,cCateg,cEventID,nLevel,cCargo,cTitle,cMessage,lPublic)

Parametros:

Parâmetros:

...

NomeTipoObrigatórioDefaultDescrição
cChanelCaractereXFW_EV_CHANEL_ENVIRONMENT
Canal do Evento, como padrão deve-se utilizar a constante FW_EV_CHANEL_ENVIRONMENT.
cCateg

...

CaractereXFW_EV_CATEGORY_MODULESCategoria do Evento, referente ao canal selecionado, como padrão deve-se utilizar a constante FW_EV_CATEGORY_MODULES.
cEventID

...

CaractereX
Código do evento cadastrado na tabela E3.

...

nLevelNuméricoXFW_EV_LEVEL_INFONível

...

do evento utilizado, como padrão deve-se utilizar a constante FW_EV_LEVEL_INFO.
cCargo

...

CaractereX
Uso interno
cTitle

...

CaractereX
Título da mensagem

...

cMessage – Texto a ser apresentada no corpo da mensagem.

...

cMessageCaractereX
Mensagem do evento, podendo ser uma string json. Caso seja uma string json deverá conter as propriedades obrigatórias, sendo elas: notification, title e body (exemplo de utilização abaixo) - Possibilidade da string em formato json disponível a partir da LIB Label 20221010 
lPublicLógico
.F.Se passada como .T. (verdadeiro), a mensagem poderá ser lida por todos inscritos no evento, caso contrário só pelo usuário gerador do evento.


Retorno:

Caso tenha algum erro o retorno será nulo 


Exemplo:

Bloco de código
titleEvento com mensagem em formato texto
#INCLUDE "FWEVENTVIEWCONSTS.CH"

...

 



User Function TstEW()

...


	Local cEventID as character
 	Local cMensagem as character
 	Local cTitulo as character


	cEventID  := "777" //Evento cadastrado na tabela

...

 E3

	cMensagem  := "Evento enviado com sucesso."

...



	cTitulo:='Teste do Event Viewer'

...

    

...

  

	EventInsert(FW_EV_CHANEL_ENVIRONMENT, FW_EV_CATEGORY_MODULES, cEventID, FW_EV_LEVEL_INFO, "", cTitulo, cMensagem, .T.)

Return
Bloco de código
titleEvento com mensagem em formato json string
#INCLUDE "FWEVENTVIEWCONSTS.CH"

User Function TstEW()     Local cEventID as character
    Local cTitulo as character
    Local jMsg as json
    Local jNotification as json
    
    jNotification := JsonObject():New()

    jMsg := JsonObject():New()
    jMsg["title"] := "cliente"
    jMsg["body"] := "Evento enviado com sucesso."
       
    jNotification["notification"] := jMsg
    
    cEventID  := "777" //Evento cadastrado na tabela E3
 
    cTitulo:='Teste do Event Viewer'      
     
    //Possibilidade da string em formato json disponível a partir da LIB Label 20220905
    

...

EventInsert(FW_EV_CHANEL_ENVIRONMENT, FW_EV_CATEGORY_MODULES, cEventID, FW_EV_LEVEL_INFO, "",

...

 cTitulo, jNotification:toJson(), .T.)

...


 
Return

 

  • Efetuar o cadastro do evento através da rotina "Inscrição no Event Viewer" na pasta miscelânea de qualquer módulo.

 Image RemovedEvent Viewer do módulo de ComprasImage Added

Agora é só executar a rotina criada e verificar o e-mail enviado.