From d7371a4505570f5ec7ef6c2697a9f8df882ad85b Mon Sep 17 00:00:00 2001 From: Allan Bowe Date: Mon, 21 Jun 2021 17:25:01 +0300 Subject: [PATCH] fix: adding mend to every macro statement using sasjs lint fix --- .sasjslint | 2 +- all.sas | 336 +++++++++++------------------- base/mf_existfeature.sas | 2 +- base/mf_existfileref.sas | 2 +- base/mf_existvar.sas | 2 +- base/mf_existvarlist.sas | 2 +- base/mf_getattrc.sas | 2 +- base/mf_getattrn.sas | 2 +- base/mf_getengine.sas | 2 +- base/mf_getfilesize.sas | 2 +- base/mf_getkeyvalue.sas | 2 +- base/mf_getplatform.sas | 2 +- base/mf_getquotedstr.sas | 2 +- base/mf_getschema.sas | 2 +- base/mf_getuniquefileref.sas | 2 +- base/mf_getuniquelibref.sas | 2 +- base/mf_getuser.sas | 2 +- base/mf_getvalue.sas | 2 +- base/mf_getvarcount.sas | 2 +- base/mf_getvarlen.sas | 2 +- base/mf_getvarnum.sas | 2 +- base/mf_getxengine.sas | 2 +- base/mf_isblank.sas | 2 +- base/mf_isdir.sas | 2 +- base/mf_loc.sas | 2 +- base/mf_mkdir.sas | 2 +- base/mf_mval.sas | 2 +- base/mf_nobs.sas | 2 +- base/mf_trimstr.sas | 2 +- base/mf_verifymacvars.sas | 2 +- base/mf_wordsinstr1butnotstr2.sas | 2 +- base/mp_assertcols.sas | 2 +- base/mp_assertcolvals.sas | 2 +- base/mp_binarycopy.sas | 2 +- base/mp_cleancsv.sas | 2 +- base/mp_createconstraints.sas | 2 +- base/mp_createwebservice.sas | 2 +- base/mp_csv2ds.sas | 2 +- base/mp_deleteconstraints.sas | 2 +- base/mp_dirlist.sas | 2 +- base/mp_distinctfmtvalues.sas | 2 +- base/mp_ds2cards.sas | 2 +- base/mp_ds2csv.sas | 2 +- base/mp_filtergenerate.sas | 2 +- base/mp_getconstraints.sas | 2 +- base/mp_getdbml.sas | 2 +- base/mp_getddl.sas | 4 +- base/mp_getmaxvarlengths.sas | 2 +- base/mp_guesspk.sas | 2 +- base/mp_hashdataset.sas | 2 +- base/mp_lib2cards.sas | 2 +- base/mp_perflog.sas | 2 +- base/mp_prevobs.sas | 2 +- base/mp_recursivejoin.sas | 2 +- base/mp_resetoption.sas | 2 +- base/mp_runddl.sas | 2 +- base/mp_searchdata.sas | 2 +- base/mp_setkeyvalue.sas | 2 +- base/mp_stprequests.sas | 2 +- base/mp_streamfile.sas | 2 +- base/mp_testjob.sas | 2 +- base/mp_testwritespeedlibrary.sas | 2 +- base/mp_tree.sas | 2 +- base/mp_unzip.sas | 2 +- base/mp_updatevarlength.sas | 2 +- base/mp_zip.sas | 2 +- meta/mm_adduser2group.sas | 2 +- meta/mm_assigndirectlib.sas | 2 +- meta/mm_assignlib.sas | 2 +- meta/mm_createapplication.sas | 2 +- meta/mm_createdataset.sas | 2 +- meta/mm_createdocument.sas | 2 +- meta/mm_createfolder.sas | 2 +- meta/mm_createlibrary.sas | 2 +- meta/mm_createstp.sas | 2 +- meta/mm_createwebservice.sas | 2 +- meta/mm_deletedocument.sas | 2 +- meta/mm_deletelibrary.sas | 2 +- meta/mm_deletestp.sas | 2 +- meta/mm_getauthinfo.sas | 2 +- meta/mm_getcols.sas | 2 +- meta/mm_getdetails.sas | 2 +- meta/mm_getdirectories.sas | 2 +- meta/mm_getdocument.sas | 2 +- meta/mm_getfoldermembers.sas | 2 +- meta/mm_getfoldertree.sas | 2 +- meta/mm_getgroupmembers.sas | 2 +- meta/mm_getgroups.sas | 2 +- meta/mm_getlibs.sas | 2 +- meta/mm_getobjects.sas | 2 +- meta/mm_getpublictypes.sas | 2 +- meta/mm_getrepos.sas | 2 +- meta/mm_getroles.sas | 2 +- meta/mm_getservercontexts.sas | 2 +- meta/mm_getstps.sas | 2 +- meta/mm_gettableid.sas | 2 +- meta/mm_gettables.sas | 2 +- meta/mm_gettree.sas | 2 +- meta/mm_gettypes.sas | 2 +- meta/mm_getwebappsrvprops.sas | 2 +- meta/mm_tree.sas | 2 +- meta/mm_updateappextension.sas | 2 +- meta/mm_updatedocument.sas | 2 +- meta/mm_updatestpservertype.sas | 2 +- meta/mm_updatestpsourcecode.sas | 2 +- metax/mmx_deletemetafolder.sas | 2 +- metax/mmx_spkexport.sas | 2 +- viya/mv_createjob.sas | 2 +- viya/mv_createwebservice.sas | 2 +- viya/mv_deletefoldermember.sas | 2 +- viya/mv_deletejes.sas | 2 +- viya/mv_deleteviyafolder.sas | 2 +- viya/mv_getaccesstoken.sas | 2 +- viya/mv_getapptoken.sas | 2 +- viya/mv_getclients.sas | 2 +- viya/mv_getgroupmembers.sas | 2 +- viya/mv_getgroups.sas | 2 +- viya/mv_getjobstate.sas | 2 +- viya/mv_getrefreshtoken.sas | 2 +- viya/mv_getusergroups.sas | 2 +- viya/mv_getusers.sas | 2 +- viya/mv_tokenauth.sas | 2 +- viya/mv_tokenrefresh.sas | 2 +- 123 files changed, 245 insertions(+), 337 deletions(-) diff --git a/.sasjslint b/.sasjslint index 18d58b2..b25253c 100644 --- a/.sasjslint +++ b/.sasjslint @@ -2,7 +2,7 @@ "noTrailingSpaces": true, "noEncodedPasswords": true, "hasDoxygenHeader": true, - "hasMacroNameInMend": false, + "hasMacroNameInMend": true, "hasMacroParentheses": true, "noNestedMacros": false, "noSpacesInFileNames": true, diff --git a/all.sas b/all.sas index 6fe00e9..e49eb9e 100644 --- a/all.sas +++ b/all.sas @@ -112,7 +112,7 @@ options noquotelenmax; -1 %put &sysmacroname: &feature not found; %end; -%mend; +%mend mf_existfeature; /** @endcond *//** @file @@ -140,7 +140,7 @@ options noquotelenmax; 0 %end; -%mend;/** +%mend mf_existfileref;/** @file @brief Checks if a variable exists in a data set. @details Returns 0 if the variable does NOT exist, and return the position of @@ -172,7 +172,7 @@ options noquotelenmax; %let rc=%sysfunc(close(&dsid)); %end; -%mend; +%mend mf_existvar; /** @endcond *//** @file @@ -230,7 +230,7 @@ options noquotelenmax; 0 %put Vars not found: &found; %end; -%mend; +%mend mf_existvarlist; /** @endcond *//** @file @@ -265,7 +265,7 @@ options noquotelenmax; %sysfunc(attrc(&dsid,&attr)) %let rc=%sysfunc(close(&dsid)); %end; -%mend;/** +%mend mf_getattrc;/** @file @brief Returns a numeric attribute of a dataset. @details Can be used in open code, eg as follows: @@ -298,7 +298,7 @@ options noquotelenmax; %sysfunc(attrn(&dsid,&attr)) %let rc=%sysfunc(close(&dsid)); %end; -%mend;/** +%mend mf_getattrn;/** @file @brief Returns the engine type of a SAS library @details Usage: @@ -348,7 +348,7 @@ options noquotelenmax; &engine -%mend; +%mend mf_getengine; /** @endcond *//** @file @@ -396,7 +396,7 @@ options noquotelenmax; %sysfunc(INPUTN(&bytes, best.),sizekmg.) %end; -%mend ;/** +%mend mf_getfilesize ;/** @file @brief retrieves a key value pair from a control dataset @details By default, control dataset is work.mp_setkeyvalue. Usage: @@ -427,7 +427,7 @@ options noquotelenmax; &valc %end; %else %put %str(ERR)OR: Unable to find key &key in ds &libds; -%mend;/** +%mend mf_getkeyvalue;/** @file mf_getplatform.sas @brief Returns platform specific variables @details Enables platform specific variables to be returned @@ -491,7 +491,7 @@ options noquotelenmax; %else %if &switch=VIYARESTAPI %then %do; %mf_trimstr(%sysfunc(getoption(servicesbaseurl)),/) %end; -%mend;/** +%mend mf_getplatform;/** @file @brief Adds custom quotes / delimiters to a delimited string @details Can be used in open code, eg as follows: @@ -543,7 +543,7 @@ options noquotelenmax; &buffer -%mend;/** +%mend mf_getquotedstr;/** @file mf_getschema.sas @brief Returns the database schema of a SAS library @details Usage: @@ -583,7 +583,7 @@ options noquotelenmax; &schema -%mend; +%mend mf_getschema; /** @endcond */ /** @@ -622,7 +622,7 @@ options noquotelenmax; %end; %end; %put unable to find available fileref in range &prefix.0-&maxtries; -%mend;/** +%mend mf_getuniquefileref;/** @file @brief Returns an unused libref @details Use as follows: @@ -661,7 +661,7 @@ options noquotelenmax; %end; %end; %put unable to find available libref in range &prefix.0-&maxtries; -%mend;/** +%mend mf_getuniquelibref;/** @file mf_getuniquename.sas @brief Returns a shortened (32 char) GUID as a valid SAS name @details Use as follows: @@ -723,7 +723,7 @@ options noquotelenmax; %quote(&user) -%mend; +%mend mf_getuser; /** @file @brief Retrieves a value from a dataset. If no filter supplied, then first @@ -756,7 +756,7 @@ options noquotelenmax; %trim(&&&variable) %end; -%mend;/** +%mend mf_getvalue;/** @file @brief Returns number of variables in a dataset @details Useful to identify those renagade datasets that have no columns! @@ -787,7 +787,7 @@ options noquotelenmax; %let rc=%sysfunc(close(&dsid)); %end; &nvars -%mend;/** +%mend mf_getvarcount;/** @file @brief Returns the format of a variable @details Uses varfmt function to identify the format of a particular variable. @@ -908,7 +908,7 @@ options noquotelenmax; %let rc = %sysfunc(close(&dsid)); /* Return variable format */ &vlen -%mend;/** +%mend mf_getVarLen;/** @file @brief Returns dataset variable list direct from header @details WAY faster than dictionary tables or sas views, and can @@ -1034,7 +1034,7 @@ returns: /* Return variable number */ &vnum. -%mend;/** +%mend mf_getVarNum;/** @file @brief Returns variable type - Character (C) or Numeric (N) @details @@ -1123,7 +1123,7 @@ Usage: &engine -%mend; +%mend mf_getxengine; /** @file mf_isblank.sas @brief Checks whether a macro variable is empty (blank) @@ -1150,7 +1150,7 @@ Usage: %sysevalf(%superq(param)=,boolean) -%mend;/** +%mend mf_isblank;/** @file @brief Checks whether a path is a valid directory @details @@ -1183,7 +1183,7 @@ Usage: &is_directory -%mend;/** +%mend mf_isdir;/** @file @brief Returns physical location of various SAS items @details Returns location of the PlatformObjectFramework tools @@ -1211,7 +1211,7 @@ Usage: &root %end; -%mend; +%mend mf_loc; /** @file @brief Creates a directory, including any intermediate directories @@ -1278,7 +1278,7 @@ Usage: %end; %end; /* exit quietly if directory did exist.*/ -%mend; +%mend mf_mkdir; /** @file mf_mval.sas @brief Returns a macro variable value if the variable exists @@ -1297,7 +1297,7 @@ Usage: %if %symexist(&var) %then %do; %superq(&var) %end; -%mend; +%mend mf_mval; /** @file @brief Returns number of logical (undeleted) observations. @@ -1323,7 +1323,7 @@ Usage: %macro mf_nobs(libds )/*/STORE SOURCE*/; %mf_getattrn(&libds,NLOBS) -%mend;/** +%mend mf_nobs;/** @file mf_trimstr.sas @brief Removes character(s) from the end, if they exist @details If the designated characters exist at the end of the string, they @@ -1372,7 +1372,7 @@ Usage: &basestr %end; -%mend;/** +%mend mf_trimstr;/** @file @brief Creates a unique ID based on system time in friendly format @details format = YYYYMMDD_HHMMSSmmm__<3randomDigits> @@ -1456,7 +1456,7 @@ Usage: %else %mf_abort(mac=mf_verifymacvars,type=&mabort,msg=&abortmsg); %exit_success: -%mend; +%mend mf_verifymacvars; /** @file @brief Returns words that are in string 1 but not in string 2 @@ -1509,7 +1509,7 @@ Usage: &outvar -%mend; +%mend mf_wordsInStr1ButNotStr2; /** @file @@ -1908,7 +1908,7 @@ Usage: proc sql; drop table &ds; -%mend;/** +%mend mp_assertcols;/** @file @brief Asserts the values in a column @details Useful in the context of writing sasjs tests. The results of the @@ -2054,7 +2054,7 @@ Usage: proc sql; drop table &ds; -%mend;/** +%mend mp_assertcolvals;/** @file @brief Asserts the number of observations in a dataset @details Useful in the context of writing sasjs tests. The results of the @@ -2226,7 +2226,7 @@ Usage: %if &outref=____out %then %do; filename &outref clear; %end; -%mend;/** +%mend mp_binarycopy;/** @file mp_cleancsv.sas @brief Fixes embedded cr / lf / crlf in CSV @details CSVs will sometimes contain lf or crlf within quotes (eg when @@ -2295,7 +2295,7 @@ Usage: else put inchar $char1.; end; run; -%mend; +%mend mp_cleancsv; /** @endcond *//** @file mp_createconstraints.sas @brief Creates constraints @@ -2362,7 +2362,7 @@ data &outds; output; run; -%mend;/** +%mend mp_createconstraints;/** @file mp_createwebservice.sas @brief Create a web service in SAS 9 or Viya @details Creates a SASJS ready Stored Process in SAS 9 or Job Execution @@ -2444,7 +2444,7 @@ Usage: ) %end; -%mend; +%mend mp_createwebservice; /** @file mp_csv2ds.sas @brief Efficient import of arbitrary CSV using a dataset as template @@ -2588,7 +2588,7 @@ data &outds %end; run; -%mend;/** +%mend mp_csv2ds;/** @file mp_deleteconstraints.sas @brief Delete constraionts @details Takes the output from mp_getconstraints.sas as input @@ -2639,7 +2639,7 @@ data &outds; end; run; -%mend;/** +%mend mp_deleteconstraints;/** @file @brief Returns all files and subdirectories within a specified parent @details When used with getattrs=NO, is not OS specific (uses dopen / dread). @@ -2808,7 +2808,7 @@ run; by filepath file_or_folder filename ext ; run; %end; -%mend;/** +%mend mp_dirlist;/** @file @brief Creates a dataset containing distinct _formatted_ values @details If no format is supplied, then the original value is used instead. @@ -2857,7 +2857,7 @@ run; %end; as &outvar length=&varlen from &libds; -%mend;/** +%mend mp_distinctfmtvalues;/** @file @brief Drops tables / views (if they exist) without warnings in the log @details Useful for dropping tables when you're not sure they exist, or if @@ -3151,7 +3151,7 @@ quit; %put NOTE-;%put NOTE-; %put NOTE- %sysfunc(dequote(&cards_file.)); %put NOTE-;%put NOTE-; -%mend;/** +%mend mp_ds2cards;/** @file @brief Export a dataset to a CSV file @details Export to a file or a fileref @@ -3208,7 +3208,7 @@ data _null_; run; -%mend;/** +%mend mp_ds2csv;/** @file @brief Converts every value in a dataset to it's formatted value @details Converts every value to it's formatted value. All variables will @@ -3609,7 +3609,7 @@ filename &outref temp; run; %end; -%mend; +%mend mp_filtergenerate; /** @file @brief Checks a generated filter query for validity @@ -3775,7 +3775,7 @@ create table &outds as %end; ; -%mend;/** +%mend mp_getconstraints;/** @file @brief Extract DBML from SAS Libraries @details DBML is an open source markup format to represent databases. @@ -4109,7 +4109,7 @@ run; run; %end; -%mend;/** +%mend mp_getdbml;/** @file mp_getddl.sas @brief Extract DDL in various formats, by table or library @details Data Definition Language relates to a set of SQL instructions used @@ -4226,7 +4226,7 @@ create table _data_ as end; run; %put &=constraints_used; -%mend; +%mend addConst; data _null_; file &fref; @@ -4489,7 +4489,7 @@ run; run; %end; -%mend;/** +%mend mp_getddl;/** @file mp_getmaxvarlengths.sas @brief Scans a dataset to find the max length of the variable values @details @@ -4561,7 +4561,7 @@ create table &outds (rename=( out=&outds(rename=(_name_=NAME COL1=MAXLEN)); run; -%mend;/** +%mend mp_getmaxvarlengths;/** @file mp_guesspk.sas @brief Guess the primary key of a table @details Tries to guess the primary key of a table based on the following logic: @@ -4864,7 +4864,7 @@ create table &outds (rename=( %return; %end; -%mend;/** +%mend mp_guesspk;/** @file @brief Returns a unique hash for a dataset @details Ignores metadata attributes, used only to hash values. Compared @@ -4938,7 +4938,7 @@ create table &outds (rename=( if &lastvar then output; run; %end; -%mend;/** +%mend mp_hashdataset;/** @file mp_jsonout.sas @brief Writes JSON in SASjs format to a fileref @details PROC JSON is faster but will produce errs like the ones below if @@ -5248,7 +5248,7 @@ select distinct lowcase(memname) ) %end; -%mend;/** +%mend mp_lib2cards;/** @file @brief Create a Markdown Table from a dataset @details A markdown table is a simple table representation for use in @@ -5386,7 +5386,7 @@ run; ,dttm=%sysfunc(datetime()); quit; -%mend;/** +%mend mp_perflog;/** @file @brief Enables previous observations to be re-instated @details Remembers the last X observations by storing them in a hash table. @@ -5473,7 +5473,7 @@ run; "with record &record and " _n_=; %end; -%mend;/** +%mend mp_prevobs;/** @file @brief Returns all children from a hierarchy table for a specified parent @details Where data stores hierarchies in a simple parent / child mapping, @@ -5562,7 +5562,7 @@ insert into &outds select distinct * from &append_ds; ) %end; -%mend; +%mend mp_recursivejoin; /** @file @brief Reset an option to original value @@ -5595,7 +5595,7 @@ data _null_; end; run; -%mend;/** +%mend mp_resetoption;/** @file mp_runddl.sas @brief An opinionated way to execute DDL files in SAS. @details When delivering projects there should be seperation between the DDL @@ -5643,7 +5643,7 @@ run; -%mend;/** +%mend mp_runddl;/** @file mp_searchcols.sas @brief Searches all columns in a library @details @@ -5864,7 +5864,7 @@ proc sql %put process finished at %sysfunc(datetime(),datetime19.); -%mend; +%mend mp_searchdata; /** @file @brief Logs a key value pair a control dataset @@ -5916,7 +5916,7 @@ proc sql quit; -%mend;/** +%mend mp_setkeyvalue;/** @file @brief Capture session start / finish times and request details @details For details, see @@ -5989,7 +5989,7 @@ proc sql proc append base=&libds data=&syslast nowarn;run; options &etls_syntaxcheck; -%mend;/** +%mend mp_stprequests;/** @file @brief Streams a file to _webout according to content type @details Will set headers using appropriate functions (SAS 9 vs Viya) and send @@ -6125,7 +6125,7 @@ run; %mp_binarycopy(inloc="&inloc",outref=_webout) %end; -%mend; +%mend mp_streamfile; /** @file @brief Runs arbitrary code for a specified amount of time @@ -6217,7 +6217,7 @@ quit; libname &lib clear; -%mend;/** +%mend mp_testjob;/** @file mp_testservice.sas @brief Will execute a test against a SASjs web service on SAS 9 or Viya @details Prepares the input files and retrieves the resulting datasets from @@ -6533,7 +6533,7 @@ data &outds; duration_seconds=end_dttm-start_dttm; run; -%mend;/** +%mend mp_testwritespeedlibrary;/** @file @brief Recursively scans a directory tree to get all subfolders and content @details @@ -6603,7 +6603,7 @@ data &outds ; rc=filename('tmp'); run; -%mend;/** +%mend mp_tree;/** @file mp_unzip.sas @brief Unzips a zip file @details Opens the zip file and copies all the contents to another directory. @@ -6668,7 +6668,7 @@ data _null_; !!'filename &fname2 clear; filename &fname3 clear;'); run; -%mend;/** +%mend mp_unzip;/** @file mp_updatevarlength.sas @brief Change the length of a variable @details The library is assumed to be assigned. Simple character updates @@ -6760,7 +6760,7 @@ alter table &libds modify &var char(&len); %mp_createconstraints(inds=&dsconst,outds=&dsconst._addd,execute=YES) -%mend; +%mend mp_updatevarlength; /** @file @brief Used to validate variables in a dataset @@ -6905,7 +6905,7 @@ ods package publish archive properties (archive_name="&outname..zip" archive_path="&outpath"); ods package close; -%mend;/** +%mend mp_zip;/** @file mm_adduser2group.sas @brief Adds a user to a group @details Adds a user to a metadata group. The macro first checks whether the @@ -7002,7 +7002,7 @@ run; filename __us2grp clear; -%mend;/** +%mend mm_adduser2group;/** @file @brief Assigns library directly using details from metadata @details Queries metadata to get the libname definition then allocates the @@ -7464,7 +7464,7 @@ run; %return; %end; -%mend; +%mend mm_assigndirectlib; /** @file @brief Assigns a meta engine library using LIBREF @@ -7542,7 +7542,7 @@ run; %else %do; %put NOTE: Library &libref is already assigned; %end; -%mend; +%mend mm_assignlib; /** @file @brief Create an Application object in a metadata folder @@ -7697,7 +7697,7 @@ run; %else %put NOTE: Application (&name) successfully created in (&tree)!; -%mend;/** +%mend mm_createapplication;/** @file mm_createdataset.sas @brief Create a dataset from a metadata definition @details This macro was built to support viewing empty tables in @@ -7779,7 +7779,7 @@ data _null_; if last then call execute('call missing(of _all_);stop;run;'); run; -%mend;/** +%mend mm_createdataset;/** @file @brief Create a Document object in a metadata folder @details Document objects are useful for storing properties in metadata. @@ -7903,7 +7903,7 @@ run; run; %end; -%mend;/** +%mend mm_createdocument;/** @file @brief Recursively create a metadata folder @details This macro was inspired by Paul Homes who wrote an early @@ -8062,7 +8062,7 @@ run; %end; %put &sysmacroname: execution finished for &path; -%mend;/** +%mend mm_createfolder;/** @file @brief Create a SAS Library @details Currently only supports BASE engine @@ -8382,7 +8382,7 @@ filename &frefout temp; filename &frefout clear; %end; -%mend; +%mend mm_createlibrary; /** @file @brief Create a type 1 Stored Process (9.2 compatible) @@ -8770,7 +8770,7 @@ run; %put %str(WARN)ING: STPTYPE=*&stptype* not recognised!; %end; -%mend;/** +%mend mm_createstp;/** @file mm_createwebservice.sas @brief Create a Web Ready Stored Process @details This macro creates a Type 2 Stored Process with the mm_webout macro @@ -9187,7 +9187,7 @@ data _null_; put ' '; put ' %quote(&user) '; put ' '; - put '%mend; '; + put '%mend mf_getuser; '; /* WEBOUT END */ put '%macro webout(action,ds,dslabel=,fmt=);'; put ' %mm_webout(&action,ds=&ds,dslabel=&dslabel,fmt=&fmt)'; @@ -9319,7 +9319,7 @@ run; %return; %end; -%mend; +%mend mm_deletedocument; /** @file @brief Deletes a library by Name @@ -9411,7 +9411,7 @@ run; %put &sysmacroname: Library &name (&liburi) was successfully deleted; -%mend; +%mend mm_deletelibrary; /** @file mm_deletestp.sas @brief Deletes a Stored Process using path as reference @@ -9481,7 +9481,7 @@ run; %return; %end; -%mend; +%mend mm_deletestp; /** @file mm_getauthinfo.sas @brief extracts authentication info @@ -9597,7 +9597,7 @@ run; filename &fileref clear; -%mend;/** +%mend mm_getauthinfo;/** @file @brief Creates a dataset with all metadata columns for a particular table @details @@ -9649,7 +9649,7 @@ proc sort; by colname; run; -%mend;/** +%mend mm_getcols;/** @file mm_getdetails.sas @brief extracts metadata attributes and associations for a particular uri @@ -9713,7 +9713,7 @@ proc sort; by type name; run; -%mend;/** +%mend mm_getdetails;/** @file @brief Returns a dataset with the meta directory object for a physical path @details Provide a file path to get matching directory objects, or leave @@ -9769,7 +9769,7 @@ data &outds (keep=directoryuri name directoryname directorydesc ); end; run; -%mend; +%mend mm_getDirectories; /** @file @brief Writes the TextStore of a Document Object to an external file @@ -9915,7 +9915,7 @@ run; filename __getdoc clear; filename __outdoc clear; -%mend; +%mend mm_getdocument; /** @file @brief Returns all direct child members of a particular folder @@ -10011,7 +10011,7 @@ filename __outdoc clear; run; %end; -%mend; +%mend mm_getfoldermembers; /** @file @brief Returns all folders / subfolder content for a particular root @@ -10102,7 +10102,7 @@ data _null_; !!",level=%eval(&level+1),append=YES)"); run; -%mend; +%mend mm_getfoldertree; /** @file @brief Creates dataset with all members of a metadata group @@ -10174,7 +10174,7 @@ run; end; run; -%mend; +%mend mm_getgroupmembers; /** @file @brief Creates dataset with all groups or just those for a particular user @@ -10269,7 +10269,7 @@ run; options metarepository=&oldrepo; %end; -%mend;/** +%mend mm_getGroups;/** @file @brief Compares the metadata of a library with the physical tables @details Creates a series of output tables that show the differences between @@ -10493,7 +10493,7 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend;/** +%mend mm_getlibs;/** @file @brief Creates a dataset with all metadata objects for a particular type @@ -10562,7 +10562,7 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend;/** +%mend mm_getobjects;/** @file mm_getpublictypes.sas @brief Creates a dataset with all deployable public types @details More info: @@ -10647,7 +10647,7 @@ insert into &outds values ('User'); insert into &outds values ('UserGroup'); quit; -%mend;/** +%mend mm_getpublictypes;/** @file @brief Creates a dataset with all available repositories @@ -10778,7 +10778,7 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend;/** +%mend mm_getrepos;/** @file mm_getroles.sas @brief Creates a table containing a list of roles @details @@ -10850,7 +10850,7 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; +%mend mm_getroles; /** @file mm_getservercontexts.sas @brief Creates a dataset with all server contexts in all repos @@ -10934,7 +10934,7 @@ options metarepository=&repo; filename __mc1 clear; filename __mc2 clear; -%mend;/** +%mend mm_getservercontexts;/** @file @brief Writes the code of an STP to an external file @details Fetches the SAS code from a Stored Process where the code is stored @@ -11213,7 +11213,7 @@ data &outds ; keep stpuri stpname treeuri; run; -%mend; +%mend mm_getstps; /** @file mm_gettableid.sas @brief Get the metadata id for a particular table @@ -11280,7 +11280,7 @@ data &outds; end; run; -%mend;/** +%mend mm_gettableid;/** @file @brief Creates a dataset with all metadata tables for a particular library @details Will only show the tables to which a user has the requisite @@ -11397,7 +11397,7 @@ proc sort; by tablename tableuri; run; -%mend;/** +%mend mm_gettables;/** @file @brief Returns the metadata path and object from either the path or object @details Provide a metadata BIP tree path, or the uri for the bottom level @@ -11464,7 +11464,7 @@ data &outds; if treeuri ne "" and treepath ne "" then output; stop; run; -%mend;/** +%mend mm_getTree;/** @file @brief Creates a dataset with all metadata types @details Usage: @@ -11538,7 +11538,7 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend;/** +%mend mm_gettypes;/** @file mm_getusers.sas @brief Creates a table containing a list of all users @details Only shows a limited number of attributes as some sites will have a @@ -11743,7 +11743,7 @@ filename __in clear; filename __out clear; filename __shake clear; -%mend;/** +%mend mm_getwebappsrvprops;/** @file mm_spkexport.sas @brief Creates an batch spk export command @details Creates a script that will export everything in a metadata folder to @@ -12038,7 +12038,7 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; +%mend mm_tree; /** @file @brief Add or update an extension to an application component @@ -12172,7 +12172,7 @@ run; run; %end; -%mend;/** +%mend mm_updateappextension;/** @file @brief Update the TextStore in a Document with the same name @details Enables arbitrary content to be stored in a document object @@ -12287,7 +12287,7 @@ run; run; %end; -%mend;/** +%mend mm_updatedocument;/** @file @brief Updates a type 2 stored process to run on STP or WKS context @details Only works on Type 2 (9.3 compatible) STPs @@ -12353,7 +12353,7 @@ run; %if &result=SUCCESS %then %put NOTE: SUCCESS: STP &target changed to &type type; %else %put %str(ERR)OR: Issue with &sysmacroname; -%mend; +%mend mm_updatestpservertype; /** @file @brief Update the source code of a type 2 STP @@ -12493,7 +12493,7 @@ run; filename &frefout clear; %end; -%mend;/** +%mend mm_updatestpsourcecode;/** @file mm_webout.sas @brief Send data to/from SAS Stored Processes @details This macro should be added to the start of each Stored Process, @@ -12702,99 +12702,7 @@ data _null_; putlog _infile_; run; -%mend;/** - @file - @brief Get metadata permissions for a particular folder - @details Uses the metadata batch tools to fetch the permissions for a - particular folder. For security, the username / password are expected to have - been provided in a protected directory. - -Usage: - - %* import the macros (or make them available some other way); - filename mc url "https://raw.githubusercontent.com/sasjs/core/main/all.sas"; - %inc mc; - - %* create sample text file as input to the macro; - %* password must be in single quotes if it has special chars; - - filename creds temp; - data _null_; - file creds; - put " -user 'sasdemo' -password 'Mars321' "; - run; - - filename outref "%sysfunc(pathname(work))"; - %mmx_getmetaperms( - metaloc=/some/meta/folder - ,secureref=creds - ,outds=work.perms - ) - -

SAS Macros

- @li mf_loc.sas - @li mf_getuniquefileref.sas - @li mp_abort.sas - - @param metaloc= the metadata folder for which to export permissions - @param secureref= fileref containing the username / password (should point to - a file in a secure location) - @param outds= (work.mmx_getmetaperms) The output table containing the perms - @param effective= (YES) Displays effective access. If set to NO, only direct - access controls are displayed. Effective access is the net effect of all - applicable permission settings (both direct access controls and inherited - permissions). - @param onlyGroup= (0) Display access for only the specified user group. - @param onlyUser= (0) Display access for only the specified user. - - @version 9.4 - @author Allan Bowe - -**/ - -%macro mmx_getmetaperms(metaloc= - ,secureref= - ,outds=work.mmx_getmetaperms - ,effective=YES - ,onlygroup=0 - ,onlyuser=0 -); - -%local host port path mmxuser mmxpass eff filt; -%let host=%sysfunc(getoption(metaserver)); -%let port=%sysfunc(getoption(metaport)); -%let path=%mf_loc(POF)/tools/sas-show-metadata-access; - -%if &effective=YES %then %let eff=-effective; -%if "&onlygroup" ne "0" %then %let filt=-onlyGroup ""&onlygroup""; -%else %if "&onlyuser" ne "0" %then %let filt=-onlyUser ""&onlyuser""; - -%local fref1; -%let fref1=%mf_getuniquefileref(); -data _null_; - file &fref1 lrecl=32767; - infile &secureref; - input; - put 'data _null_;'; - put "infile '&path -disableX11 -host &host -port &port " _infile_ @; - put " ""&metaloc"" &eff &filt 2>&1' pipe lrecl=10000;"; - put 'input;putlog _infile_;run;'; -run; - -data _null_; - infile &fref1; - input;list;run; - -%inc &fref1/nosource; - - -%mp_abort(iftrue= (&syscc ne 0) - ,mac=&sysmacroname - ,msg=%str(syscc=&syscc on exit) -) - - -%mend mmx_getmetaperms;/** +%mend mmx_deletemetafolder;/** @file mmx_spkexport.sas @brief Exports everything in a particular metadata folder @details Will export everything in a metadata folder to a specified location. @@ -12886,7 +12794,7 @@ run; %inc &fref1; -%mend;/** +%mend mmx_spkexport;/** @file @brief Checks whether a file exists in SAS Drive @details Returns 1 if the file exists, and 0 if it doesn't. Works by @@ -13608,7 +13516,7 @@ run; %put &sysmacroname:; %put &sysmacroname:; -%mend; +%mend mv_createjob; /** @file @brief Creates a JobExecution web service if it doesn't already exist @@ -14232,7 +14140,7 @@ data _null_; put ' '; put ' %quote(&user) '; put ' '; - put '%mend; '; + put '%mend mf_getuser; '; /* WEBOUT END */ put '/* if calling viya service with _job param, _program will conflict */'; put '/* so it is provided by SASjs instead as __program */'; @@ -14535,7 +14443,7 @@ libname &libref1 clear; filename &fname1a clear; libname &libref1a clear; -%mend;/** +%mend mv_deletefoldermember;/** @file @brief Deletes a Viya Job, if it exists @details If not executed in Studio 5+ will expect oauth token in a global @@ -14682,7 +14590,7 @@ libname &libref1 clear; filename &fname1a clear; libname &libref1a clear; -%mend;/** +%mend mv_deletejes;/** @file mv_deleteviyafolder.sas @brief Creates a viya folder if that folder does not already exist @details If not running in Studo 5 +, will expect an oauth token in a global @@ -14822,7 +14730,7 @@ filename &fname1 clear; filename &fname2 clear; libname &libref1 clear; -%mend;/** +%mend mv_deleteviyafolder;/** @file mv_getaccesstoken.sas @brief deprecated - replaced by mv_tokenrefresh.sas @@ -14853,7 +14761,7 @@ libname &libref1 clear; ,refresh_token_var=&refresh_token_var ) -%mend;/** +%mend mv_getaccesstoken;/** @file @brief deprecated - replaced by mv_registerclient.sas @@ -14875,7 +14783,7 @@ libname &libref1 clear; ,grant_type=&grant_type ) -%mend;/** +%mend mv_getapptoken;/** @file mv_getclients.sas @brief Get a list of Viya Clients @details First, be sure you have an access token (which requires an app token). @@ -14975,7 +14883,7 @@ run; filename &fname1 clear; libname &libref1 clear; */ -%mend;/** +%mend mv_getclients;/** @file mv_getfoldermembers.sas @brief Gets a list of folders (and ids) for a given root @details Works for both root level and below, oauth or password. Default is @@ -15202,7 +15110,7 @@ run; /* clear refs */ filename &fname1 clear; -%mend;/** +%mend mv_getgroupmembers;/** @file mv_getgroups.sas @brief Creates a dataset with a list of viya groups @details First, load the macros: @@ -15287,7 +15195,7 @@ run; filename &fname1 clear; libname &libref1 clear; -%mend;/** +%mend mv_getgroups;/** @file @brief Extract the source code from a SAS Viya Job @details Extracts the SAS code from a Job into a fileref or physical file. @@ -16182,7 +16090,7 @@ run; filename &fname0 clear; -%mend; +%mend mv_getjobstate; /** @file mv_getrefreshtoken.sas @brief deprecated - replaced by mv_tokenauth.sas @@ -16215,7 +16123,7 @@ filename &fname0 clear; ,refresh_token_var=&refresh_token_var ) -%mend;/** +%mend mv_getrefreshtoken;/** @file mv_getusergroups.sas @brief Creates a dataset with a list of groups for a particular user @details If using outside of Viya SPRE, then an access token is needed. @@ -16306,7 +16214,7 @@ run; filename &fname1 clear; libname &libref1 clear; -%mend;/** +%mend mv_getusergroups;/** @file mv_getusers.sas @brief Creates a dataset with a list of users @details First, be sure you have an access token (which requires an app token). @@ -16421,7 +16329,7 @@ run; filename &fname1 clear; libname &libref1 clear; -%mend;/** +%mend mv_getusers;/** @file @brief Executes a SAS Viya Job @details Triggers a SAS Viya Job, with optional URL parameters, using @@ -17669,7 +17577,7 @@ libname &libref clear; filename &fref1 clear; filename &fref2 clear; -%mend;/** +%mend mv_tokenauth;/** @file mv_tokenrefresh.sas @brief Get an additional access token using a refresh token @details Before an access token can be obtained, a refresh token is required @@ -17801,7 +17709,7 @@ run; libname &libref clear; filename &fref1 clear; -%mend;/** +%mend mv_tokenrefresh;/** @file @brief Send data to/from the SAS Viya Job Execution Service @details This macro should be added to the start of each Job Execution diff --git a/base/mf_existfeature.sas b/base/mf_existfeature.sas index 221b7e5..23bad62 100644 --- a/base/mf_existfeature.sas +++ b/base/mf_existfeature.sas @@ -42,6 +42,6 @@ -1 %put &sysmacroname: &feature not found; %end; -%mend; +%mend mf_existfeature; /** @endcond */ \ No newline at end of file diff --git a/base/mf_existfileref.sas b/base/mf_existfileref.sas index e921688..bbec773 100644 --- a/base/mf_existfileref.sas +++ b/base/mf_existfileref.sas @@ -24,4 +24,4 @@ 0 %end; -%mend; \ No newline at end of file +%mend mf_existfileref; \ No newline at end of file diff --git a/base/mf_existvar.sas b/base/mf_existvar.sas index 6ae0803..90cd34d 100755 --- a/base/mf_existvar.sas +++ b/base/mf_existvar.sas @@ -30,6 +30,6 @@ %let rc=%sysfunc(close(&dsid)); %end; -%mend; +%mend mf_existvar; /** @endcond */ \ No newline at end of file diff --git a/base/mf_existvarlist.sas b/base/mf_existvarlist.sas index 7677d1e..cd359ca 100755 --- a/base/mf_existvarlist.sas +++ b/base/mf_existvarlist.sas @@ -54,6 +54,6 @@ 0 %put Vars not found: &found; %end; -%mend; +%mend mf_existvarlist; /** @endcond */ \ No newline at end of file diff --git a/base/mf_getattrc.sas b/base/mf_getattrc.sas index 25a201d..b1c7cc1 100644 --- a/base/mf_getattrc.sas +++ b/base/mf_getattrc.sas @@ -31,4 +31,4 @@ %sysfunc(attrc(&dsid,&attr)) %let rc=%sysfunc(close(&dsid)); %end; -%mend; \ No newline at end of file +%mend mf_getattrc; \ No newline at end of file diff --git a/base/mf_getattrn.sas b/base/mf_getattrn.sas index 933a975..f2ca561 100755 --- a/base/mf_getattrn.sas +++ b/base/mf_getattrn.sas @@ -31,4 +31,4 @@ %sysfunc(attrn(&dsid,&attr)) %let rc=%sysfunc(close(&dsid)); %end; -%mend; \ No newline at end of file +%mend mf_getattrn; \ No newline at end of file diff --git a/base/mf_getengine.sas b/base/mf_getengine.sas index 638154f..06e3fc8 100755 --- a/base/mf_getengine.sas +++ b/base/mf_getengine.sas @@ -48,6 +48,6 @@ &engine -%mend; +%mend mf_getengine; /** @endcond */ \ No newline at end of file diff --git a/base/mf_getfilesize.sas b/base/mf_getfilesize.sas index 02785a1..0d4b433 100644 --- a/base/mf_getfilesize.sas +++ b/base/mf_getfilesize.sas @@ -44,4 +44,4 @@ %sysfunc(INPUTN(&bytes, best.),sizekmg.) %end; -%mend ; \ No newline at end of file +%mend mf_getfilesize ; \ No newline at end of file diff --git a/base/mf_getkeyvalue.sas b/base/mf_getkeyvalue.sas index b1e21cd..0d2cc30 100644 --- a/base/mf_getkeyvalue.sas +++ b/base/mf_getkeyvalue.sas @@ -29,4 +29,4 @@ &valc %end; %else %put %str(ERR)OR: Unable to find key &key in ds &libds; -%mend; \ No newline at end of file +%mend mf_getkeyvalue; \ No newline at end of file diff --git a/base/mf_getplatform.sas b/base/mf_getplatform.sas index 91bb447..02d368e 100644 --- a/base/mf_getplatform.sas +++ b/base/mf_getplatform.sas @@ -62,4 +62,4 @@ %else %if &switch=VIYARESTAPI %then %do; %mf_trimstr(%sysfunc(getoption(servicesbaseurl)),/) %end; -%mend; \ No newline at end of file +%mend mf_getplatform; \ No newline at end of file diff --git a/base/mf_getquotedstr.sas b/base/mf_getquotedstr.sas index f5ba9dc..1a1d855 100755 --- a/base/mf_getquotedstr.sas +++ b/base/mf_getquotedstr.sas @@ -50,4 +50,4 @@ &buffer -%mend; \ No newline at end of file +%mend mf_getquotedstr; \ No newline at end of file diff --git a/base/mf_getschema.sas b/base/mf_getschema.sas index 4d0a0ab..fea0ae0 100644 --- a/base/mf_getschema.sas +++ b/base/mf_getschema.sas @@ -38,6 +38,6 @@ &schema -%mend; +%mend mf_getschema; /** @endcond */ diff --git a/base/mf_getuniquefileref.sas b/base/mf_getuniquefileref.sas index cd2f76a..01c3dd0 100644 --- a/base/mf_getuniquefileref.sas +++ b/base/mf_getuniquefileref.sas @@ -34,4 +34,4 @@ %end; %end; %put unable to find available fileref in range &prefix.0-&maxtries; -%mend; \ No newline at end of file +%mend mf_getuniquefileref; \ No newline at end of file diff --git a/base/mf_getuniquelibref.sas b/base/mf_getuniquelibref.sas index 37ae866..8fe1ef9 100644 --- a/base/mf_getuniquelibref.sas +++ b/base/mf_getuniquelibref.sas @@ -37,4 +37,4 @@ %end; %end; %put unable to find available libref in range &prefix.0-&maxtries; -%mend; \ No newline at end of file +%mend mf_getuniquelibref; \ No newline at end of file diff --git a/base/mf_getuser.sas b/base/mf_getuser.sas index 10a0f77..b3ae413 100755 --- a/base/mf_getuser.sas +++ b/base/mf_getuser.sas @@ -39,4 +39,4 @@ %quote(&user) -%mend; +%mend mf_getuser; diff --git a/base/mf_getvalue.sas b/base/mf_getvalue.sas index 9c5608e..4c3b6f1 100644 --- a/base/mf_getvalue.sas +++ b/base/mf_getvalue.sas @@ -30,4 +30,4 @@ %trim(&&&variable) %end; -%mend; \ No newline at end of file +%mend mf_getvalue; \ No newline at end of file diff --git a/base/mf_getvarcount.sas b/base/mf_getvarcount.sas index 6921fef..e2861ca 100644 --- a/base/mf_getvarcount.sas +++ b/base/mf_getvarcount.sas @@ -29,4 +29,4 @@ %let rc=%sysfunc(close(&dsid)); %end; &nvars -%mend; \ No newline at end of file +%mend mf_getvarcount; \ No newline at end of file diff --git a/base/mf_getvarlen.sas b/base/mf_getvarlen.sas index de8fd70..64f1bb8 100644 --- a/base/mf_getvarlen.sas +++ b/base/mf_getvarlen.sas @@ -49,4 +49,4 @@ %let rc = %sysfunc(close(&dsid)); /* Return variable format */ &vlen -%mend; \ No newline at end of file +%mend mf_getVarLen; \ No newline at end of file diff --git a/base/mf_getvarnum.sas b/base/mf_getvarnum.sas index 20681e8..83fc99f 100755 --- a/base/mf_getvarnum.sas +++ b/base/mf_getvarnum.sas @@ -51,4 +51,4 @@ returns: /* Return variable number */ &vnum. -%mend; \ No newline at end of file +%mend mf_getVarNum; \ No newline at end of file diff --git a/base/mf_getxengine.sas b/base/mf_getxengine.sas index 7ad34ce..eadd435 100644 --- a/base/mf_getxengine.sas +++ b/base/mf_getxengine.sas @@ -40,4 +40,4 @@ &engine -%mend; +%mend mf_getxengine; diff --git a/base/mf_isblank.sas b/base/mf_isblank.sas index ea324b2..d46cd07 100644 --- a/base/mf_isblank.sas +++ b/base/mf_isblank.sas @@ -24,4 +24,4 @@ %sysevalf(%superq(param)=,boolean) -%mend; \ No newline at end of file +%mend mf_isblank; \ No newline at end of file diff --git a/base/mf_isdir.sas b/base/mf_isdir.sas index 6018412..af5022d 100644 --- a/base/mf_isdir.sas +++ b/base/mf_isdir.sas @@ -31,4 +31,4 @@ &is_directory -%mend; \ No newline at end of file +%mend mf_isdir; \ No newline at end of file diff --git a/base/mf_loc.sas b/base/mf_loc.sas index 973921d..31aa957 100644 --- a/base/mf_loc.sas +++ b/base/mf_loc.sas @@ -26,4 +26,4 @@ &root %end; -%mend; +%mend mf_loc; diff --git a/base/mf_mkdir.sas b/base/mf_mkdir.sas index 5e6b302..763271b 100755 --- a/base/mf_mkdir.sas +++ b/base/mf_mkdir.sas @@ -64,4 +64,4 @@ Usage: %end; %end; /* exit quietly if directory did exist.*/ -%mend; +%mend mf_mkdir; diff --git a/base/mf_mval.sas b/base/mf_mval.sas index c623413..8cf5e48 100644 --- a/base/mf_mval.sas +++ b/base/mf_mval.sas @@ -16,4 +16,4 @@ %if %symexist(&var) %then %do; %superq(&var) %end; -%mend; +%mend mf_mval; diff --git a/base/mf_nobs.sas b/base/mf_nobs.sas index f866c75..c72660f 100755 --- a/base/mf_nobs.sas +++ b/base/mf_nobs.sas @@ -23,4 +23,4 @@ %macro mf_nobs(libds )/*/STORE SOURCE*/; %mf_getattrn(&libds,NLOBS) -%mend; \ No newline at end of file +%mend mf_nobs; \ No newline at end of file diff --git a/base/mf_trimstr.sas b/base/mf_trimstr.sas index e8c19f2..d16b350 100644 --- a/base/mf_trimstr.sas +++ b/base/mf_trimstr.sas @@ -47,4 +47,4 @@ &basestr %end; -%mend; \ No newline at end of file +%mend mf_trimstr; \ No newline at end of file diff --git a/base/mf_verifymacvars.sas b/base/mf_verifymacvars.sas index 527993a..aaddc6b 100755 --- a/base/mf_verifymacvars.sas +++ b/base/mf_verifymacvars.sas @@ -62,4 +62,4 @@ %else %mf_abort(mac=mf_verifymacvars,type=&mabort,msg=&abortmsg); %exit_success: -%mend; +%mend mf_verifymacvars; diff --git a/base/mf_wordsinstr1butnotstr2.sas b/base/mf_wordsinstr1butnotstr2.sas index ec35930..0485bd4 100755 --- a/base/mf_wordsinstr1butnotstr2.sas +++ b/base/mf_wordsinstr1butnotstr2.sas @@ -50,5 +50,5 @@ &outvar -%mend; +%mend mf_wordsInStr1ButNotStr2; diff --git a/base/mp_assertcols.sas b/base/mp_assertcols.sas index 8ebd3d6..355e313 100644 --- a/base/mp_assertcols.sas +++ b/base/mp_assertcols.sas @@ -142,4 +142,4 @@ proc sql; drop table &ds; -%mend; \ No newline at end of file +%mend mp_assertcols; \ No newline at end of file diff --git a/base/mp_assertcolvals.sas b/base/mp_assertcolvals.sas index 298ee76..c10ea3a 100644 --- a/base/mp_assertcolvals.sas +++ b/base/mp_assertcolvals.sas @@ -144,4 +144,4 @@ proc sql; drop table &ds; -%mend; \ No newline at end of file +%mend mp_assertcolvals; \ No newline at end of file diff --git a/base/mp_binarycopy.sas b/base/mp_binarycopy.sas index 58a8c85..d964a73 100755 --- a/base/mp_binarycopy.sas +++ b/base/mp_binarycopy.sas @@ -53,4 +53,4 @@ %if &outref=____out %then %do; filename &outref clear; %end; -%mend; \ No newline at end of file +%mend mp_binarycopy; \ No newline at end of file diff --git a/base/mp_cleancsv.sas b/base/mp_cleancsv.sas index c98c9d0..25b44e2 100644 --- a/base/mp_cleancsv.sas +++ b/base/mp_cleancsv.sas @@ -67,5 +67,5 @@ else put inchar $char1.; end; run; -%mend; +%mend mp_cleancsv; /** @endcond */ \ No newline at end of file diff --git a/base/mp_createconstraints.sas b/base/mp_createconstraints.sas index 1a84b19..c9d4d62 100644 --- a/base/mp_createconstraints.sas +++ b/base/mp_createconstraints.sas @@ -64,4 +64,4 @@ data &outds; output; run; -%mend; \ No newline at end of file +%mend mp_createconstraints; \ No newline at end of file diff --git a/base/mp_createwebservice.sas b/base/mp_createwebservice.sas index 57aac8e..72b25d7 100644 --- a/base/mp_createwebservice.sas +++ b/base/mp_createwebservice.sas @@ -80,4 +80,4 @@ Usage: ) %end; -%mend; +%mend mp_createwebservice; diff --git a/base/mp_csv2ds.sas b/base/mp_csv2ds.sas index 3a7ba42..5cac84f 100644 --- a/base/mp_csv2ds.sas +++ b/base/mp_csv2ds.sas @@ -141,4 +141,4 @@ data &outds %end; run; -%mend; \ No newline at end of file +%mend mp_csv2ds; \ No newline at end of file diff --git a/base/mp_deleteconstraints.sas b/base/mp_deleteconstraints.sas index e7e37d3..0c819d0 100644 --- a/base/mp_deleteconstraints.sas +++ b/base/mp_deleteconstraints.sas @@ -49,4 +49,4 @@ data &outds; end; run; -%mend; \ No newline at end of file +%mend mp_deleteconstraints; \ No newline at end of file diff --git a/base/mp_dirlist.sas b/base/mp_dirlist.sas index 42d590c..e827f5a 100644 --- a/base/mp_dirlist.sas +++ b/base/mp_dirlist.sas @@ -167,4 +167,4 @@ run; by filepath file_or_folder filename ext ; run; %end; -%mend; \ No newline at end of file +%mend mp_dirlist; \ No newline at end of file diff --git a/base/mp_distinctfmtvalues.sas b/base/mp_distinctfmtvalues.sas index 54cd22e..5caacf7 100644 --- a/base/mp_distinctfmtvalues.sas +++ b/base/mp_distinctfmtvalues.sas @@ -47,4 +47,4 @@ %end; as &outvar length=&varlen from &libds; -%mend; \ No newline at end of file +%mend mp_distinctfmtvalues; \ No newline at end of file diff --git a/base/mp_ds2cards.sas b/base/mp_ds2cards.sas index dd95b6d..b1d55db 100644 --- a/base/mp_ds2cards.sas +++ b/base/mp_ds2cards.sas @@ -251,4 +251,4 @@ quit; %put NOTE-;%put NOTE-; %put NOTE- %sysfunc(dequote(&cards_file.)); %put NOTE-;%put NOTE-; -%mend; \ No newline at end of file +%mend mp_ds2cards; \ No newline at end of file diff --git a/base/mp_ds2csv.sas b/base/mp_ds2csv.sas index 8392a66..3b3d533 100644 --- a/base/mp_ds2csv.sas +++ b/base/mp_ds2csv.sas @@ -55,4 +55,4 @@ data _null_; run; -%mend; \ No newline at end of file +%mend mp_ds2csv; \ No newline at end of file diff --git a/base/mp_filtergenerate.sas b/base/mp_filtergenerate.sas index 7654bf8..3280460 100644 --- a/base/mp_filtergenerate.sas +++ b/base/mp_filtergenerate.sas @@ -99,4 +99,4 @@ filename &outref temp; run; %end; -%mend; +%mend mp_filtergenerate; diff --git a/base/mp_getconstraints.sas b/base/mp_getconstraints.sas index 6be4f9d..e23ce75 100644 --- a/base/mp_getconstraints.sas +++ b/base/mp_getconstraints.sas @@ -57,4 +57,4 @@ create table &outds as %end; ; -%mend; \ No newline at end of file +%mend mp_getconstraints; \ No newline at end of file diff --git a/base/mp_getdbml.sas b/base/mp_getdbml.sas index 542f625..60a98d4 100644 --- a/base/mp_getdbml.sas +++ b/base/mp_getdbml.sas @@ -332,4 +332,4 @@ run; run; %end; -%mend; \ No newline at end of file +%mend mp_getdbml; \ No newline at end of file diff --git a/base/mp_getddl.sas b/base/mp_getddl.sas index 3547c64..be92303 100644 --- a/base/mp_getddl.sas +++ b/base/mp_getddl.sas @@ -115,7 +115,7 @@ create table _data_ as end; run; %put &=constraints_used; -%mend; +%mend addConst; data _null_; file &fref; @@ -378,4 +378,4 @@ run; run; %end; -%mend; \ No newline at end of file +%mend mp_getddl; \ No newline at end of file diff --git a/base/mp_getmaxvarlengths.sas b/base/mp_getmaxvarlengths.sas index 1bde42f..644ac10 100755 --- a/base/mp_getmaxvarlengths.sas +++ b/base/mp_getmaxvarlengths.sas @@ -70,4 +70,4 @@ create table &outds (rename=( out=&outds(rename=(_name_=NAME COL1=MAXLEN)); run; -%mend; \ No newline at end of file +%mend mp_getmaxvarlengths; \ No newline at end of file diff --git a/base/mp_guesspk.sas b/base/mp_guesspk.sas index abeaa22..a8b9200 100644 --- a/base/mp_guesspk.sas +++ b/base/mp_guesspk.sas @@ -301,4 +301,4 @@ %return; %end; -%mend; \ No newline at end of file +%mend mp_guesspk; \ No newline at end of file diff --git a/base/mp_hashdataset.sas b/base/mp_hashdataset.sas index 79ee366..d05ed94 100644 --- a/base/mp_hashdataset.sas +++ b/base/mp_hashdataset.sas @@ -72,4 +72,4 @@ if &lastvar then output; run; %end; -%mend; \ No newline at end of file +%mend mp_hashdataset; \ No newline at end of file diff --git a/base/mp_lib2cards.sas b/base/mp_lib2cards.sas index 1e2ee82..e2627e2 100644 --- a/base/mp_lib2cards.sas +++ b/base/mp_lib2cards.sas @@ -75,4 +75,4 @@ select distinct lowcase(memname) ) %end; -%mend; \ No newline at end of file +%mend mp_lib2cards; \ No newline at end of file diff --git a/base/mp_perflog.sas b/base/mp_perflog.sas index 4fc9864..c638826 100644 --- a/base/mp_perflog.sas +++ b/base/mp_perflog.sas @@ -39,4 +39,4 @@ ,dttm=%sysfunc(datetime()); quit; -%mend; \ No newline at end of file +%mend mp_perflog; \ No newline at end of file diff --git a/base/mp_prevobs.sas b/base/mp_prevobs.sas index ad49786..9d0aa0b 100644 --- a/base/mp_prevobs.sas +++ b/base/mp_prevobs.sas @@ -85,4 +85,4 @@ "with record &record and " _n_=; %end; -%mend; \ No newline at end of file +%mend mp_prevobs; \ No newline at end of file diff --git a/base/mp_recursivejoin.sas b/base/mp_recursivejoin.sas index 30f20e9..44dd9fb 100644 --- a/base/mp_recursivejoin.sas +++ b/base/mp_recursivejoin.sas @@ -87,4 +87,4 @@ insert into &outds select distinct * from &append_ds; ) %end; -%mend; +%mend mp_recursivejoin; diff --git a/base/mp_resetoption.sas b/base/mp_resetoption.sas index 1235997..8a206f4 100644 --- a/base/mp_resetoption.sas +++ b/base/mp_resetoption.sas @@ -30,4 +30,4 @@ data _null_; end; run; -%mend; \ No newline at end of file +%mend mp_resetoption; \ No newline at end of file diff --git a/base/mp_runddl.sas b/base/mp_runddl.sas index 032962f..0a8e305 100644 --- a/base/mp_runddl.sas +++ b/base/mp_runddl.sas @@ -46,4 +46,4 @@ -%mend; \ No newline at end of file +%mend mp_runddl; \ No newline at end of file diff --git a/base/mp_searchdata.sas b/base/mp_searchdata.sas index 0d192e4..517ad1b 100644 --- a/base/mp_searchdata.sas +++ b/base/mp_searchdata.sas @@ -117,4 +117,4 @@ proc sql %put process finished at %sysfunc(datetime(),datetime19.); -%mend; +%mend mp_searchdata; diff --git a/base/mp_setkeyvalue.sas b/base/mp_setkeyvalue.sas index ec8021c..b7a2d43 100644 --- a/base/mp_setkeyvalue.sas +++ b/base/mp_setkeyvalue.sas @@ -49,4 +49,4 @@ quit; -%mend; \ No newline at end of file +%mend mp_setkeyvalue; \ No newline at end of file diff --git a/base/mp_stprequests.sas b/base/mp_stprequests.sas index 3e001a8..9490f4b 100644 --- a/base/mp_stprequests.sas +++ b/base/mp_stprequests.sas @@ -71,4 +71,4 @@ proc append base=&libds data=&syslast nowarn;run; options &etls_syntaxcheck; -%mend; \ No newline at end of file +%mend mp_stprequests; \ No newline at end of file diff --git a/base/mp_streamfile.sas b/base/mp_streamfile.sas index 5a96897..edacaab 100644 --- a/base/mp_streamfile.sas +++ b/base/mp_streamfile.sas @@ -134,4 +134,4 @@ run; %mp_binarycopy(inloc="&inloc",outref=_webout) %end; -%mend; +%mend mp_streamfile; diff --git a/base/mp_testjob.sas b/base/mp_testjob.sas index 665caaa..26a9d91 100644 --- a/base/mp_testjob.sas +++ b/base/mp_testjob.sas @@ -89,4 +89,4 @@ quit; libname &lib clear; -%mend; \ No newline at end of file +%mend mp_testjob; \ No newline at end of file diff --git a/base/mp_testwritespeedlibrary.sas b/base/mp_testwritespeedlibrary.sas index ce7c0f2..38cce1d 100644 --- a/base/mp_testwritespeedlibrary.sas +++ b/base/mp_testwritespeedlibrary.sas @@ -56,4 +56,4 @@ data &outds; duration_seconds=end_dttm-start_dttm; run; -%mend; \ No newline at end of file +%mend mp_testwritespeedlibrary; \ No newline at end of file diff --git a/base/mp_tree.sas b/base/mp_tree.sas index 1df0fbb..24e635b 100644 --- a/base/mp_tree.sas +++ b/base/mp_tree.sas @@ -68,4 +68,4 @@ data &outds ; rc=filename('tmp'); run; -%mend; \ No newline at end of file +%mend mp_tree; \ No newline at end of file diff --git a/base/mp_unzip.sas b/base/mp_unzip.sas index c2469bf..a80ac24 100644 --- a/base/mp_unzip.sas +++ b/base/mp_unzip.sas @@ -63,4 +63,4 @@ data _null_; !!'filename &fname2 clear; filename &fname3 clear;'); run; -%mend; \ No newline at end of file +%mend mp_unzip; \ No newline at end of file diff --git a/base/mp_updatevarlength.sas b/base/mp_updatevarlength.sas index 60ab734..9cc42be 100644 --- a/base/mp_updatevarlength.sas +++ b/base/mp_updatevarlength.sas @@ -90,4 +90,4 @@ alter table &libds modify &var char(&len); %mp_createconstraints(inds=&dsconst,outds=&dsconst._addd,execute=YES) -%mend; +%mend mp_updatevarlength; diff --git a/base/mp_zip.sas b/base/mp_zip.sas index 97377a9..b08642b 100644 --- a/base/mp_zip.sas +++ b/base/mp_zip.sas @@ -76,4 +76,4 @@ ods package publish archive properties (archive_name="&outname..zip" archive_path="&outpath"); ods package close; -%mend; \ No newline at end of file +%mend mp_zip; \ No newline at end of file diff --git a/meta/mm_adduser2group.sas b/meta/mm_adduser2group.sas index 7f40237..6b5ce81 100644 --- a/meta/mm_adduser2group.sas +++ b/meta/mm_adduser2group.sas @@ -95,4 +95,4 @@ run; filename __us2grp clear; -%mend; \ No newline at end of file +%mend mm_adduser2group; \ No newline at end of file diff --git a/meta/mm_assigndirectlib.sas b/meta/mm_assigndirectlib.sas index cb43576..af17012 100755 --- a/meta/mm_assigndirectlib.sas +++ b/meta/mm_assigndirectlib.sas @@ -460,4 +460,4 @@ run; %return; %end; -%mend; +%mend mm_assigndirectlib; diff --git a/meta/mm_assignlib.sas b/meta/mm_assignlib.sas index 0d81f80..b430211 100755 --- a/meta/mm_assignlib.sas +++ b/meta/mm_assignlib.sas @@ -75,4 +75,4 @@ %else %do; %put NOTE: Library &libref is already assigned; %end; -%mend; +%mend mm_assignlib; diff --git a/meta/mm_createapplication.sas b/meta/mm_createapplication.sas index 62c01ad..21423a1 100644 --- a/meta/mm_createapplication.sas +++ b/meta/mm_createapplication.sas @@ -152,4 +152,4 @@ run; %else %put NOTE: Application (&name) successfully created in (&tree)!; -%mend; \ No newline at end of file +%mend mm_createapplication; \ No newline at end of file diff --git a/meta/mm_createdataset.sas b/meta/mm_createdataset.sas index c224a87..76cb918 100644 --- a/meta/mm_createdataset.sas +++ b/meta/mm_createdataset.sas @@ -80,4 +80,4 @@ data _null_; if last then call execute('call missing(of _all_);stop;run;'); run; -%mend; \ No newline at end of file +%mend mm_createdataset; \ No newline at end of file diff --git a/meta/mm_createdocument.sas b/meta/mm_createdocument.sas index c1b7d79..3eee0e3 100644 --- a/meta/mm_createdocument.sas +++ b/meta/mm_createdocument.sas @@ -122,4 +122,4 @@ run; run; %end; -%mend; \ No newline at end of file +%mend mm_createdocument; \ No newline at end of file diff --git a/meta/mm_createfolder.sas b/meta/mm_createfolder.sas index 47b1785..200d580 100644 --- a/meta/mm_createfolder.sas +++ b/meta/mm_createfolder.sas @@ -157,4 +157,4 @@ run; %end; %put &sysmacroname: execution finished for &path; -%mend; \ No newline at end of file +%mend mm_createfolder; \ No newline at end of file diff --git a/meta/mm_createlibrary.sas b/meta/mm_createlibrary.sas index 8bdd233..5eee354 100644 --- a/meta/mm_createlibrary.sas +++ b/meta/mm_createlibrary.sas @@ -318,4 +318,4 @@ filename &frefout temp; filename &frefout clear; %end; -%mend; +%mend mm_createlibrary; diff --git a/meta/mm_createstp.sas b/meta/mm_createstp.sas index 88c2f72..e1d5556 100755 --- a/meta/mm_createstp.sas +++ b/meta/mm_createstp.sas @@ -385,4 +385,4 @@ run; %put %str(WARN)ING: STPTYPE=*&stptype* not recognised!; %end; -%mend; \ No newline at end of file +%mend mm_createstp; \ No newline at end of file diff --git a/meta/mm_createwebservice.sas b/meta/mm_createwebservice.sas index ddd793c..6512370 100644 --- a/meta/mm_createwebservice.sas +++ b/meta/mm_createwebservice.sas @@ -415,7 +415,7 @@ data _null_; put ' '; put ' %quote(&user) '; put ' '; - put '%mend; '; + put '%mend mf_getuser; '; /* WEBOUT END */ put '%macro webout(action,ds,dslabel=,fmt=);'; put ' %mm_webout(&action,ds=&ds,dslabel=&dslabel,fmt=&fmt)'; diff --git a/meta/mm_deletedocument.sas b/meta/mm_deletedocument.sas index a4bedab..ddcf563 100644 --- a/meta/mm_deletedocument.sas +++ b/meta/mm_deletedocument.sas @@ -68,4 +68,4 @@ run; %return; %end; -%mend; +%mend mm_deletedocument; diff --git a/meta/mm_deletelibrary.sas b/meta/mm_deletelibrary.sas index 2f760a2..f400a62 100644 --- a/meta/mm_deletelibrary.sas +++ b/meta/mm_deletelibrary.sas @@ -89,4 +89,4 @@ run; %put &sysmacroname: Library &name (&liburi) was successfully deleted; -%mend; +%mend mm_deletelibrary; diff --git a/meta/mm_deletestp.sas b/meta/mm_deletestp.sas index 6fd41dd..7c3f2f8 100644 --- a/meta/mm_deletestp.sas +++ b/meta/mm_deletestp.sas @@ -67,4 +67,4 @@ run; %return; %end; -%mend; +%mend mm_deletestp; diff --git a/meta/mm_getauthinfo.sas b/meta/mm_getauthinfo.sas index f2aea00..423655f 100644 --- a/meta/mm_getauthinfo.sas +++ b/meta/mm_getauthinfo.sas @@ -113,4 +113,4 @@ run; filename &fileref clear; -%mend; \ No newline at end of file +%mend mm_getauthinfo; \ No newline at end of file diff --git a/meta/mm_getcols.sas b/meta/mm_getcols.sas index a647bee..59f6e73 100644 --- a/meta/mm_getcols.sas +++ b/meta/mm_getcols.sas @@ -50,4 +50,4 @@ proc sort; by colname; run; -%mend; \ No newline at end of file +%mend mm_getcols; \ No newline at end of file diff --git a/meta/mm_getdetails.sas b/meta/mm_getdetails.sas index 5993693..d396897 100644 --- a/meta/mm_getdetails.sas +++ b/meta/mm_getdetails.sas @@ -62,4 +62,4 @@ proc sort; by type name; run; -%mend; \ No newline at end of file +%mend mm_getdetails; \ No newline at end of file diff --git a/meta/mm_getdirectories.sas b/meta/mm_getdirectories.sas index 7fab045..10012da 100755 --- a/meta/mm_getdirectories.sas +++ b/meta/mm_getdirectories.sas @@ -54,4 +54,4 @@ data &outds (keep=directoryuri name directoryname directorydesc ); end; run; -%mend; +%mend mm_getDirectories; diff --git a/meta/mm_getdocument.sas b/meta/mm_getdocument.sas index 4155672..d123d9e 100644 --- a/meta/mm_getdocument.sas +++ b/meta/mm_getdocument.sas @@ -143,4 +143,4 @@ run; filename __getdoc clear; filename __outdoc clear; -%mend; +%mend mm_getdocument; diff --git a/meta/mm_getfoldermembers.sas b/meta/mm_getfoldermembers.sas index 0e512e8..15bdf73 100644 --- a/meta/mm_getfoldermembers.sas +++ b/meta/mm_getfoldermembers.sas @@ -93,4 +93,4 @@ run; %end; -%mend; +%mend mm_getfoldermembers; diff --git a/meta/mm_getfoldertree.sas b/meta/mm_getfoldertree.sas index b629155..95c0d1a 100644 --- a/meta/mm_getfoldertree.sas +++ b/meta/mm_getfoldertree.sas @@ -88,4 +88,4 @@ data _null_; !!",level=%eval(&level+1),append=YES)"); run; -%mend; +%mend mm_getfoldertree; diff --git a/meta/mm_getgroupmembers.sas b/meta/mm_getgroupmembers.sas index 503a392..c1853dd 100755 --- a/meta/mm_getgroupmembers.sas +++ b/meta/mm_getgroupmembers.sas @@ -69,4 +69,4 @@ end; run; -%mend; +%mend mm_getgroupmembers; diff --git a/meta/mm_getgroups.sas b/meta/mm_getgroups.sas index 5e4386d..d63104e 100755 --- a/meta/mm_getgroups.sas +++ b/meta/mm_getgroups.sas @@ -92,4 +92,4 @@ options metarepository=&oldrepo; %end; -%mend; \ No newline at end of file +%mend mm_getGroups; \ No newline at end of file diff --git a/meta/mm_getlibs.sas b/meta/mm_getlibs.sas index fe819d0..c072178 100755 --- a/meta/mm_getlibs.sas +++ b/meta/mm_getlibs.sas @@ -94,4 +94,4 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; \ No newline at end of file +%mend mm_getlibs; \ No newline at end of file diff --git a/meta/mm_getobjects.sas b/meta/mm_getobjects.sas index fcac368..4678784 100644 --- a/meta/mm_getobjects.sas +++ b/meta/mm_getobjects.sas @@ -67,4 +67,4 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; \ No newline at end of file +%mend mm_getobjects; \ No newline at end of file diff --git a/meta/mm_getpublictypes.sas b/meta/mm_getpublictypes.sas index 7dbd344..3e25047 100644 --- a/meta/mm_getpublictypes.sas +++ b/meta/mm_getpublictypes.sas @@ -83,4 +83,4 @@ insert into &outds values ('User'); insert into &outds values ('UserGroup'); quit; -%mend; \ No newline at end of file +%mend mm_getpublictypes; \ No newline at end of file diff --git a/meta/mm_getrepos.sas b/meta/mm_getrepos.sas index 241af34..bf34aa6 100644 --- a/meta/mm_getrepos.sas +++ b/meta/mm_getrepos.sas @@ -129,4 +129,4 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; \ No newline at end of file +%mend mm_getrepos; \ No newline at end of file diff --git a/meta/mm_getroles.sas b/meta/mm_getroles.sas index 82d457c..6f09bd3 100644 --- a/meta/mm_getroles.sas +++ b/meta/mm_getroles.sas @@ -70,4 +70,4 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; +%mend mm_getroles; diff --git a/meta/mm_getservercontexts.sas b/meta/mm_getservercontexts.sas index 24eb2b6..99fc69f 100644 --- a/meta/mm_getservercontexts.sas +++ b/meta/mm_getservercontexts.sas @@ -81,4 +81,4 @@ options metarepository=&repo; filename __mc1 clear; filename __mc2 clear; -%mend; \ No newline at end of file +%mend mm_getservercontexts; \ No newline at end of file diff --git a/meta/mm_getstps.sas b/meta/mm_getstps.sas index 29621cb..662550c 100644 --- a/meta/mm_getstps.sas +++ b/meta/mm_getstps.sas @@ -107,4 +107,4 @@ data &outds ; keep stpuri stpname treeuri; run; -%mend; +%mend mm_getstps; diff --git a/meta/mm_gettableid.sas b/meta/mm_gettableid.sas index 08d797c..f2adef3 100644 --- a/meta/mm_gettableid.sas +++ b/meta/mm_gettableid.sas @@ -64,4 +64,4 @@ data &outds; end; run; -%mend; \ No newline at end of file +%mend mm_gettableid; \ No newline at end of file diff --git a/meta/mm_gettables.sas b/meta/mm_gettables.sas index 7b56f29..3bf091a 100644 --- a/meta/mm_gettables.sas +++ b/meta/mm_gettables.sas @@ -115,4 +115,4 @@ proc sort; by tablename tableuri; run; -%mend; \ No newline at end of file +%mend mm_gettables; \ No newline at end of file diff --git a/meta/mm_gettree.sas b/meta/mm_gettree.sas index 4baca6a..8b35a40 100755 --- a/meta/mm_gettree.sas +++ b/meta/mm_gettree.sas @@ -65,4 +65,4 @@ data &outds; if treeuri ne "" and treepath ne "" then output; stop; run; -%mend; \ No newline at end of file +%mend mm_getTree; \ No newline at end of file diff --git a/meta/mm_gettypes.sas b/meta/mm_gettypes.sas index eaf0582..3de7a1c 100644 --- a/meta/mm_gettypes.sas +++ b/meta/mm_gettypes.sas @@ -72,4 +72,4 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; \ No newline at end of file +%mend mm_gettypes; \ No newline at end of file diff --git a/meta/mm_getwebappsrvprops.sas b/meta/mm_getwebappsrvprops.sas index 7bdf001..8b1a292 100644 --- a/meta/mm_getwebappsrvprops.sas +++ b/meta/mm_getwebappsrvprops.sas @@ -132,4 +132,4 @@ filename __in clear; filename __out clear; filename __shake clear; -%mend; \ No newline at end of file +%mend mm_getwebappsrvprops; \ No newline at end of file diff --git a/meta/mm_tree.sas b/meta/mm_tree.sas index 708998c..beb4006 100644 --- a/meta/mm_tree.sas +++ b/meta/mm_tree.sas @@ -170,4 +170,4 @@ filename sxlemap clear; filename response clear; libname _XML_ clear; -%mend; +%mend mm_tree; diff --git a/meta/mm_updateappextension.sas b/meta/mm_updateappextension.sas index 710b7c6..86b1d41 100644 --- a/meta/mm_updateappextension.sas +++ b/meta/mm_updateappextension.sas @@ -131,4 +131,4 @@ run; run; %end; -%mend; \ No newline at end of file +%mend mm_updateappextension; \ No newline at end of file diff --git a/meta/mm_updatedocument.sas b/meta/mm_updatedocument.sas index c376acb..a825246 100644 --- a/meta/mm_updatedocument.sas +++ b/meta/mm_updatedocument.sas @@ -113,4 +113,4 @@ run; run; %end; -%mend; \ No newline at end of file +%mend mm_updatedocument; \ No newline at end of file diff --git a/meta/mm_updatestpservertype.sas b/meta/mm_updatestpservertype.sas index 9a2712f..8848373 100644 --- a/meta/mm_updatestpservertype.sas +++ b/meta/mm_updatestpservertype.sas @@ -64,4 +64,4 @@ run; %if &result=SUCCESS %then %put NOTE: SUCCESS: STP &target changed to &type type; %else %put %str(ERR)OR: Issue with &sysmacroname; -%mend; +%mend mm_updatestpservertype; diff --git a/meta/mm_updatestpsourcecode.sas b/meta/mm_updatestpsourcecode.sas index bb8ffc9..785fee7 100644 --- a/meta/mm_updatestpsourcecode.sas +++ b/meta/mm_updatestpsourcecode.sas @@ -137,4 +137,4 @@ run; filename &frefout clear; %end; -%mend; \ No newline at end of file +%mend mm_updatestpsourcecode; \ No newline at end of file diff --git a/metax/mmx_deletemetafolder.sas b/metax/mmx_deletemetafolder.sas index 160df78..1c0c377 100644 --- a/metax/mmx_deletemetafolder.sas +++ b/metax/mmx_deletemetafolder.sas @@ -37,4 +37,4 @@ data _null_; putlog _infile_; run; -%mend; \ No newline at end of file +%mend mmx_deletemetafolder; \ No newline at end of file diff --git a/metax/mmx_spkexport.sas b/metax/mmx_spkexport.sas index 625b255..216c76d 100644 --- a/metax/mmx_spkexport.sas +++ b/metax/mmx_spkexport.sas @@ -90,4 +90,4 @@ run; %inc &fref1; -%mend; \ No newline at end of file +%mend mmx_spkexport; \ No newline at end of file diff --git a/viya/mv_createjob.sas b/viya/mv_createjob.sas index 1df0471..bbb49ce 100644 --- a/viya/mv_createjob.sas +++ b/viya/mv_createjob.sas @@ -328,4 +328,4 @@ run; %put &sysmacroname:; %put &sysmacroname:; -%mend; +%mend mv_createjob; diff --git a/viya/mv_createwebservice.sas b/viya/mv_createwebservice.sas index b1dd5ae..144d604 100644 --- a/viya/mv_createwebservice.sas +++ b/viya/mv_createwebservice.sas @@ -621,7 +621,7 @@ data _null_; put ' '; put ' %quote(&user) '; put ' '; - put '%mend; '; + put '%mend mf_getuser; '; /* WEBOUT END */ put '/* if calling viya service with _job param, _program will conflict */'; put '/* so it is provided by SASjs instead as __program */'; diff --git a/viya/mv_deletefoldermember.sas b/viya/mv_deletefoldermember.sas index aa2bf73..d857ae1 100644 --- a/viya/mv_deletefoldermember.sas +++ b/viya/mv_deletefoldermember.sas @@ -148,4 +148,4 @@ libname &libref1 clear; filename &fname1a clear; libname &libref1a clear; -%mend; \ No newline at end of file +%mend mv_deletefoldermember; \ No newline at end of file diff --git a/viya/mv_deletejes.sas b/viya/mv_deletejes.sas index a4a5138..a0c8a54 100644 --- a/viya/mv_deletejes.sas +++ b/viya/mv_deletejes.sas @@ -145,4 +145,4 @@ libname &libref1 clear; filename &fname1a clear; libname &libref1a clear; -%mend; \ No newline at end of file +%mend mv_deletejes; \ No newline at end of file diff --git a/viya/mv_deleteviyafolder.sas b/viya/mv_deleteviyafolder.sas index e700b68..d69c85b 100644 --- a/viya/mv_deleteviyafolder.sas +++ b/viya/mv_deleteviyafolder.sas @@ -138,4 +138,4 @@ filename &fname1 clear; filename &fname2 clear; libname &libref1 clear; -%mend; \ No newline at end of file +%mend mv_deleteviyafolder; \ No newline at end of file diff --git a/viya/mv_getaccesstoken.sas b/viya/mv_getaccesstoken.sas index 6fba6e3..4de3924 100644 --- a/viya/mv_getaccesstoken.sas +++ b/viya/mv_getaccesstoken.sas @@ -29,4 +29,4 @@ ,refresh_token_var=&refresh_token_var ) -%mend; \ No newline at end of file +%mend mv_getaccesstoken; \ No newline at end of file diff --git a/viya/mv_getapptoken.sas b/viya/mv_getapptoken.sas index 96a8d54..f7c9b75 100644 --- a/viya/mv_getapptoken.sas +++ b/viya/mv_getapptoken.sas @@ -20,4 +20,4 @@ ,grant_type=&grant_type ) -%mend; \ No newline at end of file +%mend mv_getapptoken; \ No newline at end of file diff --git a/viya/mv_getclients.sas b/viya/mv_getclients.sas index 1b31298..b7a390f 100644 --- a/viya/mv_getclients.sas +++ b/viya/mv_getclients.sas @@ -98,4 +98,4 @@ run; filename &fname1 clear; libname &libref1 clear; */ -%mend; \ No newline at end of file +%mend mv_getclients; \ No newline at end of file diff --git a/viya/mv_getgroupmembers.sas b/viya/mv_getgroupmembers.sas index 302319e..4d9bf9c 100644 --- a/viya/mv_getgroupmembers.sas +++ b/viya/mv_getgroupmembers.sas @@ -103,4 +103,4 @@ run; /* clear refs */ filename &fname1 clear; -%mend; \ No newline at end of file +%mend mv_getgroupmembers; \ No newline at end of file diff --git a/viya/mv_getgroups.sas b/viya/mv_getgroups.sas index 03ef87a..8a46775 100644 --- a/viya/mv_getgroups.sas +++ b/viya/mv_getgroups.sas @@ -83,4 +83,4 @@ run; filename &fname1 clear; libname &libref1 clear; -%mend; \ No newline at end of file +%mend mv_getgroups; \ No newline at end of file diff --git a/viya/mv_getjobstate.sas b/viya/mv_getjobstate.sas index 77ccb35..2409372 100644 --- a/viya/mv_getjobstate.sas +++ b/viya/mv_getjobstate.sas @@ -166,4 +166,4 @@ run; filename &fname0 clear; -%mend; +%mend mv_getjobstate; diff --git a/viya/mv_getrefreshtoken.sas b/viya/mv_getrefreshtoken.sas index 82ecf39..5ad73d5 100644 --- a/viya/mv_getrefreshtoken.sas +++ b/viya/mv_getrefreshtoken.sas @@ -30,4 +30,4 @@ ,refresh_token_var=&refresh_token_var ) -%mend; \ No newline at end of file +%mend mv_getrefreshtoken; \ No newline at end of file diff --git a/viya/mv_getusergroups.sas b/viya/mv_getusergroups.sas index 72a4d21..33632a1 100644 --- a/viya/mv_getusergroups.sas +++ b/viya/mv_getusergroups.sas @@ -89,4 +89,4 @@ run; filename &fname1 clear; libname &libref1 clear; -%mend; \ No newline at end of file +%mend mv_getusergroups; \ No newline at end of file diff --git a/viya/mv_getusers.sas b/viya/mv_getusers.sas index 935df83..4213772 100644 --- a/viya/mv_getusers.sas +++ b/viya/mv_getusers.sas @@ -113,4 +113,4 @@ run; filename &fname1 clear; libname &libref1 clear; -%mend; \ No newline at end of file +%mend mv_getusers; \ No newline at end of file diff --git a/viya/mv_tokenauth.sas b/viya/mv_tokenauth.sas index 47c2d58..0a194c4 100644 --- a/viya/mv_tokenauth.sas +++ b/viya/mv_tokenauth.sas @@ -145,4 +145,4 @@ libname &libref clear; filename &fref1 clear; filename &fref2 clear; -%mend; \ No newline at end of file +%mend mv_tokenauth; \ No newline at end of file diff --git a/viya/mv_tokenrefresh.sas b/viya/mv_tokenrefresh.sas index 24977b7..14d9492 100644 --- a/viya/mv_tokenrefresh.sas +++ b/viya/mv_tokenrefresh.sas @@ -130,4 +130,4 @@ run; libname &libref clear; filename &fref1 clear; -%mend; \ No newline at end of file +%mend mv_tokenrefresh; \ No newline at end of file