diff --git a/entity/Activity_entity/recordcontainers/db/conditionProcess.js b/entity/Activity_entity/recordcontainers/db/conditionProcess.js
index 9e14d0b2ef2ed8f4ad75bbee6884c2d96c9bcd92..2d7d8e58d07b4b7a4e5eead6f8528736d4eade6f 100644
--- a/entity/Activity_entity/recordcontainers/db/conditionProcess.js
+++ b/entity/Activity_entity/recordcontainers/db/conditionProcess.js
@@ -7,15 +7,17 @@ var cond = new SqlCondition();
 if (vars.exists("$param.RowId_param") && vars.get("$param.RowId_param") && vars.exists("$param.ObjectId_param") && vars.get("$param.ObjectId_param"))
 {
     var rowId = vars.get("$param.RowId_param");
+    var rowIds = [rowId];
     var rowIdCond = null;
     if (vars.get("$param.ObjectId_param") == "Person")
     {
-        rowId = db.cell(SqlCondition.begin()
-            .andPrepare("CONTACT.CONTACTID", rowId)
-            .buildSql("select PERSON_ID from CONTACT", "1 = 2"))
-        rowIdCond = "# in (select CONTACTID from CONTACT where PERSON_ID = ?)";
+        rowIds = db.array(db.COLUMN, SqlCondition.begin()
+                                                 .andPrepare("CONTACT.CONTACTID", rowId)
+                                                 .buildSql("select CONTACT.CONTACTID \n\
+                                                            from CONTACT \n\
+                                                            where CONTACT.PERSON_ID = (select CONTACT.PERSON_ID from CONTACT", null, ")"));
     }
-    var activityLinkCond = SqlCondition.begin().andPrepare("ACTIVITYLINK.OBJECT_ROWID", rowId, rowIdCond)
+    var activityLinkCond = SqlCondition.begin().and("ACTIVITYLINK.OBJECT_ROWID in ('" + rowIds.join(", ") + "')")
                                                .andPrepareVars("ACTIVITYLINK.OBJECT_TYPE", "$param.ObjectId_param");
 
                                                             // TODO: more performant way than IN. Maybe a join??