The TAA Productivity Tools are updated periodically for new tools, enhancements, and fixes. New versions are shipped a few times per year.
This document combines the most recent refresh notes that were previously in separate documents for new tools, enhanced tools, fixes, and incompatibilities. The document is organized by refresh with the most recent refresh listed first.
The complete set of release notes can be found on http://taatool.com.
Refresh 68 (April 15, 2018) is the last refresh for IBM i 7.1. Fixes to 7.1 tools will continue to be made on an “as needed” basis until April 15, 2020.
The Generate Random Password 2 command generates a random password according to the system password rules which are set. This tool is available only on IBM i 7.2 and later.
Retrieves the output queue of a job resolving any special values.
Convert Job was enhanced to add two new character timestamp fields for job start and end times. These are blank if they don’t apply. This affects the model outfile. Outfiles from previous versions of the tool will need to be deleted. The tool will re-create these on first use.
DSPDTAQ, DSPDTAQD, and RTVDTAQ
These tools have been enhanced to support data queues up to 99,999,999 entries in length.
The Initialize Password command(s) set a user profile to a new password. A new INZPWD3 password has been added in IBM i 7.2 and later. The password generated using INZPWD3 will comply with the system values.
A new parameter, IGNMAPERR, was added to the SCNDBF command to ignore data mapping errors when scanning. The default is *NO.
The Capture System Information command was fixed to correctly skip /QSYS.LIB entries when capturing information on all IFS entries.
Clear Message Queue 2 was not correctly marking message queues that contained messages that could not be deleted. This condition was rare. Those queues are now marked appropriately.
The Compare System Information for IFS command was fixed so that the temporary files that are used in the will not require extension by the system operator.
When doing a
CPYGENSRC FROMFILE(LIB1/*ALL) TOFILE(LIB2/*FROMFILE) the members that were selected for copy all ended up in the first file selected instead of the matching file name in the second library. This has been corrected.
There were cases where CVTJRNA could issue an array bounds check if there were a large number of files being journaled to this journal. This has been fixed.
Under rare circumstances on 7.3 the CVTLIBDBF tool would fail on a CPYF command insisting that the FMTOPT(MAP DROP) had to be coded. We added that keyword which fixes the issue. CVTLIBDBF is used by RGZLIB and the problem initially appeared in that context.
Convert Work Active would always include jobs with a blank status even if a desired set of active job status values was specified. Jobs with a blank active status are in a short-lived transition state and should not have been included. They will now only be included if STATUS(*ALL) is specified.
OUTPUT(*PRINT) would end with an MCH1210 when 9999 data queue entries had been printed. It now supports all the entries that can be retrieved with one call to the system API.
The Find Source Text command would occasionally miss one of the members whose descriptive text matched the pattern given on the command. This has been fixed.
The MSGCTL tool was found to incorrectly log and forward messages that matched a generic message ID found in the MSGCTLP file. This has been fixed.
The command can return a list of jobs if a specific job is not specified. The command and documentation were updated to ensure this was properly filtered by the CURUSER keyword.
The Submit Job Scheduling Entry submits a job based on the parameters in a job scheduling entry. One of these is the job description which was not found in some circumstances. This has been fixed.
The Scan IFS command was fixed to prevent looping on very large files.
The Work with IP Devices tool can be used to show remote printer queues as well as printer devices. This was showing SNA defined remote queues and showing the remote queue name instead of the host IP name of remote queues. It now shows only IP defined remote queues and gives the first 15 characters of the host name in the IP address field if the queue is defined with that instead of an IP address.
The Work Subsystem Description 2 command was incorrectly adding quotes to the compare value *ANY on the Routing Entries screen. This has been fixed.
The Work with System Information command now correctly removes the IFS entry information when removing a capture. This also fixes some interaction anomalies that may have occurred when removing a capture.
Display Function Usage 2 is a new tool which generates a Function Usage Report. This report displays the list of function identifiers, along with associated usage information for each entry.
The End Subsystem 3 command will quiesce a system, but not take the system completely to restricted state. All subsystems will be ended, except QCMN, QHTTPSVR, QSERVER, QSPL, QSYSWRK, QUSRWRK, TAAUPSMON, the controlling subsystem, and those specified in the OMIT parameter.
Work With Activation Groups is a new tool which provides a work display for all activation groups owned by the current job. An option to display attributes is available, as well as a reclaim option to free system resources.
The Compare Library 2 command was enhanced by adding a CMPMBR keyword that can be used to suppress the member compare. This allows a shorter report to be produced.
The Copy User Profile 2 command was enhanced to include two new parameters that assist in using the command in batch mode. The PWDEXP parameter was added to allow a *RANDOM password be active rather than the default of expired. The CHGOWN keyword was added to allow the new profile to be owned by its creator rather than the default of QSECOFR.
The Run I/O tool was enhanced to allow the output file to be located on an iASP and to provide more flexibility with the test record length. A limit was added to control the amount of disk storage consumed by the output file.
The Save System in Batch command has been updated to include a new CHKSAVDEV parameter that allows you to skip the tape device check. This may be necessary if you are using BRMS.
The Change Object Authority command was receiving a “spooled file not found error”" for its report when running inside a server job. It now correctly releases the spooled file if it is owned by a QPRTJOB.
Compare Command List compares ‘select’ and ‘omit’ lists to ensure uniqueness from each other. Fix added to handle *ALLUSR value passed from DLTUNULIB command.
The Display Virtual Tape command of the Create Virtual Tape tool would get an exception if there were no image catalogs on the system. This was a rare, but possible, occurence. This exception is now monitored.
The Convert IFS command would sometimes fail when given a symbolic link at which to start. This has been fixed.
The Convert Journal Attributes command was ignoring the MBROPT(*ADD) option for the JRNRCVP file. This has been fixed.
The Convert System Values command was not treating QALWUSRDMN values as a special “list type” value. It is now treated as such and converted appropriately.
Delete old QRPLOBJ objects would receive an MCH1210 (size error) when removing too many objects from QRPLOBJ library. The field size was increased to prevent this.
Delete Old Spooled Files is designed to allow clean up of old spool files by selection criteria. Found and fixed two extremely rare problems. Fixed to delete spool files of jobs with duplicate names due to job number wrapping. Fixed to prevent a MCH0603 when large numbers of excluded jobs were specified several times in a job.
Queue entries that were longer than 9000 bytes could cause a subscript range error when OUTPUT(*PRINT) was specified. The limit was increased to 10,000 bytes and 1,000,000 entries. The subscripting error has been fixed.
There was a bug in which the OWNER keyword used for selecting entries might be ignored under some circumstances. This has been fixed.
Display Where Used shows which programs use, display, or call which files. Certain object types were being skipped. This has been fixed.
The Print Big Object tool assists in determining the large size objects on your system. The correct ASP number was not always shown on the report. This has been fixed.
Print Spool Store is part of the Spool Store tool, which lets you capture spooled files and retain them online. An exception occurred when *DEV set as the job outq. This has been fixed.
Save and Restore ASP allows a library to be saved and restored from one ASP to another. Fix added to prevent error message to incorrectly be issued when parameter RSTASP set to *SAVASP.
WRKSPLF2 and WRKSPLF3
It is now possible to release a spooled file that was in saved state in addition to held state.
The Retrieve QATT File Description (RTVQATTD) command returns the values needed to create a QATT source file. These are the name, record length, and descriptive text of the file.
The Vary Virtual Display command varies a virtual display or displays off or on, whichever is requested.
The Change TAA Key command allows the information in the TAALICENSE data area to be changed. CHKTAAKEY was enhanced to include additional fields and the ability to submit in batch.
Added CPF4168 to the list of messages reported.
The Check Tape 2 command is similar to the CHKTAP system command, with the additional function of sending an inquiry message to the device’s message queue and allows the user a Cancel or Retry response. Additional information has been added to the reply message, indicating which tape volume is currently mounted.
The Copy Spooled File to IFS command copies a spooled file to the IFS as a stream file. Added support for AFPDS type spooled files.
The CPYTAA tool has been enhanced with two new keywords: CRTSRCF and ESCAPE. The intent is to be able to reliably pull include members from the archive during the building of a tool. This is part of our effort to bring service programs into the tools. Includes will be used to provide prototypes for TAATOOL APIs.
The Create TAA Tool command has a new INCLIB parameter that accepts up to three libraries in which to search for includes. This is part of our effort to bring service programs into the tools. Includes will be used to provide prototypes for TAATOOL APIs.
End TAA License ends the license to the TAA Productivity Tools by placing an expiration date in the TAALICENSE data area on a particular machine. ENDTAALIC was changed to show the machine serial number, so the user can determine which machine the license was ended on.
The Print Source Summary command is similar to DSPFD with MBRLIST option, but offers better formatting and several important options. Change was made to include new QATT* source files.
Scan All Source 2 command will scan for up to 20 arguments in all souce files in one or more libraries. Additional file member attributes retrieved and outfile support added.
SCNSRC, SCNALLSRC, SCNALLSRC2
The member change date and member descriptive text were added to the outfile. The model file is TAASRCFP and results in the outfile SRCSRCP. The record format level identifier has changed as a result.
The Add Job Schedule 2 command adds one or more job schedule entries from the JOBSCDP file created by the CVTJOBSCDE TAA Tool to the system job scheduling function. A fix was added to handle descriptions that include apostrophes.
The CHKSAVRST command checks a job log that uses save/restore commands and prints a listing with the completion messages and any error diagnostics. Message handling was added for CPF4168.
The Check TAA Authorization Lists command checks to ensure that all TAA Authorization Lists are set to PUBLIC EXCLUDE. Completion messaging was changed to be more accurate.
The Copy From CSV 2 command (CPYFRMCSV2) of the CPYFRMCSV tool was maxing out at 13000 records in its temporary work file. This has been changed to *NOMAX.
The Copy Job Schedule Entry command would complain about an invalid date when copying entries that had *MONTHSTR as the scheduling date. This has been fixed.
Copy Spooled File to IFS copies a spooled file to the IFS as a stream file. Documentation was added stating that overprinting is not supported and will cause duplicate data to appear.
The Convert IFS command converts directory entry attribute information from the IFS and outputs the information to the IFSDIRP data base file. An IBM i discrepancy in reporting authorization errors for distributed directories caused a loop when such an error was encountered. This manifested itself when processing directories in QNTC. A workaround was added for these *DDIR types.
CVTMSGQ2 Convert message queue 2 can convert a large number of messages found in an external message queue to an outfile. Problem was fixed where messages with blank message ids (such as inquiry messages) were being removed incorrectly.
The Convert Program Attributes command creates a data base file with one record per program. New ACTGRP parameter was added to retrieve activation group information.
There was a possibility that on very active systems CVTQHST could produce an intermediate QPDSPLOG spooled file that hit its MAXRCDS limit. This has been fixed.
The Convert System Values command converts the spooled file output from WRKSYSVAL to the SYSVALP file. A fix was added to correct how long values are returned.
The Display Active Jobs 2 command provides a display similar to WRKACTJOB except that the user can only perform the Display action, and jobs are sorted by CPU%. Fixed subscript out of bounds problem when system had a very high number of jobs.
The Display Authorization List Objects 2 command expands DSPAUTLOBJ functionality by 1) including IFS and DLS objects and 2) allowing a generic name or all authorization lists. A fix was made to correctly display lists with over 7500 entries.
The Display Data Queue tool displays or prints the entries of a data queue and the data queue attributes. DSPDTAQ was fixed so it will now correctly return up to 500,000 entries without throwing an exception.
The Display IFS command provides a display or listing of IFS objects. Documentation was corrected to state that directories are always included in the listing.
The Display Object command provides various DSPxxx commands for most object types. Removed ALL and ALLUSR options from the OBJTYPE parameter on the command.
The Display Object Auditing command displays all audited objects in a list of libraries or all libraries. The tool was fixed to give an informational message if a single empty library is specified.
The End Job With Locks command ends jobs with locks on a specific object. A fix was added to correct the command name in the documentation.
The Move All Objects command moves one or more objects from one library to another. SQLPKG support was removed from the command, as SQL packages must remain in the library they are created in.
The Print Device Config command prints a copy of the device configuration objects and copies the contents to a source member in a source file. Code was changed to delete the DSPOBJP file before using it.
The Retrieve Relative Month command failed if it was “backing into” December from a later month. This has been fixed.
The Save Library to Save Files command saves one or more libraries to save files in a specified library. Command was fixed to handle library lists longer than 256 characters.
The spooled file created by SCNGENSRC was named after the first member processed for each candidate source file. It is now correctly named after the source file itself. The USRDTA of the spool file is now correctly specified as SCNGENSRC rather than SCNSRC. The number of members scanned is now correct.
A minor fix was made to correct the number of members scanned when used by SCNGENSRC.
The RCVDTAQ command of the SNDDTAQ tool might receive a MCH0603 (a subscript or character string length violation) if the MAXLEN of the queue was over 5000 and the entry being received was over 5000 in length. This has been fixed.
The Demo Subfile 7 tool provides a demonstration of using a subfile for the display of an API call. Customers can take advantage of the full source provided to create similar subfile based applications.
The Demo UIM tool provides a demonstration of using UIM for the display of an API call. Customers can take advantage of the full source provided to create their own uses for UIM-based applications.
The Display Active Jobs 2 command provides a display similar to the system WRKACTJOB command except that the user can only perform the Display action against the jobs, and jobs are sorted by CPU %. System and subsystem jobs are excluded.
The End Jobs With Object Locks command ends all batch and interactive jobs holding locks on a specified object.
The Retrieve Relative Month command will calculate and return three data values based on the date specified in the DATE parameter, offset by the number of months in the RELMTH parameter.
The Create TAA Source Files tool was updated to include new source files. The new source files are QATTC, QATTHTML, QATTUIM, QATTSRV, and QATTSQL.
An ESCAPE keyword was added to the command. This is a *YES/*NO value. The default is *NO. If *YES a CPF9898 escape message is sent if the number of spooled files initially determined to be in the queue does not match the number of records written. This can happen if the queue is volatile.
The Retrieve QATT Files tool was updated to include the new QATT source files as part of our ILE direction. The new source files being reported are QATTC, QATTHTML, QATTUIM, QATTSRV, and QATTSQL. This enhancement affects both the RTVQATTF and PRTQATTF commands.
SBMFTPCMD & FTP2
The Submit FTP Command command uses FTP2 to submit a simgle command to run on another System i that is connected via FTP. OTHERCMDS2 parameter was added to support FTP commands longer than 255 characters.
The Clear Output Queue 3 command clears selected spooled file from an output queue. Fixed a problem where USRDTA was being cleared, even when a specific value for the USRDTA parameter was specified.
The Copy TAA DDS command is primarily an internal tool used by CRTxxx commands such as CRTSRCCTL. It allows CRTTAATOOL to occur regardless of whether a full or demo license exists. Change made to remove the dependency on the user needing to be authorized to TAASRCACC list in order to retrieve encrypted DDS files. This allows more tools to run in demo mode.
The Convert Job Locks command converts the locks for a specific job to an outfile. Dynamic allocation problem fixed to prevent null pointer exceptions that were occurring. in the operating system.
The Convert Message Queue 2 command converts the messages found in an external message queue (such as QSYSOPR) to an outfile. Fixed problem caused by exceptions from QGYCLST API call.
The Convert Output Queue command creates a data base file OUTQP with one record per spooled file. Fixed to retry API call when API would return partial list of OUTQs.
The Convert Record Lock 2 command builds an outfile of the record locks held by a job. Fixed error when job was not found.
The Display Data Base Damage command checks for damage in the data base file descriptive information. Message text changed when no objects found.
The Print Library Analysis command reports on how many objeccts exist in a library or in a total system. Fix added to correctly handle named ASPs.
The Print Page Of command allows you to re-print a spooled file where you have printed ‘Page n’ and change the value to ‘Page n of n’. Fix added to handle large ‘skip to line’ values.
The Reclaim Stroage 2 tool provides better documentation of the results of RCLSTG and keeps the history where it may be conveniently displayed. Fixed problem causing elapsed hours to display incorrectly.
Th Reorganize Library command reorganizes all physical files in a library or all user libraries. Fixes added to deallocate exclusive locks on failure, and handle locks on members with all three allowed values: EXCL, EXCLRD, or SHRUPD.
The Retrieve IFS Entry Authority command returns the current user’s authority to an IFS object. Fix added to handle user profiles with no group profile.
The Scan All Job Logs command will scan all or selected job logs for various criteria. Fixed issue when job spool files exceeded 9999 in number.
The Scan Source command scans source files for a matching character string or strings. Extraneous informational messages are now removed from the job log.
The Print Source Summary command was updated to report the new source files for the *QATT value. Old files no longer in use were dropped.
The Work Database File Unit tool allows you to inspect and set the preferred storage unit for files on your system.
ANZOUTQ provides summary information for various attributes of spooled files in an output queue. ANZOUTQ previously supported 999 unique attribute values for each attribute category. Enhancement was made to now support 9998 unique values for each attribute. This allows outqs with very large numbers of spool files to process correctly.
CHGJOBD2 allows a change to one or more JOBD object types. An Initial ASP group parameter was added.
AUDLOG is a series of commands that let you work with QUAUDJRN entries. Fixed a problem where MCH0601 erros occurred after a small number of records were read. This issue was found using the PRTAUDLOG command. Also fixed a problem where duplicate entries were written when no new audit log entries were found. This issue was found using the CVTAUDLOG command.
The Change User Profile 3 command is a front end to the CHGUSRPRF command that allows a list of up to 300 user profile names or generic names to be changed. Corrected the code so it will now allow the values of SAME, SYSVAL, NONE, and ASSIST for the ATNPGM parameter.
CHKINACT2 tool is a series of commands that allow the ending or disconnecting of jobs that have been inactive for a specified period of time. Removed confusing informational message from job log.
The Copy Program Message Queue Message command copies one or more messages from the current job’s program message queue to an external message queue. Fixed a problem where CPYPGMQM failed when the MSGQ contained impromptu messages.
CVTJRNA outputs the information that is found with WRKJRNA to three separate data base files. Fixed code to handle exception when a file is in use.
CVTMSGQ2 allows a very large number of messages found in an external message queue to be converted to an outfile. Code was changed to correctly handle an empty message queue.
CVTQHST converts one or more QHST files to a normal data base file. Code was fixed to handle file size of *NOMAX.
CVTSYSSTS creates a data base file SYSSTSP with one record per main storage pool. Fixed report so all digits of the unprotected storage fields will display correctly.
DLTUNULIB deletes libraries with no objects, libraries whose objects have never been used, or objects within libraries which have not been used for specified number of days. Fixed logic error which caused objects in libraries to be deleted which were outside the specified date range.
DSPALLSAVF displays or prints a listing of one, generic, or all save files in one or more libraries. Changed file size limit to *NOMAX so DSPOBJD will not give exception on files over 190000 records.
DSPDLTSPC displays the amount of deleted record space that exists in one of more libraries. Code was correctly check libraries found in named ASPs, not just the base ASPs.
DSPQHSTSIZ provides a simple listing of the QHST files in QSYS, allowing a review of the QHST versions. Fixed a problem where the 1st message and last message times were duplicated in the outfile.
DSPASAVSUM displays or lists a summary from one or more libraries where objects are saved to. Corrected the all object authority check whick occurred when certain library parameter options were chosen.
FTP2 allows the use of FTP without entering the FTP subcommands. Fixed tool to correctly send TAA9897 exception when an FTP error is encountered.
The Lock Wait tool provides commands to check for jobs in a LCKW status as seen with WRKACTJOB. Added additional message monitors to catch exceptions when jobs had ended, causing LOCKWAIT to terminate unexpectedly.
The Receive Message Key command receives a message from the job log. It is meant to be used with RTVMSGKEY to process low level messages in the job log. Fixed problem where RCVMSGKEY returned incorrect results when called repeatedly with different options.
RTVJOBA2 allows retrieval of attributes for any job, supporting more parameters than RTVJOBA. Fixed an problem where the active job status was not always retrieved correctly. As a result the LOCKWAIT tool failed in some cases.
SCNALLSRC provides a simple method of scanning all or some source files in a library. Fixed problem where special characters were not handled correctly.
WRKIFS is designed for those users who are trying to clean up the IFS. User is now given a message when trying to roll past the 9,999th record, which is the maximum WRKIFS can display.
ZIP and UNZIP perform standard PC zip and unzip functions for compressing/ decompressing data in the IFS. Fix added to correctly handle multiple files.
Commands that refer to previous releases (7.3 only)
All save commands, most compile commands, and commands that use *PRV compiler support have had their TGTRLS parameters updated for 7.3. While technically incompatible with previous release this is consistent with 7.3 system changes. The following commands have been affected: CHKTGTRLS, CMPOUTFILE, CRTBNDCL2, CRTBNDRPG2, CRTSFLPGM, CRTSFLPGM2, CRTTGTRLS, RPLGENPGM, RPLOBJ, RPLMOD, RPLPGM, RPLSFLPGM, SAVALLACT, SAVCHGACT, SAVJRNACT, SAVLIBIFS, SAVOBJIFS, SAVEONELIB, SAVOWNOBJ, SAVRCVL, SAVSNDL, SAVSNDM, SAVSRCF, SBMSAVRCVL, SBMSAVSNDL, SNDOBJMAIL.
The Print Profile Users command lists profiles with *ALLOBJ authority, along with profiles that have *USR authority or greater to that profile. The report is generated into a spool file, PRTPRFUSR.
This command creates an externally described file that contains the standard journaling fields. Support was added for PF38 files.
The FMTOPT tool provides a way to test options or command keys which require several lines in a subfile application. Support was added for 27 * 132 screen size.
The GENRANPWD tool generates a random password, per selected specifications. A new parameter, ALWUPR, was added.
QRYF simplifies the use of OPNQRYF. *UPD option added for type of open to use.
This command retrieves the information from a physical file object and writes a DDS source member. Support was added for PF38 files.
CAPSYSINF captures all object, member, and IFS object information on the system. Fixed an exception which occurred when no files found in a library.
CMPDTAARA compares the contents of two data areas. Fixed a problem with very small data areas.
CRTTSTJRN is designed for writing test cases involving journaling. Files already being journaled will now be bypassed instead of the command ending.
The CRTVTP tool provides a simple interface for creating, displaying, and deleting a virtual tape structure. Fixed a problem where image catalog entries were exceeding the maximum size.
The CVTFD command is similar to the system DSPFD command, but only creates an outfile. Fixed a problem with an empty library generating an exception. Reported as issue with CAPSYSINF.
CVTIFS converts directory entry attribute information from the IFS and outputs the information to a data base file. When file errors are detected on the convert, the files are skipped instead of ending the command.
CVTJOB converts the information for one or more jobs to an outfile. Fixed a problem where the current user field was not populated correctly.
The CVTJOBFNC checks for an active job with a specific function type-description as seen on WRKACTJOB. Fixed a problem where the job list was not being parsed correctly.
CVTJOBLOG converts a job log to an outfile. Fixed a problem where *LIBL not accepted as specified library. Also fixed a 7.2 problem where first character of system name was truncated.
CVTMSGQ2 converts messages found in an external message queue to an outfile. The command has been fixed to correctly retrieve the message queue name. Also fixed the opening and closing of message file and added better exception handling.
CVTOBJLCK converts the locks for an object to a data base file. Fixed problem where OBJLCKP file was not being placed in specified library.
CVTSYSSTS converts output from WRKSYSSTS to a data base file with one record per pool. CPU usage greater than 100% will now display accurately up to 999%.
CVTSYSVAL converts the spooled file output from WRKSYSVAL to a physical file. Fix was added for a *DATE member name not being accepted.
DLTDBFDAT deletes data base file records based on a field value and a specified date comparison. Fixed a decimal data error.
The DSPASPSTS2 command provides an interactive display of the disk units by ASP. Fixed an array indexing error.
DSPOBJD2 provides a different interface to the DSPOBJD command. Fixed a problem retrieving large lists containing greater than 2000 objects.
DSPSBMJOB displays a list similar to WRKSBMJOB, but the user cannot perform actions against the jobs. Maximum number of jobs retrieved changed from 2000 to 9999.
The Job Accounting tool is a series of commands that lets you work with the job accounting entries from the QACGJRN journal. Problems fixed involved partial receivers leaving gaps in the sequence numbers of the journal, and incorrect descriptions being captured.
RCVDTAQ is a front end to the system QSNDDTAQ command. Fixed a problem with messages being left in the job log.
The Retrieve Object List command provides a large return variable for a list of objects. The command has been fixed to correctly retrieve large lists of over 90 objects. The problem was originally reported as an issue with the CRTUSRPRF3 command, which uses RTVOBJLST.
RTVPFSRC retrieves the information from an existing physical file object and writes a DDS source member. Fixed a problem where CRTDBFJRN (which uses RTVPFSRC) gave an exception when *CURDATE was specified as date selection criteria.
SCNIFS scans one or more stream files for an argument. Fixed a problem with files being left open resulting in an exception.
SNDIFSMAIL sends a note and an IFS attachment to one or more recipients. Fixed an invalid character error when quotes were not handled correctly.
SNDTXTMAIL sends a text message to one or more recipients. Fixed a problem when sending message to group distribution list.
DSPSYSHST is part of the System History tool, providing a simple method of capturing and displaying important system information. Fixed multiple problems with field lengths.