diff --git a/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java b/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java
index 2f9636f9dcfe7248e69cb389e0fc0f2632e6a156..a5713217cdb1bd13d50f6f504ed9c00530b4ef37 100644
--- a/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java
+++ b/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java
@@ -67,12 +67,22 @@ public class CalculatedLong {
 	}
 	
 	private static String trimZerosFromEnd(String value) {
-		int len = value.length();
-		int st = 0;
-		while ((st < len) && (value.charAt(len - 1) == '0' || value.charAt(len - 1) == '.')) {
-			len--;
+		if (value.contains(".")) {
+			int len = value.length();
+			int st = 0;
+			while (st < len) {
+				if (value.charAt(len - 1) == '0') {
+					len--;
+				} else if (value.charAt(len - 1) == '.') {
+					len--;
+					break; // stop at decimal point
+				}
+			}
+			System.out.println("trimmed: "+value.substring(0, len));
+			return value.substring(0, len);
 		}
-		return value.substring(0, len);
+		System.out.println("untrimmed: " + value);
+		return value;
 	}
 
 }
diff --git a/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java b/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java
index eef54f22cc10773783604a9c9c5f7d7dbc6054b4..4b57c03f2e9a200928100dc98f152e5b4d8dded1 100644
--- a/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java
+++ b/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java
@@ -203,9 +203,11 @@ public class EvaluationFormReportDAOTest extends OlatTestCase {
 		EvaluationFormSession session1 = evaTestHelper.createSession();
 		EvaluationFormSession session2 = evaTestHelper.createSession();
 		EvaluationFormSession session3 = evaTestHelper.createSession();
+		EvaluationFormSession session4 = evaTestHelper.createSession();
 		EvaluationFormSession otherSession = evaTestHelper.createSession();
 		BigDecimal numberThreeTimes = BigDecimal.valueOf(1);
 		BigDecimal numberOnce = BigDecimal.valueOf(2);
+		BigDecimal ten = BigDecimal.valueOf(10);
 		
 		evaluationFormManager.createNumericalResponse(responseIdentifier1, otherSession, numberThreeTimes);
 		evaluationFormManager.createNoResponse(responseIdentifier1, session1);
@@ -216,23 +218,28 @@ public class EvaluationFormReportDAOTest extends OlatTestCase {
 		evaluationFormManager.finishSession(session1);
 		evaluationFormManager.createNumericalResponse(responseIdentifier1, session2, numberThreeTimes);
 		evaluationFormManager.finishSession(session2);
-		// unfinished session counts as well
+		evaluationFormManager.createNumericalResponse(responseIdentifier1, session4, ten);
+		evaluationFormManager.finishSession(session4);
+		// unfinished session counts as well (use filter if not wanted)
 		evaluationFormManager.createNumericalResponse(responseIdentifier1, session3, numberThreeTimes);
 		dbInstance.commit();
 		
 		List<String> responseIdentifiers = Arrays.asList(responseIdentifier1, responseIdentifier2);
-		List<EvaluationFormSession> sessions = Arrays.asList(session1, session2, session3);
+		List<EvaluationFormSession> sessions = Arrays.asList(session1, session2, session3, session4);
 		SessionFilter filter = SessionFilterFactory.create(sessions);
 		List<CalculatedLong> counts = sut.getCountByIdentifiersAndNumerical(responseIdentifiers, filter);
 		
-		assertThat(counts).hasSize(3);
+		assertThat(counts).hasSize(4);
 		assertThat(getValue(counts, responseIdentifier1, numberThreeTimes.toPlainString())).isEqualTo(3);
 		assertThat(getValue(counts, responseIdentifier1, numberOnce.toPlainString())).isEqualTo(1);
+		assertThat(getValue(counts, responseIdentifier1, ten.toPlainString())).isEqualTo(1);
 		assertThat(getValue(counts, responseIdentifier2, numberOnce.toPlainString())).isEqualTo(1);
 	}
 	
 	private Long getValue(List<CalculatedLong> calculatedLongs, String identifier, String subidentifier) {
+		System.out.println("Wanted: " + identifier + "/" + subidentifier);
 		for (CalculatedLong calculatedLong: calculatedLongs) {
+			System.out.println("has: " + calculatedLong.getIdentifier() + "/" + calculatedLong.getSubIdentifier() + " = " + calculatedLong.getValue());
 			if (calculatedLong.getIdentifier().equals(identifier) && calculatedLong.getSubIdentifier().equals(subidentifier)) {
 				return calculatedLong.getValue();
 			}