run the following data step
data test;
p=-2;
set sashelp.class point=p;
run;
There is no error message and data step fall a dead loop! I just wonder to where the pointer pointed when the value of p is negative and why no error message in log window.
Hi @Steve1964 The reason for infinite loop is because when point= option random direct access is used based on observation number, SAS can't find the "End of file" marker. Therefore you would need a STOP statement to end the datastep iteration.
Add a STOP after the set statement and take a look at the log, you should see the invalid OBS No of point=var option triggering _ERROR_ =1 .
Hi @Steve1964 The reason for infinite loop is because when point= option random direct access is used based on observation number, SAS can't find the "End of file" marker. Therefore you would need a STOP statement to end the datastep iteration.
Add a STOP after the set statement and take a look at the log, you should see the invalid OBS No of point=var option triggering _ERROR_ =1 .
Catch the best of SAS Innovate 2025 — anytime, anywhere. Stream powerful keynotes, real-world demos, and game-changing insights from the world’s leading data and AI minds.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.