Introducción

En este tutorial se presenta el lenguaje de scripts Groovy y se muestra cómo crear un script Groovy para Planning en el servicio de Oracle EPM Enterprise Cloud.

Antecedentes

Groovy es un lenguaje ágil y dinámico para la plataforma Java que combina la integración fluida de Java con las ventajas del rendimiento de Java. Muchas funciones de Groovy se inspiran en lenguajes como Python, Ruby y Smalltalk, lo que las pone a disposición de los desarrolladores de Java mediante una sintaxis similar a Java. Groovy ha sido adoptado por muchas grandes y pequeñas empresas, incluidas Oracle, IBM y SAP, por sus potentes funciones de lenguaje estático y dinámico, seguridad para entornos en la nube y lenguajes específicos de dominio.

Requisitos

Los tutoriales prácticos de Cloud EPM pueden requerir que importe una instantánea en su instancia de Cloud EPM Enterprise Service. Antes de importar una instantánea de tutorial, debe solicitar otra instancia de Cloud EPM Enterprise Service o eliminar la aplicación y el proceso de negocio actuales. La instantánea del tutorial no se importará a través de su aplicación o proceso de negocio existente, ni reemplazará o restaurará automáticamente la aplicación o el proceso de negocio con el que está trabajando actualmente.

Antes de comenzar este tutorial, debe:

  • Tener acceso de administrador de servicio a una instancia de Cloud EPM Enterprise Service.
  • Cargue e importe esta instantánea en la instancia de Planning.

Note:

Si se producen errores de migración al importar la instantánea, vuelva a ejecutar la migración excluyendo el componente de HSS-Shared Services, así como los artefactos de seguridad y preferencias de usuario en el componente Core. Para obtener más información sobre la carga y la importación de instantáneas, consulte la documentación de Administración de migración para Oracle Enterprise Performance Management Cloud.

¿Por qué Groovy?

Descripción de las limitaciones de los scripts de cálculo

Planning utiliza reglas de negocio basadas en script de cálculo para realizar cálculos y acciones. Si bien estos scripts son potentes, tienen algunas limitaciones:

  • No pueden generar scripts de forma dinámica en tiempo de ejecución en función de contextos distintos de las peticiones de datos en tiempo de ejecución introducidas por el usuario. Por ejemplo, si cambia algunas celdas de un formulario, una regla de negocio de script de cálculo no tiene forma de identificar qué datos se han cambiado y, a continuación, realizar el cálculo solo en función de esos datos.
  • No pueden especificar dinámicamente el principal para un miembro actual (por ejemplo, por tipo de proyecto o región).
  • No puede validar los datos introducidos por el usuario ni los valores de petición de datos en tiempo de ejecución antes de ejecutar el cálculo.
  • No puede combinar varias funciones de EPM en una sola regla o conjunto de reglas (por ejemplo, ejecutar automáticamente una operación de envío inteligente después de calcular).
  • Pueden experimentar problemas de rendimiento debido a su naturaleza estática (por ejemplo, requieren un cálculo de una gran parte de la base de datos, incluso cuando solo se han actualizado unas pocas celdas).
  • Aunque los cálculos específicos de contexto limitados están disponibles en formularios haciendo clic con el botón secundario y calculando solo una fila específica, esta opción es menos útil para formularios grandes o en los que se actualizan celdas en varias filas.
  • Para las aplicaciones ASO, solo proporcionan cálculos simples.

Beneficios de las reglas de script Groovy

Con soporte para reglas de Groovy en Oracle EPM Enterprise Cloud, puede solucionar todos estos problemas. Las reglas de Groovy permiten:

  • Generar dinámicamente scripts de cálculo en tiempo de ejecución en función de los contextos definidos en el script Groovy
  • Agregar comprobaciones de validación para valores de petición de datos en tiempo de ejecución antes de ejecutar cálculos, agregar comprobaciones de validación de datos antes de enviar datos y agregar manejo de errores
  • Iniciar varias funciones de EPM con una sola regla (por ejemplo, ejecutar un cálculo y, a continuación, ejecutar una operación de envío inteligente para mover los datos calculados a un cubo de informes)
  • Mejorar el rendimiento mediante la creación de cálculos específicos (por ejemplo, la creación dinámica de scripts de cálculo personalizados basados en los datos modificados en el formulario actual)
  • Realizar cálculos de procedimiento complejos en memoria antes de enviar los resultados a la base de datos

Groovy en la nube empresarial de Oracle EPM

Tipos de reglas Groovy

Oracle soporta dos tipos de reglas de Groovy:

  1. Reglas que pueden generar, de manera dinámica, scripts de cálculo en tiempo de ejecución según cualquier contexto salvo las peticiones de datos en tiempo de ejecución y devuelven el script de cálculo que, a continuación, se ejecuta en Oracle Essbase.

    Por ejemplo, podría crear una regla para calcular los gastos de proyectos solo para la duración (fecha de inicio y finalización) del proyecto.

    Otro ejemplo es un cálculo basado en tendencias que restringe el cálculo a las cuentas disponibles en el formulario. Podría usar este cálculo para diversos formularios en Ingresos, Gastos, Balance general y Flujo de efectivo. Esto permite optimizarlo y reutilizarlo.

  2. Reglas de Groovy puras que pueden, por ejemplo, realizar validaciones de datos y cancelar la operación si los datos introducidos infringen las políticas de la compañía.

Note:

Cualquier script Groovy que devuelva una cadena devuelve un script de cálculo de Essbase que se ejecutará en el cubo de Essbase especificado. Evite usar cadenas como valor final de la última sentencia a menos que se trate por un script de cálculos que desea ejecutar después del inicio correcto del script Groovy.

Las reglas Groovy se crean en Calculation Manager y se pueden ejecutar desde cualquier lugar de la aplicación en el que se pueda ejecutar una regla de negocio.

Uso de las API de scripts de EPM Groovy

  • Las API de scripts de EPM Groovy permiten a los scripts de Groovy realizar diversas operaciones en el modelo de objetos de EPM. La mayoría de los objetos, como la aplicación, el cubo y la cuadrícula actuales, se pueden recuperar de la variable de operación. En la mayoría de los casos, el punto de entrada a la API serán métodos de la clase base EpmScript o el objeto Operation.
  • El script base y la operación actual tienen un juego de variables que se aplican al script. Por ejemplo, si el script hace referencia a una variable como operation.grid y la cuadrícula no existe en la operación, cuando se ejecuta el script, el sistema detiene el script y registra un error en la consola de trabajos. Si el script tiene un procesamiento opcional, como dar formato a la cuadrícula si existe, primero puede comprobar la existencia de la cuadrícula llamando a operation.hasGrid(). Hay patrones similares disponibles para otros objetos en el modelo.
  • Sugerencia:

    Para conocer la especificación de API de EPM Groovy Scripting Platform, consulte Referencia de API de Java de Oracle Enterprise Performance Management Cloud, Groovy Rules

Creación de reglas de negocio de Groovy

Oracle soporta dos tipos de reglas de Groovy:

  1. En una aplicación de Planning de EPM Enterprise Cloud, abra el navegador y, en Crear y gestionar, haga clic en Reglas para mostrar Calculation Manager.
  2. Reglas del navegador
  3. En Calculation Manager, seleccione Acciones y, a continuación, seleccione Nuevo objeto. En el cuadro de diálogo, seleccione un tipo de aplicación, una aplicación y un cubo. En Tipo de objeto, seleccione Regla. Introduzca un Nombre para la Regla y, a continuación, haga clic en Aceptar.
  4. Diálogo de nuevo objeto
  5. Se muestra un mensaje que indica que la regla se ha creado y abierto para edición. Haga clic en Aceptar para continuar.
  6. En la lista desplegable Designer, seleccione Edit Script
  7. Editar Script
  8. En la lista desplegable Script Type (Tipo de script), seleccione Groovy Script (Script).
  9. Script Groovy
  10. Haga clic en Icono de guardar(Guardar). La regla ahora es una regla de negocio basada en Groovy Script y puede utilizar el editor para desarrollar el script según el caso de uso de negocio. En el siguiente ejemplo se muestra un script Groovy simple en el editor que cambiará el color de fondo de las celdas de una cuadrícula de datos, en función de umbrales numéricos. También puede abrir el script para verlo en otro separador.
  11. Ejemplo de script

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite Oracle University para ver los recursos de formación disponibles.

Para obtener documentación sobre el producto, visite Oracle Help Center.