Nothing Special   »   [go: up one dir, main page]

Control-D Administrator Guide

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 21

Control-D Administrator Guide

Activating the Control-D Monitor


Control-D and Control-V share the same monitor when both products are installed.
The Control-D monitor usually operates 24 hours a day as a started task (STC) in
one and only one computer at an installation. Generally, the monitor is
automatically activated as part of the IPL process.

To activate the monitor manually, issue operator command S CONTROLD

If the monitor is successfully activated, the following message is displayed on the operator console:
CTD100I CONTROL-D MONITOR STARTED

The Printers Control monitor also operates 24 hours a day, but is activated and controlled by the
main Control-D monitor. When the Printers Control monitor is successfully activated, the following
message is displayed on the operator console: CTD775I monitor-name CONTROL-D
PRINTERS CONTROL MONITOR STARTED

Using the zIIP processor by the Control-D Monitor


The Control-D monitor uses the zIIP processor provided that the ZIIP parameter is set to 'Y' in the IOAPARM
member and the zIIP processor is available. The Control-D monitor uses the zIIP processor for the scheduling
and decollation processes.

Automatic STOP/START of a secondary Control-D monitor


according to queue size in GENERIC CLASSes
Control-D can automatically change the number of active Control-D decollation monitors based on the
number of JOBs in the JES spool that are waiting for decollation in the generic class.
The following table lists the parameters in CTDPARM that manage this process.
Description
Table 126a Parameters to manage
automatic stopping or starting of a
secondary Control-D monitor Parameter
INTERVLG Interval between GENERIC queue size tests
GENJOBM Threshold of QUEUE size (number of jobs in
the generic class in the JES spool) to stop a
secondary Control-D monitor
GENJOBX Threshold of QUEUE size (number of jobs in
the generic class in the JES spool) to start a
secondary Control-D monitor

If the number of JOBs in the spool is low (less than the GENJOBM parameter), the main monitor will stop the
last of the secondary decollation monitors. If the number is too high (more than the GENJOBX parameter), the
main monitor will activate the next secondary decollation monitor. GENJOBX should be higher than GENJOBM.
Note:
The main Control-D monitor checks the queue in generic classes defined for the first monitor in
the GENCLASS parameter. The same set of generic classes should be defined for each monitor. If not,
it is possible that some generic decollation missions will stop working. As a result, the number of
SYSOUTs in the GENERIC queue will grow.

Since decollation monitors can be stopped automatically, ensure that you set the MONITOR
parameter correctly in decollation missions running under this Control-D environment:
• In regular decollation missions, the MONITOR parameter should be set to 1 or empty. This prevents
a situation where a mission is not processed because the specified monitor is not active.
• In all generic decollation missions, the MONITOR parameter should be empty. This prevents a
situation where a decollation mission with a specified monitor number is not processed because the
corresponding monitor is stopped.

Activating Generic Processing


When the Control-D monitor is brought up, Generic Classes processing is automatically activated. You
may need to activate Generic Classes processing manually after Control-D is brought up. Use caution
if you manually activate the Generic option when it has not been activated automatically.
To manually automate Generic Classes processing,
issue operator command
F CONTROLD,STARTGEN

The following message is displayed on the operator console from which the modify command was
issued:
CTD139I GENERIC JOB DECOLLATION IS ACTIVE ON CLASSES (class-list)

Activating the Compressed Dataset Access Method


The Compressed Dataset Access Method (CDAM) must operate 24 hours a day, because CDAM is used both by
the Control-D monitor and by jobs within the system to read, write and view compressed reports.

Usually, CDAM is automatically initialized as part of the IPL process. To activate the Compressed
Dataset Access Method manually, issue operator command
S IOASINIT,OPTIONS=D

If CDAM is successfully initialized, the following operator message is displayed on the operator
console:
CTM227I IOA SUBSYSTEM "subsystem-name" INITIALIZATION OF Control-D
FUNCTIONS COMPLETED

Modifying the Control-D Sleeping Interval


Control-D "wakes up" every few seconds and checks what it has to do. This interval is set
through a Control-D installation parameter and can be changed by the system
administrator. In addition, the interval can be altered by the following operator
command: F CONTROLD,INTERVAL=nn
where nn represents the interval in seconds.
The interval should be modified by automatic commands invoked by the Control-O or Control-M
monitor (if present) according to set conditions and time ranges, and not manually by the operator.
For sites that do not use the Control-M Production Control System, the commands can be issued
through the JES Automatic Commands facility.

At most sites, the interval should be longer during the day (when fewer batch production jobs are
executing) and shorter during the night.
When the modification is received by Control-D, the following message is displayed on
the operator console from which the modify command was issued: CTD123I
Control-D INTERVAL IS SET TO nn SECONDS

Loading the Recipient and Approval Tree


The Recipient and Approval Tree resides in a partitioned dataset. It is loaded by Control-D’s various
monitors during their startup. In order to replace the current copy of the Recipient and Approval
Tree, use the operator commands described in the following topics.
Loading the Recipient and Approval Tree into the Control-D Monitor
To load a new (modified) Recipient and Approval Tree under the Control-D monitor, enter
operator command

F CONTROLD,LOADTREE

Examine the messages that are sent to the operator console. The following message
indicates that the tree was loaded successfully:
CTD160I CONTROL-D RECIPIENT TREE LOADED- nnnnnn RECIPIENTS

where nnnnnn is the number of recipients successfully loaded.

Loading the Recipient and Approval Tree into the IOA Online
Monitor
The recipient tree is also loaded into the IOA Online monitor. To load a new (modified) Recipient and
Approval Tree under the IOA Online monitor, issue operator command
F IOAOMONx,LOADTREE

where x is the unique monitor ID.


If the tree is loaded successfully, the following message is displayed on the operator console from
which the modify command was issued:
CTM786I monitor-name NEW TREE LOADED. NEW USERS WILL BE SIGNED ON TO
THE NEW TREE

When a new Recipient and Approval Tree is loaded, every user who enters the Control-D
Online facility starts working with the new tree. However, users who were using the
Online facility when the new tree was loaded continue to use the old tree. The old tree is
deleted from memory after all users who were accessing it have exited the Online facility.

Loading the Recipient and Approval Tree into Control-D


Application Server
To load a new (modified) Recipient and Approval Tree under the Control-D Application
Server, issue operator command F IOAGATE,MODASID[=nn] LOADTREE

where nn is the decimal sequential ASID number of the Control-D Application Server
address space to which the MODIFY command is submitted. The MODIFY command is
broadcast to all active Application Server address spaces if the ASID number ‘=nn’ is
omitted.

Deactivating the Control-D Monitor


To shut down the Control-D monitor, issue operator command
P CONTROLD

After a few seconds (a maximum of a minute), the monitor shuts down and the following
messages are displayed on the operator console: CTD107I SHUT DOWN UPON REQUEST
FROM OPERATOR
CTD136I STOPPING THE PRINTERS Control MONITOR monitor-name
CTD779I monitorName Control-D PRINTERS Control MONITOR ENDED
CTD120I Control-D MONITOR SHUTTING DOWN

When you shut down the Control-D monitor, all other Control-D facilities (the
Compressed Dataset Access Method, IOA Online monitors, IOA Archive Server) and
Online facility sessions can remain active.

Deactivating Generic Processing


It is sometimes desirable to stop Control-D from processing the outputs in the generic
classes (usually to replace the current report decollating mission definitions).
Issue operator command
F CONTROLD,STOPGEN

The following message is displayed on the operator console from which the modify
command was issued:
CTD140I GENERIC JOB DECOLLATION IS BEING DEACTIVATED

New decollation of generic class output does not start. Currently executing (decollating) missions
finish processing those jobs whose output processing already started.
Automatic Warning
When generic decollation is not active, the Control-D monitor issues the following warning on the operator console:
CTD271I GENERIC JOB DECOLLATION IS INACTIVE – CHECK WHY

If started task CTDNDAY fails during the ordering of a generic decollating mission, deactivation is
automatic. Check if all the generic decollating missions are in the Active Missions file before
reactivating generic processing.
The operator issues the STOPGEN command (discussed above). Determine why generic
decollating was deactivated, and whether it must remain deactivated.
The Active User Report List file becomes full. Run utility CTDDELRP to delete unnecessary entries
from this file.
The spool can become full if there are many generic jobs waiting to be decollated.

Suspending and resuming the mission process


It is sometimes desirable to suspend all mission processing for all Control-D decollation and print
monitors. All resources may be needed for other purposes for a limited period of time without
deactivation of the Control-D monitors.
Issue operator command
F CONTROLD,SUSPEND

The following message is displayed on the operator console from which the modify command was
issued: CTD12BI CONTROL-D MONITOR IS SUSPENDING FOR A OPERATOR REQUEST

In order to resume all mission processing, issue operator command


F CONTROLD,RESUME
The Control-D monitors resume a mission process. The following message is displayed on
the operator console from which the modify command was issued: CTD12DI
CONTROL-D MONITOR RESUMED

New Day Processing


The Control-D monitor is usually activated as a started task and remains active 24 hours a day. New
Day processing consists of automatic cleanup from the previous day’s mission ordering and automatic
ordering of missions for the current day.
The main components related to New Day processing are
New Day procedure
User Daily job
Date Control records
Active Missions file

Starting the New Day Procedure


The New Day procedure CTDNDAY can operate in two modes:
internal mode (default) – the New Day procedure is performed without shutting down the
Control-D decollation and printer monitors. See Internal mode (on page 393).
external mode – the Control-D monitor starts the New Day procedure, and then shuts down. See
External mode (on page 395).

CTDNDAY is the default name of the New Day procedure, but it may be changed during installation.

Internal mode
In this mode, at the predefined time, the Control-D monitor switches to SUSPENDed status and then
internally activates the NEWDAY processes.
The Control-D monitors SUSPEND mode means that no new missions will be activated. The monitors
do not wait until the decollation missions that are being processed are finished, but the primary
monitor does wait until all active backup, migration, and restore missions are finished. The primary
monitor also signals the Printers Control monitor to suspend all active printing missions, and waits
until the monitor does this.
To run the New Day procedure in internal mode
1. Start the Control-D monitor by issuing one of the following operator commands:

S CONTROLD
S CONTROLD,NDAYMODE=INT
At the predefined time, the following message is issued on the operator console: CTD12AI
CONTROL-D MONITOR IS SUSPENDING FOR A NEW DAY
When all processes are suspended (excluding the decollation), the following message is
issued on the operator console:
CTD12CI CONTROL-D MONITOR SUSPENDED

The primary Control-D monitor activates the special subtask CTDNDAY, which is the first
stage of New Day process, after all Control-D monitors are suspended. This subtask
compares the date and time of the computer with the Control-D control files. If they do not
match, the following questions are issued on the operator console:
CTD426W CONTROL-D (CTDNDAY) DID NOT RUN FOR nnnnnn DAYS
CTD427W IS THIS TRUE? (ANSWER "YES" OR "NO")
CTD428W YOUR ANSWER IS:

Answer these questions according to the following recommendations:


• If the date and time do not match, and the computer has not been operational for a some time (for
example, after a hardware failure or a holiday), you must respond YES.
• If there was no specific reason for the date and time not to match, the computer was probably
started with the wrong date. In this case, respond NO, check and if necessary correct the system
date, and then restart the Control-D monitor.
• If the system date was correct, the INCONTROL administrator must determine the cause of the
problem.
• If the subtask terminates, abends, or fails for any reason, a highlighted, unrollable message is
issued on the operator console and the monitor shuts down after the all active decollation missions
finish executing.

The CTDNDAY subtask includes the following steps:


• formatting the Active Mission and Active Transfer Files
• deleting unneeded missions from Active Mission File
• ordering missions according to mission lists.

Line CTM34F in the program list separates the first and second stages of the New Day process.
The following message is issued on the operator console after the NEWDAY subtask
finishes executing:

CTD12CI CONTROL-D MONITOR RESUMED

2. The Control-D monitor starts the CTDNDAY task, which performs the second stage of the New Day
process, with the following command:
S CTDNDAY,NDAYMODE=INT
3. If this procedure terminates with nonzero return code, or abends or fails for any reason, the
INCONTROL administrator must determine the cause of the problem and then restart the CTDNDAY
task with the following command:

S CTDNDAY,NDAYMODE=INT
After Control-D starts the CTDNDAY task, the monitor resumes processing of all missions and signals
the Printers Control monitor to resume all suspended print missions.

External mode
In this mode, at the predefined time, the Control-D monitor signals the Printers Control monitor to
shut down and waits until the monitor does this, after which the Control-D monitor shuts down. When
the Printers Control monitor shuts down, it suspends all active printing missions, which resume only
after the Printers Control monitor is restarted.
To run the New Day procedure in external mode
1. To run the New Day process in external mode, start the Control-D monitor by issuing the following
operator command:

S CONTROLD,NDAYMODE=EXT
The Control-D monitor and the Printers Control monitor are shut down at a predefined
time. The following highlighted, unrollable messages are issued on the operator console:
CTD779I monitorName CONTROL-D PRINTERS CONTROL MONITOR ENDED
CTD113W CONTROL-D MONITOR SHUTTING DOWN FOR A NEW DAY

2. Before Control-D shuts down, the CTDNDAY task is activated. This task may display several
questions for the operator to answer. After several minutes, CTDNDAY finishes executing and
automatically reactivates Control-D using the following command:
S CONTROLD,NDAYMODE=EXT
In this mode, the CTDNDAY task performs the entire New Day process. If the CTDNDAY task abends
or fails for any reason, a highlighted, unrollable message is issued on the operator console and the
monitor is not reactivated automatically.
New Day Procedure Workflow
The New Day procedure performs the following daily maintenance actions:
cleans unnecessary missions from the Active Missions file

This includes missions that ended OK, missions in wait schedule state whose MAXWAIT parameter
has been exceeded, emergency missions that are no longer needed, and so on.
Missions that ended OK can optionally be kept in the Active Missions file until the MAXWAIT period for
these missions is exceeded.
schedules regular and generic decollating missions, printing missions, backup missions, restore
missions, and Control-V migration missions

For more information, see Mission Scheduling (on page 402).


reactivates the Control-D monitor by issuing operator command (for external New Day mode
only)

S CONTROLD,NDAYMODE=EXT
deletes the print plan datasets of print missions deleted in step 1.
updates the IOA Manual Conditions file.

For more information, see the IOALDNRS utility in the INCONTROL for z/OS Utilities Guide.
Control-D includes the following actions that are performed as subtasks in internal mode in the first
stage of the New Day procedure:
Clean unnecessary missions from the Active Missions file
Schedule regular and generic decollating missions, printing missions, backup missions, restore
missions, and Control-V migration missions. The limit line of the included program is CTM34F line in
the program list.

For more information see Programs Called During New Day Processing (on page 399)

User Daily Job


The User Daily job is used to place new missions in the Active Missions file. Each User Daily job
usually runs once a day on one or more missions definition members. The missions are selected
according to the working date specified to the User Daily job. Therefore, the User Daily job is date-
dependent, and certain special situations must be dealt with, such as
The computer has not been working for a few days (for example, due to holidays, or a hardware
or software failure).
The user wants to run a job or a set of jobs and to process their reports prior to or later than the
current working date.

Date Control Record


Each User Daily job uses a special Date Control record to store the last running date for the User Daily job. A
Date Control record is a member in the Control-D PARM library in which relevant date information is placed
during New Day processing.

The Date Control record is analyzed by the User Daily job to determine the current running date, the
last running date, and possible error situations. This date information is used to manage the ordering
of missions during New Day processing.
When a User Daily job is run, the current working date is placed in the Date Control record. In
addition, the Basic Scheduling parameters of each mission in the mission lists being ordered are
compared to this date to determine if the mission must be placed in the Active Missions file.
The length of a Date Control record is 80 characters.

Use of the Date Control Record by the New Day Procedure


Separate Date Control records are used for the New Day procedure and the User Daily job. The Date
Control record for the New Day procedure has one additional date: date-12.
When working under procedure CTDNDAY, the program asks the operator a question regarding the
computer’s current date. This is to ensure that an incorrect date was not inadvertently entered during the IPL
process.

Programs Called During New Day Processing


Two important programs in New Day Processing are CTDILY and CTDILU:
the New Day procedure executes program CTDILY
each User Daily job executes program CTDILU

Programs CTDILY and CTDILU both execute other programs that implement New Day processing.
However, program CTDILU (used by User Daily jobs) has less authorization (that is, is not APF-
authorized) and calls fewer programs than program CTDILY.
Both CTDILY and CTDILU read the member referenced by DD statement DAPROG and activate the
programs listed in the member.
The following is the format for each record in the program:
columns 01 to 08 – Program name
columns 10 to 11 – Maximum return code allowable in the preceding program

If a higher return code is encountered in the preceding program, the current program is not
executed.
The following table lists the programs called by the program CTDILY (the New Day procedure) and by
program CTDILU (User Daily jobs):

Parameters of the New Day Procedure


You can define the parameters of the New Day procedure the special members of the CTD PARM
library. The list of these members is specified in the CTDVAR procedure.
Program CTDFRM, activated as part of the New Day procedure, is responsible (among other duties)
for erasing all Control-D related conditions from the IOA Conditions file for the current day.
Prerequisite conditions are always assigned a date reference (day and month). They can be kept in
the IOA Conditions file for a entire year. Therefore, it is necessary to erase them at the beginning of
each working day. Otherwise, missions may be triggered because of conditions remaining from the
previous year.
It is common to use prerequisite conditions that are not date-dependent, such as IMS-IS-
UP, or AR-FILE-OK. It is important that these conditions not be erased. You can supply a
list of conditions that are not to be erased through DD statement DAFRMIN. The syntax is
IGNORE COND prefix

where prefix is the name (or mask) of conditions not to be erased. If an asterisk (*) is specified, no
conditions are erased. Multiple IGNORE statements can be specified.
When the Control-M Production Control System is installed at your site, the Control-M Resources file is
updated by Control-M.

Mission Scheduling
Control-D and Control-V manage report distribution at your site through missions defined by the user.
Several different types of missions are available, each for a different type of task
decollation missions
printing missions
restore missions
backup missions
migration missions (Control-V only)

This section discusses the following topics:


scheduling methods
scheduling missions through CTDNDAY
scheduling missions through a User Daily Procedure
scheduling a mission manually
scheduling workflow

Scheduling Methods
Missions can be scheduled using the following methods:
automatically by the Control-D New Day procedure (CTDNDAY)

This is the usual method. (For more information, see Scheduling Missions Through a New Day
Procedure (on page 403).)
using a batch job (for example, procedure CTDRPDAY for decollating missions)

The job can be submitted manually or automatically by a scheduler. (For more information, see
Scheduling Missions Through a User Daily Procedure (on page 405).)
manually from the Mission Definition screen, using the O (Order) and F (Force) options
manually under ISPF using the Online Utilities panel

The panel can be invoked directly using a CLIST (for example, CTDMISRQ MIS(REP) for a decollating
mission).
manually under ROSCOE (for example, using RPF CTDRQPRT for a printing mission)
using a KeyStroke Language utility from the IOA SAMPLE library (for example, BKPORDER for
backup missions)

Scheduling Missions Through a New Day Procedure


The recommended method for scheduling missions uses the New Day procedure (CTDNDAY),
because it is activated automatically once a day.
A member in the Control-D PARM library is referenced by a DD statement in the CTDNDAY. This
member contains a list of missions that must be scheduled. The Basic Scheduling parameters of these
missions are analysed against the requested scheduling date. If the mission must be scheduled for
that day, it is placed on the Active Missions file.
The following table contains the names of the mission list members and the DD statements used to reference
each mission type in the New Day procedure:

SYS0.CTDO.INGT.V9020.PARM library contain below members:


Mission Type Member DD Statement
Regular Decollating REPLIST DAREPLST
Generic Decollating GENLIST DAGENLST
Printing PRTLIST DAPRTLST
Restore RSTLIST DARSTLST
Backup BKPLIST DABKPLST
Migration BKPLIST DABKPLST

Each of these records has the following format:


date libname [missionname catname] [FORCE]

where
date is the ODATE (original scheduling date) of the mission, in the format mmddyy, ddmmyy, or
yymmdd (depending on the site standard).

The Basic Scheduling parameters of the mission are compared with this date. The Date Control record
is not updated.
Specifying an * (asterisk) indicates that date management is handled automatically by Control-D
using the Date Control record.
Parameter RETRO affects the result obtained when the mission’s basic scheduling criteria are
compared with the last scheduling date of the mission.
libname is the name of the library in which the mission parameters are found. Valid values are
• specific library name.

In this case, the library is dynamically allocated.


• A DD name preceded by an asterisk

The library must be a partitioned dataset with a record length of 80.

mission name is the optional name of the mission (a member in the library)
Specifying an * (asterisk) indicates that all the missions (members) in the specified library are
analyzed. Using an asterisk eliminates the need to update mission lists to include new missions.
catname is the specific category of the mission is analyzed

Specifying an asterisk indicates that all categories of the mission are analyzed.
FORCE is an optional parameter that places mission categories in the Active Missions file with the
specified original scheduling date, regardless of basic scheduling criteria. This must an actual date,
not an asterisk.

If you do not include the FORCE parameter, Basic Scheduling parameters of the category of the
missions are analyzed against the specified original scheduling date. If the mission must be scheduled
on that date, it is placed on the Active Missions file.
Use ‘/*’ to specify a comment line.

The following is an example of the JCL (relevant DD statements of procedure CTDNDAY only):
//CTDNDAY EXEC PGM=CTDILY
//DACHK DD DISP=SHR,DSN=ctd_parm_library(DDATEREC)
//DAREPLST DD DISP=SHR,DSN=ctd_parm_library(REPLIST)
The Date Control record used in this case is the General Control-D Date Control record.

Supplied Mission List Members


The following table describes the default mission list members supplied with Control-D:
Table 131 Default Mission List Description
Members Member
PRTLIST Schedules one printing mission (for form
STD).
BKPLIST Schedules the following backup missions:
BKP0007D Back up for 7 days.
BKP0031D Back up for 31 days.
BKP0180D Back up for 180 days.
BKP0365D Back up for 365 days.
RSTLIST Schedules the following restore missions:
RST0060M Restore reports every 60 minutes.
RSTADHOC Restore reports immediately (for authorized
users only).

Scheduling Missions Through a User Daily Procedure


You must use the following JCL:
// EXEC procedure-name
//DACHK DD DISP=SHR,DSN=ctd_parm_library(daterec)
//DAxxxLST DD DISP=SHR,DSN=ctd_parm_library(mlistmem)

where
procedure-name is one of the following:
• CTDRPDAY for decollating missions
• CTDPRDAY for printing missions
• CTDRSDAY for restore missions
• CTDBKDAY for backup and migration missions

DAxxxLST is the reference to the member containing the mission list. Same as specified in
Scheduling Missions Through a New Day Procedure (on page 403).

daterec is the name of the Date Control record for the procedure.

Each procedure must use its own Date Control record. A Date Control record cannot be shared by two
procedures. The Date Control record is referenced by DD statement DACHK and is used to determine
the correct scheduling date for selecting missions according to their scheduling criteria. For more
information, see Date Control Record (on page 396).

mlistmem is the name of the member containing the mission list. Same as specified in Scheduling
Missions Through a New Day Procedure (on page 403).

Scheduling a Mission Manually


Missions are normally scheduled automatically through New Day processing. However, it is sometimes
necessary to schedule a mission manually (for testing, special purpose missions, and so on). In
addition, it may be necessary to schedule a mission for different scheduling dates (for example,
scheduling a mission that was to run on the 1st of next month on the 30th of this month, or
rescheduling a mission that ran on the 4th because the entire run has to be performed again on the
5th).
To manually reschedule a mission, we recommend using the O (Order) or F (Force) options of the Mission List
screen or using an ISPF online utility. However, to schedule a mission without entering the IOA Online facility,
which is supported only under MVS environments, you can use one of the following CLISTs, KSL utilities, or
RPFs (for ROSCOE):

Scheduling Workflow
A mission is defined using the Online facility: option R for decollating missions, option M for other
missions. Each mission contains parameters that describe the actions to be performed, and when and
under what conditions they are to be performed. Mission definitions are stored in libraries (partitioned
datasets).
Mission definitions in the library are not active instructions to the Control-D monitor. To make a
mission active, it must be placed on the Active Missions file. The process of selecting a mission from
the definition library and placing it on the Active Missions file is performed by the Control-D New Day
procedure during New Day processing.
The following figure shows how the New Day procedure analyzes mission definitions in a library. According to
the basic scheduling criteria specified, appropriate missions are selected, placed in the Active Missions file, and
automatically assigned an original scheduling date (ODATE).

As shown in the following figure, when a decision is made to schedule a mission, its parameters are passed to
Control-D user Exit CTDX001. This exit can modify the contents of the parameters or cancel the mission. If the
exit does not cancel the mission, the mission is placed in the Control-D Active Missions file.
The Active Missions file can contain more than one mission with the same name.

Decollation Mission Management


Regular report decollating missions can handle output from the spool or from CDAM datasets. They are
executed once to handle the output produced by a specific job name (unless defined as cyclic report
decollating missions, with a task type of CRP).

Generic Decollating Missions


Control-D provides the option of decollating output from dedicated output classes. Whenever a non-
held output exists on the spool in one of the classes defined for generic processing, the Control-D
monitor looks for a generic decollating mission that matches the job name, CLASS, DEST, FORM,
and EXTWTR of the selected SYSOUT. The search is performed on all generic missions currently
in the Active Missions file, which are not held.
Generic decollation is intended for processing non-standard sysouts (for example, MSGCLASS), or reports
generated dynamically from a CICS (or similar) environment. A generic decollating mission can process sysouts
from a job that is still running at time of decollation, such as SYSLOG files.

Generic Decollating Mission Workflow


A generic decollating mission can decollate only from the generic classes defined in the Control-D
installation parameters. Any output that is decollated by a generic decollating mission is purged from
spool. After decollation, the mission’s postprocessing parameters (OUT, SHOUT) are executed, but
the mission does not stay in ENDED status. It is recycled for re-execution (that is, it is in WAIT
SCHEDULE status).
All runtime scheduling criteria (IN, TIME, PRIORITY) are applicable to generic decollating missions.
Usually the recycled generic mission is immediately eligible for execution and is assigned the
WAITING FOR JOB status.
SYSOUTs of jobs that appear in a generic class but do not have a matching generic decollating mission name in
the Active Missions file are removed from the generic class in one of the following ways, depending on the
value specified in Control-D installation parameter GENOTFND:

Value Description
Values that are valid under JES2:
PRIORITY The spool priority of the output is set to one.
This allows other output with higher priority
to be processed. Default.
DELETE The output is deleted from the spool.
HOLD The spool status of the output is altered to
hold, preventing it from being processed
again by Control-D generic decollation class
monitoring.
CLASS=x The class of the output is altered to the
specified class. This class must not be one of
the classes specified in parameter GENCLAS.
Additional Considerations
It is possible that more than one generic decollating mission matches the same job. In this case, the
missions are processed according to their priority levels. If their priorities are equal, they are
processed in the order in which they appear in the Active Missions file (that is, in the order in which
they were ordered or scheduled).
When GENERIC=Y and MONITOR is blank, the mission is ordered separately for each monitor and each copy of
the mission is assigned a different monitor number (ID). This enables concurrent decollating of generic jobs
under more than one monitor.

Control-D first handles regular report decollating missions according to their priority and then scans the
generic output classes for outputs. However, this does not guarantee that the regular mission of the same job
is executed before a generic one.

Scheduling Generic Decollating Missions Through the New Day Procedure


Generic decollating missions can also be scheduled manually, or by any of the other scheduling methods.
However, it is highly recommended not to schedule the missions through the REPLIST member of the New Day
procedure with non-generic decollating missions.

Defining a Generic User Name List


Control-D provides an option to specify a generic user name in the report decollation definition.

A generic user name list resides in a PDS member. The name of the member is referenced in the DO USER
statement, preceded by an asterisk (for example, *BRANCHES). The member must be in a library referenced by
DD statement DAGENUSR of the User Daily job (or CTDNDAY). Although, it is possible to use a few generic user
name libraries in a distributed environment, it is generally recommended that you use only one to simplify the
administration.

following format:
column 01 to 05 – TUSER (that is, constant value TUSER)
column 06 to 09 – blank
column 10 to 11 – level code of the user (for example, recipient) as defined in the Recipient Tree
column 12 to 31 – user name

One line is required for each user. Additional lines in the member are not permitted. Do not use
columns 73 to 80. Each line must describe a valid user name in the Recipient Tree. Use the main user
name, not a synonym.

The following is an example of the member BRANCHES: TUSER 30BR101


TUSER 30BR103
TUSER 30BR106
TUSER 30BR112
TUSER 30BR114
TUSER 30BR123
TUSER 30BR127
TUSER 30BR128
TUSER 30BR130

Scheduling Through a Non-Control-M Production Control System


The primary advantage of invoking Control-D report decollating missions from the user exit of a
production control system is that scheduling criteria only have to be defined once (under the
production control system). The user does not have to update scheduling criteria of report decollating
missions each time they are updated in the production control system.
The following methods can be used to implement Control-D in data centers that use a production
control system other than Control-M:
Control-D scheduling is managed independently of the production control system. This method is
the same as managing the scheduling without any production control system.
The scheduling of report decollating missions under Control-D is controlled by the production
control system (described in the following paragraphs).

Operating a production control system and Control-D together in the same environment may cause
the following situations:
A job that is to be run by the production control system does not have any reports. It does not
need to be processed by Control-D.
A job that is to be run by the production control system does not yet have a report decollating
mission defined for the job.
A job is to be run by the production control system and decollated by Control-D.

To handle the situations mentioned above, the user must use some method of specifying
to the production control system user exit whether to issue a report decollating mission
for the job. The decision of how to mark a job is local for each installation and can be performed
using one of the following methods:
Specify a flag in a job scheduling parameter of the production control system that is
otherwise unused, or is used for another purpose (for example, the job description).
Use a list accessed by or internal to the user exit. The list must be modified whenever a new
report decollating mission is defined.

When the production control system user exit receives control and a decision is made to invoke a
report decollating mission, the user exit must activate program CTDRRQ. This program performs a
search for the report decollating mission.

The search is made for a member name with the same name as the job name and for the specified category.
The scheduling criteria of the Control-D report decollating mission (if any) are ignored. The report decollating
mission parameters are passed to Control-D User Exit CTDX001. This exit can alter the contents of the
decollating parameters or cancel the decollating mission. If the report decollating mission is not cancelled by
the exit, it is placed in the Control-D Active Missions file.

Usage Notes
When a report decollating mission is scheduled by invoking program CTDRRQ from a production
control system user exit, the following DD statements must be used:
STEPLIB – IOA LOAD library (if not included in the MVS Linklist)
DAAMF – Control-D Active Missions file
DAOUT – Output print file
DALOG – IOA Log file
DAGENUSR – Generic user names library (if this option is used at your site)

If the production control system does not have an appropriate exit or you do not want to use this
method to schedule report decollating missions, there is an alternative. Most production control
systems can produce a night plan report – a list of jobs to be executed during the night. This list can
be used as input to a program that schedules report decollating missions by invoking program
CTDRRQ.

The IOA SAMPLE library contains examples of production control system interfaces. Member $$INTER
in the IOA SAMPLE library contains an index to these interfaces. A user-written interface to CA-7
(UCC7) is not officially supported but is available. For more information about the CA-7 (UCC7)
interface and interfaces to other production control systems contact BMC Customer Support.
Job–Report Dependency
It is recommended that you establish dependency between the successful execution of the job under
the production control system and the processing of the job’s reports by the Control-D report
decollating mission. This dependency can be established using the prerequisite condition concept.
A prerequisite condition (for example, REP-M01AUPD-READY) must be specified in the IN parameter
of the Control-D report decollating mission. This condition is added to the IOA Conditions file by the
production control system after the job finishes executing successfully.
Use utility IOACND to add a prerequisite condition. This utility can be activated from
a production control system user exit
a specially defined successor task of the job under the production control system
a job step.

It is not mandatory to establish through dependency prerequisite conditions between the production
control system and Control-D. If dependency is not established, Control-D processes the reports when
the job enters the output queue. It is also possible to use manual prerequisite conditions for report
processing when required.

Printing Mission Management


Printing Mission Workflow
Printing Mission Definition
The following table describes the parameters (specified in the Online facility) that affect printing mission
workflow:

Parameter Description
BATCH Specifies whether a printing mission is
submitted as a batch job or as a subtask of
a Printers Control monitor. Optional.
Y (Yes) - Submit the current printing
mission as a batch job instead of executing
it as a subtask of the Printers Control
monitor.
N (No) - Execute the printing mission as a
subtask of the Printers Control monitor.
Default.
SKELETON Name of an existing member in the
Control-D SKL library. This member
contains the job skeleton or started task
skeleton for the batch job. Mandatory if
BATCH is set to Y (Yes).
FREE SYSOUT allocation mode. Determines
whether chunking is implemented and
when SYSOUT files are freed. Optional.
Valid values:
CLOSE - Regular chunking mechanism is
used. SYSOUT files are freed as soon as
they are printed. Default.
END - SYSOUT files are allocated as usual
but are not freed until the end of the batch
job. This value is available only if BATCH=Y
is specified.
TIMEOUT mm - Number of minutes within which the
printing mission must start. If the mission
does not start during the specified time
interval, it terminates NOTOK. Default: 5
minutes.

A printing mission is executed as follows:


The Control-D monitor makes a fast scan of the Active User file to locate all reports
that require printing by the specified printing mission. The result of this process is a Print
Plan file with an entry for each report to be printed.
In addition, the Control-D monitor selects an available logical printer for this printing
mission. When the printer is selected, control is passed to the Printers Control monitor (CTDPRINT)
if parameter BATCH was set to N (No), or to a batch job if parameter BATCH was set to Y (Yes).

Chunks are sent to the spool according to the value specified for parameters CHUNKSIZE and OVERRIDE.

After printing is completed, the status of each report entry from the Print Plan file is updated in the Active User
Report List file according to the printing completion status (for example, Printed or Not printed).

Processing a Batch Printing Mission


When the report is printed by a batch job, the Control-D monitor reads the member whose name is
specified in the printing mission (for example, PRTSKL) from the library referenced by DD statement
DADSKL of the Control-D monitor. This member contains a job skeleton or started task skeleton for
the batch job.
Note: Because the same library is used for printing, migration, backup and restore mission skeletons, the
names of all missions must be unique.

Preparing the Skeleton


To use a printing mission in batch mode, a skeleton member must be prepared in the Control-D SKL
library. The skeleton member can be either a job skeleton or a started task skeleton. For more
information, see sample member PRTSKL in the Control-D SKL library.
The skeleton member can contain parameters that are interpreted by the Control-D monitor. The following
table describes these parameters:
Parameter Description
%COM#% Number of the COM file record assigned to
this mission.
%MISSION% Mission name.
%CATEGORY% Mission category.
%GROUP% Mission group.
%OWNER% Mission owner ID.
%PRTY% Mission priority.
%DEST% Mission destination first specification.
%UDEST% Mission destination second specification

When Control-D finishes preparing the member for submission, control is passed to User Exit CTDX009. This
exit can modify the contents of the submitted job (by adding, deleting or modifying the JCL). The exit can
return the return codes described in the following table:

Return Code Description


0 Submit the job.
4 Do not submit the job. User Exit CTDX009
can request Control-M to submit the job.
Job submission can be done through
CTMAJO routines to ensure correct
handling of the print job under Control-M.
8 Do not submit the job. Terminate the
mission with NOTOK status
Synchronization between the printing mission and the Control-D monitor is achieved by creating a special
control subtask for each printing mission in the Control-D address space. (The same method is used to
synchronize the Control-D and Printers Control monitors.) This control subtask is synchronized with the
corresponding print task through the ENQ mechanism. The QNAME for this ENQ is taken from Control-D
installation parameter PRTSTC in member CTDPARM in the IOA PARM library.

If parameter PRTMON# is set to 0 in member CTDPARM, no Printers Control monitors are started. In this case,
parameter BATCH in the printing mission must be set to Y (Yes).

Printing mission abend or timeout does not cause termination of Control-D monitors. In such cases, the
printing mission terminates with a status of NOTOK

Advanced Scheduling Issues


Distribution According to Scheduling Dates
It is possible to organize printing missions so that each day’s printing management (that is, the
printing workflow) is the same. The simplest method is to specify DAYS=ALL in the Basic Scheduling
parameters of all printing missions. Once a day, when the New Day procedure calls program
CTDPRQ, all printing missions scheduled for the next 24 hours are placed in the Active Missions file.
This printing organization does not maximize the capabilities of Control-D. You can organize the printing order
in different ways for different types of days (for example, weekdays, weekends, end of the month, holidays).

Using Control-D, it is possible to define several copies of the same printing mission. Each copy is an
independent definition of the printing mission and can have different scheduling criteria, different runtime
criteria, different bundling instructions, different printing configurations, and so on.
Report Decollating and Printing Mission Dependency
We recommend that the printing of bundles by Control-D printing missions depend upon the successful
decollation of reports. Dependency can be established using the prerequisite condition concept. Parameter
OUT of the report decollating mission must specify a prerequisite condition that is referenced by parameter IN
of the printing mission.

Printer Control
The following table describes the methods that Control-D provides for printing bundles:
Bundles Method Description
One-Chunk Method Send entire bundle to the spool for
printing.
Multi-Chunk Method Send a specified number of lines at a time
to the spool for printing.
One-Outgroup Method Send one outgroup (containing all output
files produced by a printing mission) at the
end of that printing mission.

One-Chunk Method
Using this method, the entire bundle is sent to the spool for printing at one time. This method is activated by
specifying CHUNKSIZE=0 in the printing mission definition. If not specified in the printing mission definition,
CHUNKSIZE defaults to the value defined in installation parameter PRINTER. Specifying CHUNKSIZE=0
suppresses installation parameter OUTGRP.

If the bundle contains reports for different printing destinations, a separate chunk is created for each
destination but Control-D does not monitor the printing of the chunk. Control-D continues to send additional
chunks of the bundle to the spool.

Multi-Chunk Method
Control-D creates a new chunk each time the number of lines specified in the CHUNKSIZE parameter
is exceeded, or when printing characteristics of the reports change, whichever comes first (unless
CHUNKSIZE is specified as "0" as described in "One-Chunk Method"). CHUNKSIZE can be specified in
the printing mission definition. If it is not specified in the printing mission definition, CHUNKSIZE
defaults to the value defined during the installation process.
For the Multi-Chunk method, the value for the CHUNKSIZE parameter must be greater than 1. The
recommended value is 10000. If the CHUNKSIZE parameter is set to 999999, a new chunk will be
created only if at least one of the printing parameters is changed. In this case an entire report will be
issued to the same chunk.
Multi-Chunk processing provides the following major advantages:
the ability to print reports with different printing characteristics in the same bundle
the ability to control the size of the chunk so the spool does not become overloaded

Under the Multi-Chunk method, the printer must be assigned to Control-D using the following JES commands.

Under JES2
A printer is normally defined as DEST=LOCAL with one or more printing classes. To assign the printer to
Control-D, use a JES operator command to initialize the printer with the parameters described in the following
table:
Parameter Description
S=N No separator (because Control-D creates its
own banner pages).
R=destination This value is set during Control-D
installation for each printer.
SEPDS=N No dataset separator.
WS=-Q Select from all output classes on which
Control-D can print.

The following is a sample JES2 operator command:


$TPRT1,S=N,R=U1001,SEPDS=N,WS=(-W,-Q,-PRM,-LIM/R,-F,-UCS,-FCB)

One-Outgroup Method (JES2 Only)


It is possible to combine all the output files produced by a printing mission in one output group. Such
a method is useful to ensure that all files are printed together even if the JES printer is not dedicated
to Control-D and is used for other jobs as well as for Control-D reports. This method is also useful for
output files that are sent through NJE to a remote computer.
To combine the output files, perform the following steps:
1. Run the printing mission as a batch job. (Set parameter BATCH to Y (Yes) in the Printing Mission
Definition screen.)
2. Free all sysout files at the end of the job. (Set parameter FREE to END in the Printing Mission
Definition screen.)

Note the following:


• The CLASS, DEST, WTRNAME, PRMODE, and OUTGROUP parameters must be the same for all
reports included in the printing mission.
• The OVERRIDE parameter in the Printing Mission Definition screen can be used to assign uniform
values to parameters CLASS, DEST and WTRNAME.
• The PRMODE=PAGE and GROUPID=CONTROLD parameters must be defined in all OUTPUT
statements in the Printers Control monitor JCL procedure (CTDPRINT).
3. Set the USERSET parameter to YES in the OUTDEF statement in the JES2PARM member in the
SYS1.PARMLIB library.
4. Verify that the output class is a non-held class.

Opening and Closing Printers


During installation, a value of OPEN or CLOSE is assigned to parameter PRINTER for each printer. If
installation parameter PRINTER is set to OPEN for a printer, it is not necessary to "open" that printer
unless it has been "closed" by an operator command.
To display the entire list of open printers, issue operator command

F CONTROLD,STARTPRT
If a required printer was defined as CLOSE, issue the following operator command to "open" it:
F CONTROLD,STARTPRT,printername
where printername is the name assigned to the printer during Control-D installation.
The following message is displayed on the operator console from which the operator command was
issued:
CTD130I COMMAND "STARTPRT" ACCEPTED FOR PRINTER printername
To "close" a Control-D printer, issue operator command

F CONTROLD,STOPPRT,printername
When there are no Control-D bundles to print, you can reset the printer’s original parameters with a JES
command.

You might also like