本文整理汇总了Java中org.pentaho.di.core.database.Database.getOneRow方法的典型用法代码示例。如果您正苦于以下问题:Java Database.getOneRow方法的具体用法?Java Database.getOneRow怎么用?Java Database.getOneRow使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.pentaho.di.core.database.Database
的用法示例。
在下文中一共展示了Database.getOneRow方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getLastExecutionResult
import org.pentaho.di.core.database.Database; //导入方法依赖的package包/类
public static String getLastExecutionResult(LogChannelInterface log, LoggingObjectInterface parentObject, ReportSubjectLocation filename) throws KettleException {
LogTableInterface logTable=null;
if (filename.isTransformation()) {
TransMeta transMeta = TransformationInformation.getInstance().getTransMeta(filename);
logTable = transMeta.getTransLogTable();
} else {
JobMeta jobMeta = JobInformation.getInstance().getJobMeta(filename);
logTable = jobMeta.getJobLogTable();
}
if (logTable!=null && logTable.isDefined()) {
DatabaseMeta dbMeta = logTable.getDatabaseMeta();
Database database = new Database(parentObject, dbMeta);
try {
database.connect();
String sql="SELECT ";
sql+=dbMeta.quoteField(logTable.getStatusField().getFieldName())+", ";
sql+=dbMeta.quoteField(logTable.getLogDateField().getFieldName())+", ";
sql+=dbMeta.quoteField(logTable.getErrorsField().getFieldName())+"";
sql+=" FROM ";
sql+=dbMeta.getQuotedSchemaTableCombination(logTable.getSchemaName(), logTable.getTableName());
sql+=" ORDER BY "+dbMeta.quoteField(logTable.getLogDateField().getFieldName())+" DESC";
RowMetaAndData oneRow = database.getOneRow(sql);
String status = oneRow.getString(0, "?");
Date date = oneRow.getDate(1, null);
Long nrErrors = oneRow.getInteger(2);
String evaluation;
if (status.equalsIgnoreCase(LogStatus.END.getStatus())) {
evaluation = "Ended";
} else if (status.equalsIgnoreCase(LogStatus.START.getStatus())) {
evaluation = "Started";
} else if (status.equalsIgnoreCase(LogStatus.STOP.getStatus())) {
evaluation = "Stopped";
} else if (status.equalsIgnoreCase(LogStatus.RUNNING.getStatus())) {
evaluation = "Running";
} else if (status.equalsIgnoreCase(LogStatus.PAUSED.getStatus())) {
evaluation = "Paused";
} else if (status.equalsIgnoreCase(LogStatus.ERROR.getStatus())) {
evaluation = "Failed";
} else {
evaluation = "Unknown";
}
if (nrErrors>0) {
evaluation+=" with errors";
} else {
evaluation+=" with success";
}
return evaluation+" at "+XMLHandler.date2string(date);
} catch(Exception e) {
log.logBasic("Unable to get logging information from log table"+logTable);
} finally {
database.disconnect();
}
}
return null;
}