Utilización de salidas de usuario para ampliar transacciones estándar
Sterling™ Order Management System proporciona la capacidad de ampliar o anular algoritmos empresariales clave. Esto se consigue mediante salidas de usuario que se invocan cuando se ejecutan los algoritmos.
- Sustituir la lógica de la aplicación proporcionando su propia lógica.
- Ampliar la lógica de la aplicación proporcionando más entradas al algoritmo de la aplicación.
Por ejemplo, si una orden se divide en varios envíos, puede que necesite calcular el precio de la orden de forma diferente para cada envío. Para cambiar la forma en que el SistemaSterling Order Management calcula los precios de pedido, puede alterar temporalmente el cálculo o algoritmo específico en la salida de usuario repriceOrder .
Cada salida de usuario es una interfaz Java™ independiente. Puede optar por implementar únicamente las salidas de usuario en que desea sustituir o aumentar la lógica empresarial.
com.yantra.ycm.japi.uecom.yantra.ycp.japi.uecom.yantra.ydm.japi.uecom.yantra.yfs.japi.ue
Implementación y despliegue de salidas de usuario
Todas las clases de salida de usuario deben desplegarse como un archivo JAR que está disponible en la CLASSPATH del script del adaptador de agente y en el archivo smcfs.ear desplegado en el servidor de aplicaciones.
Directrices sobre las salidas de usuario
- Las salidas de usuario están estructuradas de modo que devuelvan información específica y por lo tanto su uso debe estar restringido únicamente a dicha finalidad.
- Desde las salidas de usuario no se pueden invocar las API que modifican los datos. Esto permite asegurarse de que los errores no se producen debido a los datos que se están modificando en la transacción padre (la transacción que llama a la salida de usuario) y que esos mismos datos se están modificando en el código personalizado de la salida de usuario. Por ejemplo, no puede invocar una API changeOrder() de una salida de usuario que obtiene información relacionada con la misma orden.
Sin embargo, las API que no modifiquen los datos (como las API de selección) sí pueden invocarse en las salidas de usuario. Por ejemplo, puede llamar a la API getOrderDetails() desde una salida de usuario.