Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java =================================================================== diff -u -r6e794692c1c8ad0a3e4e7a558dd429d5a2e0ca51 -rffb182a31856ba51b7b9c0d0bfe1cf9789ea7f83 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java (.../MonitoringService.java) (revision 6e794692c1c8ad0a3e4e7a558dd429d5a2e0ca51) +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java (.../MonitoringService.java) (revision ffb182a31856ba51b7b9c0d0bfe1cf9789ea7f83) @@ -1440,11 +1440,14 @@ } continue; } else { + ComplexActivity complexActivity = (ComplexActivity) getActivityById(currentActivity.getActivityId()); // forget all records within complex activity - for (Activity childActivity : (Set) ((ComplexActivity) currentActivity).getActivities()) { + for (Activity childActivity : (Set) complexActivity.getActivities()) { uncompleteActivities.add(childActivity); if (childActivity.isComplexActivity()) { - uncompleteActivities.addAll(((ComplexActivity) childActivity).getActivities()); + ComplexActivity complexChildActivity = (ComplexActivity) getActivityById(childActivity + .getActivityId()); + uncompleteActivities.addAll(complexChildActivity.getActivities()); } // mark the activity to be "unbranched"