Encadeamento de eventos e manipuladores de eventos
Alguns manipuladores de eventos suportam a chamada de APIs. Essas APIs podem recuperar mais dados pertinentes ao evento que estiver sendo levantado, ou podem executar um cálculo ou transação de negócios. Por sua vez, a transação pode levantar outros eventos, resultando, assim, em encadeamento de eventos.
Por exemplo, um dos manipuladores de eventos para o evento ORDER_CREATE pode verificar a validade de um pedido e chamar uma API para reter um pedido. Isso resulta no acionamento do evento HOLD, que envia uma mensagem de e-mail para um responsável pelo atendimento ao cliente. O encadeamento de eventos fornece um mecanismo de extensibilidade que é necessário para processamento de negócios complexo.
Para acessar os dados publicados pelo Sterling™ Order Management System, você deve implementar a interface YFSEventHandlerEx( ), que fornece a função handleEvent( ) a ser implementada da seguinte forma:
public boolean handleEvent (YFSEnvironment oEnv, String sTranID, String
sActionCode, Map sKeyData, int iDataType, Object sData, String sShipNode,
String [] parms) throws Exception O nome da classe deve ser configurado como o objeto Java™ na tela Configuração de ação na configuração de transação do Sterling Order Management System
Todos os parâmetros para a função handleEvent() são parâmetros de entrada, com valores inseridos pelo aplicativo. O último parâmetro nessa função é o parâmetro parms, que é uma matriz de constantes de Sequência. Os valores dessas constantes de sequência são os valores das constantes de sequência especificadas após o nome da classe durante a configuração de ação no aplicativo.