DATA Step, Macro, Functions and more

Error when running proc export to create file on windows server

Reply
Frequent Contributor
Posts: 82

Error when running proc export to create file on windows server

I am attemping to read a sas table and write the output to a .csv file on windows server.  Seems pretty easy... but I can't get it to work.  I am getting error 'insufficient priveleges', however, I looks like the statement has put a sasbase library in fron of the windows location to put my exported file.  I don't understand why it is looking at sasbase when I am directing it in the export opens to the windows path.  Of course, this is needed within an hour!  I have never done an export like this. Can anyone offer any suggestionsj

.

Here is my code:

PROC SQL;

/* Development */

   CREATE TABLE WORK.Sales_Extract AS

   SELECT *

     FROM SALES.SALES_TABLE;

QUIT;

 

PROC EXPORT DATA=WORK.Sales_Extract

           OUTFILE='c:\Data\Extracts\SalesExtract.csv'

           dbms=csv;

           DELIMITER=',';

           PUTNAMES=yes;

RUN;

 

ERROR: Insufficient authorization to access /sasbase/SAS9.2/config/Lev1/SASApp/c:\Data\Extracts\SalesExtract.csv.

Super User
Posts: 11,343

Re: Error when running proc export to create file on windows server

Posted in reply to ncsthbell

Large economy size hint: Compare the place you tried to write and the location referenced in the error message. The combination of / and \ tells me that you are likely running with SAS running on a Unix server and you don't have permissions to write to the disks on the server.

 

You may need to talk to your SAS admin about how to direct output back to your PC instead of to locations on the server.

Super User
Posts: 19,855

Re: Error when running proc export to create file on windows server

Posted in reply to ncsthbell
Your data is on the server, not on your C drive. You can export it to the server and then FTP it off. Are you using Base SAS?
If so you may be able to use the following to get it to your local drive:

libname rmtwork slibref=work server=YOURSERVER;

Then do a proc export with: RMTWORK instead of WORK.

Ask a Question
Discussion stats
  • 2 replies
  • 149 views
  • 0 likes
  • 3 in conversation