Saving the object for the previous release

You must save the object on the current release by using the target release (TGTRLS) parameter before restoring it on the previous release or previous modification. This saves the object in a format that is known to the previous release or previous modification.

Use communication lines or removable storage media (tape or optical media volume to move the objects from the current-release system).

It is suggested that you store previous-release and current-release objects in separate libraries to simplify maintenance.

The following save commands support the TGTRLS parameter:

  • Save (SAV)
  • Save Changed Objects (SAVCHGOBJ)
  • Save CICS Group (SAVCICSGRP)
  • Save Document Library Objects (SAVDLO)
  • Save DLO using BRM (SAVDLOBRM)
  • Save Folder List using BRM (SAVFLRLBRM)
  • Save Library (SAVLIB)
  • Save Library using BRM (SAVLIBBRM)
  • Save Licensed Program (SAVLICPGM)
  • Save Media Information using BRM (SAVMEDIBRM)
  • Save Object (SAVOBJ)
  • Save Object by using BRM (SAVOBJBRM)
  • Save Object List by using BRM (SAVOBJLBRM)
  • Save/Restore Objects (SAVRST)
  • Save/Restore Changed Object (SAVRSTCHG)
  • Save/Restore Document Library Object (SAVRSTDLO)
  • Save/Restore Library (SAVRSTLIB)
  • Save/Restore Object (SAVRSTOBJ)

The System Manager licensed program uses the previous-release support provided by the SAVLICPGM command. It provides the capability to package software for multiple releases from the same system.

Object compatibility is provided for most object types that are supported on both levels as long as the object only uses the previous-release function.

Table 1 shows what object types can and cannot be specifically created or saved for a previous release. IBM® does not support saving IBM-supplied objects (such as system commands and programs) from the current release and restoring them on a previous-release system. Refer to Table 1 for a list of supported TGTRLS values.

Table 1 uses the following values:

  • All means the object can be saved to all TGTRLS values that are supported on the current version of the operating system.
  • VvRrMm indicates the earliest release to which an object can be saved. However, you might need to refer to Table 1 to find the earliest TGTRLS value that is supported on the current version of the operating system.
  • *CURRENT means the object can only be saved to the current release, TGTRLS(*CURRENT).
  • None means the object is saved by a command, such as Save Security Data (SAVSECDTA) or Save Configuration (SAVCFG), that does not support the TGTRLS parameter.
Table 1. Previous-release support by object type
Object type Earliest target release
*ALRTBL All
*AUTHLR None
*AUTL None
*BLKSF All
*BNDDIR All
*CFGL None
*CHTFMT All
*CHRSF V5R1M0
*CLD All
*CLS All
*CMD All
*CNNL None
*COSD None
*CRG *CURRENT
*CRQD All
*CSI All
*CTLD None
*DDIR All
*DEVD None
*DIR All
*DOC All
*DSTMF All
*DTAARA All
*DTADCT All
*DTAQ All5
*EDTD All
*EXITRG All
*FCT All
*FIFO V5R1M0
*FILE (database, device, save) 9 All
*FLR All
*FNTRSC All
*FNTTBL V3R7M0
*FORMDF All
*FTR All
*GSS All
*IGCDCT All
*IGCSRT All
*IGCTBL All
*IMGCLG V5R2M0
*IPXD None
*JOBD All
*JOBQ 10 All
*JOBSCD All
*JRN All
*JRNRCV 4 All
*LIB All
*LIND None
*LOCALE V3R7M0
*MEDDFN V4R4M0
*MENU All
*MGTCOL V4R4M0
*MODD None
*MODULE 1  
  • ILE C
All
  • ILE C++
All
  • ILE CL
All
  • ILE COBOL
All
  • ILE RPG/400®
All
*MSGF All 6
*MSGQ All
*NODGRP V3R2M0
*NODL All
*NTBD None
*NWID None
*NWSCFG V5R4M0
*NWSD None
*OUTQ8 All
*OVL All
*PAGDFN All
*PAGSEG All
*PDFMAP V5R3M0
*PDG All
*PGM: 1  
  • BASIC
*CURRENT
  • CL (S/38 environment)
*CURRENT
  • CL (IBM i environment)
All
  • COBOL (IBM i environment)
All
  • COBOL/74 (S/38 environment)
*CURRENT
  • COBOL/74 (S/36 environment)
All
  • ILE C
All
  • ILE C++
All
  • ILE CL
All
  • ILE COBOL
All
  • ILE RPG
All
  • PASCAL
*CURRENT
  • PL/I
*CURRENT
  • RPG/II (S/36 environment)
All
  • RPG/III (S/38 environment)
*CURRENT
  • RPG (IBM i environment)
All
*PNLGRP All
*PRDAVL *CURRENT
*PRDDFN All
*PRDLOD All
*PSFCFG V3R2M0
*QMFORM All
*QMQRY All
*QRYDFN All
*RCT *CURRENT
*SBSD All
*SCHIDX All
*SOCKET None
*SPADCT All
*SQLPKG All
*SQLUDT V4R4M0
*SQLXSR V7R1M0
*SRVPGM2  
  • ILE C
All
  • ILE C++
All
  • ILE CL
All
  • ILE COBOL
All
  • ILE RPG/400
All
*SSND All
*STMF3 All
*SVRSTG V3R2M0
*SYMLNK All
*S36 *CURRENT
*TBL All
*TIMZON V5R3M0
*USRIDX All
*USRPRF V5R1M07
*USRQ All
*USRSPC All
*VLDL V4R1M0
*WSCST All
1
For Integrated Language Environment® (ILE) programs (a *PGM object created by binding one or more *MODULE objects together), the target release is determined by examining the target release value for each input *MODULE. If the target release values are different, the most recent target release value is used. An ILE program can be created from *MODULE objects created by different ILE compilers. The entries in this table for ILE languages under the *PGM object type state which target release values are supported by the ILE compiler when creating a *MODULE object. The *MODULE object can be used in turn to create an ILE program by using the Create Program (CRTPGM) command.
2
For ILE service programs (a *SRVPGM object created by binding one or more *MODULE objects together), the target release is determined by examining the target release value for each input *MODULE. If the target release values are different, the most recent target release value is used. An ILE service program can be created from *MODULE objects created by different ILE compilers. The entries in this table for ILE languages under the *SRVPGM object type state which target release values are supported by the ILE compiler when creating a *MODULE object. The *MODULE object can be used in turn to create an ILE service program by using the Create Service Program (CRTSRVPGM) command.
3
In V4R3M0, support was added for *STMF sizes up to 4 gigabyte - 1 byte. A *STMF larger than 2 gigabyte - 1 byte cannot be saved to releases prior to V4R3M0. In V4R4M0, support was added for *STMF sizes greater than 4 gigabyte - 1 byte. A *STMF larger than 4 gigabyte - 1 byte cannot be saved to releases earlier than V4R4M0.
4
If a journal receiver was attached to a journal when RCVSIZOPT(*MAXOPT1) was in effect, then it cannot be saved or restored to a release earlier than V4R5M0. Also, it cannot be replicated to any remote journals on any systems at release earlier than V4R5M0. If a journal receiver was attached to a journal when RCVSIZOPT(*MAXOPT2) was in effect, then it cannot be saved or restored to a release earlier than V5R1M0. Also, it cannot be replicated to any remote journals on any systems at releases earlier than V5R1M0. If a journal receiver was attached to a journal when any MINENTDTA options were in effect, then it cannot be saved or restored to a release earlier than V5R1M0. Also, it cannot be replicated to any remote journals an any system earlier than V5R1M0.

If a journal receiver was attached to a journal when RCVSIZOPT(*MAXOPT3) was in effect, then it cannot be saved or restored to a release earlier than V5R3M0. Also, it cannot be replicated to any remote journals on any systems at releases earlier than V5R3M0.

5
V4R5M0 is the earliest release for *DTAQ if the SIZE and AUTORCL parameters on Create Data Queue (CRTDTAQ) did not contain the default values when the data queue was created. Data queues cannot be saved for releases earlier than V5R4 if QDTA(*DTAQ) is specified. V6R1M0 is the earliest release if the data queue has been changed to enforce data queue locks.
6
V4R5M0 is the earliest release if *UBIN or *BIN 8 is specified for the format of a message description within the message file. V6R1M0 is the earliest release if *UTC, *UTCD, or *UTCT is specified for the format of a message description in a message file.
7
*USRPRF can only be saved to an earlier target release by using the Save Object List (QSRSAVO) application programming interface (API).
8
Spooled file data on output queues cannot be saved or restored for releases earlier than V5R4M0.
9
A *SAVF file that is larger than 1 terabyte cannot be saved to releases earlier than V6R1.
10
Starting in V6R1M0, you can restore a *JOBQ object in an independent ASP.