Datenmodell

Import-Funktionen

Beim Excel-Import lässt sich je Spalte eine kleine Funktion hinterlegen, die die Zelle umformt, bevor die Feldart sie prüft. Aus „Meier, Hans“ wird so „Hans Meier“, aus zwei Spalten wird ein Wert, ein vorhandener Wert bleibt geschützt.

Wiederkehrende Funktionen legt man als Vorlage in einer Bibliothek ab. Sie steht unter Datenmodell › Import-Funktionen (Status 9). Die Liste ist wählbar nach Geltungsbereich oder Name gegliedert, die Auswahl daneben filtert (Alle, Ein Feld, Eine Feldart, Alle Felder, Nur Vorgaben). Ein Klick auf eine Vorlage öffnet sie im Dialog Vorlage bearbeiten. Eine Vorlage lässt sich auch direkt beim Import anlegen.

Dialog „Vorlage bearbeiten“ für die Import-Funktion „Höhe aus der Maßangabe“ mit Name, Beschreibung, Gilt für „Ein Feld“, Feld Höhe, dem Haken „Als Vorgabe verwenden“, der Funktion im Code-Editor und darunter der Probe.

Eine Vorlage

EigenschaftBedeutung
NameUnter diesem Namen erscheint die Vorlage beim Import
BeschreibungWozu sie dient
Gilt fürAlle Felder, Eine Feldart oder Ein Feld
Als Vorgabe verwendenDie Vorlage ist beim Zuordnen einer passenden Spalte sofort aktiv, sichtbar und abschaltbar
FunktionDer Rumpf, der den neuen Zellwert zurückgibt
ProbeTestwerte eintragen und das Ergebnis oder die Fehlermeldung sofort sehen

Vorgaben

Eine Vorlage mit Als Vorgabe verwenden ist eine Voreinstellung für den Import: Wer eine Spalte einem passenden Feld zuordnet, hat die Funktion gleich aktiv. Gibt es mehrere Vorgaben, gewinnt die engere: Ein Feld vor Eine Feldart vor Alle Felder. Der Filter Nur Vorgaben zeigt sie in der Liste.

Eine Funktion, die beim Import an einer Spalte hängt, ist eine Kopie. Wer eine Vorlage ändert oder löscht, ändert laufende Importe nicht.

Was eine Funktion sieht

NameInhalt
wertDie Zelle dieser Spalte als Text
zeileAlle Zellen derselben Zeile, nach Spaltentitel: zeile['Vorname']
objektWertWas heute im Zielfeld steht, wenn die Zeile einem vorhandenen Objekt zugeordnet ist. Sonst null
objektAlle Felder des zugeordneten Objekts, nach Feldname. Ohne Zuordnung leer
leerleer(v) ist wahr bei fehlendem oder leerem Wert

Einige Beispiele:

JS
// zwei Spalten zu einem Wert
return zeile['Vorname'] + ' ' + zeile['Nachname'];
JS
// Vorhandenes schützen
return objektWert || wert;
JS
// anhängen statt ersetzen
return objektWert ? objektWert + '; ' + wert : wert;

Erlaubt ist dieselbe Teilmenge von JavaScript wie bei virtuellen Feldern, siehe Virtuelles Feld anlegen . Eine Funktion kann die Daten nur lesen, nie verändern. Was nicht erlaubt ist, meldet sie vor dem Speichern (Die Funktion ist so nicht erlaubt.).

Reihenfolge beim Import

Die Funktion läuft zuerst. Danach prüft die Feldart den Wert wie sonst auch: Eine Auswahlliste gleicht ihn mit ihren Optionen ab, ein Normdatenfeld sucht den Begriff, ein JSON-Feld nimmt ein Dokument an. Was dann nicht eindeutig passt, wird geparkt und ist zu klären.

Weiterlesen

\ en\ de