diff --git a/process/Organisation_lib/process.js b/process/Organisation_lib/process.js
index ae3069a4d2e97d69214c1c028a2f281bce49ae2c..622b86c386ba03047f92019a9860f8c133f4c628 100644
--- a/process/Organisation_lib/process.js
+++ b/process/Organisation_lib/process.js
@@ -174,8 +174,10 @@ var activityData = activityQuery.table()
     //tasks
     var taskData = newSelect("TASK.SUBJECT, TASK.DESCRIPTION, TASK.STATUS, FIRSTNAME, LASTNAME")
                     .from("TASK")
-                    .join("CONTACT", "EDITOR_CONTACT_ID = CONTACTID")
-                    .leftJoin("PERSON", "CONTACT.PERSON_ID = PERSONID")
+                    .join("TASKLINK", "TASKLINK.TASK_ID = TASK.TASKID")
+                    .join("CONTACT", "TASKLINK.OBJECT_ROWID = CONTACTID and (TASKLINK.OBJECT_TYPE = 'Organisation' or TASKLINK.OBJECT_TYPE = 'Person')")
+                    .join("CONTACT c", "TASK.EDITOR_CONTACT_ID = c.CONTACTID")
+                    .leftJoin("PERSON", "c.PERSON_ID = PERSONID")
                     .where("CONTACT.ORGANISATION_ID", pOrgId)
                     .table();