Command language

The WAPL command language is a combination of Workload Automation Programming Language core commands, Data Access commands (native PIF requests), Current Plan Operation commands, Function Based commands (extended PIF requests), HCL Workload Automation for Z TSO commands, and Batch Loader. The syntax uses the same conventions for all commands, which is easy to learn and to use.

Commands can be passed to Workload Automation Programming Language in many ways. Workload Automation Programming Language reads commands from the following input streams, in the following order:

  1. EQQOPTS. You can use the optional EQQOPTS DD statement to set the defaults for your environment when Workload Automation Programming Language starts. If you define an EQQOPTS DD statement, it is read and run before any other statements. Although EQQOPTS is intended to run OPTIONS statements, you can use it to run any command; therefore you can decide to set the OPTIONS and variables specific to the LPAR where the job is running.
  2. The ARG= symbolic parameter in the JCL. This only passes keywords for an OPTIONS statement. There are some immediate OPTIONS that can be specified only as an argument, these take effect as Workload Automation Programming Language starts and are not valid in OPTIONS statements elsewhere. This allows Site and Subsystems to be overridden at Workload Automation Programming Language startup in the program call or JCL.
  3. EQQFILE. You can use the optional EQQFILE DD statement to set the default file specifications for all your output files. Use of this DD statement is deprecated, use of the LOADDEF statement in the command stream is recommended instead. The SEQQWAPL library contains an assortment of predefined members that can be used to load groups of OUTPUT statements. The EQQFLALL member loads OUTPUT statements for every segment; the LOADDEF equivalent of this is LOADDEF *. The name of the DD statement can be overridden by OPTIONS FILESPEC(<dd>).
  4. External data queue. If data is detected on the external data queue (REXX stack) it is read as command input. If you use the INPUT keyword to pass a control block address in a previous input stream, the contents of the control block are added to the external data queue at this point, before it starts reading. It processes only what is in the external data queue at the time it starts reading; any lines added during the processing of the commands are not read at this stage.
  5. SYSIN. Use this optional DD statement to specify the commands for the session you are running. By default, the DD name for this input source is called SYSIN in batch, and INPUT when processed in the foreground, but you can set an alternative name with the OPTIONS INPUT(<ddname>) statement specified in any of the previous input sources.
  6. Post Processing. If OPTIONS POSTPROC(YES) is set, any further content of the external data queue will be processed at this point. The queue will be processed until it is empty, so any additional lines created whilst processing the queue will also be read.

Although there are many different streams through which you can specify command input, these are intended to let you separate your statements into standardized and reusable blocks. You can specify all your command input in one simple single stream, making it simple to see exactly what you are asking Workload Automation Programming Language to do in one place.

Note:
  1. Each input stream is parsed in its entirety before any statement within it is run, therefore any OPTIONS statement that has an impact on syntax does not take effect until the start of the next input stream.
  2. You must specify any syntax options in the OPTIONS or ARG streams.
  3. You can set any subsystem-specific options in the OPTIONS stream by using the ZSUBSYS variable and IF statements.
  4. If EQQYXTOP is being executed in foreground mode (rather than batch), a command source is not read if it is referring to the SYSIN DD statement, because this could lead to the program stalling if SYSIN is left allocated to the terminal.