Changelog 9.10


KeySubjectDescription
ERA-8164Subprocess result is accessible in a subprocess task

As a workflow modeler, I would like to be able to have results of a subprocess (the set of configured output parameters of the subprocess), in the subprocess activity, after the subprocess execution has concluded, in order to be able use results of a sub-process in the main process.

Acceptance criteria:

  • There exists a function 'subProcessResult(string name)' in subprocess activity
  • The function returns an object that contains the process result datastructure of the given name, so that data from complex process output structures can be read
ERA-9321Boilerplate texts can be accessed from script

Currently it is not possible to access boilerplate texts defined on the model from a script. This would simplify the use of localized text content inside a script. In the attachment, you can see how a localized text block is defined in the AdHoc-Workflow at the moment.


Acceptance criteria:

  • Boilerplate texts defined in the model are accessible from a script via the $ object: 
    $.process.model.resources.getBoilerplate(boilerplateName);
  • The method getBoilerplate returns undefined if boilerplateName does not exist
    (boilerplates is a map containing maps that represent individual boilerplate texts)
  • If resourceName exists, the method returns a map with locale names mapped to localizations of the resource.
    This map can be then freely used with map syntax as defined in ECMA.
  • A localized boilerplate text value is accessible from a script: 
    $.process.model.resources.getLocalizedBoilerplate(boilerplateName, languageTag, [optional] applyFallback);
  • The method getLocalizedBoilerplate returns undefined if boilerplateName does not exist
  • The method getLocalizedBoilerplate returns undefined if no vaule for requested languageTag exists and applyFallback is false
ERA-9475Id of process-model is accessible on process script object

As a workflow modeler, I would like to be able to access the model ID on which the current process is based.

Acceptance criteria:

  • There is a property "model" on the process object that return a process model object
  • There is a property "id" and "name" on the process model object
ERA-9543BPM Scripting API Provides Information on a Process Model Used by a Process Instance

As a process model developer, I would like to have access to process model information of a process instance.

Acceptance criteria:

  • Process instance has a property model of type ProcessModel
  • ProcessModel property contains:
    • id - unique ID of the model
    • name - name of the model
    • ressources - various ressources defined in the model, such as boilerplate texts (ERA-9321)


TUK-1542It is possible to add and configure dashboard widgets for an image, a todo list, and a website

As a user, I want to be able to be able to add images, todo lists, and websites to my dashboards that show me neccessary information supporting my daily work.

Acceptance criteria:

  • The following widgets can be selected and placed on a workspace including an optional title for it and that can be configured as follows:
    • 'Image'/'Bild': a file that can be uploaded.
      • The size is checked: not more than 1 Mbyte
    • 'Task list'/'Aufgabenliste'
    • 'Website'/'Web-Seite': this widget shows the website of the configured 'URL' within an iframe.
      • Keep in mind that not all websites may work due to regulations of the hoster.
    • The widgets can be replaced on a grid, resized, edited, and removed.
TUK-2682The user is better guided when creating a new object within a folder via drag and dropp

As a user, I want to be prevented to select the 'Add as new version' when I want to create a new object in a folder by drag and drop.

Acceptance criteria:

  • The client offers different icons for the buttons so that create new object and add as new version is better differentiated.
  • icons are from here: https://fonts.google.com/icon
TUK-2684A user is asked whether he wants to be set to 'Present' after opening the client and being set to 'Absent'

As a user, I want to be informed about my absence status so that I easily can switch to 'Present' so that my substitution is stopped.

Acceptance criteria:

  • The client checks the user's presence status when being opened and
    • if the user is set to 'Out of office' a popup dialog is opened informing about this and asked whether to set it to 'Present':
      EN: 'You are set as absent. Do you want to be set as present?'
      DE: "Sie sind auf abwesend gesetzt. Wollen sie auf anwesend gesetzt werden?'
    • It is possible can cancel this action by clicking the button 'Cancel'/'Abbrechen' or clicking the button 'Set me as present'/'Auf anwesend setzen'.
TUK-2854In the dashboard, it is possible to open a specific object type search in a new browser tab by clicking Strg + left mouse click

As a user, I want to be able to open the result list in a new tab for an object type that is offered on the dashboard for an entered search term so that the browsers tab with the current dashboard situation keeps staying and I do not have to enter my search term again.

Acceptance criteria:

  • Idea: it is possible to use Strg + left mouse click or if focused be using the keyboard to use Strg + Enter so that the result list is opened in a new browser tab.
TUK-3006All sessions of a specific user can be removed at once

As an administrator, I want to be able to remove all sessions of a specific user at once. Therefore an API-Endpoint should be created. Additionally I want to have a button "kill all sessions" in the session overview page of the rest-ws monitor.

More information: This is especially helpful if a user has exceeded the session-limit and thus cannot login anymore - the button will fix this and re-enable the user to login.

Acceptance criteria:

  • In the REST-WS there is a button 'Remove all sessions' for a focused user in the sessions list.
  • There is a new ManagementService Delete endpoint for this feature: /management/session/user/{id} responding the codes
    • 202 if the sessions could be removed
    • 404  if no sessions were effected
TUK-3012In the recycle bin, users without the privilege 'delete' are offered the delete icon but are informed about the missing permission via tooltip

As a user, I want to be informed about my missing right if I try to delete an object that is listed in my recycle bin so that I know why I can't delete it.

Acceptance criteria:

  • The delete icon is shown to every user
  • If a user does not have the privilege 'delete' the icon is shown in light gray and the following information is offered in the tooltip:
    • EN: 'You do not have permission to delete this object permanently.'
    • DE: 'Sie sind nicht berechtigt, dieses Objekt dauerhaft zu löschen.'
  • All icons in the header of lists are styled in the same way as given in the object details: dark gray and when hovering over a light gray background is shown.
TUK-3025The follow-up due date and info are shown in the tooltip of the follow-up symbol

As a user, I want to see the follow-up due date and info in the tooltip of the follow-up symbol so that I don't have to open the action to check it there.

Acceptance criteria:

  • Instead of 'Follow-up available'/'Wiedervorlage vorhanden' show
    EN: 'Follow-up due date: <date> (<info>)'
    DE: 'Wiedervorlagetermin: <date> (<info>)' 


TUK-3027The DmsBatchService.createObjects endpoint supports loading content from a microservice

As a microservice programmer, I want the DmsBatchService.createObjects endpoint to support loading content files directly from my microservice by using a microservice-URL.

Idea: This URL will be passed with the batch-call to the core-service and it in turn resolves this to an internal route to the microservice using the dms-sidecar.

Acceptance criteria:

  • the DmsBatchService.createObjects endpoint supports specifing "service" as a content location
  • the url will contain the microservice name and the endpoint within this microservice to load the content-file. The core-service will use the dms-sidecar to call this microservice-endpoint.
  • There is a documentation in the REST-WS interface.
TUK-3040The dashboard can be configured to show only the necessary components or add some more, and more dashboard can be added

As a user, I want to be able to change my dashboard by removing or adding widgets that show me important information regarding my daily work so that I don't have to search for them. And I want to configure several dashboards for my different needs so that I can switch to them when I switch my work context.

Acceptance criteria:

  • The dashboard became a configurable dashboard. New users are getting a default dashboard that contains the same components as are known from the former dashboard. 
  • The default dashboard can be edited by clicking on the '+' symbol in the footer but not deleted or renamed.
    • The default dashboard can be configured in the file ..\assets\dashboard.json
    • Widgets can be removed in the edit dialog and others can be placed on the default dashboard including changing its size and ant title. 
    • The name of the default dashboard is shown on a button in the new footer, can be localized, and is 'Dashboard' in EN and DE.
  • The configuration of the dashboards is saved via user service and is loaded while the client is starting up.
  • It is possible to create additional dashboards with a name limited to 50 characters. 
    • Many dashboards are handled well in the footer.
    • All dashboards have the same background as that of the default one.
    • A dashboard can be deleted. A security question is offered. 
  • All components of the dashboard are available as components that can be used as widgets that can be placed on dashboards. In the widget selection dialog these widgets are listed:
    • 'Quick search'/'Schnellsuche: If it is placed on the dashboard it works like that on the dashboard, including getting the focus if the workspace is opened.
    • 'Last edited and created'/'Zuletzt bearbeitet und erstellt': The component of the dashboard is extended. It is possible to switch both lists.
    • 'Unread notifications'/'Ungelesene Nachrichten': This title can be changed in the widget configuration.
      • The preview shows what the user will see if unread messages exist on the dashboard otherwise informs about currently not available messages so the widget will not be shown on the dashboard.
    • 'Objects to be filed'/'Abzulegende Objekte': This title can be changed in the widget configuration.
      • The preview shows what the user will see if objects are to be filed on the dashboard otherwise informs about currently not existing ones so the widget will not be shown on the dashboard.
TUK-3042The cleanup operation for the recycle bins is optimized

As an administrator, I want to be supported by an operation that is able to process many ten thousands of pre-deleted objects and is reporting the error cases in the REST-WS interface as well so that I am easily informed about the result.

Acceptance criteria:

  • The report information in the REST-WS interface is extended and shows detailes per object especially about error cases.
  • The delete strategy is changed from a batch with all objects to single deletions per recycle bin.
TUK-3099The DmsBatchService endpoints support custom comments and intents for the history entry

As an interface-programmer, I want to be able to pass usercomments to any of the DmsBatchService.* rest-ws API endpoints, so that i can show individual information in the objects histories.

Acceptance criteria:

  • DmsBatchService endpoints support setting custom comments and intents for the history entry.


TUK-3109It is possible to configure the signing service to use the Adobe Sign platform for signing document files (Beta version)

As an administrator, I want to be able to configure the signing service to use the Adobe Sign platform and the account of my company.

Acceptance criteria:

  • It is possible to configure the use of the Adobe Sign platform in the signing-prod.yml.
  • The signing process works in the same way as given with the DocuSign eSignature platform:
    • After request signatures the first (ordern numbers 1,2,3,...) or all signers (1,1,1,1...) got an email with the subject and message given, and in the aspect 'Signatures' the requester with the date as well as the signer statuses are given. The status is 'inprocess'.
    • The signing service polls Adobe Sign for the status and if something has changed the new status information is written to the document object including the date.
      • if not completed the status keeps 'inprocess' but the signer data is updated
      • If completed the status changes to 'signed'
      • if the user has rejected the signing the status is changed to 'revised' and a given comment is shown in the signer data.
      • if the process as been expired the status is changed to 'expired'
      • if an Adobe Sign administrator has canceled to 'revised'. The statuses of the signer keep as is. 
    • If a user cancels the signing process the Adobe Sign agreement is canceled and the status is set to 'canceled' including the comment.
TUK-3204If a signing process has been stopped a red signing symbol is indicating this status in the object details header

As a user, I want to be able to recognize the stopped signing process as I do for other signing statuses as well so that I do not have to check the status by focusing on the signing aspect first.

Acceptance criteria:

  • If the signing of a document file was stopped e.g. because it was revised, expired, canceled, or an error has occured a red signature symbol is shown and a tooltip informs:
    • EN: 'The signing process has been stopped.'
    • DE: 'Der Signierprozess wurde gestoppt.' 
TUK-3264It is possible to let the cleanup operation for the recycle bins run with forcing the deletion although an object is contained in a process file

As an administrator, I will be able to delete all objects in the recycle bin even if they are contained in a process file.

Acceptance criteria:

  • It is possible to force the deletion operation for the recycle bin as it is possible in the delete objects operation.