Show TOC

Technische Anmerkungen zu den FormeloperatorenLocate this document in the navigation structure

Test auf <Expression> = 0

Der Test, ob ein mathematischer Ausdruck 0 ergibt, wird zur Vermeidung von Problemen aufgrund von Rundungsoperationen durch die Abfrage abs(<Expression>) < 10**-6  realisiert. Anders ausgedrückt heißt das, dass alle Werte im Intervall [-10**-6;10**-6] = [-0,000001; 0,000001] als 0 angesehen werden.

Anzeige von NULL-Werten

Nicht vorhandene Werte, sog. NULL-Werte, werden als leere Zelle dargestellt.

Der OLAP-Prozessor behandelt NULL-Werte beim Rechnen mit Formeln folgendermaßen:

Hinweis

Im Folgenden steht N für NULL-Wert, D für das Ergebnis einer Division durch den Wert 0, X für den Fehlerindikator (Wert existiert nicht), W für einen beliebigen gültigen Wert und * für einen beliebigen Wert.

  • NOERR(X) = 0, NDIV0(D) = 0, O1(N) = N und O1(X) = X für alle übrigen einstelligen Operatoren O1.
  • O2(N,N) = N, O2(X,*) = X und O2(*,X) = X für alle zweistelligen Operatoren.
  • O2(N,W) = O2(0,W) und O2(W,N) = O2(W,0) außer für die folgenden Kombinationen, die als Resultat N liefern:
    • N * W
    • W * N
    • N / W
    • N %A W
    • N %_A W
    • N %RT W
    • N %GT W
    • N %CT W
    • N ** W
    • N DIV W
    • N MOD W

Weitere Informationen finden Sie im SAP-Hinweis 794006.

Ergebnis bei nicht definierten mathematischen Operationen

Wenn eine mathematisch nicht erlaubte oder definierte Operation (z.B. Division durch 0,  Quadratwurzel von negativen Werten) ausgeführt wird, dann wird - je nach Operation - das entsprechende Zeichen, das Sie im Customizing eingestellt haben, ausgegeben, und es wird nicht weitergerechnet. Im Customizing können Sie beispielsweise die Zeichen für Division durch Null und Daten existieren nicht bestimmen. Weitere Informationen finden Sie unter SAPReferenz-IMG → SAPCustomizing Einführungsleitfaden → SAP NetWeaver Business Warehouse → Einstellungen für Reporting und Analyse → Allgemeine Einstellungen für Reporting und Analyse → Darstellung der Zahlenwerte im Business Explorer.

Dies bedeutet, dass alle Formeln, in denen die fehlerhafte Formel vorkommt, nicht berechnet werden.

Dieses Verhalten kann unterdrückt werden, wenn der Ausdruck, der zu dem Fehler führt, durch die Operatoren NDIV0() bzw. NOERR() geklammert (sieheDatenfunktionen) ist.

Achtung

Bei der Verwendung dieser Operatoren sollten Sie genau prüfen, dass das Ergebnis auch im Fehlerfall vom Anwender sinnvoll interpretiert werden kann.

ABAP-Coding zur Berechnung der Operatoren

Im Zweifelsfall kann die Funktionsweise der Operatoren im ABAP-Coding (Include LRRK0F10, Form LOC_RECHNEN) nachvollzogen werden.