Show TOC

Syntax*WHEN/*ENDWHEN Dieses Dokument in der Navigationsstruktur finden

Siehe auch *REC.

Eine WHEN/ENDWHEN-Struktur funktioniert nach dem gleichen Prinzip wie die SELECTCASE/ENDSELECT-Struktur. Mit *REC( )-Anweisungen werden neue Datensätze generiert. Die Syntax lautet wie folgt:

*WHEN {criteria}

*IS [=]{value1}[,{value2},…] | <>{value}

*REC(FACTOR={Real number}|EXPRESSION={Expression}[,{dim1}={member},{dim2}=…])

[ *REC(FACTOR={Real number}|EXPRESSION={Expression}[,{dim1}={member},{dim2}=…])]

[*ELSE]

*ENDWHEN

dabei ist:

{criteria} das zu testende Kriterium. Dies ist in der Regel die Eigenschaft des aktuellen Elements einer Dimension. Die Syntax lautet wie folgt: DimensionName.Property | DimensionName, beispielsweise *WHEN ACCOUNT.RATETYPE. Wenn keine Eigenschaft angegeben ist, wird die ID-Eigenschaft angenommen. Zum Beispiel: *WHEN ACCOUNT equals to *WHEN ACCOUNT.ID.

{ValidCondition} ist einer oder mehrere Werte, die die Kriterien erfüllen. Sie können diese Werte in doppelte Anführungszeichen einschließen, um sie als Strings zu behandeln. Lassen Sie die Anführungszeichen weg, wenn es sich um numerische Werte handelt. Beispiel:

*IS "AVG","END"

*IS 10,20,30

Wenn kein Operator angegeben ist, nimmt die *IS-Klausel das Vorliegen eines Gleichheitszeichens an (*IS = "AVG", "END").

Der {value} muss ein Literal sein, keine Variable. Das folgende Beispiel wird daher nicht unterstützt:

*IS dimension.property

Hinweis Hinweis

Zwischen den beiden Zeichen des ungleich-Operators (<>) darf sich kein Leerzeichen befinden. Zwischen die Operatoren und den Wert können ein oder mehrere Leerzeichen eingefügt werden.

Wenn ein ungleich-Zeichen (<>) verwendet wird, kann nur ein Wert übermittelt werden. Daher ist die Syntax *IS <> 2,3,4 ungültig.

Andere Operatoren wie AND, OR und NOT werden momentan nicht unterstützt.

Ende des Hinweises

WHEN/ENDWHEN schachteln

WHEN/ENDWHEN-Strukturen können über beliebig viele Ebenen und in beliebiger Reihenfolge geschachtelt werden, wie im folgenden Beispiel dargestellt:

*WHEN xxx

*IS "A"

*REC(…)

*REC(…)

*IS "B"

*REC(…)

*WHEN yyy

*IS "C","D","E"

*REC(…)

*ELSE

*REC(…)

*ENDWHEN

*ENDWHEN

Alle in dieser Dokumentation enthaltenen Software-Quelltextzeilen oder -Strings („Code“) dienen nur als Beispiele und sind nicht für die Anwendung in einem Produktivsystem vorgesehen. Der angegebene Quelltext soll lediglich die Syntax und die Ausdrucksregeln bestimmter Softwarecodes erläutern. SAP übernimmt keine Verantwortung für die Richtigkeit und Vollständigkeit des angegebenen Quelltextes und übernimmt keine Haftung für Fehler oder Schäden, die aus dessen Anwendung entstehen könnten; es sei denn, derartige Schäden wurden von SAP vorsätzlich oder fahrlässig hervorgerufen.