Ansicht
Dokumentation

ABENCDS_SIMPLE_CASE_EXPRESSION_V2 - CDS SIMPLE CASE EXPRESSION V2

ABENCDS_SIMPLE_CASE_EXPRESSION_V2 - CDS SIMPLE CASE EXPRESSION V2

BAL_S_LOG - Application Log: Log header data   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- CDS-View-Entität, simple_case_expr

... CASE operand
         WHEN operand1 THEN result1
        $[WHEN operand2 THEN result2$]
         ...
        $[ELSE resultn$]
    END ...


Wirkung

Einfache Fallunterscheidung in einer SELECT-Anweisung einer CDS-View-Entität. Die Fallunterscheidung vergleicht die Werte von Operand operand mit den Operanden operand1, operand2, ... und gibt den ersten Operand nach THEN zurück, für den das Ergebnis des Vergleichs true ist. Wenn keine Übereinstimmung festgestellt wird, wird die Angabe result hinter ELSE zurückgegeben. Wenn kein ELSE angegeben ist, ist das Resultat der Null-Wert.

  • Für operand, operand1, operand2, und für result1, result2, können die folgenden Operanden angegeben werden:

  • Felder einer Datenquelle data_source der aktuellen CDS-View-Entität

  • Eine weitere Fallunterscheidung

Der Operand operand muss mit operand1, operand2, ... vergleichbar sein. Bei der Aktivierung der CDS-View-Entität wird aus den Operanden result1, result2, ... ein Ergebnistyp bestimmt. Die Operanden der THEN- und ELSE-Verzweigungen müssen miteinander kompatibel sein.

Die Operanden dürfen nicht vom eingebauten Datentyp LCHR, LRAW, STRING, RAWSTRING oder GEOM_EWKB sein.

Regeln für Beträge und Mengen

Das Ergebnisdatentyp eines Fallausdrucks wird durch alle THEN-Verzweigungen und die ELSE-Verzweigung ermittelt. Falls der Ergebnisdatentyp ein CDS-Betragsfeld, ein CDS-Mengenfeld oder eine berechnete CDS-Menge ist, muss eine Referenzannotation zugeordnet werden. In folgender Tabelle wird die Berechnung des Ergebnisdatentyps bei einem oder mehreren Operanden result1, result2, als Betrags- oder Mengenfeldern gezeigt.

operand1/operand2 Betrag Menge Berechnete Menge Zahl
Betrag Betrag berechnete Menge berechnete Menge berechnete Menge
Menge berechnete Menge Menge berechnete Menge berechnete Menge
Berechnete Menge berechnete Menge berechnete Menge berechnete Menge berechnete Menge
Zahl berechnete Menge berechnete Menge berechnete Menge Anzahl

  • Die Operanden und das Ergebnis müssen nicht zwingend auf das gleiche Referenzfeld zeigen.
  • Bei Betragsfeldern vom Datentyp CURR gelten folgende Regeln:
  • Felder vom Datentyp CURR sind nur mit anderen Betragsfeldern vom Datentyp CURR kompatibel und nur bei gleicher Anzahl Nachkommastellen.

  • Um ein Betragsfeld vom Datentyp CURR mit einem Feld von einem anderen Datentyp zu kombinieren, ist eine Konvertierung in den Datentyp DECFLOAT34 über die Konvertierungsfunktion CURR_TO_DECFLOAT_AMOUNT erforderlich.

Hinweise

Beispiel

Das Beispiel zeigt eine CDS-View-Entität mit zwei Fallunterscheidungen.

Beispiel

In diesem Beispiel wird eine CDS-View-Entität mit zwei Fallunterscheidungen mit Betrags- und Mengenfeldern gezeigt.






General Material Data   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 8759 Date: 20240523 Time: 184159     sap01-206 ( 95 ms )