CARDIMAGE System Option

Specifies whether SAS processes source and data lines as 80-byte cards.
Valid in: Configuration file, SAS invocation, OPTIONS statement, SAS System Options window
Category: Input control: Data processing
PROC OPTIONS GROUP= INPUTCONTROL
Operating environment: CARDIMAGE is generally used in the z/OS operating environment; NOCARDIMAGE is used in other operating environments.
Note: This option can be restricted by a site administrator. For more information, see Restricted Options.
See: CARDIMAGE System Option under z/OS

Syntax

Syntax Description

CARDIMAGE
specifies that SAS source and data lines be processed as if they were punched card images—all exactly 80 bytes long and padded with blanks. That is, column 1 of a line is treated as if it immediately followed column 80 of the previous line. Therefore, tokens can be split across lines. (A token is a character or series of characters that SAS treats as a discrete word.)
Strings in quotation marks (literal tokens) that begin on one line and end on another are treated as if they contained blanks out to column 80 of the first line. Data lines longer than 80 bytes are split into two or more 80-byte lines. Data lines are not truncated regardless of their length.
NOCARDIMAGE
specifies that SAS source and data lines not be treated as if they were 80-byte card images. When NOCARDIMAGE is in effect, the end of a line is always treated as the end of the last token, except for strings in quotation marks. Strings in quotation marks can be split across lines. Other types of tokens cannot be split across lines under any circumstances. Strings in quotation marks that are split across lines are not padded with blanks.

Example

Consider the following DATA step:
data;
   x='A 
B';
run;
If CARDIMAGE is in effect, the variable X receives a value that consists of 78 characters: the A, 76 blanks, and the B. If NOCARDIMAGE is in effect, the variable X receives a value that consists of two characters: AB, with no intervening blanks.