From d9a82c0bdf5e27a4283ac7b710e1596ff89ed27e Mon Sep 17 00:00:00 2001 From: Allan Bowe Date: Thu, 29 Oct 2020 12:08:07 +0100 Subject: [PATCH] fix: incorrect filepath when using filerefs in mp_dirlist --- all.sas | 4 ++-- base/mf_getengine.sas | 9 ++++++--- base/mp_dirlist.sas | 4 ++-- base/mp_getddl.sas | 1 - 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/all.sas b/all.sas index 278fcdc..5b05641 100644 --- a/all.sas +++ b/all.sas @@ -2041,7 +2041,8 @@ data &outds (compress=no keep=file_or_folder filepath filename ext msg directory dnum = dnum(did); do i = 1 to dnum; filename = dread(did, i); - rc = filename(fref2, cats(directory,'/',filename)); + filepath=cats(directory,'/',filename); + rc = filename(fref2,filepath); midd=dopen(fref2); dmsg=sysmsg(); if did > 0 then file_or_folder='folder'; @@ -2064,7 +2065,6 @@ data &outds (compress=no keep=file_or_folder filepath filename ext msg directory ext=''; file_or_folder='folder'; end; - filepath="&path/"!!filename; output; end; rc = dclose(did); diff --git a/base/mf_getengine.sas b/base/mf_getengine.sas index a62427e..e396bc5 100755 --- a/base/mf_getengine.sas +++ b/base/mf_getengine.sas @@ -3,7 +3,7 @@ @brief Returns the engine type of a SAS library @details Usage: - %put %mf_getEngine(SASHELP); + %put %mf_getengine(SASHELP); returns: > V9 @@ -21,9 +21,10 @@ @version 9.2 @author Allan Bowe -**/ -%macro mf_getEngine(libref +**/ /** \cond */ + +%macro mf_getengine(libref )/*/STORE SOURCE*/; %local dsid engnum rc engine; @@ -42,3 +43,5 @@ &engine %mend; + +/** \endcond */ \ No newline at end of file diff --git a/base/mp_dirlist.sas b/base/mp_dirlist.sas index 320922b..6d30ae6 100644 --- a/base/mp_dirlist.sas +++ b/base/mp_dirlist.sas @@ -85,7 +85,8 @@ data &outds (compress=no keep=file_or_folder filepath filename ext msg directory dnum = dnum(did); do i = 1 to dnum; filename = dread(did, i); - rc = filename(fref2, cats(directory,'/',filename)); + filepath=cats(directory,'/',filename); + rc = filename(fref2,filepath); midd=dopen(fref2); dmsg=sysmsg(); if did > 0 then file_or_folder='folder'; @@ -108,7 +109,6 @@ data &outds (compress=no keep=file_or_folder filepath filename ext msg directory ext=''; file_or_folder='folder'; end; - filepath="&path/"!!filename; output; end; rc = dclose(did); diff --git a/base/mp_getddl.sas b/base/mp_getddl.sas index f4e159b..076ea78 100644 --- a/base/mp_getddl.sas +++ b/base/mp_getddl.sas @@ -30,7 +30,6 @@ datetime2 format or regular decimal type @version 9.3 @author Allan Bowe - @source https://github.com/sasjs/core **/ %macro mp_getddl(libref,ds,fref=getddl,flavour=SAS,showlog=NO,schema=