flexi-data-import¶
Das Datenimport-Feld stellt eine Schaltfläche zur Verfügung, mit der Daten aus einer externen oder internen Quelle in die Felder des Formulars übernommen werden. So lassen sich z. B. Messwerte aus einer Datei einlesen, Stammdaten aus einem anderen Dokumentkapitel übernehmen oder Werte aus einem Backend-System abrufen — ohne dass der Anwender die Felder manuell ausfüllen muss.
Einstellungen¶
| Einstellung | Beschreibung |
|---|---|
| Bezeichnung | Beschriftung der Import-Schaltfläche |
| Name | Eindeutiger Bezeichner des Feldes (wird automatisch aus der Bezeichnung abgeleitet) |
| Quelle | Art der Datenquelle (siehe unten) |
| Automatischer Modus | (Backend/HTTP) Import wird beim Öffnen des Abschnitts automatisch ausgelöst |
| Parser-Einstellungen | Zuordnung der Import-Felder zu den Zielfeldern im Formular |
Je nach gewählter Quelle erscheinen zusätzliche Felder.
Quellen¶
Komponente (Mehrfachauswahl)¶
Übernimmt die Werte aus einem anderen Feld desselben Formulars — typischerweise einer Mehrfachauswahl. Jede ausgewählte Option wird als eigener Datensatz interpretiert und in die Zielfelder bzw. Tabelle übertragen.
| Einstellung | Beschreibung |
|---|---|
| Komponentenpfad | Name oder Pfad des Quellfeldes. Im selben Abschnitt: nur der Feldname (auswahl). In einem anderen Abschnitt: kapitel.abschnitt.feld |
JSON-Datei / XML-Datei¶
Beim Klick auf die Schaltfläche öffnet sich ein Datei-Dialog. Die ausgewählte Datei wird gelesen und nach den hinterlegten Parser-Einstellungen in die Felder übernommen.
Backend-Funktion¶
Ruft eine vom Hersteller bereitgestellte Backend-Funktion auf und übernimmt deren Antwort in die Felder.
| Einstellung | Beschreibung |
|---|---|
| Backend-Funktion | Name der bereitgestellten Funktion |
| Query-String | Optionaler Suchbegriff, der an die Funktion übergeben wird |
| Query-Wert | Optionales Feld im Formular, dessen aktueller Wert als Suchwert mitgeschickt wird |
HTTP-Adresse¶
Ruft eine HTTP-Adresse auf und übernimmt die zurückgelieferten Daten in die Felder.
| Einstellung | Beschreibung |
|---|---|
| HTTP-Adresse | Vollständige URL, die aufgerufen wird |
| Query-String | Optionaler Suchbegriff, der an die URL angehängt wird |
| Query-Wert | Optionales Feld im Formular, dessen aktueller Wert als Suchwert mitgeschickt wird |
Datenwolke¶
Übernimmt Werte aus anderen Bereichen desselben Dokuments. So lassen sich z. B. Daten aus mehreren Kapiteln eines Prüfdokuments in einem Übersichts-Abschnitt zusammenführen.
| Einstellung | Beschreibung |
|---|---|
| Quelle | Name oder Namensmuster der Quell-Abschnitte. Mit * als Platzhalter, z. B. pruefzyklus_* |
| Optionale Suche | Zusätzlicher Filter im Format Schlüssel:Wert. Mehrere Filter werden mit Komma getrennt. Es werden nur Datensätze übernommen, in denen der angegebene Schlüssel den angegebenen Wert hat |
| Referenzspalte | (Nur für Tabellen) Name einer Spalte, die als eindeutiger Schlüssel dient. Beim Import werden nur neue Datensätze hinzugefügt — Datensätze, deren Wert in dieser Spalte bereits in der Tabelle enthalten ist, werden übersprungen |
Parser-Einstellungen¶
In den Parser-Einstellungen wird festgelegt, welches Feld der importierten Daten in welches Feld des Formulars geschrieben wird. Jeder Eintrag hat das Format:
import-feld:ziel-feld
Beispiel:
seriennummer:geraet_seriennummer
hersteller:geraet_hersteller
Hier wird das Feld seriennummer aus den Importdaten in das Formularfeld geraet_seriennummer geschrieben.
Zielfelder referenzieren¶
| Schreibweise | Bedeutung |
|---|---|
feldname |
Feld im selben Abschnitt |
feldname.spalte |
Spalte einer Tabelle im selben Abschnitt |
kapitel.abschnitt.feld |
Feld in einem anderen Abschnitt |
kapitel.abschnitt.tabelle.spalte |
Spalte einer Tabelle in einem anderen Abschnitt |
Reihenfolge¶
Die Einträge können per Drag-and-Drop sortiert werden. Die Reihenfolge bestimmt, in welcher Folge die Werte beim Import übertragen werden.
Datenformat¶
Die Importdaten dürfen als einzelnes Objekt, als Liste oder als Objekt mit eingebetteter Liste vorliegen — alle drei Formen werden automatisch erkannt:
{ "name": "A", "wert": 1 }
[
{ "name": "A", "wert": 1 },
{ "name": "B", "wert": 2 }
]
{
"list": [
{ "name": "A", "wert": 1 },
{ "name": "B", "wert": 2 }
]
}
Bei mehreren Datensätzen muss das Zielfeld eine Tabelle sein. Wird ein einzelnes Feld als Ziel angegeben und enthalten die Importdaten mehrere Datensätze, wird der Import abgebrochen und ein Hinweis angezeigt.
Datumsfelder¶
Wird ein Wert in eine Spalte oder ein Feld vom Typ Datum importiert, wird er automatisch in das Anzeigeformat TT.MM.JJJJ umgewandelt. Voraussetzung ist, dass der Importwert als gültiges Datum erkannt werden kann (z. B. ISO-Datum oder Standard-Datumsformat).
Import in Tabellen¶
Ist das Zielfeld eine dynamische Tabelle, fragt der Import beim Klick auf die Schaltfläche, wie mit bereits vorhandenen Zeilen umgegangen werden soll:
- Ersetzen – Bestehende Zeilen werden gelöscht und durch die Importdaten ersetzt
- Anhängen – Importdaten werden als neue Zeilen unter den bestehenden ergänzt
- Abbrechen – Der Import wird nicht durchgeführt
Bei der Quelle Datenwolke mit konfigurierter Referenzspalte entfällt die Abfrage: Es werden nur neue Datensätze angehängt, doppelte Einträge werden übersprungen.
Automatischer Modus¶
Bei den Quellen Backend und HTTP kann der automatische Modus aktiviert werden. Der Import wird dann beim ersten Öffnen des Abschnitts automatisch ausgeführt. Wurde der Import bereits einmal durchgeführt, wird er nicht erneut ausgelöst.
Offline-Verhalten¶
Die Quellen Backend und HTTP benötigen eine Internetverbindung. Wird die Schaltfläche offline betätigt, erscheint ein Hinweis und es werden keine Daten übernommen. Datei-Importe (JSON/XML) und Importe aus einem Feld desselben Formulars funktionieren auch offline.