Stop sas from changing direction with inputs

The STOP statement causes SAS to stop processing the current DATA step immediately and resume processing statements after the end of the current DATA step.

SAS outputs a data set for the current DATA step. However, the observation being processed when STOP executes is not added. The STOP statement can be used alone or in an IF-THEN statement or SELECT group.

Use STOP with any features that read SAS data sets using random access methods, such as the POINT= option in the SET statement. Because SAS does not detect an end-of-file with this access method, you must include program statements to prevent continuous processing of the DATA step.

stop;
if idcode=9999 then stop;
select (a); when (0) output; otherwise stop; end;

This example shows how to use STOP to avoid an infinite loop within a DATA step when you are using random access methods:

data sample; do sampleobs=1 to totalobs by 10; set master.research point=sampleobs nobs=totalobs; output; end; stop; run;