mirror of
https://github.com/yabwon/SAS_PACKAGES.git
synced 2026-01-16 02:50:05 +00:00
SAS Packages Framework, version 20251231
SAS Packages Framework, version 20251231
Changes:
- New macro: %bundlePackages().
- New macro: %unbundlePackages().
- Bug fix in %verifyPackage() macro.
- Minor updates in %generatePackage(), %listPackages(), and %relocatePackage() macros.
- Documentation updated.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
|
||||
Macro to generate SAS packages.
|
||||
|
||||
Version 20251228
|
||||
Version 20251231
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
@@ -53,7 +53,7 @@
|
||||
when empty takes buildLocation */
|
||||
)/ secure minoperator
|
||||
/*** HELP END ***/
|
||||
des = 'Macro to generate SAS packages, version 20251228. Run %generatePackage() for help info.'
|
||||
des = 'Macro to generate SAS packages, version 20251231. Run %generatePackage() for help info.'
|
||||
;
|
||||
%if (%superq(filesLocation) = ) OR (%qupcase(&filesLocation.) = HELP) %then
|
||||
%do;
|
||||
@@ -68,7 +68,7 @@ des = 'Macro to generate SAS packages, version 20251228. Run %generatePackage()
|
||||
%put ### This is short help information for the `generatePackage` macro #;
|
||||
%put #------------------------------------------------------------------------------------#;
|
||||
%put # #;
|
||||
%put # Macro to generate SAS packages, version `20251228` #;
|
||||
%put # Macro to generate SAS packages, version `20251231` #;
|
||||
%put # #;
|
||||
%put # A SAS package is a zip file containing a group #;
|
||||
%put # of SAS codes (macros, functions, data steps generating #;
|
||||
@@ -166,7 +166,7 @@ des = 'Macro to generate SAS packages, version 20251228. Run %generatePackage()
|
||||
%let filesWithCodes = WORK._%sysfunc(datetime(), hex16.)_;
|
||||
%let _DESCR_ = _%sysfunc(datetime(), hex6.)d;
|
||||
%let _LIC_ = _%sysfunc(datetime(), hex6.)l;
|
||||
%let _DUMMY_ = _%sysfunc(datetime(), hex6.)_;
|
||||
%let _DUMMY_ = d%sysfunc(datetime(), hex6.)d;
|
||||
|
||||
/* Verify source existence */
|
||||
%if 0=%sysfunc(FILEEXIST(%superq(filesLocation))) %then
|
||||
@@ -195,6 +195,16 @@ des = 'Macro to generate SAS packages, version 20251228. Run %generatePackage()
|
||||
%end;
|
||||
%put NOTE: Build location is: %superq(buildLocation).;
|
||||
|
||||
data _null_;
|
||||
length path $ 4096;
|
||||
do x='filesLocation','buildLocation';
|
||||
path = symget(x);
|
||||
str = kcompress(path,'({[<_ !@#$%^&*-=+/\?"'';:|~`>]})','pdfs');
|
||||
if str NE " " then put "NOTE: There are non-ASCII characters in the " x "path: " str
|
||||
/ "NOTE- If you are working with SAS9.4M7 or earlier it may cause problems.";
|
||||
end;
|
||||
run;
|
||||
|
||||
/* collect package metadata from the description.sas file */
|
||||
filename &_DESCR_. "&filesLocation./description.sas" lrecl = 1024;
|
||||
/* file contains licence */
|
||||
@@ -940,7 +950,7 @@ title6 "MD5 hashed fileref of package lowcase name: &_PackageFileref_.";
|
||||
title&_titleNumber_. "Package ZIP file location is: &buildLocation.";
|
||||
%end;
|
||||
|
||||
footnote1 "SAS Packages Framework, version 20251228";
|
||||
footnote1 "SAS Packages Framework, version 20251231";
|
||||
|
||||
proc print
|
||||
data = &filesWithCodes.(drop=base build folderRef fileRef rc folderid _abort_ fileId additionalContent)
|
||||
@@ -1759,7 +1769,7 @@ data _null_;
|
||||
%end;
|
||||
put +(-1) '`.;'''
|
||||
/ ' !! '' %put The macro generated: '' !! put(dtCASLudf, E8601DT19.-L) !! ";"'
|
||||
/ ' !! '' %put with the SAS Packages Framework version 20251228.;'''
|
||||
/ ' !! '' %put with the SAS Packages Framework version 20251231.;'''
|
||||
/ ' !! '' %put ****************************************************************************;'''
|
||||
/ ' !! '' %GOTO theEndOfTheMacro;'''
|
||||
/ ' !! '' %end;''' ;
|
||||
@@ -1923,7 +1933,7 @@ data _null_;
|
||||
%end;
|
||||
put +(-1) '`.; '' !!' /
|
||||
''' %put The macro generated: ''' " !! put(dtIML, E8601DT19.-L) !! " '''; '' !! ' /
|
||||
''' %put with the SAS Packages Framework version 20251228.; '' !! ' /
|
||||
''' %put with the SAS Packages Framework version 20251231.; '' !! ' /
|
||||
''' %put ****************************************************************************; '' !! ' /
|
||||
''' %GOTO theEndOfTheMacro; '' !! ' /
|
||||
''' %end; '' !! ' /
|
||||
@@ -2726,7 +2736,7 @@ data _null_;
|
||||
%end;
|
||||
|
||||
put 'put " " / @3 "---------------------------------------------------------------------" / " ";'
|
||||
/ 'put @3 "*SAS package generated by SAS Package Framework, version `20251228`*";'
|
||||
/ 'put @3 "*SAS package generated by SAS Package Framework, version `20251231`*";'
|
||||
/ "put @3 '*under `&sysscp.`(`&sysscpl.`) operating system,*';"
|
||||
/ "put @3 '*using SAS release: `&sysvlong4.`.*';"
|
||||
/ 'put " " / @3 "---------------------------------------------------------------------";';
|
||||
|
||||
Reference in New Issue
Block a user