Assigning input from a screen or file (ACCEPT)
One way to assign a value to a data item is to read the value from a screen or a file.
To enter data
from the screen, first associate the monitor
with a mnemonic-name in the SPECIAL-NAMES
paragraph.
Then use ACCEPT
to assign the line of input entered
at the screen to a data item. For example:
Environment Division.
Configuration Section.
Special-Names.
Console is Names-Input.
. . .
Accept Customer-Name From Names-Input
To read from a file instead of the screen, make the following change:
- Change
Console
to device, where device is any valid system device (for example,SYSIN
). For example:SYSIN is Names-Input
device can be a ddname that references a z/OS UNIX file system path. If this ddname is not defined and your program is running in the z/OS UNIX environment, stdin is the input source. If this ddname is not defined and your program is not running in the z/OS UNIX environment, the
ACCEPT
statement fails.
When you use the ACCEPT
statement,
you can assign a value to an alphanumeric or national group item,
or to an elementary data item that has USAGE DISPLAY
, USAGE
DISPLAY-1
, or USAGE NATIONAL
.
When
you assign a value to a USAGE NATIONAL
data
item, input data from the console is converted from the
EBCDIC code page specified in the CODEPAGE
compiler
option to national (Unicode UTF-16) representation. This is the
only case where conversion of national data is done when you use the ACCEPT
statement.
Conversion is done in this case because the input is known to be coming
from a screen.
To
have conversion done when the input data is from any other device,
use the NATIONAL-OF
intrinsic function.
CODEPAGE
ACCEPT statement (Enterprise COBOL for z/OS Language Reference)
SPECIAL-NAMES paragraph (Enterprise COBOL for z/OS Language Reference)