diff --git a/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java b/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java index b4928a3723e6e256cc801dcf63d8d19c9a970bc5..f5ff1dba8f3e57aaabc5bd5b65c6f1aa6b59b104 100644 --- a/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java +++ b/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java @@ -200,7 +200,11 @@ public class ScoreAccounting { .createAssessmentEntry(cNode, assessedIdentity, se); changes = true; } else if(!same(se, entry)) { - entry.setScore(new BigDecimal(score)); + if(score != null) { + entry.setScore(new BigDecimal(score)); + } else { + entry.setScore(null); + } entry.setPassed(passed); entry = userCourseEnvironment.getCourseEnvironment().getAssessmentManager().updateAssessmentEntry(entry); identToEntries.put(cNode.getIdent(), entry); diff --git a/src/main/java/org/olat/upgrade/OLATUpgrade_11_0_0.java b/src/main/java/org/olat/upgrade/OLATUpgrade_11_0_0.java index 73d113fa88afac2c01dd42f2f0b70754474023e3..4782075fd74f7862009c70db75d27ec78d248940 100644 --- a/src/main/java/org/olat/upgrade/OLATUpgrade_11_0_0.java +++ b/src/main/java/org/olat/upgrade/OLATUpgrade_11_0_0.java @@ -256,7 +256,7 @@ public class OLATUpgrade_11_0_0 extends OLATUpgrade { if(!identityKeys.contains(identity.getKey())) { AssessmentEntry entry = createAssessmentEntry(identity, null, course, courseEntry, rootNode.getIdent()); if(statement.getScore() != null) { - entry.setScore(new BigDecimal(statement.getScore().floatValue())); + entry.setScore(new BigDecimal(statement.getScore())); } if(statement.getPassed() != null) { entry.setPassed(statement.getPassed());