TAA Tools
TAA Productivity Tools - Release Notes
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 https://taatool.com.

2026-10-15 (T104)

Refresh T104 (October 15, 2026) is for IBM i 7.3, 7.4, 7.5, and 7.6.

End of Service Statements

No further refreshes or fixes will be made for IBM i 7.2 or earlier
releases.

IBM's first extended support period for IBM i 7.3 ends on September
30, 2026. T104 is the last refresh that will be issued for 7.3. No
fixes or refreshes will be available for 7.3 after T104.

New Tools

- DLTIFS3

  The DLTIFS3 command allows deletion of one or more IFS objects in a
  directory and all its subdirectories based on selection criteria
  such as name, size, last changed date, and others.

  DLTIFS3 differs from the DLTIFS and DLTIFS2 in that it uses a
  recursive approach to find, analyze, and delete objects in the IFS.

  This is a powerful command and so comes with some restrictions on
  the types of objects involved.

Enhancements

- CHGLBLJOBD

  The Change Library List from Job Description command now has a
  completion message in the job log that includes the name of the job
  description used.

- CHKOBJDMG

  The Check Object Damage command has a new data compression keyword,
  DTACPR, that can take *ZLIB as a value. This causes the checked
  objects to be saved with ZLIB compression if your system supports
  that. This is useful if the library you are checking contains large
  files that would hit the limits of the SAVOBJ command.

- CVTDTAQ

  The Convert Data Queue command has been enhanced to allow for
  entries up to 10,000 bytes in length. This will generate an outfile
  based on the model file TAATOOL/TAADTQMP2 instead of TAADTQMP.
  TAADTQMP will continue to be used for data queues with entries up to
  5000 bytes in length.

- DLTIFS

  A new keyword was added to DLTIFS and DLTIFS2 that suppresses the
  escape message when no objects met the criteria. A completion
  message is issued instead.

- DSPFMT

  A wide screen option has been added to the Display Format tool. The
  wide screen shows the alias names and the column headings for the
  fields on the primary display screen.

- INZPWD3

  A new value of *SYSVAL was added for the PWDLEN parameter and made
  the default. New passwords created by INZPWD3 will be the minimum
  length allowed by the system values that control the password. Also
  a new keyword (OUTPUT) was added that can send the new password to
  the caller. This is used by the SECOFR2 menu.

- RTVDAT3

  Retrieve Date 3 has been enhanced to easily retrieve a day in the
  current month using *CURRENT. For example, you can now get quick
  access to the last Sunday or Friday of the current month.

- SECOFR2

  INZPWD3 was added as an optional replacement for the INZPWD2 command
  used by option 3 on the SECOFR2 menu. INZPWD3 will always create a
  password that respects the system rules, whereas INZPWD2 may create
  a simpler password. If *ALLCRTCHG is specified then INZPWD2 will
  also respect the password rules. See the documentation for INZPWD2
  and INZPWD3 commands in the INZPWD tool.

- SPLARC

  The WRKSPLARC command of the SPLARC tool can restore a spooled file
  from the archive, but if the archive was saved to tape and later
  moved to a save file WRKSPLARC could not restore it. This
  enhancement adds a prompt that let's users identify the proper save
  file.

- WRKJOB2

  Work with Jobs 2 has been enhanced to include a filter for the job
  submitter in addition to all the other new filters added in recent
  refreshes.

Fixes

- CHGOBJAUT

  CHGOBJAUT would sometimes get an error about attempting to open an
  already open printer file. It was changed to use the PRINT2 tool to
  avoid this.

- CHKSECADM

  The Check for Security Admin special authority command ran into an
  issue on 7.6 when the job user was one of the new non-changing
  profiles such as QUSER_NC. This was fixed.

- CLRMSGQ2

  The Clear Message Queue 2 command would sometimes fail if the number
  of messages exceeded a limit. A different API is now used that
  removes that limit.

- CLROUTQ3

  Clear Output Queue 3 would fail when there were too many files of
  the same name and job in a queue. This would typically happen with
  job logs. This was due to older version of the code that used four
  digit spooled file numbers. This has been fixed to use the six digit
  ones.

- CPYMSGQ

  Copy Message Queue would fail if all of the following were true.

  - A program message found in the queue was one with a message
    description found in a message file.
  - The sending program referenced the message file using the library
    list.
  - CPYMSGQ was issued from a job that did not have that message file
    in its library list. CPYMSGQ will now issue an escape message
    explaining the recovery procedure if this is the case.

- CVTENVVAR

  Convert Environment Variables was fixed to properly convert empty
  strings.

- DUPSPLF

  Duplicate Spooled File was not copying the user defined text
  attribute. This has been added to the tool.

- PRINT

  The PRINT2 command of the PRINT tool was changed to user open for
  the printer file. This was made in conjunction with the fix to
  CHGOBJAUT.

- WRKALLSPLF

  Work With All Spooled Files was not checking properly for *JOBCTL
  authority. That has been fixed.

Changes to output files

There are no changes to output file formats in this refresh. Work has
been confined to fixes and 7.6 support.

Incompatibilities

There are no known incompatibilities in this refresh. ## 2025-08-15
(T103)

Refresh T103 (August 15, 2025) is for IBM i 7.3, 7.4, 7.5, and 7.6.

No further refreshes or fixes will be made for IBM i 7.2 or earlier
releases.

HIPER news

The Retrieve Object List (RTVOBJLST) is a tool used by several other
tools. Recent IBM PTFs on V7R4 and V7R5 have some enhanced parameter
checking that exposed an issue in the tools usage of the QUSLOBJ API.
This shows up as a "Status value ? not valid" error in the job log. It
has been reported most often while using the DLTOLDSPLF tool. This was
fixed in T102 and T103 for all supported releases. There is also a
patch available for all releases.

See https://taatool.com/fixes/0003/readme.html for more information.

IBM i 7.6 Notes

This is the first refresh that contains support for IBM i 7.6.

New Tools

- CVTOWNOBJ

  The Convert Owned Objects tool is similar to the system DSPUSRPRF
  TYPE(*OBJOWN) with an outfile, but provides substantially more
  information.

Enhancements

- CHG128PWD

  There was an issue with the CHG128PWD tool used to replicate
  passwords between systems. This tool relies on the
  QIBM_QSY_VLD_PASSWRD exit point and installs a user-defined program
  to encrypt the new password for replication. This was running into a
  CCSID issue when a changed password was entered in the ACS login
  window. The tool was enhanced to handle the CCSID used by ACS.

- TRCDBG

  The STRTRCDBG command of the Trace Debug tool has been enhanced to
  allow for up to 99,999,999 statements to be traced.

- WRKJOB2

  The Work With Jobs 2 command has been enhanced to include more
  information such as completion time. There are now two views that
  you can toggle between using F11.

Fixes

- CAPPTFINF

  The CMPPTFINF command of the CAPPTFINF tool had a bug in its date
  handling in the FROMVER and TOVER keywords when specific dates were
  used rather than the defaults. This has been fixed in T103.

- PRINT

  An update to the PRINT tool in T102 inadvertently caused extra empty
  spooled files to be created. The PRINT tool is used by other tools
  and you may see these files as a result. This has been fixed in
  T103.

- RMVMSGQMSG

  There were circumstances when the Remove Message Queue Message tool
  would attempt to log a very long message informational to the job
  log. This has been fixed so that the message stays within
  appropriate bounds.

Changes to output files

There are no changes to output file formats in this refresh. Work has
been confined to fixes and 7.6 support.

Incompatibilities

- Commands that refer to previous releases (7.6 only)

  All save commands, most compile commands, and commands that use *PRV
  compiler support have had their TGTRLS parameters updated for 7.6.
  While technically incompatible with previous release this is
  consistent with IBM i 7.6 changes. The following commands have been
  affected:

  ---------------------------------------------------------------------------
  Tool         Command      Description
  ------------ ------------ -------------------------------------------------
  CHKPGMRLS    CHKPGMRLS    Check Program Release - CHKPGMRLS

  CHKTGTRLS    CHKTGTRLS    Check Target Release - CHKTGTRLS

  CMPOUTFILE   CMPOUTFILE   Compare System Outfiles - CMPOUTFILE

  CRTBNDCL2    CRTBNDCL2    Create Bound CL Pgm 2 - CRTBNDCL2

  CRTBNDRPG2   CRTBNDRPG2   Create Bound RPG Pgm 2 - CRTBNDRPG2

  CRTSFLPGM    CRTSFLPGM    Create Subfile Program - CRTSFLPGM

  CRTSFLPGM    RPLSFLPGM    Replace Subfile Program - RPLSFLPGM

  CRTSFLPGM2   CRTSFLPGM2   Create Subfile Program 2 - CRTSFLPGM2

  CRTTGTRLS    CRTTGTRLS    Create Target Release - CRTTGTRLS

  RPLGENPGM    RPLGENPGM    Replace Generic Programs - RPLGENPGM

  RPLMOD       RPLMOD       Replace Module - RPLMOD

  RPLOBJ       RPLOBJ       Replace Object - RPLOBJ

  RPLPGM       RPLPGM       Replace Program - RPLPGM

  SAVACT       SAVALLACT    Save All Active - SAVALLACT

  SAVACT       SAVCHGACT    Save Changed Active - SAVCHGACT

  SAVJRNRCV    SAVJRNRCV    Save Journal Receivers - SAVJRNRCV

  SAVLIBIFS    SAVLIBIFS    Save Library to IFS - SAVLIBIFS

  SAVOBJIFS    SAVOBJIFS    Save Object to IFS - SAVOBJIFS

  SAVONELIB    SAVONELIB    Save One Library - SAVONELIB

  SAVOWNOBJ    SAVOWNOBJ    Save Owned Objects - SAVOWNOBJ

  SAVRCVL      SAVRCVL      Save and Receive Library with FTP - SAVRCVL

  SAVRCVL      SBMSAVRCVL   Submit Save and Receive Lib with FTP - SBMSAVRCVL

  SAVSNDL      SAVSNDL      Save and Send Library with FTP - SAVSNDL

  SAVSNDL      SBMSAVSNDL   Submit Save and Send Lib - SBMSAVSNDL

  SAVSNDM      SAVSNDM      Save and Send Member with FTP- SAVSNDM

  SAVSRCF      SAVSRCF      Save Source Files - SAVSRCF

  SNDOBJMAIL   SNDOBJMAIL   Send Object Mail - SNDOBJMAIL
  ---------------------------------------------------------------------------

2025-04-15 (T102)

Refresh T102 (April 15, 2025) is for IBM i 7.3, 7.4, and 7.5.

No further refreshes or fixes will be made for IBM i 7.2 or earlier
releases.

IBM i 7.5 Notes

See the previous release notes for IBM i 7.5 changes that affected the
tools.

New Tools

- CLCDLY

  The Calculate Delay command will calculate the number of seconds
  needed to delay a job for a repeating activity. It is meant to be
  used with DLYJOB. It allows you to define a block of time during
  which the activity must take place. It allows for that block to be
  overnight if that is necessary.

Enhancements

- CHKACTUSR

  Check Active User was shipped as *PUBLIC *EXCLUDE. This has been
  relaxed to *PUBLIC *USE since the tool explicitly checks for *JOBCTL
  authority.

- CHKACTUSR2

  Check Active User 2 was shipped as *PUBLIC *EXCLUDE. This has been
  relaxed to *PUBLIC *USE since the tool explicitly checks for *JOBCTL
  authority.

- CHKHOLIDAY

  Juneteenth has been added to the Check Holidays tool.

- CPYSRCFIFS

  A new CASE keyword was added to control the case of folder and
  stream file names in the IFS.

- CPYTOCSV

  You can now do STMFOPT(*ADD) to add the result to an existing stream
  file.

- CRTEXTPRTF

  The Create External Printer File has been updated to include the
  SQLRPGLE source types.

- DSPFCNUSG2

  The Display Function Usage 2 command was updated. You can now invoke
  it from QCMDEXC.

- DSPHOLIDAY

  Juneteenth has been added to the Display USA Holidays tool.

- RTVHOLIDAY

  Juneteenth has been added to the Retrieve Holiday Date tool.

Fixes

- Install

  The Convert TAA Format command is used at the end of the install
  process to reformat very old versions of some files used by the
  SPLSTO and SPLARC tools. We've added further checks to the install
  process to avoid attempting to reformat impersonators.

- CHGOBJAUT

  The Change Object Authority command uses the PRINT tool internally.
  There are rare situations where the CHGOBJAUT does not close that
  printer file. That file is now closed on the next run if it was left
  open.

- CHKCPPQSYS

  The Check CPP use of QSYS command was not handling *REXX procedures
  properly. It now recognizes and skips commands that have a REXX
  procedure as a command processor.

- CPYTOCSV

  A note was added to the documentation stating that 8-byte binary
  integers show up as 0 in the resulting CSV file. Extra heading
  columns were being generated if COLHDG(*FLDNAM) was being used. This
  has been fixed.

- CVTOUTQ

  T101 introduced a bug in Convert Output Queue that would sometimes
  skip files that had identical job names, spool file names and
  numbers. This can happen when job numbers wrap. This bug has been
  fixed.

- CVTSYSVAL

  The CVTSYSVAL command could fail with a parameter length mismatch
  when attempting to retrieve the QSSLCSL system value on some
  systems. This is a rare occurence. The receiver is now allocated at
  the proper size.

- CVTTAAFMT

  The Convert TAA Format command is used to reformat very old versions
  of some files used by the SPLSTO and SPLARC tools. It was mistakenly
  attempting to reformat files created with the QUSRTOOL versions of
  these tools. Those files will now be excluded.

- DLTOLDSPLF

  Delete Old Spooled Files was affected by the bug in CVTOUTQ. No
  change was made to DLTOLDSPLF, but the CVTOUTQ bug could show up in
  the DLTOLDSPLF results.

- DSPMSGQINQ

  The Display Message Queue Inquiries could fail for very large
  message queues. The tool was modified to be able to retrieve message
  queue entries using CVTMSGQ2 which fixes the problem.

- DSPSBSJOBQ

  The Display Subsystem Job Queues command could sometimes report an
  array index violation. This has been fixed.

- MRGSPLF

  The Merge Spool File tool has been updated to handle the case where
  there are multiple files in the queue being merged that have the
  same job name, spooled file name, and spooled file number. This
  situation can happen when job numbers wrap from 999999 to 000000.

- RMVOLDMSG

  The Remove Old Messages from MSGQs command has been rewritten to
  avoid a looping condition if there were too many messages in a
  queue. It has also been enhanced to allow for the deletion of "same
  day" messages -- essentially clearing the message queue.

- RSNALLMSG

  Resend All Messages was rewritten to properly send messages to the
  using program's calling program even if the using program was an ILE
  program.

- RTVIFSED

  The Retrieve IFS Entry Description tool is used by several IFS tools
  such as DLTIFS and CVTIFS. It had a very slow memory leak that
  showed up if the number of IFS entries being examine was extremely
  large. The leak has been plugged in this refresh.

- RTVOBJLST

  Retrieve Object List is a tool used by several other tools. Recent
  IBM PTFs on V7R5 have some enhanced parameter checking that exposed
  a bug in our usage of the QUSLOBJ API. This shows up as a "Status
  value ? not valid" error in the job log. This has been fixed for all
  supported releases.

- RTVSYSVALA

  The Retrieve System Value Attributes command was returning a length
  of 1280 for the QSSLCSL value. This has been corrected to 3840.

- SNDSPLMAIL

  If a mailing list created with the MAILADR tool was being used then
  the Send Spooled File E-Mail tool would send to just the first *TO
  address in the list. This was fixed to send to all the addresses in
  the list.

- WRKALLSPLF

  The Work with All Spooled Files tool could occasionally not display
  some spooled files if the queues involved were too large. The tool
  has been redesigned and rewritten to avoid this issue.

Changes to output files

Incompatibilities

There are no known incompatibilities in this refresh.

2024-01-15 (T101)

Refresh T101 (January 15, 2024) is for IBM i 7.3, 7.4, and 7.5.

No further refreshes will be made for IBM i 7.2. However, fixes to 7.2
tools will continue to be supplied on an "as needed" basis until April
30, 2024.

No further refreshes or fixes will be made for IBM i 7.1 or earlier
releases.

IBM i 7.5 Notes

IBM has made a couple of changes in IBM i 7.5 that affect the results
returned to the tools. The tools have been modified to accomodate
these changes. You will have issues on IBM i 7.5 with CVTEDTD,
CVTIFSAUT2, and DSPIFSOWN and tools that depend on them until you
install this refresh. See the notes for the individual tools below.

- CVTEDTD was affected by a spooled file output change.

- While not technically incompatible the QSYLOBJA API now reports IFS
  path data in CCSID 1200 rather than the job CCSID. CVTIFSAUT2 and
  DSPIFSOWN were affected by this change. CVTIFSAUT2 is used by
  RVKIFSAUT, RVKIFSPGP, RNMIFSAUT, and RNMIFSPGP.

- It should also be noted that the CVTIFSOWN command also uses
  QSYLOBJA. Since the reporting CCSID is included in the CVTIFSOWN
  output, the path name data in the output file is also reported in
  this CCSID. If are using CVTIFSOWN you may need to make changes to
  convert from the reported CCSID.

Refresh Names

We are adopting a new scheme for naming our refreshes. Our Rxx
numbering was being confused with IBM's numbering of their releases.
Refreshes are now named Tnnn, beginning with T101, this refresh. The T
is either for "Tools" or "TAA" depending on your preference. We hope
this makes things a bit less confusing.

The numbering of previous refreshes in our release notes will remain
the same.

New Tools

There are no new tools in this refresh. There are some new ones
planned for the next refresh.

Enhancements

- CVTDEVPRT

  The output file for Convert Device Printer command has a new field
  for the last activity date added to the end of the record format.
  This can be useful if you have a large number of printers to track
  down the ones that are no longer being used.

- CVTIFSOWN

  Convert IFS Owners has been updated as described in our newsletter
  to convert path names on IBM i 7.5 from CCSID 1200 to the job CCSID
  so that they are more compatible with previous TAATOOL refreshes and
  IBM i releases.

- CVTMSGQ

  Convert Message Queue had a restriction that limited it to about
  30,000 messages. This limit has been removed.

- DSPJOBLOG3

  The Display Job Log 3 tool has a new REFRESH keyword that is used to
  view all the messages in the current job in a more convenient form
  than that provided by F10 or by DSPJOBLOG. Try it with
  DSPJOBLOG3 REFRESH(*YES).

- DSPRCDLCK2

  The Display Record Locks 2 command would complain about duplicate
  job names if duplicates existed even if only one of the duplicates
  was in active state. Since record locks can only exist in active
  jobs, the tool was enhanced to look for duplicates only in active
  jobs rather than all jobs.

- DUPFILFMT

  Duplicate File Format is extended to remove some limits on the file
  being created. This is important for RTVDLTRCD to handle extremely
  large files.

- RTVDEVPRT

  The Retrieve Device Printer command has a new keyword for the last
  activity date.

- RTVDLTRCD

  Retrieve Deleted Records was enhanced to allow for much larger files
  than it previously handled. See also DUPFILFMT enhancements needed
  for RTVDLTRCD.

- WRKJOB2

  WRKJOB2 now includes the completion date and time as the last column
  of the display for jobs in *OUTQ status.

- WRKJOBSTS

  Option 5 now does a WRKJOB immediately rather than prompting.
  Disconnect has moved from Option 7 to Option 13 to be consistent
  with WRKACTJOB.

Fixes

- ANZOUTQ

  The Analyze Output Queue could run out of array space for very large
  queues. The tool now stops recording unique values in each section
  after 9998 have been found so the arrays never overflow.

- CHGUSRPWD3

  The CHGUSRPWD3 command did not monitor for the possible CPD escape
  messages sent by the APIs. The command now monitors for those.

- CHKINACT

  The Check Inactive Job Timeout tool would ignore a *ALL *ALL entry
  if one was entered using WRKINACT. This entry is no longer ignored.
  This has the effect of overriding the default action stored in the
  application value TAASECURE/CHKINACT. If such an entry is not
  present then the application value becomes the default.

- CMPJRNIMG2

  The tool was incorrectly checking for a limit of 199 on the number
  of fields. This has been corrected to 998.

- CPYSRCFIFS

  CPYSRCFIFS did not issue reasonable error messages if the user was
  not authorized to the source file. New error messages have been
  added.

- CPYUSRPRF2

  Copy User Profile 2 is used on the SECOFR2 menu option 7. Code from
  the SECOFR2 menu was moved to the prompt override program to avoid a
  security exception when using option 7.

- CVTCFGSTS

  This tool would fail if executed in a server job such as one running
  SQL Scripts in ACS. This has been fixed.

- CVTIFSOWN

  There was a change in the IBM i 7.5 IFS APIs that returns path names
  in CCSID 1200 which is a UTF-16 CCSID. The code in CVTIFSOWN now
  takes the path name CCSID into account and converts it to the job
  CCSID for display and for use in commands.

- CVTNETSTAT

  The CVTNETCNN command of the CVTNETSTAT tool was failing when there
  was a large number of connections. The limits have been increased
  and the problem fixed.

- CVTOUTQ

  CVTOUTQ could receive a CPF3C44 exception if the output queue being
  converted had been moved from one ASP to another. CPF3C44 indicates
  that the internal spool id for a spooled file is no longer valid.
  CVTOUTQ was changed to not rely on internal spool ids. In addition
  CVTOUTQ could receive a CPF3C43 exception if the internal job id was
  no longer valid. This has been fixed.

- DLTIFS

  The DLTIFS command would not delete files if the file name contained
  trailing blanks. This has been corrected.

- DLTOLDQRPL

  The DLTOLDQRPL command would send an escape message if the total
  size of the objects remaining in QRPL exceeded 99,999,999,999 bytes.
  This has been increased.

- DSPALLSAVF

  The DSPALLSAVF command would not work when used from the FNDCMD
  list. This was due to conflicting overrides which have been fixed.

- DSPDLTSPC

  There was a possibility receiving a library not found message if the
  time between gathering the list of libraries and examining them was
  large enough for the library to be deleted in the interim. An
  additional test was added so that the timing window is now much
  smaller.

- DSPJOBLOG3

  The Display Job Log 3 tool would occasionally get lost when viewing
  large job log spooled files. The tool has been rewritten to avoid
  this issue.

- DSPJOBLOG5

  The Display Job Log 5 tool will filter just the last escape message
  and its related messages from a spooled job log file. If the job log
  being analyzed was too long this would fail with an array indexing
  error. This has been fixed.

- DSPJOBSCDC

  The Display Job Scheduler Calendar would fail with an exception if a
  *WEEKLY entry had *NONE for the days. This circumstance would be
  unusual, but valid. This has been fixed.

- DSPMSG2

  The Display Message 2 had an issue with filtering messages when used
  with explicit start and end times. This has been fixed.

- DSPOBJD3

  Display Object Description 3 allows for the examination of all
  libraries for objects. It would fail if the number of libraries
  examined was over 999. The limit has been extended.

- DSPPWDLMT

  Display Password Limit was not using the time and date ranges
  specified on the command. This has been fixed.

- DSPTAACAT

  DSPTAACAT would fail in Refresh R73 since we finally exceeded the
  array length for the number of tools in the product. We should have
  caught this one before shipping. Mea culpa.

- GENRANPWD2

  GENRANPWD2 would accidentally modify the PWDLEN parameter when used
  due to a parameter mismatch. This has been fixed.

- MOVSPLF

  MOVSPLF could fail in the cases where job numbers wrap so there are
  two identical job names with the same spooled file with the same
  spooled file number. While unlikely, this can happen when there are
  report jobs that are run every day for years. MOVSPLF will now pick
  one of those files instead of failing.

- RMVMSGQMS2

  Remove Message Queue Message 2 would fail if examining multiple
  queues and a queue was deleted after the list of queues was
  constructed. Any queues not found are now just skipped.

- RTVFLDDTA

  Retrieve Field Data would get a CPF0006 if run a second time before
  finalization. This was due to a working variable holding a
  constructed CHKOBJ command not being initialized. This has been
  fixed.

- RTVJOBA2

  The RTVJOBA2 command could fail in circumstances with a subscripting
  error when the information to be retrieved was too long for the area
  allocated. The area has been extended to handle that case.

- RTVSPLSIZ

  The Retrieve Spool Size tool could run out of room in a temporary
  file when working with a very large QSPL library. This would result
  in messages to QSYSOPR and possible cancellation. The maximum number
  of records in this temporary file has been increased substantially.

- SECOFR2

  Code from the SECOFR2 menu was moved to the prompt override program
  of CPYUSRPRF2 to avoid a security exception when using option 7.

Changes to output files

- CVTDEVPRT

  The outfile for CVTDEVPRT has been modified to add a new field to
  the end of the record format. Outfiles from previous versions of the
  tool may need to be deleted. The tool will re-create these on first
  use.

Incompatibilities

There are no known incompatibilities in this refresh.

2022-06-15 (R73)

Refresh 73 (June 15, 2022) is for IBM i 7.3, 7.4, and 7.5.

No further refreshes will be made for IBM i 7.2. However, fixes to 7.2
tools will continue to be supplied on an "as needed" basis until April
30, 2024.

No further refreshes or fixes will be made for IBM i 7.1 or earlier
releases.

IBM i 7.5 Notes

IBM has made a couple of changes in IBM i 7.5 that affect the results
returned to the tools. The tools have been modified to accomodate
these changes. If you are migrating from a previous IBM i release such
as 7.3 or 7.4 you should update your tools to refresh R73 prior to the
upgrade. If you do not update your tools you will have issues with the
CVTEDTD, CVTIFSAUT2, and DSPIFSOWN and tools that depend on them. See
the notes for the individual tools below.

CVTEDTD was affected by a spooled file output change.

While not technically incompatible the QSYLOBJA API now reports IFS
path data in CCSID 1200 rather than the job CCSID. CVTIFSAUT2 and
DSPIFSOWN were affected by this change. CVTIFSAUT2 is used by
RVKIFSAUT, RVKIFSPGP, RNMIFSAUT, and RNMIFSPGP.

It should also be noted that the CVTIFSOWN command also uses QSYLOBJA.
Since the reporting CCSID is included in the CVTIFSOWN output, the
path name data in the output file is also reported in this CCSID. If
are using CVTIFSOWN you may need to make changes to convert from the
reported CCSID.

Architecture Changes

Source Code Packaging

We are changing the way tools are packaged as source files.

Each tool has a "builder", a set of commands that is used by
CRTTAATOOL that are used to build the tool from its source code. These
builders were packaged in monolithic programs used by CRTTAATOOL. We
are now packaging these builders with the tool itself.

Likewise the command help for a tool was packaged with the command
help for other tools in large panel groups. Now the command help will
be packaged in a separate panel group and packaged with each tool.

The intent of these changes is to make the tools a bit more
self-contained so that enhancements can be made more easily.

These changes will be made over time to existing tools and will have
no external effects other than you may see extra members if you unpack
the source for a tool.

Use of the ILE Program Model

Many of the tools existed prior to the introduction of the ILE program
model. As tools are modified for fixes and enhancements we may elect
to convert them to the ILE program model.

All new tools will be written to the ILE program model. In addtion,
all new RPGLE code will be written as fully free-format.

The intent of this change is to make the future creation and
modification of tools more robust.

These should be no external effects of these changes.

New Tools

- CPYSRCFIFS

  This tool will copy selected members of source files in a library
  into the IFS. It is meant to provide an easy way to populate an IFS
  directory from source physical files. You may wish to do this if
  comparing sources across systems or when you wish to establish a
  source directory usable with Source Control Management tool that
  operates on Unix or Windows style directories.

- RUNTAABLDR

  This command will compile and run a builder program for a tool. All
  new tools are written with these builder programs, allowing them to
  be easily patched onto existing systems.

Enhancements

- CPYFRMCSV

  Copy From Comma Separated Values tool has two commands: CPYFRMCSV
  and CPYFRMCSV2. Both were enhanced to allow DOC objects to be used
  in addition to STMF object in the FROMSTMF keyword. The commands
  also now allow using a | as a field separator character.

- CPYSPLFIFS

  Copy Spooled File to IFS would create the spooled file with
  AUT(NONE) if the PDF option was used. This was changed to use the
  authorities of the containing directory similar to the system's
  CPYSPLF.

- CPYUSRPRF2

  The Copy User Profile 2 command would not allow a user profile to be
  created if ALLCRTCHG was specified in the QPWDRULES system value.
  This restriction has been removed. If ALLCRTCHG is specified then
  CPYUSRPRF2 will create a new profile from a template and assign a
  password to that profile that satisfies the password rules defined
  by the system values.

- CVTCERT

  Convert Certificates has been enhanced to allow any user that has
  the certificate store password to request a list of certificate
  expiration dates from a certificate store. This was previously only
  available to those users that had the password and had ALLOBJ and
  SECADM special authorities. The Convert Certificates command did not
  provide a very helpful messages when the user did not have the
  correct password or the proper authorities. The error messages
  issued are now use the system provided text.

- RTVIFSEAUT

  Retrieve IFS Entry Authorities has had minor enhancements to its
  internals for ILE. There should be no external effects.

- SNDSPLMAIL

  Send Spool Mail has been converted to ILE and the new tool source
  format. There should be no external effects.

- RSNLSTMSG

  The Resend Last Message command will now skip the Program Entry
  Procedure of ILE CL programs if one exists and send the message to
  the caller of that program.

Fixes

- CHKIFSE

  Check IFS Entry had a bug in which it detected the root IFS
  directory, /, as not found. This affected a number of tools that
  used CHKIFSE such as FTP2. Fortunately, not too many explicit
  references to the root directory are made. This has been fixed.

  It was also noted in the documentation that a CPF9898 escape message
  could be sent to the caller if an unusual exception not expected by
  the code occurred. Communications errors fall into this category.

- CMPLIB2

  The Compare Library 2 tool would fail if the files object files in
  the TOLIB library were empty. This could occur if the CAPLIB2
  command was incorrectly used. The CMPLIB2 command now tolerates this
  condition.

- CMPSYSVAL

  Compare System Values would get an array index out of bounds if the
  member on which it was operating actually contained more than one
  set of data. This could show up in CMPSYSVAL or in CMPSECINF. The
  system value data would have to be duplicated in one of the members
  being compared for this problem to surface.

- CPYTOCSV

  The Copy to CSV command would produce incorrect results if varying
  length fields were present in the database file being copied. This
  has been fixed.

- CVTEDTD

  The Convert Edit Descriptions tool would fail in IBM i 7.5. The tool
  works from the DSPEDTD spooled file output, which has been changed
  in this release to add apostrophes around some of the character
  fields. The tool has been modified to on IBM i 7.3, 7.4, and 7.5 to
  account for the apostrophes.

- CVTIFSAUT2

  The CVTIFSAUT2 command would fail on IBM i 7.5 due to a change in
  the QSYLOBJA API which now reports path information in CSSID 1200
  rather than the job CCSID. This command has been updated to
  accomodate that change. Errors would also show up in the following
  tools: RNMIFSAUT, RVKIFSAUT, RNMIFSPGP, and RVKIFSPGP which use the
  CVTIFSAUT2 command internally. No changes were needed to those
  tools.

- CVTOPNF

  There was a small timing window in the Convert Open Files command
  where it could issue a function check instead of a "job not found"
  message. This has been fixed.

- CVTSBSD

  The list of job queues in Convert Subsystem Description when using
  the TYPE(*JOBQENT) option could be incorrect. This has been fixed.
  CVTSBSD is used in other tools such as WRKSBSJOBQ.

- DLTOLDSPLF

  Delete Old Spooled Files had a minor bug in which it would fail if
  the underlying CVTOUTQ attempted to create the QGYSERVER jobs needed
  to process output queues and those jobs hit the maximum limit of the
  subsystem in which it was running. The tool was modified to use a
  new version of CVTOUTQ that avoids the creation of auxiliary jobs.

- DSPIFSOWN

  The QSYLOBJA API in IBM i 7.5 now reports IFS path name attributes
  in CCSID 1200 instead of the job CCSID. DSPIFSOWN converts the
  delimiter and path names back to the job CCSID for display.

- GENRANPWD2

  The Generate Random Password 2 had a bug where *REQANY3 was not
  handled properly if *DGTMIN0 and *SPCCHRMIN0 were defaulted or
  specified. The fix was to force mixed case and at least one special
  character if *DGTMAX0. A digit will be generated if *DGTMAXn was
  either not specified or n is greater than 0.

- RSTAUTL

  Restore Authorization Lists would fail if there was an unusually
  large number of authorization lists to process. The temporary
  database file it uses was changed to allow a larger number of
  records.

- RTVIFSED

  The Retrieve IFS Entry Description tool would leave a request
  message in the job log if the IFS entry being examined did not
  exist. The request message is now removed properly.

- RTVSMTPA

  Both the RTVSMPTA and RTVSMTPA2 commands had a *ANY value that
  performed no useful function. This special value has been removed
  from both commands.

- SAVCHG23

  The Save Change 23 command constructed an invalid SAVCHGOBJ command
  if the list of BYPASS libraries contained a library name that was 10
  characters. Appropriate spacing is now done.

- SCNIFS

  The Scan IFS command would fail if a special value was supplied on
  the OBJ keyword. This has been fixed.

- SRCARC

  The Source Archive tool had a bug in the WRKSRCARC screen where it
  would not display or "copy out" source if the screen was in "display
  library" mode. This has been fixed.

- WRKALLSPLF

  Work with All Spooled Files could resend a CPF34C4 if there were too
  many spooled files on the system. This message is now handled
  instead of resent.

Incompatibilities

- RTVSMTPA and RTVSMTPA2 have had the *ANY value removed. This value
  did not not provide any useful function and was confusing when
  prompted.

- Commands that refer to previous releases (7.5 only)

  All save commands, most compile commands, and commands that use *PRV
  compiler support have had their TGTRLS parameters updated for 7.5.
  While technically incompatible with previous release this is
  consistent with IBM i 7.5 changes. The following commands have been
  affected:

  ---------------------------------------------------------------------------
  Tool         Command      Description
  ------------ ------------ -------------------------------------------------
  CHKPGMRLS    CHKPGMRLS    Check Program Release - CHKPGMRLS

  CHKTGTRLS    CHKTGTRLS    Check Target Release - CHKTGTRLS

  CMPOUTFILE   CMPOUTFILE   Compare System Outfiles - CMPOUTFILE

  CRTBNDCL2    CRTBNDCL2    Create Bound CL Pgm 2 - CRTBNDCL2

  CRTBNDRPG2   CRTBNDRPG2   Create Bound RPG Pgm 2 - CRTBNDRPG2

  CRTSFLPGM    CRTSFLPGM    Create Subfile Program - CRTSFLPGM

  CRTSFLPGM    RPLSFLPGM    Replace Subfile Program - RPLSFLPGM

  CRTSFLPGM2   CRTSFLPGM2   Create Subfile Program 2 - CRTSFLPGM2

  CRTTGTRLS    CRTTGTRLS    Create Target Release - CRTTGTRLS

  RPLGENPGM    RPLGENPGM    Replace Generic Programs - RPLGENPGM

  RPLMOD       RPLMOD       Replace Module - RPLMOD

  RPLOBJ       RPLOBJ       Replace Object - RPLOBJ

  RPLPGM       RPLPGM       Replace Program - RPLPGM

  SAVACT       SAVALLACT    Save All Active - SAVALLACT

  SAVACT       SAVCHGACT    Save Changed Active - SAVCHGACT

  SAVJRNRCV    SAVJRNRCV    Save Journal Receivers - SAVJRNRCV

  SAVLIBIFS    SAVLIBIFS    Save Library to IFS - SAVLIBIFS

  SAVOBJIFS    SAVOBJIFS    Save Object to IFS - SAVOBJIFS

  SAVONELIB    SAVONELIB    Save One Library - SAVONELIB

  SAVOWNOBJ    SAVOWNOBJ    Save Owned Objects - SAVOWNOBJ

  SAVRCVL      SAVRCVL      Save and Receive Library with FTP - SAVRCVL

  SAVRCVL      SBMSAVRCVL   Submit Save and Receive Lib with FTP - SBMSAVRCVL

  SAVSNDL      SAVSNDL      Save and Send Library with FTP - SAVSNDL

  SAVSNDL      SBMSAVSNDL   Submit Save and Send Lib - SBMSAVSNDL

  SAVSNDM      SAVSNDM      Save and Send Member with FTP- SAVSNDM

  SAVSRCF      SAVSRCF      Save Source Files - SAVSRCF

  SNDOBJMAIL   SNDOBJMAIL   Send Object Mail - SNDOBJMAIL
  ---------------------------------------------------------------------------

2021-05-15 (R72)

Refresh 72 (May 15, 2021) is for IBM i 7.2, 7.3, and 7.4. This is the
last refresh for IBM i 7.2.

No further refreshes will be made for IBM i 7.2. However, fixes to 7.2
tools will continue to be supplied on an "as needed" basis until April
30, 2024.

No further refreshes or fixes will be made for IBM i 7.1.

New Tools

- CPUMON

  The CPU Monitor tool monitors for jobs that consume CPU resources
  above a specified CPU percentage. When a job is found running above
  the CPU limit, a message alert is sent to the specified message
  queue describing the job which is using too much processing time. If
  several jobs are found to be over the limit, multiple messages will
  be sent to the message queue - one for each detected job.

- RTVJOBSPLC

  The Retrieve Job Spool Count tool will efficiently return the number
  of spooled files created in a job. This count includes files in FIN
  state and can be used to compare against the system value QMAXSPLF
  to see if a job is near the system specified limit.

Enhancements

- CHKJOBMSGW

  A new keyword, JOBQ, has been added to specify where to submit the
  CHKJOBMSGW job. It defaults to QSYS/QSYSNOMAX, which was the queue
  used prior to this enhancement.

- CRTSTDSRCF

  A new keyword, BYPEXIST, was added to Create Standard Source Files.
  The default is *NO and that preserves the previous function. *YES
  will allow the files that do not exist in the specified library to
  be created.

- DSPMSGQA

  The Display Message Queue Attributes tool was enhanced so that the
  printed report now includes all the attributes of the displayed
  report.

- DUPALLSPLF

  Time fields have been added to the FROMDATE and TODATE parameters
  for DUPALLSPLF. This allows for a much finer-grained duplication.

- ENDSBSJOB

  *CURRENT was added as a parameter for the USER keyword.

- MNTALLJRN

  The Maintain All Journals command has a new parameter that allows
  the deletion of journal receivers that are in %ELG state. This
  happens if the receiver has been saved, but no save date is present
  in the object description. This happens for receivers that have been
  saved with UPDHST(*NO). Receivers in QSYS are usually saved this
  way.

Fixes

- Install

  The CRTFNDCMD that indexes commands at the very end of the install
  process could fail in very rare circumstances when indexing the
  commands in all libraries. Install has been modified to index only
  QSYS and TAATOOLS. If other libraries are desired you can rerun
  CRTFNDCMD after the the install has completed with the libraries of
  your choice.

- CAPSECINF

  The RFMSECINF command of the Capture Security Information tool is
  automatically invoked if changes in the security information file
  formats are detected. A bug was fixed that would fail to reformat
  the user profile files correctly.

- CHGLIBOWN

  The CHGLIBOWN tools would receive a MCH1210 exception when dealing
  with extremely large libraries. This has been fixed.

- CHKBLKFLD

  The Check Blank Field command would attempt to use an incorrect
  message file when sending a message about an empty member. This has
  been fixed.

- CHKIFSE

  The Check IFS Entry command would fail if the path specified ended
  with a '\'. This has been fixed.

  There was also an issue where \ was not being converted to / if the
  path was "triple-quoted". This has been fixed as well.

- CPYFRMCSV

  The Copy from Comma Delimited File command would fail with a CPF3303
  error if it was run in a server job, such as from an ACS SQL
  session. This was due to the the fact that spooled files in server
  jobs are created in a separate QPRTJOB job instead of the server
  job. The QPDDSSRC spooled file that was causing the issue is now
  owned by the server job and properly deleted.

- CPYFRMSTM2

  The Copy from Stream File 2 command would fail if copying from a
  stream file with an extremely long name. This has been fixed.

- CRTDBFJRN

  This command would fail when converting from a table created with
  DDL that contains CURRENT_TIME or CURRENT_TIMESTAMP defaults. This
  has been fixed. The command would also fail if run in a server job
  since it could not find a temporary spooled file. That file is now
  owned by the server job instead of the QPRTJOB for the current user.

- CVTIFS

  The pattern matching algorithm used in CVTIFS would not properly
  match some complex patterns i.e. those with multiple asterisks. The
  asterisk now matches the shortest string between constant strings in
  the pattern even if that string is a null string.

- CVTIFSAUT2

  In extremely rare circumstances the Convert IFS Authorities 2
  command could get an MCH0601 as it was processing the user space
  returned by an API. This has been fixed.

- CVTJOB

  The Convert Job command would fail if there were more than enough
  jobs to fill a single user space with the QUSLJOB API (about 280,000
  jobs). The tool has been updated to use the QUSLJOB continuation
  handle support. There is now no practical limit to the number of
  jobs it can convert.

- CVTOBJAUT

  The CVTOBJAUT command does not work with QTEMP, but using it on
  QTEMP failed to give an adequate report. This has been fixed.

- CVTSBSD

  The CVTSBSD command would produce some error messages when examining
  the job queues of subsystem descriptions. This did not affect the
  results, but could be confusing. Those error messages have been
  removed.

- DLTUSRPRF3

  If DLTUSRPRF3 was used to transfer ownership of objects when
  deleting a user profile those objects were deleted instead of being
  transferred. We issued a HIPER Alert for this and distributed the
  fix early. That fix is included in this refresh. Note that the patch
  had 'Delete User Prof 3 - TAA-0001' as the prompt heading for the
  command. This refresh restores the previous prompt heading of
  'Delete User Profile 3 - TAA'.

- DSPALLJLG

  Display All Joblogs would fail with a CPF34C4 (list too large for
  user space) if there were a fairly large number spooled files on the
  system. The code has been changed to ignore this error and process
  whatever spooled files are returned by the QUSLSPL API.

- DSPALLSPLF

  Display All Spooled Files would fail with a CPF34C4 (list too large
  for user space) if there were a fairly large number spooled files on
  the system. The code has been changed to ignore this error and
  process whatever spooled files are returned by the QUSLSPL API.

- ENDSBS2

  The ENDSBS2 command would fail if the subsystem referred to in the
  command was already ending controlled. The command now recognizes
  this situation and proceeds.

- NBRCTR

  The ADDNBRCTR command of the NBRCTR tool would receive a size
  exception when the amount to add keyword was 99999. This has been
  fixed.

- PRTALLOUTQ

  The Print All Output Queues would fail if an output queue exceeded
  13,000 spooled files. This limit has been increased to 1,000,000
  spooled files.

- PRTLIBANL

  The PRTLIBANL command would fail doing a CPYF if there was a
  mismatch between the outfiles used by it and the DSPUSRPRF command.
  This could happen if the tools and the underlying IBM i were out of
  sync. A *MAP option was added to the CPYF command to prevent this.

- RTVOBJJRNA

  The Retrieve Object Journal Attributes would send a TAA9896 escape
  message indicating that only physical files could be journaled when
  presented with a logical file that had a journaled access path. This
  now reports correctly for logical files.

- RTVOBJLST

  The RTVOBJLST tool would receive a MCH1210 when dealing with
  extremely large libraries. This has been fixed.

- RTVPFSRC

  The Retrieve PF Source command will not retrieve CURRENT_TIME or
  CURRENT_TIMESTAMP defaults from DDL into DDS since these are not
  allowed in DDS. It will no longer attempt to generate ALIAS keywords
  if the name that contain a #, $, or @. These cause DDS errors. The
  command also now works when the current user and job user are
  different, such as in a server job.

- RTVSTGPOOL

  The Retrieve Storage Pool command is used by the Display Subsystem
  command. In systems with very large main stores this command would
  fail of the storage size in KB exceeded 9 digits. If this happens
  now, the value returned is 999,999,999.

- SNDIFSMAIL

  The Send IFS Mail command is can be used stand-alone or internally.
  It constructs a temporary working folder with a unique name in
  /QDLS/TAAFLR. If that folder name was longer than 4 characters the
  resulting document name would be truncated and the tool would fail.
  This would happen only after about 1.6 million uses of the tool.
  This has been fixed.

- SNDSPLPDF

  The Send Spool File as PDF command would fail if the number counter
  used by the tool to create unique working folders in the IFS did not
  exist. This has been fixed so that the counter is created. The
  command might also fail if the working folders existed. The command
  now skips over existing working folders.

- SNDTXTMAIL

  The Send Text Mail command constructs and issues a LOGMAILENT
  command. This would fail if the MAILADRP address name contains
  non-system-name characters such as a hyphen. The address names are
  now quoted if they contain non-system-name characters.

- SPLARC

  The STRSPLARC command of the Spool Archive tool did not take the
  spooled file creation date into account when looking for spooled
  files to archive. This led to rare situations where the wrong file
  was archived if there was a job number wrap condition. This has been
  fixed by checking the spooled file creation date as well.

- SRCARC

  The SRCARC tool had several commands that had limiting dates of
  2020-12-31. These have all been changed to 2099-12-31.

- STRJRNLIB2

  This would stop processing objects in a library if it ran into a
  logical file that had its access path already being journaled. It
  now skips those files and continues as it does with other objects
  that are already journaled.

- WRKASP

  The Work with ASPs command would duplicate the previous ASP name on
  the display if an ASP was found but was in offline state. This now
  shows as *OFFLINE.

- WRKSPLF2

  The Work with Spooled Files 2 command would fail if the combined
  queues being examined exceeded 9999 spooled files. The display is
  now capped at 9998 spooled files.

Incompatibilities

- There are no known incompatibilities in this refresh.

Copyright TAA Tools, Inc. 1995, 2026
					

Added to TAA Productivity tools October 15, 2017


Home Page Up to Top