RMVPTF (Remove Program Temporary Fix)

RMVPTF Command syntax diagram

 

Purpose

The Remove Program Temporary Fix (RMVPTF) command removes the specified program temporary fixes (PTFs) from the specified product. If the PTFs were temporarily applied, the original objects that they replaced are returned. The PTFs can be temporarily removed, in which case they are held in the product PTF library and they can be applied later. If the PTFs have not been applied, they can be permanently removed and moved to the QRPLOBJ library.

The RMVPTF command is used to remove immediate PTFs at the time the command is processed, or when the user wants to request that PTFs be removed during an unattended initial program load (IPL).

Restriction: This command is shipped with public *EXCLUDE authority and the QPGMR user profile has private authority to use the command.

 

Required Parameters

LICPGM
Specifies the 7-character identifier of the product from which the PTFs are removed.

 

Optional Parameters

SELECT
Specifies which of the PTFs to remove from the specified product. The OMIT parameter cannot be specified if single PTF numbers are specified in the SELECT parameter.

*ALL: All the PTFs are removed from the product. Those that were permanently applied are ignored by this command. If all PTFs cannot be removed, messages are sent to the job log indicating which PTFs are not removed and the reasons they are not being removed.

PTF-number: Specify the PTF identification number of each PTF being removed. Up to 300 PTF numbers can be specified.

OMIT
Specifies that all PTFs are removed except for those specified in this parameter. Specify the PTF numbers of the PTFs that are omitted (left in the system) when all the rest are removed. Up to 300 PTF numbers can be specified. The OMIT parameter cannot be specified if single PTF numbers are specified in the SELECT parameter.
RMV
Specifies whether the PTFs are removed temporarily or permanently. Permanently removed PTF objects are moved to QRPLOBJ or deleted. Temporarily removed PTFs are held in the product PTF library for application at a later time.

*TEMP: The PTFs are removed and held in the product PTF library so that they can be applied again later, if desired.

*PERM: The PTFs are permanently removed and placed in QRPLOBJ.

DELAYED
Specifies whether immediate PTFs are removed at the time the command is run, or whether immediate or delayed PTFs are removed during the next unattended IPL.

*NO: Immediate PTFs that are identified are removed at the time the command is processed. Delayed PTFs are ignored during the RMVPTF request and are not removed. For delayed PTFs, if the PTF has a status of Not Applied and you have specified RMV(*PERM), the PTF is permanently removed at the time the command is run. For immediate PTFs that are being temporarily removed, any preconditions that are not satisfied will result in the PTF not being removed. A message is sent for each PTF that is not removed.

*YES: Both delayed and immediate PTFs that are identified are removed during the next unattended IPL. The Remove on unattended IPL prompt (IPLRMV parameter) determines whether PTFs are removed during the next unattended IPL, or whether any previous request to remove the PTFs during the next unattended IPL is canceled.

IPLRMV
Specifies the action that is done for delayed or immediate PTFs at the next unattended IPL. This parameter is valid only if DELAYED(*YES) is also specified.

*YES: The identified PTFs are removed at the next unattended IPL. The RMV parameter determines whether the remove is temporary or permanent.

*NO: Any previous request to remove the identified PTFs at the next unattended IPL is canceled.

RLS
Specifies the release level of the PTFs being removed.

*ONLY: This value is valid when only one release of the product's base option is installed on the system. PTFs for all installed options of the product are removed regardless of the release-level of the option.

release-level: Specify the release level in VxRyMz format, where Vx is the version number, Ry is the release number, and Mz is the modification level. The variables x and y can be a number from 0 through 9, and the variable z can be a number from 0 through 9 or a letter from A through Z.

If the release-level specified is the release-level of the base option of the product, PTFs for all installed options of the product are removed regardless of the release-level of the option.

If the release-level specified is not the release-level of the base option of the product, only PTFs for the options installed at that release-level are removed.

RMVDEP
Specifies whether mutually dependent PTFs and dependent PTFs in the same product and option as the PTFs specified in the SELECT parameter are processed with the PTFs specified in the SELECT parameter list.

*NO: The mutually dependent and dependent PTFs are not processed with the SELECT parameter list. No PTFs are removed if any PTF specified in the list has dependent PTFs not also in the list or already applied. Messages identify the missing dependent PTFs and the specified PTFs on which they depend.

*YES: The PTFs are removed with the SELECT parameter list.

Examples for RMVPTF

Example 1: Temporarily Removing PTFs

RMVPTF   LICPGM(5722SS1)  DELAYED(*YES)

This command temporarily removes all temporarily applied PTFs from the Operating System/400 product (5722SS1) at the next IPL. The PTFs can be applied again, if necessary, using the APYPTF command.

Example 2: Permanently Removing PTFs

RMVPTF   LICPGM(5722SS1)  SELECT(SI10002 SI10005)
  RMV(*PERM)

This command permanently removes two PTFs (numbers SI10002 and SI10005) from the Operating System/400 product (5722SS1). The two PTFs are moved to QRPLOBJ and must be loaded again using the LODPTF command before they can be applied.

Example 3: Removing PTFs and their mutual dependents

RMVPTF  LICPGM(5722SS1)  SELECT(SI00003 SI00008 SI00012)
   DELAYED(*YES) RMVDEP(*YES)

This command temporarily removes PTFs SI00003, SI00008, SI00012, and their dependent and mutually dependent PTFs within the same product and option from the Operating System/400 product in library QSYS at the next IPL.

Error messages for RMVPTF

*ESCAPE Messages

CPF24B4
Severe error while addressing parameter list.
CPF35A0
Cannot allocate library &1.
CPF35A1
Wrong copy of Licensed Internal Code in use.
CPF35A4
Licensed Internal Code fix &2 cannot be removed.
CPF35A9
Error occurred while processing Licensed Internal Code fix.
CPF35C0
IPL action cannot be removed for PTF &1-&2 &3.
CPF35D0
Licensed Internal Code fix &1-&2 &3 not set to be removed permanently.
CPF35D2
PTF &1-&2 not removed.
CPF35EB
Multiple releases of product &1 installed.
CPF35E4
Information for PTF &1-&2 &3 not complete.
CPF35FB
PTF &1-&2 not removed.
CPF3558
Cannot allocate &1 in &3 type *&2.
CPF3564
PTF &1-&2 damaged.
CPF358A
Release not valid.
CPF3596
PTF numbers in select/omit list not permitted.
CPF3598
PTF function already in process.
CPF3602
PTF &2 not removed because it is permanently applied.
CPF3604
PTF not removed because an error occurred.
CPF3606
Product &1 &2 not installed.
CPF361E
Error occurred while removing PTFs for product &1.
CPF3612
Library &1 not found.
CPF3641
No immediate PTFs removed.
CPF3658
No program temporary fixes identified.
CPF3693
Service function ended because error occurred.
CPF3931
Required programs not found. PTF incomplete.
CPF3945
Records of PTF activity for licensed program are deleted.
CPF3956
Error occurred during PTF processing.