From c497c8eee28e0dbc666dc9cf2618666a37368a95 Mon Sep 17 00:00:00 2001 From: "S.Listl" <S.Listl@SLISTL.aditosoftware.local> Date: Wed, 29 Jan 2020 10:45:07 +0100 Subject: [PATCH] WorkflowTask complete task error --- entity/WorkflowTask_entity/WorkflowTask_entity.aod | 2 ++ .../entityfields/completetask/stateProcess.js | 5 +++++ .../entityfields/create_time/titleProcess.js | 6 ++++++ .../recordcontainers/jdito/contentProcess.js | 11 +++++++++-- language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod | 3 +++ language/_____LANGUAGE_de/_____LANGUAGE_de.aod | 4 ++++ language/_____LANGUAGE_en/_____LANGUAGE_en.aod | 3 +++ 7 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 entity/WorkflowTask_entity/entityfields/completetask/stateProcess.js create mode 100644 entity/WorkflowTask_entity/entityfields/create_time/titleProcess.js diff --git a/entity/WorkflowTask_entity/WorkflowTask_entity.aod b/entity/WorkflowTask_entity/WorkflowTask_entity.aod index 093057d737..1ca9b00ef9 100644 --- a/entity/WorkflowTask_entity/WorkflowTask_entity.aod +++ b/entity/WorkflowTask_entity/WorkflowTask_entity.aod @@ -44,6 +44,7 @@ <title>Creation date</title> <contentType>DATE</contentType> <state>READONLY</state> + <titleProcess>%aditoprj%/entity/WorkflowTask_entity/entityfields/create_time/titleProcess.js</titleProcess> </entityField> <entityParameter> <name>WorkflowDefinitionId_param</name> @@ -54,6 +55,7 @@ <title>Complete task</title> <onActionProcess>%aditoprj%/entity/WorkflowTask_entity/entityfields/completetask/onActionProcess.js</onActionProcess> <iconId>VAADIN:CHECK</iconId> + <stateProcess>%aditoprj%/entity/WorkflowTask_entity/entityfields/completetask/stateProcess.js</stateProcess> <tooltip>Complete task</tooltip> </entityActionField> <entityParameter> diff --git a/entity/WorkflowTask_entity/entityfields/completetask/stateProcess.js b/entity/WorkflowTask_entity/entityfields/completetask/stateProcess.js new file mode 100644 index 0000000000..16def1966d --- /dev/null +++ b/entity/WorkflowTask_entity/entityfields/completetask/stateProcess.js @@ -0,0 +1,5 @@ +import("system.neon"); +import("system.vars"); +import("system.result"); + +result.string(vars.get("$field.PROCESSINSTANCE_ID") ? neon.COMPONENTSTATE_EDITABLE : neon.COMPONENTSTATE_INVISIBLE); \ No newline at end of file diff --git a/entity/WorkflowTask_entity/entityfields/create_time/titleProcess.js b/entity/WorkflowTask_entity/entityfields/create_time/titleProcess.js new file mode 100644 index 0000000000..7e0690651f --- /dev/null +++ b/entity/WorkflowTask_entity/entityfields/create_time/titleProcess.js @@ -0,0 +1,6 @@ +import("system.translate"); +import("system.vars"); +import("system.result"); + +if (!vars.get("$field.PROCESSINSTANCE_ID")) + result.string(translate.text("Date")); \ No newline at end of file diff --git a/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js b/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js index 1af939151e..6fd4066771 100644 --- a/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js +++ b/entity/WorkflowTask_entity/recordcontainers/jdito/contentProcess.js @@ -1,3 +1,4 @@ +import("system.translate"); import("system.project"); import("Context_lib"); import("system.neon"); @@ -13,12 +14,13 @@ import("system.workflow"); var isOnlyForCurrentUser = vars.get("$param.OnlyForCurrentUser_param") == "true"; var loadConfig = workflow.createConfigForLoadingTasks(); -var tasks; +var tasks, dummyTask; if (vars.get("$local.idvalues") && vars.get("$local.idvalues")[0]) { + var taskId = vars.get("$local.idvalues")[0]; loadConfig = workflow.createConfigForLoadingTask() - .taskId(vars.get("$local.idvalues")[0]); + .taskId(taskId); //TODO: there shouldn't be an error try { @@ -26,7 +28,9 @@ if (vars.get("$local.idvalues") && vars.get("$local.idvalues")[0]) } catch (err) { + //This can happen if the task is done, then it can't be loaded. If that's the case, return a dummy row tasks = []; + dummyTask = [taskId, translate.text("Task done"), "", "", vars.get("$sys.date"), "", "", "", "", "", "", "", "", "", "", "", ""]; } } else @@ -69,4 +73,7 @@ tasks = tasks.map(function (task) tasks = JditoFilterUtils.filterRecords(["UID", "NAME", "PROCESSDEFINITION_ID", "PROCESSINSTANCE_ID", "CREATE_TIME", "FORMDEFINITION", "USER", "DESCRIPTION", "CATEGORY", "ASSIGNEE", "", "DUEDATE", "OWNER"], tasks, vars.get("$local.filter").filter); +if (dummyTask) + tasks = [dummyTask]; + result.object(tasks); \ No newline at end of file diff --git a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod index c1ce05f093..41a1270cf3 100644 --- a/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod +++ b/language/_____LANGUAGE_EXTRA/_____LANGUAGE_EXTRA.aod @@ -6053,6 +6053,9 @@ <entry> <key>To check</key> </entry> + <entry> + <key>DSGVO Disclosure</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 953945b6de..90681049b5 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -50,6 +50,10 @@ <key>Has marketing approved this step?</key> <value>Hat das Marketing diesem Schritt zugestimmt?</value> </entry> + <entry> + <key>Task done</key> + <value>Aufgabe abgeschlossen</value> + </entry> <entry> <key>Export process</key> <value>Prozess exportieren</value> diff --git a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod index b9320a5730..887df788ad 100644 --- a/language/_____LANGUAGE_en/_____LANGUAGE_en.aod +++ b/language/_____LANGUAGE_en/_____LANGUAGE_en.aod @@ -6103,6 +6103,9 @@ <entry> <key>To check</key> </entry> + <entry> + <key>DSGVO Disclosure</key> + </entry> </keyValueMap> <font name="Dialog" style="0" size="11" /> </language> -- GitLab