BookmarkSubscribeRSS Feed
b1958
Fluorite | Level 6

 

Hi

 

Is it possible to terminate a DS2 program with error? If so how?

 

I noticed that the Abort statement is not available in DS2.

 

Thanks.

 

4 REPLIES 4
ChrisNZ
Tourmaline | Level 20

I guess an ugly kludge could be to add something like this:

 if COND then do; DIV=0 ;DIV=1/DIV; end;  

This results in a general error and stops further processing.

s_lassen
Meteorite | Level 14

To put an error in the log, use the log metod, e.g.:

proc ds2 ;
data _NULL_;
   dcl package logger root();
   method init();
      root.log(n'error', 'you got yhis all wrong!');
   end;
enddata;
run;
quit;

To stop execution, use STOP or whatever.

b1958
Fluorite | Level 6

Hi

I ran your exact code from EG. Is it possible to get the Message out in  the regular job log?

 

 

NOTE: Writing TAGSETS.SASREPORT13(EGSR) Body file: EGSR
24         
25         GOPTIONS ACCESSIBLE;
26         proc ds2 ;
27         data _NULL_;
28            dcl package logger root();
29            method init();
30               root.log(n'error', 'you got yhis all wrong!');
31            end;
32         enddata;
33         run;
NOTE: Execution succeeded. No rows affected.
34         quit;

NOTE: PROCEDURE DS2 used (Total process time):
      real time           1.73 seconds
      cpu time            0.09 seconds
      
b1958
Fluorite | Level 6
I, ll read more about the logger package and I 'll post here if I find out something.
How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 1407 views
  • 0 likes
  • 3 in conversation