@sasjs/utils 3.5.1 → 3.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/file/file.js +4 -2
- package/file/file.js.map +1 -1
- package/macros/mf_abort.sas +7 -2
- package/macros/mf_deletefile.sas +1 -1
- package/macros/mf_existds.sas +1 -1
- package/macros/mf_existfileref.sas +2 -2
- package/macros/mf_existfunction.sas +1 -1
- package/macros/mf_existvar.sas +8 -4
- package/macros/mf_existvarlist.sas +2 -2
- package/macros/mf_getapploc.sas +1 -0
- package/macros/mf_getattrc.sas +2 -2
- package/macros/mf_getattrn.sas +2 -2
- package/macros/mf_getfmtlist.sas +3 -4
- package/macros/mf_getgitbranch.sas +37 -0
- package/macros/mf_getkeyvalue.sas +3 -2
- package/macros/mf_getplatform.sas +1 -1
- package/macros/mf_getschema.sas +1 -1
- package/macros/mf_getuniquelibref.sas +1 -1
- package/macros/mf_getuniquename.sas +1 -1
- package/macros/mf_getuser.sas +0 -2
- package/macros/mf_getvalue.sas +3 -3
- package/macros/mf_getvarformat.sas +2 -1
- package/macros/mf_getvarlen.sas +2 -2
- package/macros/mf_getvarnum.sas +2 -2
- package/macros/mf_getvartype.sas +2 -2
- package/macros/mf_getxengine.sas +1 -1
- package/macros/mf_increment.sas +2 -2
- package/macros/mf_isblank.sas +2 -2
- package/macros/mf_isdir.sas +1 -1
- package/macros/mf_loc.sas +6 -1
- package/macros/mf_mkdir.sas +1 -1
- package/macros/mf_mval.sas +2 -0
- package/macros/mf_nobs.sas +1 -1
- package/macros/mf_readfile.sas +63 -0
- package/macros/mf_trimstr.sas +2 -2
- package/macros/mf_wordsinstr1andstr2.sas +2 -2
- package/macros/mf_wordsinstr1butnotstr2.sas +2 -2
- package/macros/mf_writefile.sas +2 -2
- package/macros/mp_abort.sas +50 -13
- package/macros/mp_aligndecimal.sas +95 -0
- package/macros/mp_appendfile.sas +2 -2
- package/macros/mp_applyformats.sas +5 -5
- package/macros/mp_assert.sas +1 -1
- package/macros/mp_assertcols.sas +3 -3
- package/macros/mp_assertcolvals.sas +9 -5
- package/macros/mp_base64copy.sas +2 -2
- package/macros/mp_binarycopy.sas +7 -6
- package/macros/mp_chop.sas +4 -3
- package/macros/mp_cleancsv.sas +5 -4
- package/macros/mp_cntlout.sas +16 -7
- package/macros/mp_copyfolder.sas +2 -2
- package/macros/mp_createconstraints.sas +3 -3
- package/macros/mp_createwebservice.sas +1 -1
- package/macros/mp_csv2ds.sas +6 -5
- package/macros/mp_deleteconstraints.sas +5 -3
- package/macros/mp_deletefolder.sas +1 -1
- package/macros/mp_dictionary.sas +1 -1
- package/macros/mp_dirlist.sas +1 -1
- package/macros/mp_distinctfmtvalues.sas +5 -5
- package/macros/mp_ds2csv.sas +10 -1
- package/macros/mp_ds2ddl.sas +14 -2
- package/macros/mp_ds2md.sas +1 -0
- package/macros/mp_dsmeta.sas +2 -2
- package/macros/mp_filtercheck.sas +105 -16
- package/macros/mp_filtergenerate.sas +2 -2
- package/macros/mp_filterstore.sas +4 -3
- package/macros/mp_getcols.sas +3 -2
- package/macros/mp_getdbml.sas +4 -4
- package/macros/mp_getddl.sas +15 -10
- package/macros/mp_getformats.sas +13 -3
- package/macros/mp_gitlog.sas +104 -0
- package/macros/mp_gitstatus.sas +1 -1
- package/macros/mp_gsubfile.sas +6 -6
- package/macros/mp_guesspk.sas +1 -1
- package/macros/mp_hashdataset.sas +1 -1
- package/macros/mp_init.sas +1 -0
- package/macros/mp_lib2cards.sas +7 -7
- package/macros/mp_loadformat.sas +127 -47
- package/macros/mp_lockanytable.sas +31 -24
- package/macros/mp_md5.sas +3 -4
- package/macros/mp_perflog.sas +3 -3
- package/macros/mp_prevobs.sas +5 -5
- package/macros/mp_recursivejoin.sas +7 -6
- package/macros/mp_replace.sas +5 -4
- package/macros/mp_runddl.sas +3 -3
- package/macros/mp_searchcols.sas +7 -6
- package/macros/mp_stackdiffs.sas +1 -0
- package/macros/mp_storediffs.sas +8 -8
- package/macros/mp_stprequests.sas +4 -3
- package/macros/mp_stripdiffs.sas +255 -0
- package/macros/mp_testjob.sas +2 -2
- package/macros/mp_testwritespeedlibrary.sas +3 -3
- package/macros/mp_tree.sas +2 -2
- package/macros/mp_unzip.sas +5 -4
- package/macros/mp_updatevarlength.sas +3 -3
- package/macros/mp_validatecol.sas +3 -3
- package/macros/mp_wait4file.sas +1 -1
- package/macros/mp_webin.sas +1 -1
- package/macros/mp_zip.sas +5 -5
- package/package.json +5 -6
package/file/file.js
CHANGED
|
@@ -33,7 +33,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
33
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
34
|
exports.getLineEnding = exports.isTestFile = exports.testFileRegExp = exports.createReadStream = exports.createWriteStream = exports.getRealPath = exports.base64EncodeFile = exports.base64EncodeImageFile = exports.pathSepEscaped = exports.copy = exports.moveFile = exports.getRelativePath = exports.unifyFilePath = exports.deleteFolder = exports.deleteFile = exports.createFile = exports.createFolder = exports.listFilesAndSubFoldersInFolder = exports.listSubFoldersInFolder = exports.listSasFilesInFolder = exports.listIniFilesInFolder = exports.listFilesInFolder = exports.readFileBinary = exports.readFile = exports.isFolder = exports.folderExists = exports.fileExists = void 0;
|
|
35
35
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
36
|
-
const rimraf_1 = require("rimraf");
|
|
37
36
|
const path_1 = __importDefault(require("path"));
|
|
38
37
|
const utils_1 = require("../utils");
|
|
39
38
|
const file = __importStar(require("."));
|
|
@@ -174,7 +173,10 @@ function deleteFile(filePath) {
|
|
|
174
173
|
exports.deleteFile = deleteFile;
|
|
175
174
|
function deleteFolder(folderPath) {
|
|
176
175
|
return __awaiter(this, void 0, void 0, function* () {
|
|
177
|
-
return
|
|
176
|
+
return fs_extra_1.default.rm(folderPath, {
|
|
177
|
+
recursive: true,
|
|
178
|
+
force: true
|
|
179
|
+
});
|
|
178
180
|
});
|
|
179
181
|
}
|
|
180
182
|
exports.deleteFolder = deleteFolder;
|
package/file/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/file/file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/file/file.ts"],"names":[],"mappings":"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"}
|
package/macros/mf_abort.sas
CHANGED
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
@brief Abort, ungracefully
|
|
4
4
|
@details Will abort with a straightforward %abort if the condition is true.
|
|
5
5
|
|
|
6
|
+
@param [in] mac= (mf_abort.sas) Name of calling macro (is printed to the log)
|
|
7
|
+
@param [in] msg= ( ) Additional string to print to the log
|
|
8
|
+
@param [in] iftrue= (%str(1=1)) Conditional logic under which to perform the
|
|
9
|
+
abort
|
|
10
|
+
|
|
6
11
|
<h4> Related Macros </h4>
|
|
7
12
|
@li mp_abort.sas
|
|
8
13
|
|
|
@@ -12,7 +17,7 @@
|
|
|
12
17
|
**/
|
|
13
18
|
|
|
14
19
|
%macro mf_abort(mac=mf_abort.sas, msg=, iftrue=%str(1=1)
|
|
15
|
-
)
|
|
20
|
+
)/des='ungraceful abort' /*STORE SOURCE*/;
|
|
16
21
|
|
|
17
22
|
%if not(%eval(%unquote(&iftrue))) %then %return;
|
|
18
23
|
|
|
@@ -24,4 +29,4 @@
|
|
|
24
29
|
|
|
25
30
|
%mend mf_abort;
|
|
26
31
|
|
|
27
|
-
/** @endcond */
|
|
32
|
+
/** @endcond */
|
package/macros/mf_deletefile.sas
CHANGED
package/macros/mf_existds.sas
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
@details You can probably do without this macro as it is just a one liner.
|
|
5
5
|
Mainly it is here as a convenient way to remember the syntax!
|
|
6
6
|
|
|
7
|
-
@param fref the fileref to detect
|
|
7
|
+
@param [in] fref the fileref to detect
|
|
8
8
|
|
|
9
9
|
@return output Returns 1 if found and 0 if not found. Note - it is possible
|
|
10
10
|
that the fileref is found, but the file does not (yet) exist. If you need
|
|
@@ -30,4 +30,4 @@
|
|
|
30
30
|
0
|
|
31
31
|
%end;
|
|
32
32
|
|
|
33
|
-
%mend mf_existfileref;
|
|
33
|
+
%mend mf_existfileref;
|
package/macros/mf_existvar.sas
CHANGED
|
@@ -25,13 +25,17 @@
|
|
|
25
25
|
%local dsid rc;
|
|
26
26
|
%let dsid=%sysfunc(open(&libds,is));
|
|
27
27
|
|
|
28
|
-
%if &dsid=0
|
|
28
|
+
%if &dsid=0 %then %do;
|
|
29
29
|
%put %sysfunc(sysmsg());
|
|
30
|
-
|
|
30
|
+
0
|
|
31
|
+
%end;
|
|
32
|
+
%else %if %length(&var)=0 %then %do;
|
|
33
|
+
0
|
|
34
|
+
%let rc=%sysfunc(close(&dsid));
|
|
31
35
|
%end;
|
|
32
36
|
%else %do;
|
|
33
|
-
|
|
34
|
-
|
|
37
|
+
%sysfunc(varnum(&dsid,&var))
|
|
38
|
+
%let rc=%sysfunc(close(&dsid));
|
|
35
39
|
%end;
|
|
36
40
|
|
|
37
41
|
%mend mf_existvar;
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
%put %mf_existVarList(sashelp.class, age sex name dummyvar);
|
|
8
8
|
|
|
9
|
-
@param libds 2 part dataset or view reference
|
|
10
|
-
@param varlist space separated variable names
|
|
9
|
+
@param [in] libds 2 part dataset or view reference
|
|
10
|
+
@param [in] varlist space separated variable names
|
|
11
11
|
|
|
12
12
|
@version 9.2
|
|
13
13
|
@author Allan Bowe
|
package/macros/mf_getapploc.sas
CHANGED
package/macros/mf_getattrc.sas
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
%put Dataset label = %mf_getattrc(sashelp.class,LABEL);
|
|
7
7
|
%put Member Type = %mf_getattrc(sashelp.class,MTYPE);
|
|
8
8
|
|
|
9
|
-
@param libds library.dataset
|
|
10
|
-
@param attr full list in [documentation](
|
|
9
|
+
@param [in] libds library.dataset
|
|
10
|
+
@param [in] attr full list in [documentation](
|
|
11
11
|
https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000147794.htm)
|
|
12
12
|
@return output returns result of the attrc value supplied, or -1 and log
|
|
13
13
|
message if err.
|
package/macros/mf_getattrn.sas
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
%put Number of observations=%mf_getattrn(sashelp.class,NLOBS);
|
|
7
7
|
%put Number of variables = %mf_getattrn(sashelp.class,NVARS);
|
|
8
8
|
|
|
9
|
-
@param libds library.dataset
|
|
10
|
-
@param attr Common values are NLOBS and NVARS, full list in [documentation](
|
|
9
|
+
@param [in] libds library.dataset
|
|
10
|
+
@param [in] attr Common values are NLOBS and NVARS, full list in [documentation](
|
|
11
11
|
http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000212040.htm)
|
|
12
12
|
@return output returns result of the attrn value supplied, or -1 and log
|
|
13
13
|
message if err.
|
package/macros/mf_getfmtlist.sas
CHANGED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
@file
|
|
3
|
+
@brief Retrieves the current branch from a local GIT repo
|
|
4
|
+
@details In a local git repository, the current branch is always available in
|
|
5
|
+
the `.git/HEAD` file in a format like this: `ref: refs/heads/master`
|
|
6
|
+
|
|
7
|
+
This macro simply reads the file and returns the last word (eg `master`).
|
|
8
|
+
|
|
9
|
+
Example usage:
|
|
10
|
+
|
|
11
|
+
%let gitdir=%sysfunc(pathname(work))/core;
|
|
12
|
+
%let repo=https://github.com/sasjs/core;
|
|
13
|
+
%put source clone rc=%sysfunc(GITFN_CLONE(&repo,&gitdir));
|
|
14
|
+
|
|
15
|
+
%put The current branch is %mf_getgitbranch(&gitdir);
|
|
16
|
+
|
|
17
|
+
@param [in] gitdir The directory containing the GIT repository
|
|
18
|
+
|
|
19
|
+
<h4> SAS Macros </h4>
|
|
20
|
+
@li mf_readfile.sas
|
|
21
|
+
|
|
22
|
+
<h4> Related Macros </h4>
|
|
23
|
+
@li mp_gitadd.sas
|
|
24
|
+
@li mp_gitlog.sas
|
|
25
|
+
@li mp_gitreleaseinfo.sas
|
|
26
|
+
@li mp_gitstatus.sas
|
|
27
|
+
|
|
28
|
+
@version 9.2
|
|
29
|
+
@author Allan Bowe
|
|
30
|
+
**/
|
|
31
|
+
|
|
32
|
+
%macro mf_getgitbranch(gitdir
|
|
33
|
+
)/*/STORE SOURCE*/;
|
|
34
|
+
|
|
35
|
+
%scan(%mf_readfile(&gitdir/.git/HEAD),-1)
|
|
36
|
+
|
|
37
|
+
%mend mf_getgitbranch;
|
|
@@ -7,8 +7,9 @@
|
|
|
7
7
|
%put %mf_getkeyvalue(someindex)
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
@param key Provide a key on which to perform the lookup
|
|
11
|
-
@param libds=
|
|
10
|
+
@param [in] key Provide a key on which to perform the lookup
|
|
11
|
+
@param [in] libds= (work.mp_setkeyvalue) The library.dataset which holds the
|
|
12
|
+
parameters
|
|
12
13
|
|
|
13
14
|
@version 9.2
|
|
14
15
|
@author Allan Bowe
|
package/macros/mf_getschema.sas
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
@param [in] prefix= (mclib) first part of the returned libref. As librefs can
|
|
20
20
|
be as long as 8 characters, a maximum length of 7 characters is premitted
|
|
21
21
|
for this prefix.
|
|
22
|
-
@param [in] maxtries= Deprecated parameter. Remains here to ensure a
|
|
22
|
+
@param [in] maxtries= (1000) Deprecated parameter. Remains here to ensure a
|
|
23
23
|
non-breaking change. Will be removed in v5.
|
|
24
24
|
|
|
25
25
|
@version 9.2
|
package/macros/mf_getuser.sas
CHANGED
|
@@ -13,8 +13,6 @@
|
|
|
13
13
|
%let user= %mf_getUser();
|
|
14
14
|
%put &user;
|
|
15
15
|
|
|
16
|
-
@param type - do not use, may be deprecated in a future release
|
|
17
|
-
|
|
18
16
|
@return SYSUSERID (if workspace server)
|
|
19
17
|
@return _METAPERSON (if stored process server)
|
|
20
18
|
@return SYS_COMPUTE_SESSION_OWNER (if Viya compute session)
|
package/macros/mf_getvalue.sas
CHANGED
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
<h4> Related Macros </h4>
|
|
14
14
|
@li mp_setkeyvalue.sas
|
|
15
15
|
|
|
16
|
-
@param libds dataset to query
|
|
17
|
-
@param variable the variable which contains the value to return.
|
|
18
|
-
@param filter contents of where clause
|
|
16
|
+
@param [in] libds dataset to query
|
|
17
|
+
@param [in] variable the variable which contains the value to return.
|
|
18
|
+
@param [in] filter= (1) contents of where clause
|
|
19
19
|
|
|
20
20
|
@version 9.2
|
|
21
21
|
@author Allan Bowe
|
|
@@ -25,7 +25,8 @@
|
|
|
25
25
|
|
|
26
26
|
@param [in] libds Two part dataset (or view) reference.
|
|
27
27
|
@param [in] var Variable name for which a format should be returned
|
|
28
|
-
@param [in] force=(0) Set to 1 to supply a default if the variable has no
|
|
28
|
+
@param [in] force= (0) Set to 1 to supply a default if the variable has no
|
|
29
|
+
format
|
|
29
30
|
@returns outputs format
|
|
30
31
|
|
|
31
32
|
@author Allan Bowe
|
package/macros/mf_getvarlen.sas
CHANGED
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
8
|
|
19
19
|
NOTE: Variable renegade does not exist in test
|
|
20
20
|
|
|
21
|
-
@param libds Two part dataset (or view) reference.
|
|
22
|
-
@param var Variable name for which a length should be returned
|
|
21
|
+
@param [in] libds Two part dataset (or view) reference.
|
|
22
|
+
@param [in] var Variable name for which a length should be returned
|
|
23
23
|
@returns outputs length
|
|
24
24
|
|
|
25
25
|
@author Allan Bowe
|
package/macros/mf_getvarnum.sas
CHANGED
|
@@ -21,8 +21,8 @@ returns:
|
|
|
21
21
|
|
|
22
22
|
> NOTE: Variable renegade does not exist in test
|
|
23
23
|
|
|
24
|
-
@param libds Two part dataset (or view) reference.
|
|
25
|
-
@param var Variable name for which a position should be returned
|
|
24
|
+
@param [in] libds Two part dataset (or view) reference.
|
|
25
|
+
@param [in] var Variable name for which a position should be returned
|
|
26
26
|
|
|
27
27
|
@author Allan Bowe
|
|
28
28
|
@version 9.2
|
package/macros/mf_getvartype.sas
CHANGED
|
@@ -13,8 +13,8 @@ Usage:
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
@param libds Two part dataset (or view) reference.
|
|
17
|
-
@param var the variable name to be checked
|
|
16
|
+
@param [in] libds Two part dataset (or view) reference.
|
|
17
|
+
@param [in] var the variable name to be checked
|
|
18
18
|
@return output returns C or N depending on variable type. If variable
|
|
19
19
|
does not exist then a blank is returned and a note is written to the log.
|
|
20
20
|
|
package/macros/mf_getxengine.sas
CHANGED
package/macros/mf_increment.sas
CHANGED
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
%put Now we have run %mf_increment(cnt) lines;
|
|
12
12
|
%put There are %mf_increment(cnt) lines in total;
|
|
13
13
|
|
|
14
|
-
@param [in]
|
|
15
|
-
@param [in]
|
|
14
|
+
@param [in] macro_name The name of the macro variable to increment
|
|
15
|
+
@param [in] incr= (1) The amount to add or subtract to the macro
|
|
16
16
|
|
|
17
17
|
<h4> Related Files </h4>
|
|
18
18
|
@li mf_increment.test.sas
|
package/macros/mf_isblank.sas
CHANGED
|
@@ -7,12 +7,12 @@
|
|
|
7
7
|
|
|
8
8
|
Usage:
|
|
9
9
|
|
|
10
|
-
%put mf_isblank(&var);
|
|
10
|
+
%put %mf_isblank(&var);
|
|
11
11
|
|
|
12
12
|
inspiration:
|
|
13
13
|
https://support.sas.com/resources/papers/proceedings09/022-2009.pdf
|
|
14
14
|
|
|
15
|
-
@param
|
|
15
|
+
@param [in] Param VALUE to be checked
|
|
16
16
|
|
|
17
17
|
@return output returns 1 (if blank) else 0
|
|
18
18
|
|
package/macros/mf_isdir.sas
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
With thanks and full credit to Andrea Defronzo -
|
|
10
10
|
https://www.linkedin.com/in/andrea-defronzo-b1a47460/
|
|
11
11
|
|
|
12
|
-
@param path
|
|
12
|
+
@param [in] path Full path of the file/directory to be checked
|
|
13
13
|
|
|
14
14
|
@return output returns 1 if path is a directory, 0 if it is not
|
|
15
15
|
|
package/macros/mf_loc.sas
CHANGED
|
@@ -6,6 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
%put %mf_loc(POF); %*location of PlatformObjectFramework tools;
|
|
8
8
|
|
|
9
|
+
@param [in] loc The item to locate, eg:
|
|
10
|
+
@li PLAATFORMOBJECTFRAMEWORK (or POF)
|
|
11
|
+
@li VIYACONFG
|
|
12
|
+
|
|
9
13
|
@version 9.2
|
|
10
14
|
@author Allan Bowe
|
|
11
15
|
**/
|
|
@@ -15,7 +19,8 @@
|
|
|
15
19
|
%local root;
|
|
16
20
|
|
|
17
21
|
%if &loc=POF or &loc=PLATFORMOBJECTFRAMEWORK %then %do;
|
|
18
|
-
%let root=%
|
|
22
|
+
%let root=%sysget(SASROOT);
|
|
23
|
+
%let root=%substr(&root,1,%index(&root,SASFoundation)-2);
|
|
19
24
|
%let root=&root/SASPlatformObjectFramework/&sysver;
|
|
20
25
|
%put Batch tools located at: &root;
|
|
21
26
|
&root
|
package/macros/mf_mkdir.sas
CHANGED
package/macros/mf_mval.sas
CHANGED
package/macros/mf_nobs.sas
CHANGED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
@file
|
|
3
|
+
@brief Reads the first line of a file using pure macro
|
|
4
|
+
@details Reads the first line of a file and returns it. Future versions may
|
|
5
|
+
read each line into a macro variable array.
|
|
6
|
+
|
|
7
|
+
Generally, reading data into macro variables is not great as certain
|
|
8
|
+
nonprintable characters (such as CR, LF) may be dropped in the conversion.
|
|
9
|
+
|
|
10
|
+
Usage:
|
|
11
|
+
|
|
12
|
+
%mf_writefile(&sasjswork/myfile.txt,l1=some content,l2=more content)
|
|
13
|
+
|
|
14
|
+
%put %mf_readfile(&sasjswork/myfile.txt);
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@param [in] fpath Full path to file to be read
|
|
18
|
+
|
|
19
|
+
<h4> Related Macros </h4>
|
|
20
|
+
@li mf_deletefile.sas
|
|
21
|
+
@li mf_writefile.sas
|
|
22
|
+
@li mf_readfile.test.sas
|
|
23
|
+
|
|
24
|
+
@version 9.2
|
|
25
|
+
@author Allan Bowe
|
|
26
|
+
**/
|
|
27
|
+
/** @cond */
|
|
28
|
+
|
|
29
|
+
%macro mf_readfile(fpath
|
|
30
|
+
)/*/STORE SOURCE*/;
|
|
31
|
+
%local fref rc fid fcontent;
|
|
32
|
+
|
|
33
|
+
/* check file exists */
|
|
34
|
+
%if %sysfunc(filename(fref,&fpath)) ne 0 %then %do;
|
|
35
|
+
%put &=fref &=fpath;
|
|
36
|
+
%put %str(ERR)OR: %sysfunc(sysmsg());
|
|
37
|
+
%return;
|
|
38
|
+
%end;
|
|
39
|
+
|
|
40
|
+
%let fid=%sysfunc(fopen(&fref,I));
|
|
41
|
+
|
|
42
|
+
%if &fid=0 %then %do;
|
|
43
|
+
%put %str(ERR)OR: %sysfunc(sysmsg());
|
|
44
|
+
%return;
|
|
45
|
+
%end;
|
|
46
|
+
|
|
47
|
+
%if %sysfunc(fread(&fid)) = 0 %then %do;
|
|
48
|
+
%let rc=%sysfunc(fget(&fid,fcontent,65534));
|
|
49
|
+
&fcontent
|
|
50
|
+
%end;
|
|
51
|
+
|
|
52
|
+
/*
|
|
53
|
+
%do %while(%sysfunc(fread(&fid)) = 0);
|
|
54
|
+
%let rc=%sysfunc(fget(&fid,fcontent,65534));
|
|
55
|
+
&fcontent
|
|
56
|
+
%end;
|
|
57
|
+
*/
|
|
58
|
+
|
|
59
|
+
%let rc=%sysfunc(fclose(&fid));
|
|
60
|
+
%let rc=%sysfunc(filename(&fref));
|
|
61
|
+
|
|
62
|
+
%mend mf_readfile;
|
|
63
|
+
/** @endcond */
|
package/macros/mf_trimstr.sas
CHANGED
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
<h4> SAS Macros </h4>
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
@param basestr The string to be modified
|
|
15
|
-
@param trimstr The string to be removed from the end of `basestr`, if it
|
|
14
|
+
@param [in] basestr The string to be modified
|
|
15
|
+
@param [in] trimstr The string to be removed from the end of `basestr`, if it
|
|
16
16
|
exists
|
|
17
17
|
|
|
18
18
|
@return output returns result with the value of `trimstr` removed from the end
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
returns:
|
|
14
14
|
> blah blaaah brah
|
|
15
15
|
|
|
16
|
-
@param str1= string containing words to extract
|
|
17
|
-
@param str2= used to compare with the extract string
|
|
16
|
+
@param [in] str1= () string containing words to extract
|
|
17
|
+
@param [in] str2= () used to compare with the extract string
|
|
18
18
|
|
|
19
19
|
@warning CASE SENSITIVE!
|
|
20
20
|
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
returns:
|
|
17
17
|
> sss bram boo
|
|
18
18
|
|
|
19
|
-
@param [in] str1=
|
|
20
|
-
@param [in] str2=
|
|
19
|
+
@param [in] str1= () String containing words to extract
|
|
20
|
+
@param [in] str2= () Used to compare with the extract string
|
|
21
21
|
|
|
22
22
|
@version 9.2
|
|
23
23
|
@author Allan Bowe
|
package/macros/mf_writefile.sas
CHANGED
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
@param [in] mode= (O) Available options are A or O as follows:
|
|
22
22
|
@li A APPEND mode, writes new records after the current end of the file.
|
|
23
23
|
@li O OUTPUT mode, writes new records from the beginning of the file.
|
|
24
|
-
@param [in] l1= First line
|
|
25
|
-
@param [in] l2= Second line (etc through to l10)
|
|
24
|
+
@param [in] l1= () First line
|
|
25
|
+
@param [in] l2= () Second line (etc through to l10)
|
|
26
26
|
|
|
27
27
|
<h4> Related Macros </h4>
|
|
28
28
|
@li mf_writefile.test.sas
|