Mit dem Formeleditor können Sie Felder anlegen (entweder nacheinander oder mehrere gleichzeitig) und Filterbedingungen wie mit einem Rechner bearbeiten.
Anlegen eines Felds
- Feld anlegen
- Geben Sie eine Formel in das Textfeld im oberen Teil des Bereichs ein. Ihnen stehen die folgenden Eingabehilfen zur Verfügung:
- Doppelklicken Sie im Rahmen Funktionen auf den Namen einer Funktion oder im Rahmen Variablen auf den einer Variable (Feld, Aufforderung oder vordefiniertes Feldset), um diese am entsprechenden Ort einzufügen. Bei einer Funktion wird ein Muster eingefügt, das Informationen über die zu verwendenden Parameter enthält.
- Sie können diese Elemente auch in eine ausgewählte Position einfügen, indem Sie sie per Drag&Drop von einem der Bäume in das Textfeld ziehen.
- Drücken Sie bei der Eingabe eines Variablennamens (Feld, Aufforderung oder Set) die Tastenkombination Strg + Leerzeichen, um eine Liste von Variablennamen anzuzeigen, die mit dem eingegebenen Text beginnen.
Die Farbe des Indikators über dem Feld Meldungen gibt den Zustand der Formel an.
| |
Farbe des Indikators |
Zustand der Formel |
 |
Rot |
Formel enthält einen Fehler, der im Feld "Meldungen" angezeigt wird. Sie kann nicht validiert werden (die Drucktaste "Weiter" ist deaktiviert). |
 |
Gelb |
Die Formel kann validiert werden, allerdings können einige Inkonsistenzen auftreten, die im Feld "Meldungen" angezeigt werden. |
 |
Grün |
Die Formel ist gültig. |
Bei einem Fehler oder einer Warnung stehen Ihnen im Feld Meldungen unten im Bereich genauere Informationen zur Verfügung, damit Sie den Grund für den Fehler oder die Warnung nachvollziehen können.
- Wählen Sie Weiter, um die Formel zu validieren.
- Geben Sie im Feld Name einen Namen für das neue Feld ein.
- Wählen Sie OK.
Erweiterte Funktionen
- Feldsets
Es ist häufig erforderlich, mehrere Felder durch die Anwendung derselben Berechnung bei verschiedenen vorhandenen Feldern anzulegen. Mit dem Formeleditor ist dies über Feldsets möglich.
Sie können z.B. mithilfe von Feldsets eine große Anzahl von Feldern addieren oder deren Maximum berechnen.
- Benannte Feldsets
- Benanntes Feldset anlegen
- Doppelklicken Sie im Abschnitt Variablen auf die Option Feldsets. Ein Teilbaum wird angezeigt, der die vorhandenen Feldsets auflistet.
- Doppelklicken Sie auf die Option Feldset anlegen.... Ein neues Fenster wird geöffnet, in dem die verfügbaren Felder aufgelistet werden.
- Geben Sie im Feld Aliasmaske eine Maske ein, mit der die Felder nach ihrem Namen gefiltert werden können. Ein Maske besteht aus einem Teil, der in den Namen aller anzuzeigenden Felder enthalten ist, und einem Sternchen (*), mit dem die Teile vervollständigt werden können, die sich in den Feldnamen unterscheiden. Das Sternchen kann überall in der Maske und unbegrenzt oft verwendet werden.
- Entmarkieren Sie die Felder, die Sie nicht im Feldset behalten möchten.
- Geben Sie im Feld Setname einen Namen für das neue Feldset ein.
- Wählen Sie "OK". Das Fenster wird geschlossen, und das neue Feldset wird in der Liste unter dem Element Feldsets angezeigt.
- Benanntes Feldset bearbeiten
- Wählen Sie das zu bearbeitende Feldset aus.
- Rechtsklicken Sie auf das ausgewählte Feldset. Ein Kontextmenü wird angezeigt.
- Wählen Sie die Option "Bearbeiten". Das Fenster zur Bearbeitung des Feldsets wird geöffnet.
Hinweis Die Änderung eines Feldsetnamens entspricht einer Duplizierung des Feldsets.
- Benanntes Feldset löschen
- Wählen Sie das zu bearbeitende Feldset aus.
- Rechtsklicken Sie auf das ausgewählte Feldset. Ein Kontextmenü wird angezeigt.
- Wählen Sie die Option Entfernen.
Direkt angelegte Feldsets
Wenn Sie eine Berechnung auf Felder anwenden möchten, deren Namen eine gemeinsame Wurzel haben, können Sie ein Feldset direkt im Formeltextfeld anlegen.
Ein direkt angelegtes Feldset ist durch eine Maske definiert, die ein fester Bestandteil des Namens aller Pflichtfelder ist, sowie durch einen Platzhalter, der für den Teil des Namen steht, der sich für jedes Feld ändert. Zum Definieren von Feldsets können drei Platzhalter verwendet werden: das at-Zeichen (@), das Rautenzeichen ( #) und das Dollarzeichen ( $). Für jedes Feldset kann nur ein Platzhalter verwendet werden, und derselbe Platzhalter kann nicht zweimal in derselben Formel verwendet werden.
- Ein Feldset direkt anlegen
- Geben Sie im Formeltextfeld die Maske ein, die den Feldern entspricht, auf die Sie die Berechnung anwenden möchten, z.B. income_@, und verwenden Sie sie es als Standardfeld.
- Mehrere Feldsets verwenden
- Geben Sie anhand der Feldsets wie oben beschrieben eine Formel ein. Im Bereich Meldungen im unteren Teil des Fensters wird die Anzahl der anzulegenden Felder angezeigt.
- Bei Verwendung mehrerer Feldsets in derselben Formel müssen Sie in der Dropdown-Liste Feldverknüpfung auswählen, wie die Felder von diesen Sets verknüpft werden sollen.
- Nach Position verknüpfen: Die Felder von jedem Set werden abhängig von ihrer Position in der Datenbanktabelle verknüpft.
- Nach Wert verknüpfen: Die Felder von jedem Set werden abhängig von dem Wert verknüpft, der durch die zum Definieren der Feldsets verwendeten Platzhalter repräsentiert wird.
- Kartesisches Produkt erstellen: Alle Felder von einem Set werden mit allen Feldern des anderen Sets verknüpft.
Beispiel: let's consider a database table containing the following fields ordered as displayed:
income_january
income_april
income_february
income_march
expenses_march
expenses_january
expenses_april
Die folgende Formel
income_@ -
expenses_# verwendet zwei Feldsets, von denen eines alle Felder gruppiert, die mit
income_ beginnen, und das andere alle Felder, die mit
expenses_ beginnen:
income_@
|
expenses_#
|
income_january
|
expenses_march
|
income_april
|
expenses_january
|
income_february
|
expenses_april
|
income_march
|
|
Die Option
Nach Position verknüpfen führt zu folgenden Berechnungen:
Berechnung
|
Position
|
income_january - expenses_march
|
1
|
income_april - expenses_january
|
2
|
income_february - expenses_april
|
3
|
Bei Auswahl der Option
Nach Wert verknüpfen wird versucht, den durch
@ repräsentierten Wert mit dem Wert
# abzugleichen, was zu folgenden Berechnungen führt:
| Berechnung |
@- und #-Werte |
income_january - expenses_january
|
january
|
income_april - expenses_april
|
april
|
income_march - expenses_march
|
march
|
Die Option
Kartesisches Produkt erstellen führt zu folgenden Berechnungen:
Berechnung
|
income_january - expenses_march
|
income_january - expenses_january
|
income_january - expenses_april
|
income_april- expenses_march
|
income_april - expenses_january
|
income_april - expenses_april
|
income_february - expenses_march
|
income_february - expenses_january
|
income_february - expenses_april
|
income_march - expenses_march
|
income_march - expenses_january
|
income_march - expenses_april
|
- Wählen Sie Weiter, um die Felderstellung zu validieren. Es wird ein Dialogfenster geöffnet, in dem Sie die neuen Felder benennen können.
- Geben Sie eine gemeinsame Wurzel für alle neu angelegten Felder an.
- Falls die Formel nur benannte Feldsets verwendet, oder wenn Sie die Benennung nicht weiter kontrollieren müssen, fahren Sie mit dem nächsten Schritt fort. Falls Sie ein oder mehrere Platzhalterzeichen verwendet haben, können Sie sie in dem Alias zum Anlegen eines Benennungsmusters verwenden. Die Platzhalterzeichen werden durch die entsprechenden Namensbestandteile ersetzt.
- Wählen Sie OK, um die Felder anzulegen.
Verwenden eines Feldsets als Variablenliste für eine n-äre Funktion
Ein Feldset kann zum Definieren einer Argumentliste für n-äre Funktionen verwendet werden, d.h. Funktionen mit einer nicht definierten Anzahl an Argumenten. Wenn ein Feldset als Argument einer n-ären Funktion verwendet wird, und nur in diesem Fall, müssen Sie den Setnamen in Klammern { } setzen, um dessen Interpretation als Argumentliste zu erzwingen.
Schauen wir uns als Beispiel eine Datenbanktabelle an, deren Felder income_april, income_may, income_june das monatliche Einkommen enthalten. Wenn Sie ein Feld anlegen möchten, das das höchste monatliche Einkommen für das Quartal enthält, müssen Sie die Formel greatestN({income_@}) verwenden, die das Feldset income_@ als Variablenliste verwendet und somit die Formel greatestN(income_april ,income_may ,income_june) ergibt. Wird das Feldset jedoch in seiner vorliegenden Form in der Formel greatestN(income_@) verwendet, werden drei Felder von den drei folgenden Formeln angelegt: greatestN(income_april), greatestN(income_may) und greatestN(income_june), was nicht verwendbar ist.
- Ein Feldset als Variablenliste verwenden
- Legen Sie ein Feldset (benannt oder direkt) wie oben beschrieben an.
- Geben sie im Formeltextfeld die zu einer n-ären Funktion gehörende Formel an.
- Geben Sie als Argument für die Funktion den Namen des Feldsets in Klammern { } an. Beispielsweise wird mit der Formel greatestN({incomes}) ein Feld angelegt, dessen Wert der höchste Wert der Felder ist, die im Feldset mit der Bezeichnung incomes enthalten sind.