Skip to content
Snippets Groups Projects
Commit 113e9f6e authored by b.ulrich's avatar b.ulrich
Browse files

Commit

parent 44dce9b1
No related branches found
No related tags found
No related merge requests found
......@@ -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>
......
Contact_ID from Employee as responsible
\ No newline at end of file
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
......@@ -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
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment