Páginas filhas
  • 7. Customização de adapter no envio da mensagem

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languageruby
linenumberstrue
#------------------------------------------------------------------#
 FUNCTION EAIHelperUnitOfMeasure2_antes_envio_mensagem(l_msg_negocio)
#------------------------------------------------------------------#
  DEFINE l_msg_negocio VARCHAR(10)

  RETURN TRUE
END FUNCTION

Ainda na implementação desta função poderá ser recuperado qual 

 

 

 

 

O diagrama abaixo apresenta o fluxo de envio que EAI utiliza para enviar uma mensagem para um aplicativo externo com a implementação da função customizada.

 

Recuperando o aplicativo externo

A equipe de negócio que estiver implementando está função para customização do envio da mensagem, pode recuperar o nome do aplicativo externo que está recebendo a mensagem através da função EAIMapper_getString do programa EAIMapper, passando a String "AppDest" como parâmetro. Abaixo segue o exemplo do código.

Bloco de código
languageruby
linenumberstrue
#------------------------------------------------------------------#
 FUNCTION EAIHelperUnitOfMeasure2_antes_envio_mensagem(l_msg_negocio)
#------------------------------------------------------------------#
  DEFINE l_msg_negocio VARCHAR(10)
  DEFINE l_externalApplication VARCHAR(40)
 
  LET l_externalApplication = EAIMapper_getString("AppDest")
  
  #Lógica de Negócio		

  RETURN TRUE
END FUNCTION

Incluindo mensagem de inconsistência

Para criar uma mensagem de inconsistência e esta mensagem seja apresentada no console do EAI10000, a equipe de negócio deverá chamar a função EAIMapper_setError do programa EAIMapper na funcionalidade Helper passando a mensagem de inconsistência como parâmetro para Engine do EAI possa recuperar essa informação. Abaixo segue o exemplo de código  

Bloco de código
languageruby
linenumberstrue
#------------------------------------------------------------------#
 FUNCTION EAIHelperUnitOfMeasure2_antes_envio_mensagem(l_msg_negocio)
#------------------------------------------------------------------#
  DEFINE l_msg_negocio VARCHAR(10)
  DEFINE l_externalApplication VARCHAR(40) 
  DEFINE l_msgError            VACHAR(1000)

  LET l_externalApplication = EAIMapper_getString("AppDest")
  
  #Lógica de Negócio 
   
  LET l_msgError = "Mensagem de Inconsistência.............."		
  
  CALL EAIMapper_setError(l_msgError)   
  
  RETURN TRUE
END FUNCTION

 

 No engine do EAI logo após a verificação do destinatário(Aplicativo Externo) no método dispatch é chamado o método é chamado