ABAP - Schlüsselwortdokumentation →  ABAP - Referenz →  Interne Daten verarbeiten →  Numerische Berechnungen →  Numerische Funktionen → 

nmax, nmin - numerische Extremwertfunktionen

Syntaxformen

... nmax|nmin( val1 = arg1 val2 = arg2 [val3 = arg3] ... [val9 = arg9] ) ...

Wirkung

Diese Funktionen geben den Wert des größten bzw. des kleinsten der übergebenen Argumente zurück. Es müssen mindestens zwei Argumente arg1 und arg2 und es können maximal neun Argumente übergeben werden, wobei die optionalen Eingabeparameter val3 bis val9 lückenlos und in aufsteigender Reihenfolge versorgt werden müssen. Die Argumente arg1 bis arg9 sind numerische Ausdruckspositionen.

Für den Datentyp des Rückgabewerts gilt:

Hinweise

result =  nmax|nmin( val1 = arg1 val2 = arg2 )

ist die Auswertung der Funktionen äquivalent zu:

IF num1 >= num2 | num1 <= num2.
  result = num1.
ELSE.
  result = num2.
ENDIF.

Bei der Verwendung von mehr als zwei Eingabeparametern wäre eine äquivalente Kontrollstruktur entsprechend komplexer.

Beispiel

Feststellen des kleineren von zwei Zeitstempeln, wobei der Initialwert mit Hilfe des Konditionaloperators COND nicht als kleinster Wert berücksichtigt wird.

CONSTANTS max_ts TYPE timestamp VALUE 999999999999999.

DATA: ts1 TYPE timestamp,
      ts2 TYPE timestamp.

GET TIME STAMP FIELD ts1.

DATA(min_ts) = nmin( val1 = COND timestamp( WHEN ts1 IS INITIAL
                                            THEN max_ts ELSE ts1 )
                     val2 = COND timestamp( WHEN ts2 IS INITIAL
                                            THEN max_ts ELSE ts2 ) ).

Ausführbares Beispiel

Extremwertfunktionen nmax, nmin