diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py
index 0b803d23f205e921639d44c037de75876d4dcaf1..16c5bc893876f1d7c35c479bf34cb7c14cc956a7 100644
--- a/atdb/taskdatabase/views.py
+++ b/atdb/taskdatabase/views.py
@@ -71,6 +71,7 @@ class TaskFilter(filters.FilterSet):
             # http://localhost:8000/atdb/tasks/?predecessor__isnull=True
             'predecessor': ['isnull'],
             'predecessor__status': ['exact', 'icontains', 'in', 'startswith'],
+            'activity' : ['isnull'],
             'activity__id': ['exact'],
             'activity__ingested_fraction' : ['exact','lt', 'lte', 'gt', 'gte','isnull'],
         }
@@ -1742,7 +1743,9 @@ def UpdateActivitySasId(request, sas_id):
 
         for task in tasks:
             i += 1
-            activities_handler.update_activity(task)
+            if task.status not in ['discarded', 'suspended']:
+                activities_handler.update_activity(task)
+
             logger.info(f'{i} of {total} for sas_id = {sas_id}')
 
         logger.info(f'UpdateActivitySasId {sas_id}')