Formel definieren (Dialogfeld) (Berichts-Generator 1.0)

Mithilfe dieses Dialogfelds können Sie ein neues Feld mit einer Formel erstellen.

Optionen

  • Felder
    Mithilfe dieser Registerkarte können Sie nach Feldern innerhalb des Berichtsmodells suchen, die in den Ausdruck eingeschlossen werden sollen. Doppelklicken Sie auf das Feld, um es dem Ausdruck hinzuzufügen.

  • Funktionen
    Mithilfe dieser Registerkarte können Sie die Funktion auswählen, die in dem Ausdruck verwendet werden soll. Doppelklicken Sie auf die Funktion, um sie dem Ausdruck hinzuzufügen. Eine Beschreibung der einzelnen Funktionen finden Sie im folgenden Abschnitt.

  • Feldname
    Geben Sie einen Namen für den Ausdruck ein, den Sie erstellen.

  • Formel
    Hiermit erstellen und bearbeiten Sie die Formel.

  • Suchen
    Klicken Sie hier, um das Dialogfeld Suchen zu öffnen.

  • Abkürzende Funktionen
    Klicken Sie hier, um der im Dialogfeld Formel angezeigten Formel einen Operator hinzuzufügen. Das Dialogfeld Formel definieren enthält Abkürzungen für die am häufigsten verwendeten Funktionen. Sie können diese Operatoren jedoch auch auf der Registerkarte Funktionen auswählen. Es folgt eine Erklärung zu den einzelnen abkürzenden Funktionen.

    + Hiermit addieren Sie zwei Werte.

    - Hiermit subtrahieren Sie einen Wert von einem anderen Wert.

    * Hiermit multiplizieren Sie zwei Textwerte.

    / Hiermit dividieren Sie zwei Werte.

    & Hiermit verketten Sie zwei Werte.

    ( Hiermit starten Sie eine Berechnung.

    ) Hiermit beenden Sie eine Berechnung.

Optionen durch Klicken mit der rechten Maustaste

Diese Menüoptionen werden angezeigt, wenn Sie mit der rechten Maustaste auf die Formeln im Dialogfeld Formel oder auf den erweiterten Formelbereich klicken.

  • Erweitern
    Klicken Sie, um die Formel einschließlich der Beziehung zur Kontextentität anzuzeigen. Dies ist notwendig, wenn Sie filtern oder die Aggregationsebene angeben möchten.

  • Umbenennen
    Klicken Sie, um die im Dialogfeld Formel angezeigte Formel umzubenennen.

  • Hier aggregieren
    Klicken Sie auf den Feldnamen, um die Aggregationsebene zu ändern. Diese Option steht nur nach dem Erweitern der Formel zur Verfügung.

  • Kein Filter angewendet
    Wenn Sie auf einen im Dialogfeld Formel angezeigten Feldnamen klicken, wird die Beziehung zwischen der Entität, auf die sich die Formel bezieht, und dem Feld angezeigt. Sie können einen Filter an jeder beliebigen Stelle entlang des Modellpfades auf den Ausdruck anwenden. Klicken Sie, um einen Filter auf den Ausdruck anzuwenden, und klicken Sie dann auf Neuen Filter erstellen. Das Dialogfeld Daten filtern wird geöffnet.

Funktionen

In den folgenden Informationen werden die einzelnen Funktionen auf der Registerkarte Funktionen im Dialogfeld Formel definieren beschrieben.

Aggregate

Verwenden Sie die folgenden Funktionen, um einen Bereich mit numerischen Werten zusammenzufassen.

  • SUMME
    Gibt die Summe aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    SUM(aggregate)

    SUMME kann ausschließlich für Felder mit numerischen Werten verwendet werden. NULL-Werte werden ignoriert.

  • DURCHSCHNITT
    Gibt den Durchschnitt (arithmetisches Mittel) aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    AVERAGE(aggregate)

    DURCHSCHNITT kann ausschließlich für Felder mit numerischen Werten verwendet werden. NULL-Werte werden ignoriert.

  • MAX
    Gibt das Maximum aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    MAX(aggregate)

    Bei Zeichenspalten findet MAX den höchsten Wert gemäß der Sortierreihenfolge. NULL-Werte werden ignoriert.

  • MIN
    Gibt das Minimum aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    MIN(aggregate)

    Bei Zeichenspalten findet MIN den niedrigsten Wert gemäß der Sortierreihenfolge. NULL-Werte werden ignoriert.

  • ANZAHL
    Gibt die Anzahl aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    COUNT(aggregate)

    ANZAHL gibt immer einen Wert vom Datentyp Int zurück.

  • ANZAHLUNTERSCHIEDL
    Gibt die Anzahl aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    COUNTDISTINCT(aggregate)

  • STDABWEICHUNG
    Gibt die Standardabweichung aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    STDEV(aggregate)

  • STDABWEICHUNGAUFFÜLL
    Gibt die Standardabweichung der Auffüllung aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    STDEVP(aggregate)

  • VARIANZ
    Gibt die Varianz aller Werte ungleich NULL in einer Reihe von Werten zurück.

    Syntax

    VAR(aggregate)

  • VARIANZAUFFÜLL
    Gibt die Auffüllungsvarianz aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    VARP(aggregate)

Bedingte Anweisung

Verwenden Sie die folgenden Funktionen, um eine Bedingung zu testen.

  • FALLS
    Gibt einen Wert zurück, wenn Sie eine Bedingung angeben, die zu TRUE ausgewertet wird, und einen anderen Wert, wenn Sie eine Bedingung angeben, die zu FALSE ausgewertet wird.

    Syntax

    IF(condition, value_if_true, value_if_false)

    Die Bedingung muss zu TRUE oder FALSE ausgewertet werden. Value_if_true (Wert_falls_wahr) stellt den Wert dar, der zurückgegeben wird, wenn die Bedingung TRUE ist. Value_if_false (Wert_falls_falsch) stellt den Wert dar, der zurückgegeben wird, wenn die Bedingung FALSE ist.

  • IN
    Legt fest, ob ein Wert in einer Wertemenge vorhanden ist.

    Syntax

    IN(item, set)

  • MEHRFACHBEDINGUNG
    Wertet eine Liste von Ausdrücken aus und gibt den Wert eines Ausdrucks zurück, der dem ersten Ausdruck in der Liste zugeordnet ist, der TRUE ergibt. Es können ein oder mehrere Bedingung-Wert-Paare für einen Wechsel angegeben werden.

    Syntax

    Switch(condition1, value1…)

Konvertierung

Verwenden Sie die folgenden Funktionen, um einen Datentyp in einen anderen Datentyp zu konvertieren.

  • GANZEZAHL
    Konvertiert einen Wert in eine ganze Zahl.

    Syntax

    INT(value)

  • DEZIMAL
    Konvertiert einen Wert in eine Dezimalzahl.

    Syntax

    DECIMAL(value)

  • GLEITKOMMAZAHL
    Konvertiert einen Wert in einen Gleitkommazahl-Datentyp.

    Syntax

    FLOAT(value)

  • TEXT
    Konvertiert einen numerischen Wert in Text.

    Syntax

    TEXT(value)

Datum und Zeit

Verwenden Sie die folgenden Funktionen, um Datum oder Uhrzeit anzuzeigen.

  • DATUM
    Gibt einen Datums-/Uhrzeitwert zurück, der das angegebene Jahr, den Monat und den Tag um 12:00:00 Uhr darstellt.

    Syntax

    DATE(year, month, day)

  • NURDATUM
    Gibt einen Datums-/Uhrzeitwert zurück, der das angegebene Jahr, den Monat und den Tag darstellt.

    Syntax

    DATEONLY(datetime)

  • DATUMZEIT
    Gibt einen Datums-/Uhrzeitwert zurück, der das angegebene Jahr, den Monat, den Tag, die Minute und Sekunde darstellt.

    Syntax

    DATETIME(year, month, day, hour, minute, second)

  • JAHR
    Gibt das Jahr eines datetime-Wertes zurück.

    Syntax

    YEAR(datetime)

  • QUARTAL
    Gibt das Kalenderquartal (1-4) des datetime-Wertes zurück.

    Syntax

    QUARTER(datetime)

  • MONAT
    Gibt den Monat (1-12) aus einem datetime-Wert zurück.

    Syntax

    MONTH(datetime)

  • TAG
    Extrahiert den Tag aus einem datetime-Wert.

    Syntax

    DAY(datetime)

  • STUNDE
    Extrahiert die Stunde (0-23) aus einem datetime-Wert.

    Syntax

    HOUR(datetime)

  • MINUTE
    Extrahiert die Minute aus einem datetime-Wert.

    Syntax

    MINUTE(datetime)

  • SEKUNDE
    Extrahiert die Sekunde aus einem datetime-Wert.

    Syntax

    SECOND(datetime)

  • TAGDESJAHRES
    Gibt den Tag des Jahres aus dem datetime-Wert zurück. 1. Januar = 1 bis 31. Dezember = 366 (wobei ein Schaltjahr vorausgesetzt wird).

    Syntax

    DAYOFYEAR(datetime)

  • WOCHE
    Gibt den numerischen Wert für die Woche innerhalb des Kalenderjahres zurück.

    Syntax

    WEEK(datetime)

  • TAGDERWOCHE
    Gibt den Tag der Woche zurück, beginnend mit Montag. Montag = 1 bis Sonntag = 7.

    Syntax

    DAYOFWEEK(datetime)

  • JETZT
    Gibt das aktuelle Datum und die aktuelle Uhrzeit zurück.

    Syntax

    NOW( )

  • HEUTE
    Gibt das aktuelle Datum zurück.

    Syntax

    TODAY( )

  • DATUMSDIFFERENZ
    Gibt die Differenz zwischen Start-datetime und End-datetime zurück.

    Syntax

    DATEDIFF(interval, datetime, datetime)

  • DATUMADDIEREN
    Gibt einen datetime-Wert zurück, der das Ergebnis der Addition der angegebenen Anzahl von Zeitintervalleinheiten mit dem ursprünglichen datetime-Wert ist.

    Syntax

    DATEADD(interval, units, datetime)

Logische Operatoren

Verwenden Sie die folgenden Funktionen, um die Logik einer Bedingung zu testen.

  • UND
    Gibt TRUE zurück, wenn alle Argumente TRUE sind, und gibt FALSE zurück, wenn mindestens ein Argument FALSE ist.

    Syntax

    AND(logical, logical)

    Die Argumente müssen zu logischen Werten wie TRUE oder FALSE ausgewertet werden, oder die Argumente müssen Arrays oder Verweise mit logischen Werten sein. Wenn ein Array oder Verweisargument Text oder leere Zellen enthält, werden diese Werte ignoriert.

  • ODER
    Gibt TRUE zurück, wenn ein Argument TRUE ist, und gibt FALSE zurück, wenn alle Argumente FALSE sind.

    Syntax

    OR(logical, logical)

    Die Argumente müssen zu logischen Werten wie TRUE oder FALSE ausgewertet werden oder in Arrays oder Verweisen mit logischen Werten enthalten sein. Wenn ein Array oder Verweis Text oder leere Zellen enthält; werden diese Werte ignoriert.

  • NICHT
    Kehrt den Wert des Arguments um. Verwenden Sie NICHT, wenn Sie sicherstellen möchten, dass eine Klausel ungleich einem bestimmten Wert ist.

    Syntax

    NOT(logical)

    Wenn der Wert FALSE ist, gibt NICHT TRUE zurück; wenn der Wert TRUE ist, gibt NICHT FALSE zurück.

Mathematische Funktionen

Verwenden Sie die folgenden Funktionen, um numerische Werte zu bearbeiten.

  • MOD
    Gibt den Rest zurück, der nach der Division einer Zahl durch einen Divisor übrig bleibt. Der Divisor darf nicht 0 sein.

    Syntax

    MOD(number, divisor)

  • ABSCHNEIDEN
    Schneidet eine Zahl um die angegebene Anzahl von Stellen ab. Ist die Zahl positiv, wird sie rechts von der Dezimalstelle abgeschnitten. Ist die Zahl negativ, wird sie links von der Dezimalstelle abgeschnitten.

    Syntax

    TRUNC(number, digits)

  • RUNDEN
    Rundet eine Zahl auf eine angegebene Anzahl von Stellen.

    Syntax

    ROUND(number, digits)

    Ist die Anzahl der Stellen größer als 0 (Null), wird die Zahl auf die angegebene Anzahl von Dezimalstellen gerundet. Ist die Anzahl von Stellen 0, wird die Zahl auf die nächste ganze Zahl gerundet. Ist die Anzahl kleiner als 0, wird die Zahl links vom Dezimalkomma gerundet.

Operatoren

Arithmetische Operatoren

Verwenden Sie die folgenden Operatoren, um einfache mathematische Operationen wie Addition, Subtraktion und Multiplikation durchzuführen, Zahlen zu kombinieren und numerische Ergebnisse zu berechnen.

  • + Addition
    Hiermit werden mindestens zwei Elemente zusammengefügt.

    Syntax

    Wert + Wert

  • - Subtraktion
    Hiermit wird ein Element von einem anderen Element subtrahiert.

    Syntax

    Wert - Wert

  • * Multiplikation
    Hiermit werden Elemente multipliziert.

    Syntax

    Wert* Wert

  • / Division
    Hiermit werden Elemente dividiert. Der Divisor darf nicht 0 sein.

    Syntax

    Wert / Divisor

  • - Negieren
    Hiermit wird das Vorzeichen des Wertes geändert.

    Syntax

    -Wert

  • ^ Potenzierung
    Hiermit wird ein Wert in eine Potenz erhoben (Potenzierung).

    Syntax

    Wert^Potenz

Vergleichsoperatoren

Verwenden Sie die folgenden Operatoren, um zwei Werte zu vergleichen und einen der logischen Werte TRUE oder FALSE zurückzugeben.

  • = Gleich
    Hiermit werden zwei Werte gleichgesetzt. TRUE, wenn value1 gleich value2 ist.

    Syntax

    value1= value2

  • <> Ungleich
    Hiermit wird angegeben, dass zwei Werte nicht identisch sind. TRUE, wenn value1 nicht mit value2 identisch ist.

    Syntax

    value1 <> value2

  • > Größer als
    Hiermit wird angegeben, dass ein Wert größer als ein anderer Wert ist. True, wenn Value1 größer als Value2 ist.

    Syntax

    value1 > value2

  • >= Größer als oder gleich
    Hiermit wird angegeben, dass ein Wert größer als oder gleich einem anderen Wert ist. TRUE, wenn value1 größer als oder gleich value2 ist.

    Syntax

    value1 >= value2

  • < Kleiner als
    Hiermit wird angegeben, dass ein Wert kleiner als ein anderer Wert ist. TRUE, wenn value1 kleiner als value2 ist.

    Syntax

    value1 < value2

  • <= Kleiner als oder gleich
    Hiermit wird angegeben, dass ein Wert kleiner als oder gleich einem anderen Wert ist. TRUE, wenn value1 kleiner als oder gleich value2 ist.

    Syntax

    value1 <= value2

Text

Verwenden Sie die folgenden Funktionen, um Text in einem Bericht zu bearbeiten.

  • VERKETTEN (&)
    Fasst zwei Zeichenfolgen zusammen. Die zweite Zeichenfolge wird an die erste Zeichenfolge angefügt.

    Syntax

    string & string

  • SUCHEN
    Position der ersten Instanz einer Zeichenfolge.

    Syntax

    FIND(string, substring)

  • LINKS
    Gibt, von links ausgehend, die Zeichen einer Zeichenfolge zurück.

    Syntax

    LEFT(string, length)

  • LÄNGE
    Gibt die Anzahl von Zeichen in einer Zeichenfolge zurück.

    Syntax

    LENGTH(string)

  • KLEIN
    Konvertiert eine Zeichenfolge von Großbuchstaben in Kleinbuchstaben.

    Syntax

    LOWER(string)

  • LSCHNEIDEN
    Gibt eine Zeichenfolge zurück, wobei die führenden Leerzeichen entfernt werden.

    Syntax

    LTRIM(string)

  • ERSETZEN
    Gibt eine Zeichenfolge für alle Instanzen einer ersetzten Teilzeichenfolge zurück.

    Syntax

    REPLACE(find, replace, string)

  • RECHTS
    Gibt, von rechts ausgehend, die Zeichen einer Zeichenfolge zurück.

    Syntax

    RIGHT(string, length)

  • RSCHNEIDEN
    Gibt eine Zeichenfolge zurück, wobei die nachfolgenden Leerzeichen entfernt werden.

    Syntax

    RTRIM(string)

  • Text
    Konvertiert einen numerischen Wert in eine Zeichenfolge.

    Syntax

    TEXT(value)

  • TEILZEICHENFOLGE
    Gibt eine Teilzeichenfolge innerhalb einer Zeichenfolge zurück.

    Syntax

    SUBSTRING(string, start, length)

  • GROSS
    Konvertiert eine Zeichenfolge von Kleinbuchstaben in Großbuchstaben.

    Syntax

    UPPER(string)

Informationen

Verwenden Sie die folgenden Funktionen, um allgemeine Informationen zu Benutzern zurückzugeben.

  • BENUTZERID
    Gibt die ID zurück, mit der der Benutzer auf die Daten zugegriffen hat.

    Syntax

    GETUSERID()

  • BENUTZERGEBIETSSCHEMA
    Gibt die Sprache bzw. das Gebietsschema des Benutzers zurück.

    Syntax

    GETUSERCULTURE()