From dfc495a3c1d1c8851729da549fa66b6f2c749760 Mon Sep 17 00:00:00 2001 From: Vinzent Broens <v.broens@adito.de> Date: Thu, 6 Jan 2022 15:47:11 +0100 Subject: [PATCH] Service fixes --- .../entityfields/contact_id/onValidation.js | 5 +- .../EmployeeGroupRuleGroupRelation_entity.aod | 1 + .../onValidation.js | 18 + .../entityfields/name/onValidation.js | 6 +- .../entityfields/name/onValidation.js | 16 +- .../entityfields/groupname/onValidation.js | 15 +- .../inboxfiltergroup_id/onValidation.js | 16 +- .../entityfields/name/onValidation.js | 14 +- .../KnowledgeManagement_entity.aod | 7 + .../openadminview/onActionProcess.js | 6 + .../openadminview/stateProcess.js | 4 + entity/Offer_entity/Offer_entity.aod | 76 +-- .../Organisation_entity.aod | 442 +++++++++--------- entity/Person_entity/Person_entity.aod | 374 +++++++-------- .../Salesproject_entity.aod | 162 +++---- .../SupportTicket_entity.aod | 16 +- .../is_overdue_symbol/valueProcess.js | 3 +- .../pullnextticket/onActionProcess.js | 2 +- .../task_maturity_date/colorProcess.js | 7 +- .../favorite_filter/filterConditionProcess.js | 12 - .../favorite_filter/filterValuesProcess.js | 5 - .../recordcontainers/db/orderClauseProcess.js | 12 +- .../isoverdue.value/expression.js | 8 +- .../_____LANGUAGE_EXTRA.aod | 15 +- .../_____LANGUAGE_de/_____LANGUAGE_de.aod | 11 +- .../_____LANGUAGE_en/_____LANGUAGE_en.aod | 9 + .../EmployeeGroupConRelationFilter_view.aod | 2 +- process/KeywordRegistry_basic/process.js | 1 + process/mailbridge_service/process.js | 83 ++-- 29 files changed, 710 insertions(+), 638 deletions(-) create mode 100644 entity/EmployeeGroupRuleGroupRelation_entity/entityfields/employeegroup_rulegroup_id/onValidation.js create mode 100644 entity/KnowledgeManagement_entity/entityfields/openadminview/onActionProcess.js create mode 100644 entity/KnowledgeManagement_entity/entityfields/openadminview/stateProcess.js delete mode 100644 entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js delete mode 100644 entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js diff --git a/entity/EmployeeGroupContactRelation_entity/entityfields/contact_id/onValidation.js b/entity/EmployeeGroupContactRelation_entity/entityfields/contact_id/onValidation.js index 89007aafec3..27fb9b3c27b 100644 --- a/entity/EmployeeGroupContactRelation_entity/entityfields/contact_id/onValidation.js +++ b/entity/EmployeeGroupContactRelation_entity/entityfields/contact_id/onValidation.js @@ -4,7 +4,7 @@ import("system.result"); import("system.vars"); import("Sql_lib"); -var sql = new SqlBuilder() +var count = new SqlBuilder() .selectCount("CONTACT_ID") .from("EMPLOYEEGROUP_CONTACT_RELATION") .where("EMPLOYEEGROUP_CONTACT_RELATION.CONTACT_ID", vars.get("$field.CONTACT_ID")) @@ -12,8 +12,7 @@ var sql = new SqlBuilder() .andIfSet("EMPLOYEEGROUP_CONTACT_RELATION.EMPLOYEEGROUP_CONTACT_RELATIONID", vars.get("$field.EMPLOYEEGROUP_CONTACT_RELATIONID"),SqlBuilder.NOT_EQUAL()) .cell(); - -if (sql > 0 ) +if (count > 0) { result.string(translate.text("Employee already selected") + "."); } diff --git a/entity/EmployeeGroupRuleGroupRelation_entity/EmployeeGroupRuleGroupRelation_entity.aod b/entity/EmployeeGroupRuleGroupRelation_entity/EmployeeGroupRuleGroupRelation_entity.aod index 9e50a6dabeb..1d5e3b29577 100644 --- a/entity/EmployeeGroupRuleGroupRelation_entity/EmployeeGroupRuleGroupRelation_entity.aod +++ b/entity/EmployeeGroupRuleGroupRelation_entity/EmployeeGroupRuleGroupRelation_entity.aod @@ -20,6 +20,7 @@ <title>Employee group filter group</title> <consumer>EmpGorupRuGroups</consumer> <displayValueProcess>%aditoprj%/entity/EmployeeGroupRuleGroupRelation_entity/entityfields/employeegroup_rulegroup_id/displayValueProcess.js</displayValueProcess> + <onValidation>%aditoprj%/entity/EmployeeGroupRuleGroupRelation_entity/entityfields/employeegroup_rulegroup_id/onValidation.js</onValidation> </entityField> <entityField> <name>EMPLOYEEGROUP_RULEGROUP_RELATIONID</name> diff --git a/entity/EmployeeGroupRuleGroupRelation_entity/entityfields/employeegroup_rulegroup_id/onValidation.js b/entity/EmployeeGroupRuleGroupRelation_entity/entityfields/employeegroup_rulegroup_id/onValidation.js new file mode 100644 index 00000000000..c3791daf072 --- /dev/null +++ b/entity/EmployeeGroupRuleGroupRelation_entity/entityfields/employeegroup_rulegroup_id/onValidation.js @@ -0,0 +1,18 @@ +import("system.neon"); +import("system.translate"); +import("system.result"); +import("system.vars"); +import("Sql_lib"); + +var count = new SqlBuilder() + .selectCount("EMPLOYEEGROUP_RULEGROUP_ID") + .from("EMPLOYEEGROUP_RULEGROUP_RELATION") + .where("EMPLOYEEGROUP_RULEGROUP_RELATION.EMPLOYEEGROUP_RULEGROUP_ID", vars.get("$field.EMPLOYEEGROUP_RULEGROUP_ID")) + .and("EMPLOYEEGROUP_RULEGROUP_RELATION.EMPLOYEEGROUP_ID", vars.get("$field.EMPLOYEEGROUP_ID")) + .andIfSet("EMPLOYEEGROUP_RULEGROUP_RELATION.EMPLOYEEGROUP_RULEGROUP_RELATIONID", vars.get("$field.EMPLOYEEGROUP_RULEGROUP_RELATIONID"),SqlBuilder.NOT_EQUAL()) + .cell(); + +if (count > 0) +{ + result.string(translate.text("Rulegroup already selected") + "."); +} \ No newline at end of file diff --git a/entity/EmployeeGroupRuleGroup_entity/entityfields/name/onValidation.js b/entity/EmployeeGroupRuleGroup_entity/entityfields/name/onValidation.js index 51c6c78bd8d..de38c88fe4c 100644 --- a/entity/EmployeeGroupRuleGroup_entity/entityfields/name/onValidation.js +++ b/entity/EmployeeGroupRuleGroup_entity/entityfields/name/onValidation.js @@ -4,14 +4,14 @@ import("system.result"); import("system.vars"); import("Sql_lib"); -var sql = new SqlBuilder() +var count = new SqlBuilder() .selectCount("NAME") .from("EMPLOYEEGROUP_RULEGROUP") .where("EMPLOYEEGROUP_RULEGROUP.NAME", vars.get("$field.NAME")) - .and("EMPLOYEEGROUP_RULEGROUP.EMPLOYEEGROUP_RULEGROUPID", vars.get("sys.uid"),SqlBuilder.NOT_EQUAL()) + .andIfSet("EMPLOYEEGROUP_RULEGROUP.EMPLOYEEGROUP_RULEGROUPID", vars.get("$field.EMPLOYEEGROUP_RULEGROUPID"),SqlBuilder.NOT_EQUAL()) .cell(); -if (sql > 0) +if (count > 0) { result.string(translate.text("Name has to be unique") + "."); } \ No newline at end of file diff --git a/entity/EmployeeGroupRule_entity/entityfields/name/onValidation.js b/entity/EmployeeGroupRule_entity/entityfields/name/onValidation.js index 6cd8121c41e..8c83356e370 100644 --- a/entity/EmployeeGroupRule_entity/entityfields/name/onValidation.js +++ b/entity/EmployeeGroupRule_entity/entityfields/name/onValidation.js @@ -4,13 +4,15 @@ import("system.result"); import("system.vars"); import("Sql_lib"); -var sql = new SqlBuilder() - .selectCount("NAME") - .from("EMPLOYEEGROUP_RULEGROUP") - .where("EMPLOYEEGROUP_RULEGROUP.NAME", vars.get("$field.NAME")) - .andIfSet("EMPLOYEEGROUP_RULEGROUP.EMPLOYEEGROUP_RULEGROUPID", vars.get("$field.EMPLOYEEGROUP_RULEGROUP_ID"),SqlBuilder.NOT_EQUAL()) - .cell(); -if (sql > 0) +var count = new SqlBuilder() + .selectCount("NAME") + .from("EMPLOYEEGROUP_RULE") + .where("EMPLOYEEGROUP_RULE.NAME", vars.get("$field.NAME")) + .and("EMPLOYEEGROUP_RULE.EMPLOYEEGROUP_RULEGROUP_ID", vars.get("$field.EMPLOYEEGROUP_RULEGROUP_ID")) + .andIfSet("EMPLOYEEGROUP_RULE.EMPLOYEEGROUP_RULEID", vars.get("$field.EMPLOYEEGROUP_RULEID"),SqlBuilder.NOT_EQUAL()) + .cell(); + +if (count > 0) { result.string(translate.text("Name has to be unique") + "."); } \ No newline at end of file diff --git a/entity/EmployeeGroup_entity/entityfields/groupname/onValidation.js b/entity/EmployeeGroup_entity/entityfields/groupname/onValidation.js index 4d5b4ab6249..7927ea76895 100644 --- a/entity/EmployeeGroup_entity/entityfields/groupname/onValidation.js +++ b/entity/EmployeeGroup_entity/entityfields/groupname/onValidation.js @@ -4,13 +4,14 @@ import("system.result"); import("system.vars"); import("Sql_lib"); -var sql = new SqlBuilder() - .selectCount("GROUPNAME") - .from("EMPLOYEEGROUP") - .where("EMPLOYEEGROUP.GROUPNAME", vars.get("$field.GROUPNAME")) - .and("EMPLOYEEGROUP.EMPLOYEEGROUPID", vars.get("sys.uid"),SqlBuilder.NOT_EQUAL()) - .cell(); -if (sql > 0) +var count = new SqlBuilder() + .selectCount("GROUPNAME") + .from("EMPLOYEEGROUP") + .where("EMPLOYEEGROUP.GROUPNAME", vars.get("$field.GROUPNAME")) + .andIfSet("EMPLOYEEGROUP.EMPLOYEEGROUPID", vars.get("$field.EMPLOYEEGROUPID"),SqlBuilder.NOT_EQUAL()) + .cell(); + +if (count > 0) { result.string(translate.text("Name has to be unique") + "."); } \ No newline at end of file diff --git a/entity/InboxFilterGroupRelation_entity/entityfields/inboxfiltergroup_id/onValidation.js b/entity/InboxFilterGroupRelation_entity/entityfields/inboxfiltergroup_id/onValidation.js index 1d234c44a60..7795eca9996 100644 --- a/entity/InboxFilterGroupRelation_entity/entityfields/inboxfiltergroup_id/onValidation.js +++ b/entity/InboxFilterGroupRelation_entity/entityfields/inboxfiltergroup_id/onValidation.js @@ -4,14 +4,16 @@ import("system.result"); import("system.vars"); import("Sql_lib"); -var sql = new SqlBuilder() - .selectCount("INBOXFILTERGROUP_ID") - .from("INBOXFILTERGROUP_RELATION") - .where("INBOXFILTERGROUP_RELATION.INBOXFILTERGROUP_ID", vars.get("$field.INBOXFILTERGROUP_ID")) - .cell(); +var count = new SqlBuilder() + .selectCount("INBOXFILTERGROUP_ID") + .from("INBOXFILTERGROUP_RELATION") + .where("INBOXFILTERGROUP_RELATION.INBOXFILTERGROUP_ID", vars.get("$field.INBOXFILTERGROUP_ID")) + .and("INBOXFILTERGROUP_RELATION.INBOX_ID", vars.get("$field.INBOX_ID")) + .andIfSet("INBOXFILTERGROUP_RELATION.INBOXFILTERGROUP_RELATIONID", vars.get("$field.INBOXFILTERGROUP_RELATIONID"),SqlBuilder.NOT_EQUAL()) + .cell(); -if (sql > 0) +if (count > 0) { result.string(translate.text("Rulegroup already selected") + "."); -} +} diff --git a/entity/InboxFilterGroup_entity/entityfields/name/onValidation.js b/entity/InboxFilterGroup_entity/entityfields/name/onValidation.js index 5f2a7b84bb1..be35d6f5b2f 100644 --- a/entity/InboxFilterGroup_entity/entityfields/name/onValidation.js +++ b/entity/InboxFilterGroup_entity/entityfields/name/onValidation.js @@ -4,16 +4,14 @@ import("system.result"); import("system.vars"); import("Sql_lib"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) -{ - var sql = new SqlBuilder() +var count = new SqlBuilder() .selectCount("NAME") .from("INBOXFILTERGROUP") .where("INBOXFILTERGROUP.NAME", vars.get("$field.NAME")) + .andIfSet("INBOXFILTERGROUP.INBOXFILTERGROUPID", vars.get("$field.INBOXFILTERGROUPID"),SqlBuilder.NOT_EQUAL()) .cell(); - if (sql > 0) - { - result.string(translate.text("Name has to be unique") + "."); - } -} +if (count > 0) +{ + result.string(translate.text("Name has to be unique") + "."); +} \ No newline at end of file diff --git a/entity/KnowledgeManagement_entity/KnowledgeManagement_entity.aod b/entity/KnowledgeManagement_entity/KnowledgeManagement_entity.aod index 8e92ca42361..b89414460a3 100644 --- a/entity/KnowledgeManagement_entity/KnowledgeManagement_entity.aod +++ b/entity/KnowledgeManagement_entity/KnowledgeManagement_entity.aod @@ -337,6 +337,13 @@ <name>ObjectType_param</name> <expose v="true" /> </entityParameter> + <entityActionField> + <name>openAdminView</name> + <title>Open admin view</title> + <onActionProcess>%aditoprj%/entity/KnowledgeManagement_entity/entityfields/openadminview/onActionProcess.js</onActionProcess> + <iconId>VAADIN:CURLY_BRACKETS</iconId> + <stateProcess>%aditoprj%/entity/KnowledgeManagement_entity/entityfields/openadminview/stateProcess.js</stateProcess> + </entityActionField> <entityField> <name>USEINALLTICKETCATEGORIES</name> <title>Use all categories</title> diff --git a/entity/KnowledgeManagement_entity/entityfields/openadminview/onActionProcess.js b/entity/KnowledgeManagement_entity/entityfields/openadminview/onActionProcess.js new file mode 100644 index 00000000000..b2396b10d04 --- /dev/null +++ b/entity/KnowledgeManagement_entity/entityfields/openadminview/onActionProcess.js @@ -0,0 +1,6 @@ +import("system.vars"); +import("Context_lib"); + +AdminViewUtils.open("KNOWLEDGEMANAGMENTID", [ + ["RESPONSIBLE_CONTACT_ID", vars.get("$field.RESPONSIBLE_CONTACT_ID")], +]); \ No newline at end of file diff --git a/entity/KnowledgeManagement_entity/entityfields/openadminview/stateProcess.js b/entity/KnowledgeManagement_entity/entityfields/openadminview/stateProcess.js new file mode 100644 index 00000000000..38f2298db73 --- /dev/null +++ b/entity/KnowledgeManagement_entity/entityfields/openadminview/stateProcess.js @@ -0,0 +1,4 @@ +import("Context_lib"); +import("system.result"); + +result.string(AdminViewUtils.getActionState()); \ No newline at end of file diff --git a/entity/Offer_entity/Offer_entity.aod b/entity/Offer_entity/Offer_entity.aod index eee6ec26417..cb0fc351439 100644 --- a/entity/Offer_entity/Offer_entity.aod +++ b/entity/Offer_entity/Offer_entity.aod @@ -1037,6 +1037,38 @@ <name>Approval_param</name> <expose v="true" /> </entityParameter> + <entityConsumer> + <name>KeywordProductGroup</name> + <dependency> + <name>dependency</name> + <entityName>KeywordEntry_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContainerName_param</name> + <valueProcess>%aditoprj%/entity/Offer_entity/entityfields/keywordproductgroup/children/containername_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityField> + <name>DISCOUNT_NET</name> + <contentType>NUMBER</contentType> + <outputFormat>#,##0.00</outputFormat> + <inputFormat>#,##0.00</inputFormat> + <stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/stateProcess.js</stateProcess> + <titleProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/titleProcess.js</titleProcess> + <displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/displayValueProcess.js</displayValueProcess> + </entityField> + <entityField> + <name>GROSS</name> + <title>Total gross</title> + <contentType>NUMBER</contentType> + <outputFormat>#,##0.00</outputFormat> + <inputFormat>#,##0.00</inputFormat> + <state>READONLY</state> + <displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/gross/displayValueProcess.js</displayValueProcess> + </entityField> <entityActionGroup> <name>observeActionGroup</name> <children> @@ -1148,6 +1180,12 @@ <stateProcess>%aditoprj%/entity/Offer_entity/entityfields/approveoffer/stateProcess.js</stateProcess> <titleProcess>%aditoprj%/entity/Offer_entity/entityfields/approveoffer/titleProcess.js</titleProcess> </entityActionField> + <entityActionField> + <name>newSupportTicket</name> + <title>New Service ticket</title> + <onActionProcess>%aditoprj%/entity/Offer_entity/entityfields/newsupportticket/onActionProcess.js</onActionProcess> + <iconId>VAADIN:TICKET</iconId> + </entityActionField> <entityActionField> <name>openAdminView</name> <title>Open admin view</title> @@ -1155,44 +1193,6 @@ <iconId>VAADIN:CURLY_BRACKETS</iconId> <stateProcess>%aditoprj%/entity/Offer_entity/entityfields/openadminview/stateProcess.js</stateProcess> </entityActionField> - <entityActionField> - <name>newSupportTicket</name> - <title>New Service ticket</title> - <onActionProcess>%aditoprj%/entity/Offer_entity/entityfields/newsupportticket/onActionProcess.js</onActionProcess> - <iconId>VAADIN:TICKET</iconId> - </entityActionField> - <entityConsumer> - <name>KeywordProductGroup</name> - <dependency> - <name>dependency</name> - <entityName>KeywordEntry_entity</entityName> - <fieldName>SpecificContainerKeywords</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContainerName_param</name> - <valueProcess>%aditoprj%/entity/Offer_entity/entityfields/keywordproductgroup/children/containername_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityField> - <name>DISCOUNT_NET</name> - <contentType>NUMBER</contentType> - <outputFormat>#,##0.00</outputFormat> - <inputFormat>#,##0.00</inputFormat> - <stateProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/stateProcess.js</stateProcess> - <titleProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/titleProcess.js</titleProcess> - <displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/discount_net/displayValueProcess.js</displayValueProcess> - </entityField> - <entityField> - <name>GROSS</name> - <title>Total gross</title> - <contentType>NUMBER</contentType> - <outputFormat>#,##0.00</outputFormat> - <inputFormat>#,##0.00</inputFormat> - <state>READONLY</state> - <displayValueProcess>%aditoprj%/entity/Offer_entity/entityfields/gross/displayValueProcess.js</displayValueProcess> - </entityField> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/Organisation_entity/Organisation_entity.aod b/entity/Organisation_entity/Organisation_entity.aod index 1a54cbd02b1..2a7526b6735 100644 --- a/entity/Organisation_entity/Organisation_entity.aod +++ b/entity/Organisation_entity/Organisation_entity.aod @@ -17,27 +17,6 @@ <titlePlural>Companies</titlePlural> <recordContainer>db</recordContainer> <entityFields> - <entityActionGroup> - <name>observeActionGroup</name> - <children> - <entityActionField> - <name>observe</name> - <title>Observe</title> - <onActionProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/observe/onActionProcess.js</onActionProcess> - <isObjectAction v="true" /> - <iconId>VAADIN:EYE</iconId> - <stateProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/observe/stateProcess.js</stateProcess> - <titleProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/observe/titleProcess.js</titleProcess> - </entityActionField> - <entityActionField> - <name>cancelObservation</name> - <onActionProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/cancelobservation/onActionProcess.js</onActionProcess> - <iconId>VAADIN:EYE_SLASH</iconId> - <stateProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/cancelobservation/stateProcess.js</stateProcess> - <titleProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/cancelobservation/titleProcess.js</titleProcess> - </entityActionField> - </children> - </entityActionGroup> <entityField> <name>CUSTOMERCODE</name> <title>Customercode</title> @@ -1077,6 +1056,221 @@ </entityParameter> </children> </entityConsumer> + <entityConsumer> + <name>DuplicatesOrganisation</name> + <selectionMode>MULTI</selectionMode> + <selectionModeProcess>%aditoprj%/entity/Organisation_entity/entityfields/duplicatesorganisation/selectionModeProcess.js</selectionModeProcess> + <dependency> + <name>dependency</name> + <entityName>Duplicate_entity</entityName> + <fieldName>Duplicates</fieldName> + </dependency> + <children> + <entityParameter> + <name>DuplicateObject_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/duplicatesorganisation/children/duplicateobject_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>Plannings</name> + <dependency> + <name>dependency</name> + <entityName>Planning_entity</entityName> + <fieldName>Plannings</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContactId_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/plannings/children/contactid_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>Turnovers</name> + <dependency> + <name>dependency</name> + <entityName>Turnover_entity</entityName> + <fieldName>DynamicTurnover</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContactIds_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/turnovers/children/contactids_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>conversionrates</name> + <dependency> + <name>dependency</name> + <entityName>SalesprojectConversionRate_entity</entityName> + <fieldName>#PROVIDER</fieldName> + </dependency> + </entityConsumer> + <entityConsumer> + <name>ContactCommunicationSettings</name> + <refreshParent v="true" /> + <dependency> + <name>dependency</name> + <entityName>CommunicationSettings_entity</entityName> + <fieldName>SettingsForContact</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContactId_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/contactcommunicationsettings/children/contactid_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityParameter> + <name>SearchSyncCondition_param</name> + <expose v="true" /> + </entityParameter> + <entityConsumer> + <name>Campaigns</name> + <dependency> + <name>dependency</name> + <entityName>Campaign_entity</entityName> + <fieldName>Campaigns</fieldName> + </dependency> + </entityConsumer> + <entityConsumer> + <name>Bulkmails</name> + <dependency> + <name>dependency</name> + <entityName>BulkMail_entity</entityName> + <fieldName>#PROVIDER</fieldName> + </dependency> + </entityConsumer> + <entityConsumer> + <name>CommunicationSettingStatusKeyword</name> + <dependency> + <name>dependency</name> + <entityName>KeywordEntry_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContainerName_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/communicationsettingstatuskeyword/children/containername_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>ChecklistEntryValues</name> + <dependency> + <name>dependency</name> + <entityName>ChecklistEntryValue_entity</entityName> + <fieldName>ChecklistEntryValues</fieldName> + </dependency> + <children> + <entityParameter> + <name>ObjectRowId_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/objectrowid_param/valueProcess.js</valueProcess> + </entityParameter> + <entityParameter> + <name>ObjectType_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/objecttype_param/valueProcess.js</valueProcess> + </entityParameter> + <entityParameter> + <name>ChecklistIds_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/checklistids_param/valueProcess.js</valueProcess> + </entityParameter> + <entityParameter> + <name>Presentationmode_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/presentationmode_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityParameter> + <name>IgnoreOrderBy_param</name> + <expose v="true" /> + </entityParameter> + <entityProvider> + <name>OrganisationForQuickEntry</name> + <lookupIdfield>ORGANISATIONID</lookupIdfield> + <documentation>%aditoprj%/entity/Organisation_entity/entityfields/organisationforquickentry/documentation.adoc</documentation> + <children> + <entityParameter> + <name>WithPrivate_param</name> + </entityParameter> + <entityParameter> + <name>AttributeId_param</name> + <expose v="false" /> + </entityParameter> + <entityParameter> + <name>AttributeKeyId_param</name> + <expose v="false" /> + </entityParameter> + <entityParameter> + <name>ExcludedContactIds_param</name> + </entityParameter> + <entityParameter> + <name>ExcludeOrganisationsByPersonId</name> + <expose v="false" /> + </entityParameter> + <entityParameter> + <name>MapViewAdditionalFeatures_param</name> + <expose v="false" /> + </entityParameter> + <entityParameter> + <name>MapViewCenterLat_param</name> + <expose v="false" /> + </entityParameter> + <entityParameter> + <name>MapViewCenterLon_param</name> + <expose v="false" /> + </entityParameter> + </children> + </entityProvider> + <entityConsumer> + <name>AllTopics</name> + <dependency> + <name>dependency</name> + <entityName>TopicTree_entity</entityName> + <fieldName>#PROVIDER</fieldName> + </dependency> + <children> + <entityParameter> + <name>Expanded_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/alltopics/children/expanded_param/valueProcess.js</valueProcess> + </entityParameter> + <entityParameter> + <name>OnlyActive_param</name> + <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/alltopics/children/onlyactive_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityParameter> + <name>IsQuickEntry_param</name> + <expose v="true" /> + </entityParameter> + <entityParameter> + <name>OnlyNotInCampaignId_param</name> + <expose v="true" /> + </entityParameter> + <entityActionGroup> + <name>observeActionGroup</name> + <children> + <entityActionField> + <name>observe</name> + <title>Observe</title> + <onActionProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/observe/onActionProcess.js</onActionProcess> + <isObjectAction v="true" /> + <iconId>VAADIN:EYE</iconId> + <stateProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/observe/stateProcess.js</stateProcess> + <titleProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/observe/titleProcess.js</titleProcess> + </entityActionField> + <entityActionField> + <name>cancelObservation</name> + <onActionProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/cancelobservation/onActionProcess.js</onActionProcess> + <iconId>VAADIN:EYE_SLASH</iconId> + <stateProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/cancelobservation/stateProcess.js</stateProcess> + <titleProcess>%aditoprj%/entity/Organisation_entity/entityfields/observeactiongroup/children/cancelobservation/titleProcess.js</titleProcess> + </entityActionField> + </children> + </entityActionGroup> <entityActionField> <name>openEditDefaultsView</name> <documentation>%aditoprj%/entity/Organisation_entity/entityfields/openeditdefaultsview/documentation.adoc</documentation> @@ -1272,6 +1466,12 @@ </entityActionField> </children> </entityActionGroup> + <entityActionField> + <name>openClassificationOverView</name> + <title>Show Classification</title> + <onActionProcess>%aditoprj%/entity/Organisation_entity/entityfields/openclassificationoverview/onActionProcess.js</onActionProcess> + <iconId>VAADIN:LIST_OL</iconId> + </entityActionField> <entityActionField> <name>openAdminView</name> <title>Open admin view</title> @@ -1279,206 +1479,6 @@ <iconId>VAADIN:CURLY_BRACKETS</iconId> <stateProcess>%aditoprj%/entity/Organisation_entity/entityfields/openadminview/stateProcess.js</stateProcess> </entityActionField> - <entityConsumer> - <name>DuplicatesOrganisation</name> - <selectionMode>MULTI</selectionMode> - <selectionModeProcess>%aditoprj%/entity/Organisation_entity/entityfields/duplicatesorganisation/selectionModeProcess.js</selectionModeProcess> - <dependency> - <name>dependency</name> - <entityName>Duplicate_entity</entityName> - <fieldName>Duplicates</fieldName> - </dependency> - <children> - <entityParameter> - <name>DuplicateObject_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/duplicatesorganisation/children/duplicateobject_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>Plannings</name> - <dependency> - <name>dependency</name> - <entityName>Planning_entity</entityName> - <fieldName>Plannings</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContactId_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/plannings/children/contactid_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>Turnovers</name> - <dependency> - <name>dependency</name> - <entityName>Turnover_entity</entityName> - <fieldName>DynamicTurnover</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContactIds_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/turnovers/children/contactids_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>conversionrates</name> - <dependency> - <name>dependency</name> - <entityName>SalesprojectConversionRate_entity</entityName> - <fieldName>#PROVIDER</fieldName> - </dependency> - </entityConsumer> - <entityConsumer> - <name>ContactCommunicationSettings</name> - <refreshParent v="true" /> - <dependency> - <name>dependency</name> - <entityName>CommunicationSettings_entity</entityName> - <fieldName>SettingsForContact</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContactId_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/contactcommunicationsettings/children/contactid_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityParameter> - <name>SearchSyncCondition_param</name> - <expose v="true" /> - </entityParameter> - <entityConsumer> - <name>Campaigns</name> - <dependency> - <name>dependency</name> - <entityName>Campaign_entity</entityName> - <fieldName>Campaigns</fieldName> - </dependency> - </entityConsumer> - <entityConsumer> - <name>Bulkmails</name> - <dependency> - <name>dependency</name> - <entityName>BulkMail_entity</entityName> - <fieldName>#PROVIDER</fieldName> - </dependency> - </entityConsumer> - <entityConsumer> - <name>CommunicationSettingStatusKeyword</name> - <dependency> - <name>dependency</name> - <entityName>KeywordEntry_entity</entityName> - <fieldName>SpecificContainerKeywords</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContainerName_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/communicationsettingstatuskeyword/children/containername_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityActionField> - <name>openClassificationOverView</name> - <title>Show Classification</title> - <onActionProcess>%aditoprj%/entity/Organisation_entity/entityfields/openclassificationoverview/onActionProcess.js</onActionProcess> - <iconId>VAADIN:LIST_OL</iconId> - </entityActionField> - <entityConsumer> - <name>ChecklistEntryValues</name> - <dependency> - <name>dependency</name> - <entityName>ChecklistEntryValue_entity</entityName> - <fieldName>ChecklistEntryValues</fieldName> - </dependency> - <children> - <entityParameter> - <name>ObjectRowId_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/objectrowid_param/valueProcess.js</valueProcess> - </entityParameter> - <entityParameter> - <name>ObjectType_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/objecttype_param/valueProcess.js</valueProcess> - </entityParameter> - <entityParameter> - <name>ChecklistIds_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/checklistids_param/valueProcess.js</valueProcess> - </entityParameter> - <entityParameter> - <name>Presentationmode_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/checklistentryvalues/children/presentationmode_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityParameter> - <name>IgnoreOrderBy_param</name> - <expose v="true" /> - </entityParameter> - <entityProvider> - <name>OrganisationForQuickEntry</name> - <lookupIdfield>ORGANISATIONID</lookupIdfield> - <documentation>%aditoprj%/entity/Organisation_entity/entityfields/organisationforquickentry/documentation.adoc</documentation> - <children> - <entityParameter> - <name>WithPrivate_param</name> - </entityParameter> - <entityParameter> - <name>AttributeId_param</name> - <expose v="false" /> - </entityParameter> - <entityParameter> - <name>AttributeKeyId_param</name> - <expose v="false" /> - </entityParameter> - <entityParameter> - <name>ExcludedContactIds_param</name> - </entityParameter> - <entityParameter> - <name>ExcludeOrganisationsByPersonId</name> - <expose v="false" /> - </entityParameter> - <entityParameter> - <name>MapViewAdditionalFeatures_param</name> - <expose v="false" /> - </entityParameter> - <entityParameter> - <name>MapViewCenterLat_param</name> - <expose v="false" /> - </entityParameter> - <entityParameter> - <name>MapViewCenterLon_param</name> - <expose v="false" /> - </entityParameter> - </children> - </entityProvider> - <entityConsumer> - <name>AllTopics</name> - <dependency> - <name>dependency</name> - <entityName>TopicTree_entity</entityName> - <fieldName>#PROVIDER</fieldName> - </dependency> - <children> - <entityParameter> - <name>Expanded_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/alltopics/children/expanded_param/valueProcess.js</valueProcess> - </entityParameter> - <entityParameter> - <name>OnlyActive_param</name> - <valueProcess>%aditoprj%/entity/Organisation_entity/entityfields/alltopics/children/onlyactive_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityParameter> - <name>IsQuickEntry_param</name> - <expose v="true" /> - </entityParameter> - <entityParameter> - <name>OnlyNotInCampaignId_param</name> - <expose v="true" /> - </entityParameter> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/Person_entity/Person_entity.aod b/entity/Person_entity/Person_entity.aod index 482f939243f..d888f5fb1dc 100644 --- a/entity/Person_entity/Person_entity.aod +++ b/entity/Person_entity/Person_entity.aod @@ -23,27 +23,6 @@ <titlePlural>Contacts</titlePlural> <recordContainer>db</recordContainer> <entityFields> - <entityActionGroup> - <name>observeActionGroup</name> - <children> - <entityActionField> - <name>observe</name> - <title>Observe</title> - <onActionProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/observe/onActionProcess.js</onActionProcess> - <isObjectAction v="true" /> - <iconId>VAADIN:EYE</iconId> - <stateProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/observe/stateProcess.js</stateProcess> - <titleProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/observe/titleProcess.js</titleProcess> - </entityActionField> - <entityActionField> - <name>cancelObservation</name> - <onActionProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/cancelobservation/onActionProcess.js</onActionProcess> - <iconId>VAADIN:EYE_SLASH</iconId> - <stateProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/cancelobservation/stateProcess.js</stateProcess> - <titleProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/cancelobservation/titleProcess.js</titleProcess> - </entityActionField> - </children> - </entityActionGroup> <entityField> <name>DATEOFBIRTH</name> <title>Date of birth</title> @@ -1046,6 +1025,187 @@ <inputFormat>dd.MM.</inputFormat> <state>READONLY</state> </entityField> + <entityConsumer> + <name>DSGVODeleteFlags</name> + <stateProcess>%aditoprj%/entity/Person_entity/entityfields/dsgvodeleteflags/stateProcess.js</stateProcess> + <dependency> + <name>dependency</name> + <entityName>DSGVODeleteFlag_entity</entityName> + <fieldName>DSGVODeleteFlags</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContactId_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/dsgvodeleteflags/children/contactid_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>Campaigns</name> + <dependency> + <name>dependency</name> + <entityName>Campaign_entity</entityName> + <fieldName>Campaigns</fieldName> + </dependency> + </entityConsumer> + <entityParameter> + <name>FilterPreSet_param</name> + <expose v="true" /> + </entityParameter> + <entityConsumer> + <name>DuplicatesPerson</name> + <selectionMode>MULTI</selectionMode> + <selectionModeProcess>%aditoprj%/entity/Person_entity/entityfields/duplicatesperson/selectionModeProcess.js</selectionModeProcess> + <dependency> + <name>dependency</name> + <entityName>Duplicate_entity</entityName> + <fieldName>Duplicates</fieldName> + </dependency> + <children> + <entityParameter> + <name>DuplicateObject_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/duplicatesperson/children/duplicateobject_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>ContactCommunicationSettings</name> + <refreshParent v="true" /> + <dependency> + <name>dependency</name> + <entityName>CommunicationSettings_entity</entityName> + <fieldName>SettingsForContact</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContactId_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/contactcommunicationsettings/children/contactid_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>InterestLinks</name> + <dependency> + <name>dependency</name> + <entityName>InterestLink_entity</entityName> + <fieldName>InterestsForContact</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContactId_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/interestlinks/children/contactid_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityParameter> + <name>SearchSyncCondition_param</name> + <expose v="true" /> + </entityParameter> + <entityConsumer> + <name>Interests</name> + <description>Used for the filterExtension "InterestLink_filter"</description> + <dependency> + <name>dependency</name> + <entityName>Interest_entity</entityName> + <fieldName>#PROVIDER</fieldName> + </dependency> + </entityConsumer> + <entityConsumer> + <name>Bulkmails</name> + <description>Used for the filterExtension "BulkmailReceived_filter"</description> + <dependency> + <name>dependency</name> + <entityName>BulkMail_entity</entityName> + <fieldName>#PROVIDER</fieldName> + </dependency> + </entityConsumer> + <entityConsumer> + <name>CommunicationSettingStatusKeyword</name> + <dependency> + <name>dependency</name> + <entityName>KeywordEntry_entity</entityName> + <fieldName>SpecificContainerKeywords</fieldName> + </dependency> + <children> + <entityParameter> + <name>ContainerName_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/communicationsettingstatuskeyword/children/containername_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>Salesprojects</name> + <dependency> + <name>dependency</name> + <entityName>Salesproject_entity</entityName> + <fieldName>Salesprojects</fieldName> + </dependency> + </entityConsumer> + <entityConsumer> + <name>AllTopics</name> + <dependency> + <name>dependency</name> + <entityName>TopicTree_entity</entityName> + <fieldName>#PROVIDER</fieldName> + </dependency> + <children> + <entityParameter> + <name>Expanded_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/alltopics/children/expanded_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityConsumer> + <name>Servicetickets</name> + <dependency> + <name>dependency</name> + <entityName>SupportTicket_entity</entityName> + <fieldName>SupportTickets</fieldName> + </dependency> + <children> + <entityParameter> + <name>ReturnEmpty_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/servicetickets/children/returnempty_param/valueProcess.js</valueProcess> + </entityParameter> + <entityParameter> + <name>TaskRequestorContactId_param</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/servicetickets/children/taskrequestorcontactid_param/valueProcess.js</valueProcess> + </entityParameter> + </children> + </entityConsumer> + <entityField> + <name>LETTERSALUTATION</name> + <title>Lettersalutation</title> + </entityField> + <entityField> + <name>contenttitle</name> + <valueProcess>%aditoprj%/entity/Person_entity/entityfields/contenttitle/valueProcess.js</valueProcess> + </entityField> + <entityParameter> + <name>OnlyNotInCampaignId_param</name> + <expose v="true" /> + </entityParameter> + <entityActionGroup> + <name>observeActionGroup</name> + <children> + <entityActionField> + <name>observe</name> + <title>Observe</title> + <onActionProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/observe/onActionProcess.js</onActionProcess> + <isObjectAction v="true" /> + <iconId>VAADIN:EYE</iconId> + <stateProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/observe/stateProcess.js</stateProcess> + <titleProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/observe/titleProcess.js</titleProcess> + </entityActionField> + <entityActionField> + <name>cancelObservation</name> + <onActionProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/cancelobservation/onActionProcess.js</onActionProcess> + <iconId>VAADIN:EYE_SLASH</iconId> + <stateProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/cancelobservation/stateProcess.js</stateProcess> + <titleProcess>%aditoprj%/entity/Person_entity/entityfields/observeactiongroup/children/cancelobservation/titleProcess.js</titleProcess> + </entityActionField> + </children> + </entityActionGroup> <entityActionField> <name>openEditDefaultsView</name> <title>Edit defaults</title> @@ -1216,6 +1376,12 @@ <iconId>NEON:TRASH</iconId> <stateProcess>%aditoprj%/entity/Person_entity/entityfields/deletefunction/stateProcess.js</stateProcess> </entityActionField> + <entityActionField> + <name>newSupportTicket</name> + <title>New Service ticket</title> + <onActionProcess>%aditoprj%/entity/Person_entity/entityfields/newsupportticket/onActionProcess.js</onActionProcess> + <iconId>VAADIN:TICKET</iconId> + </entityActionField> <entityActionField> <name>openAdminView</name> <title>Open admin view</title> @@ -1223,172 +1389,6 @@ <iconId>VAADIN:CURLY_BRACKETS</iconId> <stateProcess>%aditoprj%/entity/Person_entity/entityfields/openadminview/stateProcess.js</stateProcess> </entityActionField> - <entityConsumer> - <name>DSGVODeleteFlags</name> - <stateProcess>%aditoprj%/entity/Person_entity/entityfields/dsgvodeleteflags/stateProcess.js</stateProcess> - <dependency> - <name>dependency</name> - <entityName>DSGVODeleteFlag_entity</entityName> - <fieldName>DSGVODeleteFlags</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContactId_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/dsgvodeleteflags/children/contactid_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>Campaigns</name> - <dependency> - <name>dependency</name> - <entityName>Campaign_entity</entityName> - <fieldName>Campaigns</fieldName> - </dependency> - </entityConsumer> - <entityParameter> - <name>FilterPreSet_param</name> - <expose v="true" /> - </entityParameter> - <entityConsumer> - <name>DuplicatesPerson</name> - <selectionMode>MULTI</selectionMode> - <selectionModeProcess>%aditoprj%/entity/Person_entity/entityfields/duplicatesperson/selectionModeProcess.js</selectionModeProcess> - <dependency> - <name>dependency</name> - <entityName>Duplicate_entity</entityName> - <fieldName>Duplicates</fieldName> - </dependency> - <children> - <entityParameter> - <name>DuplicateObject_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/duplicatesperson/children/duplicateobject_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>ContactCommunicationSettings</name> - <refreshParent v="true" /> - <dependency> - <name>dependency</name> - <entityName>CommunicationSettings_entity</entityName> - <fieldName>SettingsForContact</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContactId_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/contactcommunicationsettings/children/contactid_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>InterestLinks</name> - <dependency> - <name>dependency</name> - <entityName>InterestLink_entity</entityName> - <fieldName>InterestsForContact</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContactId_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/interestlinks/children/contactid_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityParameter> - <name>SearchSyncCondition_param</name> - <expose v="true" /> - </entityParameter> - <entityConsumer> - <name>Interests</name> - <description>Used for the filterExtension "InterestLink_filter"</description> - <dependency> - <name>dependency</name> - <entityName>Interest_entity</entityName> - <fieldName>#PROVIDER</fieldName> - </dependency> - </entityConsumer> - <entityConsumer> - <name>Bulkmails</name> - <description>Used for the filterExtension "BulkmailReceived_filter"</description> - <dependency> - <name>dependency</name> - <entityName>BulkMail_entity</entityName> - <fieldName>#PROVIDER</fieldName> - </dependency> - </entityConsumer> - <entityConsumer> - <name>CommunicationSettingStatusKeyword</name> - <dependency> - <name>dependency</name> - <entityName>KeywordEntry_entity</entityName> - <fieldName>SpecificContainerKeywords</fieldName> - </dependency> - <children> - <entityParameter> - <name>ContainerName_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/communicationsettingstatuskeyword/children/containername_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityConsumer> - <name>Salesprojects</name> - <dependency> - <name>dependency</name> - <entityName>Salesproject_entity</entityName> - <fieldName>Salesprojects</fieldName> - </dependency> - </entityConsumer> - <entityConsumer> - <name>AllTopics</name> - <dependency> - <name>dependency</name> - <entityName>TopicTree_entity</entityName> - <fieldName>#PROVIDER</fieldName> - </dependency> - <children> - <entityParameter> - <name>Expanded_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/alltopics/children/expanded_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityActionField> - <name>newSupportTicket</name> - <title>New Service ticket</title> - <onActionProcess>%aditoprj%/entity/Person_entity/entityfields/newsupportticket/onActionProcess.js</onActionProcess> - <iconId>VAADIN:TICKET</iconId> - </entityActionField> - <entityConsumer> - <name>Servicetickets</name> - <dependency> - <name>dependency</name> - <entityName>SupportTicket_entity</entityName> - <fieldName>SupportTickets</fieldName> - </dependency> - <children> - <entityParameter> - <name>ReturnEmpty_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/servicetickets/children/returnempty_param/valueProcess.js</valueProcess> - </entityParameter> - <entityParameter> - <name>TaskRequestorContactId_param</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/servicetickets/children/taskrequestorcontactid_param/valueProcess.js</valueProcess> - </entityParameter> - </children> - </entityConsumer> - <entityField> - <name>LETTERSALUTATION</name> - <title>Lettersalutation</title> - </entityField> - <entityField> - <name>contenttitle</name> - <valueProcess>%aditoprj%/entity/Person_entity/entityfields/contenttitle/valueProcess.js</valueProcess> - </entityField> - <entityParameter> - <name>OnlyNotInCampaignId_param</name> - <expose v="true" /> - </entityParameter> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/Salesproject_entity/Salesproject_entity.aod b/entity/Salesproject_entity/Salesproject_entity.aod index 08c5f993e91..5975340055c 100644 --- a/entity/Salesproject_entity/Salesproject_entity.aod +++ b/entity/Salesproject_entity/Salesproject_entity.aod @@ -749,81 +749,6 @@ </entityParameter> </children> </entityProvider> - <entityActionGroup> - <name>observeActionGroup</name> - <children> - <entityActionField> - <name>observe</name> - <title>Observe</title> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/observe/onActionProcess.js</onActionProcess> - <isObjectAction v="true" /> - <iconId>VAADIN:EYE</iconId> - <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/observe/stateProcess.js</stateProcess> - <titleProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/observe/titleProcess.js</titleProcess> - </entityActionField> - <entityActionField> - <name>cancelObservation</name> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/cancelobservation/onActionProcess.js</onActionProcess> - <iconId>VAADIN:EYE_SLASH</iconId> - <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/cancelobservation/stateProcess.js</stateProcess> - <titleProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/cancelobservation/titleProcess.js</titleProcess> - </entityActionField> - <entityActionField> - <name>export</name> - <title>Export</title> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/export/onActionProcess.js</onActionProcess> - <isMenuAction v="true" /> - <isObjectAction v="false" /> - <iconId>NEON:EXPORT</iconId> - <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/export/stateProcess.js</stateProcess> - <tooltip>Export fields of this table</tooltip> - <tooltipProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/export/tooltipProcess.js</tooltipProcess> - </entityActionField> - </children> - </entityActionGroup> - <entityActionField> - <name>newOffer</name> - <documentation>%aditoprj%/entity/Salesproject_entity/entityfields/newoffer/documentation.adoc</documentation> - <title>New offer</title> - <description>Opens the Offer context in NEW-Mode and fills salesproject and contact.</description> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newoffer/onActionProcess.js</onActionProcess> - <iconId>VAADIN:CART</iconId> - </entityActionField> - <entityActionField> - <name>newTimetracking</name> - <title>New time tracking</title> - <description>Opens the time tracking context in new-mode for the selected salesproject</description> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newtimetracking/onActionProcess.js</onActionProcess> - <iconId>VAADIN:STOPWATCH</iconId> - </entityActionField> - <entityActionField> - <name>newActivity</name> - <title>New activity</title> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newactivity/onActionProcess.js</onActionProcess> - <iconId>VAADIN:HOURGLASS_END</iconId> - <tooltip>New activity</tooltip> - <tooltipProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newactivity/tooltipProcess.js</tooltipProcess> - </entityActionField> - <entityActionField> - <name>newTask</name> - <title>New task</title> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newtask/onActionProcess.js</onActionProcess> - <iconId>VAADIN:TASKS</iconId> - </entityActionField> - <entityActionField> - <name>startWorkflow</name> - <title>Start workflow</title> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/startworkflow/onActionProcess.js</onActionProcess> - <iconId>VAADIN:PLAY</iconId> - <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/startworkflow/stateProcess.js</stateProcess> - </entityActionField> - <entityActionField> - <name>openAdminView</name> - <title>Open admin view</title> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/openadminview/onActionProcess.js</onActionProcess> - <iconId>VAADIN:CURLY_BRACKETS</iconId> - <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/openadminview/stateProcess.js</stateProcess> - </entityActionField> <entityAggregateField> <name>PROBABILITY_aggregate</name> <parentField>PROBABILITY</parentField> @@ -862,12 +787,6 @@ </entityParameter> </children> </entityConsumer> - <entityActionField> - <name>openClassificationOverView</name> - <title>Show Classification</title> - <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/openclassificationoverview/onActionProcess.js</onActionProcess> - <iconId>VAADIN:LIST_OL</iconId> - </entityActionField> <entityParameter> <name>IgnoreChecklists_param</name> <expose v="true" /> @@ -910,6 +829,87 @@ <fieldName>Contacts</fieldName> </dependency> </entityConsumer> + <entityActionGroup> + <name>observeActionGroup</name> + <children> + <entityActionField> + <name>observe</name> + <title>Observe</title> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/observe/onActionProcess.js</onActionProcess> + <isObjectAction v="true" /> + <iconId>VAADIN:EYE</iconId> + <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/observe/stateProcess.js</stateProcess> + <titleProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/observe/titleProcess.js</titleProcess> + </entityActionField> + <entityActionField> + <name>cancelObservation</name> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/cancelobservation/onActionProcess.js</onActionProcess> + <iconId>VAADIN:EYE_SLASH</iconId> + <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/cancelobservation/stateProcess.js</stateProcess> + <titleProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/cancelobservation/titleProcess.js</titleProcess> + </entityActionField> + <entityActionField> + <name>export</name> + <title>Export</title> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/export/onActionProcess.js</onActionProcess> + <isMenuAction v="true" /> + <isObjectAction v="false" /> + <iconId>NEON:EXPORT</iconId> + <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/export/stateProcess.js</stateProcess> + <tooltip>Export fields of this table</tooltip> + <tooltipProcess>%aditoprj%/entity/Salesproject_entity/entityfields/observeactiongroup/children/export/tooltipProcess.js</tooltipProcess> + </entityActionField> + </children> + </entityActionGroup> + <entityActionField> + <name>newOffer</name> + <documentation>%aditoprj%/entity/Salesproject_entity/entityfields/newoffer/documentation.adoc</documentation> + <title>New offer</title> + <description>Opens the Offer context in NEW-Mode and fills salesproject and contact.</description> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newoffer/onActionProcess.js</onActionProcess> + <iconId>VAADIN:CART</iconId> + </entityActionField> + <entityActionField> + <name>newTimetracking</name> + <title>New time tracking</title> + <description>Opens the time tracking context in new-mode for the selected salesproject</description> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newtimetracking/onActionProcess.js</onActionProcess> + <iconId>VAADIN:STOPWATCH</iconId> + </entityActionField> + <entityActionField> + <name>newActivity</name> + <title>New activity</title> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newactivity/onActionProcess.js</onActionProcess> + <iconId>VAADIN:HOURGLASS_END</iconId> + <tooltip>New activity</tooltip> + <tooltipProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newactivity/tooltipProcess.js</tooltipProcess> + </entityActionField> + <entityActionField> + <name>newTask</name> + <title>New task</title> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/newtask/onActionProcess.js</onActionProcess> + <iconId>VAADIN:TASKS</iconId> + </entityActionField> + <entityActionField> + <name>startWorkflow</name> + <title>Start workflow</title> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/startworkflow/onActionProcess.js</onActionProcess> + <iconId>VAADIN:PLAY</iconId> + <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/startworkflow/stateProcess.js</stateProcess> + </entityActionField> + <entityActionField> + <name>openClassificationOverView</name> + <title>Show Classification</title> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/openclassificationoverview/onActionProcess.js</onActionProcess> + <iconId>VAADIN:LIST_OL</iconId> + </entityActionField> + <entityActionField> + <name>openAdminView</name> + <title>Open admin view</title> + <onActionProcess>%aditoprj%/entity/Salesproject_entity/entityfields/openadminview/onActionProcess.js</onActionProcess> + <iconId>VAADIN:CURLY_BRACKETS</iconId> + <stateProcess>%aditoprj%/entity/Salesproject_entity/entityfields/openadminview/stateProcess.js</stateProcess> + </entityActionField> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/SupportTicket_entity/SupportTicket_entity.aod b/entity/SupportTicket_entity/SupportTicket_entity.aod index 0ac955827c1..e4dea0d870b 100644 --- a/entity/SupportTicket_entity/SupportTicket_entity.aod +++ b/entity/SupportTicket_entity/SupportTicket_entity.aod @@ -771,7 +771,8 @@ </entityField> <entityField> <name>IsOverDue</name> - <contentType>TEXT</contentType> + <title>Over due</title> + <contentType>BOOLEAN</contentType> </entityField> <entityField> <name>DATE_END</name> @@ -962,6 +963,9 @@ <contentType>DATE</contentType> <valueProcess>%aditoprj%/entity/SupportTicket_entity/entityfields/date_edit/valueProcess.js</valueProcess> </entityField> + <entityParameter> + <name>PullNextFilter_param</name> + </entityParameter> <entityConsumer> <name>KnowledgeEntries</name> <dependency> @@ -1199,6 +1203,7 @@ <dbRecordFieldMapping> <name>IsOverDue.value</name> <expression>%aditoprj%/entity/SupportTicket_entity/recordcontainers/db/recordfieldmappings/isoverdue.value/expression.js</expression> + <isFilterable v="true" /> </dbRecordFieldMapping> <dbRecordFieldMapping> <name>DATE_END.value</name> @@ -1247,15 +1252,6 @@ </linkInformation> </linkInformation> <filterExtensions> - <filterExtension> - <name>Favorite_filter</name> - <title>Favoritegroup</title> - <contentType>TEXT</contentType> - <filterValuesProcess>%aditoprj%/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js</filterValuesProcess> - <filterConditionProcess>%aditoprj%/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js</filterConditionProcess> - <isLookupFilter v="false" /> - <filtertype>BASIC</filtertype> - </filterExtension> <filterExtensionSet> <name>Attribute_filter</name> <filterFieldsProcess>%aditoprj%/entity/SupportTicket_entity/recordcontainers/db/filterextensions/attribute_filter/filterFieldsProcess.js</filterFieldsProcess> diff --git a/entity/SupportTicket_entity/entityfields/is_overdue_symbol/valueProcess.js b/entity/SupportTicket_entity/entityfields/is_overdue_symbol/valueProcess.js index 8aa84faafb8..d47c8c67463 100644 --- a/entity/SupportTicket_entity/entityfields/is_overdue_symbol/valueProcess.js +++ b/entity/SupportTicket_entity/entityfields/is_overdue_symbol/valueProcess.js @@ -1,7 +1,8 @@ +import("Util_lib"); import("system.result"); import("system.vars"); -if (vars.get("$field.IsOverDue")) +if(Utils.toBoolean(vars.get("$field.IsOverDue"))) { result.string("vaadin:warning"); } \ No newline at end of file diff --git a/entity/SupportTicket_entity/entityfields/pullnextticket/onActionProcess.js b/entity/SupportTicket_entity/entityfields/pullnextticket/onActionProcess.js index 8d560f90102..7d76af66560 100644 --- a/entity/SupportTicket_entity/entityfields/pullnextticket/onActionProcess.js +++ b/entity/SupportTicket_entity/entityfields/pullnextticket/onActionProcess.js @@ -132,4 +132,4 @@ if(ticketID != "") else { question.showMessage(translate.text("No new tickets available at this moment.")); -} \ No newline at end of file +} diff --git a/entity/SupportTicket_entity/entityfields/task_maturity_date/colorProcess.js b/entity/SupportTicket_entity/entityfields/task_maturity_date/colorProcess.js index 7d9f0d45cc4..d4fe89a7045 100644 --- a/entity/SupportTicket_entity/entityfields/task_maturity_date/colorProcess.js +++ b/entity/SupportTicket_entity/entityfields/task_maturity_date/colorProcess.js @@ -1,13 +1,10 @@ +import("Util_lib"); import("system.neon"); import("system.result"); -import("system.datetime"); import("system.vars"); - -var overdue =vars.get("$field.IsOverDue"); - -if (!overdue) +if (!Utils.toBoolean(vars.get("$field.IsOverDue"))) { result.string(neon.PRIORITY_NONE_COLOR); } diff --git a/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js b/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js deleted file mode 100644 index a49514ad69a..00000000000 --- a/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterConditionProcess.js +++ /dev/null @@ -1,12 +0,0 @@ -import("system.vars"); -import("Favorites_lib"); -import("system.result"); -import("Sql_lib"); - -var operator = vars.get("$local.operator"); -var rawvalue = vars.get("$local.rawvalue"); - -var objecttype = vars.get("$field.SUPPORTTICKET_OBJECTTYPE"); -var idcolumn = "TICKET.TICKETID"; - -result.string(FavoritesUtil.getFilterDisplayCondition(objecttype, operator, rawvalue, idcolumn)); diff --git a/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js b/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js deleted file mode 100644 index 419128ca73f..00000000000 --- a/entity/SupportTicket_entity/recordcontainers/db/filterextensions/favorite_filter/filterValuesProcess.js +++ /dev/null @@ -1,5 +0,0 @@ -import("Context_lib"); -import("system.result"); -import("Favorites_lib"); - -result.object(FavoritesUtil.getUserFavoriteGroupsByContext(ContextUtils.getCurrentContextId())); \ No newline at end of file diff --git a/entity/SupportTicket_entity/recordcontainers/db/orderClauseProcess.js b/entity/SupportTicket_entity/recordcontainers/db/orderClauseProcess.js index 0e288520769..9cd8ad79b2d 100644 --- a/entity/SupportTicket_entity/recordcontainers/db/orderClauseProcess.js +++ b/entity/SupportTicket_entity/recordcontainers/db/orderClauseProcess.js @@ -1,4 +1,14 @@ +import("Util_lib"); +import("system.vars"); import("system.db"); import("system.result"); -result.object({"TASK.START_DATE": db.DESCENDING}); \ No newline at end of file + +if(Utils.toBoolean(vars.get("$param.PullNextFilter_param"))) +{ + result.object({"TASK.START_DATE": db.ASCENDING}); +} +else +{ + result.object({"TASK.START_DATE": db.DESCENDING}); +} \ No newline at end of file diff --git a/entity/SupportTicket_entity/recordcontainers/db/recordfieldmappings/isoverdue.value/expression.js b/entity/SupportTicket_entity/recordcontainers/db/recordfieldmappings/isoverdue.value/expression.js index 1f6de45f9e5..5e391090d4d 100644 --- a/entity/SupportTicket_entity/recordcontainers/db/recordfieldmappings/isoverdue.value/expression.js +++ b/entity/SupportTicket_entity/recordcontainers/db/recordfieldmappings/isoverdue.value/expression.js @@ -5,8 +5,8 @@ import("system.result"); import("KeywordRegistry_basic"); result.string( SqlBuilder.caseStatement() - .when("TASK.MATURITY_DATE", datetime.date(), SqlBuilder.GREATER()).then("''") - .when( "TASK.MATURITY_DATE is null").then("''") - .when( "TASK.STATUS", $KeywordRegistry.taskStatus$ended()).then("''") - .elseString("true")); + .when("TASK.MATURITY_DATE", datetime.date(), SqlBuilder.GREATER()).then("0") + .when( "TASK.MATURITY_DATE is null").then("0") + .when( "TASK.STATUS", $KeywordRegistry.taskStatus$ended()).then("0") + .elseString("1")); diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod index fad0a78b9e6..5e7d445c786 100644 --- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod +++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod @@ -8169,9 +8169,6 @@ <entry> <key>Ticket resubmitted</key> </entry> - <entry> - <key>New service ticket</key> - </entry> <entry> <key>New date due</key> </entry> @@ -9150,6 +9147,18 @@ <entry> <key>Use all serviceticket categories</key> </entry> + <entry> + <key>Overdue</key> + </entry> + <entry> + <key>Please add the price of the product</key> + </entry> + <entry> + <key>New service ticket</key> + </entry> + <entry> + <key>Continue mailing</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> <sqlModels> diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index 234c48fc2fd..d626de5fbf6 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -7749,6 +7749,10 @@ <key>Column 30</key> <value>Spalte 30</value> </entry> + <entry> + <key>Overdue</key> + <value>Überfällig</value> + </entry> <entry> <key>Duplicate status</key> <value>Dublettenstatus</value> @@ -11619,7 +11623,7 @@ </entry> <entry> <key>Pull next ticket or create new ones</key> - <value></value> + <value>Neue Tickets ziehen oder erstellen</value> </entry> <entry> <key>Abgeschlossen</key> @@ -11930,6 +11934,7 @@ </entry> <entry> <key>Show my tickets that are in process.</key> + <value>Meine Tickets anzeigen, die in Bearbeitung sind.</value> </entry> <entry> <key>Propkey</key> @@ -11945,6 +11950,7 @@ </entry> <entry> <key>Show the finished Tickets in the last 4 weeks</key> + <value>Zeigt die abgeschlossenen Tickets der letzten 4 Wochen an. </value> </entry> <entry> <key>Manually</key> @@ -12014,6 +12020,9 @@ <entry> <key>Kd.-Nr.</key> </entry> + <entry> + <key>Please add the price of the product</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod index d422cdf57e1..065c8306863 100644 --- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod +++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod @@ -9228,6 +9228,15 @@ <entry> <key>Use all serviceticket categories</key> </entry> + <entry> + <key>Overdue</key> + </entry> + <entry> + <key>Please add the price of the product</key> + </entry> + <entry> + <key>Continue mailing</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> diff --git a/neonView/EmployeeGroupConRelationFilter_view/EmployeeGroupConRelationFilter_view.aod b/neonView/EmployeeGroupConRelationFilter_view/EmployeeGroupConRelationFilter_view.aod index 019ecd19a43..9c1504c745c 100644 --- a/neonView/EmployeeGroupConRelationFilter_view/EmployeeGroupConRelationFilter_view.aod +++ b/neonView/EmployeeGroupConRelationFilter_view/EmployeeGroupConRelationFilter_view.aod @@ -16,7 +16,7 @@ <element>TABLET</element> <element>DESKTOP</element> </devices> - <isEditable v="false" /> + <isEditable v="true" /> <columns> <neonTableColumn> <name>dff8536f-f394-4117-8a58-287fa51d26bc</name> diff --git a/process/KeywordRegistry_basic/process.js b/process/KeywordRegistry_basic/process.js index f834911b5c6..93e5735ff40 100644 --- a/process/KeywordRegistry_basic/process.js +++ b/process/KeywordRegistry_basic/process.js @@ -424,6 +424,7 @@ $KeywordRegistry.inboxFilterComponent$body = function(){return "BODY";}; $KeywordRegistry.inboxFilterComponent$subject = function(){return "SUBJECT";}; $KeywordRegistry.inboxFilterComponent$sender = function(){return "SENDER";}; $KeywordRegistry.inboxFilterComponent$subject_body = function(){return "SUBJECT_BODY";}; +$KeywordRegistry.inboxFilterComponent$recipient = function(){return "RECIPIENT";}; $KeywordRegistry.inboxFilterTarget = function(){return "InboxFilterTarget";}; $KeywordRegistry.inboxFilterTarget$category = function(){return "CATEGORY";}; diff --git a/process/mailbridge_service/process.js b/process/mailbridge_service/process.js index c26b4a27927..bd8c21cd139 100644 --- a/process/mailbridge_service/process.js +++ b/process/mailbridge_service/process.js @@ -356,8 +356,7 @@ TicketMailbridgeUtils.saveAttachement = function(pUid, pMailObject, pType) TicketMailbridgeUtils.findTicket = function(pSubject, pInboxObject, pMailObj) { var ticketID = ""; - - + if(pSubject != undefined && pSubject != "") { if(pSubject.match(this.codeRegex)) @@ -388,9 +387,8 @@ TicketMailbridgeUtils.findTicket = function(pSubject, pInboxObject, pMailObj) ticketData = ticketData[0]; } } - else - + { ticketData = ticketData[0]; } @@ -405,8 +403,8 @@ TicketMailbridgeUtils.findTicket = function(pSubject, pInboxObject, pMailObj) if(finalDate < vars.get("$sys.date")) // -- > new Ticket -> Problem is old Customernumber { - // Call function for using filer - TicketMailbridgeUtils.useFiler(pInboxObject, pMailObj, true); + // Call function for using filter + TicketMailbridgeUtils.useFilter(pInboxObject, pMailObj, true); } else // --> Reopen { @@ -536,8 +534,7 @@ TicketMailbridgeUtils.findTicket = function(pSubject, pInboxObject, pMailObj) } } } - return ticketID; - + return ticketID; } @@ -796,7 +793,7 @@ TicketMailbridgeUtils.createTicket = function(pMailObject, pFilterResult, pInbox /** * Apply Filter on each Part */ -TicketMailbridgeUtils.useFiler = function(pInboxObj, pMailObject, pTicketfromOldOne) +TicketMailbridgeUtils.useFilter = function(pInboxObj, pMailObject, pTicketfromOldOne) { var scoreObject = {}; @@ -818,17 +815,17 @@ TicketMailbridgeUtils.useFiler = function(pInboxObj, pMailObject, pTicketfromOld switch(component) // Where to search? { - case "BODY": + case $KeywordRegistry.inboxFilterComponent$body(): componentType = pMailObject[mail.MAIL_TEXT] || " "; break; - case "SUBJECT": - case "SUBJECT_BODY": + case $KeywordRegistry.inboxFilterComponent$subject(): + case $KeywordRegistry.inboxFilterComponent$subject_body(): componentType = pMailObject[mail.MAIL_SUBJECT] || " "; break; - case "RECIPIENT": + case $KeywordRegistry.inboxFilterComponent$recipient(): componentType = pMailObject[mail.MAIL_RECIPIENT]; break; - case "SENDER": + case $KeywordRegistry.inboxFilterComponent$sender(): componentType = pMailObject[mail.MAIL_SENDER]; break; default: @@ -845,7 +842,7 @@ TicketMailbridgeUtils.useFiler = function(pInboxObj, pMailObject, pTicketfromOld categoriesFormatted += translate.text("Search term") + " '" + searchTerm.toString() +"' " + translate.text("determined in") + " "+ KeywordUtils.getViewValue($KeywordRegistry.inboxFilterComponent(), component) + "\n"; } // If subject and body are selected for search, repeat process with body - if (component == "SUBJECT_BODY") + if (component == $KeywordRegistry.inboxFilterComponent$subject_body()) { componentType = pMailObject[mail.MAIL_TEXT] var score = text.analyzeText(componentType, patternArr, false); @@ -879,15 +876,19 @@ TicketMailbridgeUtils.useAttributeFilter = function(pInboxObj, pTicketID, pMailO var IDX_EXISTING_ATTRS = 1; var IDX_ATTRIBUTEID = 0; var attributeCountObj = {}; + var logMessage = []; + - if (attributeFilters.length > 0) - { // searches for the appropriate fix attribute filter ids - var resultCheckFixAttrFilters = TicketMailbridgeUtils.checkAttributeFilters(attributeFilters, pMailObject); - matchedAttributeFilterIds = resultCheckFixAttrFilters[0]; - var logMessage = resultCheckFixAttrFilters[1]; + if(attributeFilters.length > 0) + { + var resultCheckFixAttrFilters = TicketMailbridgeUtils.checkAttributeFilters(attributeFilters, pMailObject, $KeywordRegistry.attributeFilterComparisonMethod$fix()); + resultCheckFixAttrFilters.forEach(function(FixAttrFilter){ + matchedAttributeFilterIds.push(FixAttrFilter[0][0]); + logMessage.push(FixAttrFilter[1]); + }); } - + if(matchedAttributeFilterIds.length > 0) { // Fetches the stored attributes of the matching attribute filter @@ -896,7 +897,7 @@ TicketMailbridgeUtils.useAttributeFilter = function(pInboxObj, pTicketID, pMailO .where("AB_ATTRIBUTERELATION.OBJECT_ROWID", matchedAttributeFilterIds, SqlBuilder.IN()) .and("AB_ATTRIBUTERELATION.OBJECT_TYPE", "AttributeFilter") .table(); - + // creates the max count object so that the maximum number of the attribute can be checked if(attributesToInsert.length > 0) { @@ -951,7 +952,8 @@ TicketMailbridgeUtils.useAttributeFilter = function(pInboxObj, pTicketID, pMailO } }); - new db.inserts(inserts); + db.inserts(inserts); + } } if(inserts.length > 0) @@ -966,15 +968,16 @@ TicketMailbridgeUtils.useAttributeFilter = function(pInboxObj, pTicketID, pMailO * @param pAttributeFilters {Array} the detected attribute filters * @param pMailObject {Object} the inbox object created in funktion TicketMailbridgeUtils.getInboxInformation() * -* @return {Array} structure: [[attributeFilterId], logMessage] +* @return {Array} structure: [[attributeFilterId, logMessage]] */ TicketMailbridgeUtils.checkAttributeFilters = function(pAttributeFilters, pMailObject) { - var filterResult; + var filterResult = []; pAttributeFilters.forEach(function([attributeFilterId, component, searchterm]) { var textToSearch; + var tempFilterResult; searchterm = searchterm || ""; switch(component) // Where to search? @@ -982,7 +985,8 @@ TicketMailbridgeUtils.checkAttributeFilters = function(pAttributeFilters, pMailO case $KeywordRegistry.inboxFilterComponent$body(): textToSearch = pMailObject[mail.MAIL_TEXT] || " "; break; - case $KeywordRegistry.inboxFilterComponent$subject(): + case $KeywordRegistry.inboxFilterComponent$subject(), + $KeywordRegistry.inboxFilterComponent$subject_body(): textToSearch = pMailObject[mail.MAIL_SUBJECT] || " "; break; case $KeywordRegistry.inboxFilterComponent$sender(): @@ -993,7 +997,22 @@ TicketMailbridgeUtils.checkAttributeFilters = function(pAttributeFilters, pMailO break; } textToSearch = textToSearch || ""; - filterResult = TicketMailbridgeUtils.checkFixAttributeFilters(searchterm, attributeFilterId, textToSearch, component); + tempFilterResult = TicketMailbridgeUtils.checkFixAttributeFilters(searchterm, attributeFilterId, textToSearch, component); + if(tempFilterResult[0] != "") + { + filterResult.push(tempFilterResult); + } + // If subject and body are selected for search, repeat process with body + if(component == $KeywordRegistry.inboxFilterComponent$subject_body()) + { + textToSearch = pMailObject[mail.MAIL_TEXT] || " "; + textToSearch = textToSearch || ""; + tempFilterResult = TicketMailbridgeUtils.checkFixAttributeFilters(searchterm, attributeFilterId, textToSearch, component); + if(tempFilterResult[0] != "") + { + filterResult.push(tempFilterResult); + } + } }); return filterResult; @@ -1007,21 +1026,21 @@ TicketMailbridgeUtils.checkAttributeFilters = function(pAttributeFilters, pMailO * @param pTextToSearch {String} the mail text * @param pComponent {String} the component being searched * -* @return {Array} structure: [[attributeFilterId], logMessage] +* @return {Array} structure: [attributeFilterId, logMessage] */ TicketMailbridgeUtils.checkFixAttributeFilters = function(pSearchterm, pAttributeFilterId, pTextToSearch, pComponent) { var matchedAttributeFilterIds = []; - var logMessageAttributeFiilter = ""; + var logMessageAttributeFilter = ""; if(pTextToSearch.match(new RegExp(pSearchterm, "g")) != null) { - logMessageAttributeFiilter += translate.text("Search term") + " '" + pSearchterm +"' " + translate.text("determined in") + " " + KeywordUtils.getViewValue($KeywordRegistry.inboxFilterComponent(), pComponent) + "\n"; + logMessageAttributeFilter += translate.text("Search term") + " '" + pSearchterm +"' " + translate.text("determined in") + " " + KeywordUtils.getViewValue($KeywordRegistry.inboxFilterComponent(), pComponent) + "\n"; matchedAttributeFilterIds.push(pAttributeFilterId); } - return [matchedAttributeFilterIds, logMessageAttributeFiilter]; + return [matchedAttributeFilterIds, logMessageAttributeFilter]; } /** @@ -1089,6 +1108,6 @@ var inboxObj = TicketMailbridgeUtils.getInboxInformationAllRecipients(recipients if(TicketMailbridgeUtils.findTicket(mailObj[mail.MAIL_SUBJECT], inboxObj, mailObj) == "") { // Call function for using filter - TicketMailbridgeUtils.useFiler(inboxObj, mailObj); + TicketMailbridgeUtils.useFilter(inboxObj, mailObj); } \ No newline at end of file -- GitLab