JAVA API 列表

表 7-3 JAVA API 列表

API 说明
BigDecimal getPOVLocation(BigDecimal pLoadId) 根据加载 ID 返回分区键。
BigDecimal getPOVCategory(BigDecimal pLoadId) 根据加载 ID 返回类别键。
Date getPOVStartPeriod(BigDecimal pLoadId) 根据加载 ID 返回起始期间的期间键。
Date getPOVEndPeriod(BigDecimal pLoadId) 根据 LOADID 返回结束期间的期间键。加载单个期间时,起始期间和结束期间相同。
executePLSQL

执行过程语言 (Procedural Language, PL)/结构化查询语言 (Structured Query Language, SQL) 代码块。此 API 使用以下三个参数:

  • String - 有效的 PL/SQL 代码块。

    必须用双引号将 PL/SQL 块括起。

  • Object array - Java 对象的输入数组(例如String, BigDecimal),表示代码块的输入参数。

    该对象数组用于插入到其中有占位符(问号)的 PL/SQL。

  • Boolean - 是否执行提交

    布尔值为 True 或 False。

以下是如何执行 PL/SQL 的示例:

fdmAPI.executePLSQL("BEGIN dbms_stats.gather_table_stats(user,?,estimate_percent=>dbms_stats.auto_sample_size,force=>TRUE); END;", ["tDataSeg_T"], True);
getBatchJobDetails

getBatchJobDetails 将为批处理提交的每个作业返回以下列:

  • BATCH_ID

  • BATCH_NAME

  • APPLICATION_ID

  • BATCH_TYPE

  • BATCH_EXECUTION_MODE

  • BATCH_WAIT_TIMEOUT

  • USER_POV_PERIOD

  • OPEN_BATCH_FOLDER

  • PLAN_TYPE

  • FILENAME_SEPARATOR

  • BATCH_GROUP_ID

  • BEF_PROCESS_BATCH_SCRIPT

  • AFT_PROCESS_BATCH_SCRIPT

  • EXECUTION_DATE

  • EXECUTED_BY

  • LOADID

  • BATCH_LOADID

  • PARENT_BATCH_LOADID

  • PARTITIONKEY

  • CATKEY

  • START_PERIODKEY

  • END_PERIODKEY

  • IMPORT_FROM_SOURCE_FLAG

  • EXPORT_TO_TARGET_FLAG

  • RECALCULATE_FLAG

  • CHECK_FLAG

  • JOURNAL_FLAG

  • IMPORT_MODE

  • EXPORT_MODE

  • IMPGROUPKEY

  • PROCESS_NAME

  • RULE_TYPE

  • LOG_FILE

  • OUTPUT_FILE

  • EPM_ORACLE_INSTANCE

  • ODI_SESSION_NUMBER

  • STATUS

int executeDML(String query,Object[] parameters) 执行任何 DML 语句。提供查询和参数。参数以列表形式提供。
logDB(String pEntityType, String pEntityName, int pLogSequence, String pLogMessage) 将消息记录到数据库表 AIF_PROCESS_LOGS 中。
logFatal(String pLogMessage) 在发生严重错误时记录消息。在所有日志级别都会显示该消息。
logError(String pLogMessage) 在发生错误时记录消息。在日志级别 2 或更高级别会显示该消息。
logWarn(String pLogMessage) 在发生警告状态错误时记录消息。在日志级别 3 或更高级别会显示该消息。
logInfo(String pLogMessage) 记录信息性消息。在日志级别 4 或更高级别会显示该消息。
logDebug(String pLogMessage) 记录调试消息。在日志级别 5 会显示该消息。
Map getProcessStates(BigDecimal pLoadId)

返回工作流进程状态。

可用状态:

  • IMPSTATUS - 返回导入进程的状态。

    状态 0 指示进程尚未启动或者流程已失败。状态 1 指示进程成功。

  • VALSTATUS - 返回验证进程的状态。

    状态 0 指示进程尚未启动或者流程已失败。状态 1 指示进程成功。

  • EXPSTATUS - 返回导出进程程的状态。

    状态 0 指示进程尚未启动或者流程已失败。状态 1 指示进程成功。

  • CHKSTATUS - 返回检查进程的状态。

    状态 0 指示进程尚未启动或者流程已失败。状态 1 指示进程成功。

  • PROCESSSTATUS - 返回确切的错误代码。错误代码的详细信息可以在 tlogprocessstates 表中找到。

Map getPeriodDetail(Date pPeriodKey,String pApplicationName) //返回 PERIODTARGET 和 YEARTARGET 返回给定期间键的目标期间映射。
Object getCustomScriptParameterValue(BigDecimal pLoadId,String pParameterName) 返回给定自定义脚本参数名称和加载 ID 的值。
Object getCustomScriptParameterValue(String pParameterName) 返回给定自定义脚本参数名称和上下文初始化后的加载 ID 的值。
ResultSet getBatchDetails()

返回 AIF_BATCHES 表中的批处理定义信息。

getBatchDetails() 返回的字段包括:

  • BATCH_ID

  • BATCH_NAME

  • APPLICATION_ID

  • BATCH_TYPE

  • BATCH_EXECUTION_MOD

ResultSet getBatchJobDetails(BigDecimal pLoadId) 检索针对给定加载 ID 记录到数据库表 AIF_PROCESS_LOGS 中的错误消息。
ResultSet getCategoryList()

在结果集中返回类别列表。

getCategoryList() 返回的字段包括:

  • CATKEY

  • CATNAME

ResultSet getCheckEntityGroupList(BigDecimal pApplicationId) 在结果集中返回检查组列表。
ResultSet getCheckEntityForGroup(String pValGroupKey) 在结果集中返回检查组中实体的列表。
ResultSe tgetCheckEntityGroupList(BigDecimal pApplicationId) 在结果集中返回检查规则组列表。
ResultSet getCheckEntityForGroup 在结果集中返回检查规则组规则列表。
ResultSet getCustomDBLog()

检索针对当前进程记录到数据库表 AIF_PROCESS_LOGS 中的错误消息。

getCustomDBLog() 返回的字段包括:

  • ENTITY_TYPE

  • ENTITY_NAME

  • LOG_SEQUENCE

ResultSet getCustomDBLog(BigDecimal pLoadId) 返回数据库中针对给定加载 ID 的日志语句。
ResultSet getCustomScriptParameters() 针对上下文初始化后的 loadID,在结果集中返回自定义脚本参数列表。
ResultSet getCustomScriptParameters(BigDecimal pLoadId) 针对给定加载 ID,在结果集中返回自定义脚本参数列表。
ResultSet getPeriodList()

在结果集中返回期间列表。

getPeriodList() 返回的字段包括:

  • PERIODKEY

  • PERIODDESC

ResultSet executeQuery(String query, Object[] parameters) 执行任何 SQL 查询语句。会在结果集中返回查询结果。提供查询和参数。参数以列表形式提供。
ResultSet getImportFormatDetails(String pImpGroupKey)

根据导入格式键,在结果集中返回导入格式详细信息。

getImportFormatDetails(String pImpGroupKey) 返回的字段包括:

  • IMPGROUPKEY

  • IMPGROUPDESC

  • IMPGROUPFILETYPE

  • IMPGROUPDELIMITER

  • IMPGROUPTYPE

  • IMPSOURCESYSTEMID

  • IMPSOURCELEDGERID

  • IMPSOURCECOAID

  • IMPTARGETAPPLICATIONID

  • IMPADAPTERID

  • IMPDRILLURLID

  • IMPODISCENARIO

  • IMPREGENSCEN

  • IMPDRILLREQUESTMETHOD

  • IMPDRILLURL

  • IMPTARGETSOURCESYSTEMID

ResultSet getImportFormatMapDetails(String pImpGroupKey)

针对给定导入格式键,在结果集中返回导入格式映射详细信息。当前只支持基于文件的导入格式。

getImportFormatMapDetails(String pImpGroupKey) 返回的字段包括:

  • IMPSEQ

  • IMPGROUPKEY

  • IMPFLDFIELDNAME

  • IMPFLDFIXEDTEXT

  • IMPFLDSTARTPOS

  • IMPFLDLENGTH

  • IMPFLDSOURCECOLNAME

ResultSet getLocationDetails(BigDecimal pPartitionKey)

针对给定位置键,在结果集中返回位置详细信息。

getLocationDetails 返回的字段包括:

  • PARTITIONKEY

  • PARTNAME

  • PARTDESC

  • PARTNOTES

  • PARTLASTIMPFILE

  • PARTLASTEXPFILE

  • PARTIMPGROUP

  • PARTLOGICGROUP

  • PARTVALGROUP

  • PARTVALENTGROUP

  • PARTCURRENCYKEY

  • PARTPARENT

  • PARTTYPE

  • PARTSEQMAP

  • PARTDATAVALUE

  • PARTSEGMENTKEY

  • PARTCONTROLSTYPE

  • PARTCONTROLSGROUP1

  • PARTCONTROLSGROUP2

  • PARTCONTROLSAPPROVER

  • PARTCONTROLSAPPROVERPROXY

  • PARTCONTROLSREDFLAGLEVEL

  • PARTCLOGICGROUP

  • PARTINTGCONFIG1

  • PARTINTGCONFIG2

  • PARTINTGCONFIG3

  • PARTINTGCONFIG4

  • PARTADAPTOR

  • PARTSOURCESYSTEMID

  • PARTSOURCELEDGERID

  • PARTTARGETAPPLICATIONID

  • PARTPARENTKEY

  • PARTSOURCEAPPLICATIONID

  • PARTTARGETSOURCESYSTEMID

例如,如果要了解 getLocationDetails API 返回的字段,请运行以下脚本:

rs = fdmAPI.getLocationDetails(fdmContext["LOCKEY"])
i = 1
metaData = rs.getMetaData()
while i <= metaData.getColumnCount():
  fdmAPI.logDebug(metaData.getColumnLabel(i))
  i +=1
ResultSet getRuleDetails(BigDecimal pRuleId)

针对给定数据规则 ID,在结果集中返回数据规则详细信息。

getRuleDetails(BigDecimal pRuleId) 返回的字段包括:

  • RULE_ID

  • SOURCE_SYSTEM_ID

  • SOURCE_LEDGER_ID

  • APPLICATION_ID

  • RULE_NAME

  • RULE_DESCRIPTION

  • PLAN_TYPE

  • LEDGER_GROUP

  • INCL_ZERO_BALANCE_FLAG

  • BALANCE_SELECTION

  • AMOUNT_TYPE

  • BALANCE_METHOD_CODE

  • BALANCE_TYPE

  • BAL_SEG_VALUE_OPTION_CODE

  • EXCHANGE_RATE_OPTION_CODE

  • EXCHANGE_BEGIN_RATE_TYPE

  • EXCHANGE_END_RATE_TYPE

  • EXCHANGE_AVERAGE_RATE_TYPE

  • DATA_SYNC_OBJECT

  • DATA_SYNC_OBJECT_ID

  • PARTCONTROLSAPPROVERPROXY

  • PARTCONTROLSREDFLAGLEVEL

  • STATUS

  • PARTITIONKEY

  • CATKEY

  • INCLUDE_ADJ_PERIODS_FLAG

  • BALANCE_AMOUNT_BS

  • BALANCE_AMOUNT_IS

  • AS_OF_DATE

  • BLANK_PERIODKEY

  • BR_MEMBER_NAME

  • BR_MEMBER_DISP_NAME

  • CALENDAR_ID

  • CURRENCY_CODE

  • DP_MEMBER_NAME

  • FILE_NAME_DATE_FORMAT

  • FILE_NAME_STATIC

  • FILE_NAME_SUFFIX_TYPE

  • FILE_PATH

  • LEDGER_GROUP_ID

  • PERIOD_MAPPING_TYPE

  • VERSION

  • SIGNAGE_METHOD

  • DIRECT_FILE_LOAD_FLAG

  • LOAD_OPTIONS

  • RULE_ATTR1

  • RULE_ATTR2

  • RULE_ATTR3

  • RULE_ATTR4

  • ICP_LOAD

  • MULTI_PERIOD_FILE_FLAG

  • IMPGROUPKEY

  • SOURCE_APP_PLAN_TYPE

showCustomDBLog() 在完成进程后,在用户界面中显示一组自定义消息。消息可在数据加载工作流步骤(例如,导入、验证、导出、检查)完成后显示,或在自定义脚本执行后显示。请注意,仅当进程在联机模式下运行时才会显示消息。
showCustomFile(String filePath) 在完成进程后,在用户界面中显示一个自定义文件(日志文件、报表文件)。消息可在数据加载工作流步骤(例如,导入、验证、导出、检查)完成后显示,或在自定义脚本执行后显示。请注意,仅当进程在联机模式下运行时才会显示消息。
showCustomMessage(String message) 在完成进程后,在用户界面中显示一条自定义消息。消息可在数据加载工作流步骤(例如,导入、验证、导出、检查)完成后显示,或在自定义脚本执行后显示。请注意,仅当进程在联机模式下运行时才会显示消息。
String getCategoryMap(BigDecimal pCatKey,String pApplicationName) 针对给定类别和应用程序名称返回方案。
String getCustomMessage() 检索当前进程中发出的最后一条自定义消息。
String getCustomFile(BigDecimal pLoadId) 检索针对给定加载 ID 发出的最后一条自定义消息。
String getCustomFile() 检索为当前进程创建的自定义文件。
String getCustomFile(BigDecimal pLoadId) 检索针对给定加载 ID 创建的自定义文件。
String getPOVDataValue(BigDecimal pPartitionKey) 返回位置的数据值。
String getDirTopLevel(BigDecimal pApplicationId) 根据应用程序返回顶级目录。
String getDirInbox(BigDecimal pApplicationId) 根据应用程序返回 Inbox 目录。
String getDirOutbox(BigDecimal pApplicationId) 根据应用程序返回 Outbox 目录。
String getDirScripts(BigDecimal pApplicationId) 根据应用程序返回 Scripts 目录。
String getProfileOptionValue(String pProfileOptionName, BigDecimal pApplicationId, String pUserName) 返回选项的值集。可以在“系统设置”、“应用程序设置”和“用户设置”中设置选项。优先顺序依次为:用户、应用程序和系统。该 API 可决定适用的值并返回该值。
void writeToProcessLogsDB(BigDecimal pLoadId, String pEntityType, String pEntityName, int pLogSequence,String pLogMessage) 将日志信息写入 AIF_PROCESS_LOGS 表中。使用“实体类型”和“实体名称”对记录的消息分组。只能从一个数据加载工作流进程创建日志。
void writeToProcessLogsFile(BigDecimal pLoadId, String pLogMessage)

将日志信息写入数据加载进程日志文件。日志根据进程日志级别写入。只能从一个数据加载工作流进程创建日志。

注:

建议使用日志记录 API(例如 logDebug 或 logInfo API),而不使用 writeToProcessLogsFile API。

void closeConnection() 用于关闭数据库连接。
void closeResultSet(ResultSet resultSet) 用于关闭结果对象。
void updateImportFormat(String pImpgroupKey,BigDecimal pLoadId) 更新当前运行的导入格式。这仅适用于基于文件的导入格式。