Ein Funktionsbezeichner ist eine syntaktisch korrekte Kombination von Zeichen und Trennzeichen, die eine Funktion referenziert. Das Datenfeld, das durch eine Funktion dargestellt wird, ist durch den Funktionsnamen einschließlich der eventuell vorhandenen Argumente eindeutig bezeichnet.
Format
FUNCTION funktionsname-1 [({argument-1}...)]
Syntaxregeln
argument-1 muss ein Bezeichner, ein Literal oder ein arithmetischer Ausdruck sein. Zu Anzahl, Klasse und Kategorie von argument-1 sind in jeder Funktionsdefinition besondere Regeln vorhanden (siehe Kapitel „Interne Standard-Funktionen").
Ein Funktionsbezeichner für eine alphanumerische oder nationale Funktion darf überall dort angegeben werden, wo lt. Format ein Bezeichner zugelassen ist und die Regeln zum Format nicht ausdrücklich die Referenzierung einer Funktion verbieten; die Angabe eines Funktionsbezeichners ist nicht erlaubt
als Empfangsoperand einer Anweisung,
wenn die Regeln zu den Formaten verlangen, dass das referenzierte Datenfeld Eigenschaften besitzt (wie z.B. Klasse und Kategorie, Datenformat, Länge, Vorzeichen, zulässige Werte), die weder die entsprechende Funktionsauswertung noch die einzelnen Argumente der Funktion aufweisen.
Ein Funktionsbezeichner für eine ganzzahlige oder numerische Funktion darf nur in einem arithmetischen Ausdruck verwendet werden.
Allgemeine Regeln
Die Klasse und andere Eigenschaften der Funktion sind durch die Funktionsdefinition festgelegt.
Die Argumente einer Funktion werden einzeln von links nach rechts, wie in der Liste der Argumente angegeben, ausgewertet. Ein Argument kann selbst ein Funktionsbezeichner oder ein Ausdruck sein, der einen Funktionsbezeichner enthält. Es ist zulässig, dass eine Funktion sich selbst referenziert (rekursive Funktion).