IBM Support

OA49807: NEW FUNCTION - HZSPRMXX CONDITIONAL FILTER STATEMENTS

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as new function.

Error description

  • With this APAR the IBM Health Checker for z/OS introduces the
    support for filtering of parmlib statements within its parmlib
    members HZSPRMxx. With this support, certain parmlib statements
    can be fenced off based on conditional expressions.
    
    For example, the following, when included in an HZSPRMxx parmlib
    member supplied to Health Checker, will let the system only
    apply the POLICY statement when the member is processed on
    system SY03:
    
     WHEN (SYSNAME=SY03)
     DO
      ADD POLICY UPDATE(CHECK(OWNER1,CHECK1) INACTIVE
          REASON('Do not need check 1 on system SY03')
          DATE(20160128)
     END
    
    Also introduced is the capability to perform a syntax check
    on complete HZSPRMxx parmlib members, without applying
    the contained statements to any health checks
    or to any Health Checker global settings.
    
    For example, the following command will let the system check the
    syntax of parmlib members HZSPRM01 and HZSPRM02:
    
      MODIFY hzsproc,ADD,PARMLIB=(01,02,CHECK)
    
    See the ++HOLD(DOC) section of this APAR for more details.
    

Local fix

  • n/a
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of the IBM Health Checker for z/OS     *
    *                 who use HZSPRMxx PARMLIB members to          *
    *                 customize their Health Checker setup.        *
    ****************************************************************
    * PROBLEM DESCRIPTION: Single HZSPRMxx members are hard to     *
    *                      share between different systems in a    *
    *                      sysplex or in other complex             *
    *                      environments, if there are certain      *
    *                      customization statements in such        *
    *                      HZSPRMxx members which are only         *
    *                      applicable to certain systems or        *
    *                      contexts, while many of the remaining   *
    *                      statements apply in a wider context.    *
    *                                                              *
    *                      Also, the Health Checker framework is   *
    *                      missing an option to ease the testing   *
    *                      and deployment of new and updated       *
    *                      HZSPRMxx PARMLIB members by allowing    *
    *                      a syntax check to be done on the        *
    *                      content of such members, without        *
    *                      having any customization statements     *
    *                      actually being applied to a live        *
    *                      instance of Health Checker.             *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    .
    

Problem conclusion

Temporary fix

Comments

  • A new HZSPRMxx statement construct, "WHEN statements", is
    introduced to allow blocks of HZSPRMxx statements in individual
    HZSPRMxx PARMLIB members to be fenced off based on conditions
    that are evaluated dynamically when the HZSPRMxx members is
    read in and processed by the Health Checker framework.
    
    The general syntax is:
    
    WHEN ( <list of condition expressions> )
       DO
       <any stmts>
       END
    
    For example, to specialize a block of POLICY UPDATE statements,
    so that they only get processed and applied on a particular,
    named system, SYxx in the example, use:
    
    WHEN(SYSNAME=SYxx)
     DO
      ADDREP POLICY UPDATE CHECK(OWNER1,CHECK1) ...
      ADDREP POLICY UPDATE CHECK(OWNER2,CHECK2) ...
     END
    
    Also, a new option for the existing ADD PARMLIB command
    is introduced to allow HZSPRMxx PARMLIB members to be checked
    for syntax only. The new ADD PARMLIB command syntax is:
    
     MODIFY hzsproc,ADD,PARMLIB=(x1,...,xn ,{C|CHECK} )
    
    For example the following command will check PARMLIB members
    HZSPRMAA and HZSPRMBB for syntax only, and the system will
    not attempt to add or apply any of the statements in those
    two members to the currently active instance of Health Checker:
    
     F hzsproc,ADD,PARMLIB=(AA,BB,CHECK)
    
    As a result the system will issue one of the following two
    summary messages for each member that has been checked:
    
    ASA020I - SYNTAX CHECKING IS COMPLETE FOR PARMLIB
              MEMBER=<memname>. ERROR(S) WERE FOUND
    ASA021I - SYNTAX CHECKING IS COMPLETE FOR PARMLIB
              MEMBER=<memname>. NO ERRORS WERE FOUND
    
    If the system finds errors as it checks an HZSPRMxx parmlib
    member, resulting in an ASA020I message, check the log for
    additional messages detailing the syntax problems found.
    
    For more details for both WHEN statements and the new CHECK
    option for the ADD PARMLIB command, see the ++HOLD(DOC) section
    of this APAR as well as the refreshed
    "IBM Health Checker for z/OS V2R2 User's Guide" (SC23-6843).
    

APAR Information

  • APAR number

    OA49807

  • Reported component name

    HEALTH CHECKER

  • Reported component ID

    5752SCHZS

  • Reported release

    7A0

  • Status

    CLOSED UR1

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    YesSpecatt / New Function / Xsystem

  • Submitted date

    2016-01-28

  • Closed date

    2016-03-07

  • Last modified date

    2016-10-04

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    UA80954 UA80955

Modules/Macros

  • HZSHZSEN HZSHZSJP HZSINPRM HZSIPER1 HZSIPER2
    HZSIPGP  HZSIPKWD HZSIPMSG HZSIPMU1 HZSMIMST
    

Publications Referenced
SC23684303SA38067303   

Fix information

  • Fixed component name

    HEALTH CHECKER

  • Fixed component ID

    5752SCHZS

Applicable component levels

  • R7AJ PSY UA80955

       UP16/09/07 P F609

  • R7A0 PSY UA80954

       UP16/09/07 P F609

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7A0","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7A0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
04 October 2016