About CheckLog‎ > ‎Documentation‎ > ‎


Updates to the CheckLog macro are posted on the Updates page, which are used to generate the content of the update email. Feel free to subscribe to updates for automatic notification when a new version is available.
Showing 85 items
September 28, 2017 CAS Added a new phrase regarding conversion based on user feedback. Thanks Benoit! 
May 12, 2016 CAS Added a process to add email headers when using commands for the EMAILSYS option in Unix-like environments. Tested with 'mail' and 'sendmail' commands. 
April 11, 2016 CAS Removed a blank argument causing issues with SYSFUNC. 
August 19, 2015 CAS Checked whether data set exists before printing. 
August 6, 2015 CAS Added a combined data set with all log issues during log review (directory). 
August 5, 2015 CAS Added trim when outputting log for multiple logs. 
August 5, 2015 CAS Added check to verify log copy. 
July 10, 2014 CAS Added LOGDEF= option to specify default log argument in PROC PRINTTO, defautled to "log". 
July 9, 2014 CAS Varied DM command based on OS. 
July 9, 2014 CAS Added reference to DIRDLM instead of hard-coded slash. 
July 8, 2014 CAS Added PRINT=Y/N argument to print log to output window. 
July 8, 2014 CAS Moved some pieces of code from general execution to Windows-only execution. 
May 17, 2012 CAS Added check for a note regarding values outside of a graph axis range. 
April 5, 2012 CAS Minor edits including adding labels to the output data sets, adding some documentation, and moving some local variable declarations. Removed the deletion of the Log_summary data set. 
March 30, 2012 CAS Added an exclusion for the (w)arning received when opening multiple SAS sessions without locking the user profile. 
March 28, 2012 CAS Converted DM POSTMESSAGE statements to use the MessageBox API for Windows users. This should help use the CheckLog macro in Enterprise Guide. 
March 22, 2012 CAS Removed the COUNTW internal macro program, since it appears that SAS 9.1 did have the COUNTW function, so it is not necessary. 
March 20, 2012 CAS Fixed issues with long filenames by outputting the master without PROC PRINTTO. Additionally, incorporated the DirList macro to add subdirectories. 
February 24, 2012 CAS Set SHADOW=Y by default. This should result in better processing at all times and not interfere when it really is not necessary. 
November 23, 2011 CAS Modified behavior during directory mode to ignore blank files. This allows the search to continue with other files. 
October 19, 2011 CAS Moved the code to drop pre-existing tables again due to macro variable issues. This code appears to be difficult to find a place for. 
October 7, 2011 CAS Modified section that checks what type of log is specified to work with shadow mode (copying the file first). 
September 9, 2011 CAS Added a new argument, SHADOW=, which forces CheckLog to make a copy of the log before importing it. This helps when another instance of SAS is still generating the log, and it would cause problems to directly import it. 
September 9, 2011 CAS Added "else" to if/then section for processing messages. This should help speed up really big logs. 
September 1, 2011 CAS Moved section that drops tables to the first section in order to avoid confusion when tables already exist. Also revised RELOG section to only execute when the LOG data set exists. 
September 1, 2011 CAS Added another value for the RELOG argument: E - to overwrite the log with the imported log only when issues occur. 
August 15, 2011 CAS Set the log exclusion messages to upper case. 
August 9, 2011 CAS Added exclusion for (e)rorrs= option and for (e)rror and (w)arning options in PROC COMPARE. 
August 8, 2011 CAS Corrected operating system macro variable reference. 
July 20, 2011 CAS Upgraded the macro to version 3. (Note: Version 2 was when I added email capabilities and some other features.) 
July 19, 2011 CAS Added format for filename to avoid truncation. 
July 18, 2011 CAS Removed delimiters on the import in favor of simpler code. 
July 15, 2011 CAS Changed the way issues are handled after importing a log to output more specific issue messages. 
July 15, 2011 CAS Excluded SYMBOLGEN messages from the checks. 
July 15, 2011 CAS Removed the upper-case function on the LogText variable and instead applied the function during comparison. The result is that the log looks like the original. 
July 15, 2011 CAS Added checks for valid output names during directory mode. 
July 14, 2011 CAS Added a step to identify the type of log argument specified (blank, log, directory). 
July 14, 2011 CAS Removed the PIPE method of accessing the directory in favor of native SAS code. 
July 14, 2011 CAS Replaced SAS_EXECFILEPATH with LOG option during batch mode to identify the location of the log. 
July 14, 2011 CAS Added the DIRDLM variable to switch the directory delimiter in other operating systems. 
June 29, 2011 CAS Added new argument to add the directory and extension to then output when checking a directory of logs, with the default set to No. Set DIREXT=Y to add the directory and extension to the LOGS_W_ISSUES data set. 
June 29, 2011 CAS Revised how test and summary mode are handled in the macro logic in the section where the various output data stes are created. 
May 17, 2011 CAS Added a new output macro variable called ISSUES, which contains the number of issues detected in the log, 1 when an issue occurs with using the macro (e.g., (i)nvalid argument), or 0 when there are no issues. This can help when writing dynamic code to continue or end depending on whether issues are detected. Updated the documentation above, using '%if &ISSUES>0 %then %return;' instead for aborting macro programs. 
May 16, 2011 CAS Added excluded phrase regarding SAS license expiration. This has nothing to do with the successful functioning of the code. 
May 16, 2011 CAS Added issue regarding the meaning of and identifier after quoted text. See Samples section of sas.cswenson.com for an example. 
May 16, 2011 CAS Added exclusion for EXT= option when outputting the line regarding replicating the CheckLog macro in the output email. 
May 16, 2011 CAS Added exclusion for batch job message, which can be misleading, especially if a user uses the - after the issue word to hide if from being output in the log. 
May 12, 2011 CAS Changed the categories of some of the issue statements and updated documentation above. 
April 25, 2011 CAS Recalled that COUNTW is not available in SAS 9.1.3, so I created a sub-macro of the same name to use to dynamically choose the COUNTW function or a sub-process that does the same thing. 
April 25, 2011 CAS Added additional information to the output email in case the user needs to re-run the CheckLog macro in SAS. 
April 15, 2011 CAS Added new argument for the extension to search for when searching a directory for logs, defaulted to LOG. 
December 30, 2010 CAS Added a feature to play a sound to communicate results. 
November 15, 2010 CAS Added an option to exclude phrases from a data set containing multiple phrases (e.g., from a previous check). 
November 15, 2010 CAS Reduced the number of macro variables by using the COUNTW function instead of an iterative macro loop and by by making most iteration variable the same variable. 
November 15, 2010 CAS Added section numbers for easier reading and revision. 
October 27, 2010 CAS Masked the delimiters using the STR function. 
October 25, 2010 CAS Replaced the delimiter for the import of the SAS log to use an even more unlikely delimiter, only for version 9.2. Added case statement issue regarding the missing ELSE clause. 
October 18, 2010 CAS Updated the name of the copied log during batch mode, which should provide more information about the program that was reviewed, especially when using the email function. I also updated the foolishly included (e)rror and (w)arning text from the references above. 
October 13, 2010 CAS Tweaked the options turned off: dropped MFILE since it is useless without MPRINT, added NOMACROGEN, since it can still be used to resolve macro variables. 
October 1, 2010 CAS Tested the CheckLog macro in batch mode, and discovered some issues. Revised how the log is output during batch mode and included some other checks for the macro when no log is specified. 
September 14, 2010 CAS Added messages regarding INPUT issues, including "LOST CA-RD" and "NEW LINE". Changed the truncation FOUND value to match the above INPUT types. 
September 7, 2010 CAS Added email reporting capability. Added step to clean up file references. Added default for outobs macro variable in order to correctly identify issues with running this macro. 
September 3, 2010 CAS Revised initial log variable for current log. 
September 1, 2010 CAS Added exclusion for the macro compilation note, which unfortunately includes the word (e)rror. 
August 6, 2010 CAS Modified the order of the log output so the last table created is the final output. This maintains that the system macro variable SYSLAST will be the final output (by default, Log_Issues or Logs_w_Issues). 
August 6, 2010 CAS Added a new argument: keyword. See more details in the documentation. 
August 6, 2010 CAS Updated the output to add the Ignore and Found variables to the Log dataset. 
August 4, 2010 CAS Removed spaces from log output name for multiple logs. Added message regarding merge with repeats of by statement. 
July 29, 2010 CAS Discovered that the abort option does not work the same in version 9.2, requiring a version-specific modification. It was also discovered that the glitch causing SAS to crash is also version-specific, and it is resolved in 9.2. 
July 21, 2010 CAS Changed final focus to log, since in SAS 9.2 it appears to jump around. 
June 21, 2010 CAS Removed concept of ignoring line following the issue. This could cause issues with back-to-back issues. 
June 7, 2010 CAS Revised logic to correctly check output dataset when following the PM argument. 
June 3, 2010 CAS Corrected a call symput that could generate a conversion issue. 
May 27, 2010 CAS Added issue phrase regarding Cartesian products in SQL. 
May 26, 2010 CAS Added documentation regarding the use of issue keywords in comments and put statements (above). 
May 21, 2010 CAS Added steps to check arguments to the CheckLog macro and output messages regarding correct usage. Additionally modified how the PM option works, setting the default to pop-up the message when (i)nvalid values of PM are used. 
May 19, 2010 CAS Added issue phrase regarding missing values. 
May 10, 2010 CAS Added new statements to identify as issues. Also added a new statement to ignore: _ISSUE1_=0. 
May 6, 2010 CAS Added another requirement to enter the single log check loop: A slash within the log name. This corrected an issue when (i)nvalid paths were specified that contained a dot (that is, just a filename), with no slash (no directory). Added more detail to some (e)rror messages. Added logs_w_issues to drop. 
May 3, 2010 CAS Added reference to initial log argument, instead of the last log checked. 
April 27, 2010 CAS Added a copy of the NOBS macro specifically for CheckLog. 
April 23, 2010 CAS Peer reviewed by Iryna (Deyneha) Feldman. 
April 21, 2010 CAS Added issue that occurs from proc import. Added additional steps to check for issues with log import. 
April 6, 2010 CAS Split phrases in order to avoid discovery from the macro. Added step to check for issues on log import. Removed DirList macro in favor of simpler code. 
April 1, 2010 CAS Added step to identify when an output table is open. 
Showing 85 items