diff --git a/all.sas b/all.sas index 712a034..dc9ab92 100644 --- a/all.sas +++ b/all.sas @@ -8872,6 +8872,9 @@ options ibufsize=&ibufsize; ,mdebug=&mdebug ) + proc append base=&auditlibds data=&storediffs; + run; + %if &locklibds ne 0 %then %do; %mp_lockanytable(UNLOCK ,lib=%scan(&auditlibds,1,.) diff --git a/base/mf_getuser.sas b/base/mf_getuser.sas index b3ae413..338950c 100755 --- a/base/mf_getuser.sas +++ b/base/mf_getuser.sas @@ -33,7 +33,8 @@ %else %if %symexist(&metavar) %then %do; %if %length(&&&metavar)=0 %then %let user=&sysuserid; /* sometimes SAS will add @domain extension - remove for consistency */ - %else %let user=%scan(&&&metavar,1,@); + /* but be sure to quote in case of usernames with commas */ + %else %let user=%unquote(%scan(%quote(&&&metavar),1,@)); %end; %else %let user=&sysuserid; diff --git a/base/mp_loadformat.sas b/base/mp_loadformat.sas index 6d6e308..e1e32eb 100644 --- a/base/mp_loadformat.sas +++ b/base/mp_loadformat.sas @@ -40,13 +40,13 @@ @li mp_abort.sas @li mp_cntlout.sas @li mp_lockanytable.sas + @li mp_storediffs.sas

Related Macros

@li mddl_dc_difftable.sas @li mddl_dc_locktable.sas @li mp_loadformat.test.sas @li mp_lockanytable.sas - @li mp_storediffs.sas @li mp_stackdiffs.sas @@ -272,6 +272,9 @@ options ibufsize=&ibufsize; ,mdebug=&mdebug ) + proc append base=&auditlibds data=&storediffs; + run; + %if &locklibds ne 0 %then %do; %mp_lockanytable(UNLOCK ,lib=%scan(&auditlibds,1,.) @@ -295,4 +298,4 @@ options ibufsize=&ibufsize; %put &sysmacroname exit vars:; %put _local_; %end; -%mend mp_loadformat; \ No newline at end of file +%mend mp_loadformat; diff --git a/tests/crossplatform/mp_loadformat.test.sas b/tests/crossplatform/mp_loadformat.test.sas index 414a454..68078d3 100644 --- a/tests/crossplatform/mp_loadformat.test.sas +++ b/tests/crossplatform/mp_loadformat.test.sas @@ -3,6 +3,7 @@ @brief Testing mp_loadformat.sas macro

SAS Macros

+ @li mddl_dc_difftable.sas @li mp_loadformat.sas @li mp_assert.sas @li mp_assertscope.sas @@ -12,6 +13,8 @@ /* prep format catalog */ libname perm (work); +%mddl_dc_difftable(libds=perm.audit) + data work.loadfmts; length fmtname $32; eexcl='Y'; @@ -49,7 +52,7 @@ run; %mp_loadformat(perm.testcat ,work.stagedata ,loadtarget=YES - ,auditlibds=0 + ,auditlibds=perm.audit ,locklibds=0 ,delete_col=deleteme ,outds_add=add_test1 @@ -73,4 +76,9 @@ run; iftrue=(%mf_nobs(mod_test1)=100), desc=Test 1 - mod obs, outds=work.test_results -) \ No newline at end of file +) +%mp_assert( + iftrue=(%mf_nobs(perm.audit)>7329), + desc=Test 1 - audit table updated, + outds=work.test_results +)