Skip to main content
Version: 2026.0

EntityField

This page provides generated reference documentation for the EntityField data model.

A field of an entity

Overview

PropertySummary
childrenList of children in this container
ckeditorAIAssistantEnabledDetermines whether the AI Assistant is active for this CKEditor instance. Behavior: true: enable the AI Assistant for this instance of the CKEditor…
ckeditorAIAssistantEnabledProcessDetermines whether the AI Assistant is active for this CKEditor instance. The process is only executed once during initialization of the CKEditor instance and…
ckeditorAICommandsProcessSpecifies a process that overwrites the default AI commands that are set in the ckeditorDefaultAICommandsProcess in the preferences If null is returned, then…
ckeditorAISystemPromptProcessSpecifies a process that overwrites the default AI system prompt that is set in the ckeditorDefaultAISystemPromptProcess in the preferences. The process should…
colorDefines a color for an element.
colorProcessDefines a color for an element dynamically by executing the process. Where (or if) the color is used depends on different actors in the system and is defined…
compareChangesWithRecordFieldSpecifies whether a change should be detected if the value is different from the RecordField. If the property is false, changes are only recognized if the…
consumerSpecify already existent consumers within this entity to define possibleValues for this field. For example a lookup-component will be available in the client…
contentTypeSpecifies the type of the content of an entity field.
contentTypeProcessProcess that overrides the static contentType and calculates the value by using JDito.
customProperties
descriptionShort technical description of the model in plain text.
displayValueProcessThe result of the process is written into the displayValue of the field. The process will not be executed when the recordContainer has already set a…
documentationContains the documentation of the data model in the popular AsciiDoc format (.adoc). The documentation should be set by the developer to explain different…
dropDownProcessWith this process you can define the possible items for this field. A combobox will be available in the client to select a value.
filterTreeExcludedFieldsProcessProcess that returns an array of EntityFieldNames that should be excluded when the FilterTree is shown. e.g. result.object(['SUBJECT', 'INFO']) will exclude…
filterTreeIgnorePermissionsIf this setting is set to true, all existing permissions for the entity fields within the filter tree component are ignored. e.g. PermissionDetail_entity:…
groupableIf the groupable property of a field is set, this field can be selected as a grouping in the filter.
htmlEditorFeaturesSpecifies what features should be available in the HTML editor.
inputFormatSpecifies the input format of the component.
linkedContextThis will create a reference from your field to another context. For example: If you've got a ORGANISATION_ID you may want to link to a context that contains…
linkedContextProcessBasically the same as the linkedContext property that can be calculated dynamically with a process. This is useful if you've got a field that could be…
mandatoryIndicates whether this field is mandatory and the value of this field must be set.
mandatoryProcessThe return value (boolean) indicates whether this field is mandatory and the value of this field must be set.
maxValueThe maximum value
maxValueProcessThe process for the maximum value
mentionFeedsJSON structure, that determines the mentions shown in the CKEditor. Needs to return an array of JSON objects containing a feed of tags.
minValueThe minimum value
minValueProcessThe process for the minimum value
onValidationThe onValidation is executed during loss of focus to check the input for validity. Validations fails, if a message other than true is returned by…
onValueChangeProcess that is executed when the value of a field was changed. Will only trigger if the change was performed by a sources that is set in the…
onValueChangeTypes## Value Change Sources for onValueChange Process
outputFormatSpecifies the output format of the component.
placeholderPlaceholder. Text that is displayed inline in a component
placeholderProcessProcess for a placeholder, will replace the placeholder property.
preferredGroupOrderThis property defines the preferred order of the groups. If DISPLAYVALUE is selected, but not available, then VALUE is used.
resolutionIf a graphic formatting of the value is desired, this is specified here.
selectionModeDetermines how many elements may be selected. For example, select either none, one dataset or multiple datasets at a time.
selectionModeProcessA process that can determine the selectionMode dynamically. You have to return the corresponding selectionMode in the process with result.string(...).
stateDetermines the state of an element, for example: element can be edited, element is not visible, element is inactive, etc.
stateProcessA process that can determine the state dynamically. You have to return the corresponding state in the process with result.string(...) This will overwrite the…
textInputAllowedThis property enables the functionality for the user to enter a own value
titleSingular title of the model, e.g. Surname
titleProcessProcess to determine the title dynamically. This will overwrite the value of the title property and is for example displayed in the views within the client.
tooltipTooltip. Text that is displayed when the mouse is driven over a component.
tooltipProcessProcess of tooltip labeling.
usePermissionsDetermines if the element is relevant for the authorisation concept. For example: If this value is true the element can be selected for the grant…
valueProcessThe result of the process is written into the field. The process will not be executed when already the recordContainer has already set a value.

children

Type: Children

List of children in this container


ckeditorAIAssistantEnabled

Type: Boolean
Default: true
Requires: contentTypeProcess property group

Determines whether the AI Assistant is active for this CKEditor instance. Behavior: true: enable the AI Assistant for this instance of the CKEditor (=default). false: disable the AI Assistant for this instance of the CKEditor.


ckeditorAIAssistantEnabledProcess

Type: String
Requires: contentTypeProcess property group

Determines whether the AI Assistant is active for this CKEditor instance. The process is only executed once during initialization of the CKEditor instance and can be used to enable or disable the AI Assistant based on different conditions. Overwrites the ckeditorAIAssistantEnabled flag of the CKEditor instance.


ckeditorAICommandsProcess

Type: String
Requires: contentTypeProcess property group

Specifies a process that overwrites the default AI commands that are set in the ckeditorDefaultAICommandsProcess in the preferences If null is returned, then no commands will be visible in the CKEditor. The process should return an array with JSON objects that contain the following properties: e.g. [{ groupId: customGroupId, groupLabel: My group of commands, commands: [ { id: translateSpanish, label: Translate to Spanish, prompt: Translate this text to Spanish. }, { id: explainFive, label: Explain like I'm five, prompt: Explain this like I'm five years old. } ] }] Consult the CKEditor Documentation for more information.


ckeditorAISystemPromptProcess

Type: String
Requires: contentTypeProcess property group

Specifies a process that overwrites the default AI system prompt that is set in the ckeditorDefaultAISystemPromptProcess in the preferences. The process should return a string that describes how the AI should behave. If null is returned, then the default CKEditor prompt is used: "Your task is to generate HTML content accordingly to the given instruction. Never include img tag in your response even if asked for. Your answer must be a well-structured and properly formatted HTML code. Answer only with the generated HTML content. Do not add any additional remarks or notes. Do not act like a chatbot or a real person."


color

Type: String

Defines a color for an element.

Where (or if) the color is used depends on different actors in the system and is defined internally. Note that the color can not be chosen freely, but you can select from different presets (e.g.: priority-high-color). This will ensure that the color will fit on different themes and for example a warning-color will always stand out.


colorProcess

Type: String

Defines a color for an element dynamically by executing the process. Where (or if) the color is used depends on different actors in the system and is defined internally. Note that the color can not be chosen freely, but you can select from different presets. Within the system.neon module there exist constants for the different colors, e.g. neon.PRIORITY_HIGH_COLOR or neon.BRAND_COLOR. This will ensure that the color will fit on different themes and for example a warning-color will always stand out.


compareChangesWithRecordField

Type: Boolean
Default: false

Specifies whether a change should be detected if the value is different from the RecordField. If the property is false, changes are only recognized if the new value differs from the value after initialization.


consumer

Type: String

Specify already existent consumers within this entity to define possibleValues for this field. For example a lookup-component will be available in the client to select a record.


contentType

Type: EContentType

Specifies the type of the content of an entity field.

This setting evaluates the client's graphical component and, for example, displays a boolean renderer in a table or renders an image.


contentTypeProcess

Type: String

Process that overrides the static contentType and calculates the value by using JDito.


customProperties

Type: CustomProperties


description

Type: String

Short technical description of the model in plain text.


displayValueProcess

Type: String

The result of the process is written into the displayValue of the field. The process will not be executed when the recordContainer has already set a displayValue. Note that you may need to specify the displayValueProcess in addition in certain situations (for example if your field is editable)

You should only set the displayValue if you've got a value (see valueProcess).


documentation

Type: String

Contains the documentation of the data model in the popular AsciiDoc format (.adoc). The documentation should be set by the developer to explain different aspects (like purpose, concept, etc.) of the data model that they designed.

You may want to add the extension "AsciiDoc" to your ADITO Designer in order to modify AsciiDoc files.

<!--VSCODE_ONLY-->


Type: String

With this process you can define the possible items for this field. A combobox will be available in the client to select a value.


filterTreeExcludedFieldsProcess

Type: String
Requires: contentTypeProcess property group

Process that returns an array of EntityFieldNames that should be excluded when the FilterTree is shown. e.g. result.object(['SUBJECT', 'INFO']) will exclude these fields from the available filter fields.


filterTreeIgnorePermissions

Type: Boolean
Default: false
Requires: contentTypeProcess property group

If this setting is set to true, all existing permissions for the entity fields within the filter tree component are ignored. e.g. PermissionDetail_entity: The administrator should be able to open the filter tree for the entity field CONDITION and grant conditional permissions without having the permissions for the entity to be permitted.


groupable

Type: Boolean
Default: false

If the groupable property of a field is set, this field can be selected as a grouping in the filter.

This is only possible in views that support grouping - for example: Tree, TreeTable, Chart, Map.


htmlEditorFeatures

Type: EHtmlEditorFeatures
Requires: contentTypeProcess property group

Specifies what features should be available in the HTML editor.

If set to BASIC the editor will only have the basic features such as font stylings.

Whereas if set to ADVANCED the editor will have rich CMS features like creating tables and further styling options.


inputFormat

Type: String

Specifies the input format of the component.

The output can be formatted according to the type of the related database column, such as time and date values.

These can be set using a help editor.

<!--EOF-->

Please note that some of the example values are only applicable for specific types in contentType.

The available special characters are the following:

For text values

  • #: Any valid number, uses Character.isDigit.
  • ': Escape character, used to escape any of the special formatting characters.
  • U: Any character (Character.isLetter). All lowercase letters are mapped to upper case.
  • L: Any character (Character.isLetter). All upper case letters are mapped to lower case.
  • A: Any character or number (Character.isLetter or Character.isDigit)
  • ?: Any character (Character.isLetter).
  • *: Anything.
  • H: Any hex character (0-9, a-f or A-F).

For number values

  • 0: number, digit, localised
  • #: number, Digit, zero shows as absent, localised
  • .: number, Decimal separator or monetary decimal, localised
  • -: number, Minus, localised
  • ,: number, Grouping separator, localised
  • E: number, Separates mantissa and exponent in scientific notation. Need not be quoted in prefix or suffix, localised
  • ;: Subpattern boundary, Separates positive and negative subpatterns, localised
  • %: pos, Multiply by 100 and show as percentage, localised
  • : pos, Multiply by 1000 and show as per mille, localised
  • ¤: pos, Currency sign, replaced by currency symbol. If doubled, replaced by international currency symbol. If present in a pattern, the monetary decimal separator is used instead of the decimal separator. not localised
  • : Currency symbol (euro)
  • ¥: Currency symbol (yen)
  • $: Currency symbol (dollar)
  • ': prefix or suffix, Used to quote special characters in a prefix or suffix, for example, ' # '# formats 123 to "#123. To create a single quote itself, use two in a row: "# o''clock."". not localised

For date values

LetterDate or Time componentPresentationExamples
GEra designatortextAD
yYearYear1996; 96
MMonth in yearMonthJuly; Jul; 07
wWeek in yearnumber27
WWeek in monthnumber2
DDay in yearnumber189
dDay in monthnumber10
FDay of week in monthnumber2
EDay in weektextTuesday; Tue
aAm/pm markertextPM
HHour in day (0-23)number0
hHour in day (1-24)number24
KHour in am/pm (0-11)number0
hHour in am/pm (1-12)number12
mMinute in hournumber30
sSecond in minutenumber55
SMillisecondnumber978
zTime zoneGeneral time zonePacific Standard Time; PST; GMT-08:00
ZTime zoneRFC 822 time zone-0800

linkedContext

Type: String

This will create a reference from your field to another context. For example: If you've got a ORGANISATION_ID you may want to link to a context that contains organisations.

The reference is then used for example to create a link in the client to the given Context & Record ("the Organisation with ID xyz"). When a linkedContext is set, a matching ID to the data record needs to be returned by the value/valueProcess of this entityField. E.g., linkedContext = "Organisation" value = "UUID to the organisation record"


linkedContextProcess

Type: String

Basically the same as the linkedContext property that can be calculated dynamically with a process. This is useful if you've got a field that could be linked to different contexts (in case A to a context "Organisation", in case B to a context "Person"). This will overwrite the linkedContext property; return a context name with result.string(...).


mandatory

Type: Boolean
Default: false

Indicates whether this field is mandatory and the value of this field must be set.


mandatoryProcess

Type: String

The return value (boolean) indicates whether this field is mandatory and the value of this field must be set.

This process overrides the value of mandatory.


maxValue

Type: Number
Requires: contentTypeProcess property group

The maximum value


maxValueProcess

Type: String
Requires: contentTypeProcess property group

The process for the maximum value


mentionFeeds

Type: String
Requires: contentTypeProcess property group

JSON structure, that determines the mentions shown in the CKEditor. Needs to return an array of JSON objects containing a feed of tags.

Limitations:

The String can not exceed 5,000,000 characters, because of performance limitations.

Example:

result.string(JSON.stringify([
{
marker: '@',
feed: [ '@Barney', '@Lily', '@Marry Ann', '@Marshall'],
minimumCharacters: 1
}
]));

See CKEditor Mentions Documentation for further information


minValue

Type: Number
Requires: contentTypeProcess property group

The minimum value


minValueProcess

Type: String
Requires: contentTypeProcess property group

The process for the minimum value


onValidation

Type: String

The onValidation is executed during loss of focus to check the input for validity. Validations fails, if a message other than true is returned by result.string().

result.string("Any Message") or result.string(false) results in failing the validation check, thus displaying the message to the user, not accepting the input data and disabling the save button.

If result.string() is not called or result.string(true) is used, the system assumes a positive validation and accepts the input data. This process has to be fast, due to being called multiple times by the system.

Do not use it to change the state of components!


onValueChange

Type: String

Process that is executed when the value of a field was changed. Will only trigger if the change was performed by a sources that is set in the onValueChangeTypes property.


onValueChangeTypes

Type: IValueModifier.EModifierType[]

Value Change Sources for onValueChange Process

Specifies which value change sources will trigger the onValueChange process.

The following source types are available:

PROCESS

Changes triggered by processes that return values in EntityFields (e.g., valueProcess)

PROCESS_SETVALUE

Changes made programmatically through methods like:

  • neon.setFieldValue(...)
  • neon.setFieldValues(...)
  • vars.set("$field...")

RECORD

Changes that occur when loading data from the RecordContainer (applies when loading and mapping record data to entity model fields)

MASK

Changes initiated through user interaction or system interfaces:

  • Direct user input via the web client UI
  • EntityAccess operations:
    • EntityWebservice calls
    • writeEntity operations (via JScriptEntities methods)

outputFormat

Type: String

Specifies the output format of the component.

The output can be formatted according to the type of the related database column, such as time and date values.

These can be set using a help editor.

<!--EOF-->

Please note that some of the example values are only applicable for specific types in contentType.

The available special characters are the following:

For text values

  • #: Any valid number, uses Character.isDigit.
  • ': Escape character, used to escape any of the special formatting characters.
  • U: Any character (Character.isLetter). All lowercase letters are mapped to upper case.
  • L: Any character (Character.isLetter). All upper case letters are mapped to lower case.
  • A: Any character or number (Character.isLetter or Character.isDigit)
  • ?: Any character (Character.isLetter).
  • *: Anything.
  • H: Any hex character (0-9, a-f or A-F).

For number values

  • 0: number, digit, localised
  • #: number, Digit, zero shows as absent, localised
  • .: number, Decimal separator or monetary decimal, localised
  • -: number, Minus, localised
  • ,: number, Grouping separator, localised
  • E: number, Separates mantissa and exponent in scientific notation. Need not be quoted in prefix or suffix, localised
  • ;: Subpattern boundary, Separates positive and negative subpatterns, localised
  • %: pos, Multiply by 100 and show as percentage, localised
  • : pos, Multiply by 1000 and show as per mille, localised
  • ¤: pos, Currency sign, replaced by currency symbol. If doubled, replaced by international currency symbol. If present in a pattern, the monetary decimal separator is used instead of the decimal separator. not localised
  • : Currency symbol (euro)
  • ¥: Currency symbol (yen)
  • $: Currency symbol (dollar)
  • ': prefix or suffix, Used to quote special characters in a prefix or suffix, for example, ' # '# formats 123 to "#123. To create a single quote itself, use two in a row: "# o''clock."". not localised

For date values

LetterDate or Time componentPresentationExamples
GEra designatortextAD
yYearYear1996; 96
MMonth in yearMonthJuly; Jul; 07
wWeek in yearnumber27
WWeek in monthnumber2
DDay in yearnumber189
dDay in monthnumber10
FDay of week in monthnumber2
EDay in weektextTuesday; Tue
aAm/pm markertextPM
HHour in day (0-23)number0
hHour in day (1-24)number24
KHour in am/pm (0-11)number0
hHour in am/pm (1-12)number12
mMinute in hournumber30
sSecond in minutenumber55
SMillisecondnumber978
zTime zoneGeneral time zonePacific Standard Time; PST; GMT-08:00
ZTime zoneRFC 822 time zone-0800

placeholder

Type: String

Placeholder. Text that is displayed inline in a component


placeholderProcess

Type: String

Process for a placeholder, will replace the placeholder property.


preferredGroupOrder

Type: EFieldValue

This property defines the preferred order of the groups. If DISPLAYVALUE is selected, but not available, then VALUE is used.


resolution

Type: EDatetimeResolution

If a graphic formatting of the value is desired, this is specified here.

Currently, this setting can only be used for date values and time units.


selectionMode

Type: ESelectionMode

Determines how many elements may be selected. For example, select either none, one dataset or multiple datasets at a time.

Be aware that the concrete impact depends on the element where this property is set:

In a recordField for example the type of the component that is rendered within the client may change (Lookup-component <-> List-component) while in a consumerField the records that can be selected within a table-presentation of the data may be different.


selectionModeProcess

Type: String

A process that can determine the selectionMode dynamically. You have to return the corresponding selectionMode in the process with result.string(...).

This will overwrite the value set in the selectionMode property.


state

Type: EComponentState

Determines the state of an element, for example: element can be edited, element is not visible, element is inactive, etc.

Be aware that the concrete impact depends on the element where this property is set:

If you take a look at the read-only-value for example:

  • In a recordField this will affect only the field where the state property has been set.
  • In a consumerField all the recordFields within there will be readOnly, and you're not able to add, modify or delete records.

Note when the value AUTO is set, that the state does depend on different factors like "In which operatingstate is the record?".


stateProcess

Type: String

A process that can determine the state dynamically. You have to return the corresponding state in the process with result.string(...) This will overwrite the value set in the state property.

Example:

result.string(count > 0 ? neon.COMPONENTSTATE_DISABLED : neon.COMPONENTSTATE_AUTO);

Note that this property may be internally overwritten (for example if the user has no grants).


textInputAllowed

Type: Boolean
Default: false

This property enables the functionality for the user to enter a own value


title

Type: String
Constraints: Verification: TITLE_LENGTH

Singular title of the model, e.g. Surname


titleProcess

Type: String

Process to determine the title dynamically. This will overwrite the value of the title property and is for example displayed in the views within the client.


tooltip

Type: String

Tooltip. Text that is displayed when the mouse is driven over a component.


tooltipProcess

Type: String

Process of tooltip labeling.

Here, each string can be returned by result.string(). control characters (e.g. \n) are evaluated to display new rows, for example.

HTML is not possible here.

If the component's content goes beyond the component, the first line of the ToolTip always displays the entire contents of the component.

This process overrides the toolTip property.

Error messages from this process do not arrive at the client, they are only visible in the server log.


usePermissions

Type: Boolean
Default: false

Determines if the element is relevant for the authorisation concept. For example: If this value is true the element can be selected for the grant configuration within the client


valueProcess

Type: String

The result of the process is written into the field. The process will not be executed when already the recordContainer has already set a value.

If you've got a separate displayValue, the valueProcess represents a technical value (like an ID).

Errors that occur in this process are not passed to the client. These can only be found in the server log / log files.

Error messages from this process do not arrive at the client, they are only visible in the server log.