diff --git a/src/main/java/org/olat/course/assessment/bulk/DataStepForm.java b/src/main/java/org/olat/course/assessment/bulk/DataStepForm.java index 44df63fcb124eccb7492b8ef69bef7e1d61a51b5..66bfd8d98de56eadd137a477e921082a6fd5ca74 100644 --- a/src/main/java/org/olat/course/assessment/bulk/DataStepForm.java +++ b/src/main/java/org/olat/course/assessment/bulk/DataStepForm.java @@ -358,10 +358,16 @@ public class DataStepForm extends StepFormBasicController { } BulkAssessmentRow row = new BulkAssessmentRow(); - row.setAssessedId(values[0]); + String identifyer = values[0]; + identifyer.trim(); + if (!StringHelper.containsNonWhitespace(identifyer)) { + identifyer = "-"; + } + row.setAssessedId(identifyer); if(valuesLength > 1) { String scoreStr = values[1]; + scoreStr= scoreStr.trim(); Float score; if (StringHelper.containsNonWhitespace(scoreStr)) { try { @@ -379,6 +385,7 @@ public class DataStepForm extends StepFormBasicController { if(valuesLength > 2) { String passedStr = values[2]; + passedStr= passedStr.trim(); Boolean passed; if ("y".equalsIgnoreCase(passedStr) || "yes".equalsIgnoreCase(passedStr) @@ -407,6 +414,7 @@ public class DataStepForm extends StepFormBasicController { commentStr += "," + values[i]; } } + commentStr= commentStr.trim(); if(commentStr.isEmpty()) { // ignore empty values diff --git a/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_de.properties index d3cff00ef062c57a7ce364b9abc0e8279586d3df..b3e4f398adf81eb6972f1265a2b58d4990bbfe56 100644 --- a/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_de.properties @@ -21,8 +21,8 @@ bulk.action.wrong.float=falsches Zahlenformat bulk.action.no.coursenodes=Sie haben keinen für die Massenbewertung geeigneten Kursbaustein. Folgende Typen von Kursbausteinen sind geeignet: $org.olat.course.nodes\:title_ms, $org.olat.course.nodes\:title_ta und $org.olat.course.nodes\:title_projectbroker bulk.assessment.error=Eine unerwartete Fehler ist während die Massenbewertung aufgetretten. bulk.assessment.error.title=Nicht alle Bewertung k\u00F6nnte erfolgreich abgelegt werden -bulk.assessment.error.feedback=Hier ist die Liste von Probleme:\n{0} -bulk.assessment.done=Massenbewertung ist fertig. +bulk.assessment.error.feedback=Es sind Probleme aufgetreten. Die folgenden Daten wurden nicht importiert. Die restlichen Daten wurden trotzdem ausgeführt:<p>{0} +bulk.assessment.done=Die Massenbewertung ist fertig. bulk.assessment.enlisted=Die Massenbewertung ist gespeichert und wird zu einem sp\u00E4teren Zeitpunkt bearbeitet. form.step2.error=Es wurden keine Bewertungsdaten eingegeben. form.step3.delimiter.tab=$org.olat.course.assessment\:form.step3.delimiter.tab diff --git a/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_en.properties index fd484f07d0e9231f21bbf370ec1813cd96a3e800..e3caf9510868e217793b1ce35db0d2e48aa3f038 100644 --- a/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/assessment/bulk/_i18n/LocalStrings_en.properties @@ -16,7 +16,7 @@ bulk.action.wrong.float=Wrong format bulk.assessment.done=Bulk assessment is ready bulk.assessment.enlisted=Bulk assessment is saved and will be executed at the scheduled time. bulk.assessment.error=An unexpected error occurred during the bulk assessment -bulk.assessment.error.feedback=The list of issues\:\r\n{0} +bulk.assessment.error.feedback=Errors occurred during import. The following data has not been excluded from the import. The other data has been imported nevertheless.<p>{0} bulk.assessment.error.title=Not all evaluations could be successfully stored bulk.wizard.title=Bulk assessment bulk.wizard.desc=With the tool "Bulk assessment" you can submit assessment data such as score, status, comments or return files for multiple course members in one step. diff --git a/src/main/java/org/olat/course/assessment/manager/BulkAssessmentTask.java b/src/main/java/org/olat/course/assessment/manager/BulkAssessmentTask.java index 2b6e45b4be7d7fe5a8f4ef8b76d4f0c97535f4e5..23b81d6a09b4e0c55a6dd0200b00f8df01933875 100644 --- a/src/main/java/org/olat/course/assessment/manager/BulkAssessmentTask.java +++ b/src/main/java/org/olat/course/assessment/manager/BulkAssessmentTask.java @@ -340,9 +340,9 @@ public class BulkAssessmentTask implements LongRunnable, TaskAwareRunnable { IdentityEnvironment ienv = new IdentityEnvironment(identity, studentRoles); UserCourseEnvironment uce = new UserCourseEnvironmentImpl(ienv, course.getCourseEnvironment()); - //update comment + //update comment, empty string will reset comment String userComment = row.getComment(); - if(hasUserComment && userComment != null && !userComment.equals("")){ + if(hasUserComment && userComment != null){ // Update userComment in db courseNode.updateUserUserComment(userComment, uce, coachIdentity); //LD: why do we have to update the efficiency statement?