Version compatibility

Workload Automation Programming Language is compatible with all the supported versions of HCL Workload Automation for Z.

By default, if you do not specify VER and MOD in the JCL or OPTIONS statement, Workload Automation Programming Language operates at the latest level of code installed, communicating and generating output for the equivalent level of HCL Workload Automation for Z.However, Workload Automation Programming Language can work with HCL Workload Automation for Z from version 9.x to the current release, but only supported for versions whose Service date is not passed.

You can specify the version to operate as by appending the version to the subsystem name with a hyphen when you call EQQYXTOP, for example SUBSYS=ʼZWSC-950ʼ. Otherwise Workload Automation Programming Language loads support for the latest version that was generally available at the time it was released.

You can change the version during a session with the OPTIONS VERSION statement, which causes the operating mode to be initialized again. This would allow you to perform some complex actions, for example, performing some V9.3 specific actions with a V9.3 controller, and then later generating some V9.2-compatible output within the same session from a V9.3 controller.

The version itself can be specified in a variety of formats, for example 9.3, 930, V930, 9.3.0, or V9R3M0. If you use one of these formats as part of your naming convention for HCL Workload Automation for Z data sets, such as your message library or load library, then you will be able to use the &VER symbol in the EQQYXJPX procedure to form part of the names.

There is a special case of * that you can use either as VER=* from the JCL (only if you are not using it in data set names), or as OPTIONS VERSION(*). This causes Workload Automation Programming Language to start up using the latest supported version available, but when it is connected to an HCL Workload Automation for Z subsystem it will detect what version the subsystem is using and automatically switch to that version.
Note: You can set VER=* only if you are working with HCL Workload Automation for Z V9.3, or later. For HCL Workload Automation for Z earlier than V9.3, you must set VER to the specific version you want to use (for example, VER=910 to communicate with a controller V9.1.0).
As well as major versions of the product, some new features could be released between versions by applying PTFs. When this occurs, module EQQYXTOP is given a new modification (MOD) level, as shown in the EQQB001I message at the beginning of the Workload Automation Programming Language log. The MOD level is shown after the version as a plus sign (+) followed by 3 digits:
EQQI001I ADCDMST1,JOB06592 Starting WAPL v9.3 +001

By default Workload Automation Programming Language always runs with the latest version and MOD level. For any specifically selected version, without selecting a MOD level Workload Automation Programming Language always operates at the highest MOD level for that version.

The following features have been delivered by MOD levels:
  • V930+001 October 2016 – Enable NOP, and HOLD in the database.
To select a specific MOD level within Workload Automation Programming Language, specify the MOD level in the OPTIONS VERSION keyword. For example, OPTIONS VERSION(V930+000) selects MOD level +000, which is the original version 9.3 of the product, and suppresses the generation of any Batch Loader keywords relating to NOP or Manually Hold in the database, along with any other new features added to version 9.3 after the initial release.

Workload Automation Programming Language automatically sets the appropriate value for the USRLEV keyword for any INIT statements it generates, and any USRLEV statements that do not include a USRLEV keyword. Workload Automation Programming Language does not override any USRLEV keywords already present in an INIT statement.

To select the MOD level from JCL use the MOD symbolic parameter in the JCL, as shown in the following example:
//RUNWAPL EXEC EQQYXJPX,
//        VER='V930'
//        MOD='+000'
During the rollout of a version upgrade, there could be times when you have controllers operating at different levels of code. You can manage this by issuing OPTIONS VERSION statements in your site default member, according to the controller you are using, as shown in the following example:
VARSUB SCAN
IF !ZSUBSYS = "WSMC" THEN
   OPTIONS VERSION(V930+001)
IF !ZSUBSYS = "WSLC" THEN
   OPTIONS VERSION(V920)

Ensure that the values for VER and MOD in the PROC statement of the EQQYXJPX and EQQJXJPL procedures are always set to null values, as shown in the following example. This assures that you always operate at the latest version of Workload Automation Programming Language installed (unless the version value is overwritten by the setting of a job). Set the VER and MOD keywords to a significant value only if you are working with a controller whose version is earlier than Workload Automation Programming Language.

//EQQYXJPX PROC @=,        
//         ARGS='',        
//         CMD=EQQYXTOP,   
//         REG=4M,         
//         SUBSYS=,        
//         VER=,           
//         MOD=,           
//         #=