setFieldValueByInternal

setFieldValueByInternal

Einleitung

Die Methode setFieldValueByInternal ermöglicht es, die Felder der Indexdatenmaske bzw. der Workflow-Maske, aus der heraus der modale Dialog geöffnet wurde, mit Daten zu füllen, so dass diese in den Datenmasken verwendet werden können.

Verfügbar: ab enaio® webclient 11.10.7

Beispiele

Beispiel (TypeScript)
let fieldValue = await lib.setFieldValueByInternal({ "internalName": "<internalNameOfTheIndexDataMaskField>", "value": "<valueForTheIndexDataMaskField>" });

Beispiel - normales Feld (TypeScript)

let fieldValue = await lib.setFieldValueByInternal({   "internalName": "<internalNameOfTheIndexDataMaskField>", "value": "Neuer Wert" }

Beispiel - Tabellenfeld (TypeScript)

let fieldValue = await lib.setFieldValueByInternal({   "internalName": "<internalNameOfTheIndexDataMaskField>", "value": [ ["AL","Wert","1","2023-06-13","123.99"], ["G-A","Quest","2","2023-06-12","123.20"], ["G-Ü","Knaller","3","2022-12-24","189.80"] ] }

Beispiel - Kontrollkästchen (Checkbox) (TypeScript)

let fieldValue = await lib.setFieldValueByInternal({   "internalName": "<internalNameOfTheIndexDataMaskField>", "value": "1" }

Bei Checkbox-Feldern kann der Wert "1" für angehakt und der Wert "0" für abgehakt gesetzt werden.

Beispiel - Optionsschaltfläche (Radio button) (TypeScript)

let fieldValue = await lib.setFieldValueByInternal({   "internalName": "<internalNameOfTheIndexDataMaskField>",     "value": "1" }

Bei Optionsschaltflächen kann der 0-Basierte Index für als Wert angegeben werden. Sie müssen immer die führende Optionsschaltfläche adressieren. Das ist diejenige, die den niedrigsten Tabindex innerhalb der Gruppe (Dialogelement "Gruppenfeld") hat.

Beispiel - Datenbankfeldtypen (spezielle Felder) (TypeScript)

let fieldValue = await lib.setFieldValueByInternal({   "internalName": "<internalNameOfTheIndexDataMaskField>", "value": "A" }

Beispiel - Mehrsprachiges Katalogfeld (TypeScript)

let fieldValue = await lib.setFieldValueByInternal({ "internalName": "catalogFieldName", "value": "value" or "neutralValue" // Es kann entweder der auf der Object Definition Language basierende Wert oder der neutrale Wert gesendet werden });

Für mehrsprachige Katalogfelder können Werte mit der Methode setFieldValueByInternal gesendet werden, entweder auf der Grundlage der Objektdefinitionssprache oder als neutraler Wert.
Wenn der neutrale Wert gesendet wird, wird dieser in die aktuelle Objektdefinitionssprache konvertiert und gespeichert, was für mehrsprachige Kataloge innerhalb von Tabellenfeldern gilt.

Beispiel - Mehrsprachiges Katalogfeld in Tabellenfeldern (TypeScript)

let fieldValue = await lib.setFieldValueByInternal({     "internalName": "tableFieldName",   "value": [ ["value", "2023-06-13"], // einen Wert, der gesendet werden kann ["neutralValue", "2023-06-12"], // ein neutraler Wert kann auch gesendet werden ] });

Für Textfelder, denen als Eigenschaft ein vordefinierter Datenbankfeldtyp hinterlegt ist, werden die Werte über deren einbuchstabigen Abkürzungswert gesetzt.

  • Patientenart - a/s/f

  • Fragen - J/N

  • Seite - l/r

  • Geschlecht - M/W/D

Ab Version 11.10 stehen in Bezug auf Workflow-Masken ebenfalls interne Namen für die Maskenfelder zur Verfügung.
Für das Skripten von Feldern können sowohl GUIDs als auch die neu eingeführten interne Feldnamen verwendet werden - beide werden unterstützt. 

Beachten Sie bitte die Informationen zur "Zwischenspeicherung von Feldwerten".

Parameter

Parameter

Type

Optional

Beschreibung

Parameter

Type

Optional

Beschreibung

JSON

object

Nein

Ein Javascript-Objekt, welches als Parameter den internen Namen des Indexdatenfeldes enthält und den zu setzenden Wert.
Alle zu setzende Werte müssen vom Typ String sein.
Datum- und Zeitwerte müssen im ISO8601 übergeben werden.

Data Type

Output Value Format

date

YYYY-MM-DD(ISO Format)

datetime

YYYY-MM-DDTHH:MM:SS(ISO Format)

time

HH:MM:SS(ISO Format)

text

<text value>

date

YYYY-MM-DD(ISO Format)

datetime

YYYY-MM-DDTHH:MM:SS(ISO Format)

text

<text value>

checkbox

1 (checked),
0 (unchecked)

radio

Im Zusammenhang mit einem Gruppenfeld wird jeder Optionsschaltfläche (Radio button) ein Wert zugewiesen, der seinem Index entspricht. In einem Gruppenfeld mit drei Optionsschaltflächen sind die zugewiesenen Werte zum Beispiel 0, 1 und 2. Um den Wert für eine bestimmte Optionsschaltfläche innerhalb der Gruppe festzulegen, verwenden Sie den entsprechenden Indexwert. Um beispielsweise den Wert für die erste Optionsschaltfläche festzulegen, verwenden Sie 0. Für die weiteren Optionsschaltflächen der Gruppe gehen Sie entsprechend vor.

table

[string[]] (multi dimensional array of strings)

Hinweis: Wenn die Tabellenspalten unterschiedliche Datentypen haben, müssen die Parameterwerte dem in doppelten Anführungszeichen angegebenen Format entsprechen, das als String betrachtet wird. Wenn zum Beispiel eine der Tabellenspalten vom Typ date ist, muss der Wertparameter im ISO-Datumsformat sein.

 

Rückgabewert

Die Methode gibt ein leeres JSON-Objekt zurück:

Parameter

Type

Beschreibung

Parameter

Type

Beschreibung

Nicht anwendbar

Record<string, never>

Ein Objekttyp mit String-Schlüsseln und -Werten vom Typ "never", der effektiv ein leeres Objekt angibt. Die Methode gibt ein leeres Objekt {} mit diesem angegebenen Typ zurück.

Fehlerbehandlung

In Fällen, in denen die Methode setFieldValueByInternal auf Fehler oder bestimmte Bedingungen stößt, die eine erfolgreiche Ausführung verhindern, gibt die Methode ein JSON-Fehlerobjekt zurück, um den Entwicklern eine klare Rückmeldung zu geben. Diese Fehlerantwort enthält einen errorCode und eine errorDescription, die für die Fehlersuche und Problemlösung verwendet werden können.

Parameter

Type

Beschreibung

Parameter

Type

Beschreibung

errorCode

integer

Der dem spezifischen Szenario entsprechende Fehlercode.

errorDescription

srting

Eine beschreibende Fehlermeldung, die auf das Problem hinweist.

Beispiel - normales Feld

{ "errorCode": 1, "errorDescription": "A field with this internal name (nonExistentField) does not exist." }

Fehler-Codes

Code

Beschreibung

Code

Beschreibung

1

Allgemeiner Fehlercode für alle anderen Laufzeitfehler.

2

Ein Feld mit dem internen Namen (internalName) ist nicht vorhanden.

3

Das Feld ist als schreibgeschützt festgelegt.

10

Der Feldwert hat das falsche Format und kann nicht eingestellt werden.