Skip to content
Snippets Groups Projects
Commit bcfb5557 authored by Sebastian Listl's avatar Sebastian Listl :speech_balloon:
Browse files

Merge branch '#1056853-UnverknüpfteMails_Anpassungen' into '2020.1'

#1056853 unverknüpfte mails anpassungen

See merge request xrm/basic!278
parents 048f2e0c 110823ad
No related branches found
No related tags found
No related merge requests found
Showing
with 130 additions and 96 deletions
......@@ -4,6 +4,9 @@
<majorModelMode>DISTRIBUTED</majorModelMode>
<documentation>%aditoprj%/entity/Activity_entity/documentation.adoc</documentation>
<title>Activity</title>
<siblings>
<element>ActivityLink_entity</element>
</siblings>
<grantDeleteProcess>%aditoprj%/entity/Activity_entity/grantDeleteProcess.js</grantDeleteProcess>
<contentTitleProcess>%aditoprj%/entity/Activity_entity/contentTitleProcess.js</contentTitleProcess>
<afterUiInit>%aditoprj%/entity/Activity_entity/afterUiInit.js</afterUiInit>
......@@ -740,6 +743,15 @@
<filterConditionProcess>%aditoprj%/entity/Activity_entity/recordcontainers/db/filterextensions/attribute_filter/filterConditionProcess.js</filterConditionProcess>
<filtertype>BASIC</filtertype>
</filterExtensionSet>
<filterExtension>
<name>IsUnlinked</name>
<title>Is unlinked activity</title>
<contentType>BOOLEAN</contentType>
<filterValuesProcess>%aditoprj%/entity/Activity_entity/recordcontainers/db/filterextensions/isunlinked/filterValuesProcess.js</filterValuesProcess>
<filterConditionProcess>%aditoprj%/entity/Activity_entity/recordcontainers/db/filterextensions/isunlinked/filterConditionProcess.js</filterConditionProcess>
<isLookupFilter v="false" />
<filtertype>BASIC</filtertype>
</filterExtension>
</filterExtensions>
</dbRecordContainer>
</recordContainers>
......
......@@ -40,7 +40,11 @@ if (vars.exists("$param.RowId_param") && vars.get("$param.RowId_param") && vars.
if (vars.exists("$param.ActivityIDs_param") && vars.get("$param.ActivityIDs_param"))
{
var acticityIds = JSON.parse(vars.get("$param.ActivityIDs_param"));
condition.and("ACTIVITY.ACTIVITYID", acticityIds, SqlBuilder.IN());
if (acticityIds.length == 0) {
condition.and("ACTIVITY.ACTIVITYID", ""); // Bedingung um kein Ergebnis zu bekommen
} else {
condition.and("ACTIVITY.ACTIVITYID", acticityIds, SqlBuilder.IN());
}
}
if (vars.getString("$param.OnlyInnate_param") == "true")
......
import("KeywordRegistry_basic");
import("system.logging");
import("Sql_lib");
import("system.vars");
import("system.result");
var operator = vars.get("$local.operator");
var rawvalue = vars.get("$local.rawvalue");
var operator2 = vars.get("$local.operator2");
var sqlCond = "";
if(operator == "1" && rawvalue == "1" || operator == "2" && rawvalue == "0")
operator2 = SqlBuilder.IN();
else if(operator == "1" && rawvalue == "0" || operator == "2" && rawvalue == "1")
operator2 = SqlBuilder.NOT_IN();
else
sqlCond = "1=1";
if (sqlCond == "")
sqlCond = new SqlBuilder().where("ACTIVITY.ACTIVITYID", new SqlBuilder().select("ACTIVITYLINK.ACTIVITY_ID").from("ACTIVITYLINK").groupBy("ACTIVITYLINK.ACTIVITY_ID"), operator2);
result.string(sqlCond);
\ No newline at end of file
import("system.result");
result.object([["true", translate.text("Yes")], ["false", translate.text("No")]]);
\ No newline at end of file
import("system.vars");
import("system.result");
result.string(vars.exists("$global.ACTIVITY_IDS")? vars.get("$global.ACTIVITY_IDS"):"[]");
\ No newline at end of file
if (vars.exists("$global.ACTIVITY_IDS") && vars.get("$global.ACTIVITY_IDS")) {
result.string(vars.get("$global.ACTIVITY_IDS"));
} else {
result.string("[]");
}
\ No newline at end of file
......@@ -32,6 +32,7 @@ for (var i = 0, l = files.length; i < l; i++)
var mailObj = _getMailObj(files[i]);
if (mailObj)
{
mailObj.filename = files[i].filename;
var incomingMailExec = new IncomingEmailExecutor(mailObj);
incomingMailExec.setAlias(dbAlias);
var mailImportResult = incomingMailExec.autoProcess()
......
......@@ -6804,7 +6804,34 @@
<key>${SQL_LIB_FIELD_WRONG_FORMAT}</key>
</entry>
<entry>
<key>Settings</key>
<key>yellow</key>
</entry>
<entry>
<key>Borrow</key>
</entry>
<entry>
<key>Is unlinked activity</key>
</entry>
<entry>
<key>Fantasy</key>
</entry>
<entry>
<key>Extend</key>
</entry>
<entry>
<key>Krimi</key>
</entry>
<entry>
<key>red</key>
</entry>
<entry>
<key>Return</key>
</entry>
<entry>
<key>green</key>
</entry>
<entry>
<key>Actionthriller</key>
</entry>
<entry>
<key>No new recipients found that can be added to the bulk mail.</key>
......
......@@ -32,7 +32,6 @@
</entry>
<entry>
<key>Finished</key>
<value>Abgeschlossen</value>
</entry>
<entry>
<key>Show my organisations</key>
......@@ -82,10 +81,6 @@
<key>Has marketing approved this step?</key>
<value>Hat das Marketing diesem Schritt zugestimmt?</value>
</entry>
<entry>
<key>Create model</key>
<value>Modell erstellen</value>
</entry>
<entry>
<key>Task done</key>
<value>Aufgabe abgeschlossen</value>
......@@ -700,10 +695,6 @@
<key>None</key>
<value>Keine</value>
</entry>
<entry>
<key>Edit workflow</key>
<value>Workflow bearbeiten</value>
</entry>
<entry>
<key>Date of request</key>
<value>Datum der Anforderung</value>
......@@ -2098,10 +2089,6 @@
<key>{$TASK_STATUS}</key>
<value>Status</value>
</entry>
<entry>
<key>and open modeler</key>
<value>und Modeler öffnen</value>
</entry>
<entry>
<key>Task</key>
<value>Aufgabe</value>
......@@ -4017,9 +4004,11 @@
</entry>
<entry>
<key>false</key>
<value>falsch</value>
</entry>
<entry>
<key>true</key>
<value>wahr</value>
</entry>
<entry>
<key>${MIN_MAX_ERROR} field: %0, value: %1, min: %2, max: %3</key>
......@@ -5063,7 +5052,7 @@
</entry>
<entry>
<key>Read</key>
<value>Gelesen</value>
<value>gelesen</value>
</entry>
<entry>
<key>Permission Set ID</key>
......@@ -6738,7 +6727,7 @@
</entry>
<entry>
<key>archive</key>
<value>Archivieren</value>
<value>archivieren</value>
</entry>
<entry>
<key>Bangladesh</key>
......@@ -8265,10 +8254,6 @@ Bitte Datumseingabe prüfen</value>
<key>Contactreport</key>
<value>Kontaktbericht</value>
</entry>
<entry>
<key>The Sales Project can only be filled when a company has been specified</key>
<value>Das Vertriebsprojekt kann nur ausgefüllt werden, wenn eine Firma angegeben ist</value>
</entry>
<entry>
<key>Appointment planned</key>
<value>Termin vereinbart</value>
......@@ -8583,7 +8568,6 @@ Bitte Datumseingabe prüfen</value>
</entry>
<entry>
<key>Zip</key>
<value>Plz</value>
</entry>
<entry>
<key>type</key>
......@@ -8740,93 +8724,35 @@ Bitte Datumseingabe prüfen</value>
<value>gültig ab (in </value>
</entry>
<entry>
<key>workflow notification</key>
<value>Workflow Benachrichtigung</value>
</entry>
<entry>
<key>leadimport notification</key>
</entry>
<entry>
<key>bulk mail sent</key>
</entry>
<entry>
<key>download ready</key>
</entry>
<entry>
<key>No new recipients found that can be added to the bulk mail.</key>
<value>Keine neuen Empfänger, die zur Serienmail hinzugefügt werden können, gefunden.</value>
</entry>
<entry>
<key>Permission received</key>
<value>erhaltene Berechtigung</value>
</entry>
<entry>
<key>granted permission</key>
<value>vergebene Berechtigung</value>
</entry>
<entry>
<key>Receive new Department Permission</key>
<value>Neue Abteilungs-Berechtigung erhalten</value>
</entry>
<entry>
<key>Receive new User Permission</key>
<value>Neue Benutzer-Berechtigung erhalten</value>
</entry>
<entry>
<key>export</key>
</entry>
<entry>
<key>No new recipients found that can be added to the serial letter.</key>
<value>Keine neuen Empfänger, die zum Serienbrief werden können, gefunden.</value>
</entry>
<entry>
<key>export using the selected template</key>
<value>Mit der ausgewählten Vorlage Exportieren</value>
<key>yellow</key>
</entry>
<entry>
<key>send mail</key>
<value>E-Mail losschicken</value>
<key>Borrow</key>
</entry>
<entry>
<key>Total in euros</key>
<key>Is unlinked activity</key>
<value>Ist eine unverknüpfte Aktivität</value>
</entry>
<entry>
<key>Workflow Model</key>
<key>Fantasy</key>
</entry>
<entry>
<key>{SEND_MAIL}</key>
<value>Email versenden</value>
<key>Extend</key>
</entry>
<entry>
<key>The workflow could not be deployed</key>
<key>Krimi</key>
</entry>
<entry>
<key>Workflow deploy failed</key>
<key>red</key>
</entry>
<entry>
<key>Download letter and create Activity</key>
</entry>
<entry>
<key>{SENT_MAIL}</key>
</entry>
<entry>
<key>Add Participants</key>
</entry>
<entry>
<key>and open Report</key>
</entry>
<entry>
<key>Add Recipients</key>
</entry>
<entry>
<key>New</key>
<value>Neu</value>
<key>Return</key>
</entry>
<entry>
<key>Release</key>
<key>green</key>
</entry>
<entry>
<key>Archived</key>
<key>Actionthriller</key>
</entry>
</keyValueMap>
<font name="Dialog" style="0" size="11" />
......
......@@ -6870,7 +6870,34 @@
<key>Valid from (as </key>
</entry>
<entry>
<key>Settings</key>
<key>yellow</key>
</entry>
<entry>
<key>Borrow</key>
</entry>
<entry>
<key>Is unlinked activity</key>
</entry>
<entry>
<key>Fantasy</key>
</entry>
<entry>
<key>Extend</key>
</entry>
<entry>
<key>Krimi</key>
</entry>
<entry>
<key>red</key>
</entry>
<entry>
<key>Return</key>
</entry>
<entry>
<key>green</key>
</entry>
<entry>
<key>Actionthriller</key>
</entry>
<entry>
<key>No new recipients found that can be added to the bulk mail.</key>
......
......@@ -28,6 +28,7 @@ function IncomingEmailExecutor(pMail)
this.mailSubject = this.rawMail[mail.MAIL_SUBJECT] || "";
this.mailSender = this.rawMail[mail.MAIL_SENDER];
this.mailSentDate = this.rawMail[mail.MAIL_SENTDATE];
this.filename = this.rawMail.filename;
var mailRecipientsTo = this.rawMail[mail.RECIPIENT_TO].split(";");
var mailRecipientsCc = this.rawMail[mail.RECIPIENT_CC].split(";");
......@@ -194,14 +195,20 @@ IncomingEmailExecutor.prototype.createActivity = function(pAdditionalLinks)
subject: this.mailSubject,
content: this.getMailtextAsHtml(),
categoryKeywordId: $KeywordRegistry.activityCategory$mail(),
directionKeywordId: this.activityData.direction || this.failbackActivityData.direction,
responsibleContactId: this.activityData.employeeContactId || this.failbackActivityData.employeeContactId
directionKeywordId: this.activityData.direction || this.failbackActivityData.direction
};
if (vars.get("$sys.isclient")){
activityDataForInsert.responsibleContactId = EmployeeUtils.getCurrentContactId();
} else {
activityDataForInsert.responsibleContactId = this.activityData.employeeContactId || this.failbackActivityData.employeeContactId;
}
var activityLinks = this.activityData.links || this.failbackActivityData.links;
if (pAdditionalLinks)
activityLinks = activityLinks.concat(pAdditionalLinks);
activityLinks = ArrayUtils.distinct2d(activityLinks);//TODO: better check before adding the elements into the array if it already exists there
var activityDocs = [["mail.eml", util.encodeBase64String(mail.toRFC(this.rawMail)), true]];
var activityDocs = [[this.filename || "mail.eml", util.encodeBase64String(mail.toRFC(this.rawMail)), true]];
var activityRes = ActivityUtils.insertNewActivity(activityDataForInsert, activityLinks, activityDocs, this._alias, this.mailSentDate);
return activityRes;
......
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