diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/reports.py b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/reports.py
index dd22671b5098078159120b593c409c81045797f3..6e52292e741145bbc8f3b91a9456233866b15555 100644
--- a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/reports.py
+++ b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/reports.py
@@ -91,7 +91,27 @@ def _get_average_efficiency(cycle: models.Cycle):
 
 
 def _get_completion_level(cycle: models.Cycle):
-    return 0
+    """
+    Help function to retrieve the completion level info.
+    """
+    result = {'target': '0%'}  # TODO: Change it properly when it will be implemented.
+
+    subtasks = []
+    projects = models.Project.objects.filter(cycles=cycle)
+    for p in projects:
+        # Get Subtask observations related to the project
+        subtasks = models.Subtask.objects.filter(
+            task_blueprints__scheduling_unit_blueprint__draft__scheduling_set__project__pk=p.pk) \
+            .filter(specifications_template__type='observation')
+
+    total = 0
+    total_succeeded = 0
+    for s in subtasks:
+        total += s.duration.total_seconds()
+        total_succeeded += s.duration.total_seconds() if s.state == 'finished' else 0
+    result['total'], result['succeeded'] = total, total_succeeded
+
+    return result
 
 
 def _get_observation_hours_per_category(cycle: models.Cycle):