diff --git a/src/main/java/org/olat/modules/quality/analysis/manager/EvaluationFormDAO.java b/src/main/java/org/olat/modules/quality/analysis/manager/EvaluationFormDAO.java index fc2ad532563219bf8ff31956059dc3afbf653759..6f75b1c7caa280a1369736357e5cd2712ce9fb31 100644 --- a/src/main/java/org/olat/modules/quality/analysis/manager/EvaluationFormDAO.java +++ b/src/main/java/org/olat/modules/quality/analysis/manager/EvaluationFormDAO.java @@ -54,16 +54,17 @@ public class EvaluationFormDAO { sb.append(" , count(distinct collection) as numberDataCollections"); sb.append(" , min(collection.start) as soonestDataCollectionDate"); sb.append(" , max(collection.deadline) as latestDataCollectionDate"); - sb.append(" , count(session) as numberParticipants"); + sb.append(" , count(session.key) as numberParticipants"); sb.append(" )"); - sb.append(" from qualitydatacollection as collection"); + sb.append(" from repositoryentry form"); sb.append(" inner join evaluationformsurvey survey"); - sb.append(" on survey.resName = '").append(QualityDataCollectionLight.RESOURCEABLE_TYPE_NAME).append("'"); - sb.append(" and survey.resId = collection.key"); - sb.append(" inner join survey.formEntry as form"); + sb.append(" on survey.formEntry.key = form.key"); sb.append(" left join evaluationformsession session"); sb.append(" on session.survey.key = survey.key"); sb.append(" and session.status ='").append(EvaluationFormSessionStatus.done).append("'"); + sb.append(" inner join qualitydatacollection as collection"); + sb.append(" on survey.resName = '").append(QualityDataCollectionLight.RESOURCEABLE_TYPE_NAME).append("'"); + sb.append(" and survey.resId = collection.key"); sb.append(" "); appendWhere(sb, searchParams); sb.append(" group by form.key");