mirror of
https://github.com/yabwon/SAS_PACKAGES.git
synced 2025-12-11 03:04:35 +00:00
SAS Packages Framework, version 20201010
**SAS Packages Framework**, version 20201010:
- Improvement in testing facility for the framework.
- Change in SAS components testing, missing component issues a *warning* instead of *error*.
- Documentation updated, `SPFinit.md` file added.
- Minor bug fixes.
Packages recompiled with new version of SAS Packages Framework:
- `SQLinDS` (version 2.2)
- `macroArray` (version 0.5)
- `DFA` (version 0.2)
- `BasePlus` (version 0.7)
- documentation updated
- new macro `%symdelGlobal()` added
- `dynMacroArray` (version 0.2)
This commit is contained in:
12
README.md
12
README.md
@@ -6,7 +6,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 **`20201001`**.
|
||||
In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20201010`**.
|
||||
|
||||
To get started with SAS Packages try this [**`Getting Started with SAS Packages`**](https://github.com/yabwon/SAS_PACKAGES/blob/master/SPF/Documentation/Getting_Started_with_SAS_Packages.pdf "Getting Started with SAS Packages") presentation (see the `./SPF/Documentation` directory).
|
||||
|
||||
@@ -71,13 +71,13 @@ Currently the following packages are available (see the `./packages` directory):
|
||||
set %SQL(select * from sashelp.class order by age);
|
||||
run;
|
||||
```
|
||||
SHA256 digest for SQLinDS: B280D0B72DB77001ADAAE9C1612B67AD30C2C672371B27F1ACB12016C7A1363D
|
||||
SHA256 digest for SQLinDS: D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E
|
||||
|
||||
[Documentation for SQLinDS](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/sqlinds.md "Documentation for SQLinDS")
|
||||
|
||||
- **DFA** (Dynamic Function Arrays)\[0.2\], 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.
|
||||
|
||||
SHA256 digest for DFA: BB8768E977D62429368CFF2E5338A6553C35C998AEC09AF24088BA713BB54DDA
|
||||
SHA256 digest for DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75D9141FA
|
||||
|
||||
|
||||
- **macroArray**\[0.5\], implementation of an array concept in a macrolanguage, e.g.
|
||||
@@ -99,7 +99,7 @@ SHA256 digest for DFA: BB8768E977D62429368CFF2E5338A6553C35C998AEC09AF24088BA713
|
||||
which = 1:H:2
|
||||
);
|
||||
```
|
||||
SHA256 digest for macroArray: 53C248E1DE3268946C9CEC7E77BC222F652FBB006D9317BE36B86410DA31AE35
|
||||
SHA256 digest for macroArray: 085A0F3D544EAF01378BB6C6B4F429123F8BFEEFC76013D1B05DFADFEE3FA661
|
||||
|
||||
[Documentation for macroArray](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/macroarray.md "Documentation for macroArray")
|
||||
|
||||
@@ -118,12 +118,12 @@ format x bool.;
|
||||
|
||||
%put %getVars(sashelp.class, pattern = ght$, sep = +, varRange = _numeric_);
|
||||
```
|
||||
SHA256 digest for BasePlus: 66E966489F4C183CA75FC32D3AF581FEC20FC9C5FF0C36E4DDC5A14BBDA82EAB
|
||||
SHA256 digest for BasePlus: 54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D
|
||||
|
||||
[Documentation for BasePlus](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/baseplus.md "Documentation for BasePlus")
|
||||
|
||||
- **dynMacroArray**\[0.2\], set of macros (wrappers for a hash table) emulating dynamic array in the data step (macro predecessor of DFA)
|
||||
|
||||
SHA256 digest for dynMacroArray: 066186B94B2976167C797C6A6E6217E361E8DEB10F2AB81906E0A325E5243084
|
||||
SHA256 digest for dynMacroArray: 281D9493564A8185B858D9525AA7D9D5343E42414AAB1D8A00AE85AB80882661
|
||||
|
||||
### ======
|
||||
|
||||
446
SPF/SPFinit.md
Normal file
446
SPF/SPFinit.md
Normal file
@@ -0,0 +1,446 @@
|
||||
|
||||
## This is short help information for the `installPackage` macro
|
||||
--------------------------------------------------------------------------------------------
|
||||
|
||||
Macro to install SAS packages, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and embedded inside the zip.
|
||||
|
||||
The `%installPackage()` macro installs the package zip
|
||||
in the packages folder. The process of installation is equivalent with
|
||||
manual downloading the package zip file into the packages folder.
|
||||
|
||||
--------------------------------------------------------------------------------------------
|
||||
|
||||
### Parameters:
|
||||
|
||||
1. `packagesNames` Space separated list of packages names _without_
|
||||
the zip extension, e.g. myPackage1 myPackage2,
|
||||
Required and not null, default use case:
|
||||
`%installPackage(myPackage1 myPackage2)`.
|
||||
If empty displays this help information.
|
||||
If the package name is *SPFinit* or *SASPackagesFramework*
|
||||
then the framework itself is downloaded.
|
||||
|
||||
- `sourcePath=` Location of the package, e.g. "www.some.web.page/"
|
||||
Mind the "/" at the end of the path!
|
||||
Current default location for packages is:
|
||||
`https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/master/packages/`
|
||||
Current default location for the framework is:
|
||||
`https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/master/SPF/`
|
||||
|
||||
- `replace=` With default value of `1` it causes existing package file
|
||||
to be replaceed by new downloaded file.
|
||||
|
||||
--------------------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation` to learn more.
|
||||
|
||||
### Example ################################################################################
|
||||
|
||||
Enabling the SAS Package Framework
|
||||
from the local directory and installing & loading
|
||||
the SQLinDS package from the Internet.
|
||||
|
||||
Assume that the `SPFinit.sas` file
|
||||
is located in the "C:/SAS_PACKAGES/" folder.
|
||||
|
||||
Run the following code in your SAS session:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas
|
||||
filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages;
|
||||
%include packages(SPFinit.sas); %* enable the framework;
|
||||
|
||||
%installPackage(SQLinDS) %* install the package from the Internet;
|
||||
%helpPackage(SQLinDS) %* get help about the package;
|
||||
%loadPackage(SQLinDS) %* load the package content into the SAS session;
|
||||
%unloadPackage(SQLinDS) %* unload the package content from the SAS session;
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
## This is short help information for the `helpPackage` macro
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Macro to get help about SAS packages, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and provided with
|
||||
a single `help.sas` file (also embedded inside the zip).
|
||||
|
||||
The `%helpPackage()` macro prints in the SAS log help
|
||||
information about the package provided by the developer.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
### Parameters:
|
||||
|
||||
1. `packageName` *Required.* Name of a package, e.g. myPackage,
|
||||
Required and not null, default use case:
|
||||
`%loadPackage(myPackage).`
|
||||
If empty displays this help information.
|
||||
|
||||
2. `helpKeyword` *Optional.* A phrase to search in help,
|
||||
- when empty prints description,
|
||||
- "*" means prints all help,
|
||||
- "license" prints the license.
|
||||
|
||||
- `path=` *Optional.* Location of a package. By default it
|
||||
looks for location of the **packages** fileref, i.e.
|
||||
`%sysfunc(pathname(packages))`
|
||||
|
||||
- `options=` *Optional.* Possible options for ZIP filename,
|
||||
default value: `LOWCASE_MEMNAME`
|
||||
|
||||
- `source2=` *Optional.* Option to print out details about
|
||||
what is loaded, null by default.
|
||||
|
||||
- `zip=` Standard package is zip (lowcase),
|
||||
e.g. `%loadPackage(PiPackage)`.
|
||||
If the zip is not available use a folder.
|
||||
Unpack data to "pipackage.disk" folder
|
||||
and use loadPackage in the following form:
|
||||
`%loadPackage(PiPackage, zip=disk, options=)`
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation`
|
||||
to learn more.
|
||||
|
||||
## Example ####################################################################
|
||||
|
||||
Enabling the SAS Package Framework
|
||||
from the local directory and installing & loading
|
||||
the SQLinDS package from the Internet.
|
||||
|
||||
Assume that the `SPFinit.sas` file
|
||||
is located in the "C:/SAS_PACKAGES/" folder.
|
||||
|
||||
Run the following code in your SAS session:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas
|
||||
filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages;
|
||||
%include packages(SPFinit.sas); %* enable the framework;
|
||||
|
||||
%installPackage(SQLinDS) %* install the package from the Internet;
|
||||
%helpPackage(SQLinDS) %* get help about the package;
|
||||
%loadPackage(SQLinDS) %* load the package content into the SAS session;
|
||||
%unloadPackage(SQLinDS) %* unload the package content from the SAS session;
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
## This is short help information for the `loadPackage` macro
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Macro to *load* SAS packages, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and included by
|
||||
a single `load.sas` file (also embedded inside the zip).
|
||||
|
||||
The `%loadPackage()` macro loads package content, i.e. macros,
|
||||
functions, formats, etc., from the zip into the SAS session.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
### Parameters:
|
||||
|
||||
1. `packageName` *Required.* Name of a package, e.g. myPackage,
|
||||
Required and not null, default use case:
|
||||
`%loadPackage(myPackage).`
|
||||
If empty displays this help information.
|
||||
|
||||
- `path=` *Optional.* Location of a package. By default it
|
||||
looks for location of the **packages** fileref, i.e.
|
||||
`%sysfunc(pathname(packages))`
|
||||
|
||||
- `options=` *Optional.* Possible options for ZIP filename,
|
||||
default value: `LOWCASE_MEMNAME`
|
||||
|
||||
- `source2=` *Optional.* Option to print out details about
|
||||
what is loaded, null by default.
|
||||
|
||||
- `requiredVersion=` *Optional.* Option to test if the loaded
|
||||
package is provided in required version,
|
||||
default value: `.`
|
||||
|
||||
- `lazyData=` *Optional.* A list of names of lazy datasets to be
|
||||
loaded. If not null datasets from the list are loaded
|
||||
instead of the package.
|
||||
An asterisk (*) means *load all lazy datasets*.
|
||||
|
||||
- `zip=` Standard package is zip (lowcase),
|
||||
e.g. `%loadPackage(PiPackage)`.
|
||||
If the zip is not available use a folder.
|
||||
Unpack data to "pipackage.disk" folder
|
||||
and use loadPackage in the following form:
|
||||
`%loadPackage(PiPackage, zip=disk, options=)`
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation`
|
||||
to learn more.
|
||||
|
||||
## Example ####################################################################
|
||||
|
||||
Enabling the SAS Package Framework
|
||||
from the local directory and installing & loading
|
||||
the SQLinDS package from the Internet.
|
||||
|
||||
Assume that the `SPFinit.sas` file
|
||||
is located in the "C:/SAS_PACKAGES/" folder.
|
||||
|
||||
Run the following code in your SAS session:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas
|
||||
filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages;
|
||||
%include packages(SPFinit.sas); %* enable the framework;
|
||||
|
||||
%installPackage(SQLinDS) %* install the package from the Internet;
|
||||
%helpPackage(SQLinDS) %* get help about the package;
|
||||
%loadPackage(SQLinDS) %* load the package content into the SAS session;
|
||||
%unloadPackage(SQLinDS) %* unload the package content from the SAS session;
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
## This is short help information for the `loadPackageS` macro
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Macro wrapper for the loadPackage macro, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and embedded inside the zip.
|
||||
|
||||
The `%loadPackageS()` allows to load multiple packages at one time,
|
||||
*ONLY* from the *ZIP* with *DEFAULT OPTIONS*, into the SAS session.
|
||||
|
||||
### Parameters:
|
||||
|
||||
1. `packagesNames` A comma separated list of packages names,
|
||||
e.g. myPackage, myPackage1, myPackage2, myPackage3
|
||||
Required and not null, default use case:
|
||||
`%loadPackageS(myPackage1, myPackage2, myPackage3)`.
|
||||
Package version, in brackets behind a package name, can
|
||||
be provided, example is the following:
|
||||
`%loadPackageS(myPackage1(1.7), myPackage2(4.2))`.
|
||||
If empty displays this help information.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation`
|
||||
to learn more.
|
||||
|
||||
### Example ###################################################################
|
||||
|
||||
Enabling the SAS Package Framework
|
||||
from the local directory and installing & loading
|
||||
the SQLinDS package from the Internet.
|
||||
|
||||
Assume that the `SPFinit.sas` file
|
||||
is located in the "C:/SAS_PACKAGES/" folder.
|
||||
|
||||
Run the following code in your SAS session:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas
|
||||
filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages;
|
||||
%include packages(SPFinit.sas); %* enable the framework;
|
||||
|
||||
%installPackage(SQLinDS DFA) %* install packages from the Internet;
|
||||
%loadPackageS(SQLinDS, DFA) %* load packags content into the SAS session;
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
|
||||
## This is short help information for the `unloadPackage` macro
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Macro to unload SAS packages, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and provided with
|
||||
a single `unload.sas` file (also embedded inside the zip).
|
||||
|
||||
The `%unloadPackage()` macro clears the package content
|
||||
from the SAS session.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
### Parameters:
|
||||
|
||||
1. `packageName` *Required.* Name of a package, e.g. myPackage,
|
||||
Required and not null, default use case:
|
||||
`%loadPackage(myPackage).`
|
||||
If empty displays this help information.
|
||||
|
||||
- `path=` *Optional.* Location of a package. By default it
|
||||
looks for location of the **packages** fileref, i.e.
|
||||
`%sysfunc(pathname(packages))`
|
||||
|
||||
- `options=` *Optional.* Possible options for ZIP filename,
|
||||
default value: `LOWCASE_MEMNAME`
|
||||
|
||||
- `source2=` *Optional.* Option to print out details about
|
||||
what is loaded, null by default.
|
||||
|
||||
- `zip=` Standard package is zip (lowcase),
|
||||
e.g. `%loadPackage(PiPackage)`.
|
||||
If the zip is not available use a folder.
|
||||
Unpack data to "pipackage.disk" folder
|
||||
and use loadPackage in the following form:
|
||||
`%loadPackage(PiPackage, zip=disk, options=)`
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation`
|
||||
to learn more.
|
||||
|
||||
### Example ###################################################################
|
||||
|
||||
Enabling the SAS Package Framework
|
||||
from the local directory and installing & loading
|
||||
the SQLinDS package from the Internet.
|
||||
|
||||
Assume that the `SPFinit.sas` file
|
||||
is located in the "C:/SAS_PACKAGES/" folder.
|
||||
|
||||
Run the following code in your SAS session:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas
|
||||
filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages;
|
||||
%include packages(SPFinit.sas); %* enable the framework;
|
||||
|
||||
%installPackage(SQLinDS) %* install the package from the Internet;
|
||||
%helpPackage(SQLinDS) %* get help about the package;
|
||||
%loadPackage(SQLinDS) %* load the package content into the SAS session;
|
||||
%unloadPackage(SQLinDS) %* unload the package content from the SAS session;
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
## This is short help information for the `listPackages` macro
|
||||
-----------------------------------------------------------------------------------------
|
||||
|
||||
Macro to list available SAS packages, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and embedded inside the zip.
|
||||
|
||||
The `%listPackages()` macro lists packages available
|
||||
in the packages folder. List is printed inthe SAS Log.
|
||||
|
||||
### Parameters:
|
||||
|
||||
NO PARAMETERS
|
||||
|
||||
When used as: `%listPackages(HELP)` it displays this help information.
|
||||
|
||||
-----------------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation`
|
||||
to learn more.
|
||||
|
||||
### Example #############################################################################
|
||||
|
||||
Enabling the SAS Package Framework
|
||||
from the local directory and listing
|
||||
available packages.
|
||||
|
||||
Assume that the `SPFinit.sas` file
|
||||
is located in the "C:/SAS_PACKAGES/" folder.
|
||||
|
||||
Run the following code in your SAS session:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas
|
||||
filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages;
|
||||
%include packages(SPFinit.sas); %* enable the framework;
|
||||
|
||||
%listPackages() %* list available packages;
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
### This is short help information for the `verifyPackage` macro
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Macro to verify SAS package with it hash digest, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and embedded inside the zip.
|
||||
|
||||
The `%verifyPackage()` macro generate package SHA256 hash
|
||||
and compares it with the one provided by the user.
|
||||
|
||||
|
||||
*Minimum SAS version required for the process is 9.4M6.*
|
||||
|
||||
### Parameters:
|
||||
|
||||
1. `packageName` Name of a package, e.g. myPackage,
|
||||
Required and not null, default use case:
|
||||
`%loadPackage(myPackage)`.
|
||||
If empty displays this help information.
|
||||
|
||||
- `hash=` A value of the package `SHA256` hash.
|
||||
Provided by the user.
|
||||
|
||||
- `path=` Location of a package. By default it looks for
|
||||
location of the "packages" fileref, i.e.
|
||||
`%sysfunc(pathname(packages))`
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation`
|
||||
to learn more.
|
||||
|
||||
### Example ###################################################################
|
||||
|
||||
Enabling the SAS Package Framework
|
||||
from the local directory and installing & loading
|
||||
the SQLinDS package from the Internet.
|
||||
|
||||
Assume that the `SPFinit.sas` file
|
||||
is located in the "C:/SAS_PACKAGES/" folder.
|
||||
|
||||
Run the following code in your SAS session:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas
|
||||
filename packages "C:/SAS_PACKAGES"; %* set-up a directory for packages;
|
||||
%include packages(SPFinit.sas); %* enable the framework;
|
||||
|
||||
%installPackage(SQLinDS) %* install the package from the Internet;
|
||||
%verifPackage(SQLinDS, %* verify the package with provided hash;
|
||||
hash=HDA478ANJ3HKHRY327FGE88HF89VH89HFFFV73GCV98RF390VB4)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
## This is short help information for the `generatePackage` macro
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Macro to generate SAS packages, version `20201010`
|
||||
|
||||
A SAS package is a zip file containing a group
|
||||
of SAS codes (macros, functions, data steps generating
|
||||
data, etc.) wrapped up together and embedded inside the zip.
|
||||
|
||||
The `%generatePackage()` macro generates SAS packages.
|
||||
It wraps-up the package content, i.e. macros, functions, formats, etc.,
|
||||
into the zip file and generate all metadata content required by other
|
||||
macros from the SAS Packages Framework.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/master/SPF/Documentation`
|
||||
to read about the details of package generation process.
|
||||
|
||||
### Parameters:
|
||||
|
||||
1. `filesLocation=` Location of package files, example value:
|
||||
`%sysfunc(pathname(work))/packagename`.
|
||||
Default use case:
|
||||
`%generatePackage(filesLocation=/path/to/packagename)`
|
||||
If empty displays this help information.
|
||||
|
||||
- `testPackage=` Indicator if tests should be executed.
|
||||
Default value: `Y`, means "execute tests"
|
||||
|
||||
- `packages=` Location of other packages for testing
|
||||
if there are dependencies in loading the package.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
1079
SPF/SPFinit.sas
1079
SPF/SPFinit.sas
File diff suppressed because it is too large
Load Diff
@@ -18,7 +18,7 @@ data class;
|
||||
WH = weight + height;
|
||||
run;
|
||||
```
|
||||
SHA256 digest for SQLinDS: B280D0B72DB77001ADAAE9C1612B67AD30C2C672371B27F1ACB12016C7A1363D
|
||||
SHA256 digest for SQLinDS: D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E
|
||||
|
||||
[Documentation for SQLinDS](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/sqlinds.md "Documentation for SQLinDS")
|
||||
|
||||
@@ -51,7 +51,7 @@ data _null_;
|
||||
end;
|
||||
run;
|
||||
```
|
||||
SHA256 digest for DFA: BB8768E977D62429368CFF2E5338A6553C35C998AEC09AF24088BA713BB54DDA
|
||||
SHA256 digest for DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75D9141FA
|
||||
|
||||
---
|
||||
|
||||
@@ -74,7 +74,7 @@ SHA256 digest for DFA: BB8768E977D62429368CFF2E5338A6553C35C998AEC09AF24088BA713
|
||||
which = 1:H:2
|
||||
);
|
||||
```
|
||||
SHA256 digest for macroArray: 53C248E1DE3268946C9CEC7E77BC222F652FBB006D9317BE36B86410DA31AE35
|
||||
SHA256 digest for macroArray: 085A0F3D544EAF01378BB6C6B4F429123F8BFEEFC76013D1B05DFADFEE3FA661
|
||||
|
||||
[Documentation for macroArray](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/macroarray.md "Documentation for macroArray")
|
||||
|
||||
@@ -94,7 +94,7 @@ format x bool.;
|
||||
|
||||
%put %getVars(sashelp.class, pattern = ght$, sep = +, varRange = _numeric_);
|
||||
```
|
||||
SHA256 digest for BasePlus: 66E966489F4C183CA75FC32D3AF581FEC20FC9C5FF0C36E4DDC5A14BBDA82EAB
|
||||
SHA256 digest for BasePlus: 54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D
|
||||
|
||||
[Documentation for BasePlus](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/baseplus.md "Documentation for BasePlus")
|
||||
|
||||
@@ -102,6 +102,6 @@ SHA256 digest for BasePlus: 66E966489F4C183CA75FC32D3AF581FEC20FC9C5FF0C36E4DDC5
|
||||
|
||||
- **dynMacroArray**\[0.2\], set of macros (wrappers for a hash table) emulating dynamic array in the data step (macro predecessor of DFA)
|
||||
|
||||
SHA256 digest for dynMacroArray: 066186B94B2976167C797C6A6E6217E361E8DEB10F2AB81906E0A325E5243084
|
||||
SHA256 digest for dynMacroArray: 281D9493564A8185B858D9525AA7D9D5343E42414AAB1D8A00AE85AB80882661
|
||||
|
||||
---
|
||||
|
||||
@@ -1,3 +1,18 @@
|
||||
/* 20201010 */
|
||||
SQLinDS: D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E
|
||||
DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75D9141FA
|
||||
macroArray: 085A0F3D544EAF01378BB6C6B4F429123F8BFEEFC76013D1B05DFADFEE3FA661
|
||||
BasePlus: 54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D
|
||||
dynMacroArray: 281D9493564A8185B858D9525AA7D9D5343E42414AAB1D8A00AE85AB80882661
|
||||
|
||||
|
||||
/* 20201007 */
|
||||
BasePlus: 884BAD527DE77A9AF4325053BF42B3B2FCD3DB1239B63D70B1198064095E1A6D
|
||||
DFA: 57944FF5ABC7A9879C402412DA0C18C38206301930DC834BC7DD3E968E283D1E
|
||||
dynMacroArray: 20B27D2CACCC17DE9AB70F7AA7105FF1B29397584538632CAE167A687ACD859A
|
||||
macroArray: F2AF51F9271B4AF5366DCC4E6403407393F245561B98A89C0F1699A6BCA84772
|
||||
SQLinDS: AE2093A1D28F93FA665B4174FC38C0487C489D2B281FE398FF18CA738D841155
|
||||
|
||||
/* 20201003 */
|
||||
BasePlus: 66E966489F4C183CA75FC32D3AF581FEC20FC9C5FF0C36E4DDC5A14BBDA82EAB
|
||||
|
||||
|
||||
@@ -186,7 +186,7 @@ Package contains:
|
||||
*SAS package generated by generatePackage, version 20201001*
|
||||
|
||||
The SHA256 hash digest for package BasePlus:
|
||||
`66E966489F4C183CA75FC32D3AF581FEC20FC9C5FF0C36E4DDC5A14BBDA82EAB`
|
||||
`54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D`
|
||||
|
||||
---
|
||||
# Content description ############################################################################################
|
||||
|
||||
Binary file not shown.
BIN
packages/dfa.zip
BIN
packages/dfa.zip
Binary file not shown.
Binary file not shown.
@@ -63,7 +63,7 @@ Required SAS Components:
|
||||
*SAS package generated by generatePackage, version 20200911*
|
||||
|
||||
The SHA256 hash digest for package macroArray:
|
||||
`53C248E1DE3268946C9CEC7E77BC222F652FBB006D9317BE36B86410DA31AE35`
|
||||
`085A0F3D544EAF01378BB6C6B4F429123F8BFEEFC76013D1B05DFADFEE3FA661`
|
||||
|
||||
---
|
||||
# Content description ############################################################################################
|
||||
|
||||
Binary file not shown.
@@ -49,7 +49,7 @@ Required SAS Components:
|
||||
*SAS package generated by generatePackage, version 20200911*
|
||||
|
||||
The SHA256 hash digest for package SQLinDS:
|
||||
`B280D0B72DB77001ADAAE9C1612B67AD30C2C672371B27F1ACB12016C7A1363D`
|
||||
`D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E`
|
||||
|
||||
---
|
||||
# Content description ############################################################################################
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user