From 5be2d8c76c1a1981a7242c1d7202405e23b1ffaf Mon Sep 17 00:00:00 2001 From: Bart Jablonski Date: Sat, 11 Nov 2023 17:19:06 +0100 Subject: [PATCH] SAS Packages Framework, version 20231111 SAS Packages Framework, version 20231111 - new type: kmfsnip for keyboard macro abbreviations added to the framework - documentation updated SQLinDS package [ver. 2.3.0] - KMF snippet added - documentation updated BasePlus package [ver. 1.34.0] - update in unzipArch macro - new zipArch macro added - documentation updated Packages regenerated with the latest version of SPF: - SQLinDS package [ver. 2.3.0] - BasePlus package [ver. 1.34.0] - DFA package [ver. 0.5.7] - GSM package [ver. 0.22.1] - macroArray package [ver. 1.2.1] - dynMacroArray package [ver. 0.2.7] --- README.md | 4 +- ...(a how to)- Paper 4725-2020 - extended.pdf | Bin 334365 -> 336823 bytes SPF/Macros/extendpackagesfileref.sas | 4 +- SPF/Macros/generatepackage.sas | 249 +++++++++++-- SPF/Macros/helppackage.sas | 6 +- SPF/Macros/installpackage.sas | 6 +- SPF/Macros/listpackages.sas | 6 +- SPF/Macros/loadpackage.sas | 8 +- SPF/Macros/loadpackageaddcnt.sas | 4 +- SPF/Macros/loadpackages.sas | 4 +- SPF/Macros/previewpackage.sas | 4 +- SPF/Macros/unloadpackage.sas | 4 +- SPF/Macros/verifypackage.sas | 4 +- SPF/SPFinit.md | 36 +- SPF/SPFinit.sas | 301 +++++++++++---- packages/README.md | 24 +- packages/SHA256_for_packages.txt | 8 + packages/baseplus.md | 350 ++++++++++++++---- packages/baseplus.zip | Bin 291735 -> 295726 bytes packages/dfa.md | 6 +- packages/dfa.zip | Bin 48503 -> 48636 bytes packages/dynmacroarray.zip | Bin 14488 -> 14528 bytes packages/gsm.md | 6 +- packages/gsm.zip | Bin 304391 -> 304418 bytes packages/macroarray.md | 6 +- packages/macroarray.zip | Bin 53208 -> 53233 bytes packages/sqlinds.md | 14 +- packages/sqlinds.zip | Bin 197786 -> 199811 bytes 28 files changed, 803 insertions(+), 251 deletions(-) diff --git a/README.md b/README.md index 852dd6d..309cbc1 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ Don't forget to **STAR** (:star:) the repository! :-) ### Current version: -**The latest version** of SPF is **`20231107`**. +**The latest version** of SPF is **`20231111`**. To get started with SAS Packages try this [**`Getting Started with SAS Packages`**](https://github.com/yabwon/SAS_PACKAGES/blob/main/SPF/Documentation/Getting_Started_with_SAS_Packages.pdf "Getting Started with SAS Packages") presentation (see the `./SPF/Documentation` directory). @@ -163,6 +163,8 @@ The SAS Packages Framework [(short) documentation](https://github.com/yabwon/SAS ### Updates worth mentioning: +**Update**\[November 11th, 2023\]**:** `KMFSNIP` **type for *key macro abbreviations* snippets added to the framework. (see [here](https://github.com/yabwon/SAS_PACKAGES/releases/tag/20231111 "KMF-abbreviations"))**. + **Update**\[February 7th, 2023\]**:** `ADDCNT` **type for *additional content* feature and ** `%loadPackageAddCnt()` **macro added to the framework. (see [here](https://github.com/yabwon/SAS_PACKAGES/releases/tag/20230207 "Additional Content"))**. **Update**\[December 12th, 2022\]**:** `CASLUDF` **type for CASL user defined functions added to the framework. Utility macros for for loading content in proc IML and proc CAS added. (see [here](https://github.com/yabwon/SAS_PACKAGES/releases/tag/20221212 "New Type and Utility macros"))**. diff --git a/SPF/Documentation/SAS(r) packages - the way to share (a how to)- Paper 4725-2020 - extended.pdf b/SPF/Documentation/SAS(r) packages - the way to share (a how to)- Paper 4725-2020 - extended.pdf index 69867de3003b222b3c54897ea2d58bb23f2b9619..3bf8d911df51e00c7566f7e999a1cc1d5428c8fc 100644 GIT binary patch delta 105456 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

O#-=hw4tKyxsZA!kgm3_WNg)7#b z>6KOKb$Yx`s3})PrPl-_mC#YE%4q7iC_RviqlEG#tw)dI+R8espnYU5lbrIn6xa5x zah@!avP^eZRDZrhP8C%5J})k*bY&9hj;e5hn2)oJ3Km5UBkA7BlI!v%)h&}vlEciq zG0(9|^imV5j@y|c&zO>!KIh3L)s*RalO=ksHZPKuuf$nt>J8H6E5mq9p5e$~)ypDJ zsHDib(TWQ?EXD#LS4^h94LZ8F%_iRNc)WA^UKZQ;lz*ZX{kuvjvFs7$;b>GAo55Nd zgay1NtuxylPkEW{RviYgl*>e~ewXGKpdx{-6%;E zX&yJ-GEf0Dq6a-Y_1o4o^+f1vGX*3f+Q2G(X+!RgkZhZg|6`Z(6l!+6AjvGJwR+v%C0=0r+M{p_U6U$ zZ^VA2ON(J2T~Q=luZI2Es#qtppHO4-c%A(GDSsjz<%otzM#&ET0@jD%B7zY(Dd9PC z2!ZVo^bnAw$cJz?@PrrC6uw0ntq_Z(+sGBu8ad&s(JG0TSCl0*bUiXdRNn&xL#M_o z>7v#CUQCqL@6ttQoP+0$=|eCM{h53oIr*p&Wl<5bl+CDGaFGN?bj3ziQX63hmc+L- zn}0)~`yyvsWeR&5qJaN(d*q15gzIwhJfYk=#vqr9O2lIuZu2}hq6{O&7e*Z&>Zg$_ zWCQ^K1tQGu)R3m6YSyH4}DvlC@plD)w2?P*xXKSI!)Rm(1Q4=FdhPhXM%Tc_qBCeF9D zxG;Nv_E|>Rjsd?w&!R}{8GOc@WPiJkbBa*0fbC zVv9U0;-%I*>}F=w!JlrK)3+YEtA|KnZaP;QEvgznpbV9CFdEbX-r2D4a6kreoSwLhqxOkLF`4EUU9JSxi}lqX4$iJ>R{%j)KdCFB)c2of=JNTn;sB7uQn2=o** zhHQ^vD`7Y1RR2jgLlXs>6+N@WvC%9QuC+B|Kr@DHlvrbo5-R~uD`3RcfcZ~l=nE%^ z`Uq~U7&dKe#bIN`kR&T+OAURtDySH+R46sI1A%;KumuwBs2#G4Vt>gMNKjms)w-^0 z`t(d3iqdiji{p%Uw9BhbB+?3{zMZL-I}pGtGE!U&+v^LU+Z-G1)AXqsu?>+eyfaF; ze=ERfNlY)+F@&qTbfGoEprkqNYL9SC4ghwpCd4BKZi+Icp|)2O-?nbvPm!VCg>B<; zh@oVaWE^hBXGOL9)PLGHTlQuq@H7Bkcgc#28{=s_2)3QC4s`SyaykT!GeZm1t?8hp zc0adT)*l-H`>f5#`&+8=Hx3&E26)=10B1gE_M}-80sQ|k_u&4Y!Cu3hEg(jf#ax_Z z$+`)O&iAvD!=dKj4>!ZH37+yrBa_~Y>v%z^gdGq1M*rQ(hJT_kZ160(0#CI3EL3L^ zUDgK_*8>6>32E1Hx}FGGoLo&jJTAuca%j5{3EQp3s<%T@Y933+!lMOkCs2fAz|>35 ztwM_XYfYtbu6T zj)B$%1W_OAqd6U)iuWRBgsXH!2Gs+HRoA3Zn~~xFo_OrLl#{_mTJdcq^}lPwU)8(s z0~}iff$ZKkG|Co|rwqOJrb>e_6lH+R5pHrZqdhP*Z-1PoE(Wj7dn0{;N4L~e#XDTx zi+6hFng&Y7ha0>mPCrulFJqpDJGAsORHm1?ya`oH9g)!FgI4a0>Od8T?u~28`IOjP zulBs43c#J!UNBj2c0-$5*A}klH8(5`7xZ?9agrF=4^Xb3riFpfVjTt~quc#EHdjcg zI`?=WW`8dbVefwN@VutVm9E9Gff;=%=5{YqsX#kmOwg@4B=CTM#Y;yY*d0&msaii3 zz;8+4cqqVdd?9P5T@(f0lsf_V>^m|MdhrLfQ9lDe&@ z$b|aDceQ?Y)^Gy(OW9O+l%D@ z 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 delta 103053 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�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 diff --git a/SPF/Macros/extendpackagesfileref.sas b/SPF/Macros/extendpackagesfileref.sas index 44b79cf..54fd0e9 100644 --- a/SPF/Macros/extendpackagesfileref.sas +++ b/SPF/Macros/extendpackagesfileref.sas @@ -6,7 +6,7 @@ when empty the "packages" value is used */ )/secure /*** HELP END ***/ -des = 'Macro to list directories pointed by "packages" fileref, version 20231107. Run %extendPackagesFileref(HELP) for help info.' +des = 'Macro to list directories pointed by "packages" fileref, version 20231111. Run %extendPackagesFileref(HELP) for help info.' ; %if %QUPCASE(&packages.) = HELP %then @@ -22,7 +22,7 @@ des = 'Macro to list directories pointed by "packages" fileref, version 20231107 %put ### This is short help information for the `extendPackagesFileref` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to list directories pointed by 'packages' fileref, version `20231107` #; + %put # Macro to list directories pointed by 'packages' fileref, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/generatepackage.sas b/SPF/Macros/generatepackage.sas index fac2c11..1cbb976 100644 --- a/SPF/Macros/generatepackage.sas +++ b/SPF/Macros/generatepackage.sas @@ -23,7 +23,7 @@ default value 1 means "delete tests work" */ )/ secure minoperator /*** HELP END ***/ -des = 'Macro to generate SAS packages, version 20231107. Run %generatePackage() for help info.' +des = 'Macro to generate SAS packages, version 20231111. 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 20231107. Run %generatePackage() %put ### This is short help information for the `generatePackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to generate SAS packages, version `20231107` #; + %put # Macro to generate SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -483,6 +483,16 @@ DESCRIPTION END: | | | +-abc.sas [a file with a code creating IML module ABC, _without_ "Proc IML" header] | + +-011_casludf [one file one CAS-L user defined function, + | | only plain code of the function, without "Proc CAS" header] + | | + | +-abc.sas [a file with a code creating CAS-L user defined function ABC, _without_ "Proc CAS" header] + | + +-012_kmfsnip [one file one KMF-abbreviation snippet, + | | code snipped propper tagging] + | | + | +-abc.sas [a file with a KMF-abbreviation snippet ABC, _with_ proper tagging, snippets names are in low-case] + | +-_ | +-00n_clean [if you need to clean something up after exec file execution, @@ -564,7 +574,7 @@ data &filesWithCodes.; 'FUNCTION' /*'FUNCTIONS'*/ 'FORMAT' /*'FORMATS'*/ 'IMLMODULE' 'PROTO' 'EXEC' 'CLEAN' 'LAZYDATA' 'TEST' 'CASLUDF' - 'ADDCNT' + 'ADDCNT' 'KMFSNIP' )) then do; @@ -810,7 +820,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 20231107"; +footnote1 "SAS Packages Framework, version 20231111"; proc print data = &filesWithCodes.(drop=base folderRef fileRef rc folderid _abort_ fileId additionalContent); run; @@ -947,8 +957,8 @@ run; 4) load package *//* - filename packages zip 'C:/SAS_PACKAGES/sqlinds.zip'; - %include packages(iceloadpackage.sas); + filename ice ZIP 'C:/SAS_PACKAGES/sqlinds.zip'; + %include ice(iceloadpackage.sas); filename packages 'C:/SAS_PACKAGES/'; %ICEloadpackage(sqlinds) @@ -1276,21 +1286,16 @@ data _null_; put ' put "ERROR: Loading package &packageName. will be aborted!";'; put ' put "ERROR- Required components are missing."; '; put ' put "ERROR- *** STOP ***"; '; - put ' call symputX("packageRequiredErrors", '; - put ' ''options '; - put ' ls = &ls_tmp. '; - put ' ps = &ps_tmp. '; - put ' ¬es_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. '; + put ' call symputX("packageRequiredErrors",'; + put ' ''options ls = &ls_tmp. ps = &ps_tmp. '; + put ' ¬es_tmp. &source_tmp. msglevel=&msglevel_tmp. '; + put ' &stimer_tmp. &fullstimer_tmp. ;'; + put ' data _null_;abort;run;'', "L"); '; + put ' end; '; + put ' else '; + put ' call symputX("packageRequiredErrors", " ", "L");'; + put ' run; '; + put ' &packageRequiredErrors. '; %end; @@ -1298,7 +1303,7 @@ data _null_; set &filesWithCodes. end = EOF nobs=NOBS; by TYPE notsorted; - if (upcase(type) in: ('CLEAN' 'LAZYDATA' 'TEST' 'CASLUDF' 'ADDCNT')) + if (upcase(type) in: ('CLEAN' 'LAZYDATA' 'TEST' 'CASLUDF' 'ADDCNT' 'KMFSNIP')) then continue; /* CASLUDF type will go in the next loop */ /* cleaning files are only included in unload.sas */ /* lazy data are only loaded on demand @@ -1310,7 +1315,7 @@ data _null_; ('LIBNAME' 'MACRO' /*'MACROS'*/ 'DATA' 'FUNCTION' /*'FUNCTIONS'*/ 'FORMAT' /*'FORMATS'*/ 'IMLMODULE' 'PROTO' 'EXEC' 'CLEAN' - 'LAZYDATA' 'TEST' 'ADDCNT')) + 'LAZYDATA' 'TEST' 'ADDCNT' 'KMFSNIP')) then do; putlog 'WARNING: Type ' type 'is not yet supported.'; @@ -1536,7 +1541,7 @@ data _null_; %end; put +(-1) '`.;''' / ' !! '' %put The macro generated: '' !! put(dtCASLudf, E8601DT19.-L) !! ";"' / - ' !! '' %put with the SAS Packages Framework version 20231107.;''' / + ' !! '' %put with the SAS Packages Framework version 20231111.;''' / ' !! '' %put ****************************************************************************;''' / ' !! '' %GOTO theEndOfTheMacro;''' / ' !! '' %end;''' ; @@ -1574,7 +1579,7 @@ data _null_; put ' %let cherryPick_CASLUDF = %eval(&cherryPick_CASLUDF. + 1);'; put '%end; ' /; /* Cherry Pick test2 end */ - end; /* loopOverTypes1 - start */ + end; /* loopOverTypes1 - end */ /* this is a footer for CASLudf macro */ put ' !! " options nonotes;" ' / @@ -1613,8 +1618,6 @@ data _null_; end; put 'run;'/; - - /* cherry pick clean in cmplib for functions */ if isFunction then do; @@ -1641,12 +1644,7 @@ data _null_; put "proc delete data=work.%lowcase(&packageName.proto); run;"; put '%end;'; end; - /* list cmplib for functions */ - if isFunction OR isProto then - do; - put '%put NOTE- ;'; - put '%put NOTE:[CMPLIB] %sysfunc(getoption(cmplib));' /; - end; + /* list fmtsearch for formats */ if isFormat then @@ -1660,7 +1658,6 @@ data _null_; ', %str(()) ))));'; put '%end;'; put '%put NOTE- ;'; - put '%put NOTE:[FMTSEARCH] %sysfunc(getoption(fmtsearch));'/; end; /* create a macro loader for IML modules with dependencies */ @@ -1709,7 +1706,7 @@ data _null_; %end; put +(-1) '`.; '' !!' / ''' %put The macro generated: ''' " !! put(dtIML, E8601DT19.-L) !! " '''; '' !!' / - ''' %put with the SAS Packages Framework version 20231107.; '' !! ' / + ''' %put with the SAS Packages Framework version 20231111.; '' !! ' / ''' %put ****************************************************************************; '' !! ' / ''' %GOTO theEndOfTheMacro; '' !! ' / ''' %end; '' !! ' / @@ -1772,8 +1769,173 @@ data _null_; put '%end;'; end; + /* KMF -------------------------------------------------------------------------------- start */ + /* + The Key Macro Function Abbreviations part of the framework is based on PhUSE 2012 article: + + "Dynamically generating macro invocations using SAS keyboard abbreviations" (Paper CC03) + + by: + Tom Van Campen, SGS Life Science Services, Mechelen, Belgium + Benny Haemhouts, SGS Life Science Services, Mechelen, Belgium + + Link to materials: + https://www.lexjansen.com/phuse/2012/cc/CC03.pdf + */ + + do until(eof2); /* loopOverKMF - start */ + set &filesWithCodes. end = EOF2; + by TYPE notsorted; + if not (upcase(type) = 'KMFSNIP') then continue; /* only CASLUDF type in this loop */ + isKMF + 1; + if 1=isKMF then + do; + put 'data _null_; ' + / ' call symputX("cherryPick_KMF", 0, "L"); ' + / 'run; ' + / "data work.%lowcase(&packageName.kmf); " + / "length member $ 128; call missing(member); " + / "if 0 then output; "; + end; + + put ' ' + / '%if (%str(*)=%superq(cherryPick)) or (' fileshort +(-1) ' in %superq(cherryPick)) %then %do; ' /* Cherry Pick KMF start */ + / ' %put NOTE- ;' + / ' %put NOTE: >> Element of type ' type 'from the file "' file +(-1) '" will be included <<;' + / ' member = "_' folder +(-1) "." file +(-1) '"; output;' + / ' %let cherryPick_KMF = %eval(&cherryPick_KMF. + 1);' + / '%end; ' /; /* Cherry Pick KMF end */ + end; /* loopOverKMF - end */ + put 'data _null_;'; + put 'run;'; + + if isKMF then + do; + put '%let temp_noNotes_etc=%sysfunc(getoption(NOTES));' + / 'options noNotes;'; + put '%if &cherryPick_KMF. %then %do;'; + put 'filename __KMFgen temp;' + / 'data _null_;' + / " set work.%lowcase(&packageName.kmf) nobs=nobs;" + + / ' call symputX("numberKMF",nobs,"L");' + / ' file __KMFgen;' + + / ' length _KMF_name_$ 130;' + / ' _KMF_name_ = quote(scan(member,-2,"."));' + + / " put 'end=0; append=0; i+1;'" + / " / '_KMF_name_[i]=' _KMF_name_ ';'" + / " / 'do until(end);'" + / " / ' infile &_PackageFileref_.(' member +(-1) ') end=end;'" + / " / ' input codeLine $char2048. @;'" + / " / ' if upcase(codeLine) =: ""KMFCODEDESC:"" then'" + / " / ' _KMF_desc_[i] = strip(substr(codeLine,13));'" + + / " / ' if upcase(codeLine) =: ""KMFCODEEND:"" then append=0;'" + / " / ' if append then'" + / " / ' do;'" + / " / ' if lengthn(codeLine) then'" + / " / ' _KMF_code_[i] = trim(_KMF_code_[i]) !! trim(codeLine) !! CrNl;'" + / " / ' else _KMF_code_[i] = trim(_KMF_code_[i]) !! CrNl;'" + / " / ' _KMF_NoLi_[i]+1;'" + / " / ' end;'" + / " / ' if upcase(codeLine) =: ""KMFCODESTART:"" then append=1;'" + / " / 'end;'" + / " / '_KMF_code_[i]=substr(_KMF_code_[i],1,lengthn(_KMF_code_[i])-1);'" + / " ;" + / "run;" + ; + + put 'data _nulL_;' + / ' file "%sysfunc(pathname(WORK))/%lowcase(&packageName..kmf)" termstr=NL lrecl=32767;' + / ' putlog "INFO: The &packageName. package provides KMF-abbreviations."; ' + / ' putlog @7 "By default the file with abbreviations is located in:";' + / ' putlog / @9 "%sysfunc(pathname(WORK))/%lowcase(&packageName..kmf)";' + / ' putlog / @7 "To import code abbreviations to your SAS session:";' + / ' putlog @7 "- in SAS DMS go to: Tools -> Keyboard Macros -> Macros... -> Import... ";' + / ' putlog @7 "- in SAS EG go to: Program -> Manage Macros and Snippets -> Import... ";' + / ' putlog @7 "and navigate to the location of the KMF file.";' + + / ' putlog / @7 "Should you have any problem with finding the file consider moving";' + / ' putlog @7 "it to a location of your choice with the help of the following snippet:";' + / ' putlog / @7 " filename KMFin " "''%sysfunc(pathname(WORK))/%lowcase(&packageName..kmf)''" " lrecl=1 recfm=n;";' + / ' putlog @7 " filename KMFout ""/testpackageclean.kmf"" lrecl=1 recfm=n;";' + / ' putlog @7 '' %put *%sysfunc(fcopy(KMFin, KMFout))*(0=success)*;'';' + / ' putlog / "0a"x / " ";' + + + / ' array _KMF_name_[&numberKMF.] $ 128;' + / ' array _KMF_desc_[&numberKMF.] $ 256;' + / ' array _KMF_seqn_[&numberKMF.] (1:&numberKMF.);' + / ' array _KMF_code_[&numberKMF.] $ 32767;' + / ' array _KMF_NoLi_[&numberKMF.] ;' + / ' array _KMF_Byte_[&numberKMF.] $ 7;' + + / ' noDef = symgetn("numberKMF");' + / ' tmpByteD2 = floor(noDef/256);' + / ' tmpByteD1 = noDef - (tmpByteD2*256);' + / ' noDefByte = "KM" !! byte(0) !! byte(2) !! byte(tmpByteD1) !! byte(tmpByteD2) !! byte(0) !! byte(0);' + + / ' CrNl=byte(13)!!byte(10);' + + / ' %include __KMFgen / &source2.;' + + / ' do i = 1 to &numberKMF.;' + / ' X1=lengthn(trim(_KMF_code_[i]));' + / ' X2=lengthn(strip(_KMF_name_[i]));' + / ' X3=lengthn(strip(_KMF_desc_[i]));' + / ' X4=lengthn(put(_KMF_seqn_[i], best3.-l));' + / ' X5=lengthn(put(_KMF_NoLi_[i], best12.-l));' + / ' noChar = sum(X1, X2, X3, X4, X5, 20);' + / ' tmpByteC2 = floor(noChar/256);' + / ' tmpByteC1 = noChar - (tmpByteC2*256);' + + / ' _KMF_Byte_[i] = byte(tmpByteC1) !! byte(tmpByteC2) !! byte(0) !! byte(0) !! "252";' + / ' end;' + + / ' do i = 1 to &numberKMF.;' + / ' if i=1 then put noDefByte +(-1) @@;' + / ' /* 1*/ put _KMF_Byte_[i];' + / ' /* 2*/ put "3";' + / ' /* 3*/ put _KMF_name_[i];' + / ' /* 4*/ if lengthn(_KMF_desc_[i]) then put _KMF_desc_[i]; else put;' + / ' /* 5*/ put "1"' + / ' /* 6*/ / "332"' + / ' /* 7*/ / "1";' + / ' /* 8*/ put _KMF_NoLi_[i];' + / ' /* 8*/ put _KMF_code_[i];' + / ' /*10*/ put _KMF_seqn_[i];' + / ' /*11*/ put "1";' + / ' ;' + / ' end;' + / 'stop;' + / 'run;' + / '%symdel numberKMF / noWarn;' + / 'filename __KMFgen clear;' + ; + put '%end;'; + put "proc delete data=work.%lowcase(&packageName.kmf); run;"; + put 'options &temp_noNotes_etc.;'; + end; + put 'data _null_;'; + put 'run;'; + /* KMF -------------------------------------------------------------------------------- end */ + + /* list cmplib for functions and fmtsearch for formats*/ + if isFunction OR isProto then + do; + put '%put NOTE- ;'; + put '%put NOTE:[CMPLIB] %sysfunc(getoption(cmplib));' /; + end; + if isFormat then + do; + put '%put NOTE- ;'; + put '%put NOTE:[FMTSEARCH] %sysfunc(getoption(fmtsearch));'/; + end; /* update SYSloadedPackages global macrovariable */ + put 'options noNotes;'; put '%if (%str(*)=%superq(cherryPick)) %then %do; '; /* Cherry Pick test3 start */ put ' data _null_ ; '; put ' length SYSloadedPackages stringPCKG $ 32767; '; @@ -1791,7 +1953,7 @@ data _null_; put " SYSloadedPackages = catx('#', SYSloadedPackages, '&packageName.(&packageVersion.)'); "; put ' SYSloadedPackages = compbl(translate(SYSloadedPackages, " ", "#")); '; put ' call symputX("SYSloadedPackages", SYSloadedPackages, "G"); '; - put ' put "NOTE: " SYSloadedPackages = ; '; + put ' put / "INFO:[SYSLOADEDPACKAGES] " SYSloadedPackages ; '; put ' end ; '; put " else "; put ' do; '; @@ -1800,21 +1962,26 @@ data _null_; put " SYSloadedPackages = catx('#', SYSloadedPackages, '&packageName.(&packageVersion.)'); "; put ' SYSloadedPackages = compbl(translate(SYSloadedPackages, " ", "#")); '; put ' call symputX("SYSloadedPackages", SYSloadedPackages, "G"); '; - put ' put "NOTE: " SYSloadedPackages = ; '; + put ' put / "INFO:[SYSLOADEDPACKAGES] " SYSloadedPackages ; '; put ' end ; '; put ' end; '; put ' else '; put ' do; '; put " call symputX('SYSloadedPackages', '&packageName.(&packageVersion.)', 'G'); "; - put " put 'NOTE: SYSloadedPackages = &packageName.(&packageVersion.)'; "; + put " put / 'INFO:[SYSLOADEDPACKAGES] &packageName.(&packageVersion.)'; "; put ' end; '; put ' stop; '; - put ' run; '; + put ' run; '; put '%end; ' / ; /* Cherry Pick test3 end */ - + + put 'options NOTES;'; put '%put NOTE- ;'; put '%put NOTE: '"Loading package &packageName., version &packageVersion., license &packageLicense.;"; put '%put NOTE- *** END ***;' /; + + put 'options &temp_noNotes_etc.;' + / '%symdel temp_noNotes_etc / noWarn;'; + put "/* load.sas end */" /; stop; run; @@ -2325,7 +2492,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 20231107 *"; put "***";'; + put 'put "***"; put "* SAS package generated by generatePackage, version 20231111 *"; put "***";'; put 'run; ' /; diff --git a/SPF/Macros/helppackage.sas b/SPF/Macros/helppackage.sas index 539484d..67adaad 100644 --- a/SPF/Macros/helppackage.sas +++ b/SPF/Macros/helppackage.sas @@ -28,7 +28,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to get help about SAS package, version 20231107. Run %helpPackage() for help info.' +des = 'Macro to get help about SAS package, version 20231111. Run %helpPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -43,7 +43,7 @@ des = 'Macro to get help about SAS package, version 20231107. Run %helpPackage() %put ### This is short help information for the `helpPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get help about SAS packages, version `20231107` #; + %put # Macro to get help about SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -181,7 +181,7 @@ TODO: - add MD5(&packageName.) value hash instead "package" word in filenames [DONE] */ -/* Macros to install SAS packages, version 20231107 */ +/* Macros to install SAS packages, version 20231111 */ /* A SAS package is a zip file containing a group of files with SAS code (macros, functions, data steps generating data, etc.) wrapped up together and %INCLUDEed by diff --git a/SPF/Macros/installpackage.sas b/SPF/Macros/installpackage.sas index 52e622b..1c79cb5 100644 --- a/SPF/Macros/installpackage.sas +++ b/SPF/Macros/installpackage.sas @@ -16,7 +16,7 @@ /secure minoperator /*** HELP END ***/ -des = 'Macro to install SAS package, version 20231107. Run %%installPackage() for help info.' +des = 'Macro to install SAS package, version 20231111. Run %%installPackage() for help info.' ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then %do; @@ -31,7 +31,7 @@ des = 'Macro to install SAS package, version 20231107. Run %%installPackage() fo %put ### This is short help information for the `installPackage` macro #; %put #--------------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to install SAS packages, version `20231107` #; + %put # Macro to install SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -483,7 +483,7 @@ des = 'Macro to install SAS package, version 20231107. Run %%installPackage() fo /* Macro to list SAS packages in packages folder. - Version 20231107 + Version 20231111 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating diff --git a/SPF/Macros/listpackages.sas b/SPF/Macros/listpackages.sas index 992552e..6197a19 100644 --- a/SPF/Macros/listpackages.sas +++ b/SPF/Macros/listpackages.sas @@ -1,7 +1,7 @@ /*+listPackages+*/ %macro listPackages()/secure PARMBUFF -des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20231107.' +des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20231111.' ; %if %QUPCASE(&SYSPBUFF.) = %str(%(HELP%)) %then %do; @@ -16,7 +16,7 @@ des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HE %put ### This is short help information for the `listPackages` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to list available SAS packages, version `20231107` #; + %put # Macro to list available SAS packages, version `20231111` #; %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 @@ options ls = &ls_tmp. ps = &ps_tmp. ¬es_tmp. &source_tmp.; /* Macro to generate SAS packages. - Version 20231107 + Version 20231111 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating diff --git a/SPF/Macros/loadpackage.sas b/SPF/Macros/loadpackage.sas index a8a628e..13faa1f 100644 --- a/SPF/Macros/loadpackage.sas +++ b/SPF/Macros/loadpackage.sas @@ -32,9 +32,9 @@ , suppressExec=0 /* indicates if loading of exec files should be suppressed, 1=suppress */ -)/secure +)/secure /*** HELP END ***/ -des = 'Macro to load SAS package, version 20231107. Run %loadPackage() for help info.' +des = 'Macro to load SAS package, version 20231111. Run %loadPackage() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -50,7 +50,7 @@ minoperator %put ### This is short help information for the `loadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* SAS packages, version `20231107` #; + %put # Macro to *load* SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -250,7 +250,7 @@ minoperator ; %if %superq(lazyData) = %then %do; - %local tempLoad_minoperator; + %local tempLoad_minoperator temp_noNotes_etc /* for hiding notes */ ; %let tempLoad_minoperator = %sysfunc(getoption(minoperator)); options minoperator; /* MinOperator option is required for cherryPicking to work */ %include &_PackageFileref_.(load.sas) / &source2.; diff --git a/SPF/Macros/loadpackageaddcnt.sas b/SPF/Macros/loadpackageaddcnt.sas index d6b8806..a6fd3c2 100644 --- a/SPF/Macros/loadpackageaddcnt.sas +++ b/SPF/Macros/loadpackageaddcnt.sas @@ -19,7 +19,7 @@ is provided in required version */ )/secure /*** HELP END ***/ -des = 'Macro to load additional content for a SAS package, version 20231107. Run %loadPackageAddCnt() for help info.' +des = 'Macro to load additional content for a SAS package, version 20231111. Run %loadPackageAddCnt() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -35,7 +35,7 @@ minoperator %put ### This is short help information for the `loadPackageAddCnt` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* additional content for a SAS package, version `20231107` #; + %put # Macro to *load* additional content for a SAS package, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/loadpackages.sas b/SPF/Macros/loadpackages.sas index ca5bdd3..dde394f 100644 --- a/SPF/Macros/loadpackages.sas +++ b/SPF/Macros/loadpackages.sas @@ -11,7 +11,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to load multiple SAS packages at one run, version 20231107. Run %loadPackages() for help info.' +des = 'Macro to load multiple SAS packages at one run, version 20231111. Run %loadPackages() for help info.' parmbuff ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then @@ -27,7 +27,7 @@ parmbuff %put ### This is short help information for the `loadPackageS` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro wrapper for the loadPackage macro, version `20231107` #; + %put # Macro wrapper for the loadPackage macro, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/previewpackage.sas b/SPF/Macros/previewpackage.sas index 996e344..7a28c51 100644 --- a/SPF/Macros/previewpackage.sas +++ b/SPF/Macros/previewpackage.sas @@ -23,7 +23,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to preview content of a SAS package, version 20231107. Run %previewPackage() for help info.' +des = 'Macro to preview content of a SAS package, version 20231111. Run %previewPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -38,7 +38,7 @@ des = 'Macro to preview content of a SAS package, version 20231107. Run %preview %put ### This is short help information for the `previewPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get previwe of a SAS packages, version `20231107` #; + %put # Macro to get previwe of a SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/unloadpackage.sas b/SPF/Macros/unloadpackage.sas index 6f45a04..cf603cb 100644 --- a/SPF/Macros/unloadpackage.sas +++ b/SPF/Macros/unloadpackage.sas @@ -20,7 +20,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to unload SAS package, version 20231107. Run %unloadPackage() for help info.' +des = 'Macro to unload SAS package, version 20231111. Run %unloadPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -35,7 +35,7 @@ des = 'Macro to unload SAS package, version 20231107. Run %unloadPackage() for h %put ### This is short help information for the `unloadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to unload SAS packages, version `20231107` #; + %put # Macro to unload SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/verifypackage.sas b/SPF/Macros/verifypackage.sas index ab31792..828f6fe 100644 --- a/SPF/Macros/verifypackage.sas +++ b/SPF/Macros/verifypackage.sas @@ -13,7 +13,7 @@ hashing_file() function, SAS 9.4M6 */ )/secure /*** HELP END ***/ -des = 'Macro to verify SAS package with the hash digest, version 20231107. Run %verifyPackage() for help info.' +des = 'Macro to verify SAS package with the hash digest, version 20231111. Run %verifyPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -28,7 +28,7 @@ des = 'Macro to verify SAS package with the hash digest, version 20231107. Run % %put ### This is short help information for the `verifyPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to verify SAS package with it hash digest, version `20231107` #; + %put # Macro to verify SAS package with it hash digest, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/SPFinit.md b/SPF/SPFinit.md index a6d3227..d36290e 100644 --- a/SPF/SPFinit.md +++ b/SPF/SPFinit.md @@ -22,7 +22,7 @@ A **SAS package** is an automatically generated, single, stand alone *zip* file The *purpose of a package* is to be a simple, and easy to access, code sharing medium, which will allow: on the one hand, to separate the code complex dependencies created by the developer from the user experience with the final product and, on the other hand, reduce developer's and user's unnecessary frustration related to a remote deployment process. -In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20231107`**. +In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20231111`**. **To get started with SAS Packages** try this [**`Getting Started with SAS Packages`**](https://github.com/yabwon/SAS_PACKAGES/blob/main/SPF/Documentation/Getting_Started_with_SAS_Packages.pdf "Getting Started with SAS Packages") presentation (see the `./SPF/Documentation` directory). @@ -40,7 +40,7 @@ After assigning the directory do not change them when using the SPF since it may ## This is short help information for the `installPackage` macro -------------------------------------------------------------------------------------------- - Macro to install SAS packages, version `20231107` + Macro to install SAS packages, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -149,7 +149,7 @@ filename packages "C:/SAS_PACKAGES"; ## This is short help information for the `helpPackage` macro ------------------------------------------------------------------------------- - Macro to get help about SAS packages, version `20231107` + Macro to get help about SAS packages, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -225,7 +225,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `loadPackage` macro ------------------------------------------------------------------------------- - Macro to *load* SAS packages, version `20231107` + Macro to *load* SAS packages, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -377,7 +377,7 @@ If created, those macros are automatically deleted when the `%unloadPackage()` m ## This is short help information for the `loadPackageS` macro ------------------------------------------------------------------------------- - Macro wrapper for the loadPackage macro, version `20231107` + Macro wrapper for the loadPackage macro, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -426,7 +426,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `unloadPackage` macro ------------------------------------------------------------------------------- - Macro to unload SAS packages, version `20231107` + Macro to unload SAS packages, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -491,7 +491,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `listPackages` macro ----------------------------------------------------------------------------------------- - Macro to list available SAS packages, version `20231107` + Macro to list available SAS packages, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -532,7 +532,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `verifyPackage` macro ------------------------------------------------------------------------------- - Macro to verify SAS package with it hash digest, version `20231107` + Macro to verify SAS package with it hash digest, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -586,7 +586,7 @@ filename packages "C:/SAS_PACKAGES"; %* set-up a directory for packages; ## This is short help information for the `previewPackage` macro ------------------------------------------------------------------------------- - Macro to get previwe of a SAS packages, version `20231107` + Macro to get previwe of a SAS packages, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -653,7 +653,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `generatePackage` macro ------------------------------------------------------------------------------- - Macro to generate SAS packages, version `20231107` + Macro to generate SAS packages, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -815,9 +815,19 @@ All files have to have `.sas` extension. Other files are ignored. | | | +-abc.sas [a file with a code creating IML module ABC, _without_ "Proc IML" header] | + +-011_casludf [one file one CAS-L user defined function, + | | only plain code of the function, without "Proc CAS" header] + | | + | +-abc.sas [a file with a code creating CAS-L user defined function ABC, _without_ "Proc CAS" header] + | + +-012_kmfsnip [one file one KMF-abbreviation snippet, + | | code snipped propper tagging] + | | + | +-abc.sas [a file with a KMF-abbreviation snippet ABC, _with_ proper tagging, snippets names are in low-case] + | +-_ | - +-00n_clean [if you need to clean something up after exec file execution, + +-0nn_clean [if you need to clean something up after exec file execution, | | content of the files will be printed to the log before execution] | | | +- @@ -847,7 +857,7 @@ All files have to have `.sas` extension. Other files are ignored. ## This is short help information for the `extendPackagesFileref` macro ----------------------------------------------------------------------------------------- - Macro to list directories pointed by 'packages' fileref, version `20231107` + Macro to list directories pointed by 'packages' fileref, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -887,7 +897,7 @@ filename packages ("D:/NEW_DIR" %extendPackagesFileref()); %* add new directory; ## This is short help information for the `loadPackageAddCnt` macro ------------------------------------------------------------------------------- - Macro to load *additional content* for a SAS package, version `20231107` + Macro to load *additional content* for a SAS package, version `20231111` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating diff --git a/SPF/SPFinit.sas b/SPF/SPFinit.sas index 5e8f29b..0969599 100644 --- a/SPF/SPFinit.sas +++ b/SPF/SPFinit.sas @@ -42,7 +42,7 @@ - to unload, or - to generate SAS packages. - Version 20231107. + Version 20231111. See examples below. A SAS package is a zip file containing a group of files @@ -87,9 +87,9 @@ , suppressExec=0 /* indicates if loading of exec files should be suppressed, 1=suppress */ -)/secure +)/secure /*** HELP END ***/ -des = 'Macro to load SAS package, version 20231107. Run %loadPackage() for help info.' +des = 'Macro to load SAS package, version 20231111. Run %loadPackage() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -105,7 +105,7 @@ minoperator %put ### This is short help information for the `loadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* SAS packages, version `20231107` #; + %put # Macro to *load* SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -305,7 +305,7 @@ minoperator ; %if %superq(lazyData) = %then %do; - %local tempLoad_minoperator; + %local tempLoad_minoperator temp_noNotes_etc /* for hiding notes */ ; %let tempLoad_minoperator = %sysfunc(getoption(minoperator)); options minoperator; /* MinOperator option is required for cherryPicking to work */ %include &_PackageFileref_.(load.sas) / &source2.; @@ -360,7 +360,7 @@ minoperator */ )/secure /*** HELP END ***/ -des = 'Macro to unload SAS package, version 20231107. Run %unloadPackage() for help info.' +des = 'Macro to unload SAS package, version 20231111. Run %unloadPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -375,7 +375,7 @@ des = 'Macro to unload SAS package, version 20231107. Run %unloadPackage() for h %put ### This is short help information for the `unloadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to unload SAS packages, version `20231107` #; + %put # Macro to unload SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -524,7 +524,7 @@ des = 'Macro to unload SAS package, version 20231107. Run %unloadPackage() for h */ )/secure /*** HELP END ***/ -des = 'Macro to get help about SAS package, version 20231107. Run %helpPackage() for help info.' +des = 'Macro to get help about SAS package, version 20231111. Run %helpPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -539,7 +539,7 @@ des = 'Macro to get help about SAS package, version 20231107. Run %helpPackage() %put ### This is short help information for the `helpPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get help about SAS packages, version `20231107` #; + %put # Macro to get help about SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -677,7 +677,7 @@ TODO: - add MD5(&packageName.) value hash instead "package" word in filenames [DONE] */ -/* Macros to install SAS packages, version 20231107 */ +/* Macros to install SAS packages, version 20231111 */ /* A SAS package is a zip file containing a group of files with SAS code (macros, functions, data steps generating data, etc.) wrapped up together and %INCLUDEed by @@ -702,7 +702,7 @@ TODO: /secure minoperator /*** HELP END ***/ -des = 'Macro to install SAS package, version 20231107. Run %%installPackage() for help info.' +des = 'Macro to install SAS package, version 20231111. Run %%installPackage() for help info.' ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then %do; @@ -717,7 +717,7 @@ des = 'Macro to install SAS package, version 20231107. Run %%installPackage() fo %put ### This is short help information for the `installPackage` macro #; %put #--------------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to install SAS packages, version `20231107` #; + %put # Macro to install SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -1169,7 +1169,7 @@ des = 'Macro to install SAS package, version 20231107. Run %%installPackage() fo /* Macro to list SAS packages in packages folder. - Version 20231107 + Version 20231111 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1190,7 +1190,7 @@ des = 'Macro to install SAS package, version 20231107. Run %%installPackage() fo /*+listPackages+*/ %macro listPackages()/secure PARMBUFF -des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20231107.' +des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20231111.' ; %if %QUPCASE(&SYSPBUFF.) = %str(%(HELP%)) %then %do; @@ -1205,7 +1205,7 @@ des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HE %put ### This is short help information for the `listPackages` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to list available SAS packages, version `20231107` #; + %put # Macro to list available SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -1355,7 +1355,7 @@ options ls = &ls_tmp. ps = &ps_tmp. ¬es_tmp. &source_tmp.; /* Macro to generate SAS packages. - Version 20231107 + Version 20231111 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1392,7 +1392,7 @@ options ls = &ls_tmp. ps = &ps_tmp. ¬es_tmp. &source_tmp.; default value 1 means "delete tests work" */ )/ secure minoperator /*** HELP END ***/ -des = 'Macro to generate SAS packages, version 20231107. Run %generatePackage() for help info.' +des = 'Macro to generate SAS packages, version 20231111. Run %generatePackage() for help info.' ; %if (%superq(filesLocation) = ) OR (%qupcase(&filesLocation.) = HELP) %then %do; @@ -1407,7 +1407,7 @@ des = 'Macro to generate SAS packages, version 20231107. Run %generatePackage() %put ### This is short help information for the `generatePackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to generate SAS packages, version `20231107` #; + %put # Macro to generate SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -1852,6 +1852,16 @@ DESCRIPTION END: | | | +-abc.sas [a file with a code creating IML module ABC, _without_ "Proc IML" header] | + +-011_casludf [one file one CAS-L user defined function, + | | only plain code of the function, without "Proc CAS" header] + | | + | +-abc.sas [a file with a code creating CAS-L user defined function ABC, _without_ "Proc CAS" header] + | + +-012_kmfsnip [one file one KMF-abbreviation snippet, + | | code snipped propper tagging] + | | + | +-abc.sas [a file with a KMF-abbreviation snippet ABC, _with_ proper tagging, snippets names are in low-case] + | +-_ | +-00n_clean [if you need to clean something up after exec file execution, @@ -1933,7 +1943,7 @@ data &filesWithCodes.; 'FUNCTION' /*'FUNCTIONS'*/ 'FORMAT' /*'FORMATS'*/ 'IMLMODULE' 'PROTO' 'EXEC' 'CLEAN' 'LAZYDATA' 'TEST' 'CASLUDF' - 'ADDCNT' + 'ADDCNT' 'KMFSNIP' )) then do; @@ -2179,7 +2189,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 20231107"; +footnote1 "SAS Packages Framework, version 20231111"; proc print data = &filesWithCodes.(drop=base folderRef fileRef rc folderid _abort_ fileId additionalContent); run; @@ -2316,8 +2326,8 @@ run; 4) load package *//* - filename packages zip 'C:/SAS_PACKAGES/sqlinds.zip'; - %include packages(iceloadpackage.sas); + filename ice ZIP 'C:/SAS_PACKAGES/sqlinds.zip'; + %include ice(iceloadpackage.sas); filename packages 'C:/SAS_PACKAGES/'; %ICEloadpackage(sqlinds) @@ -2645,21 +2655,16 @@ data _null_; put ' put "ERROR: Loading package &packageName. will be aborted!";'; put ' put "ERROR- Required components are missing."; '; put ' put "ERROR- *** STOP ***"; '; - put ' call symputX("packageRequiredErrors", '; - put ' ''options '; - put ' ls = &ls_tmp. '; - put ' ps = &ps_tmp. '; - put ' ¬es_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. '; + put ' call symputX("packageRequiredErrors",'; + put ' ''options ls = &ls_tmp. ps = &ps_tmp. '; + put ' ¬es_tmp. &source_tmp. msglevel=&msglevel_tmp. '; + put ' &stimer_tmp. &fullstimer_tmp. ;'; + put ' data _null_;abort;run;'', "L"); '; + put ' end; '; + put ' else '; + put ' call symputX("packageRequiredErrors", " ", "L");'; + put ' run; '; + put ' &packageRequiredErrors. '; %end; @@ -2667,7 +2672,7 @@ data _null_; set &filesWithCodes. end = EOF nobs=NOBS; by TYPE notsorted; - if (upcase(type) in: ('CLEAN' 'LAZYDATA' 'TEST' 'CASLUDF' 'ADDCNT')) + if (upcase(type) in: ('CLEAN' 'LAZYDATA' 'TEST' 'CASLUDF' 'ADDCNT' 'KMFSNIP')) then continue; /* CASLUDF type will go in the next loop */ /* cleaning files are only included in unload.sas */ /* lazy data are only loaded on demand @@ -2679,7 +2684,7 @@ data _null_; ('LIBNAME' 'MACRO' /*'MACROS'*/ 'DATA' 'FUNCTION' /*'FUNCTIONS'*/ 'FORMAT' /*'FORMATS'*/ 'IMLMODULE' 'PROTO' 'EXEC' 'CLEAN' - 'LAZYDATA' 'TEST' 'ADDCNT')) + 'LAZYDATA' 'TEST' 'ADDCNT' 'KMFSNIP')) then do; putlog 'WARNING: Type ' type 'is not yet supported.'; @@ -2905,7 +2910,7 @@ data _null_; %end; put +(-1) '`.;''' / ' !! '' %put The macro generated: '' !! put(dtCASLudf, E8601DT19.-L) !! ";"' / - ' !! '' %put with the SAS Packages Framework version 20231107.;''' / + ' !! '' %put with the SAS Packages Framework version 20231111.;''' / ' !! '' %put ****************************************************************************;''' / ' !! '' %GOTO theEndOfTheMacro;''' / ' !! '' %end;''' ; @@ -2943,7 +2948,7 @@ data _null_; put ' %let cherryPick_CASLUDF = %eval(&cherryPick_CASLUDF. + 1);'; put '%end; ' /; /* Cherry Pick test2 end */ - end; /* loopOverTypes1 - start */ + end; /* loopOverTypes1 - end */ /* this is a footer for CASLudf macro */ put ' !! " options nonotes;" ' / @@ -2982,8 +2987,6 @@ data _null_; end; put 'run;'/; - - /* cherry pick clean in cmplib for functions */ if isFunction then do; @@ -3010,12 +3013,7 @@ data _null_; put "proc delete data=work.%lowcase(&packageName.proto); run;"; put '%end;'; end; - /* list cmplib for functions */ - if isFunction OR isProto then - do; - put '%put NOTE- ;'; - put '%put NOTE:[CMPLIB] %sysfunc(getoption(cmplib));' /; - end; + /* list fmtsearch for formats */ if isFormat then @@ -3029,7 +3027,6 @@ data _null_; ', %str(()) ))));'; put '%end;'; put '%put NOTE- ;'; - put '%put NOTE:[FMTSEARCH] %sysfunc(getoption(fmtsearch));'/; end; /* create a macro loader for IML modules with dependencies */ @@ -3078,7 +3075,7 @@ data _null_; %end; put +(-1) '`.; '' !!' / ''' %put The macro generated: ''' " !! put(dtIML, E8601DT19.-L) !! " '''; '' !!' / - ''' %put with the SAS Packages Framework version 20231107.; '' !! ' / + ''' %put with the SAS Packages Framework version 20231111.; '' !! ' / ''' %put ****************************************************************************; '' !! ' / ''' %GOTO theEndOfTheMacro; '' !! ' / ''' %end; '' !! ' / @@ -3141,8 +3138,173 @@ data _null_; put '%end;'; end; + /* KMF -------------------------------------------------------------------------------- start */ + /* + The Key Macro Function Abbreviations part of the framework is based on PhUSE 2012 article: + + "Dynamically generating macro invocations using SAS keyboard abbreviations" (Paper CC03) + + by: + Tom Van Campen, SGS Life Science Services, Mechelen, Belgium + Benny Haemhouts, SGS Life Science Services, Mechelen, Belgium + + Link to materials: + https://www.lexjansen.com/phuse/2012/cc/CC03.pdf + */ + + do until(eof2); /* loopOverKMF - start */ + set &filesWithCodes. end = EOF2; + by TYPE notsorted; + if not (upcase(type) = 'KMFSNIP') then continue; /* only CASLUDF type in this loop */ + isKMF + 1; + if 1=isKMF then + do; + put 'data _null_; ' + / ' call symputX("cherryPick_KMF", 0, "L"); ' + / 'run; ' + / "data work.%lowcase(&packageName.kmf); " + / "length member $ 128; call missing(member); " + / "if 0 then output; "; + end; + + put ' ' + / '%if (%str(*)=%superq(cherryPick)) or (' fileshort +(-1) ' in %superq(cherryPick)) %then %do; ' /* Cherry Pick KMF start */ + / ' %put NOTE- ;' + / ' %put NOTE: >> Element of type ' type 'from the file "' file +(-1) '" will be included <<;' + / ' member = "_' folder +(-1) "." file +(-1) '"; output;' + / ' %let cherryPick_KMF = %eval(&cherryPick_KMF. + 1);' + / '%end; ' /; /* Cherry Pick KMF end */ + end; /* loopOverKMF - end */ + put 'data _null_;'; + put 'run;'; + + if isKMF then + do; + put '%let temp_noNotes_etc=%sysfunc(getoption(NOTES));' + / 'options noNotes;'; + put '%if &cherryPick_KMF. %then %do;'; + put 'filename __KMFgen temp;' + / 'data _null_;' + / " set work.%lowcase(&packageName.kmf) nobs=nobs;" + + / ' call symputX("numberKMF",nobs,"L");' + / ' file __KMFgen;' + + / ' length _KMF_name_$ 130;' + / ' _KMF_name_ = quote(scan(member,-2,"."));' + + / " put 'end=0; append=0; i+1;'" + / " / '_KMF_name_[i]=' _KMF_name_ ';'" + / " / 'do until(end);'" + / " / ' infile &_PackageFileref_.(' member +(-1) ') end=end;'" + / " / ' input codeLine $char2048. @;'" + / " / ' if upcase(codeLine) =: ""KMFCODEDESC:"" then'" + / " / ' _KMF_desc_[i] = strip(substr(codeLine,13));'" + + / " / ' if upcase(codeLine) =: ""KMFCODEEND:"" then append=0;'" + / " / ' if append then'" + / " / ' do;'" + / " / ' if lengthn(codeLine) then'" + / " / ' _KMF_code_[i] = trim(_KMF_code_[i]) !! trim(codeLine) !! CrNl;'" + / " / ' else _KMF_code_[i] = trim(_KMF_code_[i]) !! CrNl;'" + / " / ' _KMF_NoLi_[i]+1;'" + / " / ' end;'" + / " / ' if upcase(codeLine) =: ""KMFCODESTART:"" then append=1;'" + / " / 'end;'" + / " / '_KMF_code_[i]=substr(_KMF_code_[i],1,lengthn(_KMF_code_[i])-1);'" + / " ;" + / "run;" + ; + + put 'data _nulL_;' + / ' file "%sysfunc(pathname(WORK))/%lowcase(&packageName..kmf)" termstr=NL lrecl=32767;' + / ' putlog "INFO: The &packageName. package provides KMF-abbreviations."; ' + / ' putlog @7 "By default the file with abbreviations is located in:";' + / ' putlog / @9 "%sysfunc(pathname(WORK))/%lowcase(&packageName..kmf)";' + / ' putlog / @7 "To import code abbreviations to your SAS session:";' + / ' putlog @7 "- in SAS DMS go to: Tools -> Keyboard Macros -> Macros... -> Import... ";' + / ' putlog @7 "- in SAS EG go to: Program -> Manage Macros and Snippets -> Import... ";' + / ' putlog @7 "and navigate to the location of the KMF file.";' + + / ' putlog / @7 "Should you have any problem with finding the file consider moving";' + / ' putlog @7 "it to a location of your choice with the help of the following snippet:";' + / ' putlog / @7 " filename KMFin " "''%sysfunc(pathname(WORK))/%lowcase(&packageName..kmf)''" " lrecl=1 recfm=n;";' + / ' putlog @7 " filename KMFout ""/testpackageclean.kmf"" lrecl=1 recfm=n;";' + / ' putlog @7 '' %put *%sysfunc(fcopy(KMFin, KMFout))*(0=success)*;'';' + / ' putlog / "0a"x / " ";' + + + / ' array _KMF_name_[&numberKMF.] $ 128;' + / ' array _KMF_desc_[&numberKMF.] $ 256;' + / ' array _KMF_seqn_[&numberKMF.] (1:&numberKMF.);' + / ' array _KMF_code_[&numberKMF.] $ 32767;' + / ' array _KMF_NoLi_[&numberKMF.] ;' + / ' array _KMF_Byte_[&numberKMF.] $ 7;' + + / ' noDef = symgetn("numberKMF");' + / ' tmpByteD2 = floor(noDef/256);' + / ' tmpByteD1 = noDef - (tmpByteD2*256);' + / ' noDefByte = "KM" !! byte(0) !! byte(2) !! byte(tmpByteD1) !! byte(tmpByteD2) !! byte(0) !! byte(0);' + + / ' CrNl=byte(13)!!byte(10);' + + / ' %include __KMFgen / &source2.;' + + / ' do i = 1 to &numberKMF.;' + / ' X1=lengthn(trim(_KMF_code_[i]));' + / ' X2=lengthn(strip(_KMF_name_[i]));' + / ' X3=lengthn(strip(_KMF_desc_[i]));' + / ' X4=lengthn(put(_KMF_seqn_[i], best3.-l));' + / ' X5=lengthn(put(_KMF_NoLi_[i], best12.-l));' + / ' noChar = sum(X1, X2, X3, X4, X5, 20);' + / ' tmpByteC2 = floor(noChar/256);' + / ' tmpByteC1 = noChar - (tmpByteC2*256);' + + / ' _KMF_Byte_[i] = byte(tmpByteC1) !! byte(tmpByteC2) !! byte(0) !! byte(0) !! "252";' + / ' end;' + + / ' do i = 1 to &numberKMF.;' + / ' if i=1 then put noDefByte +(-1) @@;' + / ' /* 1*/ put _KMF_Byte_[i];' + / ' /* 2*/ put "3";' + / ' /* 3*/ put _KMF_name_[i];' + / ' /* 4*/ if lengthn(_KMF_desc_[i]) then put _KMF_desc_[i]; else put;' + / ' /* 5*/ put "1"' + / ' /* 6*/ / "332"' + / ' /* 7*/ / "1";' + / ' /* 8*/ put _KMF_NoLi_[i];' + / ' /* 8*/ put _KMF_code_[i];' + / ' /*10*/ put _KMF_seqn_[i];' + / ' /*11*/ put "1";' + / ' ;' + / ' end;' + / 'stop;' + / 'run;' + / '%symdel numberKMF / noWarn;' + / 'filename __KMFgen clear;' + ; + put '%end;'; + put "proc delete data=work.%lowcase(&packageName.kmf); run;"; + put 'options &temp_noNotes_etc.;'; + end; + put 'data _null_;'; + put 'run;'; + /* KMF -------------------------------------------------------------------------------- end */ + + /* list cmplib for functions and fmtsearch for formats*/ + if isFunction OR isProto then + do; + put '%put NOTE- ;'; + put '%put NOTE:[CMPLIB] %sysfunc(getoption(cmplib));' /; + end; + if isFormat then + do; + put '%put NOTE- ;'; + put '%put NOTE:[FMTSEARCH] %sysfunc(getoption(fmtsearch));'/; + end; /* update SYSloadedPackages global macrovariable */ + put 'options noNotes;'; put '%if (%str(*)=%superq(cherryPick)) %then %do; '; /* Cherry Pick test3 start */ put ' data _null_ ; '; put ' length SYSloadedPackages stringPCKG $ 32767; '; @@ -3160,7 +3322,7 @@ data _null_; put " SYSloadedPackages = catx('#', SYSloadedPackages, '&packageName.(&packageVersion.)'); "; put ' SYSloadedPackages = compbl(translate(SYSloadedPackages, " ", "#")); '; put ' call symputX("SYSloadedPackages", SYSloadedPackages, "G"); '; - put ' put "NOTE: " SYSloadedPackages = ; '; + put ' put / "INFO:[SYSLOADEDPACKAGES] " SYSloadedPackages ; '; put ' end ; '; put " else "; put ' do; '; @@ -3169,21 +3331,26 @@ data _null_; put " SYSloadedPackages = catx('#', SYSloadedPackages, '&packageName.(&packageVersion.)'); "; put ' SYSloadedPackages = compbl(translate(SYSloadedPackages, " ", "#")); '; put ' call symputX("SYSloadedPackages", SYSloadedPackages, "G"); '; - put ' put "NOTE: " SYSloadedPackages = ; '; + put ' put / "INFO:[SYSLOADEDPACKAGES] " SYSloadedPackages ; '; put ' end ; '; put ' end; '; put ' else '; put ' do; '; put " call symputX('SYSloadedPackages', '&packageName.(&packageVersion.)', 'G'); "; - put " put 'NOTE: SYSloadedPackages = &packageName.(&packageVersion.)'; "; + put " put / 'INFO:[SYSLOADEDPACKAGES] &packageName.(&packageVersion.)'; "; put ' end; '; put ' stop; '; - put ' run; '; + put ' run; '; put '%end; ' / ; /* Cherry Pick test3 end */ - + + put 'options NOTES;'; put '%put NOTE- ;'; put '%put NOTE: '"Loading package &packageName., version &packageVersion., license &packageLicense.;"; put '%put NOTE- *** END ***;' /; + + put 'options &temp_noNotes_etc.;' + / '%symdel temp_noNotes_etc / noWarn;'; + put "/* load.sas end */" /; stop; run; @@ -3694,7 +3861,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 20231107 *"; put "***";'; + put 'put "***"; put "* SAS package generated by generatePackage, version 20231111 *"; put "***";'; put 'run; ' /; @@ -4715,7 +4882,7 @@ TODO: (in Polish) */ )/secure /*** HELP END ***/ -des = 'Macro to load multiple SAS packages at one run, version 20231107. Run %loadPackages() for help info.' +des = 'Macro to load multiple SAS packages at one run, version 20231111. Run %loadPackages() for help info.' parmbuff ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then @@ -4731,7 +4898,7 @@ parmbuff %put ### This is short help information for the `loadPackageS` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro wrapper for the loadPackage macro, version `20231107` #; + %put # Macro wrapper for the loadPackage macro, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -4828,7 +4995,7 @@ parmbuff hashing_file() function, SAS 9.4M6 */ )/secure /*** HELP END ***/ -des = 'Macro to verify SAS package with the hash digest, version 20231107. Run %verifyPackage() for help info.' +des = 'Macro to verify SAS package with the hash digest, version 20231111. Run %verifyPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -4843,7 +5010,7 @@ des = 'Macro to verify SAS package with the hash digest, version 20231107. Run % %put ### This is short help information for the `verifyPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to verify SAS package with it hash digest, version `20231107` #; + %put # Macro to verify SAS package with it hash digest, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -5022,7 +5189,7 @@ des = 'Macro to verify SAS package with the hash digest, version 20231107. Run % */ )/secure /*** HELP END ***/ -des = 'Macro to preview content of a SAS package, version 20231107. Run %previewPackage() for help info.' +des = 'Macro to preview content of a SAS package, version 20231111. Run %previewPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -5037,7 +5204,7 @@ des = 'Macro to preview content of a SAS package, version 20231107. Run %preview %put ### This is short help information for the `previewPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get previwe of a SAS packages, version `20231107` #; + %put # Macro to get previwe of a SAS packages, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -5164,7 +5331,7 @@ des = 'Macro to preview content of a SAS package, version 20231107. Run %preview when empty the "packages" value is used */ )/secure /*** HELP END ***/ -des = 'Macro to list directories pointed by "packages" fileref, version 20231107. Run %extendPackagesFileref(HELP) for help info.' +des = 'Macro to list directories pointed by "packages" fileref, version 20231111. Run %extendPackagesFileref(HELP) for help info.' ; %if %QUPCASE(&packages.) = HELP %then @@ -5180,7 +5347,7 @@ des = 'Macro to list directories pointed by "packages" fileref, version 20231107 %put ### This is short help information for the `extendPackagesFileref` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to list directories pointed by 'packages' fileref, version `20231107` #; + %put # Macro to list directories pointed by 'packages' fileref, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -5281,7 +5448,7 @@ filename packages list; is provided in required version */ )/secure /*** HELP END ***/ -des = 'Macro to load additional content for a SAS package, version 20231107. Run %loadPackageAddCnt() for help info.' +des = 'Macro to load additional content for a SAS package, version 20231111. Run %loadPackageAddCnt() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -5297,7 +5464,7 @@ minoperator %put ### This is short help information for the `loadPackageAddCnt` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* additional content for a SAS package, version `20231107` #; + %put # Macro to *load* additional content for a SAS package, version `20231111` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/packages/README.md b/packages/README.md index c330196..943a8e4 100644 --- a/packages/README.md +++ b/packages/README.md @@ -10,7 +10,7 @@ Packages: --- -- **SQLinDS**\[2.2.7\], based on Mike Rhoads' article *Use the Full Power of SAS in Your Function-Style Macros*. The package allows to write SQL queries in the data step, e.g. +- **SQLinDS**\[2.3.0\], based on Mike Rhoads' article *Use the Full Power of SAS in Your Function-Style Macros*. The package allows to write SQL queries in the data step, e.g. ```sas data class; set %SQL( @@ -22,13 +22,13 @@ data class; WH = weight + height; run; ``` -SHA256 digest for SQLinDS: F*42DC179E1D2B946AD519C4EC04A068061B312E021C3F4BC4826D2775E116E1B9 +SHA256 digest for SQLinDS: F*3C010734B76CA7459C4D35087C899121011CD4AA2932B56335FF11A805C8EF8D [Documentation for SQLinDS](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/sqlinds.md "Documentation for SQLinDS") --- -- **DFA** (Dynamic Function Arrays)\[0.5.6\], contains set of macros and FCMP functions which implement: a dynamically allocated array, a stack, a fifo queue, an ordered stack, and a priority queue, run `%helpPackage(DFA,createDFArray)` to find examples. +- **DFA** (Dynamic Function Arrays)\[0.5.7\], contains set of macros and FCMP functions which implement: a dynamically allocated array, a stack, a fifo queue, an ordered stack, and a priority queue, run `%helpPackage(DFA,createDFArray)` to find examples. ```sas %createDFArray(ArrDynamic, resizefactor=17); @@ -55,13 +55,13 @@ data _null_; end; run; ``` -SHA256 digest for DFA: F*09EA5201360922A91A9EEE72F4567792E9CFDFB591BA33419E2BF2B31D9B7C62 +SHA256 digest for DFA: F*012375D87F66EB3A7BF5DDD0CC5AEE28851733EE33CC63231DF9045BEB958168 [Documentation for DFA](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/dfa.md "Documentation for DFA") --- -- **macroArray**\[1.2.0\], implementation of an array concept in a macro language, e.g. +- **macroArray**\[1.2.1\], implementation of an array concept in a macro language, e.g. ```sas %array(ABC[17] (111:127), macarray=Y); @@ -80,13 +80,13 @@ SHA256 digest for DFA: F*09EA5201360922A91A9EEE72F4567792E9CFDFB591BA33419E2BF2B which = 1:H:2 ); ``` -SHA256 digest for macroArray: F*8689194590698F9A00B57FB37BE3CA8D7330F16B3E591CEAF49E6BE0B70D61D0 +SHA256 digest for macroArray: F*2A108D121D4DACAA8752E681301371F80F0500B2EE28A9E3B39678415BCBD6B2 [Documentation for macroArray](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/macroarray.md "Documentation for macroArray") --- -- **BasePlus**\[1.33.0\] adds a bunch of functionalities I am missing in BASE SAS, such as: +- **BasePlus**\[1.34.0\] adds a bunch of functionalities I am missing in BASE SAS, such as: ```sas call arrMissToRight(myArray); call arrFillMiss(17, myArray); @@ -114,13 +114,13 @@ format x bool.; %put %monthShift(2023,1,-5); ``` -SHA256 digest for BasePlus: F*6214654B4575DC8E4BA3CF032924862C2F69A03A6384872BAA9F774EDF6A8DDA +SHA256 digest for BasePlus: F*D84CE41A550DC2D5C092C70C04A796E8329F34087A603BEF0CD366910C162E80 [Documentation for BasePlus](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/baseplus.md "Documentation for BasePlus") --- -- **GSM** (Generate Secure Macros)\[0.22.0\], package allows +- **GSM** (Generate Secure Macros)\[0.22.1\], package allows to create secured macros stored in SAS Proc FCMP functions. The dataset with functions can be shared between different operating systems and allows to generate macros on site without showing their code. @@ -129,14 +129,14 @@ SHA256 digest for BasePlus: F*6214654B4575DC8E4BA3CF032924862C2F69A03A6384872BAA [The WUSS 2023 Conference article describing the idea](https://www.wuss.org/proceedings/2023/WUSS-2023-Paper-189.pdf "Article about the idea GSM") -SHA256 digest for GSM: F*8D80AEB2DB7A4531BA124240E7A12EBE717293048561A877EB5B6B039BD11D18 +SHA256 digest for GSM: F*80197391195C3EC41BD436DF0C8802D3920E4D22B64009A7DE872FBDF8D4B86E [Documentation for GSM](https://github.com/yabwon/SAS_PACKAGES/blob/main/packages/gsm.md "Documentation for GSM") --- -- **dynMacroArray**\[0.2.6\], set of macros (wrappers for a hash table) emulating dynamic array in the data step (macro predecessor of DFA). Development of this package is currently on hold. +- **dynMacroArray**\[0.2.7\], set of macros (wrappers for a hash table) emulating dynamic array in the data step (macro predecessor of DFA). Development of this package is currently on hold. -SHA256 digest for dynMacroArray: F*F50BEDB542D96B07C763EAB7549FBC5F08ED389DC2338BFAAEBFBD1FD20E22B6 +SHA256 digest for dynMacroArray: F*C1644842102C87522E22513744B249027306A833AF7951E51D1760FF28656C16 --- diff --git a/packages/SHA256_for_packages.txt b/packages/SHA256_for_packages.txt index e9de79b..5802292 100644 --- a/packages/SHA256_for_packages.txt +++ b/packages/SHA256_for_packages.txt @@ -1,3 +1,11 @@ +/* 20231111 */ +BasePlus: F*D84CE41A550DC2D5C092C70C04A796E8329F34087A603BEF0CD366910C162E80 +DFA: F*012375D87F66EB3A7BF5DDD0CC5AEE28851733EE33CC63231DF9045BEB958168 +dynMacroArray: F*C1644842102C87522E22513744B249027306A833AF7951E51D1760FF28656C16 +GSM: F*80197391195C3EC41BD436DF0C8802D3920E4D22B64009A7DE872FBDF8D4B86E +macroArray: F*2A108D121D4DACAA8752E681301371F80F0500B2EE28A9E3B39678415BCBD6B2 +SQLinDS: F*3C010734B76CA7459C4D35087C899121011CD4AA2932B56335FF11A805C8EF8D + /* 20231107 */ BasePlus: F*6214654B4575DC8E4BA3CF032924862C2F69A03A6384872BAA9F774EDF6A8DDA GSM: F*8D80AEB2DB7A4531BA124240E7A12EBE717293048561A877EB5B6B039BD11D18 diff --git a/packages/baseplus.md b/packages/baseplus.md index 34851dd..66d02fe 100644 --- a/packages/baseplus.md +++ b/packages/baseplus.md @@ -45,7 +45,8 @@ * [`%RainCloudPlot()` macro](#raincloudplot-macro) * [`%zipLibrary()` macro](#ziplibrary-macro) * [`%unzipLibrary()` macro](#unziplibrary-macro) - * [`%unzipArch()` macro](#unzipatch-macro) + * [`%zipArch()` macro](#ziparch-macro) + * [`%unzipArch()` macro](#unziparch-macro) * [`%LDSN()` macro](#ldsn-macro) * [`%LDsNm()` macro](#ldsnm-macro) * [`%LVarNm()` macro](#lvarnm-macro) @@ -79,7 +80,7 @@ --- -# The BasePlus package [ver. 1.33.0] ############################################### +# The BasePlus package [ver. 1.34.0] ############################################### The **BasePlus** package implements useful functions and functionalities I miss in the BASE SAS. @@ -355,82 +356,128 @@ run; ; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +**EXAMPLE 25** Zipping and unzipping directories: +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas +options dlCreateDir; +libname arch1 "%workPath()/testArch1"; +libname arch2 "%workPath()/testArch2"; + +filename arch1 "%workPath()/testArch1"; + +data _null_; + file arch1(test1.txt); + put "text for test file 1"; +data _null_; + file arch1(test2.txt); + put "text for test file 2"; +data _null_; + file arch1(test3.txt); + put "text for test file 3"; +run; + +data arch1.class(index=(name)); + set sashelp.class; +run; +data arch1.cars(index=(model)); + set sashelp.cars; +run; + +%zipArch( + archName2.zip +, pathRef = arch1 +, target = %workPath()/testArch2 +, list = 1 +, overwrite = 1 +) + +%unzipArch( + archName2.zip +, path = %workPath()/testArch2 +, target = %workPath()/testArch2 +, clean=1 +, list=1 +); + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + --- Package contains: -1. macro bppipe -2. macro deduplistc -3. macro deduplistp -4. macro deduplists -5. macro deduplistx -6. macro dirsandfiles -7. macro functionexists -8. macro getvars -9. macro intslist -10. macro ldsn -11. macro ldsnm -12. macro lvarnm -13. macro lvarnmlab -14. macro qdeduplistx -15. macro qgetvars -16. macro qzipevalf -17. macro raincloudplot -18. macro repeattxt -19. macro splitdsintoblocks -20. macro splitdsintoparts -21. macro symdelglobal -22. macro unziparch -23. macro unziplibrary -24. macro zipevalf -25. macro ziplibrary -26. format bool -27. format boolz -28. format ceil -29. format floor -30. format int -31. function arrfill -32. function arrfillc -33. function arrmissfill -34. function arrmissfillc -35. function arrmisstoleft -36. function arrmisstoleftc -37. function arrmisstoright -38. function arrmisstorightc -39. function bracketsc -40. function bracketsn -41. function catxfc -42. function catxfi -43. function catxfj -44. function catxfn -45. function deldataset -46. function semicolonc -47. function semicolonn -48. format brackets -49. format semicolon -50. proto qsortincbyprocproto -51. function frommissingtonumberbs -52. function fromnumbertomissing -53. function quicksort4notmiss -54. function quicksorthash -55. function quicksorthashsddv -56. function quicksortlight -57. macro date -58. macro datetime -59. macro filepath -60. macro finddswithvarval -61. macro fmt -62. macro gettitle -63. macro infmt -64. macro letters -65. macro libpath -66. macro minclude -67. macro monthshift -68. macro replist -69. macro time -70. macro today -71. macro translate -72. macro tranwrd -73. macro workpath +1. macro bppipe +2. macro deduplistc +3. macro deduplistp +4. macro deduplists +5. macro deduplistx +6. macro dirsandfiles +7. macro functionexists +8. macro getvars +9. macro intslist +10. macro ldsn +11. macro ldsnm +12. macro lvarnm +13. macro lvarnmlab +14. macro qdeduplistx +15. macro qgetvars +16. macro qzipevalf +17. macro raincloudplot +18. macro repeattxt +19. macro splitdsintoblocks +20. macro splitdsintoparts +21. macro symdelglobal +22. macro unziparch +23. macro unziplibrary +24. macro ziparch +25. macro zipevalf +26. macro ziplibrary +27. format bool +28. format boolz +29. format ceil +30. format floor +31. format int +32. functions arrfill +33. functions arrfillc +34. functions arrmissfill +35. functions arrmissfillc +36. functions arrmisstoleft +37. functions arrmisstoleftc +38. functions arrmisstoright +39. functions arrmisstorightc +40. functions bracketsc +41. functions bracketsn +42. functions catxfc +43. functions catxfi +44. functions catxfj +45. functions catxfn +46. functions deldataset +47. functions semicolonc +48. functions semicolonn +49. format brackets +50. format semicolon +51. proto qsortincbyprocproto +52. functions frommissingtonumberbs +53. functions fromnumbertomissing +54. functions quicksort4notmiss +55. functions quicksorthash +56. functions quicksorthashsddv +57. functions quicksortlight +58. macro date +59. macro datetime +60. macro filepath +61. macro finddswithvarval +62. macro fmt +63. macro gettitle +64. macro infmt +65. macro letters +66. macro libpath +67. macro minclude +68. macro monthshift +69. macro replist +70. macro time +71. macro today +72. macro translate +73. macro tranwrd +74. macro workpath @@ -441,7 +488,7 @@ localization (only if additional content was deployed during the installation pr * SAS package generated by generatePackage, version 20231107 * The SHA256 hash digest for package BasePlus: -`F*6214654B4575DC8E4BA3CF032924862C2F69A03A6384872BAA9F774EDF6A8DDA` +`F*D84CE41A550DC2D5C092C70C04A796E8329F34087A603BEF0CD366910C162E80` --- # Content description ############################################################################################ @@ -3773,6 +3820,136 @@ run; --- +## >>> `%zipArch()` macro: <<< ####################### + +The zipArch() macro allows to ZIP content of a directory. +Macro is OS independent, the `XCMD` option is not required. + +Content of zipped archive can be listed in the log. + +Errors of decompression and are reported. + +Macro **does not** include hidden files. + +See examples below for the details. + +### SYNTAX: ################################################################### + +The basic syntax is the following, the `<...>` means optional parameters: +~~~~~~~~~~~~~~~~~~~~~~~sas +%zipArch( + archName + ,path = + <,pathRef=> + <,target=> + <,targetRef=> + <,list=> + <,overwrite=> + <,dropList=> +) +~~~~~~~~~~~~~~~~~~~~~~~ + +**Arguments description**: + +1. `archName` - *Required*, name of the archive to be generated. + Name should be full, i.e., with the extension! + +2. `path=` - *Required/Optional*, location of a directory to ZIP. + The path should be provided unquoted. + Has priority over the `pathRef` parameter. + +* `pathRef=` - *Required/Optional*, fileref to location of a directory to ZIP. + The reference **has** to be pointing to single directory. + If provided with `path` - the `path` takes + priority over the `pathRef` parameter. + +* `target=` - *Optional*, a path pointing to target location where + the archive will be generated. + The path should be provided unquoted. + Default value is `WORK` location. + Has priority over the `targetRef` parameter. + +* `targetRef=` - *Optional*, fileref to a path pointing to target location + where the archive will be generated. + The reference **has** to be pointing to single directory. + If provided with `target` - the `target` takes + priority over the `targetRef` parameter. + +* `list = 0` - *Optional*, default value is `0`, + indicates if zip content should be listed in the log. + `1` means *yes*, `0` means *no*. + +* `overwrite = 0` - *Optional*, default value is `0`, + indicates if existing archive file should be overwritten. + `1` means *yes*, `0` means *no*. + +* `overwrite = 1` - *Technical*, default value is `1`, + indicates if the "to-be-zipped-files-list" + data set should be deleted. + `1` means *yes*, `0` means *no*. + +--- + +### EXAMPLES AND USECASES: #################################################### + +**EXAMPLE 1.** Zip a directory . Example requires the `basePlus` package. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas + +options dlCreateDir; +libname arch1 "%workPath()/testArch1"; +libname arch2 "%workPath()/testArch2"; + +filename arch1 "%workPath()/testArch1"; + +data _null_; + file arch1(test1.txt); + put "text for test file 1"; +data _null_; + file arch1(test2.txt); + put "text for test file 2"; +data _null_; + file arch1(test3.txt); + put "text for test file 3"; +run; + +data arch1.class(index=(name)); + set sashelp.class; +run; +data arch1.cars(index=(model)); + set sashelp.cars; +run; + + + +%zipArch( + archName1.zip +, path = %workPath()/testArch1 +, list = 1 +, overwrite = 1 + +) + +%zipArch( + archName2.zip +, pathRef = arch1 +, target = %workPath()/testArch2 +, list = 1 +, overwrite = 1 +) + + +%unzipArch( + archName2.zip +, path = %workPath()/testArch2 +, target = %workPath()/testArch2 +, clean=1 +, list=1 +); + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +--- + ## >>> `%unzipArch()` macro: <<< ####################### The unzipArch() macro allows to unzip content of a ZIP archive. @@ -3795,7 +3972,9 @@ The basic syntax is the following, the `<...>` means optional parameters: %unzipArch( archName <,path=> + <,pathRef=> <,target=> + <,targetRef=> <,list=> <,clean=> ) @@ -3804,17 +3983,24 @@ The basic syntax is the following, the `<...>` means optional parameters: **Arguments description**: 1. `archName` - *Required*, name of the ZIP archive to be extracted. - Name should be full, i.e., with the extension. + Name should be full, i.e., with the extension! * `path=` - *Optional*, a path pointing to zipped file location. The path should be provided unquoted. Default value is `WORK` location. +* `pathRef=` - *Optional*, a fileref to path pointing to zipped file location. + The `path`, if not null, has precedense over the `pathRef`. + * `target=` - *Optional*, a path pointing to target location where files will be extracted. The path should be provided unquoted. Default value is `WORK` location. +* `target=` - *Optional*, a fileref to path pointing to target location where + files will be extracted. + The `target`, if not null, has precedense over the `targetRef`. + * `list = 0` - *Optional*, default value is `0`, indicates if zip content should be listed in the log. `1` means *yes*, `0` means *no*. @@ -3850,15 +4036,21 @@ run; , list=1 ); + + +filename pR "%workPath()"; + %unzipArch( testArch.zip -, path = %workPath() -, target = %workPath() +, pathRef = pR +, targetRef = pR , clean=1 ); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +--- + ## >>> `%LDSN()` macro: <<< ####################### The LDSN (Long DataSet Names) macro function diff --git a/packages/baseplus.zip b/packages/baseplus.zip index 3c69e88c488104dbabfb317b203e746452a6802f..700e6c8be1cf6b41bd33bd7f2c81bef725bbf0ef 100644 GIT binary patch delta 24787 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�Wq@T}jFDD5L;8m+TSjue{99@K|TFKpL8)#my%5 zWvtOOJq0rz6B?H5Ygb!Pnr!f2#)$?Gm$!{D(Sp(XwCd3UqKhMuV5e6uGmQ>)v?QDT zHB2La08hI`1|8Gn&bG)cyFFeX;A&r15%lyB+k8v%KaW7qyn_wfJV!Vu8i(*jv*7)H z7Se!=vtJNHe|49veLvSMSAIK%mfpW3LqkyS>Z(-Q#nO z(!<3hYJs2gclkNguWVlZWVLLD|NDaAZ#zxk#|d}aElBd-&nxm2%MTc6H|iw%jCWDU z@}tRFoB4jUzW7~%lfXDvq4tH(<1Y|2*Cq=Z-H5C~;z_eu&7B7CfwyO{P@U=436b~3?$JhUm8vM3HXbjQ(wz*r zcIu1#;W#2U`fPm3;&u7c$>(u&jh{ERr|7eItP%I(9wrFZZ0(vL%Idkz9tu)Nn`z36Pbl$k-MOGFc zbMwWs!Rl$a#J0d}4TMwXvwY=D+pb85%5P58Pf)g=z?lKionY-x%rzs(LfCvQt&^yc z#!MY`i4OeK5S)ZFz@n{xhfx`ad7&vD(6tGUfgxy!z_XQ!88xekxb|2AR*WG)nwr*a z#B?ypD$XE`s|VNRbNJ-dEaPyJJv_w-KG6hT%NCw$5SMr}r;K^ZE6HSL(by$#g7H); zjmupScJ=pfs%jpp4P)?<0MY1$ekxWgdQK?z`Mq<=6tKdDKeSFnl?{qPS}sHtjWV!G zK}L)QUW~x0^20Hqv{6i;4xX%l3t1^Kl76_1E94Dp>ZV{7^oQVJ$S~4hHr$68Zgd{t%qX zo5H$MM2mNzJd12cZq?r$WnUjc3}Tf(g}9)zgce2AkTOvMqS8UP13c&SW!@TQ_9 z!a5KEm?eWG)?b(2NQWo}X|7C2VDnSnhq$7>hLl7BNg1f#$#GIa44~Y#bHt2j&tY*E z{%Y&DkXxa?$aA2*Lz>Hgw=|qe-5*~PMQ^SL7<)&d;nO~9aCBZ6|%es!pwpksFwoJf}`h^lu7DU0wsQtNGvKLk3L!^@!qxj(B zcU2o%87*x*Oo}~1yqv@MB|*uCDo`#IR4QemEM>^#@=2$1B}+H}sb+JjT&j|hDjfsn zXeJGR%4#dY@j?L*zV9V#77u%Q`q~);h-PkPtqkq!d6*vdFhyU2D1nEddZd*n?uut? z?}jU<>sgsJF7KT*aC#-g0cwdookU(Q^)FwPezw=QNBVv*c=$v@ri%jVYLAV$J2jB6 z0B!G)ec2gyfLR^jQ-fr)8J~^r?FBEakhEK*CU%6Vzbbyk&0G4f%4~g$ez}!ot=ff# zMfy{YcPOFFmB?gT>aOb(wd-_Hp;kycfay))xIL?nkzJ zo5SvFpan5>V3!r72~=TsSS|J^QPy9XcMB3o@ukG;V&Sfl=qU@4sSY9WPv_(Sc4bN% zQgF}YeDu4}rW$NtAfJ`E3+H`zu@=+ zLHS{Y+WF;0Mkk|gVO%K^f2=BniKw<>KbGYB!@3z@%wjTO)*tTSODD|tXCmQtca<>z z0-cdKmB?V-EU8Dtd8NeHV^kW5Q4+KRXm@ z#+On~bDUmIH~Np8n`}#KDrr)AWql`iI9*}f=%QCnKWc9a_k(W9bB$o7jXU$`sa}il&k;`Hgail0wl^N zBU+nQhzz~(r)MZ@j(O7*F^_puLNCCkrT9PZS`xg3lvvhfb%+rSN0{j@YNX-9nJ`j# ztj^`Y63z289VV0d+zVn@r~D31Y&ZSl---KSe5$-FQCQLKNJbI%L-UlbCg`!C93wf> zxp+AZ2?V&JjHFPKxg_TSrkV%s`+V)KtJycLuOghMz^BG#2(ADE1WEOxTmf;WM z(HJofuE}k*Y>A?o1XWh#Ek$3vk~_APtxJli+FZ#ldt~plLg!?p5sfLJC_?VO14YYU z@giXmf&0i3*JRrvjTsoYVoxNIQiT-f8KiFyn3_>~zeWb~fW&J^Sh1V^hvp?6gXtj^ zc`x@;LO=HigNURAFL0$GNNoTVq)tvc7rCh%65*@e45JjO+``k`6;ISSww@skV%{Gk z{Wo}L=q5!!1@RyG{_mg$nnYjQOW1|-&I%$$9d{x;m&gkOHp`N(HEuE0%L}93J`xsX zq@W&jS1)I~)G~qlAz9ynJshagDwRr#PoaB2c!!DC!rHl{9PH~dEWv;+F^^{LPV``< zS&6e3`}l3w7#naLnh`bQHw*CK-xH1N6mTf3k$RE&?(pAxJLHhxMGTg5JEPt_rz>`< zE)O%eIDt$fSJJXw@Z*lIrl6eGz`UdP_;xQhgtuFKt}c2Vievj=Qq6Cd~bGQL$wY%xEU*qm$s=e`9ZJ>}A2+BR4-lFDA`VhichEd;I++cDS z`TSn4#xl6~Se7V)>=k-+ap7j@8NBDN3K&+mX~LFP95{*#sla4ac0r}y#40_w8TbPS z+uu!OAx+Ip0#%)++r$9jYh4~fjHd*q-dAp2q($2AsST7~CANSq@R9cX$$`N_FGmp= zcaW8YIY&A4sVXQrD2!3-WDwVE7;ed#j_mICHu3l%hvwqu@}iqr0XCh{;1!10?!1|e z5O=YVq8BU7pXYtHi^tWYygAxpI+uqHvv>O=^~yJ@R#}}&wPlqKbhM~dx9Ulx5Py1A z+!YDaO}w4GA#}jy*su*7kB+qmEyDU7Y)b*`PL&FKcR3EfHIEY!&isbR8S}F{y=+%0 z3IC_@6t?=JqY5O?U)YlF0@ixr^Z7pcp!JAkirUn?@O4EZB=CSC(ZF8#4fWxwrK!+qn{`jtH1BbCldxhqkrx4y$TzHwu+Hmlk85yl|@kC=%?A%v#N9 zJT}_{=qvA~$&04_rBzan?s|g0GeMbZW(+B=vQmmY*>zv60}GOgIU?^rLgk28<4`an zG(qRZBWDp{)`LjR7j_R)LSuDEI_--4WpIbV2;YsCDZ!3vx69qAPBD}T6fj8(Xd5xMDXcIVw|VYKK3i&@9Y6o&r9z|0}HYY!&enZKdt)Sa%ICM?@*{W za-Urtw0)F~=uGe)ZTRevTQ`?*rS`=$!%nNInKjPR(y1;rpl%X3<~416XzP8VqaLM4 zHmM&Tj*6>bxavY7e2vd#ZUc{3f*ATAeN9B=n@{S?qTzII1yGm4Fx#TxTn|ytyWIn% z?F&L9a9#RzCM)00e^>aNJ&|62Ou73)_t|g+`i6(X6pMGNt zN_cQpDQ$Anl=l>~`_|6vRz3=|v*`hbN=x_mY%d^+*JCL|P|J^($zQk6qy7dBE`nBx zL1m=-13zW;SI&X}FLId8blt^S3Uw$gCI7&fH~oPanTI%eOM~5N^>$7tX0D6F-5jD< z&3tSWa*yij?2PWf7=5D1{_DSH#xZ<0ZL#8fUEyVOHm|(v@Lv;Lvh=(AOu95M@>-1Iiu8r5Mcb9tMpy4AJ1n+ZsJ_@s=Sx%^~ z(RDexa`xtV5IIzM9z5Idnr05LOe*adv|eS9$K3Z`hnyP&yezf~Nv z9s)2S*YkXZc$!>{1$9#HpZ$P@$51Xa;Z+EL9(SPt`r+SaG3Ho9sPd*Jy6B^^$>YEw z{xH$3GuOC;LTNG@H$2Txit5MQt)O?$=7ZjvRE;?jgvr1_P*pBbH)kr7)aJ6TKwk+MXKDp*vt0Adge z%LIl0Th@GzUKkBXARq#6ARuTUR3JBdTL&Z4WFGHs1z}^@fQx@zu(`%W(ca&t`!uKYJ!!GWyR@6vZ(GQHCcu0po z;&#E>v;8(s%#20BaD`hYH$hEPP(f^{j3u&iyEUjb)&f917pOu*M>ez6MuyTjx&3#*5@cXquf?+#vCoX)>Ft(N2md$6! z4xF5w&Pc))itV=wIh#*eXm!Mr7@sUmKsuAV?Ty8?6H>mIvFynl{wlRJwhARYn>7Y> zmvjbnP6d<aAJE#VfrB7(YuKN%qlrBJUz~wfnop9|o;n8<_ zDte_4nInQ%m_>kGl`%k$&4ib+dUAiLsYQ$l%8@fnmdg(nY>}elgj2(<@Y#_O0KSv| z4ht-hi*&IK{hkfy(ucKi2U<5HXLEO4awr8Bvn~20)ic5os5UjymC*Ns3Ooc?$dV4( z;70)G_LyvyYh%tcGEJOOWq&|7)JH$csMUPF=VGIu9-L^Hc9)vVnQfJ$(0u;lzVsc4(a*YHjkx)CjXe+4g<_taw$<4F*c{Aikhq!V*^*}rZk^*@~6=&1jkDUnOis*j0zDF*c?&30#y!9Y4+F`znIR5Mof#ad_3)3|$ zC6PTtTiWf{fqBp2K<%A8Ak~Z|>uxs7FHG3**$8jK~`WpbmV4Y_W}rr;Z~ z?7dr$8UZ4x0{cvSvmy&c8l|6irm4!RQ&osm|IS`H1+`3C_ZB@mjmI#P95f+m80;T~hzJOc_`0oWiYy^8kigKx+5 zj`N%M+Gh_=LFNjncQ+&OY`rkzuIXUDop>u5^c```!ZnXZ@2F-<*odiZ36UvwJfYx- zgI4V#Gqw8Z78(Q8TF0S=@bB{K+m0}zV=h9QuSh;xQEFtnQ4BA`Zvadj0PPd%)1pE| zi4#EB0y4}o&7d~pEtFrn;m-xCL?{gJE%&O1 zKSXb{Z+JmUI?er6sI|4j?APft@kr1w3c(@LAV5gKo$^juf&J=$#&#l((KKGrtLk9MVT21Q@wJcD}P&(!x63_00-4z3`iQFR)H1G#BPiFS(^t}!--sVnmmD(g_6op8z7V2CU!{)n zI_Lv^0cux0ef6Gxnubg~K*d<)gDCZubJeYNDg_JuO{5+I1oUT#FoTwW*LUr{i;%Ar zqDsg_073+S@8@&_GssitAg(dY<6FJTi7?g@kde29^v6B=?~@cQfQCL}W%6LOTQ${H zW=?ZMfxVuqHlp@8m30gw4MxUL_lGZt)HHw^;8MyQKk_O|rO&S74EM0GgSDDxWhLUr zIS+2oq|i|vaCtB$0J7#^ont%F?JM%A_q1Q@$`27k|Ni!rvbn!QhJ}vfN*2C~jG#DK zd2Gw=rY~b!@gRTx`*@^S8&!gIn+YaRT=G{Vpq~nz~}(9-V>HU*l`ZmJQM$J#1ljn+c(r<#!EguNW|8 z=bYPMh<1ANYSFq1q|vLj&e)lKlHgB1yKTD+Ji?8L%{_R=wJh8W?CX(_zZM2W z;r&ImUz}3}>2xsT$4!qPGJd?Y0Kc~es-*94&^%gQ=-FZCGET3bztj2uS5i12&_*>w z00H48%h6E+>>M`P5x?#GegYA*HlUR!ojcM;#_DS1!VN2RXn(ahfYZ&_YfGg_QAb99 zz2faYnNOx|msh)a96ToQ;!!27nxQ76Qh@sTzYKPAa2zs4kGy`uH0TzrmwjYw zSZb@)&RK}#lRSi+AxEMK^%}|Zk8(+1!S@_MI0xbbpbnAb5(PTCaAO$)SP7{p&JM5r zf-gQladYo^No@I8?>;1lhEf$u|LnxL>(kH==Ut*7O z_-2*?`tJfEv!EPT7*FUKHzxxcKniRzC`*Dcx8xJN_4i;S7IVNv3*CdBT%s>tnleRN z3qD6%e*{%x6O`3{ZLyhaTj{5OJK?9@n|Eg;28z($MVQjMh)=}a-$N~FdbJHMO01~EA%nAf(EZoCV+xCEeI__9|B#-Y?sary-W1|GM-B+ea`NSvp+dO)B= zMOtY7t{8m~kL$R)w>Ao@+0NY_yb3Tu2(67TgKyVYgV*^SkI~e_V9vz*|FoaMnVyta zAp&t17D?t|N%5cu$znwY3fSLh*#GIlP!Am;gx4lI&fh`r%pE~MPFcn76$4R1$>WcP z2_gg~Q@wZJzm|Cgfr#@Z@Y2yW&`w0;yvCft%``E(LUa-lK|RXSD*%Jhs0E}=7W4lK-koxPwnGE#!zE%4SylUgLs5fEDJkhl9kEgha2&OtiEo1fMBPMa z&|upordY!hf7uqRqtX_%U6loCfjO$%f{hSq5J-^$3GVzwmycSAq{?eb4``mcv&s^SPlQ|{RTh0L>iTeZORJKZbzG})9sk& zoieU4Fq{U)W$VrjHwA^cx8)QgqJ zxQUxtQ*4nEMG_cy^wpDBVv;I}*^!N_coJoR(F`kE0x=wYt#N8IPO+11VbTWwvpVZU zWvG;3r-eVA>W}K(0<-BUWST(V7PApB(#^ZYdvN-ceh%jjV)qWEpRMiyK|x|U1~AH+ zr*iu!f1T;SafQY zP^EJTW^f+LVDi&_^8rBsOb>EDn_i(;u<(^^;tJ(L5;317lHq;VlHA;Hj=2~6u|J~X z;8<=V{#1zuun#gErrN|R!Ms}v8H>j?$tXtXp6buwCB6xv$)wPhvMSg0%Kuz$<&sr5 z7Nemrk^ppNjlbJ6RHrwqyWO~&wS8zB3TicA*B&B)KOSS0eh~oRcVC*CPU@h7(1wgb zybEl-GaKw)zK3=kvGp_+gXyWQ z*4)tG4*Q{3yg*^F&wegbprID*t+o55q^<1cr2pY< z8NrvO&{n!L{ebThy}H+Qcbm}Aop5O(`;xtu);eBMY9M7MLcg{p;1r%lSeR?o%CWCB zq!*w?#v_G9&Hjb&d0MJ$aWPenW)$)bJ;(IA;%%0?T*L?3otuZ0->qKKwqWAr)uK|? z;jOj5F(D(@XEC+xOPZGAqR>MnVriAMt;NVrK(+g;fB~E|Eg)9Z>b_{1Y*OXYj)hGF zMjk4*ez8?AyvHLR5ET(@C>A~@vU7-+YOP78PF@ZSvyKxcINzb$|Clv_qV&;}?xIPOyYj{c1bXJ*{@_V{;u`s!xH z>3O_>7ag!vwt0M>Wt{8xehsg;S)`*?wW|{D@c`=>Far=`iDJ$bz$x@;5wZ~fs6ruP zCt@CiYUd2UpoAt_^F4qYsFNn3B-iokEvrZ`3t<-^T12_MjgwMr@`3U9$~LQl&Fw7%zQ0y;9J1xx7nuK0M1ps=;cCgSVaCCQ z=F+)7HKHskL1-#WDPNm?<%!&~tFOzCCIa~U1S-PVR~C~@KeT#j0@WMPlcRI(P#I(` z>$Fb9>ne$Y2-yg0DqTcN4Cy33l_~lpxRpMcSvDq#b>N&cL-5asZhu~S;jy9Kv)4a} z`EGMDRG57;mN0o<-n)N*{_oe_C06B43JwSeHd&mF9N@Caj{JRt^#c)88c7;Y6ZxQH zY+!#dB7bRBVQRgr+iPWs9F?g^DyJBEJRaYx*OdSY7ExTBv!MypGz+{2cHe+dtcAER zmaFn`zCGT#x>|$;1(K$Bb$flAh%rt~k{s``+M5*Z{5R)QXfR~zAceH%W%)~X+=0F* ze*lb!6tHVK5yVM6vv+36$PMa-AB#x_*xpi0!NtW*z_3l6d#a~+-U8E-{CFJ)o5#81 ziM6~iUlO1=oPRyj7=3edbwA}iJ-mObS4r*BHAQgRF!_44hC4|1N4rbM5yko}5?8!G zhrSb@HO{xcrT^(U^b@4%fwU4AW}iNR>R-iC1oW6TiXA=kFVf00GpaL~`ps48Bd06{ zAfr%5u~0jSBmVG?N+CvLluK|;KqBYUEPdxun$OWC{9HZ|SXRi2GSvd@fSvqa>LPp? z2sMadHQVNz*4>@n`sJdP59@M;Y1iEwPLOET1UYCmzd5bHM}s^CIk`Z1UVn`1y>`jl z2hjXZrtcjs-#vdRB*1%R@F`FNF$;NR(h}7|Oxk%Keff&Tp-d6F{Efw%5E|(_!D~sI zrIQgZ&d-W;pU(OcLybn%CRsce)bGP9iU}lqj(voDMldSG}n3(cbU2FyydSlT@jJ2 z8*E;-9w*SX3sIHm7zNj&H&cET<`dFpe0~of5uU{ykwY%h`IH_*?5{ibtArW9Bv2@@ zabZVW)Ti=ZNyn2H*8QUAfk<-SF8vIv0gB7eeAa!HM#ltZj)(cnjvJOD&Kav$T)=!; z>PQzeu%Y|wNomKCO%Z7fWmxr!Xl|ks`;%7jWTsxYvy0x`RRxObu9DcO7Yz3-fgqv9&8MaK0&D zaQK+p!L^TyR)DR$5mZW>l^Jd9G~gy=d8BOrl(EM{L~rM6SqxO%S>;v;gPkW0CcNM8 zqEzM|s#EkeYCgKbdRh}|x3@L@fJG5U^TpE$!+)7nJC%eFM@?;z4Q62ktD|i9jh#u> z@7AGv!^$SZNOn<5HO1%+5;x*@kZSd0nfu9WXxkihNS+|gM&Xu03x8e(Sa@DEFOXKV zc>crs`l(ocsV1UY(y*$I2`hU`Go1m?iN6f|#Pzy%1DKu8Ge>)Ne{ne%OmE@ImjTR| zT>GCcq`GhN!8gL)s5b?T=xKU zLF={z8{_wfLNxI#3BbAT`pw=i9E}O!up{2SIsQSYT#UM2Sqf7y>@nPaqh7}PWlHog zCumxa%&|UQL(@+;d085#T8MA_ANZySbp&tfT6PN4m5;VH9@l`SF3LfCib2RwdK>-Z zeNJUHYyFsgAox?H?XR+vW=!-0HJXeUO&7O~71L?_?7_r?Kt9ma)cvK7UhVbEysYh( zgB_N}$%ZwL=j-9jbp@>paoQ^Qx_^d$6<>WWE`OU_^zZ*vnrne^5pQ4gN4ND5?6Clg zz)V`E;3c^t<)Q!{h-35&CJf%cJ1H;A`!osQN0|C&r4rm^E{sNjH`8i)v%n!#oe=^+ zffgsbvOIpH14H0n^h39Yu<)m+sxbx4N=RFnb=PIP4eqUrp%r6D>?6ldRoYSP>WTaQ zVb)j9e~m^xWmJXNo8DqXg?7{~iFt<5+ZN0X4i1jvEy4#RY))?S62EGJU5$M)&yIm( zC<(_LbIqK^plU1bf8%4iVpur)C+%>DksgX`clG1)AKVuqaNO2Vw62y=F09lO>-b8F zYuMEnR+|V*_lp;13HPHTrBxSE>%^D%0)4$4?gHRTy?j;a47iS)ohu8A!MBAwxRz^Y@oWX7#$Thmpr;om-!!OT`w1$bQ z-nGgU49Qo~L>R>U7&E>+JL@Hn7G=E~IiIYcoA&{`wwa1Ouy+Dizuay87I+{KVvRgj zS1m$f!37HqJ3Y_8^E@G2B2weUEmV5^5s27OsgN#)A{EKQw=sz4FFmFch|k82#Lx@G zO7Zi~?uua*F7{=^8<}&K2lHKDRj|HI!_$MxgoVn1)KVJM$-E^~E9avH6ZH+%$Ogl8 z!({;=nx$2gXr9N6slRfhwF5ErjtOOffOc1)XI;+QQS&#Cy>irmJdu%jl|Z1jKaioF zxeyoBuT0D+d96+M>-!BoX?1?;8GlT2zaAxP1S@cb)i$D*fje<)Qv=}X99D}Cx`o3h zi1bUU*HZ5oR_m3aJJct#&W`5yE2Q=R*c<`G+(S#|>J``vWCJ*7bxOQqw5L)sfW4HA!TMem8*v~_;-Y);5mB)iMg^GVI zbX%fW=(UC=@gmx{pT_HKXzf+yLQThL%2T4LsY9F5suYn1WS5m0m7D*xTOR@NT$?qO zl_URIT*8Q^T4V`Yv*wbnTgGg^w~~~V=2ZVo;zk{(#D(Rt`2lVe6t8surnV6*@iEYp zWCA3;RzMUol8BJ`T^CuhO#rt5G1^(EZlb=a1}DZzkVnY$b(+#=B=_-s4Cl#xG1}NT zYC9bA@|{Oz*OBUwk#zArB^f~3J*7YcRJs_6Oj$j}SesMU45%#0-B7+0(lSrXF|U4r z453J#@8O6>MO~GD<%m;3mhA;d&{eV*y^;GPH!<2uEm?n`6)t{TAj=&t?!gxRkX z+E_#Nj-$O@Q{=}v(g#SU%;D%Uf`m?2DSg9oQ;VhUtw^4-a0tJn>Q5l~%A2INy6RhJ zw+g)vpDr^@b=4>E1{{sn?A_364w}z?A2?!sf)3hj^sUily2t~cuK1XhwQ)X8tk*mh zUG*QLUPKGl9bVt|9(sVGWkm`X4>j;AP`EE`&xCyss{sBq*VSzg_1cw+t=3Il#S}Z61L_l|9yzbH>^(}q!*P2=LcrnsVA+8Vd*!#Y^@sWG za$FD0Tmd~3^xaRP=dMt9ONaY?Y>2tr_03LLIX$M6(PwVF1?fLWB`6JgM#D3H2Cs(Q zqf4Gk{fmEoQQ9F$yQt7q+F`!bEyu|je%Ji%0oV(L<-I#ix7SZ=u@9a|P-Z_;KeE-; z!f4IdfrJhDqXQ6*xx4PqW}|B-484u+cwLTV!+~SNU_UD-cw|U3`+XlAS5^OK(r_^U ziS{SNYT)U>!(i#J_H}D}s*yqb&OKF*Rr!OQm4Ght5kW;DQEigmHvE|DLp}n*1qS{f z>=79YHKDRkwRScX*k0b|>1&Ka!$%qf-F|ir{BH*hbZvmXilrA_;W1lC+A2JIn|a-S zNze!er1ln;rK3#2{B}SX2C%jsu;ui7E8&~Y{5#J5YqjJ@wdOnB*(+Sci#qEEc$YT} zdN-NFP6UO6WIPA)Fpl#+9Om81)C;)n%LwQTddOe(&*wDT=d`7#72YTDoJVn57a9F_ zvdpa{A$x!nj>8z5gCxAe7+D%C2c2w{-)L{o%>qda2olt%Y zp=@h`q|NvoI<6(jN+Z+qdd9Y`kY!6TBaTWMoaTi1mMM*J0~5%4kn56__%(*JepLPs zRz&`|SLWE(G`+uF`NN>-YBE9Pr$uBKL=NN-y<^<5VO#IZ|7~

wnzfOMYA9A6^doFJD*m{x4Bo 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 ############################################### +# The DFA package [ver. 0.5.7] ############################################### The **DFA** (a.k.a. *Dynamic Function Array*) package implements: - dynamic numeric and character arrays, @@ -52,10 +52,10 @@ Package contains: 12. exec generatearrays 13. clean generatearrays -*SAS package generated by generatePackage, version 20230905* +*SAS package generated by generatePackage, version 20231111* The SHA256 hash digest for package DFA: -`F*09EA5201360922A91A9EEE72F4567792E9CFDFB591BA33419E2BF2B31D9B7C62` +`F*012375D87F66EB3A7BF5DDD0CC5AEE28851733EE33CC63231DF9045BEB958168` --- # Content description ############################################################################################ diff --git a/packages/dfa.zip b/packages/dfa.zip index c189a62bfead338dde1676f6ceb42e13e7f086bf..657adca1e50615eead9b1a063f73fdc1ba6b7c20 100644 GIT binary patch delta 9629 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 delta 9468 zcmZ{~WmFwYv^BbM2@b)726uONcP9i0PH+v@xCh&~yF+kycLE#N;10nh0bWkdyW_oc z$M@B*RkLc%T0N^rb*~!h_b=%CCul5H1sGTy5D0__a`JkwBXPX{J|0U98d|(o%Mlvp z4^%$_-2#pD&)5=yvBv{A0*(_L7TX|-^dV&17m#V)o)Mhy?yIXVN0&L$2KN|5L<|*d8k9rb@#)t zMRy9*%b($N>P2#+5q;<~t&fv{ruj_OV&DaTE8mp?pG^i@l!jc_(^{@|h%T4cX| z_yXRiWJn=mR+hVDGT3P3U?|`W8^?8e&TOPqX;W6pzlQHK;U~U@$cc20!tWdzv%h<8 z%Zy#~8RPjMso?%RtTpnW_@}28!=4gv#zBngzwX@wy$5c4paw_${N-MFn%qXt*zv`anFE^)!H16iC zm!ZO~?qyftARmY8fn(6~a-B8t`I$W_;o*1MY?T2)O-(y;lB3c^2iISD%6A+1=_S2A z+4>8jte?=1j8qHrH4jvFzD;Pn_Z=|2FZ*=7`Cf}Ek{ds!g$U8$s<&v4rb}*WP(OFj z%}g9H!B}UT=l;BBH`!0&q2#=qYv@pT`Ed=7pR<*TfGg8 zHSf@Ya{}E%}cVF3xE^AhIzUk=n+x zUIMyk7fS&i2EY0O$ zhX&kSf0OQmrZIOjo5dc=M?Qfq&smkx||Jd+Pj8L1e$26^6ECEodggn@kF;M<~ck@J;uRpOn zyn(vx*vFJ!R|OY>Xink4>U{e^wic=o*Kv5F?U>sLAv&z9_f>&h2s_Y9HS8>UdWx~F z#_n&++Oe>mP)vwst==KuZ2UB0VcTb)%ta-MCAgB&8!-Bn2MKA`(VH@IN-{49DiTUsuWRAPcGjq)1F$TugN6$ zDOp$K;5X?Y)1&pSKQ$f|n_cSy<21QseAOO7b$i0_F{SnK}1^{tDxrY1|m& zmf4cLin*TlEZXc!kfTpR0#lo89lLYxx@#0%XY;zHKu zov;r?`QfU+z@xBgHa?tkoM}%Tq@q>e$N7Z~WaFJ4udN-fCb!W}CrBCgeF$-}%&}V zjp8`%!UYPe>bWeXT*ofhqOA^1B-cZ`< zc-(7SRFThJsG#Z{HE6*!17Fq3R0@wdo=FYVFuIT$LatT2e$n&-#*v#*Da1Sgo5q%CgN7AbxRty7&rac;;yzUvh9{Zq?C8ID(<0!r?Ate!6}tQ* zfB$IN9MfG_G#qv@YlL-H&@MPgX3#0^4I&x{k3n{mHBJedt{C}H;k591eh-c5I9%#L zl=>Ro^#-3mZ!BWpODis~Ntw>a!HZ@%-41bkWMJI0lErxp_yj3T;kC;SBS!Zr+7m0v zf+c6%7h4&+(F}b4&bUYRtVG}!TAuFsP4c^@A71X3%$%>UYT}`TVBV9ZgA}O>k!gtw~ZWpkbOkoBU3nvb5r4zB!@t5IJ5DR;z;p$xEJ8$VyPd^3L{*gMb{ zj<~@JMIXX$0#c2crycm0f3r)j3UhQ~zzWgIw;}ox?k7*O4@7;DWh~mG37-_)eI|ou zE{RL_M%1HO6g!N{qK0Q*EB+F&V4sO=G`bP^lY8PFl-=fv8nj-w{kUI4WiM=CbBJGyF#5`aL8J~ zbVNK*R3zq$NpBxK-PQRbFTzsq3&dybr|h>H`$J&H9ECXUY*Vqn{Jvmq=QWv# z;EkE0xtNv~k1)U3MvEDvLpG0B)ihp;I+8_y!pU2XK=IkFz~xF1ksq`P^Y6Z&hxKJ_ z1EM`t6CA^ezrO{rY9x+@Q62Nx8Xw} z@tAtlst*$c*&74K$xtaXp|lp}>o+sX$+ph^656DF-RV`zjE4~!tfWj`7OX!kt0${@ z72}R@+iuf!m=L-}*rfvVtxv6>f7x3U2mmaj1}ig$b`yg8&WQ5Vlj?&7jgs4ZlLp?1 z9zfx`fFg8gne7eY+gp{BJ~bJjgTSZ4$j}t|9iPT{ZlPVOkEylF1nr(!)Btj>aNII4 z?t4!~3gb$#;^?@Ga*y1HpnVBDn=hsV;QsZ!gVpO7w_i;m8SFmiT)_0sXDWP!-g>IzbsNF+gyw_ag~JhMRukiRii&zx@EIYVcs#5|S^b zh0)^6oTN(Z900|}Eedf|sdpovs4NYqV~(5OEpbeFvl6TAo7I^|2Kn$%g;kV-#R&+M zX|g=cqwn=6)3b{yjrB#;BIK(CF=jbZza(_T(O(~)A$uX@U*$Pxjzgm0G`AwrfbJ0^ z2=|Hv&NDSOuc?M?aVG1Z*G;?Eg26l!Po6InrZ^R!IUMOQmvA<#>`aIj0Sav1?TIPy zfmzWJ3(>y&T~ubdtvkwAPiEfSz9Y63tq}vMWa?hemn$q+LJJ90a}x~O@qi_o@O`yvc$z?z=i?HL6AUIZN6f3T<4qP;7_{N(8InYb_Bo6xBRn& zg+Y-p7X6|#Cm#@AyM`cTKCCkxYLDT{?Fg@IH0FF0axJvCxUzQ2MOaAjR20-PKA{Ee z;&VZ=YtGt*Y0t>LOUg!_6qe^`fyQ}}6psT*%NQJ{)E6cEu41Ff`_jCd0EK&C`YZXR$LfB>S!D&p!w~l_gjJjG%$2 zRV6=Vg_{WZmyL4uHcg#Eg#vk3Lrv3nHH@8cnfcN`#LFHD5%p^Xv;#K9H_Ol@n-`2z zxl?)d7qL6$0>MV5Ws=?|z=Gk!o97}o-#ZVZCM0W_siv0u_|H}Yo9JE}#tXAiQy+S_ z(C$^cb7RJ+ck!dHryffx4hQaiY)Ydxa(G^}nar)^%W0Xc4hb*XY#OKauP^k~Vb1JK zwjG6*eZ2gW;;iW=@60#6BUg*yw+(x_lr4j=(ADG^JU1NmK5Vsd048n`iAz>;;w25; zb8FFo-|K!)N|JeDTl9x7p09Ng#@a!N`6s)U1~?!95S z(>7Ok{t-dY%~{HeA<18zxcR4RzN)HX9dgfaD*HsyD`2wuxw6*0Mg~*Qt);8e%1^Ct zA}x%udvLCB#T8cBAZxhm|IV&FkVKte| z-07|^aeL1AV2Wfl;N<7mso~hM-#EmB&(m6pgj!=nQ7-V6z*{KI?LF07?Cod`H!;rN z*dwp7&S;J6r#Hfl>xI#AE9WQEyK@RdQoClvTOV~4oFz|>h(@|j_V|oYT%`g$9K2(O z>$CKBmL29RrI@+VISyLd?nHPJ{poR|zISwDyhfv`A-&upd3DfTNnVBvKePN#UiNPa z3l}e;rXma;!e;`MRQ}|to#3CO)C1J(q2l8u4VV5pE?gsQa5)ycE`8=CGTsXb-TTDpLH^qap0yyoj~W~Y zc}TLywD5p%cNAzcV*hXp%~ET}iBzKv9+bcl&${46(=7)^)Vh{GVqrpvBgBp;nb!(L z<+!M!ZaR!MZ>g(!!hf6mPziiFtn=1CyiZdg<84G46eUaxc5D7Qw^odub z)D@>^vKyzMyYg|vsU7!}O-fP5#L}!aYh^A#e%0ip6Ow_H945-w$EW^S%>UtImp;B~ z=Z2g~ayPFkSDm{_6g#x_cmVHthp7?Lv~tl@dbWUMgQ+e*(wAE5{V<(pt8WqT=&ZfW zbKb6OKEXJnrU?}Zn^`R;4E0}GiIax0!6Jmrz=|x!3klt;NgH4Aq?)*MX9Imc78F<_ zqz7t-ia#r^cCokWlE2+u{pESG+RiADoGt)7McT8G@+JGra$4=X#ey!rqVEFjj5)rv z0QB@*lf8$-2UAg;*SF(muhKgpXfk=Zxyo>Zc zi-RHPYVKAqsXJoF=<6 z**twTphX=<4F#J5=SPUFwWdBzbIixnvI z;^J$x-C`4&d17E>)}6gW_n=r4Zg68rj*zKGMj|K$*~Uqcu!>PT>27=eR-~pp5sdwq z9NLtZCs34b6pZxjI_?GzQi8OHvztW?%syL*e3uOzS6kO2cP) z8mhsubT(ns6q=>)Kq>IyCABNdf~^$#Xzuu#S&l}~qw*>-Gk!T?qM5CWD#ILEr+(7D zTZ0Ho*8bRYvCZB+^a#j0G^pK^ObBr@+#k_Z^^5qE2S!`c**h`Wj%!%~Wnm+z9Q65< zWLFZ45J8RLBC~HK2Dm4pshX&K0`k&$#&p{3Tl|NLT^N+>Cqd@TnQ)?`WMo+O-Eo^r6d z2wIia%$Sjllp*BpC9DcSQ2R8&d0EFq1ELBxPzFiA3?jI;=!Z7iLI{=?_|N=D9;Tr! zbj4dSq-fO?>@eP#d6V^|!{cwZsE$j$NDO@MxfXuETl_j;CuqQTdc&x}IJpjC#myVU za(x%nl`5fQ%MiEJS1R_-G2~|1)}M(RmG`YUg#*0eC8sa5Az>jUf- z3jNX7R}Dpz?$~coP#({Y@yB?$2J%m;qc&4_PNO)H4(0b-u<#x*kKFQSM#SHt{Q@4C zY*cu4t>Hc1?KE)#_%>#!Uk?v6IkW_w=C#_rmp3}(=S!7%>x4-rj2URJ}BP(~38i%F}CfMJpuJD;KE80_)PXi*8re_4}=EYM?4V5WocHMTOKy znlTVL<<~}EagF0`o$BoK$`&9V?A6`$7aU3593(0`nLYXeL3&1C>q+LcmU|GtX2wyB z1XBu5`0KBQRaOnT=Hr^4;B5-uJ4FW7uD99aH|wXj)Jg8Cuqs#|SH$=wEN;C?Jc#db z>@g|uK%#;0TBA+<1YTebmic@iqvbV?aOof?OAy?lskpE3F=y?27)(2*O)3+`sa_8C zvyx6(NMqeP`q!HZyzGtOhfnWDHP2D2_4|5v9G8fJ2W-3@L`ILW>CQSy5`4+6(_f#e zoYws-FT#dpO5iFf)w@2oX!7DH$HusIc!k34P+m#2ZV1E~7(8bdA>8Yo?`@$QMp6`0(Yv{uIL3wUy0n>wp z>o(0lXq90n&i5hMsfih%S}Y&>hjTEPL>V!wt69k1*MKaV(_VD5wOH|*C(CEGSV!hi z;;lOiqafFI-~;crT=Z#sw)M0xW-j?R#ax@7O?(O$Sg%jKjmn!@x}?gLTRx85BtH1v zMDrJ2iUaJX{5(UqBy(>IsvS=r@^aDbwdkvbH8M3boE6cp$G=^>qRd9gKp`WxFln=m z>;(R>?UEJO0mLx}1AU4R*2tXw%;YZ_u-^VU4kJ8Xgob@huQKUn+>k8 zmQ1i<-Pu-r(Y^S8u=u~(ALjq~%}TMYX@Kk{`XmSQnzNs5oa?E87p=J*#uM{>-cOkC zB_4}IP=GY8TOFCs<`oNq9b z`48u}RQmnI7(uw3pk72zq!}wVJk6X2qyBiZa4%ZrsXxhJ(P-C^z7f3+u@D`wF(xcJ zj)h*1N|!O^j@P6;jH3M+r{-{FQ28mCb6^**WL_3OH}(iAD_hN2nciO-N)<#ny@QfV z4Tyb`Y&X|~@!o4;WIvkFv}BfOjbkAm%50nfv?7-I${XAY>cRCsLwXCmKwVKH(yb5~LrW z&fpc~VS8CeWvfM&znN72P?v#Md(a}D49p;l!3)%zd#TuBLT9H*F-Pwmx!Z2`SP6C1v{ifVGxA z&JlCb)VZ**s&aGW>Pi)7##rH6zcrtv~5x9Kafm1#EFzV{w_(j9ioo6&vyV%v;ZPNWj zKh0}Qx}Ef=1YE4`!Szxu?oVxd?PfCy{L&Z50S6G*i{|+$B4bY zzRRBZ1K>mjHk3yP^&!l&>u4#Ldpf-n9(pq34EsSi+k5~xx#iD%2vF#-G}rt%n((-JZb}aIEez^j8srBt73E z%g`z)L~lEoJ@;Rt$f-FJW4#n8n396vjd?Ma<{Cr+lJ#}k5L6svtE|qRBK-CdvKQj7 z=I6NQoj$a>C`B5sRd7Ds4|d~u*>JqK0E<4W=kom z!R=GGj)NHJN?HhVHKiY1`^+gjbDJsWBr2JW2|mX8(%I?>)S>w5FMNzQAL!FO*lFV% zf@OULP=ZrH=l#S29-j19PSF#7?)TROvS-DxIji)t48G@lv_D%R@Yd&;$sBlX2S>Iz z;lDhto>-cH0TXB4ta!@h-aO3$%v?F!p6V2qtrXQVIWSmpiLxv@W(I>LrQIidu8`N6 z!p>@Yq7F>oBrHDQ!@#AxyrCo(V??B2npz@|WL5DyN8iRX|RU7AnU!%$ybrAbf32g6Drf6xLB zf}(VFIi=tQt9kHDp2Cj^KB*mttc2i)Kxs1=8Iw{HIZG&9Y;473joq~K*mt>X#(a|j zAJNtVDH}x}SJNbneyvm+dhx`7knIxKL?b$@Zv3?QlewX84%YjdiNWVkEz)170fcHi%G#0Q=| zy-b8YUI}E;a?(?1SXRMdrO56th=(wC`D_bRg7KVt>?!f++#sHvQPqVZaK`1CtnGVp zLb5bXbx@8Jq=#2N4?SqvacqzxxPo9ejmn zs-7Nbf{KLW-ir4=znm_&lnn}(>kKYB{4+AEjUq@|$s4M9a(pG3v$DczHj;NenRk5l zBU+N(=lMFOM^84Mn62$53?{%Hv3IHg6-v6NUfU-rcZ%+pdht7y0VKECnnEQud54{A zBkDQ0Ugg0yD|y&u7h%*%Dk4IfxZnqWzd5d$h|}4kuVXhlu*-0+gQ^t5@*~ z4Bi~Wd5mbybZJ_~+=j}SNSWpiVv=`MV%4_J_vT~e=(VgRlYz$zxi0{bB5{`vtLZ^c zAJXRnBn}5uno6$1akU7W{BN=aG0D8fsa>{P{k8UblZ0VWr{&r$=3D&;2N}`!XeEQ= z;=k4-yM4qZ0?m$u=S|u9GXu{A>t>0sht%Z7$+7j~=P55=`h=>h+#@e&9@{9WQbyKG zSrpReFo+x^Y_{p_n`8hd#zn5-BiJT(7 zz>L~zQNaA}>}|_E5$a+R%F9mh%Sl^|=DDD1N~lIpU6A=ou+uVY-j`q@O$R)Rdo*DW z!#7qr{ohiy66*I7o#Cpf`=f=tV-Mq<7oC>F^rJdE@s*_=0RiA?%*eRGMxea4NU)_I zc7nuV^TnrKCndCFxIkc^K|lq;W{smdCOy5X;mWa#9e0leVRB({=FInZpS5?_iudr{ zQ)!GQu83$#IP_gN)eDK(g>74mTBeBN;w7?myQ|57-V{2?^eGbOd*#mu;t2Xr-L`(^ z#8=b|7vaa27ZU(Fb{o4<;b{_U=m17oe`*ZQMQp^u8J;$|f#;Ns2Aq(RYO@7(AqA;3 zOF~Yu3RrjTlQrc}KJ%%~j+!S9M=!^;Potpi)>yYoeSNfn=}0PYW)DFOyp=OA zmn0$iLG-&W37h#ZtwE>(B614`^JBn&zSH%dj4T9yt31l3!chMjoEjbIe~oKX2*zJy z)aBq`qdxe}zeBxXm49nPu#@HgHH=fyVE#^a%0T$n@XqeQ`it<_?){5UG+sg@{!ft! zn5c#8pJA{@3-|x8x+I~6_b)oxLIhP0K58M?`fq{7KXoeqHYgAos3#x+83g+5U}DDX zV&bBz00oT$`u}QK{@w#Zfk0utbaB8rZMbCrtd_WYQtONk0$K8dKt%uX z%UAz9@u=J&0XFU=f-bEA`*!{- USNWfATmyKxlLbDo`5%J+2iz>IasU7T diff --git a/packages/dynmacroarray.zip b/packages/dynmacroarray.zip index 502d3fafc402434b17939c1998029aa59cd8ae85..d019857828028f84517edb3e6de0394bd1b3f25e 100644 GIT binary patch delta 7848 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 HUgduPVq1*N delta 7849 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 jureR@ADwixeQ4j`Iwr7CP ############################################### +# The GSM package [ver. 0.22.1] ############################################### The **GSM** (a.k.a. *Generate Secure Macros*) package allows to create secured macros stored in SAS Proc FCMP functions. @@ -98,10 +98,10 @@ Package contains additional content, run: %loadPackageAddCnt(GSM) to load it or look for the gsm_AdditionalContent directory in the Packages fileref localization (only if additional content was deployed during the installation process). -*SAS package generated by generatePackage, version 20231107* +*SAS package generated by generatePackage, version 20231111* The SHA256 hash digest for package GSM: -`F*8D80AEB2DB7A4531BA124240E7A12EBE717293048561A877EB5B6B039BD11D18` +`F*80197391195C3EC41BD436DF0C8802D3920E4D22B64009A7DE872FBDF8D4B86E` ## >>> `%GSM()` macro: <<< ####################### diff --git a/packages/gsm.zip b/packages/gsm.zip index 9b7ff66c38a6940587323446fb460047ec53d267..d6cc4187653091a36bdc73d04cb691c0511c72e4 100644 GIT binary patch delta 16095 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 Rg8;Jh4@O*t|7=Er{9lhYrZ@lq delta 16056 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 K^8cYB!Tv8Y_2D`I diff --git a/packages/macroarray.md b/packages/macroarray.md index dbba1b1..15fa932 100644 --- a/packages/macroarray.md +++ b/packages/macroarray.md @@ -19,7 +19,7 @@ --- -# The macroArray package [ver. 1.2.0] ############################################### +# The macroArray package [ver. 1.2.1] ############################################### The **macroArray** package implements a macro array facility: - `%array()`, @@ -75,10 +75,10 @@ Package contains: Required SAS Components: *Base SAS Software* -*SAS package generated by generatePackage, version 20231107* +*SAS package generated by generatePackage, version 20231111* The SHA256 hash digest for package macroArray: -`F*8689194590698F9A00B57FB37BE3CA8D7330F16B3E591CEAF49E6BE0B70D61D0` +`F*2A108D121D4DACAA8752E681301371F80F0500B2EE28A9E3B39678415BCBD6B2` --- # Content description ############################################################################################ diff --git a/packages/macroarray.zip b/packages/macroarray.zip index f494acf86d9b2cc29ecd1314c89bedbe94b767ad..97b3c3e50229d6f09fc72055f44cc2e0461e39ad 100644 GIT binary patch delta 8843 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 VHI(7t{{j-coWEaq9*zDT{SWovJOTg! delta 8858 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 diff --git a/packages/sqlinds.md b/packages/sqlinds.md index 4bb5b3f..3f7a1ad 100644 --- a/packages/sqlinds.md +++ b/packages/sqlinds.md @@ -8,7 +8,7 @@ --- -# The SQLinDS package [ver. 2.2.7] ############################################### +# The SQLinDS package [ver. 2.3.0] ############################################### The **SQLinDS** package is an implementation of the *macro-function-sandwich* concept introduced in the @@ -35,8 +35,9 @@ SQLinDS package contains the following components: 1. `%SQL()` macro - the main package macro available for the User 2. `dsSQL()` function (internal) -3. `%dsSQL_inner()` macro (internal) +3. `%dsSQL_inner()` macro (internal) 4. Library `DSSQL` (created as a subdirectory of the `WORK` library) +5. Optional KMF-abbreviations `sqlinds` --- @@ -45,14 +46,19 @@ Package contains: 2. macro dssql_inner 3. macro sql 4. function dssql +5. kmfsnip sqlinds Required SAS Components: *Base SAS Software* -*SAS package generated by generatePackage, version 20230905* +Package contains additional content, run: %loadPackageAddCnt(SQLinDS) to load it +or look for the sqlinds_AdditionalContent directory in the Packages fileref +localization (only if additional content was deployed during the installation process). + +*SAS package generated by generatePackage, version 20231111* The SHA256 hash digest for package SQLinDS: -`F*42DC179E1D2B946AD519C4EC04A068061B312E021C3F4BC4826D2775E116E1B9` +`F*3C010734B76CA7459C4D35087C899121011CD4AA2932B56335FF11A805C8EF8D` --- # Content description ############################################################################################ diff --git a/packages/sqlinds.zip b/packages/sqlinds.zip index 3d555dbb79aa5202500fb251eb1d5ac93f6a4978..a6d0fa0b8a71908f7afd2919d8bda304ca33fd4c 100644 GIT binary patch delta 11486 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 Z=1vEpz~G>v0nh+Cf7a?f)SnmN{{TI=rE~xQ