I have the same problem as described in the post https://communities.sas.com/t5/ODS-and-Base-Reporting/ODS-EXCEL-in-Web-StoreProcess/m-p/270003#M1586...
Also my stored process will run in Web, I would generate a report with ODS EXCEL and user should download the file.
I tryed the solution, but I don't get a valid result. The generated file contains html and any binary data. Here the code I used:
ods _all_ close;
data _null_;
rc = stpsrv_header('Content-type','application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
rc = stpsrv_header('Content-disposition','attachment; filename=test.xlsx');
run;
%stpbegin;
ods excel file = _webout ;
ods excel style = Plateau;
proc print noobs label data=sashelp.TOURISM; run;
%stpend;
ods excel close;
Attached the generated file.
Any suggestions?
Hi
Your code should look like this:
ods excel file=_webout style=plateau;
data _null_;
rc = stpsrv_header('Content-type','application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
rc = stpsrv_header('Content-disposition','attachment; filename=test.xlsx');
run;
proc print noobs label data=sashelp.class;
run;
ods excel close;
If you use SAS Enterprise Guide to create the Stored Process, make sure EG does not automatically add the %stpbegin %stpend macros
Bruno
Hi
Your code should look like this:
ods excel file=_webout style=plateau;
data _null_;
rc = stpsrv_header('Content-type','application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
rc = stpsrv_header('Content-disposition','attachment; filename=test.xlsx');
run;
proc print noobs label data=sashelp.class;
run;
ods excel close;
If you use SAS Enterprise Guide to create the Stored Process, make sure EG does not automatically add the %stpbegin %stpend macros
Bruno
Thank you for your reply.
When I do it so, I get an exception:
javax.servlet.ServletException: Servlet execution threw an exception
com.sas.svcs.webapp.servlet.filters.LocaleFilter.onDoFilter(LocaleFilter.java:69)
com.sas.framework.webapp.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:74)
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
com.sas.svcs.webapp.servlet.filters.ThemeSupportFilter.onDoFilter(ThemeSupportFilter.java:180)
com.sas.framework.webapp.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:74)
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
Any ideas?
Hi
The proposed code worked well for me with SAS9.4 on a Linux environment.
I think it is best to contact SAS support for problems like this. See here http://support.sas.com/techsup/
Bruno
hi,
how can I print a title on the web page after export?
thanks
Niko
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
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.