BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
boubou31
Calcite | Level 5

Hey guys, 
I thougt i was at the end of my journey, but surprise i'm not ! 
Now that i have my data in a proper data set i want to export it to a .csv file in my computer. But SAS doesn't want to find my file. In fact it telling me that he did it succesfully but nothing appen.

I assume it's because i'm using it by a browse, so it just have the access to the file in his server no ?
And if it's so, how should i do to retrieve my work ? 
Thanks for you advice ! 

options mprint symbolgen mlogic;

proc sql;
	%if %sysfunc(exist(WORK.IMPORT5)) %then %do;
	drop table WORK.IMPORT5;
	%end;
	%if %sysfunc(exist(WORK.IMPORT5, VIEW)) %then %do;
	drop view WORK.IMPORT5;
	%end;
quit;

FILENAME REFFILE FILESRVC 
	FOLDERPATH="/Users/olivier.perruchet@gmail.com/Zebrys" 
	FILENAME="integ_narr_1_norm_tiny_1.txt";

PROC IMPORT DATAFILE=REFFILE DBMS=CSV OUT=WORK.IMPORT5;
	GETNAMES=no;
	DATAROW=1;
RUN;

PROC CONTENTS DATA=WORK.IMPORT5;
RUN;

%macro main;
	%DO i=1 %to 2;
		%let temps_debut_mean = %sysfunc(time());

		proc means data=work.import5 mean;
		run;

		%let temps_fin_mean = %sysfunc(time());
		%let temps_debut_median = %sysfunc(time());

		proc means data=work.import5 median;
		run;

		%let temps_fin_median = %sysfunc(time());

		data resultat&i; /* Ici je créer une table résultat pour chaque calcul*/
			length step $10;
			retain step;
			retain duree;
			step="Mean";
			duree=round(&temps_fin_mean. - &temps_debut_mean., 0.001);
			output;
			step="Median";
			duree=round(&temps_fin_median. - &temps_debut_median., 0.001);
			output;
		run;

	%end;
	run;

	%Macro EmpilTable; /* Je compile toute mes tables */

		Data Combine;
			Set %Do I=1 %To 2;

				resultat&i. 
			%End;
			;
		Run;

	%Mend EmpilTable;
/* Je rend la table combien qui contient tous mes calculs */
	%EmpilTable %mend;
	%main;

/* J'envoie ma table dans mon fichier */
proc export data=combine
outfile="C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx"
/* this first outfile was my first try to have access to my computer. * /
	outfile="C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx"
/* outfile="Users/olivier.perruchet@gmail.com/Zebrys/resultat.csv"	 */
DBMS=CSV REPLACE;
delimiter= ";";
run;
MLOGIC(EMPILTABLE):  Ending execution.
MLOGIC(MAIN):  Ending execution.
552  
553  /* J'envoie ma table dans mon fichier */
554  proc export data=combine
555  outfile="C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx"
556  /* this first outfile was my first try to have access to my computer. * /
557  outfile="C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx"
558  /* outfile="Users/olivier.perruchet@gmail.com/Zebrys/resultat.csv" */
559  DBMS=CSV REPLACE;
560  delimiter= ";";
561  run;
NOTE: Unable to open parameter catalog: SASUSER.PARMS.PARMS.SLIST in update mode. Temporary parameter values will be saved to 
WORK.PARMS.PARMS.SLIST.
562   /**********************************************************************
563   *   PRODUCT:   SAS
564   *   VERSION:   V.03.05
565   *   CREATOR:   External File Interface
566   *   DATE:      07MAY20
567   *   DESC:      Generated SAS Datastep Code
568   *   TEMPLATE SOURCE:  (None Specified.)
569   ***********************************************************************/
570      data _null_;
571      %let _EFIERR_ = 0; /* set the ERROR detection macro variable */
572      %let _EFIREC_ = 0;     /* clear export record count macro variable */
573      file 'C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx' delimiter=';' DSD DROPOVER lrecl=32767;
574      if _n_ = 1 then        /* write column names or labels */
575       do;
576         put
577            "step"
578         ';'
579            "duree"
580         ;
581       end;
582     set  COMBINE   end=EFIEOD;
583         format step $10. ;
584         format duree best12. ;
585       do;
586         EFIOUT + 1;
587         put step $ @;
588         put duree ;
589         ;
590       end;
591      if _ERROR_ then call symputx('_EFIERR_',1);  /* set ERROR detection macro variable */
592      if EFIEOD then call symputx('_EFIREC_',EFIOUT);
593      run;
NOTE: The file 'C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx' is:
      
      Filename=/opt/sas/viya/config/var/tmp/compsrv/default/0e1faa35-897a-40c7-9599-d2e1ac3b0ed2/SAS_work047B00002930_sasserver.demo
      .sas.com/C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx,
      Owner Name=olivier.perruchet@gmail.com,
      Group Name=sas,Access Permission=-rw-r--r--,
      Last Modified=07May2020:15:56:10
NOTE: 5 records were written to the file 'C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx'.
      The minimum record length was 10.
      The maximum record length was 12.
NOTE: There were 4 observations read from the data set WORK.COMBINE.
NOTE: DATA statement used (Total process time):
      real time           0.00 seconds
      cpu time            0.01 seconds
      
4 records created in C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx from COMBINE.
  
  
NOTE: "C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx" file was successfully created.
NOTE: PROCEDURE EXPORT used (Total process time):
      real time           0.04 seconds
      cpu time            0.07 seconds
      
594  
595  %studio_hide_wrapper;
MLOGIC(STUDIO_HIDE_WRAPPER):  Beginning execution.
MLOGIC(STUDIO_HIDE_WRAPPER):  %GLOBAL  _STUDIONOTES
MLOGIC(STUDIO_HIDE_WRAPPER):  %GLOBAL  _STUDIOSOURCE
MLOGIC(STUDIO_HIDE_WRAPPER):  %GLOBAL  _STUDIOSTIMER
SYMBOLGEN:  Macro variable _STUDIONOTES resolves to 
MLOGIC(STUDIO_HIDE_WRAPPER):  %IF condition &_studionotes = is TRUE
MLOGIC(STUDIO_HIDE_WRAPPER):  %LET (variable name is _STUDIONOTES)
MPRINT(STUDIO_HIDE_WRAPPER):   options nonotes;
SYMBOLGEN:  Macro variable _STUDIOSOURCE resolves to 
MLOGIC(STUDIO_HIDE_WRAPPER):  %IF condition &_studiosource = is TRUE
MLOGIC(STUDIO_HIDE_WRAPPER):  %LET (variable name is _STUDIOSOURCE)
MPRINT(STUDIO_HIDE_WRAPPER):   options nosource;
SYMBOLGEN:  Macro variable _STUDIOSTIMER resolves to 
MLOGIC(STUDIO_HIDE_WRAPPER):  %IF condition &_studiostimer = is TRUE
MLOGIC(STUDIO_HIDE_WRAPPER):  %LET (variable name is _STUDIOSTIMER)
MPRINT(STUDIO_HIDE_WRAPPER):   options nostimer;
MLOGIC(STUDIO_HIDE_WRAPPER):  Ending execution.
SYMBOLGEN:  Macro variable GRAPHTERM resolves to GOPTIONS NOACCESSIBLE;
MLOGIC(STUDIO_RESTORE_WRAPPER):  Beginning execution.
MLOGIC(STUDIO_RESTORE_WRAPPER):  %GLOBAL  _STUDIONOTES
MLOGIC(STUDIO_RESTORE_WRAPPER):  %GLOBAL  _STUDIOSOURCE
MLOGIC(STUDIO_RESTORE_WRAPPER):  %GLOBAL  _STUDIOSTIMER
SYMBOLGEN:  Macro variable _STUDIONOTES resolves to NOTES
MPRINT(STUDIO_RESTORE_WRAPPER):   options NOTES;
SYMBOLGEN:  Macro variable _STUDIOSOURCE resolves to SOURCE
MPRINT(STUDIO_RESTORE_WRAPPER):   options SOURCE;
SYMBOLGEN:  Macro variable _STUDIOSTIMER resolves to STIMER
MPRINT(STUDIO_RESTORE_WRAPPER):   options STIMER;
MLOGIC(STUDIO_RESTORE_WRAPPER):  %LET (variable name is _STUDIONOTES)
MLOGIC(STUDIO_RESTORE_WRAPPER):  %LET (variable name is _STUDIOSOURCE)
MLOGIC(STUDIO_RESTORE_WRAPPER):  %LET (variable name is _STUDIOSTIMER)
MLOGIC(STUDIO_RESTORE_WRAPPER):  Ending execution.
606  
607  

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
Kurt_Bremser
Super User

If you work in a client/server environment, or use a browser to access SAS Studio on a remote server, the file will end up there; either download it (in SAS Studio, find the file in the explorer panel, right-click, and download) from within SAS, or use a file transfer utility (like WinSCP) to copy the file.

If you use Enterprise Guide, it provides a File Copy task for this.

View solution in original post

5 REPLIES 5
Reeza
Super User

So you don't find the file at:

C:\Users\Olivier\Desktop\Zebrys\SAS\CR_2_ETAPE_1.xlsx

SAS log is rarely wrong about stuff like that.

 

If you are operating on a server, you can usually right click the file and download or use the COPY FILE task in EG to move the file to your local drive. I think if you're using Base SAS and have it locally installed you can work both on the server or locally with no issue - one reason I preferred Base over EG but a security issue at some companies.

 

 

boubou31
Calcite | Level 5
In fact the file is here but empty, and i create it before that process.
Kurt_Bremser
Super User

If you work in a client/server environment, or use a browser to access SAS Studio on a remote server, the file will end up there; either download it (in SAS Studio, find the file in the explorer panel, right-click, and download) from within SAS, or use a file transfer utility (like WinSCP) to copy the file.

If you use Enterprise Guide, it provides a File Copy task for this.

boubou31
Calcite | Level 5
Ok well i will do that, thanks !

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
Mastering the WHERE Clause in PROC SQL

SAS' Charu Shankar shares her PROC SQL expertise by showing you how to master the WHERE clause using real winter weather data.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 5 replies
  • 1566 views
  • 0 likes
  • 3 in conversation