Returns a character value that indicates whether a string is an ABL keyword. This function returns all keywords and does not distinguish between reserved or unreserved keywords.
Syntax
KEYWORD-ALL ( expression )
expression
A constant, field name, variable name, or expression that results in a character string. If expression matches an ABL keyword, whether reserved or unreserved or valid abbreviation of a keyword, the KEYWORD-ALL function returns the full keyword. If there is no match, the KEYWORD-ALL function returns the Unknown value (?).
KEYWORD-ALL is the same function as KEYWORD in Progress Version 6 and earlier. Use this function if you do not want to use ABL reserved and unreserved keywords as field names, for example.
In some cases, the abbreviation for a keyword is also a keyword. For example, if expression is "def" (the abbreviation for DEFINE) or "col" (the abbreviation for COLUMN), the KEYWORD function returns the values "def" and "col", respectively.
If you use the Run-time client, the KEYWORD-ALL function always returns the Unknown value (?).
Example
In this example, the KEYWORD-ALL function tests the value of formname. If the user tries to use a keyword as a form name, the AVM displays a message to try again.
r-keywda.p
DEFINE VARIABLE formname AS CHARACTER NO-UNDO FORMAT "x(20)".
REPEAT ON ERROR UNDO, RETRY:
UPDATE formname.
IF KEYWORD-ALL(formname) NE ? THEN DO:
MESSAGE formname + "cannot be used as a form name".
UNDO, RETRY.
END.
ELSE LEAVE.
END.
Notes
Because KEYWORD-ALL recognizes abbreviations, it does not distinguish between FORM and FORMAT or between ACCUM and ACCUMULATE.
This function returns the Unknown value (?) for colors and most data types, as well as all unreserved keywords. See the Keyword Index section for a list of ABL reserved and unreserved keywords.
For SpeedScript, all ABL reserved keywords are also reserved for SpeedScript.