1
0
mirror of https://github.com/sasjs/core.git synced 2026-01-03 15:40:05 +00:00

feat: adding filref option to mp_streamfile.sas

This commit is contained in:
2020-11-16 11:08:01 +01:00
parent f6cec012da
commit abccafab7b
2 changed files with 26 additions and 12 deletions

19
all.sas
View File

@@ -4111,7 +4111,7 @@ proc sql
options &etls_syntaxcheck;
%mend;/**
@file mp_streamfile.sas
@file
@brief Streams a file to _webout according to content type
@details Will set headers using appropriate functions (SAS 9 vs Viya) and send
content as a binary stream.
@@ -4129,6 +4129,7 @@ proc sql
@param contenttype= Either TEXT, ZIP, CSV, EXCEL (default TEXT)
@param inloc= /path/to/file.ext to be sent
@param inref= fileref of file to be sent (if provided, overrides `inloc`)
@param outname= the name of the file, as downloaded by the browser
@author Allan Bowe
@@ -4139,6 +4140,7 @@ proc sql
%macro mp_streamfile(
contenttype=TEXT
,inloc=
,inref=0
,outname=
)/*/STORE SOURCE*/;
@@ -4154,7 +4156,7 @@ proc sql
%end;
%else %if &platform=SASVIYA %then %do;
filename _webout filesrvc parenturi="&SYS_JES_JOB_URI" name='_webout.zip'
contenttype='application/zip'
contenttype='application/zip'
contentdisp="attachment; filename=&outname";
%end;
%end;
@@ -4168,7 +4170,7 @@ proc sql
%end;
%else %if &platform=SASVIYA %then %do;
filename _webout filesrvc parenturi="&SYS_JES_JOB_URI" name='_webout.xls'
contenttype='application/vnd.ms-excel'
contenttype='application/vnd.ms-excel'
contentdisp="attachment; filename=&outname";
%end;
%end;
@@ -4181,7 +4183,7 @@ proc sql
%end;
%else %if &platform=SASVIYA %then %do;
filename _webout filesrvc parenturi="&SYS_JES_JOB_URI" name='_webout.xls'
contenttype='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
contenttype='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
contentdisp="attachment; filename=&outname";
%end;
%end;
@@ -4214,7 +4216,7 @@ proc sql
%else %if &contentype=HTML %then %do;
%if &platform=SASVIYA %then %do;
filename _webout filesrvc parenturi="&SYS_JES_JOB_URI" name="_webout.json"
contenttype="text/html";
contenttype="text/html";
%end;
%end;
%else %do;
@@ -4222,7 +4224,12 @@ proc sql
%return;
%end;
%mp_binarycopy(inloc="&inloc",outref=_webout)
%if &inref ne 0 %then %do;
%mp_binarycopy(inref=&inref,outref=_webout)
%end;
%else %do;
%mp_binarycopy(inloc="&inloc",outref=_webout)
%end;
%mend;/**
@file mp_unzip.sas