ContentsIndexPreviousNext

The KEYBOARD Variable

You can specify one or more KEYBOARD variables. Attributes you can set are identified by one or more sets of keywords and associated values, separated from each other by spaces or tabs. The syntax is:

KEYBOARD keyword=value    [keyword=value] . . .

Keywords are:

1. AUTO-RETURN=value

Value
defines the termination key value (a decimal number) for ACCEPT statements that terminate because the input field is filled. The value is returned in the CONTROL KEY clause of the ACCEPT statement. The default value is "0". You may also specify this option with the configuration variable KBD_AUTO_RETURN.

2. CASE=value

Determines case conversion of keystrokes. Possible values are:

Upper All ACCEPT statements convert keystrokes to upper case.
Lower All ACCEPT statements convert keystrokes to lower case.
Both (default) No translation.

CASE may be overridden with the settings of the "UPPER" and "LOWER" keywords on individual ACCEPT statements. See the ACUCOBOL-GT Reference Guide, Section 6.4.9 "Common Screen Options", for details.

The configuration variable KBD_CASE is also supported.


Note: The value of KEYBOARD CASE does not affect controls. To effect the same result on controls, use the UPPER or LOWER phrase on the ACCEPT statement.
3. CHECK-NUMBERS=value

If value is "No", any data can be entered in numeric or numeric-edited fields that have the CONVERT phrase specified; non-numeric data is removed prior to conversion. If value is "Yes" (default), a non-numeric entry generates an error message and forces the user to re-enter the field. If value is set to "Validate", the runtime also checks to ensure that the numbers entered are valid, as described by the PICTURE clause for that field.

4. CURSOR-PAST-END=value

If value is "Yes", allows the cursor to move one character past the end of an input field instead of being positioned on the last character ("No", the default). Input is inhibited in either case.

5. DATA-RANGE=value

Value
defines the range of ASCII numbers that are accepted into an input field. Two decimal numbers, separated by a comma, express the lower and upper bounds of the range. The maximum range is "1,255". The default range is "32,255". Note that if the same number(s) are included in both the DATA-RANGE and EXCEPTION-RANGE, then the DATA-RANGE takes precedence.

6. EXCEPTION-RANGE=value

Value states a range of numbers. A key whose ASCII value falls within that range generates an exception condition value that matches the ASCII value of the key. That value is returned in the EXCEPTION clause or the CONTROL KEY clause of the ACCEPT statement. The default range is "1,31". A character in this range that is also defined by a KEYSTROKE variable acts as defined by that KEYSTROKE variable. Note that if the same number(s) are included in both the DATA-RANGE and EXCEPTION-RANGE, then the DATA-RANGE takes precedence.

7. IMPLIED-DECIMAL=value

If value is "Yes", an implied decimal point is inserted when the user does not explicitly type a decimal point. The last n digits of the user's input are to the right of the decimal point, where n is the number of decimal places specified in the receiving field. Affects only numeric or numeric-edited fixed-point fields that are input with conversion, either explicit or implicit. Default value is "No".

8. RM-2-DEFAULT-HANDLING=value
If value is "Yes", ACCEPT fields that do not receive any input (for example, the user just types <return>) are left unchanged, rather than being filled with spaces. Setting value to "Yes" is recommended only if you are converting from RM/COBOL version 2.

9. SCREEN-DEFAULT=value

If value is "Yes", default data is taken from the screen for any ACCEPT statement that does not have a default value specified. Also allows user to update the current screen contents. Default value is "No".