1
0
mirror of https://github.com/sasjs/core.git synced 2026-06-08 20:10:20 +00:00

Compare commits

...

14 Commits

Author SHA1 Message Date
4gl a759aa9915 fix: using 128 instead of 131 in _debug due to compute task bug 2026-05-13 14:18:47 +01:00
Allan Bowe 1244aff5e4 Merge pull request #424 from sasjs/exectask
Exectask
2026-05-13 14:06:38 +01:00
github-actions 4934e6675e chore: updating all.sas 2026-05-13 13:04:37 +00:00
4gl 5f5fb0116a fix: adding weboutBEGIN/END when exectask=true 2026-05-13 14:04:13 +01:00
Allan Bowe 9a725b9770 Merge pull request #423 from sasjs/CS0409737
Cs0409737
2026-05-13 09:59:47 +01:00
github-actions 6c77556fdb chore: updating all.sas 2026-05-13 08:57:58 +00:00
4gl 0e37bff1ee fix: workaround for sas track CS0409737 2026-05-13 09:57:33 +01:00
Allan Bowe bb6aced478 Merge pull request #422 from sasjs/exectasks
Exectasks
2026-05-12 14:03:31 +01:00
github-actions 96d42b9f66 chore: updating all.sas 2026-05-12 13:02:35 +00:00
4gl 59f8303b19 chore: ensuring mv_createwebservice is rebuilt on mv_webout change 2026-05-12 14:01:38 +01:00
github-actions 0599c4d597 chore: updating all.sas 2026-05-12 12:43:06 +00:00
4gl 356d3644e5 feat: support for Viya Compute Tasks 2026-05-12 13:42:37 +01:00
4gl ef7e8e051f chore: updating tests around mv_createfolder 2026-05-12 13:25:36 +01:00
4gl aa35317126 fix: doc header invocation for sidebar 2026-05-01 17:14:31 +01:00
10 changed files with 111 additions and 29 deletions
+1
View File
@@ -82,6 +82,7 @@ jobs:
rm -rf *.svg
rm -rf search
cp -R ../sasjsbuild/docs/* .
ls
git config user.name sasjs
echo 'core.sasjs.io' > CNAME
git add .
+1
View File
@@ -26,6 +26,7 @@ jobs:
git config user.email github-actions@github.com
python3 build.py
git add all.sas
git add viya/mv_createwebservice.sas
git commit -m "chore: updating all.sas" --allow-empty
git push
+36 -9
View File
@@ -25291,7 +25291,6 @@ options noquotelenmax;
run;
%end;
%if &SYS_PROCHTTP_STATUS_CODE=200 %then %do;
%*put &sysmacroname &newpath exists so grab the follow on link ;
data _null_;
set &libref1..links;
if rel='createChild' then
@@ -26312,7 +26311,7 @@ data _null_;
put ' ,showmeta=N,maxobs=MAX,workobs=0 ';
put '); ';
put '%global _webin_file_count _webin_fileuri _debug _omittextlog _webin_name ';
put ' sasjs_tables SYS_JES_JOB_URI; ';
put ' sasjs_tables SYS_JES_JOB_URI _EXECUTIONTASKS; ';
put '%if %index("&_debug",log) %then %let _debug=131; ';
put ' ';
put '%local i tempds table; ';
@@ -26327,6 +26326,11 @@ data _null_;
put ' %let _webin_file_count=%eval(&_webin_file_count+0); ';
put ' %let _webin_fileuri1=&_webin_fileuri; ';
put ' %let _webin_name1=&_webin_name; ';
put ' %if &_EXECUTIONTASKS=true %then %do; ';
put ' /* TODO - remove this once SAS Track CS0409737 is resolved */ ';
put ' /* links: https://github.com/sasjs/adapter/issues/884 */ ';
put ' %if %upcase(&_webin_name)=_SASJS_NOOP %then %let _webin_file_count=0; ';
put ' %end; ';
put ' %end; ';
put ' ';
put ' /* if the sasjs_tables param is passed, we expect param based upload */ ';
@@ -26367,8 +26371,12 @@ data _null_;
put ' %end; ';
put ' %else %do i=1 %to &_webin_file_count; ';
put ' /* read in any files that are sent */ ';
put ' /* this part needs refactoring for wide files */ ';
put ' filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999; ';
put ' %if &_EXECUTIONTASKS=true %then %do; ';
put ' filename indata "%sysfunc(pathname(&&_webin_fileref&i))" lrecl=999999; ';
put ' %end; ';
put ' %else %do; ';
put ' filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999; ';
put ' %end; ';
put ' data _null_; ';
put ' infile indata termstr=crlf lrecl=32767; ';
put ' input; ';
@@ -26406,6 +26414,9 @@ data _null_;
put ' ';
put ' /* setup json */ ';
put ' data _null_;file &fref; ';
put ' %if %str(&_debug) ge 131 and &_EXECUTIONTASKS=true %then %do; ';
put ' put ''>>weboutBEGIN<<''; ';
put ' %end; ';
put ' put ''{"SYSDATE" : "'' "&SYSDATE" ''"''; ';
put ' put '',"SYSTIME" : "'' "&SYSTIME" ''"''; ';
put ' run; ';
@@ -26518,7 +26529,9 @@ data _null_;
put ' memsize=quote(cats(memsize)); ';
put ' put '',"MEMSIZE" : '' memsize; ';
put ' put "}"; ';
put ' ';
put ' %if %str(&_debug) ge 131 and &_EXECUTIONTASKS=true %then %do; ';
put ' put ''>>weboutEND<<''; ';
put ' %end; ';
put ' %if %upcase(&fref) ne _WEBOUT and &stream=Y %then %do; ';
put ' data _null_; rc=fcopy("&fref","_webout");run; ';
put ' %end; ';
@@ -30429,7 +30442,7 @@ filename &fref1 clear;
,showmeta=N,maxobs=MAX,workobs=0
);
%global _webin_file_count _webin_fileuri _debug _omittextlog _webin_name
sasjs_tables SYS_JES_JOB_URI;
sasjs_tables SYS_JES_JOB_URI _EXECUTIONTASKS;
%if %index("&_debug",log) %then %let _debug=131;
%local i tempds table;
@@ -30444,6 +30457,11 @@ filename &fref1 clear;
%let _webin_file_count=%eval(&_webin_file_count+0);
%let _webin_fileuri1=&_webin_fileuri;
%let _webin_name1=&_webin_name;
%if &_EXECUTIONTASKS=true %then %do;
/* TODO - remove this once SAS Track CS0409737 is resolved */
/* links: https://github.com/sasjs/adapter/issues/884 */
%if %upcase(&_webin_name)=_SASJS_NOOP %then %let _webin_file_count=0;
%end;
%end;
/* if the sasjs_tables param is passed, we expect param based upload */
@@ -30484,8 +30502,12 @@ filename &fref1 clear;
%end;
%else %do i=1 %to &_webin_file_count;
/* read in any files that are sent */
/* this part needs refactoring for wide files */
filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999;
%if &_EXECUTIONTASKS=true %then %do;
filename indata "%sysfunc(pathname(&&_webin_fileref&i))" lrecl=999999;
%end;
%else %do;
filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999;
%end;
data _null_;
infile indata termstr=crlf lrecl=32767;
input;
@@ -30523,6 +30545,9 @@ filename &fref1 clear;
/* setup json */
data _null_;file &fref;
%if %str(&_debug) ge 131 and &_EXECUTIONTASKS=true %then %do;
put '>>weboutBEGIN<<';
%end;
put '{"SYSDATE" : "' "&SYSDATE" '"';
put ',"SYSTIME" : "' "&SYSTIME" '"';
run;
@@ -30635,7 +30660,9 @@ filename &fref1 clear;
memsize=quote(cats(memsize));
put ',"MEMSIZE" : ' memsize;
put "}";
%if %str(&_debug) ge 131 and &_EXECUTIONTASKS=true %then %do;
put '>>weboutEND<<';
%end;
%if %upcase(&fref) ne _WEBOUT and &stream=Y %then %do;
data _null_; rc=fcopy("&fref","_webout");run;
%end;
+1
View File
@@ -21,6 +21,7 @@
<link href="$relpath^tabs.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="$relpath^jquery.js"></script>
<script type="text/javascript" src="$relpath^dynsections.js"></script>
<script type="text/javascript" src="$relpath^cookie.js"></script>
$treeview $search $mathjax
<link href="$relpath^$stylesheet" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" href="$relpath^favicon.ico" type="image/x-icon" />
+1 -4
View File
@@ -25,10 +25,7 @@
},
"testConfig": {
"initProgram": "tests/testinit.sas",
"termProgram": "tests/testterm.sas",
"macroVars": {
"mcTestAppLoc": "/Public/temp/macrocore"
}
"termProgram": "tests/testterm.sas"
},
"defaultTarget": "server",
"targets": [
+2 -1
View File
@@ -10,7 +10,7 @@
**/
/* location in metadata or SAS Drive for temporary files */
%let mcTestAppLoc=/Public/testresults/sasjs_core/%mf_uid();
%let mcTestAppLoc=/Users/&sysuserid/testresults/sasjs_core/%mf_uid();
/* set defaults */
%mp_init()
@@ -23,6 +23,7 @@ options lrecl=80;
%macro loglevel();
%if "&_debug"="2477" or "&_debug"="fields,log,trace" or "&_debug"="131"
or "&_debug"="128"
%then %do;
%put debug mode activated;
options mprint mprintnest;
+30 -3
View File
@@ -5,6 +5,7 @@
<h4> SAS Macros </h4>
@li mf_uid.sas
@li mp_assert.sas
@li mp_assertscope.sas
@li mv_createfolder.sas
@li mv_deleteviyafolder.sas
@li mv_getfoldermembers.sas
@@ -15,7 +16,11 @@
%let folder=%mf_uid();
/* create a folder */
%mp_assertscope(SNAPSHOT)
%mv_createfolder(path=&mcTestAppLoc/temp/&folder/&folder)
%mp_assertscope(COMPARE, ignorelist=MC0_JADP1LEN MC0_JADP2LEN MC0_JADPNUM
MC0_JADVLEN MC2_JADP1LEN MC2_JADP2LEN MC2_JADPNUM MC2_JADVLEN
)
%mv_getfoldermembers(root=&mcTestAppLoc/temp/&folder, outds=work.folders)
@@ -32,17 +37,39 @@ run;
)
/* create a folder without output dataset as part of the original macro */
%mv_createfolder(path=&mcTestAppLoc/temp/&folder/folder2,outds=folders2)
%mv_createfolder(path=&mcTestAppLoc/temp/&folder/f2
,outds=folders2,mdebug=&sasjs_mdebug
)
%let test=0;
data _null_;
set work.folders2;
putlog (_all_)(=);
if not missing(self_uri) and not missing(parent_uri)
then call symputx('test2',1);
if not missing(self_uri) then call symputx('test2',1);
run;
%mp_assert(
iftrue=(&test2=1),
desc=Check if outds param works
)
/* create a folder with full stops */
%let newfolder=%mf_uid().2.1;
%mv_createfolder(path=&mcTestAppLoc/temp/&newfolder
,outds=work.folders3
,mdebug=&sasjs_mdebug
)
%mv_getfoldermembers(root=&mcTestAppLoc/temp, outds=work.folders3)
%let test3=0;
data _null_;
set work.folders3;
putlog (_all_)(=);
if name="&newfolder" then call symputx('test3',1);
run;
%mp_assert(
iftrue=(&test3=1),
desc=Check if folder with full stops can be successfully created
)
-1
View File
@@ -145,7 +145,6 @@ options noquotelenmax;
run;
%end;
%if &SYS_PROCHTTP_STATUS_CODE=200 %then %do;
%*put &sysmacroname &newpath exists so grab the follow on link ;
data _null_;
set &libref1..links;
if rel='createChild' then
+18 -4
View File
@@ -594,7 +594,7 @@ data _null_;
put ' ,showmeta=N,maxobs=MAX,workobs=0 ';
put '); ';
put '%global _webin_file_count _webin_fileuri _debug _omittextlog _webin_name ';
put ' sasjs_tables SYS_JES_JOB_URI; ';
put ' sasjs_tables SYS_JES_JOB_URI _EXECUTIONTASKS; ';
put '%if %index("&_debug",log) %then %let _debug=131; ';
put ' ';
put '%local i tempds table; ';
@@ -609,6 +609,11 @@ data _null_;
put ' %let _webin_file_count=%eval(&_webin_file_count+0); ';
put ' %let _webin_fileuri1=&_webin_fileuri; ';
put ' %let _webin_name1=&_webin_name; ';
put ' %if &_EXECUTIONTASKS=true %then %do; ';
put ' /* TODO - remove this once SAS Track CS0409737 is resolved */ ';
put ' /* links: https://github.com/sasjs/adapter/issues/884 */ ';
put ' %if %upcase(&_webin_name)=_SASJS_NOOP %then %let _webin_file_count=0; ';
put ' %end; ';
put ' %end; ';
put ' ';
put ' /* if the sasjs_tables param is passed, we expect param based upload */ ';
@@ -649,8 +654,12 @@ data _null_;
put ' %end; ';
put ' %else %do i=1 %to &_webin_file_count; ';
put ' /* read in any files that are sent */ ';
put ' /* this part needs refactoring for wide files */ ';
put ' filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999; ';
put ' %if &_EXECUTIONTASKS=true %then %do; ';
put ' filename indata "%sysfunc(pathname(&&_webin_fileref&i))" lrecl=999999; ';
put ' %end; ';
put ' %else %do; ';
put ' filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999; ';
put ' %end; ';
put ' data _null_; ';
put ' infile indata termstr=crlf lrecl=32767; ';
put ' input; ';
@@ -688,6 +697,9 @@ data _null_;
put ' ';
put ' /* setup json */ ';
put ' data _null_;file &fref; ';
put ' %if %str(&_debug) ge 131 and &_EXECUTIONTASKS=true %then %do; ';
put ' put ''>>weboutBEGIN<<''; ';
put ' %end; ';
put ' put ''{"SYSDATE" : "'' "&SYSDATE" ''"''; ';
put ' put '',"SYSTIME" : "'' "&SYSTIME" ''"''; ';
put ' run; ';
@@ -800,7 +812,9 @@ data _null_;
put ' memsize=quote(cats(memsize)); ';
put ' put '',"MEMSIZE" : '' memsize; ';
put ' put "}"; ';
put ' ';
put ' %if %str(&_debug) ge 131 and &_EXECUTIONTASKS=true %then %do; ';
put ' put ''>>weboutEND<<''; ';
put ' %end; ';
put ' %if %upcase(&fref) ne _WEBOUT and &stream=Y %then %do; ';
put ' data _null_; rc=fcopy("&fref","_webout");run; ';
put ' %end; ';
+21 -7
View File
@@ -55,14 +55,14 @@
,showmeta=N,maxobs=MAX,workobs=0
);
%global _webin_file_count _webin_fileuri _debug _omittextlog _webin_name
sasjs_tables SYS_JES_JOB_URI;
%if %index("&_debug",log) %then %let _debug=131;
sasjs_tables SYS_JES_JOB_URI _EXECUTIONTASKS;
%if %index("&_debug",log) %then %let _debug=128;
%local i tempds table;
%let action=%upcase(&action);
%if &action=FETCH %then %do;
%if %upcase(&_omittextlog)=FALSE or %str(&_debug) ge 131 %then %do;
%if %upcase(&_omittextlog)=FALSE or %str(&_debug) ge 128 %then %do;
options mprint notes mprintnest;
%end;
@@ -70,6 +70,11 @@
%let _webin_file_count=%eval(&_webin_file_count+0);
%let _webin_fileuri1=&_webin_fileuri;
%let _webin_name1=&_webin_name;
%if &_EXECUTIONTASKS=true %then %do;
/* TODO - remove this once SAS Track CS0409737 is resolved */
/* links: https://github.com/sasjs/adapter/issues/884 */
%if %upcase(&_webin_name)=_SASJS_NOOP %then %let _webin_file_count=0;
%end;
%end;
/* if the sasjs_tables param is passed, we expect param based upload */
@@ -110,13 +115,17 @@
%end;
%else %do i=1 %to &_webin_file_count;
/* read in any files that are sent */
/* this part needs refactoring for wide files */
filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999;
%if &_EXECUTIONTASKS=true %then %do;
filename indata "%sysfunc(pathname(&&_webin_fileref&i))" lrecl=999999;
%end;
%else %do;
filename indata filesrvc "&&_webin_fileuri&i" lrecl=999999;
%end;
data _null_;
infile indata termstr=crlf lrecl=32767;
input;
if _n_=1 then call symputx('input_statement',_infile_);
%if %str(&_debug) ge 131 %then %do;
%if %str(&_debug) ge 128 %then %do;
if _n_<20 then putlog _infile_;
else stop;
%end;
@@ -149,6 +158,9 @@
/* setup json */
data _null_;file &fref;
%if %str(&_debug) ge 128 and &_EXECUTIONTASKS=true %then %do;
put '>>weboutBEGIN<<';
%end;
put '{"SYSDATE" : "' "&SYSDATE" '"';
put ',"SYSTIME" : "' "&SYSTIME" '"';
run;
@@ -261,7 +273,9 @@
memsize=quote(cats(memsize));
put ',"MEMSIZE" : ' memsize;
put "}";
%if %str(&_debug) ge 128 and &_EXECUTIONTASKS=true %then %do;
put '>>weboutEND<<';
%end;
%if %upcase(&fref) ne _WEBOUT and &stream=Y %then %do;
data _null_; rc=fcopy("&fref","_webout");run;
%end;