diff --git a/entity/UnlinkedMailMappingLink_entity/recordcontainers/jdito/onInsert.js b/entity/UnlinkedMailMappingLink_entity/recordcontainers/jdito/onInsert.js
index 80412b871ce420582b9b7db8139983f9027ccdb5..9e1560a292a218d418788217d794c18114d11a7f 100644
--- a/entity/UnlinkedMailMappingLink_entity/recordcontainers/jdito/onInsert.js
+++ b/entity/UnlinkedMailMappingLink_entity/recordcontainers/jdito/onInsert.js
@@ -1,9 +1,9 @@
-import("system.util");
-import("Sql_lib");
-import("system.db");
-import("DataPrivacy_lib");
-import("system.vars");
+import("system.datetime");
 
-var rowdata = vars.get("$local.rowdata")
-var contactId = rowdata["CONTACT_ID.value"]
-DataPrivacyUtils.notifyNeedDataPrivacyUpdate(contactId);
\ No newline at end of file
+/* In this process here basically nothing happens because everything is done within the UnlinkedMailMappingWrapper.
+ * To make the UnlinkedMailMappingLink_entity NOT read only we've to specify some code (comments excluded). This seems (and IS) odd but it's currenty
+ * the only way to do the job
+ * If you wan't more information about the entity and why it exists like this: See the documentation of the entity.
+ * 
+ * Tl;dr; do not remove the following line: */
+datetime.date();
\ No newline at end of file
diff --git a/entity/UnlinkedMailMappingWrapper_entity/entityfields/mailastext_param/valueProcess.js b/entity/UnlinkedMailMappingWrapper_entity/entityfields/mailastext_param/valueProcess.js
index 1e60e708982b401e856fe5856b8031c8ec1e70c5..706b1b035a7dcbde9f7f99e59dc70824dec32d36 100644
--- a/entity/UnlinkedMailMappingWrapper_entity/entityfields/mailastext_param/valueProcess.js
+++ b/entity/UnlinkedMailMappingWrapper_entity/entityfields/mailastext_param/valueProcess.js
@@ -9,7 +9,7 @@ if (unlinkedMailId)
 {
     res = newSelect("AB_UNLINKEDMAIL.MAIL")
                             .from("AB_UNLINKEDMAIL")
-                            .and("AB_UNLINKEDMAIL.AB_UNLINKEDMAILID", unlinkedMailId)
+                            .where("AB_UNLINKEDMAIL.AB_UNLINKEDMAILID", unlinkedMailId)
                             .cell();
 }
 result.string(res);
\ No newline at end of file
diff --git a/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js b/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js
index 42654e03c0f48ffa67cc488dcada55d67653f704..f6cc9442f35488dd9da83caac5ccfc035569b55d 100644
--- a/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js
+++ b/entity/UnlinkedMailMappingWrapper_entity/recordcontainers/dummyjdito/onUpdate.js
@@ -1,3 +1,4 @@
+import("DataPrivacy_lib");
 import("system.datetime");
 import("KeywordRegistry_basic");
 import("system.util");
@@ -65,6 +66,9 @@ var activityRes = incomingMailExec.createActivity(activityLinks);
 incomingMailExec.deleteUnlinkedMail(unlinkedMailId);
 
 if (communicationsToInsert.length > 0)
+{
     db.inserts(communicationsToInsert);
+    DataPrivacyUtils.notifyNeedDataPrivacyUpdate();
+}
 
 neon.refreshAll();//this is needed for the dashboard: other elements are refreshed and display for example unlinkedMails
\ No newline at end of file
diff --git a/process/DataPrivacy_lib/process.js b/process/DataPrivacy_lib/process.js
index f1bda31c81429cd4446654387120d6c1cf6a8892..f70dc73377eea5d12f43c2ee2ed6234cdcd2f7f7 100644
--- a/process/DataPrivacy_lib/process.js
+++ b/process/DataPrivacy_lib/process.js
@@ -436,7 +436,8 @@ DataPrivacyUtils.collectAll = function(pContactId, pFilterCond)
  * Notify the user to update the data privacy informations.
  * It is only displayed if it is a Person.
  * 
- * @param {String} pContactId the current contactId
+ * @param {String} [pContactId] contactId that is used to vertify whether the contact is a person-contact (-> showmessage) 
+ * or not (-> do not show message), if param is null (-> show message without this check)
  * @param {Boolean} pShowMessage if false: nothing happens
  * 
  * @return {void}
@@ -449,8 +450,8 @@ DataPrivacyUtils.notifyNeedDataPrivacyUpdate = function(pContactId, pShowMessage
     var isActive = JSON.parse(project.getPreferenceValue("custom.dsgvo.active", "true"));
     if (!isActive)
         return;
- 
-    if (ContactUtils.getContactTypeByContactId(pContactId) > 1) { // if person
+    
+    if (pContactId == undefined || ContactUtils.getContactTypeByContactId(pContactId) > 1) { // if person
         // TODO: jump to DataPrivacy-Tab of contact
         question.showMessage(translate.text("Your changes may have an impact on the data privacy information (GDPR).\n Please update these."), question.INFORMATION, translate.text("Update data privacy information"));
     }
diff --git a/process/IncomingEmailExecutor_lib/process.js b/process/IncomingEmailExecutor_lib/process.js
index 57ee608b8466d28cbe8c8a988661feaa6a88bc83..ce4cbed2796ab576a163b3f4fa6d092ff11081a1 100644
--- a/process/IncomingEmailExecutor_lib/process.js
+++ b/process/IncomingEmailExecutor_lib/process.js
@@ -204,7 +204,7 @@ IncomingEmailExecutor.prototype.createActivity = function(pAdditionalLinks)
 
 IncomingEmailExecutor.prototype.deleteUnlinkedMail = function (pUnlinkedMailId)
 {
-    newWhere("AB_UNLINKEDMAIL.AB_UNLINKEDMAILID", pUnlinkedMailId, undefined, undefined, this._alias)
+    newWhereIfSet("AB_UNLINKEDMAIL.AB_UNLINKEDMAILID", pUnlinkedMailId, undefined, undefined, this._alias)
         .deleteData(true, "AB_UNLINKEDMAIL");
 }