mirror of
https://github.com/sasjs/core.git
synced 2026-06-09 04:10:20 +00:00
Compare commits
15 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9a725b9770 | |||
| 6c77556fdb | |||
| 0e37bff1ee | |||
| bb6aced478 | |||
| 96d42b9f66 | |||
| 59f8303b19 | |||
| 0599c4d597 | |||
| 356d3644e5 | |||
| ef7e8e051f | |||
| aa35317126 | |||
| f474076a41 | |||
| 98bd198dfc | |||
| 15e3a560b0 | |||
| 7448252b22 | |||
| 1fb52d5f73 |
@@ -69,5 +69,23 @@ jobs:
|
||||
- name: Update Docs Site
|
||||
if: steps.makerelease.outputs.new_release_published == 'true'
|
||||
run: |
|
||||
export GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}
|
||||
npm run docs
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y doxygen
|
||||
npx @sasjs/cli doc -t docsonly
|
||||
git clone https://x-access-token:${{ secrets.CORESASJSIO_PAT }}@github.com/sasjs/core.github.io.git
|
||||
cd core.github.io
|
||||
rm -rf *.html
|
||||
rm -rf *.js
|
||||
rm -rf *.png
|
||||
rm -rf *.dot
|
||||
rm -rf *.css
|
||||
rm -rf *.svg
|
||||
rm -rf search
|
||||
cp -R ../sasjsbuild/docs/* .
|
||||
ls
|
||||
git config user.name sasjs
|
||||
echo 'core.sasjs.io' > CNAME
|
||||
git add .
|
||||
git commit -m "core pipeline build on $(date +%F:%H:%M:%S)"
|
||||
git push
|
||||
echo "check it out: https://sasjs.github.io/core.github.io/files.html"
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -5,8 +5,6 @@
|
||||

|
||||

|
||||
[](https://github.com/sasjs/core/issues?q=is%3Aissue+is%3Aclosed)
|
||||
[](https://github.com/sasjs/core/issues)
|
||||

|
||||
|
||||
|
||||
Much quality. Many standards. The **Macro Core** library exists to save time and development effort! Herein ye shall find a veritable host of MIT-licenced, production quality SAS macros. These are a mix of tools, utilities, functions and code generators that are useful in the context of [Application Development](https://sasapps.io) on the SAS platform (eg https://datacontroller.io). [Contributions](https://github.com/sasjs/core/blob/main/.github/CONTRIBUTING.md) are welcome.
|
||||
|
||||
@@ -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; ';
|
||||
@@ -30429,7 +30437,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 +30452,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 +30497,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;
|
||||
|
||||
+5
-2
@@ -31,5 +31,8 @@
|
||||
"test": "npx @sasjs/cli test -t server",
|
||||
"lint": "npx @sasjs/cli lint",
|
||||
"prepare": "git rev-parse --git-dir && git config core.hooksPath ./.git-hooks || true"
|
||||
}
|
||||
}
|
||||
},
|
||||
"maintainers": [
|
||||
"https://sasapps.io"
|
||||
]
|
||||
}
|
||||
@@ -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" />
|
||||
@@ -39,6 +40,10 @@
|
||||
g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s);
|
||||
})();
|
||||
</script>
|
||||
<noscript>
|
||||
<p><img referrerpolicy="no-referrer-when-downgrade" src="https://analytics.4gl.io/matomo.php?idsite=6&rec=1"
|
||||
style="border:0;" alt="" /></p>
|
||||
</noscript>
|
||||
<!-- End Matomo Code -->
|
||||
</head>
|
||||
|
||||
@@ -79,8 +84,4 @@
|
||||
</table>
|
||||
</div>
|
||||
<!--END TITLEAREA-->
|
||||
<!-- end header part -->
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
<!-- end header part -->
|
||||
@@ -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": [
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
# refresh github pages site
|
||||
rm -rf sasjsbuild/docsite
|
||||
git clone https://x-access-token:$GITHUB_TOKEN@github.com/sasjs/core.github.io.git sasjsbuild/docsite
|
||||
git clone git@github.com:sasjs/core.github.io.git sasjsbuild/docsite
|
||||
rm -rf sasjsbuild/docsite/*.html
|
||||
rm -rf sasjsbuild/docsite/*.js
|
||||
rm -rf sasjsbuild/docsite/*.png
|
||||
|
||||
+1
-1
@@ -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()
|
||||
|
||||
@@ -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
|
||||
)
|
||||
@@ -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
|
||||
|
||||
@@ -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; ';
|
||||
|
||||
+12
-3
@@ -55,7 +55,7 @@
|
||||
,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;
|
||||
@@ -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,8 +115,12 @@
|
||||
%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;
|
||||
|
||||
Reference in New Issue
Block a user