BookmarkSubscribeRSS Feed
monaghaj
Calcite | Level 5

I can use proc iml to submit sas code as long as I don't submit procs or datasteps. When I submit procs or datasteps the code doesn't run and my server connection is disconnected. 

 

For example this runs:

*Here I run some simple SAS code with outputs to the log;
%put &=SYSSCPL;

data _null_;
	put "hello";
run;

*Here I submit the same SAS code using proc iml;
proc iml;
	submit;

		%put &=SYSSCPL;

		%put "hello";
		
		*If I uncomment the code below the overall program will not run and the server loses connection. This happens for any datastep or proc.;
		*data _null_;
			*put "hello";
		*run;

	endsubmit;
quit;

The log looks like this:

                                                            The SAS System

1          ;*';*";*/;quit;run;
2          OPTIONS PAGENO=MIN;
3          %LET _CLIENTTASKLABEL='Simple_IML_SAS_call.sas';
4          %LET _CLIENTPROCESSFLOWNAME='Standalone Not In Project';
5          %LET _CLIENTPROJECTPATH='';
6          %LET _CLIENTPROJECTPATHHOST='';
7          %LET _CLIENTPROJECTNAME='';
8          %LET _SASPROGRAMFILE='I've removed this"
9          %LET _SASPROGRAMFILEHOST='I've removed this";
10         
11         ODS _ALL_ CLOSE;
12         OPTIONS DEV=SVG;
13         GOPTIONS XPIXELS=0 YPIXELS=0;
14         %macro HTML5AccessibleGraphSupported;
15             %if %_SAS_VERCOMP_FV(9,4,4, 0,0,0) >= 0 %then ACCESSIBLE_GRAPH;
16         %mend;
17         FILENAME EGHTML TEMP;
18         ODS HTML5(ID=EGHTML) FILE=EGHTML
19             OPTIONS(BITMAP_MODE='INLINE')
20             %HTML5AccessibleGraphSupported
MPRINT(HTML5ACCESSIBLEGRAPHSUPPORTED):   ACCESSIBLE_GRAPH
21             ENCODING='utf-8'
22             STYLE=HTMLBlue
23             NOGTITLE
24             NOGFOOTNOTE
25             GPATH=&sasworklocation
26         ;
NOTE: Writing HTML5(EGHTML) Body file: EGHTML
27         
28         /* Insert custom code before submitted code here */
29         %_eg_autoexec;
MPRINT(_EG_AUTOEXEC):   options nomprint nosymbolgen

NOTE: PROCEDURE PRINTTO used (Total process time):
      real time           0.00 seconds
      cpu time            0.00 seconds
      


NOTE: The infile 'I've removed this" is:
      Filename='I've removed this",
      RECFM=V,LRECL=32767,File Size (bytes)=1944,
      Last Modified=23Apr2024:11:00:01,
      Create Time=23Apr2024:10:47:14

NOTE: PROCEDURE PRINTTO used (Total process time):
real time           0.00 seconds
cpu time            0.00 seconds


NOTE: _EG_IncBiosetup did not run because [&root] already exists.

NOTE: DATA statement used (Total process time):
real time           0.00 seconds
cpu time            0.00 seconds



NOTE: DATA statement used (Total process time):
                                                            The SAS System

real time           0.00 seconds
cpu time            0.00 seconds


MPRINT(_EG_AUTOEXEC):   NOMLOGIC;
30
31         *Here I run some simple SAS code with outputs to the log;
32         %put &=SYSSCPL;
SYSSCPL=X64_SRV19
33
34         data _null_;
35         	put "hello";
36         run;

hello
NOTE: DATA statement used (Total process time):
                                                            The SAS System

real time           0.00 seconds
cpu time            0.00 seconds


37
38         *Here I submit the same SAS code using proc iml;
39         proc iml;
NOTE: IML Ready
40         	
40       !  submit;
41
42         		%put &=SYSSCPL;
43
44         		%put "hello";
45         		
46         		*If I uncomment the code below the overall program will not run and the server loses connection. This happens for any
46       ! datastep or proc.;
47         		*data _null_;
48         			*put "hello";
49         		*run;
50
51         	endsubmit;
SYSSCPL=X64_SRV19
"hello"
52         quit;
NOTE: Exiting IML.
NOTE: PROCEDURE IML used (Total process time):
real time           0.02 seconds
cpu time            0.03 seconds


53
                                                            The SAS System

54         /* Insert custom code after submitted code here */
55         %_eg_notestowarnings;
MPRINT(_EG_NOTESTOWARNINGS):   options nomprint nosymbolgen
NOTE: 70 records were read from the infile 'I've removed this".
      The minimum record length was 0.
      The maximum record length was 130.
NOTE: DATA statement used (Total process time):
      real time           0.01 seconds
      cpu time            0.01 seconds
      

MPRINT(_EG_NOTESTOWARNINGS):   NOMLOGIC;
56         
57         %LET _CLIENTTASKLABEL=;
                                                            The SAS System

58         %LET _CLIENTPROCESSFLOWNAME=;
59         %LET _CLIENTPROJECTPATH=;
60         %LET _CLIENTPROJECTPATHHOST=;
61         %LET _CLIENTPROJECTNAME=;
62         %LET _SASPROGRAMFILE=;
63         %LET _SASPROGRAMFILEHOST=;
64         
65         ;*';*";*/;quit;run;
66         ODS _ALL_ CLOSE;
67         
68         
69         QUIT; RUN;
70         

 

but this code doesn't run and my connection to the server disconnects:

 

*Here I run some simple SAS code with outputs to the log;
%put &=SYSSCPL;

data _null_;
	put "hello";
run;

*Here I submit the same SAS code using proc iml;
proc iml;
	submit;

		%put &=SYSSCPL;

		%put "hello";
		
		*If I uncomment the code below the overall program will not run and the server loses connection. This happens for any datastep or proc.;
		data _null_;
			put "hello";
		run;

	endsubmit;
quit;

I am able to use proc iml to submit R code just fine. For example this works:

proc iml;
call ExportDataSetToR("Sashelp.Class", "df" );
submit / R;
   names(df)
endsubmit;
quit;

I am using sas enterprise guide version 8.2 Update 5 (8.2.5.1277) (64-bit). 

Until recently I was able to submit sas code using proc iml just fine. My company installed a hotfix in March. Is it possible that the hotfix broke something or changed a setting so that I am no longer able to use proc iml to submit sas procs or datasteps?

 

 

1 REPLY 1
Rick_SAS
SAS Super FREQ

I suggest that you open a track with SAS Technical support. In addition to the information you've provided, please include any details of what has changed since you were last able to submit SAS procedures. Ask your admin to provide information about the recent hotfix. We'll also need information about the server side SAS server (OS and version of SAS).

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

Multiple Linear Regression in SAS

Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.

Find more tutorials on the SAS Users YouTube channel.

From The DO Loop
Want more? Visit our blog for more articles like these.
Discussion stats
  • 1 reply
  • 578 views
  • 0 likes
  • 2 in conversation