ADDEP

Purpose

Use the ADDEP control statement to specify an application or an operation as the predecessor of the operation that is being built by the previous ADOP statement. The ADOP statement lets you specify one internal predecessor to the operation being defined. So you need to use ADDEP control statements if the operation has more than one predecessor or if it has any external predecessors.

If the predecessor operation is in a different AD from the one being built, you must specify the PREADID keyword to identify the AD containing the predecessor. You should remember, though, that there can be up to four versions of an AD with different validity dates. If there is more than one version, the batch loader searches the ADs defined by your PREADID keyword to find an AD with a current validity date. ADs with active status are searched first, followed by those with pending status.

If you do not supply the PREADID keyword, IBM Z Workload Scheduler assumes that the predecessor operation is in the AD that is currently being built (that is, the one defined by the last ADSTART statement).

You identify the predecessor operation by one or more of the following values:
  • Operation number (PREOPNO)
  • Workstation name (PREWSID)
  • Job name (PREJOBN)

You must specify enough of these keywords to uniquely identify the predecessor operation. If you do not specify any of these keywords, an application dependency is added.

If the output is directed to a VSAM data set, the predecessor operation can be defined by an ADOP statement occurring later in the input data set. This is because most validity checking occurs after all statements in the input data set are read.

If the output is directed to an active IBM Z Workload Scheduler subsystem and the predecessor operation does not already exist in the AD database, specify both the operation number and the workstation name in the ADDEP statement.

Format


1  ADDEP
1  ACTION (
2.1! ADD
2.1 SETDEFAULT
1 )
2?  DESCR ('
3.1 predecessor description
2 ')
2?  PREADID (
3.1 predecessor application ID
2 )
2?  PRECSEL (
3.1! C
3.1 S
3.1 A
3.1 R
2 )
2?  PREMAND (
3.1! N
3.1 C
3.1 P
2 )
1+ .
1  PREWSID (
2.1 predecessor workstation
1 )
1  PREOPNO (
2.1 predecessor operation number
1 )
1  PREJOBN (
2.1 predecessor job name
1 )
3?  TRANSPT (
4.1 transport time
3 )

Restrictions

You cannot use ACTION(SETDEFAULT) to set default values for the following keywords:
  • PREWSID
  • PREOPNO
  • PREJOBN
  • PREADID

Parameters

ACTION (SETDEFAULT | ADD)
If you specify SETDEFAULT, the remaining keyword values that you specify on the ADDEP statement become default values for all ADDEP statements that follow. No application description is updated. Keywords that you do not specify are assigned their standard defaults.

If you specify ADD or use it by default, the statement can result in an update of the database.

DESCR ('predecessor description')
A free-format description of the dependency. It can be up to 50 characters and must be contained within single quotation marks. Do not include delimiters, such as parentheses and single quotation marks, in the description.

IBM Z Workload Scheduler holds descriptions only for external dependencies. This field cannot be used to hold a description for an internal dependency.

PREADID (predecessor application ID)
If the predecessor operation is in a different application from the one being built, or is in a different occurrence of the same application, you must identify the application ID with the PREADID keyword. If you use DBCS characters, you must enter them as a quoted string started by a shift-out and ended by a shift-in.
PRECSEL (C | S | A | R)
Specifies on which basis a matching predecessor is selected. Can be one of the following values:
C
Closest preceding. The matching predecessor is the one with the nearest preceding input arrival time. This is the default.
S
Same scheduled date. The matching predecessor is the one with the nearest input arrival time within the same day of the operation (occurrence) under consideration. A matching predecessor is first searched before the IA time of the operation. Then, if not found, it is searched after the IA time of the operation.
A
Within an absolute interval. The matching predecessor is the one with the closest input arrival time in the specified interval. The interval boundaries are specified by a time and a number of days before or after the IA time of the operation (occurrence). The interval can be timed entirely before, entirely after, or across the IA time of the operation (occurrence).

If you select this option, the ADXIV statement must follow ADDEP with the specification of the interval boundaries.

R
Within a relative interval. The matching predecessor is the one with the closest input arrival time in the specified interval. The interval boundaries are calculated using an offset expressed in hours and minutes before or after the IA time of the operation (occurrence). The interval can be timed entirely before, entirely after, or across the IA time of the operation (occurrence).

If you select this option, the ADXIV statement must follow ADDEP with the specification of the interval boundaries.

PREMAND (N | C | P)
Specifies if it is mandatory that the dependency be resolved before the operation can start. Can be one of the following values:
N
The dependency is not mandatory. This means that, if the predecessor is not found, the dependency is considered resolved unless failure is required (within the dynamic addition of a dependency in the Modify Current Plan panel). This is the default value.
C
The dependency is mandatory at ad hoc add level. The predecessor is required, but may not be in the plan at the time the occurrence that includes the successor is added and may be made available later via ETT, PIF, or manual intervention. This means that if the predecessor is not found when an occurrence is added to the current plan, a pending mandatory predecessor entry is created and the occurrence is added in the waiting status. The pending mandatory predecessor entry is created also when LTP and DP batch start running and the predecessor is not found.
P
The dependency is mandatory at plan level. The predecessor is expected to exist at the time the occurrence that includes the successor is dynamically added into the current plan (via the MCP panel). If it does not, the addition of the occurrence fails. Also LTP and DP batch will fail if the predecessor is not found when they run.
PREWSID (predecessor workstation)
The four-character workstation name of a predecessor operation to this operation.
PREOPNO (predecessor operation number)
The operation number of a predecessor operation to this operation.
PREJOBN (predecessor job name)
The job name of a predecessor operation to this operation.
TRANSPT (transport time)
When IBM Z Workload Scheduler creates the plan, it allows this many minutes between the completion of the predecessor and the start of the successor operation that is being defined. You must specify an integer. The default is the time specified for the workstation.

Examples

In this example, the operation on workstation CPU1 with job name SMFCHK is made an internal predecessor to the operation being defined. An external predecessor is also defined: operation 020 in application PAYDAILY:
ADOP …
ADDEP PREWSID(CPU1) PREJOBN(SMFCHK)
ADDEP PREADID(PAYDAILY) PREOP(020) DESC('WAIT FOR DAILY PAYROLL') PRECSEL(R)
ADXIV ADXIVADID(PAYDAILY) ADXIVWSID(CPU1) ADXIVOPNO(020) ADXIVTYPE(R) ADXIVFWHE(B)
        ADXIVFHHH(012) ADXIVFMM(30) ADXIVTWHE(B)ADXIVTHHH(000) ADXIVTMM(15)

The external dependency is to be resolved by finding the matching predecessor within a relative interval, as defined by the value of PRECSEL. The details of the interval are defined by the ADXIV statement.