使用 Groovy 指令碼執行 Financial Consolidation and Close 內建規則

隨需規則 (ODR) 允許在整合或轉換程序外部執行計算。這對於業務需求不需要完全整合的情況很實用。隨需規則也非常有效,十分適合快速計算需求。下列範例為您示範如何利用隨需規則編寫 Groovy 指令碼規則。

方法 1 - 使用 EPM Cloud 型命名連線

  1. 建立新的 EPM Cloud 型連線。

  2. 提供以 /HyperionPlanning 結尾的 URL。

  3. 提供服務管理員認證。

  4. 提供網域名稱。

  5. 按一下驗證來驗證連線。

  6. 按一下儲存並關閉


    建立 EPM Cloud 連線

    Groovy 指令碼範例 1


    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()

方法 2 - 使用其他 Web 服務提供者命名的連線

  1. 建立新的其他 Web 服務提供者型連線。

  2. 提供完整的 URL 和 /HyperionPlanning/rest/v3/applications/<AppName>/jobs

  3. 提供執行 Groovy 規則時必填的使用者認證。

  4. 按一下儲存並關閉


建立 Groovy 其他 Web 連線

Groovy 指令碼範例 2


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()

使用上述方法之一建立連線後,您可以從「規則」卡、「工作」或使用 EPM Automate 執行 Groovy 型規則。