Encadenamiento de sucesos y manejadores de sucesos
Algunos manejadores de sucesos admiten la invocación de API. Estas API pueden recuperar más datos relevantes para el suceso que se genera o pueden conducir a la realización de un cálculo o transacción comercial. A su vez, la transacción puede generar otros sucesos, dando lugar a un encadenamiento de sucesos.
Por ejemplo, uno de los manejadores de sucesos del suceso ORDER_CREATE puede comprobar la validez de una orden y llamar a una API para retener (HOLD) la orden. Esto tiene como consecuencia la activación del suceso HOLD, que envía un mensaje de correo electrónico a un representante del servicio al cliente. El encadenamiento de sucesos proporciona un mecanismo de ampliación que es necesario para procesos de negocio complejos.
Para acceder a los datos publicados por el sistema Sterling™ Order Management, debe implementar la interfaz YFSEventHandlerEx( ), que proporciona la función handleEvent( ) para implementarla del siguiente modo:
public boolean handleEvent (YFSEnvironment oEnv, String sTranID, String
sActionCode, Map sKeyData, int iDataType, Object sData, String sShipNode,
String [] parms) throws Exception El nombre de clase debe configurarse como el objeto Java™ en la pantalla Configuración de acción de la configuración de transacción Sterling Order Management System .
Todos los parámetros de la función handleEvent() son parámetros de entrada con valores insertados por la aplicación. El último parámetro de esta función es el parámetro parms, que es una matriz de constantes de tipo serie. Los valores de estas constantes de tipo serie son los valores de las constantes de tipo serie especificados después del nombre de clase durante la configuración de la acción en la aplicación.