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

Compare commits

..

9 Commits

Author SHA1 Message Date
4gl f474076a41 fix: doc site html side bar 2026-05-01 16:55:48 +01:00
4gl 98bd198dfc fix: adding maintainers attribute to package json (not a real fix, just triggering a build) 2026-05-01 15:38:13 +01:00
4gl 15e3a560b0 chore: docs build script fix 2026-05-01 15:33:10 +01:00
Allan Bowe 7448252b22 fix: use PAT for pushing docs to another repo 2026-05-01 11:15:16 +01:00
Allan Bowe 1fb52d5f73 fix: installing doxygen in pipeline 2026-05-01 09:21:26 +00:00
Allan Bowe 0c90ac8deb feat: auto-deploy docs to core.sasjs.io 2026-05-01 09:19:10 +00:00
Allan Bowe fdf0a1b514 Merge pull request #421 from sasjs/mv_getviyafileextparams
Mv getviyafileextparams
2026-04-29 12:59:00 +01:00
github-actions 4d15f4ebf5 chore: updating all.sas 2026-04-29 11:50:49 +00:00
4gl 402337a952 fix: avoid strange error when running mv_getviyafileextparams in Studio 2026-04-29 12:50:03 +01:00
8 changed files with 111 additions and 70 deletions
+24
View File
@@ -54,6 +54,7 @@ jobs:
echo "REFRESH_TOKEN=${{secrets.SAS9_4GL_IO_REFRESH_TOKEN}}" >> .env.server echo "REFRESH_TOKEN=${{secrets.SAS9_4GL_IO_REFRESH_TOKEN}}" >> .env.server
- name: Semantic Release - name: Semantic Release
id: makerelease
uses: cycjimmy/semantic-release-action@v6 uses: cycjimmy/semantic-release-action@v6
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -64,3 +65,26 @@ jobs:
npx @sasjs/cli compile job -s sasjs/utils/create_sas_package.sas -o sasjsbuild -t server npx @sasjs/cli compile job -s sasjs/utils/create_sas_package.sas -o sasjsbuild -t server
# need long duration token per https://github.com/sasjs/server/issues/307 # need long duration token per https://github.com/sasjs/server/issues/307
# npx @sasjs/cli run sasjsbuild/jobs/utils/create_sas_package.sas -t server # npx @sasjs/cli run sasjsbuild/jobs/utils/create_sas_package.sas -t server
- name: Update Docs Site
if: steps.makerelease.outputs.new_release_published == 'true'
run: |
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/* .
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"
-2
View File
@@ -5,8 +5,6 @@
![npm](https://img.shields.io/npm/dt/@sasjs/core) ![npm](https://img.shields.io/npm/dt/@sasjs/core)
![GitHub top language](https://img.shields.io/github/languages/top/sasjs/core) ![GitHub top language](https://img.shields.io/github/languages/top/sasjs/core)
[![GitHub closed issues](https://img.shields.io/github/issues-closed-raw/sasjs/core)](https://github.com/sasjs/core/issues?q=is%3Aissue+is%3Aclosed) [![GitHub closed issues](https://img.shields.io/github/issues-closed-raw/sasjs/core)](https://github.com/sasjs/core/issues?q=is%3Aissue+is%3Aclosed)
[![GitHub issues](https://img.shields.io/github/issues-raw/sasjs/core)](https://github.com/sasjs/core/issues)
![total lines](https://tokei.rs/b1/github/sasjs/core)
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. 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.
+38 -30
View File
@@ -25014,9 +25014,10 @@ run;
/* Get Viya file-extension details into some macro variables */ /* Get Viya file-extension details into some macro variables */
%mv_getViyaFileExtParms(&ext %mv_getViyaFileExtParms(&ext
,propertiesVar=viyaProperties ,propertiesVar=viyaProperties
,typeDefNameVar=viyaTypeDefName ,typeDefNameVar=viyaTypeDefName
,mdebug=&mdebug); ,mdebug=&mdebug
)
/* fetch job info */ /* fetch job info */
%local fname1; %local fname1;
@@ -25084,9 +25085,9 @@ run;
/* If properties were found then patch the file to include them */ /* If properties were found then patch the file to include them */
%if not %mf_isBlank(%superq(viyaProperties)) %then %do; %if not %mf_isBlank(%superq(viyaProperties)) %then %do;
/* Wrap the properties object in a root object also containing the file name */ /* Wrap the properties object in a root object also containing the filename */
%local viyapatch; %local viyapatch;
%let viyapatch = %sysfunc(pathname(work))/%mf_getuniquename(prefix=patch_json_); %let viyapatch=%sysfunc(pathname(work))/%mf_getuniquename(prefix=patch_json_);
data _null_; data _null_;
length line $32767; length line $32767;
file "&viyapatch" lrecl=32767; file "&viyapatch" lrecl=32767;
@@ -25106,7 +25107,7 @@ run;
run; run;
%end; %end;
/* And apply the properties to the newly created file, using the PATCH method */ /* Apply the properties to the newly created file, using the PATCH method */
%let fref=%mf_getuniquefileref(); %let fref=%mf_getuniquefileref();
filename &fref "&viyapatch"; filename &fref "&viyapatch";
%let url=&base_uri&fileuri; %let url=&base_uri&fileuri;
@@ -28727,6 +28728,7 @@ libname &libref1 clear;
@li mf_existds.sas @li mf_existds.sas
@li mf_getplatform.sas @li mf_getplatform.sas
@li mf_getuniquefileref.sas @li mf_getuniquefileref.sas
@li mf_getuniquelibref.sas
@li mf_getuniquename.sas @li mf_getuniquename.sas
@li mf_getvalue.sas @li mf_getvalue.sas
@li mf_getvarlist.sas @li mf_getvarlist.sas
@@ -28752,7 +28754,7 @@ libname &libref1 clear;
iftrue=(%mf_isBlank(&ext)) iftrue=(%mf_isBlank(&ext))
,msg=%str(No file extension provided.) ,msg=%str(No file extension provided.)
,mac=MV_GETVIYAFILEEXTPARMS ,mac=MV_GETVIYAFILEEXTPARMS
); )
%mp_abort( %mp_abort(
iftrue=(%mf_isBlank(&typeDefNameVar) and iftrue=(%mf_isBlank(&typeDefNameVar) and
@@ -28760,13 +28762,13 @@ libname &libref1 clear;
%mf_isBlank(&mediaTypeVar)) %mf_isBlank(&mediaTypeVar))
,msg=%str(MV_GETVIYAFILEEXTPARMS - No parameter was requested.) ,msg=%str(MV_GETVIYAFILEEXTPARMS - No parameter was requested.)
,mac=MV_GETVIYAFILEEXTPARMS ,mac=MV_GETVIYAFILEEXTPARMS
); )
%mp_abort( %mp_abort(
iftrue=(%mf_isBlank(&viyaFileExtRespLibDs)) iftrue=(%mf_isBlank(&viyaFileExtRespLibDs))
,msg=%str(No <libname.>dataset name provided to cache inital response.) ,msg=%str(No <libname.>dataset name provided to cache inital response.)
,mac=MV_GETVIYAFILEEXTPARMS ,mac=MV_GETVIYAFILEEXTPARMS
); )
/* Declare requested parameters as global macro vars and initialize blank */ /* Declare requested parameters as global macro vars and initialize blank */
%if not %mf_isBlank(&typeDefNameVar) %then %do; %if not %mf_isBlank(&typeDefNameVar) %then %do;
@@ -28783,9 +28785,7 @@ libname &libref1 clear;
%end; %end;
%let base_uri=%mf_getplatform(VIYARESTAPI); %let base_uri=%mf_getplatform(VIYARESTAPI);
%if &mdebug=1 %then %do; %if &mdebug=1 %then %put DEBUG: &=base_uri;
%put DEBUG: &=base_uri;
%end;
%let ext=%lowcase(&ext); %let ext=%lowcase(&ext);
@@ -28809,7 +28809,7 @@ libname &libref1 clear;
%if (&SYS_PROCHTTP_STATUS_CODE ne 200) %then %do; %if (&SYS_PROCHTTP_STATUS_CODE ne 200) %then %do;
/* To avoid a breaking change, exit early if the request failed. /* To avoid a breaking change, exit early if the request failed.
The calling process will proceed with empty requested macro variables. */ The calling process will proceed with empty macro variables. */
%put INFO: &sysmacroname File extension details were not retrieved.; %put INFO: &sysmacroname File extension details were not retrieved.;
filename &viyatypedefs clear; filename &viyatypedefs clear;
%return; %return;
@@ -28830,11 +28830,12 @@ libname &libref1 clear;
/* Convert the content of that JSON into SAS datasets */ /* Convert the content of that JSON into SAS datasets */
/* First prepare a new WORK-based folder to receive the datasets */ /* First prepare a new WORK-based folder to receive the datasets */
%local jsonworkfolder jsonlib opt_dlcreatedir; %local jsonworkfolder jsonlib opt_dlcreatedir;
%let jsonworkfolder=%sysfunc(pathname(work))/%mf_getuniquename(prefix=json_); %let jsonworkfolder=%sysfunc(pathname(work))/%mf_getuniquename(prefix=jsn_);
%let jsonlib=%mf_getuniquelibref(prefix=json); %let jsonlib=%mf_getuniquelibref(prefix=json);
/* And point a libname at it */ /* And point a libname at it */
%let opt_dlcreatedir = %sysfunc(getoption(dlcreatedir)); %let opt_dlcreatedir = %sysfunc(getoption(dlcreatedir));
options dlcreatedir; libname &jsonlib "&jsonworkfolder"; options &opt_dlcreatedir; options dlcreatedir; libname &jsonlib "&jsonworkfolder";
options &opt_dlcreatedir;
/* Read the json output once and copy datasets to its work folder */ /* Read the json output once and copy datasets to its work folder */
%local libref1; %local libref1;
@@ -28863,20 +28864,22 @@ libname &libref1 clear;
%end; /* If initial filetype query response didn't exist */ %end; /* If initial filetype query response didn't exist */
/* Find the row-group for the current file extension */ %if &mdebug %then %put DEBUG: Find the row-group for extension &ext;
%local itemRowGroup; %local itemRowGroup;
%let itemRowGroup = data _null_;
%mf_getValue( set &viyaFileExtRespLibDs;
&viyaFileExtRespLibDs where p1='items' and p2='extensions' and value="&ext";
,_viyaItemIdx call symputx('itemRowGroup',_viyaItemIdx,'l');
,filter=%quote(p1='items' and p2='extensions' and value="&ext") %if &mdebug %then %do;
); putlog (_all_)(=);
%end;
run;
%if &mdebug %then %put DEBUG: &=itemRowGroup; %if &mdebug %then %put DEBUG: &=itemRowGroup;
%if %mf_isBlank(&itemRowGroup) %then %do; %if %mf_isBlank(&itemRowGroup) %then %do;
/* extension was not found */ /* extension was not found */
%if(&mdebug=1) %then %put DEBUG: No type details found for extension "&ext".; %if &mdebug %then %put DEBUG: No type details found for extension "&ext";
%return; %return;
%end; %end;
@@ -28890,14 +28893,17 @@ libname &libref1 clear;
/* Populate typeDefName, if requested */ /* Populate typeDefName, if requested */
%if (not %mf_isBlank(&typeDefNameVar)) %then %do; %if (not %mf_isBlank(&typeDefNameVar)) %then %do;
%let &typeDefNameVar = %mf_getvalue(&dsItems,value,filter=%quote(p1="items" and p2="name")); %let &typeDefNameVar = %mf_getvalue(
%if &mdebug=1 %then %put DEBUG: &=typeDefNameVar &typeDefNameVar=&&&typeDefNameVar; &dsItems,value,filter=%quote(p1="items" and p2="name"));
%if &mdebug %then
%put DEBUG: &=typeDefNameVar &typeDefNameVar=&&&typeDefNameVar;
%end; %end;
/* Populate mediaType, if requested */ /* Populate mediaType, if requested */
%if (not %mf_isBlank(&mediaTypeVar)) %then %do; %if (not %mf_isBlank(&mediaTypeVar)) %then %do;
%let &mediaTypeVar = %mf_getvalue(&dsItems,value,filter=%quote(p1="items" and p2="mediaType")); %let &mediaTypeVar = %mf_getvalue(
%if &mdebug=1 %then %put DEBUG: &=mediaTypeVar &mediaTypeVar=&&&mediaTypeVar; &dsItems,value,filter=%quote(p1="items" and p2="mediaType"));
%if &mdebug %then %put DEBUG: &=mediaTypeVar &mediaTypeVar=&&&mediaTypeVar;
%end; %end;
/* Populate properties macro variable, if requested */ /* Populate properties macro variable, if requested */
@@ -28914,7 +28920,8 @@ libname &libref1 clear;
/* Check for 1+ properties */ /* Check for 1+ properties */
%if ( %mf_nobs(&dsProperties) = 0 ) %then %do; %if ( %mf_nobs(&dsProperties) = 0 ) %then %do;
%let &propertiesVar = %str(); %let &propertiesVar = %str();
%if &mdebug=1 %then %put DEBUG: &SYSMACRONAME - No Viya properties found for file suffix %str(%')&ext%str(%'); %if &mdebug %then %put DEBUG: &SYSMACRONAME - No Viya properties %trim(
)found for file suffix %str(%')&ext%str(%');
%end; %end;
%else %do; %else %do;
/* Properties potentially span multiple rows in the input table */ /* Properties potentially span multiple rows in the input table */
@@ -28944,7 +28951,8 @@ libname &libref1 clear;
end; end;
run; run;
%if &mdebug=1 %then %put DEBUG: &=propertiesVar &propertiesVar=&&&propertiesVar; %if &mdebug %then
%put DEBUG: &=propertiesVar &propertiesVar=&&&propertiesVar;
%end; %end;
%end; %end;
+4 -1
View File
@@ -31,5 +31,8 @@
"test": "npx @sasjs/cli test -t server", "test": "npx @sasjs/cli test -t server",
"lint": "npx @sasjs/cli lint", "lint": "npx @sasjs/cli lint",
"prepare": "git rev-parse --git-dir && git config core.hooksPath ./.git-hooks || true" "prepare": "git rev-parse --git-dir && git config core.hooksPath ./.git-hooks || true"
} },
"maintainers": [
"https://sasapps.io"
]
} }
+4 -4
View File
@@ -39,6 +39,10 @@
g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s);
})(); })();
</script> </script>
<noscript>
<p><img referrerpolicy="no-referrer-when-downgrade" src="https://analytics.4gl.io/matomo.php?idsite=6&amp;rec=1"
style="border:0;" alt="" /></p>
</noscript>
<!-- End Matomo Code --> <!-- End Matomo Code -->
</head> </head>
@@ -80,7 +84,3 @@
</div> </div>
<!--END TITLEAREA--> <!--END TITLEAREA-->
<!-- end header part --> <!-- end header part -->
</div>
</body>
</html>
@@ -80,7 +80,7 @@ options mprint;
typeDefNameVar=invalidTypeDefName, typeDefNameVar=invalidTypeDefName,
propertiesVar=invalidProperties, propertiesVar=invalidProperties,
mediaTypeVar=invalidMediaType mediaTypeVar=invalidMediaType
) )
%mp_assertscope(COMPARE %mp_assertscope(COMPARE
,ignorelist= ,ignorelist=
&mvarIgnoreList invalidTypeDefName invalidProperties invalidMediaType &mvarIgnoreList invalidTypeDefName invalidProperties invalidMediaType
+7 -6
View File
@@ -204,9 +204,10 @@ run;
/* Get Viya file-extension details into some macro variables */ /* Get Viya file-extension details into some macro variables */
%mv_getViyaFileExtParms(&ext %mv_getViyaFileExtParms(&ext
,propertiesVar=viyaProperties ,propertiesVar=viyaProperties
,typeDefNameVar=viyaTypeDefName ,typeDefNameVar=viyaTypeDefName
,mdebug=&mdebug); ,mdebug=&mdebug
)
/* fetch job info */ /* fetch job info */
%local fname1; %local fname1;
@@ -274,9 +275,9 @@ run;
/* If properties were found then patch the file to include them */ /* If properties were found then patch the file to include them */
%if not %mf_isBlank(%superq(viyaProperties)) %then %do; %if not %mf_isBlank(%superq(viyaProperties)) %then %do;
/* Wrap the properties object in a root object also containing the file name */ /* Wrap the properties object in a root object also containing the filename */
%local viyapatch; %local viyapatch;
%let viyapatch = %sysfunc(pathname(work))/%mf_getuniquename(prefix=patch_json_); %let viyapatch=%sysfunc(pathname(work))/%mf_getuniquename(prefix=patch_json_);
data _null_; data _null_;
length line $32767; length line $32767;
file "&viyapatch" lrecl=32767; file "&viyapatch" lrecl=32767;
@@ -296,7 +297,7 @@ run;
run; run;
%end; %end;
/* And apply the properties to the newly created file, using the PATCH method */ /* Apply the properties to the newly created file, using the PATCH method */
%let fref=%mf_getuniquefileref(); %let fref=%mf_getuniquefileref();
filename &fref "&viyapatch"; filename &fref "&viyapatch";
%let url=&base_uri&fileuri; %let url=&base_uri&fileuri;
+31 -24
View File
@@ -23,6 +23,7 @@
@li mf_existds.sas @li mf_existds.sas
@li mf_getplatform.sas @li mf_getplatform.sas
@li mf_getuniquefileref.sas @li mf_getuniquefileref.sas
@li mf_getuniquelibref.sas
@li mf_getuniquename.sas @li mf_getuniquename.sas
@li mf_getvalue.sas @li mf_getvalue.sas
@li mf_getvarlist.sas @li mf_getvarlist.sas
@@ -48,7 +49,7 @@
iftrue=(%mf_isBlank(&ext)) iftrue=(%mf_isBlank(&ext))
,msg=%str(No file extension provided.) ,msg=%str(No file extension provided.)
,mac=MV_GETVIYAFILEEXTPARMS ,mac=MV_GETVIYAFILEEXTPARMS
); )
%mp_abort( %mp_abort(
iftrue=(%mf_isBlank(&typeDefNameVar) and iftrue=(%mf_isBlank(&typeDefNameVar) and
@@ -56,13 +57,13 @@
%mf_isBlank(&mediaTypeVar)) %mf_isBlank(&mediaTypeVar))
,msg=%str(MV_GETVIYAFILEEXTPARMS - No parameter was requested.) ,msg=%str(MV_GETVIYAFILEEXTPARMS - No parameter was requested.)
,mac=MV_GETVIYAFILEEXTPARMS ,mac=MV_GETVIYAFILEEXTPARMS
); )
%mp_abort( %mp_abort(
iftrue=(%mf_isBlank(&viyaFileExtRespLibDs)) iftrue=(%mf_isBlank(&viyaFileExtRespLibDs))
,msg=%str(No <libname.>dataset name provided to cache inital response.) ,msg=%str(No <libname.>dataset name provided to cache inital response.)
,mac=MV_GETVIYAFILEEXTPARMS ,mac=MV_GETVIYAFILEEXTPARMS
); )
/* Declare requested parameters as global macro vars and initialize blank */ /* Declare requested parameters as global macro vars and initialize blank */
%if not %mf_isBlank(&typeDefNameVar) %then %do; %if not %mf_isBlank(&typeDefNameVar) %then %do;
@@ -79,9 +80,7 @@
%end; %end;
%let base_uri=%mf_getplatform(VIYARESTAPI); %let base_uri=%mf_getplatform(VIYARESTAPI);
%if &mdebug=1 %then %do; %if &mdebug=1 %then %put DEBUG: &=base_uri;
%put DEBUG: &=base_uri;
%end;
%let ext=%lowcase(&ext); %let ext=%lowcase(&ext);
@@ -105,7 +104,7 @@
%if (&SYS_PROCHTTP_STATUS_CODE ne 200) %then %do; %if (&SYS_PROCHTTP_STATUS_CODE ne 200) %then %do;
/* To avoid a breaking change, exit early if the request failed. /* To avoid a breaking change, exit early if the request failed.
The calling process will proceed with empty requested macro variables. */ The calling process will proceed with empty macro variables. */
%put INFO: &sysmacroname File extension details were not retrieved.; %put INFO: &sysmacroname File extension details were not retrieved.;
filename &viyatypedefs clear; filename &viyatypedefs clear;
%return; %return;
@@ -126,11 +125,12 @@
/* Convert the content of that JSON into SAS datasets */ /* Convert the content of that JSON into SAS datasets */
/* First prepare a new WORK-based folder to receive the datasets */ /* First prepare a new WORK-based folder to receive the datasets */
%local jsonworkfolder jsonlib opt_dlcreatedir; %local jsonworkfolder jsonlib opt_dlcreatedir;
%let jsonworkfolder=%sysfunc(pathname(work))/%mf_getuniquename(prefix=json_); %let jsonworkfolder=%sysfunc(pathname(work))/%mf_getuniquename(prefix=jsn_);
%let jsonlib=%mf_getuniquelibref(prefix=json); %let jsonlib=%mf_getuniquelibref(prefix=json);
/* And point a libname at it */ /* And point a libname at it */
%let opt_dlcreatedir = %sysfunc(getoption(dlcreatedir)); %let opt_dlcreatedir = %sysfunc(getoption(dlcreatedir));
options dlcreatedir; libname &jsonlib "&jsonworkfolder"; options &opt_dlcreatedir; options dlcreatedir; libname &jsonlib "&jsonworkfolder";
options &opt_dlcreatedir;
/* Read the json output once and copy datasets to its work folder */ /* Read the json output once and copy datasets to its work folder */
%local libref1; %local libref1;
@@ -159,20 +159,22 @@
%end; /* If initial filetype query response didn't exist */ %end; /* If initial filetype query response didn't exist */
/* Find the row-group for the current file extension */ %if &mdebug %then %put DEBUG: Find the row-group for extension &ext;
%local itemRowGroup; %local itemRowGroup;
%let itemRowGroup = data _null_;
%mf_getValue( set &viyaFileExtRespLibDs;
&viyaFileExtRespLibDs where p1='items' and p2='extensions' and value="&ext";
,_viyaItemIdx call symputx('itemRowGroup',_viyaItemIdx,'l');
,filter=%quote(p1='items' and p2='extensions' and value="&ext") %if &mdebug %then %do;
); putlog (_all_)(=);
%end;
run;
%if &mdebug %then %put DEBUG: &=itemRowGroup; %if &mdebug %then %put DEBUG: &=itemRowGroup;
%if %mf_isBlank(&itemRowGroup) %then %do; %if %mf_isBlank(&itemRowGroup) %then %do;
/* extension was not found */ /* extension was not found */
%if(&mdebug=1) %then %put DEBUG: No type details found for extension "&ext".; %if &mdebug %then %put DEBUG: No type details found for extension "&ext";
%return; %return;
%end; %end;
@@ -186,14 +188,17 @@
/* Populate typeDefName, if requested */ /* Populate typeDefName, if requested */
%if (not %mf_isBlank(&typeDefNameVar)) %then %do; %if (not %mf_isBlank(&typeDefNameVar)) %then %do;
%let &typeDefNameVar = %mf_getvalue(&dsItems,value,filter=%quote(p1="items" and p2="name")); %let &typeDefNameVar = %mf_getvalue(
%if &mdebug=1 %then %put DEBUG: &=typeDefNameVar &typeDefNameVar=&&&typeDefNameVar; &dsItems,value,filter=%quote(p1="items" and p2="name"));
%if &mdebug %then
%put DEBUG: &=typeDefNameVar &typeDefNameVar=&&&typeDefNameVar;
%end; %end;
/* Populate mediaType, if requested */ /* Populate mediaType, if requested */
%if (not %mf_isBlank(&mediaTypeVar)) %then %do; %if (not %mf_isBlank(&mediaTypeVar)) %then %do;
%let &mediaTypeVar = %mf_getvalue(&dsItems,value,filter=%quote(p1="items" and p2="mediaType")); %let &mediaTypeVar = %mf_getvalue(
%if &mdebug=1 %then %put DEBUG: &=mediaTypeVar &mediaTypeVar=&&&mediaTypeVar; &dsItems,value,filter=%quote(p1="items" and p2="mediaType"));
%if &mdebug %then %put DEBUG: &=mediaTypeVar &mediaTypeVar=&&&mediaTypeVar;
%end; %end;
/* Populate properties macro variable, if requested */ /* Populate properties macro variable, if requested */
@@ -210,7 +215,8 @@
/* Check for 1+ properties */ /* Check for 1+ properties */
%if ( %mf_nobs(&dsProperties) = 0 ) %then %do; %if ( %mf_nobs(&dsProperties) = 0 ) %then %do;
%let &propertiesVar = %str(); %let &propertiesVar = %str();
%if &mdebug=1 %then %put DEBUG: &SYSMACRONAME - No Viya properties found for file suffix %str(%')&ext%str(%'); %if &mdebug %then %put DEBUG: &SYSMACRONAME - No Viya properties %trim(
)found for file suffix %str(%')&ext%str(%');
%end; %end;
%else %do; %else %do;
/* Properties potentially span multiple rows in the input table */ /* Properties potentially span multiple rows in the input table */
@@ -240,7 +246,8 @@
end; end;
run; run;
%if &mdebug=1 %then %put DEBUG: &=propertiesVar &propertiesVar=&&&propertiesVar; %if &mdebug %then
%put DEBUG: &=propertiesVar &propertiesVar=&&&propertiesVar;
%end; %end;
%end; %end;