APIs de contexto para el proceso de entrada de estructuras de objetos

Un contexto (ctx) es un objeto que proporciona métodos de conveniencia para scripts de automatización para pasar datos o acciones de desencadenante. El contexto está soportado bidireccionalmente. Hay API predefinidas disponibles para el contexto, y cada función puede utilizar contextos diferentes.

Un script de automatización requiere métodos de contexto para implementar la lógica de proceso. Se pasa un contexto entre el proceso de la estructura de objeto y el script de automatización, que implementa el código personalizado. La tabla siguiente muestra las API de contexto y el uso habitual de las API para cada una de las funciones:

Tabla 1. API de contexto utilizadas por las funciones
APIs de contexto beforeProcess (ctx) beforeCreateMboSet (ctx) macrosentencia (ctx) reglas erróneas (ctx) de antemano (ctx) posventa (ctx) conservable (ct) cambiar estado (ct)
ctx.setMsgType()              
ctx.getProcessTable()      
ctx.setProcessTable(String ProcessTable)              
ctx.setMboSet(MboSet mboSet)   ✓\            
ctx.setMbo(Mbo mbo)              
ctx.getData()
ctx.getMosDetailInfo()  
ctx.setSkipBaseAdditionalRules()              
ctx.skipMbo()              
ctx.skipTxn()
ctx.complete()              
ctx.process()              
ctx.getUserInfo()
ctx.getParentMbo()      
ctx.isPrimary()  
ctx.bypassMbo()              
ctx.getMsgType()
ctx.getPrimaryMboSet()    
ctx.getPrimaryMbo()        
ctx.processAsUpdate()              
ctx.processAsAdd()              
ctx.processAsAddAtEnd()              
ctx.log ()

Las siguientes API están disponibles para el proceso de datos de entrada:

ctx.getMosDetailInfo()
Proporciona información sobre la memoria caché de diccionario de datos para la infraestructura de integración para la estructura de objeto que se está procesando.
ctx.skipMbo()
Omite el proceso de un objeto de negocio de Maximo ®.
ctx.skipTxn()
Se salta el proceso de una transacción entera, como por ejemplo de un mensaje.
ctx.complete()
Finaliza el proceso de la estructura de objeto en el punto de la ejecución, lo que significa que los datos hijo no se procesan.
ctx.process()
Continúa el proceso en el punto de la ejecución. Esta API se utiliza normalmente como parte de la lógica condicional.
ctx.getParentMbo()
Recupera el objeto de negocio padre. Esta API se puede utilizar desde un objeto hijo cuyo objeto de negocio aún no se ha creado.
ctx.isPrimary()
Identifica si el objeto de negocio actual es el objeto de negocio de nivel raíz de la estructura de objeto.
ctx.getUserInfo()
Recupera información de usuario, que es necesaria si un script está creando un objeto de negocio.
ctx.bypassMbo()
Omite la creación del objeto de negocio y continúa con el objeto de negocio siguiente que se está procesando.
ctx.getMsgType()
Proporciona acceso al tipo de mensaje, como por ejemplo Sincronización o Creación.
ctx.setMsgType()
Establece el tipo de mensaje, como por ejemplo Sincronización o Creación. Esta API se puede utilizar antes de que empiece el proceso.
ctx.getData()
Proporciona acceso a StructureData, que es el mensaje XML.
ctx.setMboSet(MboSet mboSet)
Establece valores en un conjunto de objetos de negocio.
ctx.setMbo(Mbo mbo)
Establece valores en un objeto de negocio.
ctx. getPrimaryMboSet()
Recupera el objeto de negocio raíz de una estructura de objeto durante el proceso de un objeto de negocio hijo.
ctx.setProcessTable(String processTable)
Establece la tabla para un proceso. El método se utiliza si tiene un objeto de negocio no persistente como, por ejemplo, MXRECEIPT, que tiene una lógica de proceso para determinar si la tabla MATRECTRANS o la tabla SERVRECTRANS se actualiza. La API ctx.setProcessTable(String processTable) se utiliza en la función beforeProcess(ctx).
ctx.getProcessTable()
Recupera el nombre de tabla establecido por la API ctx.setProcessTable(String processTable).
ctx.setSkipBaseAdditionalRules()
Añade lógica personalizada a la función preSaveRules(ctx) para operar en una estructura de objeto completa que está ahora preparada en el proceso.
ctx.processAsUpdate()
Establece la acción de proceso de un objeto de negocio en la acción Actualizar en lugar de la acción Agregar o Suprimir.
ctx.processAsAdd()
Establece la acción de proceso de un objeto de negocio en la acción Agregar en lugar de la acción Suprimir o Actualizar.
ctx.processAsAddAtEnd()
Establece la acción de proceso de un objeto de negocio en la acción Añadir en lugar de la acción Actualizar o Suprimir y crea el objeto de negocio al final de la colección en lugar de al principio de la colección.
ctx.log ()
Ejecuta una sentencia de registro desde un contexto de proceso de estructura de objeto.