diff --git a/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES.xml b/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES.xml
index 92e0c20550e685ddac58835a8a039c77f18e83f2..017316291ab9aad426777853ae20f1578a2c9a38 100644
--- a/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES.xml
+++ b/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES.xml
@@ -249,7 +249,7 @@
     <insert tableName="ASYS_BINARIES">
       <column name="BINDATA" valueBlobFile="ASYS_BINARIES/BINDATA/blobFiles/6f1a18491d368b9b87091abcbcfcba15"/>
       <column name="CONTAINERNAME" value="DOCUMENT"/>
-      <column name="DATASIZE" valueNumeric="37361"/>
+      <column name="DATASIZE" valueNumeric="37675"/>
       <column name="DATE_EDIT" valueDate="2019-10-17T09:03:06"/>
       <column name="DATE_NEW" valueDate="2019-10-17T09:03:06"/>
       <column name="FILENAME" value="Geschaeftspapiere.odt"/>
@@ -385,7 +385,7 @@
     <insert tableName="ASYS_BINARIES">
       <column name="BINDATA" valueBlobFile="ASYS_BINARIES/BINDATA/blobFiles/0f474ccbf77d31f899cd5eab5f9a3c24"/>
       <column name="CONTAINERNAME" value="DOCUMENT"/>
-      <column name="DATASIZE" valueNumeric="37251"/>
+      <column name="DATASIZE" valueNumeric="44736"/>
       <column name="DATE_EDIT" valueDate="2019-10-17T09:03:19"/>
       <column name="DATE_NEW" valueDate="2019-10-17T09:03:19"/>
       <column name="FILENAME" value="KostenÞbernahmeerklÃĪrung.odt"/>
diff --git a/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/0f474ccbf77d31f899cd5eab5f9a3c24 b/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/0f474ccbf77d31f899cd5eab5f9a3c24
index c1077c94c5e93760a89571b2bc76b380973b566b..5612079f37c55d30eb9353fa48b5800d6f15e0ca 100644
Binary files a/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/0f474ccbf77d31f899cd5eab5f9a3c24 and b/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/0f474ccbf77d31f899cd5eab5f9a3c24 differ
diff --git a/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/6f1a18491d368b9b87091abcbcfcba15 b/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/6f1a18491d368b9b87091abcbcfcba15
index 7390c27c99656b11427153f0d2498a0d9597273e..e99fa62cf86fc7c78dd5ce1e5fc4ec468fd2513f 100644
Binary files a/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/6f1a18491d368b9b87091abcbcfcba15 and b/.liquibase/_____SYSTEMALIAS/basic/_demoData/generatedData/ASYS_BINARIES/BINDATA/blobFiles/6f1a18491d368b9b87091abcbcfcba15 differ
diff --git a/entity/EmployeeRole_entity/entityfields/roles/children/excluderoles_param/valueProcess.js b/entity/EmployeeRole_entity/entityfields/roles/children/excluderoles_param/valueProcess.js
index 4300750f1e372af70f68435c0b2a264176b3bc49..ffeae6d72f87ac8d2fb73b4773ed7e51842faee1 100644
--- a/entity/EmployeeRole_entity/entityfields/roles/children/excluderoles_param/valueProcess.js
+++ b/entity/EmployeeRole_entity/entityfields/roles/children/excluderoles_param/valueProcess.js
@@ -1,3 +1,13 @@
+import("system.tools");
+import("system.vars");
 import("system.result");
 
-result.string(JSON.stringify(["INTERNAL_EVERYONE", "INTERNAL_GROUPWARE", "INTERNAL_SNMP", "INTERNAL_DESIGNER", "INTERNAL_TECHNICAL"]));
\ No newline at end of file
+var userTitle = vars.exists("$param.UserTitle_param") && vars.get("$param.UserTitle_param");
+var excludeRolesArray = ["INTERNAL_EVERYONE", "INTERNAL_GROUPWARE", "INTERNAL_SNMP", "INTERNAL_DESIGNER", "INTERNAL_TECHNICAL"];
+
+var userRoles = tools.getRoles(userTitle);
+for (i = 0; i < userRoles.length; i++) {
+    excludeRolesArray.push(userRoles[i]);
+}
+
+result.string(JSON.stringify(excludeRolesArray));
\ No newline at end of file
diff --git a/entity/Person_entity/entityfields/campaignactiongroup/children/startmultipleworkflows/stateProcess.js b/entity/Person_entity/entityfields/campaignactiongroup/children/startmultipleworkflows/stateProcess.js
index ef65dd9cffd2d6d81ae54a6ae35636ae946aff22..04070243a6d3b71423219c065c243d09ff16971a 100644
--- a/entity/Person_entity/entityfields/campaignactiongroup/children/startmultipleworkflows/stateProcess.js
+++ b/entity/Person_entity/entityfields/campaignactiongroup/children/startmultipleworkflows/stateProcess.js
@@ -1,8 +1,11 @@
+import("system.vars");
 import("system.neon");
 import("Workflow_lib");
 import("system.result");
 
 result.string(WorkflowUtils.engineIsEnabled()
-    ? neon.COMPONENTSTATE_EDITABLE
+    ? vars.get("$sys.datarowcount") > 0
+        ? neon.COMPONENTSTATE_EDITABLE
+        : neon.COMPONENTSTATE_DISABLED
     : neon.COMPONENTSTATE_INVISIBLE
 );
\ No newline at end of file
diff --git a/entity/Productprice_entity/Productprice_entity.aod b/entity/Productprice_entity/Productprice_entity.aod
index b61892f5a4a8dea0a9b276e60ddf25f4fb401ae5..180e3f710beea385178ad2747749b4389f4ff299 100644
--- a/entity/Productprice_entity/Productprice_entity.aod
+++ b/entity/Productprice_entity/Productprice_entity.aod
@@ -289,8 +289,8 @@
         <dbRecordFieldMapping>
           <name>CONTACT_ID.value</name>
           <recordfield>PRODUCTPRICE.CONTACT_ID</recordfield>
-          <isFilterable v="true" />
-          <isLookupFilter v="true" />
+          <isFilterable v="false" />
+          <isLookupFilter v="false" />
         </dbRecordFieldMapping>
         <dbRecordFieldMapping>
           <name>VALID_FROM.value</name>
diff --git a/process/Context_lib/process.js b/process/Context_lib/process.js
index 1b910f2e34de1d8fb86377783028ebb0a25f17a3..f70649273f22841c2b5f0fa804970b9393658a53 100644
--- a/process/Context_lib/process.js
+++ b/process/Context_lib/process.js
@@ -35,14 +35,29 @@ ContextUtils.getCurrentContextId = function()
  * Returns the title of the context
  * 
  * @param {String} pContextId id of the context
- * @param {boolean} [pTranslate=false] if the title should be translated
+ * @param {boolean} [pAutoTranslate=false] pass "true" if the title should be translated with the current locale
  * 
  * @return {String} title of the context
  */
-ContextUtils.getTitle = function(pContextId, pTranslate)
+ContextUtils.getTitle = function(pContextId, pAutoTranslate)
 {
-    var title = project.getDataModel(project.DATAMODEL_KIND_CONTEXT, pContextId)[1];
-    return pTranslate ? translate.text(title) : title;
+    var dataModel = project.getDataModel(project.DATAMODEL_KIND_CONTEXT, pContextId);
+    var title = dataModel[1];
+    return pAutoTranslate ? translate.text(title) : title;
+}
+
+/**
+ * Returns the translated title of the context
+ * 
+ * @param {String} pContextId id of the context
+ * @param {String} [pLocale=null] the locale for the translation, e.g. "de_DE"
+ * 
+ * @return {String} title of the context, translated to the given (or default) locale
+ */
+ContextUtils.getTranslatedTitle = function(pContextId, pLocale)
+{
+    var title = ContextUtils.getTitle(pContextId, false);
+    return pLocale ? translate.text(title, pLocale) : translate.text(title);
 }
 
 /**