Configuración del motor de reglas de negocio

Definición de una aplicación BRFplus

Objectives

After completing this lesson, you will be able to:
  • Crear una aplicación BRFplus y asignar una función
  • Comprender los objetos de datos en BRFplus
  • Prueba de unidad de su aplicación
  • Integrar su función BRFplus en un proceso empresarial

Aplicación BRFplus

Modo funcional

En el modo funcional, el flujo de proceso típico es el siguiente:

  1. Creación de aplicación: comience creando una aplicación.
  2. Creación de función: a continuación, cree una función.
  3. Creación de objetos de datos: configure los objetos de datos utilizados en la aplicación.
  4. Creación de expresión: cree una expresión superior y asígnela a la función.
  5. Asignación de contexto y resultado: asigne objetos de datos tanto al contexto como al resultado de la función.
  6. Activación de objeto: Active todos los objetos relevantes.
  7. Ejecución de simulación: Simule la función como una prueba de unidad.
  8. Integración: Por último, integre la aplicación BRFplus y la función con su aplicación de proceso empresarial.

Modo de evento

En el modo de evento, el flujo de proceso típico es el siguiente:

  1. Creación de aplicación: comience creando una aplicación.
  2. Creación de función: a continuación, cree una función.
  3. Creación de objetos de datos: configure los objetos de datos utilizados en la aplicación.
  4. Asignación de contexto y resultado: asigne objetos de datos tanto al contexto como al resultado de la función.
  5. Creación de conjunto(s) de reglas: cree conjunto(s) de reglas para la función.
  6. Creación de regla: Crear regla dentro del conjunto de reglas.
  7. Creación de expresión y acción: cree la expresión y/o acción y asígnela a la regla.
  8. Activación de objeto: Active todos los objetos relevantes.
  9. Ejecución de simulación: Simule la función como una prueba de unidad.
  10. Integración: Por último, integre la aplicación BRFplus y la función con su aplicación de proceso empresarial.

Para poder ejecutar correctamente una función en modo de evento, debe:

  1. Fije el Modo de función en Modo de evento.
  2. Asigne conjuntos de reglas a la función, que contiene las reglas que se ejecutarán en los datos.
  3. Configurar contexto de función - Firma para transferir los datos a y desde BRFplus
  4. Fije el Resultado, según sea necesario.

    Nota

    Puede fijar el resultado en "Acciones" para BRFplus en modo de evento. BRFplus en modo de evento puede realizar acciones en el sistema, como documentos de contabilización, gestión de datos maestros, creación de impuestos u obligaciones de presentación, solicitudes de correspondencia, workflows, etc. Por lo tanto, en este escenario no se espera que las funciones que se ejecutan en el modo de evento devuelvan ningún valor en particular al programa de llamada.

Contexto de función y objeto de datos de resultado

Contexto y resultado sirven como interfaz en BRFplus, facilitando el intercambio de datos entre programas de llamada/procesos empresariales y funciones BRFplus.

  • Parámetros de entrada: los parámetros de entrada se asignan dentro de la sección Contexto.
  • Parámetros de salida: los parámetros de salida se asignan dentro del objeto de datos de resultado.

Los objetos de datos dentro de Contexto y Resultado pueden tomar la forma de Elementos, Estructuras o Tablas.

  • Objetos de datos de elemento: pueden ser de tipos como Texto, Número, Booleano, Cantidad, Importe y Fecha y hora.
  • Objetos de datos de estructura y tabla: estos siguen los mismos principios que el ABAP clásico.

Los atributos definidos en el contexto sirven como valores de entrada para el procesamiento mediante una función o una expresión. El contexto puede comprender uno o varios elementos, estructuras o tablas a los que se accede por su nombre.

Por el contrario, una función o expresión solo puede tener un objeto de datos de resultado. Sin embargo, si una regla empresarial necesita devolver varios valores simultáneamente, esto se puede lograr asignando una estructura o tabla como objeto de datos de resultado.

Los datos de contexto de una función pueden ser utilizados por todas las subexpresiones que pertenecen a la expresión superior de la función. Los parámetros de entrada de las expresiones se rellenan con el contexto de la función o con los resultados de otras expresiones.

Funciones y capacidades

En el nivel Función, tiene acceso a lo siguiente:

  • Simulación

    La simulación integrada permite a los modeladores de reglas probar la exactitud de las funciones BRFplus en un entorno controlado.

  • Depurador

    Analice la ejecución de la función en detalle mediante la funcionalidad de depurador.

  • Traces

    Realice un seguimiento de la entrada y la salida de cada regla, en secuencia de ejecución dentro de la función.

  • Generar - Módulo RFC o servicio web

    Genera un código de función adecuado para llamadas remotas/API: entornos orientados a servicios.

  • Crear modelo de código

    Generar código ABAP para llamar la función desde fuentes externas (ABAP).

  • Verificaciones avanzadas

    Conjuntos de reglas de verificación semántica asignados a la función, objetos no versionados y objetos inactivos.

Nota

Una función es la interfaz de regla en BRFplus y actúa como un enlace entre el código de aplicación y el código BRFplus. Una función contiene un contexto y un resultado. Importa el contexto de la aplicación de llamada y devuelve un resultado después del procesamiento.

Funciones

  • Modo de funcionamiento: Una función se puede diseñar para uno de los siguientes modos de operación:
    • Modo funcional: en Modo funcional, la ejecución de la función comienza con la expresión superior asignada. Desde esta expresión superior, el procesamiento puede pasar por cualquier número de subexpresiones anidadas hasta que se devuelva un resultado.
    • Modo de evento: en Modo de evento, la función está asociada con una lista de conjuntos de reglas que se ejecutan según su prioridad de ejecución y su posición en la lista.
  • Firma: La firma de función consta de dos partes:
    • Contexto: El contexto es un contenedor para objetos de datos que puede asignar como parámetros de importación para la función. Seleccione los objetos de datos de contexto de una función según los requisitos de la aplicación de llamada mediante la cual se llama la función BRFplus.
    • Resultado: el objeto de datos de resultado devuelve un valor de resultado calculado por las expresiones de las que consta la función. Tenga en cuenta que para las funciones en Modo de evento, el objeto de datos de resultado se fija automáticamente en la tabla Acciones predefinida donde se registran las acciones desencadenadas por los conjuntos de reglas asignados.
  • Generación de código: BRFplus proporciona una función de generación de código integrada que se utiliza para compilar código fuente para muchos constructos de regla en una función como sea posible.
  • Simulación: puede simular el procesamiento de la función para probar el comportamiento de la función en un entorno sandbox. Aquí puede obtener una visión detallada del estado del sistema para cada paso que el sistema realiza durante el procesamiento de la función.
  • Trace: en BRFplus, puede solicitar al sistema que cree un log de trace para realizar un seguimiento de todos los eventos que pueden surgir durante la ejecución de la función. La información de trace se almacena en el sistema y se puede revisar en cualquier momento.
  • Servicios web: BRFplus admite la generación de servicios web para una función. Esto le permite integrar el poder de ejecución de reglas de una función BRFplus en un entorno de software orientado a servicios.

Creación de una aplicación

La aplicación BRFplus actúa como un contenedor para objetos relacionados con un conjunto de reglas específico.

Pasos

  1. Abra el workbench y haga clic en el botón Crear aplicación.

  2. Asigne un nombre a su aplicación, asígnele una descripción y, en función de lo que necesite, cree un objeto local o transportable.

    Durante su creación, los desarrolladores deben tomar decisiones cruciales en función del objetivo previsto de la aplicación BRFplus. Es importante tener en cuenta que una vez realizados los tipos de almacenamiento de aplicación, no se pueden modificar.

    Además, para satisfacer varias necesidades y escenarios organizativos, puede considerar la posibilidad de crear aplicaciones BRFplus locales. Son especialmente útiles para demostraciones, pruebas de concepto y pruebas locales antes de la implementación completa del proyecto. Normalmente, estas aplicaciones no están pensadas para el transporte a otros entornos.

    Estas son las opciones de tipo de almacén disponibles:

    • Customizing:
      • Los objetos de Customizing le permiten crear o modificar su entorno de sistema.
      • Los metadatos para objetos Customizing siempre se almacenan en tablas dependientes de mandante con una clase de entrega de C.
      • Los objetos Customizing hacen referencia exclusivamente a objetos del sistema.
    • Datos maestros:
      • Los objetos de datos maestros son dependientes de mandante por defecto y no se pueden transportar.
      • Los metadatos para objetos de datos maestros se almacenan en tablas dependientes de mandante con una clase de entrega de A.
      • Los objetos de datos maestros pueden hacer referencia tanto a objetos de sistema como de Customizing.
    • Sistema:
      • Los objetos designados como objetos de sistema deben permanecer sin modificar.
      • Los metadatos para objetos de sistema se almacenan en tablas independientes de mandante con una clase de entrega de S.
      • Para transportar metadatos de objeto de sistema, se requiere un transporte de workbench.
      • Todos los nombres de tabla de base de datos de objeto de sistema terminan con "S".
      • Los objetos de sistema no hacen referencia a objetos de Customizing o de datos maestros. Sin embargo, los objetos de Customizing y de datos maestros pueden hacer referencia a objetos del sistema.
  3. Seleccione la aplicación que acaba de crear, cambie a la pestaña Objetos incluidos, seleccione Función y haga clic en Crear.

    Para crear una función BRFplus, puede hacer clic en el botón Crear objeto en la pestaña Objeto contenido de la aplicación o hacer clic con el botón derecho en la aplicación en el panel de navegación y seleccionar Crear → Función en el menú contextual.

    Nota

    Como alternativa, haga clic con el botón derecho en su aplicación en el panel Navegación y seleccione Crear → Función en el menú contextual.

    Puede crear muchos objetos de este modo, incluidos objetos de datos, conjuntos de reglas, reglas y varias expresiones.

    Una vez que haya establecido el shell de la función BRFplus, deberá añadir el contexto y el resultado como entrada y salida de función. A continuación, cree el conjunto de reglas y las reglas BRFplus, definiendo la lógica de reglas empresariales mediante expresiones y/o acciones. Por último, active las funciones BRFplus.

    Su función se crea y se fija con valores predeterminados para permitirle ejecutarla en procesos empresariales, como en Gestión de impuestos e ingresos:

    • Fijar en modo de evento
    • Resultado fijado en ACCIONES

    Próximos pasos:

    • Crear objetos de datos y asignarlos al contexto
    • Active sus objetos
    • Vincular contexto adicional de su escenario ISR
    • Crear conjuntos de reglas y diseñar reglas

Objetos de datos

Utilización y disponibilidad de objeto de datos en BRFplus

Los objetos de datos disponibles para la aplicación BRFplus están visibles en el panel Navegación, en el nodo Objeto de datos. Aquí encontrará todos los objetos disponibles para la aplicación. Sin embargo, cada expresión en BRFplus no siempre puede utilizar todos los objetos.

En función de dónde se asignen los objetos de datos en la jerarquía en BRFplus, estarán disponibles para el nivel especificado y todos los niveles inferiores:

  • Los objetos de datos del contexto de función están disponibles para todos los conjuntos de reglas asignados a la función
  • Los objetos de datos fuera del contexto Función deben asignarse directamente al conjunto de reglas antes de que se puedan utilizar en expresiones.

Navegue por los objetos de datos disponibles dentro de su aplicación BRFplus utilizando el panel de navegación de la izquierda. Estos objetos se encuentran en el nodo Objeto de datos, categorizados en subnodos como Elementos, Estructuras y Tablas en función de su tipo de datos. Cada objeto que cree en BRFplus se visualizará en esta sección. Además, cualquier objeto integrado en el contexto o resultado de una función aparecerá automáticamente aquí de forma predeterminada.

A continuación se muestran los conceptos mencionados en la diapositiva anterior. Observe los objetos de datos en el contexto Función y el objeto asignado directamente en las variables del conjunto de reglas.

Cuando se definen y asignan correctamente, todos los objetos están disponibles para la ejecución de las reglas.

Uso de objetos de datos en BRFplus

Para utilizar objetos de datos en sus reglas y expresiones, debe definirlos en el contexto de función o en la sección de variables del conjunto de reglas donde se crean y ejecutan las reglas. Este concepto se asemeja a ABAP, donde las variables deben definirse en las secciones de interfaz adecuadas de métodos y módulos de funciones, o dentro de sentencias DATA en código ABAP antes de que se puedan utilizar.

Consideraciones adicionales

Es crucial tener en cuenta que si un objeto de datos no está asignado correctamente, el motor BRFplus devolverá errores al activar al intentar utilizarlo en una regla o expresión. Dos errores comunes con los que suelen encontrarse los desarrolladores BRFplus se deben a la falta de asignaciones en el contexto del conjunto de reglas o a la doble asignación del mismo objeto tanto en el contexto de la función como del conjunto de reglas. Durante la activación, el motor BRFplus realiza verificaciones y puede generar uno de los siguientes mensajes:

  • Falta el objeto de datos XYZ en el contexto del conjunto de reglas o
  • El objeto de datos XYZ no es unívoco dentro del contexto de función.

Pruebas de aplicación

La herramienta de simulación se utiliza para probar funciones, expresiones o acciones BRFplus. Se puede acceder a ella de dos maneras:

  1. A través del menú, seleccione Herramientas → Simulación.
  2. Haciendo clic en el botón Simulación para la función, expresión o acción específica.

Por defecto, la herramienta simula la última versión activa del objeto, pero se pueden seleccionar otras versiones utilizando la opción Fecha/Hora o la última versión inactiva.

Inicializando valores de contexto

Puede definir valores de contexto para inicializar la función o expresión. Estos valores se pueden introducir directamente o importar desde un archivo de Excel. Además, los datos introducidos en la pantalla de entrada se pueden exportar a un archivo Excel.

Resultado de simulación

La simulación se puede ejecutar en dos modos, cada uno con diferentes niveles de detalle de los resultados:

  1. Mostrar solo resultado
  2. Mostrar resultado de pasos de procesamiento intermedio

Interpretación frente a generación de código

Las simulaciones BRFplus se pueden ejecutar en dos modos: interpretación y generación de código. El modo de interpretación proporciona pasos de procesamiento más detallados en los resultados en comparación con el modo de generación de código. Normalmente, durante un proceso de aplicación, solo se ejecuta el modo de generación de código.

Integración de procesos empresariales

En el entorno ABAP, puede llamar una función BRFplus con facilidad. El código de ejemplo se puede generar haciendo clic en el botón Crear modelo de código dentro de la función BRFplus. Este código incluye los siguientes pasos.

  1. Declarar variables de datos: Empiece declarando las variables de datos utilizadas en la función BRFplus.
  2. Establecer contexto: establezca el contexto de la función con los valores necesarios.
  3. Obtener instancia de función: Recupere la instancia de función mediante el GUID de objeto. En escenarios de integración reales, este paso normalmente implica leer la función BRFplus de la configuración para atender a diferentes escenarios empresariales.
  4. Llamar y recuperar: Finalmente, llame la función y recupere el resultado.

En el contexto de TRM como ejemplo, el evento P330 desencadena la ejecución de una función BRFplus configurada durante el procesamiento de formularios.