Funktionen des Modell-Designers
Mithilfe der Funktionen des Berichtsmodell-Designers können Sie neue Attribute berechnen. Nehmen Sie beispielsweise an, Sie möchten den Gesamtumsatz pro Bestellung ermitteln. Dieser Wert setzt sich aus dem Umsatzbetrag und den für die Bestellung gezahlten Steuern zusammen. Mit der Add-Funktion können Sie jeden Umsatzgesamtbetrag zu den für die jeweilige Bestellung gezahlten Steuern addieren. In der folgenden Liste werden die verfügbaren Funktionen, ihre Anforderungen und ihr Verhalten beschrieben.
Skalarfunktionen
Mithilfe von Skalarfunktionen können Sie Berechnungen für ein einzelnes Argument ausführen, um einen neuen einzelnen Wert für ein Feld zurückzugeben.
Funktionsname |
Argument |
Datentyp |
Kardinalität |
Beschreibung |
---|---|---|---|---|
Add |
Item1 |
Numerisch |
1 |
Das erste zu addierende Element. |
Item2 |
Numerisch |
1 |
Das zweite zu addierende Element. |
|
Return |
Es wird ein Float-Wert zurückgegeben, wenn eines der beiden Elemente den Float-Typ aufweist; andernfalls wird ein Decimal-Wert zurückgegeben, wenn eines der beiden Elemente den Decimal-Typ aufweist. Trifft auch das nicht zu, wird ein Integer-Wert zurückgegeben. |
|||
Subtract |
Item1 |
Numerisch |
1 |
Das Element, von dem ein anderes Element subtrahiert wird. |
Item2 |
Numerisch |
1 |
Das Element, das subtrahiert wird. |
|
Return |
Es wird ein Float-Wert zurückgegeben, wenn eines der beiden Elemente den Float-Typ aufweist; andernfalls wird ein Decimal-Wert zurückgegeben, wenn eines der beiden Elemente den Decimal-Typ aufweist. Trifft auch das nicht zu, wird ein Integer-Wert zurückgegeben. |
|||
Multiply |
Item1 |
Numerisch |
1 |
Das erste zu multiplizierende Element. |
Item2 |
Numerisch |
1 |
Das zweite zu multiplizierende Element. |
|
Return |
Es wird ein Float-Wert zurückgegeben, wenn eines der beiden Elemente den Float-Typ aufweist; andernfalls wird ein Decimal-Wert zurückgegeben, wenn eines der beiden Elemente den Decimal-Typ aufweist. Trifft auch das nicht zu, wird ein Integer-Wert zurückgegeben. |
|||
Divide |
Item1 |
Numerisch |
1 |
Das zu dividierende Element. |
Item2 |
Numerisch |
1 |
Das Element, durch das dividiert wird. |
|
Return |
Es wird ein Float-Wert zurückgegeben, wenn eines der beiden Elemente den Float-Typ aufweist; andernfalls wird ein Decimal-Wert zurückgegeben. |
|||
Power |
Base |
Numerisch |
1 |
Die Basis, die in eine Potenz erhoben wird. |
Exponent |
Numerisch |
1 |
Der Exponent. |
|
Return |
Es wird ein Float-Wert zurückgegeben, wenn eines der beiden Elemente den Float-Typ aufweist; andernfalls wird ein Decimal-Wert zurückgegeben, wenn eines der beiden Elemente den Decimal-Typ aufweist. Trifft auch das nicht zu, wird ein Integer-Wert zurückgegeben. |
|||
Negate |
Item |
Numerisch |
1 |
Das Element, das in einen negativen Wert umgewandelt wird. |
Return |
Der Rückgabewert ist vom selben Datentyp wie das mit Item angegebene Element. |
|||
Mod |
Item1 |
Integer |
1 |
Das zu dividierende Element. |
Item2 |
Integer |
1 |
Das Element, durch das dividiert wird. |
|
Return |
Integer |
Der Restwert der Division. |
||
Equals |
Item1 |
Boolean, DateTime, Integer, Decimal, Float, String oder EntityKey |
1 |
Das erste zu vergleichende Element. |
Item2 |
1 |
Das zweite zu vergleichende Element. Item1 und Item2 müssen denselben Datentyp aufweisen. |
||
Return |
Boolean |
Gibt an, ob die Elemente identisch sind. |
||
NotEquals |
Item1 |
Boolean, DateTime, Integer, Decimal, Float, String oder EntityKey |
1 |
Das erste zu vergleichende Element. |
Item2 |
1 |
Das zweite zu vergleichende Element. Item1 und Item2 müssen denselben Datentyp aufweisen. |
||
Return |
Boolean |
Gibt an, ob die Elemente nicht identisch sind. |
||
GreaterThan |
Item1 |
DateTime, Integer, Decimal, Float oder String |
1 |
Das erste zu vergleichende Element. |
Item2 |
1 |
Das zweite zu vergleichende Element. Item1 und Item2 müssen denselben Datentyp aufweisen. |
||
Return |
Boolean |
Gibt an, ob das erste Element größer als das zweite Element ist. |
||
GreaterThanOrEquals |
Item1 |
DateTime, Integer, Decimal, Float oder String |
1 |
Das erste zu vergleichende Element. |
Item2 |
1 |
Das zweite zu vergleichende Element. Item1 und Item2 müssen denselben Datentyp aufweisen. |
||
Return |
Boolean |
Gibt an, ob das erste Element größer oder gleich dem zweiten Element ist. |
||
LessThan |
Item1 |
DateTime, Integer, Decimal, Float oder String |
1 |
Das erste zu vergleichende Element. |
Item2 |
1 |
Das zweite zu vergleichende Element. Item1 und Item2 müssen denselben Datentyp aufweisen. |
||
Return |
Boolean |
Gibt an, ob das erste Element kleiner als das zweite Element ist. |
||
LessThanOrEquals |
Item1 |
DateTime, Integer, Decimal, Float oder String |
1 |
Das erste zu vergleichende Element. |
Item2 |
1 |
Das zweite zu vergleichende Element. Item1 und Item2 müssen denselben Datentyp aufweisen. |
||
Return |
Boolean |
Gibt an, ob das erste Element kleiner oder gleich dem zweiten Element ist. |
||
And |
Item1 |
Boolean |
1 |
Die erste Bedingung. |
Item2 |
Boolean |
1 |
Die zweite Bedingung. Wenn Item1 FALSE ergibt, wird Item2 nicht ausgewertet. |
|
Return |
Boolean |
Wenn sowohl Item1 als auch Item2 true ergeben, wird true zurückgegeben. |
||
Or |
Item1 |
Boolean |
1 |
Die erste Bedingung. |
Item2 |
Boolean |
1 |
Die zweite Bedingung. Wenn Item1 true ergibt, wird Item2 nicht ausgewertet. |
|
Return |
Boolean |
Wenn Item1 oder Item2 true ergibt, wird true zurückgegeben. |
||
Not |
Item |
Boolean |
1 |
Die Bedingung, die umgekehrt wird. |
Return |
Boolean |
Wenn Item false ergibt, wird true zurückgegeben. |
||
Truncate |
Item |
Decimal oder Float |
1 |
Das abzuschneidende Element. |
Digits |
Integer |
1 |
Die Anzahl der Dezimalstellen, bis auf die das Element abgeschnitten wird. Geben Sie beispielsweise 3 an, um das Element nach der dritten Dezimalstelle abzuschneiden. |
|
Return |
Der Return-Wert ist vom selben Datentyp wie das abzuschneidende Element. |
|||
Round |
Item |
Decimal oder Float |
1 |
Das zu rundende Element. |
Digits |
Integer |
1 |
Die Anzahl der Dezimalstellen, auf die das Element gerundet wird. Geben Sie beispielsweise 3 an, um das Element auf die dritte Dezimalstelle zu runden. |
|
Return |
Der Return-Wert hat denselben Typ wie das zu rundende Element. |
|||
Integer |
Item |
Numeric oder String |
1 |
Das umzuwandelnde Element. Im Berichts-Generator wird die Integer-Funktion auf der Registerkarte Funktion als INT aufgeführt. |
Return |
Integer |
Das in eine ganze Zahl umgewandelte Element. Wenn das Element ein numerischer Wert ist, wird es abgeschnitten. Bei der Umwandlung numerischer Zeichenfolgen wird das invariante Gebietsschema verwendet. Der Punkt wird als Dezimaltrennzeichen verwendet. Das Komma als Tausendertrennzeichen ist nicht zulässig. |
||
Decimal |
Item |
Numeric oder String |
1 |
Das umzuwandelnde Element. |
Return |
Decimal |
Das in eine Dezimalzahl umgewandelte Element. |
||
Float |
Item |
Numeric oder String |
1 |
Das umzuwandelnde Element. |
Return |
Float |
Das in einen Gleitkommawert umgewandelte Element. |
||
String |
Item |
Numeric |
1 |
Das umzuwandelnde Element. Im Berichts-Generator wird die String-Funktion auf der Registerkarte Funktion als TEXT aufgeführt. |
Return |
String |
Das in eine Zeichenfolge umgewandelte Element. |
||
Length |
String |
String |
1 |
Die Zeichenfolge, deren Länge bestimmt wird. |
Return |
Integer |
Die Länge der Zeichenfolge, angegeben als Anzahl von Zeichen innerhalb der Zeichenfolge. |
||
Find |
String |
String |
1 |
Die Zeichenfolge, die nach einer enthaltenen Zeichenfolge durchsucht wird. |
Substring |
String |
1 |
Die zu suchende Teilzeichenfolge. |
|
Return |
Integer |
Die Position der ersten Instanz der Teilzeichenfolge innerhalb der Zeichenfolge. Wenn die Teilzeichenfolge nicht gefunden wird, wird 0 zurückgegeben. |
||
Substring |
String |
String |
1 |
Die Zeichenfolge, aus der eine Teilzeichenfolge extrahiert wird. |
Start |
Integer |
1 |
Die Startposition innerhalb der Zeichenfolge (basierend auf 1). |
|
Length |
Integer |
1 |
Die Anzahl von Zeichen. |
|
Return |
String |
Die Teilzeichenfolge, die aus der Zeichenfolge extrahiert wird, die die Zeichen von Start bis Start+Length enthält. |
||
Left |
String |
String |
1 |
Die Zeichenfolge, aus der die äußeren linken Zeichen abgerufen werden. |
Length |
Integer |
1 |
Die Anzahl von Zeichen. |
|
Return |
String |
Die Teilzeichenfolge der Zeichenfolge, die die Zeichen von 1 bis Length enthält. |
||
Right |
String |
String |
1 |
Die Zeichenfolge, aus der die äußeren rechten Zeichen abgerufen werden. |
Length |
Integer |
1 |
Die Anzahl von Zeichen. |
|
Return |
String |
Die Teilzeichenfolge der Zeichenfolge, die durch Length(String)-Length+1 bis Length(String) definiert ist. |
||
Concat |
String1 |
String |
1 |
Die erste zu verkettende Zeichenfolge. |
String2 |
String |
1 |
Die zweite zu verkettende Zeichenfolge. |
|
Return |
String |
Die Verkettung aus der ersten und der zweiten Zeichenfolge; letztere wird am Ende der ersten Zeichenfolge angefügt. |
||
Lower |
String |
String |
1 |
Die Zeichenfolge, die in Kleinbuchstaben konvertiert wird. |
Return |
String |
Die Zeichenfolge, in der alle Großbuchstaben in Kleinbuchstaben konvertiert wurden. |
||
Upper |
String |
String |
1 |
Die Zeichenfolge, die in Großbuchstaben konvertiert wird. |
Return |
String |
Die Zeichenfolge, in der alle Kleinbuchstaben in Großbuchstaben konvertiert wurden. |
||
LTrim |
String |
String |
1 |
Die Zeichenfolgen, aus der führende Leerzeichen entfernt werden. |
Return |
String |
Die Zeichenfolge, aus der alle führenden Leerzeichen entfernt wurden. |
||
RTrim |
String |
String |
1 |
Die Zeichenfolge, aus der nachfolgende Leerzeichen entfernt werden. |
Return |
String |
Die Zeichenfolge, aus der nachfolgende Leerzeichen entfernt wurden. |
||
Replace |
String |
String |
1 |
Die Zeichenfolge, in der alle Instanzen einer Teilzeichenfolge durch eine andere ersetzt werden. |
Find |
String |
1 |
Die zu suchende Teilzeichenfolge. |
|
Replace |
String |
1 |
Die Teilzeichenfolge, die die mit Find angegebene Zeichenfolge ersetzt. |
|
Return |
String |
Die Zeichenfolge, in der alle Instanzen des Find-Werts durch den Replace-Wert ersetzt wurden. |
||
Date |
Year |
Integer |
1 |
Das Jahr für das Datum. |
Month |
Integer |
1 |
Der Monat (1-12) für das Datum. |
|
Day |
Integer |
1 |
Der Tag (1-31) für das Datum, wobei es sich um einen gültigen Tag für den angegebenen Monat und das angegebene Jahr handeln muss. |
|
Return |
DateTime |
Ein datetime-Wert, der dem angegebenen Jahr, Monat und Tag um 00:00:00 Uhr entspricht. |
||
DateTime |
Year |
Integer |
1 |
Das Jahr für das Datum. |
Month |
Integer |
1 |
Der Monat (1-12) für das Datum. |
|
Day |
Integer |
1 |
Der Tag (1-31) für das Datum, wobei es sich um einen gültigen Tag für den angegebenen Monat und das angegebene Jahr handeln muss. |
|
Hour |
Integer |
1 |
Die Stunde (0-23) für die Zeitangabe. |
|
Minute |
Integer |
1 |
Die Minute (0-59) für die Zeitangabe. |
|
Second |
Decimal |
1 |
Die Sekunde (0-60) für die Zeitangabe. |
|
Return |
DateTime |
Ein datetime-Wert, der dem angegebenen Jahr, Monat und Tag und der angegebenen Stunde, Minute und Sekunde entspricht. |
||
Time |
DateTime |
DateTime |
1 |
Datetime-Wert, aus dem die Uhrzeit extrahiert werden soll. Gibt die Stunde, die Minute und die Sekunde aus einem datetime-Wert zurück. |
Return |
Time |
Die Uhrzeit im datetime-Wert. |
||
Year |
DateTime |
DateTime |
1 |
Das Datum, aus dem das Jahr extrahiert wird. |
Return |
Integer |
Das Jahr in dem datetime-Wert. |
||
Quarter |
DateTime |
DateTime |
1 |
Das Datum, aus dem das Quartal extrahiert wird. |
Return |
Integer |
Das Quartal (1-4) in dem datetime-Wert. |
||
Month |
DateTime |
DateTime |
1 |
Das Datum, aus dem der Monat extrahiert wird. |
Return |
Integer |
Der Monat (1-12) in dem datetime-Wert. |
||
Day |
DateTime |
DateTime |
1 |
Das Datum, aus dem der Tag extrahiert wird. |
Return |
Integer |
Der Tag (1-31) in dem datetime-Wert. |
||
Hour |
DateTime |
DateTime oder Time |
1 |
Das Datum bzw. die Uhrzeit, aus dem bzw. der die Stunde extrahiert wird. |
Return |
Integer |
Die Stunde (0-23) in dem datetime-Wert. |
||
Minute |
DateTime |
DateTime oder Time |
1 |
Das Datum bzw. die Uhrzeit, aus dem bzw. der die Minute extrahiert wird. |
Return |
Integer |
Die Minute (0-59) in dem datetime-Wert. |
||
Second |
DateTime |
DateTime oder Time |
1 |
Das Datum bzw. die Uhrzeit, aus dem bzw. der die Sekunde extrahiert wird. |
Return |
Integer |
Die Sekunde (0-60) in dem datetime-Wert. |
||
DayofYear |
DateTime |
DateTime |
1 |
Das Datum, aus dem der Tag des Jahres extrahiert wird. |
Return |
Integer |
Der Tag des Jahres (1-366) in dem datetime-Wert. |
||
Week |
DateTime |
DateTime |
1 |
Das Datum, aus dem die Woche extrahiert wird. |
Return |
Integer |
Die Woche (1-53) in dem datetime-Wert. Der erste Tag der Woche wird durch den standardmäßigen ersten Tag der Woche bestimmt, der der Kultur des Semantikmodells zugeordnet ist. |
||
DayofWeek |
DateTime |
DateTime |
1 |
Das Datum, aus dem der Tag der Woche extrahiert wird. |
Return |
Integer |
Der Tag der Woche (1-7) in dem datetime-Wert. Mögliche Werte sind 1 = Montag bis 7 = Sonntag. |
||
Date |
DateTime |
DateTime |
1 |
Das Datum, aus dem die Uhrzeit entfernt wird. Im Berichts-Generator wird die Date-Funktion auf der Registerkarte Funktion als DATEONLY aufgeführt. |
Return |
Integer |
Der datetime-Wert, aus dem die Uhrzeit gelöscht wurde (00:00:00). |
||
Now |
Return |
DateTime |
Das aktuelle Datum und die aktuelle Uhrzeit. Now ist eine statische Funktion. |
|
Today |
Return |
DateTime |
Der datetime-Wert für das aktuelle Datum und die aktuelle Uhrzeit, aus dem die Uhrzeit gelöscht wurde (00:00:00). Today ist eine statische Funktion. |
|
DateDiff |
Interval |
String |
1 |
Die Einheiten, die zum Angeben der Datumsdifferenz verwendet werden. Zulässige Einheiten sind: Year, Quarter, Month, Day, Hour, Minute, Second oder Week. Das Argument muss ein Literal sein. Wenn die Formel die Differenz zwischen einer Start- und einer Beendigungszeit berechnet, kann die Intervalleinheit nur HOUR, MINUTE oder SECOND sein. |
Start |
DateTime oder Time |
1 |
Das Startdatum oder die Startzeit. |
|
End |
DateTime oder Time |
1 |
Das Beendigungsdatum oder die Beendigungszeit. Muss denselben Datentyp wie die Startzeit besitzen. |
|
Return |
Integer |
Die Differenz zwischen den für Start und End angegebenen datetime-Werten in den Einheiten, die für Interval angegeben wurden. Wenn der datetime-Startwert hinter dem datetime-Endwert liegt, ist das Ergebnis negativ. |
||
DateAdd |
Interval |
String |
1 |
Die Einheiten, die zum Angeben der Datums- oder Zeitaddition verwendet werden. Zulässige Einheiten sind: Year, Quarter, Month, Day, Hour, Minute, Second oder Week. Das Argument muss ein Literal sein. Wenn die Formel zu einer Startzeit eine Anzahl von Zeitintervalleinheiten addiert, kann die Intervalleinheit nur HOUR, MINUTE oder SECOND sein. |
Number |
Integer |
1 |
Die Anzahl der mit Interval festgelegten Einheiten, die zum Datum oder zur Uhrzeit addiert werden. |
|
DateTime |
DateTime oder Time |
1 |
Das Datum oder die Uhrzeit, zu dem bzw. der die Einheiten addiert werden. |
|
Return |
DateTime |
Das Datum oder die Uhrzeit, das bzw. die das Ergebnis der Addition der angegebenen Anzahl von Intervalleinheiten zum ursprünglichen Datum bzw. zur ursprüngliche Uhrzeit ist. Muss denselben Datentyp wie das ursprünglich für Start angegebene datetime- oder time-Feld besitzen. |
Aggregatfunktionen
Mithilfe von Aggregatfunktionen können Sie Berechnungen für eine Gruppe von Werten oder einen einzelnen Wert ausführen und dann einen einzelnen Wert für einen Ausdruck zurückgeben.
Funktionsname |
Argument |
Datentyp |
Kardinalität |
Beschreibung |
---|---|---|---|---|
Sum |
Items |
Numerisch |
N |
Die Elemente, die aufsummiert werden. |
Return |
1 |
Die Summe der Werte für alle Elemente. Der Rückgabewert ist vom selben Datentyp wie die Elemente. |
||
Avg |
Items |
Numerisch |
N |
Die Elemente, deren Durchschnitt berechnet wird. Im Berichts-Generator wird die Avg-Funktion auf der Registerkarte Funktion als AVERAGE aufgeführt. |
Return |
1 |
Der Durchschnitt der Werte ungleich NULL der durch Items angegebenen Elemente. Es wird ein Decimal-Wert zurückgegeben, wenn die Elemente den Typ Decimal oder Integer aufweisen; andernfalls wird ein Float-Wert zurückgegeben. |
||
Max |
Items |
DateTime, Integer, Decimal, Float oder String |
N |
Die Elemente, die sortiert werden, um das Maximum zu bestimmen. |
Return |
1 |
Das Maximum der Werte ungleich NULL der durch Items angegebenen Elemente. Der Rückgabewert ist vom selben Datentyp wie die Elemente. |
||
Min |
Items |
DateTime, Integer, Decimal, Float oder String |
N |
Die Elemente, die sortiert werden, um das Minimum zu bestimmen. |
Return |
1 |
Das Minimum der Werte ungleich NULL der durch Items angegebenen Elemente. Der Rückgabewert ist vom selben Datentyp wie die Elemente. |
||
Count |
Items |
Beliebig |
N |
Die zu zählenden Elemente. |
Return |
Integer |
1 |
Die Anzahl der Werte ungleich NULL der durch Items angegebenen Elemente. |
|
CountDistinct |
Items |
Beliebig |
N |
Die zu zählenden Elemente. Der Datentyp der Elemente darf nicht EntityKey sein. |
Return |
Integer |
1 |
Die Anzahl der unterschiedlichen Werte ungleich NULL der durch Items angegebenen Elemente. |
|
StDev |
Items |
Numerisch |
N |
Die Elemente, die zum Bestimmen der Standardabweichung verwendet werden. |
Return |
Float |
1 |
Die Standardabweichung der Werte ungleich NULL der durch Items angegebenen Elemente. |
|
StDevP |
Items |
Numerisch |
N |
Die Elemente, die zum Bestimmen der Standardabweichung für eine Grundgesamtheit verwendet werden. |
Return |
Float |
1 |
Die Standardabweichung für die Grundgesamtheit, berechnet anhand der Werte ungleich NULL der durch Items angegebenen Elemente. |
|
Var |
Items |
Numerisch |
N |
Die Elemente, die zum Bestimmen der Varianz verwendet werden. |
Return |
Float |
1 |
Die Varianz der Werte ungleich NULL der durch Items angegebenen Elemente. |
|
VarP |
Items |
Numerisch |
N |
Die Elemente, die zum Bestimmen der Varianz für die Grundgesamtheit verwendet werden. |
Return |
Float |
1 |
Die Varianz für die Grundgesamtheit, berechnet anhand der Werte ungleich NULL der durch Items angegebenen Elemente. |
Informationsfunktionen
Mithilfe von Informationsfunktionen können Sie grundlegende Informationen zu den Benutzern abrufen.
Funktionsname |
Argument |
Datentyp |
Kardinalität |
Beschreibung |
---|---|---|---|---|
GetUserID |
Return |
String |
1 |
Die Benutzer-ID des Benutzers. GetUserID ist eine statische Funktion. |
GetUserCulture |
Return |
Language |
1 |
Die Sprache oder das Gebietsschema des Benutzers. GetUserCulture ist eine statische Funktion. |
Weitere Funktionen
Zusätzlich zu den zuvor behandelten Funktionen werden die folgenden Funktionen in SMDL (Semantic Model Definition Language) verwendet.
Funktionsname |
Argument |
Datentyp |
Kardinalität |
Beschreibung |
---|---|---|---|---|
Filter |
Filter Items |
Beliebig |
N |
Die zu filternden Werte. Verwenden Sie das Dialogfeld Filter, um Elemente zu filtern. |
Filter Condition |
Boolean |
1 |
Zeigt an, ob die entsprechende Instanz eingeschlossen werden soll. |
|
Return |
N |
Der Rückgabewert ist vom selben Datentyp wie die Filter Items-Werte. |
||
In |
Item |
Boolean, DateTime, Integer, Decimal, Float, String oder EntityKey |
1 |
Das Element, das im Hinblick auf seine Gruppenzugehörigkeit überprüft wird. |
Set |
N |
Es muss sich um einen Literalausdruck ohne Pfadangabe handeln. Die Item- und Set-Werte müssen denselben Datentyp aufweisen. |
||
Return |
Boolean |
1 |
Zeigt an, ob das Element zu der Gruppe gehört. |
|
If |
Condition |
Boolean |
1 |
Die zu testende Bedingung. |
TrueCase |
Beliebig |
1 |
Der zurückzugebende Wert, wenn die Bedingung erfüllt (TRUE) ist. Wenn die Bedingung nicht erfüllt (FALSE) ist, wird TrueCase nicht ausgewertet. Das Argument darf kein Wert vom Datentyp EntityKey sein. |
|
FalseCase |
Beliebig |
1 |
Der zurückzugebende Wert, wenn die Bedingung nicht erfüllt (FALSE) ist. FalseCase muss denselben Datentyp wie TrueCase aufweisen. Wenn die Bedingung erfüllt (TRUE) ist, wird FalseCase nicht ausgewertet. |
|
Return |
1 |
Der Rückgabewert muss denselben Datentyp wie TrueCase aufweisen. |
||
Switch |
Condition1 |
Boolean |
1 |
Die zu testende Bedingung. Switch kann kein oder auch mehrere zusätzliche Bedingung-Wert-Paare aufweisen: |
Value1 |
Beliebig |
1 |
Der zurückzugebende Wert, wenn Condition1 erfüllt (TRUE) ist. |
|
Condition/N |
Boolean |
1 |
Die zu testende Bedingung. Wird nicht ausgewertet, wenn eine zuvor ausgewertete Bedingung erfüllt (TRUE) ist. |
|
Value/N |
Boolean |
1 |
Der zurückzugebende Wert, wenn Condition/N erfüllt (TRUE) ist. Der Wert muss denselben Datentyp wie Value1 aufweisen. Wird nicht ausgewertet, wenn Condition/N nicht ausgewertet wird oder wenn Condition/N nicht erfüllt (FALSE) ist. |
|
Return |
Boolean |
1 |
Der Rückgabewert ist vom selben Datentyp wie Value1. Gibt Null zurück, wenn alle Bedingungen nicht erfüllt (FALSE) sind. |
|
Evaluate |
Expression |
Beliebig |
N |
Der auszuwertende Ausdruck. Mit dieser Funktion wird der Entitätskontext gesteuert, in dem ein Ausdruck ausgewertet wird. So wird z. B. mit dem folgenden Ausdruck der Mittelwert der Preise für alle verschiedenen Produkte ermittelt, die der Kunde bestellt hat: Avg([customer->order->product]Price). Mit dem folgenden Ausdruck wird der Mittelwert der (aus der Produktentität abgerufenen) Preise für jede vom Kunden aufgegebene Bestellung ermittelt: Avg([customer->order]Evaluate([order->product]Price)). Es gibt mehrere Punkte entlang eines Zugriffspfads, an denen Evaluate die Eindeutigkeit eines Aggregats steuern kann, sodass die mehrmalige unabhängige Verwendung von Evaluate möglich ist. Die folgende Zeile ist ein Beispiel für die mehrmalige unabhängige Verwendung von Evaluate in einem Modell, in dem jedes Produkt von verschiedenen Herstellern gefertigt werden kann: Average([customer->order]Evaluate([order->product]Evaluate([product->manufacturer->city]population))) |
Return |
N |
Der Rückgabewert ist vom selben Datentyp wie der Ausdruck. |
||
Aggregate |
Expression |
Beliebig |
N |
Der auszuwertende Aggregatausdruck. Mit dieser Funktion wird der Entitätskontext gesteuert, in dem eine Aggregation ausgewertet wird. Angenommen, für eine Order-Entität wurde das TotalSales-Attribut definiert. Zum Anzeigen des Gesamtumsatzes im Kontext einer Bestellung ist lediglich folgender Ausdruck erforderlich: TotalSales. Der Ausdruck zum Berechnen des Gesamtumsatzes innerhalb des Kontexts eines Kunden würde folgendermaßen lauten: Aggregate([customer->order]TotalSales). Das Ausdrucksargument muss einen nicht verankerten Ausdruck oder mindestens eine geschachtelte Pass-Through-Funktion (die jeden Datentyp akzeptieren muss) enthalten, wobei das innerste Pass-Through-Argument ein nicht verankertes ExpressionNode-Element aufweist. Beispiel: Aggregate([customer->order]Filter([order->product]Sum(UnitPrice),=(Shipped, "True")). |
Return |
1 |
Der Rückgabewert ist vom selben Datentyp wie der Ausdruck. |