EPM 集成代理 API 方法

EPM 集成代理提供许多可在脚本中用于执行以下操作的方法:指定日志文件中的文本、更新绑定变量和查询,以及在使用特殊查询或使用非 SQL 数据源时指示 EPM 集成代理跳过 SQL 处理步骤。

EPM 集成代理 API 方法如下:

API 方法 说明 示例

logInfo()

将信息消息记录到代理进程日志。此条目记录到 EPM_APP_DATA_HOME\logs 文件夹中的进程日志和 Oracle Enterprise Performance Management Cloud 中的作业日志,但不记录到本地 epmagent.log。日志条目在 INFO 日志级别创建。

agentAPI.logInfo("SAMPLE: INFO log message from script")

logError()

将错误消息记录到代理进程日志。此条目记录到 EPM_APP_DATA_HOME\logs 文件夹中的进程日志、EPM 云中的作业日志以及 epmagent.log 中。日志条目在 SEVER 日志级别创建。

agentAPI.logError("SAMPLE: SEVER log message from script")

setBindVariables()

使用 setBindVariables() 方法可更新提取查询的绑定变量。这仅适用于 befExtract 脚本。

对于每个带有变量 NAME 作为键并带有 VALUE 的变量,绑定变量必须作为 java 映射条目来传递。

newBindVar = dict({'PERIOD':'Feb-05', 'LEDGER':'Vision Operations (USA)'})

jmap = java.util.HashMap()

针对 newBindVar.keys(): jmap[key] = newBindVar[key] 中的键

agentAPI.setBindVariables(jmap)

getBindVariables()

使用 getBindVariables() 方法可获取提取查询的绑定变量。每个绑定变量均存储在映射中,映射使用 NAMEVALUE 键来定义绑定变量。

bindVariables = agentAPI.getBindVariables()

针对 bindVariables.entrySet(): print entry.key, entry.value 中的条目

updateQuery()

使用 updateQuery() 方法可更新提取查询。这仅适用于 befExtract 脚本。

agentAPI.updateQuery("SELECT * FROM TDATASEG")

getQuery()

使用 getQuery() 方法可获取在提取执行调用期间从 EPM 云传递到 EPM 集成代理的查询。

print "Printing Query: " + agentAPI.getQuery()

skipAction()

当 EPM 集成代理使用自定义提取例程时,使用 skipAction() 方法可跳过提取数据步骤。

请注意,只能在 befExtract 脚本期间跳过提取执行。

如果要提供一个数据文件以上传到 EPM 云,而不是执行已保存查询,则必须将名为 <process ID>.dat 的文件及时保存到 MyData/data 文件夹,这样才能上传到 EPM 云。这意味着,该文件必须在 befExtractaftExtractbefUpload 脚本中保存到该文件夹中。

agentAPI.skipAction('true')