diff --git a/entity/Activity_entity/Activity_entity.aod b/entity/Activity_entity/Activity_entity.aod
index a305558353dd064f05b0a5f734b70ce524e93094..39e32d11ea69313693a42f8686c0d0101884ea96 100644
--- a/entity/Activity_entity/Activity_entity.aod
+++ b/entity/Activity_entity/Activity_entity.aod
@@ -298,6 +298,7 @@
     </entityProvider>
     <entityField>
       <name>RESPONSIBLE</name>
+      <documentation>%aditoprj%/entity/Activity_entity/entityfields/responsible/documentation.adoc</documentation>
       <title>Responsible</title>
       <consumer>Employees</consumer>
       <linkedContext>Person</linkedContext>
diff --git a/entity/Activity_entity/entityfields/responsible/documentation.adoc b/entity/Activity_entity/entityfields/responsible/documentation.adoc
new file mode 100644
index 0000000000000000000000000000000000000000..49366ee1d0292a9d89a3c8e57311a75507edb653
--- /dev/null
+++ b/entity/Activity_entity/entityfields/responsible/documentation.adoc
@@ -0,0 +1 @@
+Contact_ID from Employee as responsible
\ No newline at end of file
diff --git a/entity/Organisation_entity/entityfields/orgreport/onActionProcess.js b/entity/Organisation_entity/entityfields/orgreport/onActionProcess.js
index 1e5bcbc94ce25d28f5ad566f69090b2b8098f135..64b6512c914e4f9780e7fed52e243774c74e0aa8 100644
--- a/entity/Organisation_entity/entityfields/orgreport/onActionProcess.js
+++ b/entity/Organisation_entity/entityfields/orgreport/onActionProcess.js
@@ -1,4 +1,4 @@
 import("system.vars");
 import("Organisation_lib");
 
-OrgUtils.openOrgReport(vars.get("$field.ORGANISATIONID"));
\ No newline at end of file
+OrgUtils.openOrgReport(vars.get("$field.ORGANISATIONID"), vars.get("$field.CONTACTID"));
\ No newline at end of file
diff --git a/process/Organisation_lib/process.js b/process/Organisation_lib/process.js
index 32e96092dcce84bd7c4e447a62f5543271583e99..b3788d6af4ef9002fd939b3f47fd5aabd769cd87 100644
--- a/process/Organisation_lib/process.js
+++ b/process/Organisation_lib/process.js
@@ -96,11 +96,10 @@ OrgUtils.removeImage = function(pOrgId)
  * opens the org-report
  * 
  * @param {String} pOrgId the id of the organization
+ * @param {String} pContactId the OrganisationContactId
  */
-OrgUtils.openOrgReport = function(pOrgId)
+OrgUtils.openOrgReport = function(pOrgId, pContactId)
 {
-    var relationId = pOrgId;
-    
     //org info
     var info = newSelect("ORGANISATION.INFO")
                     .from("ORGANISATION")
@@ -110,7 +109,7 @@ OrgUtils.openOrgReport = function(pOrgId)
     //communication data of the organization
     var commData = newSelect("MEDIUM_ID, ADDR")
                     .from("COMMUNICATION")
-                    .where("COMMUNICATION.CONTACT_ID", relationId)
+                    .where("COMMUNICATION.CONTACT_ID", pContactId)
                     .and("ISSTANDARD = 1")
                     .table();
     
@@ -141,17 +140,19 @@ OrgUtils.openOrgReport = function(pOrgId)
     }
     persData = ReportData.begin(["PERSNAMECOMPLETE", "PERSFUNCTION", "PERSDEPARTMENT", "PERSCOMM", "ORGANISATION_ID", "CONTACT_ID"]).add(persData);
 
-    var histData = newSelect("ENTRYDATE, CATEGORY, FIRSTNAME, LASTNAME, INFO")
+    var activityQuery = newSelect("ENTRYDATE, CATEGORY, FIRSTNAME, LASTNAME, INFO")
                     .from("ACTIVITY")
                     .join("ACTIVITYLINK", "ACTIVITYLINK.ACTIVITY_ID = ACTIVITYID")
-                    .join("CONTACT", "ACTIVITYLINK.OBJECT_ROWID = CONTACTID")
-                    .rightJoin("PERSON", "CONTACT.PERSON_ID = PERSONID")
-                    .where("CONTACT.ORGANISATION_ID", pOrgId)  //= all activities linked to the organization or an employee
-                    .orderBy("ENTRYDATE desc")
-                    .table();
+                    .leftJoin("CONTACT", "ACTIVITY.RESPONSIBLE = CONTACTID")
+                    .leftJoin("PERSON", "CONTACT.PERSON_ID = PERSONID")
+                    .where("ACTIVITYLINK.OBJECT_ROWID", pContactId)
+                    .and("ACTIVITYLINK.OBJECT_TYPE", "Organisation")
+                    .orderBy("ENTRYDATE desc");
+                    
+var activityData = activityQuery.table()
     
     var dateFormat = translate.text("dd.MM.yyyy");
-    histData.forEach(function (row) 
+    activityData.forEach(function (row) 
     {
         row[0] = datetime.toDate(row[0], dateFormat);
         // convert html to text
@@ -163,7 +164,7 @@ OrgUtils.openOrgReport = function(pOrgId)
         row[1] = KeywordUtils.getViewValue($KeywordRegistry.activityCategory(), row[1]);
         _joinArrayVals(row, 2, 2);
     });
-    histData = ReportData.begin(["ENTRYDATE", "MEDIUM", "LOGIN", "INFO"]).add(histData);
+    activityData = ReportData.begin(["ENTRYDATE", "MEDIUM", "LOGIN", "INFO"]).add(activityData);
     
     var attr = new AttributeRelationQuery(pOrgId)
         .includeDisplayValue()
@@ -188,7 +189,7 @@ OrgUtils.openOrgReport = function(pOrgId)
     taskData = ReportData.begin(["SUBJECT", "INFOTEXT", "STATUS", "RESPONSIBLE"]).add(taskData);
     
     var params = {
-        "ORGAddr" : AddressUtils.getAddress(relationId).toString(), //TODO: use new address logic when available
+        "ORGAddr" : AddressUtils.getAddress(pContactId).toString(), //TODO: use new address logic when available
         "ORGAttr" : attr,
         "INFO" : info
     };
@@ -198,7 +199,7 @@ OrgUtils.openOrgReport = function(pOrgId)
     //add subreport data
     orgReport.addSubReportData("subdataComm", commData);
     orgReport.addSubReportData("subdataPers", persData);
-    orgReport.addSubReportData("subdataHist", histData);
+    orgReport.addSubReportData("subdataHist", activityData);
     orgReport.addSubReportData("subdataTask", taskData);
     
     //add logo