Most SAS data set options can
apply to either input or output SAS data sets in DATA steps or procedure
(PROC) steps. If a data set option is associated with an input data
set, the action applies to the data set that is being read. If the
option appears in the DATA statement or after an output data set specification
in a PROC step, SAS applies the action to the output data set. In
the DATA step, data set options for output data sets must appear in
the DATA statement, not in any OUTPUT statements that might be present.
Some data set options,
such as COMPRESS=, are meaningful only when you create a SAS data
set because they set attributes that exist for the duration of the
data set. To change or cancel most data set options, you must re-create
the data set. You can change other options (such as PW= and LABEL=)
with PROC DATASETS. For more information, see
DATASETS Procedure in Base SAS Procedures Guide.
When data set options
appear on both input and output data sets in the same DATA or PROC
step, first SAS applies data set options to input data sets. Then
SAS evaluates programming statements or applies data set options to
output data sets. Likewise, data set options that are specified for
the data set being created are applied after programming statements
are processed. For example, when using the RENAME= data set option,
the new names are not associated with the variables until the DATA
step ends.
In some instances, data
set options conflict when they are used in the same statement. For
example, you cannot specify both the DROP= and KEEP= data set options
for the same variable in the same statement. Timing can also be an
issue in some cases. For example, if using KEEP= and RENAME= on a
data set specified in the SET statement, KEEP= needs to use the original
variable names. SAS processes KEEP= before the data set is read. The
new names specified in RENAME= apply to the programming statements
that follow the SET statement.