Las reglas a petición permiten ejecutar cálculos fuera de los procesos de consolidación o conversión. Resulta útil para las situaciones en las que no se necesita una consolidación total para los requisitos del negocio. Las reglas a petición son también muy eficientes y pueden resultar muy útiles para realizar cálculos rápidos. Los ejemplos que aparecen a continuación le muestran cómo escribir una regla de script Groovy utilizando una regla a petición.
Enfoque 1: uso de conexiones con nombre basadas en EPM Cloud
Cree una nueva conexión basada en EPM Cloud.
Proporcione una URL que acabe en /HyperionPlanning
.
Introduzca las credenciales del administrador de servicio.
Indique el nombre de dominio.
Haga clic en Validar para validar la conexión.
Haga clic en Guardar y en Cerrar.
Ejemplo de script Groovy 1
/*RTPS: {Scenario} {Years} {Period} {Entity}*/ String sScenario = rtps.Scenario.toString() String sYears = rtps.Years.toString() String sPeriod = rtps.Period.toString() String sEntity = rtps.Entity.toString() HttpResponse<String> jsonResponse = operation.application.getConnection("Consolidation Application").post("/rest/v3/applications/<AppName>/jobs") .header("Content-Type", "application/json") .body(json(["jobType" : "Rules", "jobName" : "Translate", "parameters": [ "Currency":"USD_Reporting", "Scenario":"${sScenario}", "Entity":"${sEntity}", "Year":"${sYears}", "Period":"${sPeriod}" ] ])).asString()
Enfoque 2: uso de conexiones con nombre de otro proveedor de servicios web
Cree una nueva conexión basada en otro proveedor de servicios web.
Proporcione la URL completa con /HyperionPlanning/rest/v3/applications/<AppName>/jobs
.
Introduzca las credenciales de usuario que se van a usar para ejecutar la regla Groovy.
Haga clic en Guardar y en Cerrar.
Ejemplo de script Groovy 2
/*RTPS: {Scenario} {Years} {Period} {Entity}*/ String sScenario = rtps.Scenario.toString() String sYears = rtps.Years.toString() String sPeriod = rtps.Period.toString() String sEntity = rtps.Entity.toString() HttpResponse<String> jsonResponse = operation.application.getConnection("Jobs").post() .header("Content-Type", "application/json") .body(json(["jobType" : "Rules", "jobName" : "Translate", "parameters": [ "Currency":"USD_Reporting", "Scenario":"${sScenario}", "Entity":"${sEntity}", "Year":"${sYears}", "Period":"${sPeriod}" ] ])).asString()
Después de crear las conexiones usando uno de los enfoques anteriores, puede ejecutar reglas Groovy desde la tarjeta de reglas o trabajos, o utilizando EPM Automate.