List elements

List elements are elements of the form designer which are able to load several items of the same type as a list to display them or to offer any kind of selection to the user.

Most list elements support the definition of a so called 'service'. Such a service fetches the data items which are then displayed or offered for selection by the list element. If and how a service is configured depends on the context of the form. Dynamic enum values for example can only be restricted to a specified set whereas entity services can define a customizable data base search with restrictions, joins and calculated labels.

Portals are exceptionell compared to business object masks, because services can be freely added to or removed from list elements.

The service configuration is always made in the 'Entries and service' property category.

Distinction between data service types

Static data services

A static data service contains a static set of items e.g. Dynamic enum values.
Because the set is defined, items can be explicitly excluded or included from the set ('Entries and service' category) so that the selection can be restricted to a distinct subset.

images/download/attachments/44940415/image2018-11-16_11-17-47-version-1-modificationdate-1580219854745-api-v2.png

In this example, the entries for 'Microgram', 'Milligram' and 'Nanogram' were deactivated, so they do not appear in the dropdown.

The option 'include new values' specifies that new additions to the list of Weight & mass units (Dynamic Enumeration) will appear in the dropdown, even if they are not featured in the list of 'Active entries'. Alternatively, a choice of 'exclude new values' in this dropdown would specify that additions to the dynamic enumeration would be considered 'inactive' unless explicitly activated.

â–ºIMPORTANTâ—„ Changes of configuration on the level of 'Active entries' do not become effective until the button 'Apply item config' is pressed.

Controlling dropdown options by Dynamic Enum Filters

Whenever Dynamic enumerations provide data for a combobox, Dynamic enum filters may constrain the availability of options in a specific data context. Each of these filters defines a specific subset of all elements in a certain dynamic enumeration. A filter is regarded applicable, if it refers to the same dynamic enumeration as the combobox and at least one of the assigned Association criteria evaluates to 'true' in the given context. According to this definition multiple filters may turn out 'applicable' for the same combobox. The impact on choices in the dropdown depends on the choice for 'Enum filter mode' with three options (empty, AND, OR).

images/download/attachments/44940415/image2018-11-16_12-11-24-version-1-modificationdate-1580219854759-api-v2.png

Enum filter mode

Effect

empty
(default)

From all applicable Dynamic enum filters (if any), only the single one with the highest priority score of matching Association criteria is considered. Only entries of the dynamic enumeration included in this filter appear in the dropdown.

AND

All relevant Dynamic enum filters are considered and the dropdown features only entries included in ALL of these filters. Technically, the result sets of all applicable filters are 'intersected' resulting in a 'conjunction' (AND relation) of filter criteria.

OR

All relevant Dynamic enum filters are considered an the dropdown features all entries included by ANY of these filters. Technically, the dropdown list is a 'union' of the result sets of all applicable filters resulting from a 'disjunction' (OR relation) of filter criteria.

Practical example:

  • Dynamic enumeration 'Means of transportation' features options 'car', 'truck', 'ship', 'bicycle'

  • Dynamic enumeration filter #1 includes 'car', 'truck'

  • Dynamic enumeration filter #2 includes 'ship', 'truck'

We assume that the association criteria for both filters match:

Enumeration mode AND: ... intersection of the result sets of both filters: {'car'}

The dropdown shows all elements to include according to filter #1 AND filter #2.

Enumeration mode OR: ... union of the result sets ({'car', 'truck'} and {'ship', 'truck'}) of both filters: {'car', 'ship', 'truck'}

The dropdown shows all elements to include according to filter #1 OR filter #2.

Entity services

An entity service fetches items by executing a configured search. Also the labels of the items can be defined by using label expressions. Because of the fact that values could be selected in comboboxes which are not yet contained in the current data page, the label of selected items might lead to an item pre load to calculate the correct label for that entry. Due to that fact, entity services are also called 'Label Helper Services'.

images/download/attachments/44940415/image2020-1-28_15-0-4-version-1-modificationdate-1580220006028-api-v2.png

Entries cannot be excluded or included in case of an entity service, because the result set of the search is not defined nor static. Even a different user could get different items, for example.
Hence the category 'Entries and service' only displays the message 'Item configuration not available'.
The search itself can be configured by clicking on the Service config (1) button.
A new dialog will show up which makes the search and label configuration possible. This very dialog is described in more detail in the chapter Label helper configuration.

To parameterize the search with data from the form, an element can be linked using the element picker (2). The properties of the element's data will be available as variables within the service configuration.

Free configurable services (Portal)

As previously mentioned, the portal offers free use of all supported services without the restriction to the data context of the list element. List elements do not own a data service by default, but offer a Add services info button.
images/download/attachments/44940415/image2020-1-28_14-44-34-version-1-modificationdate-1580219854776-api-v2.png

A selection box (2) will become visible after pressing the button, which offers all supported service types. The service can also be removed again (1). A list element can only own one service.

images/download/attachments/44940415/image2020-1-28_14-47-37-version-1-modificationdate-1580219854783-api-v2.png

(1) Remove service info: Removes the service from the selected list element

(2) Service: A selection box which offers all supported service types which can be categorized into Static services and Entity services.

After selecting a service type, additional fields for specific configurations are displayed. One of them is the converter type which defines in which form a selected entry will be written into the element data.

images/download/attachments/44940415/image2020-1-28_14-53-18-version-1-modificationdate-1580219854794-api-v2.png

A complete list of all available services and compatible converters is found in the chapter Services and converters.