//проверка, что результаты всех выборок соответствуют результатам отчета
for(int i=0; i<cores.size(); i++) {
QCore core = cores.get(i);
CoreColumnList coreColumns = core.getColumns();
if(coreColumns.size() != results.size()) {
throw new ReportException("Результаты выборки '" + core.getTitle()
+ "' не соответствуют результатам отчета");
}
for(int j=0; j<coreColumns.size(); j++) {
QueryResultColumn coreCol = coreColumns.get(j);
ReportResultColumn resultCol = results.get(j);
Class coreCls = coreCol.getCls();
Class resCls = resultCol.getCls();
if(resCls == null) {
throw new ReportException("Результаты выборки '" + coreCol.getColTitle()
+ "' не может быть равен null");
} else if (coreCls != null && !coreCls.equals(resCls)) {
throw new ReportException("Результаты выборки '" + coreCol.getColTitle()
+ "' не соответствует результату отчета по типу ("
+ coreCol.getCls().getSimpleName() + " != "
+ resultCol.getCls().getSimpleName() + ")");
}
}