SAS Packages Framework version 20231024

SAS Packages Framework version 20231024

Modification in `%generatePackage()` macro. Situation when dependencies for package are missing is now handled more gracefully. It's still an error message, but now it ends more elegant way.
This commit is contained in:
Bart Jablonski
2023-10-24 14:48:28 +02:00
parent bd8e378829
commit 9f4143af53
14 changed files with 102 additions and 78 deletions

View File

@@ -23,7 +23,7 @@
default value 1 means "delete tests work" */
)/ secure minoperator
/*** HELP END ***/
des = 'Macro to generate SAS packages, version 20231009. Run %generatePackage() for help info.'
des = 'Macro to generate SAS packages, version 20231024. Run %generatePackage() for help info.'
;
%if (%superq(filesLocation) = ) OR (%qupcase(&filesLocation.) = HELP) %then
%do;
@@ -38,7 +38,7 @@ des = 'Macro to generate SAS packages, version 20231009. Run %generatePackage()
%put ### This is short help information for the `generatePackage` macro #;
%put #-------------------------------------------------------------------------------#;
%put # #;
%put # Macro to generate SAS packages, version `20231009` #;
%put # Macro to generate SAS packages, version `20231024` #;
%put # #;
%put # A SAS package is a zip file containing a group #;
%put # of SAS codes (macros, functions, data steps generating #;
@@ -810,7 +810,7 @@ title6 "MD5 hashed fileref of package lowcase name: &_PackageFileref_.";
title8 "Required SAS packages: %qsysfunc(compress(%superq(packageReqPackages),%str(%'%")))" ; /* " */
%end;
footnote1 "SAS Packages Framework, version 20231009";
footnote1 "SAS Packages Framework, version 20231024";
proc print data = &filesWithCodes.(drop=base folderRef fileRef rc folderid _abort_ fileId additionalContent);
run;
@@ -1276,9 +1276,21 @@ data _null_;
put ' put "ERROR: Loading package &packageName. will be aborted!";';
put ' put "ERROR- Required components are missing."; ';
put ' put "ERROR- *** STOP ***"; ';
put ' ABORT; ';
put ' end; ';
put ' run; ';
put ' call symputX("packageRequiredErrors", ';
put ' ''options ';
put ' ls = &ls_tmp. ';
put ' ps = &ps_tmp. ';
put ' &notes_tmp. ';
put ' &stimer_tmp. ';
put ' &fullstimer_tmp. ';
put ' msglevel=&msglevel_tmp. ';
put ' &source_tmp.; ';
put ' data _null_;abort;run;'', "L"); ';
put ' end; ';
put ' else ';
put ' call symputX("packageRequiredErrors", " ", "L"); ';
put ' run; ';
put ' &packageRequiredErrors. ';
%end;
@@ -1524,7 +1536,7 @@ data _null_;
%end;
put +(-1) '`.;''' /
' !! '' %put The macro generated: '' !! put(dtCASLudf, E8601DT19.-L) !! ";"' /
' !! '' %put with the SAS Packages Framework version 20231009.;''' /
' !! '' %put with the SAS Packages Framework version 20231024.;''' /
' !! '' %put ****************************************************************************;''' /
' !! '' %GOTO theEndOfTheMacro;''' /
' !! '' %end;''' ;
@@ -1697,7 +1709,7 @@ data _null_;
%end;
put +(-1) '`.; '' !!' /
''' %put The macro generated: ''' " !! put(dtIML, E8601DT19.-L) !! " '''; '' !!' /
''' %put with the SAS Packages Framework version 20231009.; '' !! ' /
''' %put with the SAS Packages Framework version 20231024.; '' !! ' /
''' %put ****************************************************************************; '' !! ' /
''' %GOTO theEndOfTheMacro; '' !! ' /
''' %end; '' !! ' /
@@ -2313,7 +2325,7 @@ data _null_;
put "put @3 'localization (only if additional content was deployed during the installation process).';" / "put ;";
%end;
put 'put "***"; put "* SAS package generated by generatePackage, version 20231009 *"; put "***";';
put 'put "***"; put "* SAS package generated by generatePackage, version 20231024 *"; put "***";';
put 'run; ' /;