ASG-PRO/JCL Reference Guide

371
ASG-PRO/JCL Reference Guide Version: 3.5.0 Publication Date: August 2021 ©2021 ASG Technologies Group, Inc. All rights reserved. The information contained herein is the confidential and proprietary information of ASG Technologies Group, Inc. Unauthorized use of this information and disclosure to third parties is expressly prohibited. This technical publication may not be reproduced in whole or in part, by any means, without the express written consent of ASG Technologies Group, Inc. All names and products contained herein are the trademarks or registered trademarks of their respective holders. ASG Technologies Worldwide Headquarters Naples Florida USA | asg.com | [email protected] 708 Goodlette Road North, Naples, Florida 34102 USA Tel: 239.435.2200 Fax: 239.263.3692 Toll Free: 800.932.5536 (USA only)

Transcript of ASG-PRO/JCL Reference Guide

Page 1: ASG-PRO/JCL Reference Guide

ASG-PRO/JCL Reference GuideVersion: 3.5.0

Publication Date: August 2021

©2021 ASG Technologies Group, Inc. All rights reserved.

The information contained herein is the confidential and proprietary information of ASG Technologies Group, Inc. Unauthorized use of thisinformation and disclosure to third parties is expressly prohibited. This technical publication may not be reproduced in whole or in part, by anymeans, without the express written consent of ASG Technologies Group, Inc.

All names and products contained herein are the trademarks or registered trademarks of their respective holders.

ASG Technologies Worldwide Headquarters Naples Florida USA | asg.com | [email protected]

708 Goodlette Road North, Naples, Florida 34102 USA Tel: 239.435.2200 Fax: 239.263.3692 Toll Free: 800.932.5536 (USA only)

Page 2: ASG-PRO/JCL Reference Guide

ContentsPreface v

About this Publication v

Worldwide Customer Support v

ASG Customer Care Expert Solution Services Portal (ACCESS) v

Product Support Policy vi

ASG Documentation/Product Enhancements vi

Reference Information 1

Base Product 3

Panel Conventions and Special Definition 3

Main Menu Panels 4

RTS Member Panels 6

Change Management Interfaces 16

ChangeMan 16

ENDEVOR Interface 17

Establishing the Interface 18

SCLM Interface 20

Configuration File 22

Overview 22

Setting Up the Configuration File 23

TCP/IP Started Task Operator Commands 33

Defining Multiple Listeners 33

DASD Management Interfaces 35

DFSMShsm Interface 35

DMS Interface 35

Database Interfaces 37

DB2 37

IMS 38

Directed Execution Panels 40

Remote Definitions Panels 40

Directed Execution Validation Panels 44

EPASS Panels 50

Generate Encrypted Password Panel 50

Default for 'Restrict to User and Machine' Fields Panel 51

i

Page 3: ASG-PRO/JCL Reference Guide

JMP Facility Panels 53

JCL Manipulation Program (JMP) Utility Panel 53

User Messages Panels 56

JES Submit Exit 61

Invoking a JES Submit Exit Interactively 61

Invoking a JES Submit Exit in Batch Mode 63

Library Interfaces 65

CA-LIBRARIAN 65

CA-PANVALET 65

Other Utility Interfaces 66

IAM 66

IEBGENER 67

IEBCOPY 67

IDCAMS 68

IEHPROGM 69

DFSORT 70

SYNCSORT 71

Private Procedure Utilities 73

DYNAPROC 73

CA-EZPROCLIB 73

PRO/JCL Edit Macros 75

JJ - Run PRO/JCL 76

JJDIRECT - Run PRO/JCL Via Directed Execution 80

JJSCAN - Run PRO/JCL 85

JJFE - Find Error 91

JJFEX - Find Extended Message 93

JJSUB 95

PRO/JCL System Panels 97

Administrator Panels 97

RTS and Reformatter Members Panels 101

Product Usage Panels 105

System Information Panels 109

STARTED TASK NOT AVAILABLE Panel 113

ERROR ENCOUNTERED Panel 114

Product Control Settings and Members 115

ii

ASG-PRO/JCL Reference Guide

Page 4: ASG-PRO/JCL Reference Guide

Run-Time Settings 115

Reformatter Settings 115

Reformatter Panels 117

Basic Reformatter Panels 117

Extended Reformatter Feature 133

Restart Interfaces 137

Run-Time Settings 138

Keyword Settings Panels 138

Run-Time Options 139

Interface Options 152

Format Options 168

JCL Listing Report Options 170

RTS Report Panel 175

Enabled Tables 176

Table Setting Panels 176

Table Settings 179

Scheduler Interfaces 205

ASG-ZEKE and OASIS 205

Workload Scheduler 209

CA-Jobtrac 214

CA-Driver Interface (Batch only) to CA-7 221

CA-7 223

CONTROL-M 227

ESP Scheduler Interface 230

TWS (OPC) - Interface 233

TWS (OPC) Tracker Support 242

Security Interfaces 245

Security Interface Functions 245

Customizing the Security Interface 246

Selection Exit 250

Preparing to use PRO/JCL Selection Exits 250

Selection Exit API Calls 253

Sample Batch Run 260

Shared PC File 262

Overview 262

iii

Page 5: ASG-PRO/JCL Reference Guide

PC File Synchronization 267

Web Browser Status Requests 269

Started Task 275

Started Task Commands 275

TCP/IP Started Task Operator Commands 277

Started Task Status Output 279

Starting Started Task at IPL-Time 280

Running Multiple Started Tasks 281

Tape Management Interfaces 282

ZARA 282

CA-1 (TMS) 283

CA-DYNAM/TLMS 283

CONTROL-M/Tape (CTLT) 284

DFSMSrmm - RemovableMedia Manager 285

NOTMS 286

User Utility Exit 287

Preparing PRO/JCL for User Utility Exit Usage 287

User Utility Exit API Calls 300

Validation Panels 329

PRO/JCL Validation Panel 329

JJ Edit Macro Settings Panel 333

JJDirect Edit Macro Settings Panel 335

Scheduler Popup 348

Output Libraries Popup 354

Batch JCL Panel 356

Specify TSO Hardcopy Output Panel 357

iv

ASG-PRO/JCL Reference Guide

Page 6: ASG-PRO/JCL Reference Guide

PrefaceThis documentation describes how to use our main ASG product ASG-PRO/JCL.

About this PublicationThis documentation describes how to use the different modules that form the ASG product ASG-PRO/JCL.

Worldwide Customer SupportASG provides support throughout the world to resolve questions or problems regarding installation, operation, or use ofour products. ASG provides all levels of support during normal business hours and emergency support during non-business hours.

You can access support information from ASG’s Support page.

ASG Third-party Support. ASG provides software products that run in a number of third-party vendor environments.Support for all non-ASG products is the responsibility of the respective vendor. In the event a vendor discontinuessupport for a hardware and/or software product, ASG cannot be held responsible for problems arising from the use ofthat unsupported version.

ASG Customer Care Expert Solution Services Portal (ACCESS)The ACCESS Portal provides online support. Log on to the portal with the following information:

Email ID = NNNNNNNNN

Site Password = XXXXXXXXXX

where:

NNNNNNNNN is your email ID supplied by ASG Product Distribution.

XXXXXXXXXX is your unique site password supplied by ASG Product Distribution.

If you do not have your logon information, contact your local support center. This table outlines the support responsetimes you can expect:

Severity MeaningExpected Support ResponseTime

1 Production down, critical situation Within 30minutes

2 Major component of product disabled Within 2 hours

3 Problem with the product, but customer has work-aroundsolution

Within 4 hours

4 “How-to” questions and enhancement requests Within 4 hours

v

Preface

Page 7: ASG-PRO/JCL Reference Guide

Product Support PolicyASG fully supports the current release and one previous release of each of its products. ASGwill temporarily support anolder release, for up to six months, to provide time for you to upgrade.

After programming support for a product release is withdrawn, ASGwill no longer supply new fixes for problems noraccept enhancement requests for that release. When a vendor announces the end of support for system software or ahardware configuration on which ASG products rely, ASGwill make a similar announcement regarding the support plansfor its products. ASG’s support for problems affected by system software release levels will terminate when the vendorno longer supports their hardware or software.

Announcements regarding support plans for various products can be found on ASG’s Web site.

ASG Documentation/Product EnhancementsUse ASG’s contact form to submit your product and documentation suggestions. Ensure that you include the name ofthe ASG product you are using.

vi

ASG-PRO/JCL Reference Guide

Page 8: ASG-PRO/JCL Reference Guide

Reference InformationThis documentation provides complete information for the ASG-PRO/JCL (herein called PRO/JCL) administrator and user.The documentation describes about various panels, how to use the panels, third-party interfaces, and various Exits.

This documentation consist of the following topics:

Topic Description

Base Product Explains the fundamentals of PRO/JCL, how it processes input, the differentoperating modes, and its operational elements.

Directed Execution Panels Explains how to run directed execution mode.

PRO/JCL System Panels Gives details about the product setup panels.

PRO/JCL Edit Macros Explains how to run PRO/JCL with Edit macros.

Validation Panels Gives details about the panels used in validation.

Reformatter Panels Gives details about the panels used in reformatting.

JMP Facility Panels Gives details about the JCLManipulation Program.

EPASS Panels Explains how to use the Electronic PASSword facility.

Product Control Settings andMembers Explains how to set up PRO/JCL for optimized use at your site.

Run-Time Settings Gives details about each Run-Time setting.

ChangeManagement Interfaces Describes about ChangeMan, ENDEVOR, and SCLM interfaces; explains howto establish the interface.

DASDManagement Interfaces Describes the interface to DFSMShsm and DMS.

Database Interfaces Gives information about database interfaces.

Library Interfaces Gives information about library interfaces.

Scheduler Interfaces Gives information about scheduler interfaces.

Security Interfaces Provides detailed information about security interfaces.

TapeManagement Interfaces Provides detailed information about tapemanagement interfaces.

Private Procedure Utilities Describes the interface to DYNAPROC and EZPROCLIB utilities.

1

Reference Information

Page 9: ASG-PRO/JCL Reference Guide

Topic Description

Other Utility Interfaces Provides information about other utility interfaces.

Selection Exit Describes how to set up a Selection Exit.

User Utility Exit Describes how to set up an User Utility Exit.

JES Submit Exit Describes how to set up a JES Submit Exit.

Restart Interfaces Describes about restart interfaces.

2

ASG-PRO/JCL Reference Guide

Page 10: ASG-PRO/JCL Reference Guide

Base ProductThis topic explains the fundamentals of PRO/JCL, how it processes input, the different operating modes, and itsoperational elements.

n Panel Conventions and Special Definition

n Main Menu Panels

n RTS Member Panels

Panel Conventions and Special DefinitionThis topic describes specially defined terms and common panel features used in PRO/JCL ISPF panels.

Panel ConventionsThe item File is available at the top of all panels. On some panels, other items, such as Sort and Settings, provideadditional function.

The figures in this Reference are representative of the PRO/JCL panels as displayed on an 24 x 80 screen. The values foroptions you seemight be different, depending upon the release of PRO/JCL installed and how the Product Administratorconfigures the product.

Special DefinitionsThe following terms are defined for their usage on PRO/JCL panels. Where needed, exceptions to these definitions arenoted in the descriptions of the panels.

Term Definitions

ADD Command line entry. Used to add a new item to a table.

Allowable Values This column and field contains the predefined values to be used for a specific option.

CANCELCommand line entry or File pull-down item. Used to exit a panel without saving anychanges.

Default The value of a setting in a DEFAULT RTS or Reformatter member.

DescriptionOptional description for a Run-Time Settings (RTS) or Reformatter Member. It can be usedto providemore information about themember.

End/ExitPull-down item from File. Exit acts the same as End. Exit returns to the previous panel. Ifthere are changes pending, PRO/JCL saves the changes.

File Action bar item. For most panels, contains the Exit command.

Help Action bar item used to get more information for the panel. On theMain Menu, use the

Special Definitions

3

Base Product

Page 11: ASG-PRO/JCL Reference Guide

Term Definitions

About PRO/JCL. Choose this item to view PRO/JCL product copyright and releaseinformation.

MemberContains name of RTS or Reformatter member. The name is 8 characters or less. Whenenterable, an * is a valid value and PRO/JCL displays a list of RTS members.

OwnerThe user ID of the person who created the RTS member, Reformatter member or SelectionList. This field is always display only. An Administrator or owner can modify or delete anRTS or Reformatter member. Selection Lists can only bemodified or deleted by the owner.

Rfmtr Mbr The name of the Reformatter member.

RTS RTS is the acronym for “Run-Time Settings”.

RTS Mbr This field shows the name of the active Run-Time Settings Member.

RTS Value This column contains the value for an option or a table entry from the active RTS Member.

Select (Sel) commands

There are several possible commands available for the Sel (Select) field. Availablecommands are listed on the panel where they can be used. Themost common Selectcommands are used to:

l / -- Select an item when selection is the only action.

l S -- Select an item for editing or viewing.

l R -- Repeat (or copy) an item.

l E -- Edit an item or part of an item (description).

l D -- Delete an item.

l M--Move an item.

l A -- After; use with Move.

l B -- Before; use with Move.

Main Menu PanelsThis topic describes the JCLManagement Solutions Menu panel, ASG-PRO/JCLMain Menu panel, and the About ASG-PRO/JCL information panel.

JCL Management Solutions Menu Panel

This is the ASGmain product panel. It contains options to:

l Access PRO/JCL or INFO/X.

4

ASG-PRO/JCL Reference Guide

Page 12: ASG-PRO/JCL Reference Guide

If you are not licensed for INFO/X, the JCL Management Solutions Menu shown JCLManagement Solutions Menu panel will resemble the ASG-PRO/JCL Main Menu shown inASG-PRO/JCL Main Menu panel.

l Display password information.

l Display system information.

JCL Management Solutions MenuOption ===>

Date : 08/16/2017Time : 10:01Release: Rnnn

1 ASG-INFO/X Display Cross Reference Information2 ASG-PRO/JCL Validate/Manipulate JCL3 Password Display Password Information4 System Info Display System InformationX Exit Exit

JCL Management Solutions Menu panel

Fields

Field Description

Date The current date.

Time The current time.

Release The release number of PRO/JCL running.

JCL Management Solutions panel fields

The panel shown here is representative of what the Product Administrator sees. Users might see adifferent selection of options based on settings established by the Product Administrator. Forexample, if the user is not an administrator the Password option is not available.

ASG-PRO/JCL Main Menu Panel

This is themain product panel. It contains options to:

l Validate JCL and control statement members.

l Establish user access to product functions.

5

Main Menu Panels

Page 13: ASG-PRO/JCL Reference Guide

ASG-PRO/JCL Main MenuOption ===>

Date : 08/21/2017Time : 13:00Release: Rnnn

1 Validation Use ASG-PRO/JCL to Validate/Manipulate JCL2 Reformatter Edit/View JCL Reformatter Settings3 JMP Utility Develop JCL Manipulation Programs4 Directed Execution Validate/Manipulate JCL on Remote Machine5 Machine Definitions Edit/View Machine Definitions6 EPASS Generate EPASS7 Validation - TWS Use ASG-PRO/JCL to Validate TWS (OPC) JCL8 Administration Define Product Access and Default SettingsX Exit Exit

ASG-PRO/JCL Main Menu panel

Fields

Field Description

Date The current date.

Time The current time.

PRO/JCL Main Menu fields

The panel shown here is representative of what the Product Administrator sees. Users might see adifferent selection of options based on settings established by the Administrator.

About ASG-PRO/JCL Panel

This panel contains the copyright and trademark notices for ASG. To access, use the About choice from the Help actionbar item on theMain Menu.

RTS Member PanelsThis topic describes the panels that create, edit, activate, and delete RTS members.

When active, a site-created RTS member is concatenated ahead of the DEFAULT RTS member. Its settings overridesettings that conflict with corresponding settings in the DEFAULTmember. If a setting in the activemember does nothave a value, the value in the DEFAULTmember is used.

Edit/View Run-Time Settings Panel

Use this panel to customize Run-Time Settings, activate a different RTS member, and maintain RTS members.

Choose the RTS Member choice from the Settings action bar item on the PRO/JCL Validation and from the JJ Edit MacroSettings panel. Returning from this panel activates themember named in the RTS Mbr field.

This panel lists the sub-group names of Keyword and Table settings and provides means to activate, create, edit, anddelete RTS members.

6

ASG-PRO/JCL Reference Guide

Page 14: ASG-PRO/JCL Reference Guide

File Settings------------------------------------------------------------------------------

PRO/JCL Edit/View Run-Time Settings Row 1 to 26 of 26Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ASGUSR Updated By: ASGUSR on: 09/08/2017Description . . .

1 Run-Time Options Set Run-Time Option Values2 Interfaces Select Data Management Interfaces3 Format Options Specify the Format of the Reports4 JCL Listing Report Set Content for the JCL Listing5 RTS Report Set Specifications for the RTS Report6 Enabled Tables Enable or Disable Options Tables7 Devices Map Unit Names to Generic Device Types8 PROC Exclude Exclude specified PROCs from Processing9 DD Exclude Exclude specified DDs from Processing10 DDnames Specify DDnames Required for Programs11 Control Card Limit Control Card Printing12 Utility Alias Map Local Utilities to Generic Utilities13 Data set Preference Search specified Data sets First14 User Utilities Setup User Utilities Exits15 Control Card DSNs Get Control Cards From this Data set16 DFSMShsm MCDS Specify DFSMShsm MCDS Name17 IMS ACB Datasets Specify IMS ACB Datasets18 Messages Customize Error Message Handling19 Return Codes Assign Return Codes and Abend Codes20 Tape Out of Area Codes Treat Tape Out Of Area Codes as on site21 CA-Jobtrac CA-Jobtrac DATELnn data sets22 Jesprocs Specify Jesproc concatenation Lists

Edit/View Run-Time Settings panel

Action Bar

Option Description

Open Displays a list of RTS members to edit or activate.

New Start a new RTS member.

Save Saves the current RTS Member.

Save As Saves the current member with a newmember name. The DEFAULT RTS member cannot becopied with the Save As mechanism to create newmembers.

Delete Deletes an RTS member.

Cancel Prompts to cancel changes before returning to Validation.

Exit Prompts to save changes before returning to Validation.

Run-Time Setting panel File pull-down items

The Settings action bar item is discussed in Run-Time Settings.

7

RTS Member Panels

Page 15: ASG-PRO/JCL Reference Guide

Fields

Field Description

RTS Mbr The name of the active RTS member. Enter a name to activate a different member.

Description The description for an RTS member. Changes made to the description in this field aresaved with themember from this panel.

Run-Time Setting panel fields

l The first time this panel is displayed after installation, the DEFAULT RTS member is active. In this special first-time case, and any time the DEFAULT RTS member is edited, PRO/JCL displays themessage when themember is opened for edit:

'Save As' is not permitted for the DEFAULT RTS member.

l Any time an RTS member is not found, PRO/JCL activates the DEFAULT RTS member. PRO/JCL displays thismessage:

Could not load RTS member MYRTS. DSS02012A - Could not find PRO/JCL alternaterun options member 'MYRTS'.

l Users, who do not have capability to change Run-Time Settings, see instead the View Run-Time Settings panel(View Run-Time Settings panel).

View Run-Time Settings Panel

This panel lists the Sub-group names of Keyword and Table Options for viewing-only. This panel is displayed when a usertries to open a member that is already open for edit by another user.

8

ASG-PRO/JCL Reference Guide

Page 16: ASG-PRO/JCL Reference Guide

File------------------------------------------------------------------------------

PRO/JCL View Run-Time Settings Row 1 to 26 of 26Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ASGUSR Updated By: ASGUSR on: 09/09/2017Description:

1 Run-Time Options Set Run-Time Option Values2 Interfaces Select Data Management Interfaces3 Format Options Specify the Format of the Reports4 JCL Listing Report Set Content for the JCL Listing5 RTS Report Set Specifications for the RTS Report6 Enabled Tables Enable or Disable Options Tables7 Devices Map Unit Names to Generic Device Types8 PROC Exclude Exclude specified PROCs from Processing9 DD Exclude Exclude specified DDs from Processing10 DDnames Specify DDnames Required for Programs11 Control Card Limit Control Card Printing12 Utility Alias Map Local Utilities to Generic Utilities13 Data set Preference Search specified Data sets First14 User Utilities Setup User Utilities Exits15 Control Card DSNs Get Control Cards From this Data set16 DFSMShsm MCDS Specify DFSMShsm MCDS Name17 IMS ACB Datasets Specify IMS ACB Datasets18 Messages Customize Error Message Handling19 Return Codes Assign Return Codes and Abend Codes20 Tape Out of Area Codes Treat Tape Out Of Area Codes as on site21 CA-Jobtrac CA-Jobtrac DATELnn data sets22 Jesprocs Specify Jesproc concatenation Lists23 Library Type Specify Panvalet and Librarian libraries24 Contention Permitted DSNs Wait for these data sets if necessary25 DB2 Group Attach Specify DB2 Group Attachment Name26 Trace Internal Trace Facility

View Run-Time Settings panel

Select RTS Member PopupThis panel lists the RTS members from which you select onemember to activate or delete. Each row of this popupcontains information for an RTS member.

Select RTS MemberRow 1 to 3 of 3

Command ===> Scroll ===> CSR

Current RTS Mbr: *Owner : Desc:

Sel Member Owner Description Updated on--- -------- -------- --------------------------- ----------

DEFAULT ASGUSR 07/03/2017JES3OPT ASGUSR 07/03/2017MULTI2 ASGUSR 07/03/2017

***************************** Bottom of data ******************************

Select RTS Member popup

9

RTS Member Panels

Page 17: ASG-PRO/JCL Reference Guide

Columns

Column Description

Update The date on which themember was last updated.

Select RTS Member panel fields

l The list is in ascending alphabetical order by member name.

l Selecting a member in this popup completes the action begun on the calling panel:

o If you chose Open from the Edit/View Run-Time Settings panel, then selecting a member here activatesthemember.

o If you chose Delete, then selecting a member in this popup sets themember up to be deleted; PRO/JCLdisplays the Delete RTS Member confirmation popup.

New RTS Member PopupUse this popup to create a newRTS member.

New RTS Member

Command ===>

Fill in unique Member name and optional member description andpress Enter or End to create the member.Enter CANCEL to exit without creating a new member.

Member : (* for list)Description:

New RTS Member popup

Fields

Field Description

MemberMember name is required. To view a list of all existing RTS member names, enter * in thisfield.

Description Description for describing themember is optional.

New RTS Member popup fields

l The RTS member name entered in this popup must be unique; if not, PRO/JCL displays themessage“Member already exists” in the upper right corner of this popup.

10

ASG-PRO/JCL Reference Guide

Page 18: ASG-PRO/JCL Reference Guide

l When creating an RTS member, always use the Newoption from the File menu. The DEFAULT RTS member isthe only member that cannot be copied with the Save As mechanism to create newmembers. After saving anew or copied member, it becomes the activemember.

l If you choose not to save a newmember and return to either the PRO/JCL Validation or the JJ Edit MacroSettings panels, PRO/JCL activates the DEFAULT RTS member.

Delete RTS Member Popup

This popup confirms the deletion of the named member. Press Enter to delete themember; enter Cancel to stop therequest to delete.

Delete RTS Member

Command ===>

Confirm RTS member JRTS

Press Enter to DELETE the member.Enter CANCEL to keep the member.

F1=Help F3=Exit F12=Cancel

Delete RTS Member popup

Product Administrators may delete any user-created RTS member.

Save Run-Time Settings Popup

PRO/JCL displays this popup to prompt you to save changes to an RTS member before leaving the Edit/View Run-TimeSettings panel. PRO/JCL displays this popup for any unsaved changes to the DEFAULT RTS member.

Save Runtime SettingsCommand ===>

You made changes to the current settings that are not saved.

RTS Member : RTSMBR01Description:

Press Enter or End to save and return.Enter CANCEL to exit without saving.

Save Run-Time Settings popup

l If you attempt to save changes to a member you do not own or you are not an Administrator, PRO/JCLdisplays Save As Run-Time Settings popup. The Save As action is not permitted for the DEFAULT RTSmember.

l PRO/JCL displays the Save popup depending upon a setting on the Edit/View Run-Time Settings panel. Fromthe Settings pull-down, select the Confirmation Save Option.

11

RTS Member Panels

Page 19: ASG-PRO/JCL Reference Guide

PRO/JCL Confirmation OptionCommand ===>

Enter "/" to select option:

/ Display RTS Save Confirmation panel

Confirmation Save Option popup

Type “/” and press Enter or Exit PF key to turn on the Confirmation Save Option popup; type a blank andpress Enter or Exit PF key to turn off the popup.

l PRO/JCL displays this message:"You have started a new member. Do you wish to save the new settings?"

after you start a newmember and you take action to activate a different member without firstsaving the newmember. This action includes: using File pull-down choices Open or New from theEdit/View Run-Time Settings panel to open or start a newmember; or using File pull-down choiceExit or, the Exit PF key or command Exit to exit a member and revert to using the activemember.The File pull-down choices are:

Open Save As ExitNew DeleteSave Cancel

Save As Run-Time Settings Popup

Use this popup to save an RTS member with a new name.

Save As Run-Time Settings

Command ===>

Type a unique member name and optional description in the fields below.New RTS Member:Name: Owner: ASGUSR Desc: JES3 STATEMENT CHECKING

Current RTS Member:Name: JES3OPT Owner: ASGUS1 Desc: JES3 statement checking

Press Enter or End to save and return.

Save As Run-Time Settings popup

Fields

Field Description

NewRTS Member

Name Name under which to save the changes to RTS member. Type an * in the field to view a list

Save As Run-Time Settings popup fields

12

ASG-PRO/JCL Reference Guide

Page 20: ASG-PRO/JCL Reference Guide

Field Description

of existing RTS members.

Description

Current RTS Member

Name Name of RTS member you are editing.

Description Optional description for RTS member you are editing.

l PRO/JCL displays the Save As popup if there are changes pending for the current member and you are notan Administrator.

l When editing the DEFAULT RTS member PRO/JCL displays this message:'Save As' is not permitted for the DEFAULT RTS member.

Replace RTS Member Popup

PRO/JCL displays this popup when themember name you specified in the Save As popup is already in use.

Replace RTS member

Command ===>Member 'RTSMBR01' exists. Do you want to overwrite it?Existing RTS Member:Name: RTSMBR01 Owner: ASGUSR Desc:

Press Enter or End to save and return.Enter CANCEL to exit without saving.

Replace RTS Member popup

Fields

Field Description

NameName of RTS member in which you want to store new settings. Type an * in the field toview a list of existing RTS members.

Description Description, for the RTS member which is to be replaced (optional).

Replace RTS Member fields

Cancel Changes Popup

PRO/JCL displays this popup when you cancel from the Edit/View Run-Time Settings panel with unsaved changes. PressEnter or End to cancel these changes; or press <Cancel> to return to the Edit/View Run-Time Settings panel.

13

RTS Member Panels

Page 21: ASG-PRO/JCL Reference Guide

Cancel Changes

Command ===>

You made changes to the current settings that are not saved.Do you wish to cancel those changes?RTS Member : JES3Description: JES3 STATEMENT CHECKING

Press Enter or End to CANCEL changes.

Cancel Changes popup

Alternate RTS Member Selection

PRO/JCL displays this popup when a user tries to edit an RTS member while another user is already editing it.

Alternate RTS Member Selection

Command ===>

RTS Member Z is currently in use.

Please choose one of the following:

1. View current RTS Member2. Create a new RTS Member3. Select another RTS Member4. Copy current RTS Member to a new member

Press END or enter CANCEL to exit.

Selection:

Alternate RTS Member Selection popup

Fields

Field Description

RTS Member The name of themember currently in use.

Selection

The action you want PRO/JCL to take:

l View the desired member (in read-only mode).

l Create a newmember with PRO/JCL's default settings values.

l Open a different member.

l Make a copy of the desired member in a newmember.

Alternate RTS Member Selection panel fields

Select RTS Member List Popup

PRO/JCL displays the list of RTS member names when you type an * in the RTS Member field on the Save As Run-TimeSettings popup. This popup contains a scrollable list of the RTS members.

14

ASG-PRO/JCL Reference Guide

Page 22: ASG-PRO/JCL Reference Guide

---------------------------- Select RTS Member ----------------------------Row 1 to 5 of 5

Command ===> Scroll ===> PAGE

Current RTS Mbr: *Owner : Desc:

Sel Member Owner Description Updated on--- -------- -------- --------------------------- ----------

DEFAULT ASGUSR 02/01/2017USER002 ASGTST PASSWORD TRACING 02/01/2017JES3OPT ASGUS1 02/01/2017MULTI2 ASGUS3 02/01/2017USER1 ASGUS2 RTS Member for TW 02/03/2017

***************************** Bottom of data ******************************

Select RTS Member List popup

Columns

Column Description

Update This column contains the date themember was most recently updated. ProductAdministrators may not delete values from the DEFAULT RTS member, only change them.

Select RTS Member popup Columns

15

RTS Member Panels

Page 23: ASG-PRO/JCL Reference Guide

Change Management InterfacesThis topics describes about ChangeMan, ENDEVOR, and SCLM interfaces; explains how to establish the interface.

n ChangeMan

n ENDEVOR Interface

n SCLM Interface

ChangeManASG provides a ChangeMan interface which makes successful PRO/JCL Validation a prerequisite to promoting JCLmembers and cataloged procedures. The interface supports complete JCL validation, including compliance with in-housestandards.

Prepare the Interface

To establish the interface

1. Set up ChangeMan Types for JCL and PROCs. ChangeMan supplies types JCL and PRC. The processing for thesetypes is fixed as copy-only. Set up new Types such as JCP and PRP, for JCL and PROCs. The “LIKE” field in theLibrary Type Administration panels must be blank. Invoke the CMN$$JCP and CMN$$PRP skeletons for the newTypes.

2. Copy the Skeletons to ISPSLIB. Copy the three ChangeMan skeletons CMN$$JCP, CMN$$PRP, and CMN$$SCPfrom SPJMSAMP into an ISPF skeleton library available to ChangeMan (that is, a PDS allocated to DDNAMEISPSLIB during a ChangeMan session).

CMN$$SCP is an ASG-supplied skeleton containing PRO/JCL JCL which is IMbedded in CMN$$JCP andCMN$$PRP. It may be renamed if the

")IM CMN$$SCP"

lines are changed in the IMbedding members.

3. Modify CMN$$SCP.

The JMP parameter is used when a PRO/JCL JMP standards program needs to be invoked. Specify theprogram name to make standards validation a prerequisite to successful JCL promotion. If site-writtenstandards do not need to be enforced, remove the STATEMENT.

Change the text '--RTS Member--' to the desired RTS member name.

4. Modify CMN$$JCP and CMN$$PRP. Find this line in each member:)CM CHANGE --HLQ-- TO THE DATA SET CONTAINING THE PR1PROC MEMBER

and according to the instructions there, replace --HLQ-- in the line immediately following it:)SET HLQ = --HLQ--

16

ASG-PRO/JCL Reference Guide

Page 24: ASG-PRO/JCL Reference Guide

ENDEVOR InterfaceThe PRO/JCL ENDEVOR interface facilitates the validation, standardization, reformatting and intelligent changing of JCLrelated objects managed within ENDEVOR, during the 'ADD', 'MOVE', and 'UPDATE' processes. The ENDEVORAdministrator can add exits to the ENDEVOR process and can use the ASG-supplied PROCs, ENDEVOR1 and ENDEVOR2, assamples in adding PRO/JCL validation to the promotion process.

Typically, PRO/JCL is added after the changes to a JCL member (the deltas) are stored internally.

17

ENDEVOR Interface

Page 25: ASG-PRO/JCL Reference Guide

The Endevor process

Endevor Move, Add or Update function

Endevor Processor Group Invoked

Endevor copies the internally-stored object to a file

PRO/JCL validates JCL and applies standards

Optional PRO/JCL changing and reformatting

Copy validated, reformatted, standardized and changed objects to local stage PDS libraries

New Endevor Stage

Current Endevor Stage

Endevor ProcessPRO/JCL

RC= 0?NO

Fail processor and do not promote object

Current Endevor Stage

RC > threshold?

NO

YES

YES

Establishing the Interface

To establish the interface, complete these tasks

1. Integrate the sample processor source code into the ENDEVOR environment.

2. Modify the sample processor source code to meet the site's requirements.

18

ASG-PRO/JCL Reference Guide

Page 26: ASG-PRO/JCL Reference Guide

3. Build an ENDEVOR processor using the source as input.

Integrate the Processor Source CodeIntegrate the appropriate ENDEVOR sample processor sourcemember from the SPJMSAMP into the dataset containingthe ENDEVOR processor source:

l If validation only is required, copy ENDEVOR1.

l If validation with change/reformat is required, copy ENDEVOR2.

Modify the Processor Source CodeThe sample processor source includes steps for the ASG software functions. Delete the steps that are not needed by thepromotion process.

Step JUTINAPJUTINAP The first statements in the ENDEVOR1member are the processor variable assignments. Many of these will beinternal ENDEVOR variables such as &C1ELEMENT which is the name of the ENDEVOR element (job/proc/cclib) that youare promoting, others are &type, &stage). These should be left as is and will already be present if you are updating anexisting processor group.

These variables are also used and can be tailored as required:

&ELMOUT This is a temporary dataset that the Element is copied into for later processing by PRO/JCL

&TODSN This is only used when PRO/JCL is making changes to the objects. It is a temporary dataset used as the outputrepository dataset for PRO/JCL

&TOLIB This is the dataset written to at the end of the process and constitutes the 'live' staging library for objects in thatparticular environment. Consult the Endevor documentation for complete details about the parameters for thisstatement.

Step INITBC1PDSIN Allocate temporary datasets with the BC1PDSIN program. Consult with Endevor technical information fordetails.

Step CONWRITEAllocate the base and change (delta) libraries and copy the internally stored code into a temporary dataset for laterprocessing. Consult the Endevor technical information for details.

Step PROJCL (execute validation)The PROJCL statement sets the proper environment for the PRO/JCL program and executes the program. The PARMparameter of this statement contains essential parameters for PRO/JCL invocation. Modifications to these are necessaryonly for consistency with other PRO/JCL invocation styles. See the topic - Batch Execution of PRO/JCL in the Userdocumentation, for details about the invocation of PRO/JCL with PR1PROC.

DD STEPLIB The DD STEPLIB specifies the name of the PRO/JCL load library. Delete this statement if PRO/JCL is installed ina link-listed library.

INPUT Statement The input statement takes values from the JUTINAP statement.

19

Establishing the Interface

Page 27: ASG-PRO/JCL Reference Guide

Step PROJCL2(Reformat and Change: SPJMSAMP member ENDEVOR2 only)

The PROJCL statement sets the proper environment for the PRO/JCL program and executes the program. The PARMparameter of this statement are essential parameters for PRO/JCL invocation. Modifications to these are necessary onlyfor consistency with other PRO/JCL invocation styles. See the topic - Batch Execution of PRO/JCL in the Userdocumentation, for details about the invocation of PRO/JCL with PR1PROC.

Step BSTCOPYThis statement copies the element to the source output library.

Step CONLISTThis statement prints the listing if the BSTCOPY step fails.

Delete StepThis step is not represented the sample JCL. If PRO/JCL forces the ENDEVOR processor to fail due to bad standards orvalidation errors, a step can be inserted that cleans up the new stage with a delete of the appropriate datasets.

Build an ENDEVOR ProcessorUsing the revised sample source code, build an ENDEVOR processor to execute as part of the promotion process. Thecompletion of this step depends on how the site installed ENDEVOR.

SCLM InterfaceThe SCLM Interface is a REXX EXEC that runs PRO/JCL interactively using DSSIAPIs. This EXEC can be used to interfacewith change control systems in lieu of a batch scan, and might be called by any CLIST or EXEC to provide validationservices.

Establishing the Interface: Procedure Overview

1. Modify your EXECPRO1 to reflect your site's SCLM project definitions.

2. Modify your SCLM project definition to invoke PRO/JCL.

3. Build test JCL.

4. Run test JCL through the SCLM promote process using the new project definition.

5. After successful testing of the PRO/JCL verification process, replace the production project definition memberwith the newmember which invokes PRO/JCL.

To modify your call

1. Create a new SCLM project definition member. This will bemodified to invoke the PRO/JCL verification process.(Locate the current SCLM project definition member and create a new copy using the existing SCLM projectdefinition member as a model).

2. Find the current name of the project definition member, referred to as the PRJ_DEF parameter, and change it tothe new project definition name.

3. Add the following fields within the FLMCNTRL macro:PRMEXT1=EXECPRO1,PEXT1CM=TSOLNK,PEXT1DS=DSSI.EXEC.LIB

20

ASG-PRO/JCL Reference Guide

Page 28: ASG-PRO/JCL Reference Guide

If PRMEXT1 is already coded, use the PRMEXT2, PEXT2CM, and PEXT2DS parameters.

4. Assemble and link the new project definition. Ensure that the exec, EXECPRO1, is moved into the library specifiedin “PEXT1DS”. Modify the EXECPRO1 exec so that the appropriate parameters are passed to PRO/JCL.

Possible changes include:

TYPE - Refers to the suffix of the input library. This should be changed to match the value of your JCL library.

D0SVDSNM - This sets up the entire input library name. If you do not use the IBM default ofproject.group.type, you should change this name.

EXECPRO1 - Returns a return code back to SCLM. Because SCLM will not promote anything with a returncode greater than 0, EXECPRO sets the return code to 0 if the return code from PRO/JCL is 4 or less.

For more specific details on setting up the SCLM Promote User Exit Routine, refer to IBM's ISPF SCLM ProjectManager's Guide, SC28-1319-01.

For EXECPRO1 to call PRO/JCL, it must be invoked from a valid ISPF environment and all of thePRO/JCL libraries must be allocated using either an ALLOC EXEC or in the LOGON PROC.

Purpose of EXECPRO2

EXECPRO2 is, primarily, themediator between EXECPRO1 and PRO/JCL. EXECPRO2 performs the following functions:

l Validates the supplied input parameters.

l Sets up the PRO/JCL environment.

l Runs the PRO/JCL validation.

l Call 100 Setup Defaults - Sets up the default parameters for the EXEC.

l Call 200 Initialize - Initializes a valid session to communicate with the PRO/JCL started task. If anerror occurs at this point, the cleanup routine should be performed and the EXEC will terminate with a returncode of ’20’.

l Check 400 Process Foreground - Allocates the SJL dataset, sets up the control cards, andperforms the validation. If the JMP is passed as an input parameter, it is executed in this step. Thecompletion code is then stored in the scan rc parm and the return code is returned from the validation tothe calling program.

l Call 600 Cleanup - This routine ends the session and ensures that no sessions are left active.

21

SCLM Interface

Page 29: ASG-PRO/JCL Reference Guide

Configuration FileThis topic describes about the JPCONFIG configuration file and TCP/IP parameters that define the location of, and accessto, a shared PC File.

n Overview

n Setting Up the Configuration File

n TCP/IP Started Task Operator Commands

n Defining Multiple Listeners

OverviewThe JPCONFIG configuration file is a flat XML file that defines the location of, and access to, a shared PC File. Theconfiguration file contains information that needs to be accessed before the PC File becomes available, as well asdefinitions for the auto-started listeners. The only way to auto-start listeners and define remote PC Files is throughJPCONFIG.

For the Started Task and other batch jobs, JPCONFIG is a DD name that points to the SPJMCNTL dataset.

The JPCONFIG file contains following records:

configuration An XML format record (separate start and end tags).

remotepcfile

Defines the remote IP address and remote port for a listener on a server that is subordinateto a primary PC File. The record contains an optional contoken that can be used as a"password" so the server can restrict access to its local PC File.

startlistener Specifies the parameter(s) of the listener(s) auto-started by the DSSISTC Started Task.

restrictUsed to restrict access to a listener to PC File-only, or to restrict access to the PC File using acontoken other than the generic listener contoken. A listener can havemultiple restrictrecords.

tracerecord

Defines a list of Trace Entries the listener enables upon startup. The listener passes this list toother network servers, which then enable those traces on startup as well. There is a limit ofone tracerecord per listener. Note: Contact ASG Customer Support for assistance beforeusing this record.

XML Syntax

The JPCONFIG file uses XML syntax to define a list of valid tags with the following properties:

l Each tag is preceded by a < (less than sign) and terminated by a /> (forward slash, greater than sign).

l All keywords must be lowercase.

l All values for the keywords must be enclosed in quotes.

22

ASG-PRO/JCL Reference Guide

Page 30: ASG-PRO/JCL Reference Guide

l All name-value pairs must contain no spaces in the pairing and must be separated from other name-value pairsby a space.

Comments

Comments can be included in the configuration file with the following syntax:

Start Tag <!--

End Tag -->

For example:

<!-- This configuration file is used to initialize a server that owns a PCFILE -->

Determining Port Availability

PRO/JCL uses “listeners” to enable the TCP/IP connectivity necessary for Directed Execution, and shared PC Filecommunication. A listener is a program that listens on a specific TCP/IP port for a connection request from a client. Bydefault we recommend port 1265, which is registered to ASG.

Port 1265 can be used by your data center for any other process. To start a listener on this port you must first determinewhether the port is available. If port 1265 is unavailable, you will need to specify a different port.

Availability Commands

When a port is unavailable, it will be either “in use” or “reserved”.

To determine if port 1265 is currently in use

n Issue the following TSO command:

NETSTAT

To determine if port 1265 is reserved

n Issue the following TSO command:

NETSTAT PORTLIST

If port 1265 is listed, you will need to either have it removed from the list or choose a different port for the listener.

If you try to start a listener against a port that is reserved or in use, PRO/JCL issues the followingerror message:DSS06519E - TCP/IP Error: could not bind to local IP address INADDR_ANY with port 1265, Reason:'1115', RC='EDC8115I Address already in use.'.

Setting Up the Configuration FileImplement the following JPCONFIG records, as required. The JPCONFIG for both the started task and PR1PROC is initiallyset up by the Installation Interface. Modifications can bemade to these files by the user, but care should be takenbecause each time the Installation Interface generates JCL it modifies the SPJMCNTL(STCONF) and SPJMCNTL(BATCONF)

23

Setting Up the Configuration File

Page 31: ASG-PRO/JCL Reference Guide

files. If modifications are planned, ASG recommends making copies of the STCONF and BATCONF members, renamingthem, and pointing the started task JCL and PR1PROC JCL to the new files. It is important to keep these two sets of files insync if the Installation Interface is run again.

Configuration

The JPCONFIG file contains one or more configuration records, each with a start tag and an end tag. A <configuration>start tag must be paired with a </configuration> end tag, and all specific definitions (such as <startlistener>,<remotepcfile>, etc.) must be within a <configuration></configuration> pair.

If desired, an smfid keyword can be added to the configuration record(s). The smfid keyword is used to identify aparticular machine, and enables the JPCONFIG file to be used in multiple locations (such as in a shared DASDenvironment).

The saf keyword is used to specify Security Interface option for PRO/JCL and the possible values are ON, OFF and USER.See the topic - Customizing the Security Interface in the System Administrator Tasks documentation for furtherinformation.

Start Tag

<configuration smfid="smfid" saf=”ON”>or

<configuration saf=”ON”>

smfid

Specifies the unique identity of a machine using a shared PC File. In the case ofmultiple machineswith different remotepcfile or startlistener records the JPCONFIG file should contain multipleconfiguration records, each with a different smfid keyword parameter.

saf

Specifies the option for Security Interface. It can be one of the following: ON/OFF/USER.

(See the topic - Customizing the Security Interface in the System Administrator Tasks documentationfor further information.)

End Tag </configuration>

If the length of the smfid is less than four characters, pad the smfid with spaces to make it fourcharacters. For example, if the system name is TST, specify smfid="TST ".

ExampleSample JPCONFIG file to be used in multiple locations:

<configuration smfid="SVR1" saf=”ON”><startlistener port="1265"/>

</configuration><configuration smfid="SVR2" saf=”ON”>

<remotepcfile ipaddress="SVR1" port="1265"/></configuration><configuration saf=”ON”>

<startlistener port="1266"/></configuration><configuration smfid="SVR3" saf=”ON”>

<startlistener port="1267"/></configuration>

24

ASG-PRO/JCL Reference Guide

Page 32: ASG-PRO/JCL Reference Guide

In this example, when the JPCONFIG file is read on SVR1 a listener with port 1265 is started. If the file is read on SVR2, itwill be a PC File secondary to SVR1 on port 1265. If the file is read on any other location, it will start a listener on port1266.

Note that if this JPCONFIG files is used on machine SVR3 a listener will NOT start on port 1267. Themissing smfid on thethird definition will cause a “hit” there and the listener will be started on port 1266. The definition for smfid=”SVR3” willnever be accessed.

remotepcfile

If a server/listener is to be a secondary to another PC File, this record defines the remote IP address and port of theprimary PC File. A contoken can also be specified as a password to restrict access to the primary PC File.

Tag <remotepcfile ipaddress="ipaddress" port="nnnn" contoken="token"/>

ipaddressThe IP address of a remote server/listener to which all PC File requests will be sent. Specify eitheran IP address or a host name. This keyword is required.

portThe port number associated with the remote server/listener IP address. If a port is not specified,1265 is used as the default.

contoken

The password to access the PC File on the specified IP address and port. A contoken is designatedby the user and can contain any alpha-numeric character. There is no restriction on the content ofthe contoken, however the contoken must be the same in the listener and any clients for it toallow access.

A contoken is optional and should only be specified if the server will service PC Filerequests and a layer of security is required for the access.

startlistener

A primary started task can havemultiple listener tags (definitions). For each of these tags, the started task willautomatically start a listener based on the parameters of the tag. To limit access to the listener a contoken can be definedto a listener and only tasks that have the contoken in their remote PC File connection will be allowed to access thelistener.

Tag <startlistener ipaddress="ipaddress" port="nnnn" contoken="token"/>

ipaddress

The IP address on which a listener will be started to handle connection requests. If an IP address isnot specified, the listener will use INADDR_ANY and accept connections on any valid IP address forthat machine.

portThe port number associated with a listener's IP address. If a port is not specified, 1265 is used as thedefault.

contoken The password to access the PC File on the specified IP address and port.

25

Setting Up the Configuration File

Page 33: ASG-PRO/JCL Reference Guide

Contoken is optional and should only be specified if the server will service PC Filerequests and a layer of security is required for the access.

Status Advisory Messages

When a listener is started or stopped, an advisory message is issued:

+DSS06650A {started task} started listener on {port nnnn} for {host name}.

+DSS06651A

{started task} stopped listener on {port nnnn} for {host name}.

where

l {started task} is the name of the primary started task.

l {port nnnn} is the port number of the listener.

l {host name} is the host name or IP address on which the listener was started or stopped.

Thesemessages go to the System Log, and can be used by third-party monitoring tools to manage listener availability.

restrict

Restrict is used for IP address masking. It can be used to specify PC File-only access to the listener, or limit access to thelistener using a contoken. A listener can havemultiple restrict records.

Tag <restrict ipaddress="mask" servers="type" contoken="token"/>

ipaddress

The IP address(es) of the client(s) allowed to access the server. Amask can be used to specify arange of permissible IP addresses (example, 207.190.*). All connection requests from IP addressesoutside of the specified range will be rejected by the listener.

servers

The type of access granted to a client after connecting to the server. The following values are valid:

l PCFILE - allows access to PC File records (for primary PC File access).

l HTTP - allows users to view Started Task status information via a Web browser.

l DIRECTEDEXECUTION - allows PRO/JCL users to perform remote JCL scans from anotherstarted task.

l ANY - allows all of the above.

The value of the servers keyword must be in all uppercase.

The servers keyword can contain a comma-separated list of values (example,servers="PCFILE,PSW,HTTP").

contoken

The password to access the PC File on the specified IP address.

If a restrict record contoken is specified, it will override a contoken specified on the startlistenerdefinition for matching IP addresses or masks.

26

ASG-PRO/JCL Reference Guide

Page 34: ASG-PRO/JCL Reference Guide

tracerecord

Tag <tracerecord tracedata="GSS,TCP"/>

tracedata

A trace name or comma-separated list of names (example, tracedata="GSS,TCP,TCPLEN,TCPDATA").

This record should only be specified if the tracing of listener startup or other initialization (prior toRTS tracing) is required. Contact ASG Customer Support for assistance before using this record.

Sample Scenarios

The following scenarios provide examples of configuration records for defining a variety of setups. These scenariosdemonstrate common configurations and cover what most users are looking for. However, your situation might beslightly different.

Scenario 1This scenario demonstrates a Shared PC File configuration involving two computers. Onemachine holds the primary PCFile. The other is a PC File secondary that uses the primary file.

Machine Configuration File

Machine 1

Primary PC File

(192.168.0.141)

<configuration>

<startlistener/>

</configuration>

Machine 2

Secondary PC File

(192.168.0.142)

<configuration>

<remotepcfile ipaddress="192.168.0.141"/>

</configuration>

Sample - Shared PC File Configuration

In this situation, Machine 1 simply starts a listener so that other machines can connect to it. This is what makes Machine1 a primary. Because the configuration file started a listener without any restrictions, Machine 1may also be the targetfor Directed Execution. In other words, users on other machines can scan JCL on Machine 1, (if they have a user ID andpassword for Machine 1).

Machine 2 becomes a secondary by specifying a remote PC File machine. To do this, all that is required on Machine 2 isthe IP address of the Primary PC File.

For more information on Directed Execution see the topic - Directed Execution in the Userdocumentation.

Scenario 2This scenario is identical to Scenario 1 except that a layer of security has been added. This security measure preventsother machines from connecting to the Primary PC File unless a special pass phrase is known. This pass phrase operates

27

Setting Up the Configuration File

Page 35: ASG-PRO/JCL Reference Guide

like a password. It is called a connection token, or contoken. The Primary PC File started task has the option of requiringa contoken by everyone who connects.

Machine Configuration File

Machine 1

Primary PC File

(192.168.0.141)

<configuration>

<startlistener contoken="zippy"/>

</configuration>

Machine 2

Secondary PC File

(192.168.0.142)

<configuration>

<remotepcfile ipaddress="192.168.0.141"contoken="zippy"/>

</configuration>

Sample - Shared PC File with a Contoken

In this example the Secondary PC File on Machine 2must provide the contoken “zippy” in order to share the Primary PCFile on Machine 1. If the contoken on Machine 1 changes, you must update all of the configuration files on all of thesecondary machines. This feature increases security by giving an Administrator the ability to lock out other started tasksfrom the primary.

Scenario 3This scenario uses the same Shared PC File setup as Scenario 1, but disallows anything other than sharing the PC File. InScenario 1, Machine 1 could be used as a target for Directed Execution. However in this scenario, only PC File services areallowed.

The restrict server statement limits which services are available from the Primary PC File.

Machine Configuration File

Machine 1

Primary PC File

(192.168.0.141)

<configuration>

<startlistener>

<restrict servers="PCFILE"/>

</startlistener>

</configuration>

Machine 2

Secondary PC File

(192.168.0.142)

<configuration>

<remotepcfile ipaddress="192.168.0.141"/>

</configuration>

Sample - Shared PC File only and Directed Execution

No change is required on the secondary, Machine 2.

28

ASG-PRO/JCL Reference Guide

Page 36: ASG-PRO/JCL Reference Guide

Scenario 4If desired, you can restrict the sharing of the Primary PC File to a specific machine. In this scenario - which expands onScenario 3 - not only does the primary restrict its services to sharing only the PC File on Machine 1, but it only shares withthe Secondary PC File on Machine 2.

Machine Configuration File

Machine 1

Primary PC File

(192.168.0.141)

<configuration>

<startlistener>

<restrict ipaddress="192.168.0.142" servers="PCFILE"/>

</startlistener>

</configuration>

Machine 2

Secondary PC File

(192.168.0.142)

<configuration>

<remotepcfile ipaddress="192.168.0.141"/>

</configuration>

Sample - Shared PC File-only and Directed Execution

Notice that the IP address on Machine 1 identifies Machine 2 as the only machine that can share the Primary PC File. Nochange is required on the secondary, Machine 2.

Scenario 5This scenario is the same as scenario 4 except that both configuration records are kept in the same file. Machine 1 has ansmfid ofMACH1. Any other machine using this configuration file will be a secondary to the listener on MACH1. This way,the configuration file can be shared and hold the definition for more than one started task.

Machine Configuration File

Machine 1

Primary PC File

(192.168.0.141)

<configuration smfid="MACH1">

<startlistener>

<restrict ipaddress="192.168.0.142" servers="PCFILE"/>

</startlistener>

</configuration>

Machine 2

Secondary PC File

(192.168.0.142)

<configuration>

<remotepcfile ipaddress="192.168.0.141"/>

</configuration>

Sample - Shared Configuration File Using the smfid Keyword

No change is required on the secondary, Machine 2.

29

Setting Up the Configuration File

Page 37: ASG-PRO/JCL Reference Guide

Scenario 6This scenario demonstrates how to use the Installation Interface to set up a Primary PC File started task on Machine 1and a Secondary PC File started task on Machine 2with all of the PC File configuration options enabled on bothmachines.

Machine 1 - Primary PC File Started Task

To update the Enable Advanced Features (requires TCP/IP) section of the Installation Interface

1. Enter Y in theMake this started task the Primary PCFile in a shared PCFile environment? (Y/N) field. This adds theservers PC File option to the SPJMCNTL(STCONF)member and makes Machine 1 the Primary PC File startedtask machine.

2. Enter Y in the Enable Directed Execution requests to this started task? (Y/N) field. This adds the serversDIRECTEDEXECUTION value to the SPJMCNTL(STCONF)member.

3. Enter Y in the EnableWEB Based Status requests? (Y/N) field. This adds the servers HTTP value to the SPJMCNTL(STCONF)member.

4. Enter Y in the Enable Batch Usage Statistics? (Y/N) field. This updates the SPJMCNTL(BATCONF)member tomaintain usage statistics for scans performed in batch.

5. Enter the IP address for Machine 1 (example, 192.168.0.141) in the Specify a single IP address for this StartedTask field. This identifies the IP address of the Primary PC File started task machine.

6. Enter N in theWould you like the Started Task to listen on all IP addresses (Y/N) field. Entering Nmakes sure thestarted task starts a listener only on the specified IP address. If you enter Y, the started task will listen on all IPaddresses and the IP address specified in step 7will not be displayed in the SPJMCNTL(STCONF)member.

7. Enter a port number for Machine 1 (example, 1301) in the Port number for the Started Task (blank for 1265) field.This is the port that all requests to access the Primary PC File must use. If desired, you can leave this blank to usethe default value of 1265).

After the above information has been entered, the SPJMCNTL(STCONF) and SPJMCNTL(BATCONF)members for theMachine 1 datasets will be created with the following format:

Machine 1 SPJMCNTL(STCONF) Configuration File

Primary PC File

(192.168.0.141)

<configuration>

<startlistener ipaddress="192.168.0.141" port="1301">

<restrict servers="

DIRECTEDEXECUTION,

HTTP,

PSW,

PCFILE

"/>

Sample - SPJMCNTL(STCONF) Configuration for PrimaryPC File Started Task

30

ASG-PRO/JCL Reference Guide

Page 38: ASG-PRO/JCL Reference Guide

Machine 1 SPJMCNTL(STCONF) Configuration File

</startlistener>

</configuration>

Machine 1 SPJMCNTL(BATCONF) Configuration File

Primary PC File

(192.168.0.141)

<configuration >

<remotepcfile

ipaddress="192.168.0.141"

port="1301"/>

</configuration>

Sample - SPJMCNTL(BATCONF) Configuration for Primary PC File Started Task

Machine 2 - Secondary PC File Started Task

To update the Enable Advanced Features (requires TCP/IP) section of the Installation Interface

1. Enter N in theMake this started task the Primary PCFile in a shared PCFile environment? (Y/N) field. This makesMachine 2 the Secondary PC File started task machine.

2. Enter Y in the Enable Directed Execution requests to this started task? (Y/N) field. This adds the serversDIRECTEDEXECUTION value to the SPJMCNTL(STCONF)member.

3. Enter Y in the EnableWEB Based Status requests? (Y/N) field. This adds the servers HTTP value to the SPJMCNTL(STCONF)member.

4. Enter Y in the Enable Batch Usage Statistics? (Y/N) field. This updates the SPJMCNTL(BATCONF)member tomaintain usage statistics for scans performed in batch.

5. Enter the IP address for Machine 2 (example, 192.168.0.142) in the Specify a single IP address for this StartedTask field. This identifies the IP address of the Secondary PC File started task machine.

6. Enter N in theWould you like the Started Task to listen on all IP addresses (Y/N) field. Entering Nmakes sure thestarted task starts a listener only on the specified IP address. If you enter Y, the started task will listen on all IPaddresses and the IP address specified in step will not be displayed in the SPJMCNTL(STCONF)member.

7. Enter a port number for Machine 2 (example, 1299) in the Port number for the Started Task (blank for 1265) field.This is the port that all requests to access the Secondary PC File must use.

To update the Configure Location of Primary PC File (optional) section of the Installation Interface

1. Enter the IP address for Machine 1 (192.168.0.141) in the Host Name or IP address of Primary PCFile Started Taskfield. This tells theMachine 2 Secondary PC File started task where to look for the Primary PC File started task.

2. Enter the port number for Machine 1 (1301) in the Port of the Primary PCFile Started Task (blank for 1265) field.

31

Setting Up the Configuration File

Page 39: ASG-PRO/JCL Reference Guide

After the above information has been entered, the SPJMCNTL(STCONF) and SPJMCNTL(BATCONF)members for theMachine 2 datasets will be created with the following format:

Machine 2 SPJMCNTL(STCONF) Configuration File

Secondary PC File

(192.168.0.142)

<configuration>

<remotepcfile ipaddress="192.168.0.141" port="1301"/>

<startlistener ipaddress="192.168.0.142" port="1299">

<restrict servers="

DIRECTEDEXECUTION,

HTTP,

PSW,

"/>

</startlistener>

</configuration>

Sample - SPJMCNTL(STCONF) Configuration for Secondary PC File Started Task

Machine 2 SPJMCNTL(BATCONF) Configuration File

Primary PC File

(192.168.0.142)

<configuration >

<remotepcfile

ipaddress="192.168.0.141"

port="1301"/>

</configuration>

Sample - SPJMCNTL(BATCONF) Configuration for Secondary PC File Started Task

The set up of a Primary PC File started task on Machine 1 and a Secondary PC File started task on Machine 2 is nowcomplete. As configured in this example, theMachine 2 started task can process Directed Execution, and Web-basedStatus requests ifMachine 1 is unavailable or a user doesn’t have access to Machine 1.

l After the initial set up, the SPJMCNTL(STCONF) and SPJMCNTL(BATCONF)members can bemanually editedto add any additional configuration requirements (example, restrict ipaddress or contoken).

l When configuring theMachine 2 started task, if you enter N in theMake this started task the Primary PCFilein a shared PCFile environment? (Y/N) field and do not enter an IP address for the Primary PC File in the Host

32

ASG-PRO/JCL Reference Guide

Page 40: ASG-PRO/JCL Reference Guide

Name or IP address of Primary PCFile Started Task field, Machine 2will not be set up to share the Primary PCFile and cannot be used as a Secondary in a shared PC File environment.

TCP/IP Started Task Operator CommandsA listener can be dynamically started and stopped by an operator command. It is not necessary to cycle the started taskto cycle a listener. If the newly started listener is matched by a definition in the JPCONFIG file already allocated to thestarted task, the additional parameters will be picked up and used.

Refer to Started Task for a complete list of started task operator commands that apply to the product TCP/IP listeners.

BatchFor batch applications under MVS, the -f parameter is available. Regardless of whether or not the -f parameter is coded,the started task looks for the JPCONFIG DD to see if it is allocated. The -f parameter can be used to change the name ofthe DD. For example:

000100 //DSSUSRB JOB (DSSIPD,132900,DSS,37),’SYS REBUILD’,MSGCLASS=X,000200 // NOTIFY=DSSUSR,CLASS=A,COND=(4,LT),000300 // REGION=0M000400 // JCLLIB ORDER=(DSSUSR.SYS1.CNTL)000500 //STEP1 EXEC PR1PROC,PROD=’-PROJCL -TDSSIAPI -FDD:WPCONFIG’,000510 // DB2EXIT=DSSXXX.AUTH.LOAD,PROD=’-PROJCL’000600 // DB2LOAD=DSSI.320.TAPE.LOAD,000610 // HLQ=DSSI.320.TAPE000700 // LEHLQ=CEE.S390V2R6,000710 // PCHLQ=DSSI.320.TAPE000720 //WPCONFIG DD DSN=DSSUSR.JPCONFIG,DISP=SHR

Sample batch -f parameter command

-f with no parm uses DD:JPCONFIG.

Defining Multiple ListenersIn order to have several listeners running on a started task, more than one listener definition must bemade in theJPCONFIG file for the started task. For each listener, there needs to be a corresponding startlistener record in theconfiguration file.

Some reasons for defining multiple listeners might be:

l Security

l Different network access.

l Specific departmental requirements.

l Multiple TCP/IP stacks.

ExampleThe following is a sample JPCONFIG file that has more than one listener defined to it.

33

TCP/IP Started Task Operator Commands

Page 41: ASG-PRO/JCL Reference Guide

<configuration><startlistener ipaddress="192.168.0.31" port="1265"/><startlistener ipaddress="192.168.0.31" port="2265" contoken="red"/>

</configuration>

This JPCONFIG file tells the started task to automatically start two listeners. The first uses port 1265 and allows clientrequests from IP address 192.168.0.31 to access the PC File. The second uses port 2265. It allows client requests from IPaddress 192.168.0.31, but also requires a contoken.

The IP addresses could be different if more than one TCP/IP stack is used. The requirement is thatonly one listener can use a particular port on a particular IP address.

34

ASG-PRO/JCL Reference Guide

Page 42: ASG-PRO/JCL Reference Guide

DASD Management InterfacesThis topic provides information on the following DASD (direct-access storage device) management interfaces:

n DFSMShsm Interface

n DMS Interface

DFSMShsm InterfaceThe DFSMShsm interface identifies datasets that have been migrated by DFSMShsm. No action needs to be taken toactivate PRO/JCL HSM simulation for any of the three operating modes of PRO/JCL. PRO/JCL recognizes MIGRAT as thedefault volser HSM-migration volume. In order to specify another location as the default, change the value of theHSMVOL option in the RTS member.

PRO/JCL Interfaces Row 1 to 34 of 37Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: P390 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------.../ HSMVOL MIGRAT MIGRAT VOLSER or Nu...

Changing the default location for HSM - selecting the HSMVOL option

HSMVOL Row 1 to 3 of 3Command ===> Scroll ===> PAGE

Option values:RTS . . . MIGRATDefault : MIGRATAllowable: VOLSER or Null Value

Description:Use HSMVOL to specify the volume serial in the MVS catalogwhich represents data sets archived by Hierarchical StorageManagement (HSM).

Changing the default location for HSM - entering a new value

DMS InterfaceThe DMS interface identifies datasets that have been archived by DMS. No action needs to be taken to activate PRO/JCLDMS simulation for any of the three operating modes of PRO/JCL. PRO/JCL recognizes ARCIVE as the default volser DMS-archived volume. In order to specify another location as the default, change the value of the DMSVOL option in the RTSmember.

35

DASDManagement Interfaces

Page 43: ASG-PRO/JCL Reference Guide

PRO/JCL Interfaces Row 1 to 34 of 37Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: P390 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------...

DMSVOL ARCIVE ARCIVE VOLSER or Nu...

Changing the default location for DMS - selecting the DMSVOL option

DMSVOL Row 1 to 5 of 5Command ===> Scroll ===> PAGE

Option values:RTS . . . ARCIVEDefault : ARCIVEAllowable: VOLSER or Null Value

Description:

Use DMSVOL to specify the volume serial in the MVS catalogwhich represents data sets archived by Data Management System(DMS). Notes: The DMSVOL volser value must equal the volumeserial coded in the RECATVOLVvvvvv parameter of DMSSYSPARMS.

Changing the default location for DMS - entering a new value

36

ASG-PRO/JCL Reference Guide

Page 44: ASG-PRO/JCL Reference Guide

Database InterfacesThis topic provides detailed information about database interfaces.

n DB2

n IMS

DB2ASG provides a DB2 interface for extracting additional information for PRO/JCL to validate. The information is available forbatch DB2 jobs which access databases through the DSN RUN command.

PRO/JCL ValidationPRO/JCL parses and validates the syntax of the DSN commands and parameters, and reports any errors found in the SJL.PRO/JCL validates DB2 utility commands.

Establishing the Interface

To establish the interface

1. Turn on the DB2 interface.

2. If processing DB2 utilities, turn on utility processing.

When DB2 Group Attach is used it must be specified on the RTS DB2 Group Attach panel, otherwisePRO/JCL cannot check the DB2 subsystem when validating JCL. For further information on DB2Group Attach, refer to DB2 Group Attach Table.

Turn on the InterfaceTurn on the DB2 interface, by setting Process DB2 to Y on the Run-Time Options panel. (Choose Run-Time Options fromthe Edit/View Run-Time Settings panel.)

PRO/JCL Run-Time Options Row 1 to 19 of 30Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ASGUSR Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------...

Process ADRDSSU Y Y Y or N/ Process DB2 Y Y Y or N

Process DB2 Utilities N N Y or N...

Run-Time Options panel

Turn On Utility ProcessingTo validate DB2 utilities, use Process DB2 Utilities from the Run-Time Option panel to enter Y for the RTS value.

37

Database Interfaces

Page 45: ASG-PRO/JCL Reference Guide

PRO/JCL Run-Time Options Row 1 to 19 of 30Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ASGUSR Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------...

Process ADRDSSU Y Y Y or NProcess DB2 Y Y Y or N

/ Process DB2 Utilities Y N Y or NProcess ICEGENER Y Y Y or NProcess IDCAMS Y Y Y or N

...

Run-Time Options panel

Sample Batch DB2 Job StreamThe following is a sample batch DB2 job stream:

//STEP EXEC PGM=IKJEFT01. .. .. .

//SYSIN DD *DSN SYSTEM(DB2P)RUN PROGRAM(PAYDB) LIB(’PROD.LOAD’) PLAN(PAYDB)END

If multiple DB2 commands are contained within the SYSTSIN control statements, PRO/JCL processesthe first one only.

IMSASG provides an Information Management System (IMS) interface for extracting additional information to be validated.The information is available for jobs that access databases through the DLI, BMP, and DBB functions.

PRO/JCL ValidationDuring its run, PRO/JCL validates:

l The IMS application program identified in the PARM parameter of the EXEC statement exists.

l The PSB specified in the Parm field and its associated DBDs can be found in the libraries specified by ddname IMSfor DLI-type processing or ddname IMSACB for DBB-type processing.

l For BMP processing, that the ACB specified in the Parm field can be found in the ACB library.

l Control statements identified by the ddnames DDITV02 or PROCLIB.

Establishing the InterfaceEnter as many IMS ACB library option as needed in IMS ACB Datasets table of the RTS member (BMP processing only).

For example:

38

ASG-PRO/JCL Reference Guide

Page 46: ASG-PRO/JCL Reference Guide

IMS ACB Datasets Row 1 to 2 of 2Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ASGUSR Desc:

Enter 'ADD' to add IMS ACB Datasets

Use: S (Select), R (Repeat), D (Delete)

Sel seq. no Data set--- ------- --------

01 DSSI.IMS01.ACBLIB02 DSSI.IMS02.ACBLIB

Setting the IMS ACB Datasets

PRO/JCL performs special validation for batch jobs that access IMS databases using the DFSRRC00driver with the DLI, BMP, and DBB options and the DFHDRP driver that accepts keyword parametersin the Parm field.

Turn On the IMS InterfaceTurn on the interface by typing Y in the RTS option on the Interfaces panel.

IMSRow 1 to 3 of 3

Command ===> Scroll ===> PAGE

Option values:RTS . . . NDefault : NAllowable: Y or N

Description:

Use IMS to specify whether PRO/JCL validates DFSRRC00parameters. Specify to validate DFSRRC00 parameters. Specifyto ignore DFSRRC00 parameters.

Turn on the IMS Interface

39

IMS

Page 47: ASG-PRO/JCL Reference Guide

Directed Execution PanelsThis topic gives details about the direct execution panels.

n Remote Definitions Panels

n Directed Execution Validation Panels

Remote Definitions PanelsAdd/Edit/View Remote Machine Definitions Panel

Use this panel to add, edit, delete, or view a RemoteMachine Definition.

Add/Edit/View Remote Machine Definitions Row 1 to 2 of 2Command ===> Scroll ===> PAGE

Enter ADD to create Remote Machine Definition.Enter E (Edit), V (View), D (Delete).

Sel Name TCP/IP Addr or Host Name Port Userid By User By Machine--- ------------ ------------------------ ----- -------- -------- ---------->

MACH1 192.168.0.147 1273 USER1 MACH1MACH1TOMACH2 192.168.0.141 1292 USER1 MACH1

Add/Edit/View Remote Machine Definitions Panel

This panel displays the RemoteMachine Definitions that the TSO user can modify. The requirement for modifying anexisting RemoteMachine Definition is the user must be the creator of the definition or is the PRO/JCL Administrator.

To reach this panel, choose theMachine Validation option from the ASG-PRO/JCLMain Menu.

The user must be either the creator of the definition, or the PRO/JCL Administrator in order to modify an existing RemoteMachine Definition.

If no detail lines are displayed, there are no definitions that can be viewed or modified and only an Add command may beperformed.

Line Commands

Command Description

ADD Creates a newmachine definition.

E Edits an existing definition.

VViews an existing definition including off-screen and truncated fields. See View RemoteMachine Definition Panel.

D Deletes an existing definition.

Line commands for Add/Edit/View Remote Machine Definitions Panel

40

ASG-PRO/JCL Reference Guide

Page 48: ASG-PRO/JCL Reference Guide

FieldsThis panel is left-right scrollable.

Field Description

Name The name for the particular RemoteMachine Definition.

TCP/IP Address orHost Name

This is used to determine where the connection needs to bemade for Directed Execution.

PortOptional. This number will be used to connect to the started task. Enter a maximum of 5numeric character or leave blank to use the ASG default port number of 1265.

Userid If a Userid has been specified, it used to connect to the remotemachine.

By UserOptional. The Userid allowed to use this RemoteMachine Definition to execute a DirectedExecution. Amaximum of 8 alphanumeric and national characters can be entered or if leftblank, any user is allowed to use this definition.

By Machine The originating machine.

Description Text to describe this RemoteMachine Definition.

Fields for Add/Edit/View Remote Machine Definitions Panel

Add/Edit Remote Machine Definition Panel

This panel is used to Add or Edit a RemoteMachine Definition. When adding a definition, this panel displays with the ByUser and On Machine fields initialized with current user's and machine information.

When editing a definition, the panel displays with all fields filled in..

Add/Edit Remote Machine DefinitionCommand ===>

Press End to return to the Remote Machine Definitions List.

Name . . . . . . . MACH1TOMACH2 (Required)Description . . . .

TCP/IP Address or (Required)Host Name . . . . 192.168.0.147

TCP/IP Port . . . . 1265 (Optional)Userid . . . . . .Password . . . . .

The following user(s) may use this definition.By User . . . . . . USER1 (Blank for any user)On Machine . . . . MACH1 (Blank for any machine)

Add/Edit Remote Machine Definition Panel

41

Remote Definitions Panels

Page 49: ASG-PRO/JCL Reference Guide

Fields

Field Description

NameName can have a maximum of 12 alphanumeric and national characters. When usingDirected Execution, PRO/JCL uses this name to get the remotemachine information tocontinue processing. This is a field where information is required.

Description Optional. Text describing this RemoteMachine Definition.

TCP/IP Address orHost Name

Enter the TCP/IP Address or a host name of where the validation is to be performed up to57 characters. This information is required to add or modify a definition. This address isused to determine the connection that needs to bemade for Directed Execution. This is afield where information is required.

TCP/IP Port Optional. Enter the port number used to connect to the started task. Enter a maximum of5 numeric character or leave the field blank.

UseridOptional. Enter the Userid used to connect to the remotemachine. Amaximum of 8alphanumeric and national character can be entered.

PasswordEnter the Password used to connect to the remotemachine along with the Userid. Amaximum of 8 characters can be entered. Valid characters might be site dependant. Onlyrequired if Userid is entered.

By UserOptional. Enter the Userid allowed to use this RemoteMachine Definition. Amaximum of 8alphanumeric and national characters can be entered or if left blank, any user is allowed touse this definition.

On MachineOptional. This machine name (System ID) defines which machine this definition applies to.Amaximum of 8 characters can be entered or if left blank, any machine is allowed to usethis Remote Definition.

Fields for Add/Edit Remote Machine Definition Panel

Delete a Remote Machine Definition Popup

The DeleteMachine Definition popup appears to verify the deletion of a selected Machine Definition.

Press Enter to delete the RemoteMachine Definition. Enter CANCEL to keep the selected RemoteMachine Definition as itis.

Delete Machine Definition

Command ===>

Confirm Machine Definition TEST

Press Enter to DELETE the Machine Definition.Enter CANCEL to keep the Machine Definition.

Delete Machine Definitions Panel

42

ASG-PRO/JCL Reference Guide

Page 50: ASG-PRO/JCL Reference Guide

View Remote Machine Definition Panel

This panel is used to view a remotemachine definition.

View Machine DefinitionCommand ===>

Press End to return to the Remote Machine Definitions List.

Name . . . . . . : MACH1TOMACH2Description . . . :

TCP/IP Address orHost Name . . : 192.168.0.147

TCP/IP Port . . . : 1265Userid . . . . . :

The following user(s) may use this definition.By User . . . . . : USER1On Machine . . . : MACH1

View Remote Machine Definition Panel

FieldsThe field definitions are the same as for Add/Edit RemoteMachine Definition panel.

Select a Remote Machine Definition

Displayed on this panel is a list of RemoteMachine Definitions. This list contains RemoteMachine Definitions that arevalid for this user and machine.

If no detail lines are displayed, either no definitions exist or none of the definitions was for the current user and machine.

If the definition selected does not have all the data required to form a connection, the user will beprompted to enter the required data, at this time.

File-------------------------------------------------------------------------------

Select a Remote Machine Definition Row 1 to 5 of 5Command ===> Scroll ===> PAGE

Enter S (Select) or V (View)

Sel Name TCP/IP Addr or Host Name Port Userid By User By Machine--- ------------ ------------------------ ----- -------- -------- ---------->

MACHINE1 192.168.0.147 1265 ASGUSR1 USER01 TESTMACHINE2 192.168.0.145 1300 ASGUSR2 USER02 DEV1

S MACHINE3 192.168.0.143 USER04 USER04 PRODMACH4 192.168.0.141 1277 USER02 USER02 DEV2STCATOSTCB 192.168.0.149 1234 USER03

******************************* Bottom of data ********************************

Select a Remote Machine Definition Panel

43

Remote Definitions Panels

Page 51: ASG-PRO/JCL Reference Guide

Commands

Command Description

S Selects an existing definition.

V Views an existing definition including off-screen and truncated fields. See View RemoteMachine Definition Panel.

Commands for Select a Remote Machine Definition Panel

FieldsThis panel is left-right scrollable.

Field Description

Name The name that was given for this particular RemoteMachine Definition.

(TCP/IP Address or)Host Name

If either a TCP/IP Address or a Host Name has been entered for this definition, it will beused to determine where the connection needs to bemade for Directed Execution.

PortOptional. This is used to connect to the started task. Enter a maximum of 5 numericcharacters or leave blank to use the ASG default port number of 1265.

Userid If the Userid has been specified, this is the Userid that will be used to logon to the remotemachine.

By UserOptional. The Userid allowed to use this RemoteMachine Definition to execute a DirectedExecution. Amaximum of 8 alphanumeric and national characters can be entered or if leftblank, any user is allowed to use this definition.

By Machine The originating machine.

Description Text describing the RemoteMachine.

Fields for Select a Remote Machine Definition Panel

Directed Execution Validation PanelsPRO/JCL Directed Execution Panel

Use PRO/JCL Directed Execution panel to validate JCL and control statement members on a remotemachine. This panelappears after the user has selected a remote location from the Select a RemoteMachine Definition panel.

44

ASG-PRO/JCL Reference Guide

Page 52: ASG-PRO/JCL Reference Guide

File Settings--------------------------------------------------------------------------------

PRO/JCL Directed ExecutionCommand ===>

F Foreground Execution Remote Machine Definition: MACHINE3B Background Execution RTS Member . . . . . . . . DEFAULT (* for list)E Edit Input Library V View Input Library

Input LibraryMember . . . . WORK.CNTL Show Directory N (Y/N)Exclude Member TEST Show Directory N (Y/N)Type . . . . . PDS (* for list)Local or Remote R (L/R)or Listname . . (* for list)Processing Mode JOB (* for list)First PROCLIBType . . . PDS ( * for list)JMP Library. . .JMP Name . . . Parm . .SJL Hardcopy . . (Y/N) Keep SJL Data Set (Y/N)

PRO/JCL Directed Execution Panel

CommandsF - Execute PRO/JCL on the selected remotemachine in foreground mode.

B - Execute PRO/JCL on the selected remotemachine in background mode.

Commands FE (foreground execution) or BE (background execution) work the same under Directed Execution as for localvalidation. The fields, commands E and V, and the File and Settings action bar items have the samemeanings as for thePRO/JCL Validation panel.

These commands work only in local mode:

l E - Edit themember or to choose from a list ofmembers.

l V - View themember or to choose from a list ofmembers.

FieldsRemote Machine Definition This field displays the definition of the remotemachine the user has selected to run theirremote PRO/JCL validation.

RTS Member This field displays the name of the active RTS member. To choose a different RTS Member, enter the nameof another member, an * to select from a list of available RTS members, or *LIST* to choose from lists ofmembers.

Input If Listname is entered, it will be used instead of Library and Member.

Sub-field Description

Library Specify the fully-qualified JCL library.

MemberMembers to be validated. Enter any combination of:

l a member name

Sub-fields for the Directed Execution panel Input Library Field

45

Directed Execution Validation Panels

Page 53: ASG-PRO/JCL Reference Guide

Sub-field Description

l a masked member name

l a range ofmember names

separated by commas. A rangemay not havemask characters (* or %) specified.

Show Directory - This field is applicable only when a masked Member Name has beenentered. Members matching themask will be displayed in a directory list when 'Y' is entered.When 'N' is entered, all members matching themask will be selected. The default is N.

Exclude Member

Members to be excluded from validation. Values in the ExcludeMember field only applywhen a mask or range has been specified for theMember.Enter any combination of:

l a member name

l a masked member name

l a range ofmember names

separated by commas. A rangemay not havemask characters (* or %) specified.

Show Directory - This field is applicable when ExcludeMember contains only a masked entry.Members matching themask will be displayed in an Exclude directory list when 'Y' is entered.If a range is or multiple member names are entered, the ShowDirectory field for ExcludeMember is ignored. The default is N.

Type

Choose from:

l PANVALET(PAN)

l LIBRARIAN(LIB)

l PDS

l SEQUENTIAL(SEQ)

Local or RemoteL the data from the Input Library will be passed to the remotemachine to be validated.

R validate the data that resides on the remotemachine.

Listname Enter a selection list name or an asterisk to select a name from all available selection list names. If a Library andMember are coded along with the Listname, the Listnamewill be used instead of the Library and Member.

Processing Mode Tells PRO/JCL how to interpret the input members.

Procmode Description

JOB Process the input member as a job stream.

JCL (Default) Select to process JOBs and PROCs. This processing mode expects a JCL stream as

Values for the Processing Mode Field

46

ASG-PRO/JCL Reference Guide

Page 54: ASG-PRO/JCL Reference Guide

Procmode Description

input. In this mode, PRO/JCL can distinguish between JOB- and PROC-type JCL inputstreams; it then automatically invokes the appropriate processing mode.

IDCAMS Process the input member as IDCAMS control statements.

PROC Process the input member as PROCs.

IEBGENER Process the input member as IEBGENER control statements.

IEBCOPY Process the input member as IEBCOPY control statements.

IEHPROGM Process the input member as IEHPROGM control statements.

DB2 Process the input member as DB2 control statements.

DATA

Select this processing mode to allow a JMP program to access and manipulate inputrecords without PRO/JCL validating or reformatting them. Also, specify a JMP programand an output file when using this processing mode. For example, if you have a datasetthat contains control cards for various utility programs and you want to make a changeacross all members of the dataset, PROCESS=DATAwill read the raw data and make itavailable to the JMP program, which actually makes the changes.

ADRDSSU Process the input member as ADRDSSU control statements.

SORT Process the input member as SORT control statements.

First PROCLIB First PROCLIB searches the dataset for PROC and INCLUDEmembers, before the standard libraries (JCLLIB,PROCLIBDD, or JES) are searched.

First PROCLIB Type The type identifies the First PROCLIB library as being a PDS, PANVALET, or LIBRARIAN dataset.

JMP Library The name of the library the JMPprogram resides in.

JMP Name The name of themember of the JMP program to be executed. If a JMP Library is not specified, the JMPprogram is executed from the libraries allocated by the SYSEXEC DD.

Parm The JMP parm to be passed to the JMP program.

SJL Hardcopy Enter Y to get the SJL in hardcopy format only when running in foreground.

Keep SJL Data Set Enter Y to keep the SJL dataset for later reference after the foreground run. Enter N to delete thedataset after PRO/JCL displays it. PRO/JCL retains a maximum of 99 datasets and does not delete or overwrite anydataset. PRO/JCL displays this error if 99 SJLs are found:

Allocation failed for the SJL. The maximum number of 99 SJLs currently exists.

PRO/JCL performed its scan but was unable to save and display the SJL. Delete one or more dataset so that PRO/JCL canallocate a dataset. This option only applies to foreground validation.

47

Directed Execution Validation Panels

Page 55: ASG-PRO/JCL Reference Guide

Action Bar

File

Item Description

Edit Edit the input member.

Browse Browse the input member.

View View the input member.

Exit Return to theMain Menu.

Items for File Action bar item of PRO/JCL Directed Execution Panel

Settings

Item Description

RTS Member Edit/view the current RTS member or activate a newRTS member.

First Control Card The library PRO/JCL will first search for control cards.

Scheduler Specify the Scheduler Interface PRO/JCL uses in validating JCL.

Batch JCL Specify a Job Statement for background processing.

TSO Parms Specify the parameters for hardcopy background.

User Report Title Specify a sub-title for the report.

Skeleton Processing Strips the ISPF statements from a JCL member before processing.

Extended Messages Specify Y to have the extended messages print in the SJL in foreground or backgroundmodes.

Selection List Maintain the lists you have created, and create new lists.

Alternate Userid

Specify an alternate userid to be used for security checking.

An alternate user ID does not check the UNIX services path.

Selection Exit Specify the REXX exec to be called for JOB JCL modifications prior to PRO/JCL validation.

Remote Machine Defs Maintain the lists you have created, and create new lists.

Items for Settings Action bar item of PRO/JCL Directed Execution Panel

48

ASG-PRO/JCL Reference Guide

Page 56: ASG-PRO/JCL Reference Guide

Enter Remote Machine Information Panel

PRO/JCL displays this panel when a selected RemoteMachine Definition is incomplete. The information initially displayedis from the specified RemoteMachine Definition. Press Enter; PRO/JCL validates the fields and displays a message tellingyou which field needs a value. Usually, PRO/JCL displays this panel because the userid or password is missing. Fill in themissing values. When values are acceptable, no message is displayed in response to pressing the Enter key. Press the Endkey.

Enter Remote Machine InformationCommand ===>

Remote Machine Definition Name : BTCP/IP Address or

Host Name . . : 192.168.0.141

TCP/IP Port . . . . 1292Userid . . . . . . (Required)Password . . . . . (Required)By User . . . . . . USER1 (Blank for any user)On Machine . . . . MACH1 (Blank for any machine)

Enter Remote Machine Information Panel

Fields

Field Description

TCP/IP Address orHost Name

The TCP/IP address or the host namewhere the validation will be performed.

TCP/IP Port

The port number used to connect to the started task (maximum of 5 numeric characters).This field is not required; default is 1265. If either a TCP/IP Address or a Host Name hasbeen entered for this definition, PRO/JCL uses the port to determine where theconnection needs to bemade for Directed Execution.

Userid The userid that will be used to logon to the remotemachine.

Password The password that will be used to logon to the remotemachine along with the userid.

By User The userid allowed to use this RemoteMachine Definition to execute a Directed Execution.

On Machine Themachine name (System ID) defining which machine this definition applies to.

Fields for Enter Remote Machine Information Panel

49

Directed Execution Validation Panels

Page 57: ASG-PRO/JCL Reference Guide

EPASS PanelsThis topic gives details about the EPASS panels.

n Generate Encrypted Password Panel

n Default for 'Restrict to User and Machine' Fields Panel

Generate Encrypted Password PanelUse this panel to generated an encrypted password called an EPASS. This password can be used as an alternative to auser ID and password when running Directed Execution in batch. Generate the password in the foreground panel, thencopy and paste it into your JCL input statement.

Reach this panel by choosing the EPASS option from the ASG-PRO/JCLMain Menu.

File Settings------------------------------------------------------------------------

Generate Encrypted PasswordCommand ===>

The following user(s) may use this EPASS:Restrict to User ID . . . USER01 (Blank for any user)Restrict to Machine . . . MACH1

(Blank for any machine)

Logon Information for Remote System:User ID . . . . . . . . . USER01 (Required)Password . . . . . . . . (Required)

Generated Encrypted Password:QAkh9K2PC+9ne7x40LqciIeAKrq3QW7Z

* * * Note: The Generated Encrypted Password is case sensitive. * * *

Generate Encrypted Password Panel

Fields

Field Description

These user(s) may use this EPASS

Restrict to User IDEnter the User ID that will be used to submit the batch JOB. If the local User ID is left blank,the EPASS generated will be valid for any user on themachine specified.

Restrict to Machine

Enter theMachine Name (up to 32 characters) from which the JOB will be submitted. If thelocal machine name is left blank, the EPASS generated will be valid from any machine forthe user specified. If both local host User ID and Restrict to Machine are left blank, theEPASS generated will be valid for any user on any machine.

Fields for Generate Encrypted Password

50

ASG-PRO/JCL Reference Guide

Page 58: ASG-PRO/JCL Reference Guide

Field Description

Logon Information for the Remote System

User ID Enter the User ID that will be used to execute the JOB on the Remote Host.

PasswordEnter the Password for the User ID that will be used on the Remote Host. The passwordwill not be visible as it is entered.

Generated EncryptedPassword

Copy and paste this encrypted password into your JCL input statement. The EPASS is casesensitive, use it exactly as it was created.

Default for 'Restrict to User and Machine' Fields PanelUse Default for 'Restrict to User and Machine' Fields panel to modify the default for 'Restrict to User ID' and / or 'Restrictto Machine' fields in the Generate Encrypted Password panel. The Default for 'Restrict to User and Machine' Fields panelis displayed by selecting the Default Restrict Fields option from Settings menu.

D0SPEPS1 Default for 'Restrict to User and Machine' FieldsCommand ===>

Enter Y to display the TSO User ID in the 'Restrict to User'and/or the current System ID in the 'Restrict to Machine'fields, when the Generate Encrypted Password panel is first displayed.Enter N to not display the default values for these fields.

Default 'Restrict to User' field to current User. . . . . N (Y/N)

Default 'Restrict to Machine' field to current System . . Y (Y/N)

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Default for 'Restrict to User and Machine' Fields Panel

Field Description

Default 'Restrict to User' field to current User

Enter Y to display the TSO User ID in the 'Restrict to User' fieldwhen the Generate Encrypted Password panel is first displayed.Enter N to not default and not display the TSO User ID, whenthe panel is initially displayed.

Default 'Restrict to Machine' field to currentSystem

Enter Y to display the current System ID in the 'Restrict toMachine' field when the Generate Encrypted Password panel isfirst displayed. Enter N to not default and not display the

Fields for Default for 'Restrict to User and Machine' Fields Panel

51

Default for 'Restrict to User and Machine' Fields Panel

Page 59: ASG-PRO/JCL Reference Guide

Field Description

current System ID, when the panel is initially displayed.

52

ASG-PRO/JCL Reference Guide

Page 60: ASG-PRO/JCL Reference Guide

JMP Facility PanelsThis topic provides information about the JCLManipulation Program.

n JCL Manipulation Program (JMP) Utility Panel

n User Messages Panels

JCL Manipulation Program (JMP) Utility PanelUse this panel to edit, test, and run JMP programs, change processing mode, and edit sample input JCL members.PRO/JCL displays this panel when you select the JMP Utility option from the ASG-PRO/JCLMain Menu.

File Settings------------------------------------------------------------------------------

Develop JCL Manipulation ProgramsCommand ===>

E Edit JMP Program RTS Member . . . . DEFAULT ( * for list)R Run JMP Program Reformat Member . . DEFAULT ( * for list)S Edit sample input Processing Mode . . JOB ( * for list)D1 Display JMP API list D2 Display JMP sample program

JCL Manipulation Program (JMP):Library . . 'ASGUSR.ESP.JOBLIB'Member. . . (blank for directory when JMP lib entered)Parm . . .

Sample Input:Library . . ESP.JOBLIBMember . . E* Show Directory . . . N (Y/N)Lib Type PDS ( * for list) Overwrite Input Lib N (Y/N)

First PROCLIBLib type PDS ( * for list)

SJL Hardcopy N (Y/N) Keep SJL Data Set N (Y/N)

JMP Utility Panel

Action Bar

File

Item Description

Exit Save changes and returns to main menu

Items for the File Action bar member JMP Utility Panel

53

JMP Facility Panels

Page 61: ASG-PRO/JCL Reference Guide

Settings

Item Description

RTS Member Edit/view the current RTS member or activate a newRTS member.

User Messages Specify user error messages.

Scheduler Specify the scheduler interface PRO/JCL uses in validating JCL.

Output Libraries The libraries where the output JCL is written.

TSO Parms Specify the parameters for hardcopy background.

User Report Title Specify a sub-title for the report.

Options ReportSpecify whether PRO/JCL prints the Options in Effect report after it finishes processingmembers.

Skeleton Processing Strips the ISPF statements from a JCL member before processing.

Extended MessagesDisplays or prohibits the display of extended messages in the SJL in foreground andbackground modes.

Selection ExitA Selection Exit is specified when a user wants to makemodifications to the JOB JCL priorto validating it. The JCL modifications will not be saved.

Reset BetweenMembers

Specify Y or N to determine if the PRO/JCL simulator should be reset after eachmember has been processed.

First Control Card Specifies the dataset PRO/JCL searches first for control card dataset members.

Items for the Settings Action bar member JMP Utility Panel

Fields

Field Description

RTS Member The name of the active RTS member.

ReformatterMember

The name of the active Reformatter member. Enter * to view and select from a list ofReformatter members.

ProcessingMode

The processing mode that tells PRO/JCL how to process the input members.

JMP

Fields for JMP Utility Panel

54

ASG-PRO/JCL Reference Guide

Page 62: ASG-PRO/JCL Reference Guide

Field Description

LibraryThe fully-qualified library name that contains the JMP member. If themember is in theSYSEXEC concatenation then leave this field blank.

Member The name of themember that contains the JMP program.

Parm The parameter to be passed to the JMP program.

Sample Input

Library The fully-qualified library name that contains the JCL member.

Member The name of themember that contains the JCL.

Show Directory

This applies when a mask (* or %) has been used in themember field.

Y - Enter Y to display the directory of all mask matching members.

N - Enter N to process all themask matching members.

Lib Type Type of library containing the sample input JCL. The values for this field are described in theLibrary Type Popup.

First PROCLIBFirst PROCLIB searches the dataset for PROC and INCLUDEmembers, before the standardlibraries (JCLLIB, PROCLIBDD, or JES) are searched.

First PROCLIBType

The type identifies the First PROCLIB library as being a PDS, PANVALET, or LIBRARIANdataset.

SJL HardcopyY - Enter Y to print a copy of the SJL report.

N - Enter N to prevent printing the SJL report.

Keep SJL DataSet

This field governs whether PRO/JCL keeps or discards the dataset it creates for the SJL.Enter Y to keep the SJL dataset for later reference after the foreground run. Enter N todelete the dataset after PRO/JCL displays it. PRO/JCL retains a maximum of 99 datasets forSJLs. Because PRO/JCL cannot determine which datasets are ones it created or ones createdby other processes PRO/JCL does not delete or overwrite any dataset. PRO/JCL usuallynames the datasets userid.sjl.tempxxwhere:

xx is the 1- or 2- digit identifier from 1-99.

PRO/JCL displays this error if 99 SJLs are found:Allocation failed for the SJL. The maximum number of 99 SJLs currently exists.

PRO/JCL performed its scan but was unable to save and display the SJL. Delete one or moreSJLs. This option only applies to foreground validation.

55

JCLManipulation Program (JMP) Utility Panel

Page 63: ASG-PRO/JCL Reference Guide

l PRO/JCL will use the next available number x or xx. For example, if all 99 are used, you delete numbers 88 and99. PRO/JCL will, on its next run, reallocate number 88. Then, on the next run, with no other deletions, itreallocates number 99.

l The naming convention for these datasets might be different for your site. Ask your PRO/JCL administrator.

Commands

Command Description

E (Edit) Edit the JMP member.

R (Run)

Invoke the JMP program. For the Run command, these fields must be filled-in:

RTS Member

Sample Input Library

Processing mode

Sample Input Member

JMP Library

Sample Input Lib Type

JMP Member

SJL Hardcopy

S (Edit sample) Edit the Sample Input member.

D1 Display, in ISPF browse, themember that lists the JMP API statements.

D2 Display, in ISPF browse, themember that contains a sample JMP program(JMPSAMP).

Commands for JMP Utility Panel

User Messages PanelsThis topic helps you to create, edit and delete special user messages.

See PRO/JCL User documentation for instructions on themanagement of user messages.

Create and Modify User Messages

Use this panel to edit, create, delete, and change the severity of the special user messages defined for your site. PRO/JCLdisplays this panel when you select User Messages from Settings action bar item on the JMP Utility.

56

ASG-PRO/JCL Reference Guide

Page 64: ASG-PRO/JCL Reference Guide

File Sort Help------------------------------------------------------------------------------

Create and Modify User Messages Row 1 to 12 of 12Command ===>

Enter 'ADD' to add a new message.Press END to exit panel.

Use: S (Select) or D (Delete)

Sel Msg Nr Sev Text--- ------ --- --------------------------------------------------------------

92000 0 THIS JOB USES SCHEDID = &192001 4 FIRST NODE OF NEW DATA SETS MUST BE A SYMBOLIC.92002 4 DATA SET NAME HAS BEEN CHANGED FROM TEST TO PROD.92003 4 DISP VALUE HAS BEEN MODIFIED FROM (,...) TO (NEW,...)92004 4 TAPE DATA SETS REQUIRE A JOBCLASS OF CLASS=T.92005 4 JOBCLASS CHANGED TO CLASS=T FOR TAPE DATA SET.92006 4 FIRST TWO CHARS OF THE PGM NAME HAVE BEEN CHANGED.92007 8 DUPLICATE PROCEDURE STEP NAME - &1.92008 8 AN INCORRECT JOB FREQUENCY INDICATOR WAS FOUND IN POSITION #592009 0 MSGCLASS PARAMETER ADDED.92010 4 THE MSGCLASS VALUE HAS BEEN MODIFIED.92011 0 THE TYPRUN PARM HAS BEEN REMOVED FROM THE JOB STMT.

Create and Modify User Messages Panel

Primary Commands

Command Description

ADD Add a message. See Add aMessage Popup.

LOCATE

Locate a message. Format:L xxxxx

LOC xxxxx

LOCATE xxxxx

where xxxxx is themessage number.

Primary commands for Create and Modify User Messages Panel

Line Commands

Command Description

S (Select) Edit a message. See Edit a Message Popup.

D (Delete) Delete a message. See Delete a Message Popup.

Line commands for Create and Modify User Messages Panel

57

User Messages Panels

Page 65: ASG-PRO/JCL Reference Guide

Fields

Field Description

Msg Nr Themessage number; it must be in the range from 90,000 to 99,999.

Sev

A positive number up to 99,999 indicating the level of severity assigned to the error:

l 0 through 3 -- Advisory, an A is appended to the error message in the SJL.

l 4 through 7 --Warning, a W is appended to the error message in the SJL.

l 8 through 99 -- Error, an E is appended to the error message in the SJL.

Text This is the first 62 characters of the short text. To view the entire short text and long text selectthemessage with S in the Sel field.

Fields for Create and Modify User Messages Panel

Add a Message Popup

Use this panel to add a special user message.

Add a Message

Command ===>

Press Enter or END to accept changes or enter Cancel to discard changes.

Message id . . .Severity . . . .Text . . . . . .

Long text . . .

Add a Message popup

Fields

Field Description

Message ID This number must be in the range from 90,000 to 99,999.

Severity This is the severity level associated with themessage; it must be in the range 00-99.

TextRequired: Enter up to 114 characters of short text. The short text may have up to 4replaceable parameters in the form &1, &2, &3 and &4. These parameters are shared withthe long text.

Fields for Add a Message popup

58

ASG-PRO/JCL Reference Guide

Page 66: ASG-PRO/JCL Reference Guide

Field Description

Long TextOptional: Enter up to 228 characters ofmessage text that more fully explains the errordisplayed in the Short Message. The long text may have up to 4 replaceable parameters inthe form &1, &2, &3 and &4. These parameters are shared with the short text.

Edit a Message Popup

Use this panel to edit a special user message.

Edit

Command ===>

Press Enter or END to accept changes, or enter Cancel to reject changes.

Message id 90002Severity . . . . 8Text . . . . . . The procedure was not found.

Long text . . . The PROC was not found in the production dataset. Recheckthe procedure library.

Edit a Message popup

Fields

Field Description

Message ID Themessage number. This field is not changeable on this panel.

Severity This is the severity number associated with themessage.

TextRequired: Enter up to 114 characters of short text. The short text may have up to 4replaceable parameters in the form &1, &2, &3 and &4. These parameters are shared withthe long text.

Long TextOptional: Enter up to 228 characters ofmessage text that more fully explains the errordisplayed in the Short Message. The short text may have up to 4 replaceable parametersin the form &1, &2, &3 and &4. These parameters are shared with the short text.

Fields for Edit a Message popup

Delete a Message Popup

Use this panel to delete a special user message.

59

User Messages Panels

Page 67: ASG-PRO/JCL Reference Guide

Delete a Message

Command ===>

Press Enter to delete messageEnter Cancel or press END to cancel deletion

Message id 90002Severity . . . . 8Text . . . . . . The procedure was not found.

Long text . . . The PROC was not found in the production dataset. Recheckthe procedure library.

Delete a Message Popup

FieldsThe fields on the popup are view only.

Field Description

Message ID Themessage number.

Severity This is the severity number associated with themessage.

Text The short message text.

Long Text The long message text.

Fields for Delete a Message Popup

60

ASG-PRO/JCL Reference Guide

Page 68: ASG-PRO/JCL Reference Guide

JES Submit ExitA JES Submit Exit is specified when a user wants to access or makemodifications to input records after processing by oneof the optional Scheduler Interfaces. (If no Scheduler Interfaces are specified, the JES Submit Exit occurs at the same pointas the Selection Exit). A JES Submit Exit is written like a Selection Exit. For further information regarding Selection Exits,refer to Security Interfaces. Modifications include inserts, deletes, or replacements. The JCL modifications are not saved,and do not affect any JCL that is written to the Output Libraries.

Under normal conditions PRO/JCL reads a completemember, or sequential file, into memory. After the records are read,PRO/JCL begins scanning and processing them. When a JES Submit Exit is specified, PRO/JCL pauses after any schedulerprocessing is complete. It is at this point that the JES Submit Exit is invoked. All the records available after schedulerprocessing are now available to the exit. For instance if you scan fivemembers, PRO/JCL invokes the JES Submit Exit fivetimes.

The user develops the JES Submit Exit Program (written in REXX). After it is written, the JES Submit Exit can be invokedfrom either the PRO/JCL Validation ISPF panel, PRO/JCL JJ Edit Macro, or batch. The JES Submit Exit name is an 8-character member name and the parameter can be up to 45 characters.

Note that the JES Submit Exit is run within the PRO/JCL Started Task when invoking the product in foreground mode.

There are several SYS APIs which can be used with Selection Exits. See the topic - System-levelFunctions in the Using PRO/JCL with JMP documentation for further information.

n Invoking a JES Submit Exit Interactively

n Invoking a JES Submit Exit in Batch Mode

Invoking a JES Submit Exit InteractivelyUse the JJ Edit Macro, the PRO/JCL Validation panel or the Develop JCLManipulation Programs panel to invoke a JESSubmit Exit. The started task JCL must bemodified and the user's JES Submit Exit member must be specified.

To set up a JES submit exit

1. Modify the started task JCL. In the DSSISTC started task JCL, uncomment the SYSEXEC DD statement. (1) andspecify the library where the JES Submit Exit will be stored.

61

JES Submit Exit

Page 69: ASG-PRO/JCL Reference Guide

//DSSISTCR PROC//*//********************************************************************//* STARTED TASK PROC FOR PRO/JCL AND INFO/X//*//* MEMBER NAME : DSSISTCR (BUILT FROM SKELETON: D0SIIJ12)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************//*// SET SOUT='X'// SET HLQ='DSSI.Rnnn.TAPE'// SET PCHLQ='DSSI.Rnnn.TAPE'

•••

//*SYSUDUMP DD SYSOUT=&SOUT//*DSNTRACE DD SYSOUT=&SOUT

1 //SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC

INSTALL Library Member DSSISTC - Started Task Procedure

2. In the Interfaces panel, select the JES Exit Parm option.

PRO/JCL Interfaces Row 1 to 15 of 37Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ASGUSR Desc:

Sel Option RTS Value Default Allowable Va--- ------------------------ ----------------- ----------------- ------------...

JES JES2 JES2 JES2 or JE/ JES Exit Parm Anything o

JES Submit Exit Member namOASIS Delimiter '$(' '$(' a quoted sOASIS Subsystem an alphabeOPC Mark ADID Complete N Y Y or N

...

Setting up a JES Exit in the Interfaces panel

3. In the RTS field of the JES Exit Parm popup, enter the parameter required by the JES Submit Exit program or leaveblank. The parameter must be enclosed in quotes if it contains special characters.

PRO/JCL JES Exit Parm Row 1 to 2 of 2Command ===> Scroll ===> CSR

Option values:RTS . . .Default :Allowable: Anything or Null Value

Description:

Use JES Submit Exit Parm to specify the character stringneeded for the JES Submit Exit.

Specifying a JES parameter in the JES Exit Parm popup

4. In the Interfaces panel, select the JES Submit Exit option.

5. In the RTS field of the JES Submit Exit popup, enter the exit program name or leave the field blank.

62

ASG-PRO/JCL Reference Guide

Page 70: ASG-PRO/JCL Reference Guide

PRO/JCL JES Submit Exit Row 1 to 2 of 2Command ===> Scroll ===> CSR

Option values:RTS . . .Default :Allowable: Member name or Null Value

Description:

Use JES Submit Exit to specify the a valid member name ofthe exit you want invoked.

***************************** Bottom of data ******************************

Specifying a JES Exit in the JES Submit Exit popup

With a JES Submit Exit name specified, PRO/JCL calls the Exit when validating from the Validationpanel, the JMP panel or the JJ Edit Macro.

Invoking a JES Submit Exit in Batch ModeWhen invoking a JES Submit Exit in batch mode, the SYSEXEC DD statement needs to be specified in the PR1PROC PROCand the JES Submit Exit namemust be included in the PRO/JCL input statement.

To set up a batch JES submit exit JOB

1. Specify the library where the JES Submit Exit will be stored. (1)

//********************************************************************//* PR1PROC - PROC//*//* MEMBER NAME : PR1PROC (BUILT FROM SKELETON: D0SIIJ10)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************//PR1PROC PROC HLQ=---HLQ---,

...// PROD='-PROJCL',// PCHLQ=---PCHLQ---//*//PROJCL EXEC PGM=DJ0YINIB,REGION=0M,PARM='&PARMPGM /&PROD'//STEPLIB DD DISP=SHR,DSN=&HLQ..LOAD// DD DISP=SHR,DSN=&DB2EXIT// DD DISP=SHR,DSN=&DB2LOAD// DD DISP=SHR,DSN=&CICSLOAD//PCFILE DD DISP=SHR,DSN=&PCHLQ..PCFILE//JPCONFIG DD DISP=SHR,DSN=&HLQ..SPJMCNTL(BATCONF)

1. //SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC//SYSTSPRT DD SYSOUT=*

Sample PRO/JCL Procedure PR1PROC

2. Edit the JCL that calls PR1PROC adjusting the Input statement as necessary.

63

Invoking a JES Submit Exit in Batch Mode

Page 71: ASG-PRO/JCL Reference Guide

//MYPROJ JOB (ACCT),BUILD,MSGCLASS=X,NOTIFY=&SYSUID// JCLLIB ORDER=(DSSI.Snnn.TAPE.INSTALL)//GLOBAL INCLUDE MEMBER=IXINIX//STEP1 EXEC PR1PROC,// PROD='-PROJCL'//SYSEXEC DD DSNAME=SYSUSR.USU.EXEC,DISP=SHR//MYSTUFF DD DISP=SHR,DSN=SYSUSR.MY.LOAD//SYSIN DD *%% INPUT DSNAME='MYSYSS.WORK.LIB',%% SELECT=PJGL0020,%% TYPE=PDS,%% PROCESS=JOB,%% RTSMEMBER=MYRTSMEM,%% REPORTSTYLE=PAPER,%% REPORTS=(SJL)

Specifying a Selection exit and parameter to a PRO/JCL batch run.

64

ASG-PRO/JCL Reference Guide

Page 72: ASG-PRO/JCL Reference Guide

Library InterfacesThis topic provides information about library interfaces.

n CA-LIBRARIAN

n CA-PANVALET

CA-LIBRARIANPRO/JCL interfaces with CA-LIBRARIAN files, link DJ0YLIB from the PRO/JCL SPJMSAMP dataset with CA-LIBRARIAN.

Establishing the Interface

To establish the interface to CA-LIBRARIAN

1. Edit the DJ0YLIB member of SPJMSAMP.

2. Replace the JOB statement with one that is valid for the user site.

3. Modify the HLQ symbolic to specify the first two nodes of the PRO/JCL load library name.

4. Modify the LIB symbolic to specify the CA-LIBRARIAN load library name.

5. Submit DJ0YLIB. The job should run with a condition of 00.

PRO/JCL expands CA-LIBRARIAN -- INCLUDE cards.

CA-PANVALETPRO/JCL interfaces with CA-PANVALET libraries. Use the installation procedure that corresponds with the CA-PANVALETrelease level used at your user site.

CA-PANVALET Release 12 and LaterIf the library that contains PAM (a CA-PANVALET load module) is not in the link pack area or in the link list, add it to theSTEPLIB:

l If executing PRO/JCL in batch mode, modify the PR1PROC batch procedure PROC. Add the library containing thePAM load module to the STEPLIB concatenation.

l If executing PRO/JCL in ISPF mode, modify the DSSISTC started task PROC. Add the library containing the PAMload module to the STEPLIB concatenation.

l PRO/JCL expands CA-PANVALET ++ INCLUDE cards.

l If you add the PANVALET load library to the STEPLIB concatenation, it must be APF-authorized.

65

Library Interfaces

Page 73: ASG-PRO/JCL Reference Guide

Other Utility InterfacesThis topic provides information about other utility interfaces.

n IAM

n IEBGENER

n IEBCOPY

n IDCAMS

n IEHPROGM

n DFSORT

n SYNCSORT

IAMThe PRO/JCL IAM interface recognizes a file as an IAM file when the string $IAM is:

l coded in the OWNER parameter (See figure - A sample DEFINE statement for an IAM dataset).

l part of the dataset name.

l part of the STORCLAS or DATACLAS name.

DEFINE CLUSTER (NAME(DSSI.EPR0407) -OWNER($IAM) -RECORDS(800 100) -STORAGECLASS(SCBASE) )

A sample DEFINE statement for an IAM dataset

To turn on the IAM interface

1. Select IAM on the Interfaces panel.

2. Type Y on the IAM popup. The default is N.

PRO/JCL Interfaces Row 1 to 34 of 37Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: P390 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------...

DSS Version 1.4 1.4 1.1, 1.2, 1.HSMVOL MIGRAT MIGRAT VOLSER or NuIAM N N Y or NIMS N N Y or N

...

Interfaces panel

66

ASG-PRO/JCL Reference Guide

Page 74: ASG-PRO/JCL Reference Guide

IEBGENERThe PRO/JCL IEBGENER interface:

l Checks to make sure that thesemandatory DD statement are allocated properly:

o SYSPRINT allocated for output.o SYSUT1 allocated for input.o SYSUT2 allocated for output.o SYSIN is allocated for input.

l Checks the syntax of the control statements.

l Simulates the creation of a GENERATE statement in the samemanner the operating system does, if SYSIN is notallocated.

l Simulates the operation of these statements:

o GENERATEo MEMBERo RECORD

For the GENERATE statement, PRO/JCL enforces these parameters: MAXFLDS, MAXGPS, MAXLITS, MAXNAME.

PRO/JCL always validates IEBGENER control statements when found within a JCL member.

To validate an IEBGENER control statement member

n Specify IEBGENER as the procmode on the PRO/JCL Validation panel or within the JJ Edit Macro command.

To deactivate the IEBGENER interface, change the value of the “process IEBGENER” RTS option to Non the Run-Time Options panel.

IEBCOPYThe PRO/JCL IEBCOPY interface:

l Checks to make sure that if the JCL allocates SYSIN, it is allocated for input.

l Checks the syntax of the control statements.

l Simulates the operation of these statements:

o COPYo SELECTo EXCLUDEo ALTERMODo COPYMOD

67

IEBGENER

Page 75: ASG-PRO/JCL Reference Guide

l If SYSIN is not allocated in the JCL, PRO/JCL simulates the utility as though it found this card duringprocessing (the same as the operating system):

COPY INDD=SYSUT1,OUTDD=SYSUT2

l PRO/JCL ensures that any SELECTEDmembers exist in the OUTDD directory if they exist in the INDD directory.

l PRO/JCL simulates the copying of all members if no members are selected or excluded.

l If members are excluded, all other members are copied to OUTDD

l If both SELECT and EXCLUDE are specified, it is an error.

l PRO/JCL fully tracks members which are copied between datasets, in their new location.

l PRO/JCL can validate IEBCOPY control statements when found within a JCL member.

To activate this interface

n Set the Process IEBCOPY RTS option to Y.

To validate an IEBCOPY control statement member

n Specify IEBCOPY as the procmode on the PRO/JCL Validation panel or within the JJ Edit Macro command.

To deactivate the IEBCOPY interface, change the value of the “process IEBCOPY” RTS option to N onthe Run-Time Options panel.

IDCAMSThe PRO/JCL IDCAMS interface scans IDCAMS control statements for syntax, and simulates catalog or VTOC entries as aresult.

PRO/JCL can validate IDCAMS control statements when found within a JCL member.

To activate this interface

n Set the Process IDCAMS RTS option to Y.

To validate an IDCAMS control statement member

n Specify IDCAMS as the procmode on the PRO/JCL Validation panel or within the JJ Edit Macro command.

The figure - JCL that deletes a dataset then tries to access it shows JCL that deletes a dataset, then accesses it in thesecond step. The figure - Results of a scan on JCL shows the result of the validation.

68

ASG-PRO/JCL Reference Guide

Page 76: ASG-PRO/JCL Reference Guide

EDIT DSSI.SYS1.CNTL(IDCMINFC) - 01.00 Columns 00001 00072Command ===> Scroll ===> CSR****** ***************************** Top of Data *****************************000001 //BADJOB JOB (X)000002 //REMOVE EXEC PGM=IDCAMS000003 //SYSPRINT DD SYSOUT=*000004 //SYSIN DD *000005 DELETE P4432.AR.MARCH.RECEIPTS CLUSTER000006 /*000007 //TRYTHIS EXEC PGM=IEFBR14000008 //DD1 DD DSN=P4432.AR.MARCH.RECEIPTS,DISP=SHR000009 //

JCL that deletes a dataset then tries to access it

EDIT DSSI.SYS1.CNTL(IDCMINFC) - 01.00 Columns 00001 00072Command ===> Scroll ===> CSR000001 //BADJOB JOB (X)==ERR> //REMOVE EXEC PGM=IDCAMS==MSG> E1 - DSS20021A - 'BADJOB REMOVE': STEP WAS SIMULATED, COND CODE '0000'.000003 //SYSPRINT DD SYSOUT=*000004 //SYSIN DD *====== ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--000005 DELETE P4432.AR.MARCH.RECEIPTS CLUSTER==ERR> /*====== ------- START OF UTILITY PROGRAM OUTPUT -------=======NOTE= DELETE P4432.AR.MARCH.RECEIPTS CLUSTER==MSG> E2 - DSS20053A - DATA SET 'P4432.AR.MARCH.RECEIPTS' WAS UNCATALOGED FROM==MSG> 'MVSV5.MASTER.CATALOG'.====== ------- END OF UTILITY PROGRAM OUTPUT -------=NOTE= --- END OF STEP ---==ERR> //TRYTHIS EXEC PGM=IEFBR14==MSG> E3 - DSS20021A - 'BADJOB TRYTHIS': STEP WAS SIMULATED, COND CODE '0000'.==ERR> //DD1 DD DSN=P4432.AR.MARCH.RECEIPTS,DISP=SHR==MSG> E4 - DSS20028E - DATA SET 'P4432.AR.MARCH.RECEIPTS' WAS NOT FOUND IN==MSG> CATALOG.=NOTE= --- END OF STEP ---000009 //=NOTE= --- END OF JOB ---====== JOB BADJOB CONSISTS OF 2 PROGRAM(S), 0 PROC(S), 0 INCLUDE(S), 3 DD====== STATEMENT(S)

Results of a scan on JCL

To deactivate the IDCAMS interface, change the value of the “process IDCAMS” RTS option to N onthe Run-Time Options panel.

IEHPROGMThe PRO/JCL IEHPROGM interface:

l ensures that the JCL allocates SYSIN and SYSPRINT DDs.

l checks the syntax of all control statements.

l simulates the operation of these statements:

69

IEHPROGM

Page 77: ASG-PRO/JCL Reference Guide

CATLG UNCATLG RENAME

SCRATCH BLDG CONNECT

PRO/JCL always validates IEHPROGM control statements when found within a JCL member.

To validate an IEHPROGM control statement member

n Specify IEHPROGM as the procmode on the PRO/JCL Validation panel or within the JJ Edit Macro command.

To deactivate the IEHPROGM interface, change the value of the “Process IEHPROGM” RTS option toN on the Run-Time Options panel.

DFSORTThe PRO/JCL DFSORT interface checks the syntax ofmost control statements. The PRO/JCL DFSORT interface checks thedatasets named by the FNAMES or FILES parameters on the OUTFIL statements.

The DFSORT interface also:

l Ensures that the JCL allocates SYSIN and SYSPRINT DDs.

l Performs syntax checking of these control statements:

ALTSEQ DEBUG END INCLUDE

INPFIL INREC MERGE MODS

OMIT OPTION OUTFIL[OUTFILE] OUTREC

RECORD SORT SUM JOINKEYS

JOIN REFORMAT

No user action is required to activate the interface. PRO/JCL is shipped with the “Process SORT” RTS option set to Y as thedefault setting (See figure - Run-Time Options panel-SORT processing option).

PRO/JCL recognizes these keywords for these statements, but not any associated subparameter:

l INREC statement keywords BUILD, OVERLAY, PARSE.

l OUTFIL statement keywords BUILD, HEADER1, HEADER2, INCLUDE, OUTREC, OVERLAY, PARSE, TRAILER1,TRAILER2.

l OUTREC statement keywords BUILD, OVERLAY, PARSE

To deactivate the DFSORT interface

n Change the value of the “Process SORT” RTS option to “N”.

70

ASG-PRO/JCL Reference Guide

Page 78: ASG-PRO/JCL Reference Guide

File-------------------------------------------------------------------------------PRO/JCL Run-Time Options Row 20 to 28 of 28Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: P390 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------

Process IEHLIST Y or NProcess IEHPROGM Y Y Y or NProcess SORT N Y Y or NProgram Checking Y Y Y or NProgrammer Name Required N N Y or N

...

Run-Time Options panel-SORT processing option

By default, PRO/JCL looks for the program “ICEMAN” in order to invoke DFSORT. Default programaliases are shipped for SORT, IERRCO00, and IGHRCO00. If you use a program other than these,modify the Utility Alias table to include your SORT program. Refer to Utility Alias Table, for moreinformation about setting up DFSORT as the default sort utility.

SYNCSORTThe PRO/JCL SYNCSORT interface checks the syntax ofmost control statements. The PRO/JCL SYNCSORT interface checksthe datasets named by the FNAMES or FILES parameters on the OUTFIL statements.

The SYNCSORT interface also:

l Ensures that the JCL allocates SYSIN and SYSPRINT DDs.

l Performs syntax checking of these control statements:

ALTSEQ DEBUG END INCLUDE

INPFIL INREC JOIN JOINKEYS

MERGE MODS OMIT OPTION

OUTFIL OUTREC RECORD REFORMAT

SKIPREC SORT STOPAFT SUM

PRO/JCL recognizes these keywords for these statements, but not any associated subparameter:

l INREC statement keywords BUILD, OVERLAY, PARSE.

l OUTFIL statement keywords BUILD, HEADER1, HEADER2, OUTREC, OVERLAY, PARSE, TRAILER1, TRAILER2.

l OUTREC statement keywords BUILD, OVERLAY, PARSE

71

SYNCSORT

Page 79: ASG-PRO/JCL Reference Guide

To activate the SYNCSORT interface

1. Change the value of the “Process SORT” RTS option to “Y”.

File-------------------------------------------------------------------------------PRO/JCL Run-Time Options Row 20 to 28 of 28Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: P390 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------

Process IEHLIST Y or NProcess IEHPROGM Y Y Y or NProcess SORT Y Y Y or NProgram Checking Y Y Y or NProgrammer Name Required N N Y or NPROCLIBDD JOBPROC JOBPROC DDname or NuReformat w/Errors N N Y or NReformat On Change Y Y Y or NResolve System Symbols N N Y or NTSO Submit Y Y Y or NUse JES2 PROCLIB Defs N N Y or N

Run-Time Options panel-SORT processing option

2. Change the value of the SORT option to SYNCSORT in the Utility Alias panel.

PRO/JCL Utility Alias Row 1 to 7 of 7Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: DV119A Desc:

Enter 'ADD' to add Utility Alias

Use: S (Select), R (Repeat), D (Delete)

Sel Local Utility Generic Utility--- ------------- ---------------

SORT SYNCSORT

Utility Alias table option panel

Refer to Utility Alias Table, for more information about setting up SYNCSORT as the default sort utility.

72

ASG-PRO/JCL Reference Guide

Page 80: ASG-PRO/JCL Reference Guide

Private Procedure UtilitiesThis topic describes the interface to DYNAPROC and EZPROCLIB utilities.

n DYNAPROC

n CA-EZPROCLIB

DYNAPROCPRO/JCL dynamically allocates the DD PROCLIB for DYNAPROC as needed.

To activate the interface

n Enter the name of the DD (DYNAPROC) in the PROCLIBDD option. This DD specifies the libraries that PRO/JCLsearches for PROCs before it searches the JES PROCS. For more information about the PROC search order seethe topic - Library Search Order for PROCs and INCLUDEs in the User documentation.

PROCLIBDD Row 1 to 8 of 8Command ===> Scroll ===> PAGE

Option values:RTS . . . JOBPROCDefault : JOBPROCAllowable: DDname or Null Value

Description:

Use PROCLIBDD to specify the ddname your system uses toresolve PROC's and INCLUDE'S. This might by 'DYNAPROC' or'EZPROC' if either product is used to resolve PROC's NoteAs:PRO/JCL processes PROC libraries in this order: 1. InstreamPROCs. 2. Those specified in the PRO/JCL Validation panelFIRSTPROCLIB option 3. Those specified in the JCLLIBstatement in the JCL. 4. Those specified in this (PROCLIBDD)option. 5. Those specified in JES.

Setting PRO/JCL to use the DYNAPROC interface

To reach this panel, from the Edit/View Run-Time Settings panel

1. Type 1 Enter (Run-Time Options Values).

2. Type a slash (/) at the PROCLIBDD option.

CA-EZPROCLIBPRO/JCL dynamically allocates the DD PROCLIB for CA-EZPROCLIB as needed.

To activate the interface

n Enter the name of the DD (PROCLIB) in the PROCLIBDD option. This DD specifies the libraries that PRO/JCLsearches for PROCs before it searches the JES PROCS. For more information about the PROC search order seethe topic - Library Search Order for PROCs and INCLUDEs in the User documentation.

73

Private Procedure Utilities

Page 81: ASG-PRO/JCL Reference Guide

PROCLIBDD Row 1 to 8 of 8Command ===> Scroll ===> PAGE

Option values:RTS . . . JOBPROCDefault : JOBPROCAllowable: DDname or Null Value

Description:

Use PROCLIBDD to specify the ddname your system uses toresolve PROC's and INCLUDE'S. This might by 'DYNAPROC' or'EZPROC' if either product is used to resolve PROC's Notes:PRO/JCL processes PROC libraries in this order: 1. InstreamPROCs. 2. Those specified in the PRO/JCL Validation panelFIRSTPROCLIB option 3. Those specified in the JCLLIBstatement in the JCL. 4. Those specified in this (PROCLIBDD)option. 5. Those specified in JES.

***************************** Bottom of data ******************************

Setting PRO/JCL to use the DYNAPROC interface

To reach this panel, from the Edit/View Run-Time Settings panel

1. Type 1 Enter (Run-Time Options Values).

2. Type a slash (/) at the PROCLIBDD option.

74

ASG-PRO/JCL Reference Guide

Page 82: ASG-PRO/JCL Reference Guide

PRO/JCL Edit MacrosPRO/JCL Edit macros validate JCL during an ISPF Edit session. The Edit macros provide immediate feedback on all errors.For each error detected by the Edit macro, an error message is displayed in the online Structured JCL Listing (SJL) outputfollowing the statement in error. Thesemessages are standard PRO/JCL error messages or site-specific messages definedthrough the PRO/JCL JMP Facility. Both types of errors can be corrected without leaving the ISPF Edit session.

For a complete listing of Error Messages, descriptions, and severity codes see the PRO/JCLMessages and Codesdocumentations.

Edit Macro SummaryThe below table describes PRO/JCL Edit macros and their functions:

Edit Macro Description

JJInvokes PRO/JCL during an ISPF Edit session to validate the JCL or control statement memberbeing edited, directly displaying the results in the Edit session when its processing iscomplete.

JJDIRECTInvokes PRO/JCL on a target machine to validate the JCL or control statement member beingedited on the initiating machine. The Structured JCL Listing (SJL) output is displayed in Browsemode.

JJFEThe Find Error edit macro locates a specific error in the Structured JCL Listing (SJL) output(after the JJ edit macro has been invoked).

JJFEX The Find Extended Message edit macro locates the extended error message text for a specificerror in the Structured JCL Listing (SJL) output (after the JJ edit macro has been invoked).

JJSCANInvokes PRO/JCL during an ISPF Edit session to validate the JCL or control statement memberbeing edited, displaying the Structured JCL Listing (SJL) output in Browsemode.

JJSUB

Invokes PRO/JCL during an ISPF Edit session to validate the job being edited. PRO/JCLsubmits the job when validation processing completes with a severity level of 4 or less.

The Structured JCL Listing (SJL) output is only displayed when JJ processingcompletes with a severity level of 5 or greater.

JJTWS Invokes PRO/JCL during an Edit session from within TWS. See TWS (OPC) - Interface for moreinformation.

75

PRO/JCL Edit Macros

Page 83: ASG-PRO/JCL Reference Guide

JJ - Run PRO/JCLJJ is an Edit macro for ISPF Edit that invokes PRO/JCL processing on the JCL or control statement member you areediting. Type the Edit macro command and optional parameters on the command line while editing a member, and pressEnter to process the JCL member. PRO/JCL displays the results from the scan in the Edit session, placing messages abouterrors and standards violations near the lines to which they apply.

l If you are a user with RTS member authority, the JJ value entered takes precedence over entries in both theEdit Macro Settings panel and the Validation panel.

l If you are a user who has restricted, or limited member authorization, the values set by the Administratoroverride the values from the JJ command line, the Validation panel or the Edit Macro Settings panel.

Validating Using Preset Parameters

The JJ Edit macro allows you to process themember while you edit it. These PRO/JCL panels, the Edit Macro Settingspanel and the PRO/JCL Validation panel use the same settings.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJ Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJ Edit Macro on Command Line

The results of running this JJ Edit Macro are shown in the below figure.

76

ASG-PRO/JCL Reference Guide

Page 84: ASG-PRO/JCL Reference Guide

====== PRO/JCL RELEASE Rnnn AS OF 08/17/2017 09:16:56====== ------------------------------------------------------------------------====== THE HIGHEST SEVERITY CODE ENCOUNTERED WAS 8====== RTS MBR = DEFAULT REF MBR = DEFAULT====== | PRO/JCL | STANDARDS | SUPPRESSED | SECURITY EXIT: ON |====== ------------------------------------------------------------------------====== ADVISORY 0 0 0====== WARNING 0 0 0====== SEVERE 2 0 0====== TOTAL 2 0 0====== SEV MSG NO. MESSAGE TEXT====== ------------------------------------------------------------------------====== E1 8 DSS20006E MEMBER 'PROG1' WAS NOT FOUND.====== E2 8 DSS20105E 'JOB1 JSTEP1': STEP WOULD ABEND, CODE 'S806'.000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB==ERR> //JSTEP1 EXEC PGM=PROG1==MSG> E1 - DSS20006E - MEMBER 'PROG1' WAS NOT FOUND.==MSG> E2 - DSS20105E - 'JOB1 JSTEP1': STEP WOULD ABEND, CODE 'S806'.=NOTE= --- END OF STEP ---000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14=NOTE= //PS1 EXEC PGM=&PROG,TIME=(1,1)=NOTE= --PS1 EXEC PGM=IEFBR14,TIME=(1,1)=NOTE= //DD1 DD DSN=DSSI.DOC.JCL,DISP=SHR=NOTE= //DD2 DD DSN=DSSI.NEW.DS,DISP=(NEW,CATLG,DELETE),UNIT=DSSDA,=NOTE= // SPACE=(TRK,(1,1))=NOTE= --- END OF STEP ---=NOTE= --- END OF PROC ---=NOTE= --- END OF JOB ---============ JOB JOB1 CONSISTS OF 2 PROGRAM(S), 1 PROC(S), 0 INCLUDE(S), 2 DD====== STATEMENT(S)======****** **************************** Bottom of Data ****************************

ISPF Edit Panel showing JJ Edit Macro results

Changing Preset Parameters

Use JJ OPT to alter the preset parameters in the JJ Edit Macro Settings Panel. The JJ options specified on the commandline supersede the values of the JJ Edit Macro Settings Panel.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJ OPT Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJ Edit Macro on Command Line

77

JJ - Run PRO/JCL

Page 85: ASG-PRO/JCL Reference Guide

Settings------------------------------------------------------------------------------

JJ Edit Macro SettingsCommand ===>

RTS Member . . . . . DEFAULT ( * for list)Processing Mode . . JOB ( * for list)First PROCLIB . . .Lib type . . . . . PDS ( * for list)

JMP Library . . . . 'DSSI.DOC.EXEC'JMP Name . . . . . .JMP Parm . . . . . .

Reformat . . . . . . * ( * for list)Reformat Member . . DEFAULT ( * for list)

Press END to return to Edit.

Specifying JJ Edit Macro Settings

The JJ Edit Macro Settings panel and the PRO/JCL Validation panel use the same settings.

Validating Using Temporary Parameters

Use this method to input temporary parameters when invoking PRO/JCL. The below table contains a brief description ofthe parameters.

Syntax

JJ [procmode][ID=started task][JMP=member][JMPPARM=parms][RTS=member] [REF=member][REFORMAT][REFORMATONLY]

The table lists the parameters for the JJ command.

Parameters

Parameter Description

procmode

Use to specify a valid processing mode. Valid entries are:

l JOB Process the input member as a job stream.

l JCL (Default) Select to process JOBs and PROCs. This processing modeexpects a JCL stream as input. In this mode, PRO/JCL can distinguish betweenJOB- and PROC-type JCL input streams; it then automatically invokes theappropriate processing mode.

l IDCAMS Process the input member as IDCAMS control statements.

l PROC Process the input member as PROCs.

l IEBGENER Process the input member as IEBGENER control statements.

l IEBCOPY Process the input member as IEBCOPY control statements.

l IEHPROGM Process the input member as IEHPROGM control statements.

JJ command line parameters

78

ASG-PRO/JCL Reference Guide

Page 86: ASG-PRO/JCL Reference Guide

Parameter Description

l DB2 Process the input member as DB2 control statements.

l DATA Select this processing mode to allow a JMP program to access andmanipulate input records without PRO/JCL validating or reformatting them.For example, if you have a dataset that contains control cards for variousutility programs and you want to make a change across all members of thedataset, PROCESS=DATAwill read the raw data and make it available to theJMP program, which is responsible for actually making the change. Ensurethat you specify a JMP program and an output file when using thisprocessing mode.

l ADRDSSU Process the input member as ADRDSSU control statements.

l SORT Process the input member as SORT control statements.

ID=started task Identifies the started task on which JJ is to run. The desired started task must bespecified when multiple started tasks are active.

JMP=memberA JMP program. The JMP routinemust reside in the SYSEXEC dd libraries, or in thelibrary specified in the JMP Library field of the JJ Edit Macro Settings or PRO/JCLValidation panels.

JMPPARM=parms Specifies the JMP parm(s) to be passed to the JMP program.

RTS=member Specifies an RTS member for processing input members.

REF=member Specifies a Reformatter member for reformatting input members.

REFORMATOptional invocation of JCL reformatting by PRO/JCL. Themember is “fully scanned”,meaning that PRO/JCL validates for both syntactic and run-time errors and all PROCsare expanded.

REFORMATONLYOptional invocation of JCL reformatting by PRO/JCL. Themember is not “fullyscanned”, meaning that PRO/JCL only checks the syntax and does not expand PROCsor INCLUDEs.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJ JOB JMP=yourjmp RTS=yourrts REF=yourreformat Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJ Edit Macro with temporary parameters

79

JJ - Run PRO/JCL

Page 87: ASG-PRO/JCL Reference Guide

Interaction of Pre-set and Temporary Parameters

The parameters on a JJ invocation will override the corresponding values in the JJ Edit Macro Settings panel. However, inthe case of the REFORMAT parameter, when it is set to ON on the JJ Edit Macro Settings panel, it may not be turned off.

The values set in the fields and Settings popups on the JJOPT panel are the same ones set on the PRO/JCL Validationpanel. Changing them in one panel changes them in the other.

Special Purpose Versions of the JJ Edit Macro

If you need a special purpose JJ Edit macro, to call a specific RTS and a specific JMP, make a copy of the JJ Edit macro (giveit a different name) and modify the parameters passed to the D0JEJJCC program.

JJ Edit macro takes up to 5 parameters.

000001 /*REXX*****************************************************************000002 * EXEC name: JJ - RUN PRO/JCL via edit session (Part 1). *000003 **********************************************************************/000004 "ISREDIT MACRO (PARMS)"000005000006 If RC<>0 then do000007 say "Macro not invoked as an Edit macro"000008 return rc000009 end000010000011 Parms = 'RTS=ASGUSR JMP=JMPTEST' Parms000012000013 rc=D0JEJJCC("%D0JEJJ JJ" Parms)000014000015 return 1 /*rc=1 positions cursor on Command line.*/

Modified version of the JJ Edit Macro

This special purpose Edit macro will use RTS member ASGUSR and will invoke the JMP member JMPTEST.

JJDIRECT - Run PRO/JCL Via Directed ExecutionDirected Execution is a PRO/JCL feature that allows you to scan JCL on a system other than the one you are on. DirectedExecution may be performed from ISPF EDIT using the JJDIRECT edit macro. The JJDIRECT edit macro invokes PRO/JCL ona target machine to process the JCL or control statement member you are editing locally.

One use for Directed Execution is to allow test JCL to be validated by a started task on the production machine. After theJCL passes through the validation phase, it can bemoved to production with greater confidence.

During JJDIRECT processing, PRO/JCL does the following:

l Connects to the target machine using the specified port and userid.

l Sends the JCL to the target machine.

l Generates a Structured JCL Listing (SJL) report detailing the results of the validation. This report is placed in atemporary dataset on the target machine and then copied back to the local machine.

Following the scan, the SJL is displayed in browsemode and the F(ind) command can be used to locate particular lines orphrases in the SJL.

For information about using Directed Execution in batch mode, see topic - Directed Execution in Batch in the Userdocumentation.

80

ASG-PRO/JCL Reference Guide

Page 88: ASG-PRO/JCL Reference Guide

If a JMP is specified which results in JCL changes, no files will be changed. The changes will ONLYbe reflected in the SJL; they will not be written to any output libraries.

Validating Using Preset Parameters

Type JJDIRECT on the command line while editing a member and press Enter to process themember. If the DirectedExecution parameters have not been set, PRO/JCL will display the JJ Edit Macro Settings panel (Specifying JJ Edit MacroSettings).

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJDIRECT Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJDIRECT Edit Macro on Command Line

Changing Preset Parameters

Use JJDIRECT OPT on the command line to bring up the JJDirect Edit Macro Settings panel, (see ISPF Edit PanelShowing JJDIRECT OPT and Specifying JJ Edit Macro Settings). Enter the following information on the JJDirect Edit MacroSettings panel:

Field Description

IP AddressThe IP address of the target machine. This should be in the form nnn.nnn.nnn.nnn.Optionally, if your company has installed a DNS server, you can use the symbolic name.Ask the Network Administration department for the appropriate value for this parameter.

Remote MachineDefinition

This is a valid Machine Definition for the user. Use an asterisk to select from a list ofMachine Definitions you may use for this machine. This is a required field if the IP Addressinformation has not been entered. If theMachine Definition and IP Address info havebeen entered, theMachine Definition will be used.

User ID/PasswordA valid user ID and password for the target machine. PRO/JCL will encrypt this informationbefore storing/using it. It is not available to any other user.

Port The port number of the listener on the target machine. If left blank, the default is 1265.Leaving this field blank is recommended. The valid range is 100 through 65536.

RTS Member This is the RTS member that PRO/JCL will use on the target machine.

Processing ModeThis is themode PRO/JCL will use to scan themember. Valid values are JOB, PROC,IDCAMS, IEBGENER, IEBCOPY IEHPROGM, DB2, and DATA.

First PROCLIB First PROCLIB searches the dataset for PROC and INCLUDEmembers, before the standard

JJDIRECT Settings Panel fields

81

JJDIRECT - Run PRO/JCL Via Directed Execution

Page 89: ASG-PRO/JCL Reference Guide

Field Description

libraries (JCLLIB, PROCLIBDD, or JES) are searched.

First PROCLIB Type The type identifies the First PROCLIB library as being a PDS, PANVALET, or LIBRARIANdataset.

JMP LibraryThis specifies the dataset that contains a JMP Program. Because PRO/JCL runs the JMPprogram on the target system, this library must exist on the target system. This field isnormally required when using JMP programs under JJDIRECT.

JMP Name This specifies themember name that contains the JMP program to run.

JMP Parm This field is passed to the JMP program on the target machine.

l If the USERID that PRO/JCL will use on the target machine has restricted, or limited authority, the values setby the Administrator override the values from the JJDirect Edit Macro Settings panel.

l The values set in the fields and Settings popups on the JJDirect Edit Macro Settings panel are the same onesset on the PRO/JCL Validation panel. However, these settings are stored separately from JJ. Therefore,changing them in one panel will not effect the other.

l When using a JMP program with JJDIRECT, it is important to note where the JMP program runs. With JJ theJMP program runs within your TSO session. Therefore any REXX 'say' commands will appear on yourterminal. However, under JJDIRECT the JMP program runs on the target machine, within the PRO/JCLstarted task. The output from any REXX “say” commands will appear in a TSPRnnnn DD in the started taskon the target machine.

EDIT DSSI.WORK.CNTL(PCME) - 01.01 Columns 00001 00072Command ===> jjdirectopt Scroll ===> CSR****** ***************************** Top of Data ***********************000001 //DSSIMA JOB (ACCOUNT),'SYS REBUILD',MSGCLASS=X,000002 // NOTIFY=ASGUSR,CLASS=F,COND=(4,LT),TIME=1440,REGION=6M000003 // JCLLIB ORDER=(DSSI.DOC.CNTL)000004 // EXEC PCCOPY****** **************************** Bottom of Data **********************

ISPF Edit Panel Showing JJDIRECT OPT

82

ASG-PRO/JCL Reference Guide

Page 90: ASG-PRO/JCL Reference Guide

Settings

JJDirect Edit Macro SettingsCommand ===>

Remote Machine Definition ( * for list)

or IP Address . . . . . .User ID . . . . . . . Password . . .Port . . . . . . . . . (Optional)

Remote:RTS Member . . . . DEFAULTProcessing Mode ( * for list)First PROCLIB . .Lib type . . . . ( * for list)

JMP Library . . .JMP Name . . . . .JMP Parm . . . . .

Press END to return to Edit.

Specifying JJ Edit Macro Settings

Validating Using Temporary Parameters

Use this method to input temporary parameters when invoking PRO/JCL. The parameters that allowDirected Execution,(IP Address, User ID, etc.) must be set on the JJDirect Edit Macro Settings panel.

If you are a user who has restricted, or limited authority, the values set by the Administratoroverride the values from the JJDIRECT command line or the JJDirect Edit Macro Settings panel.

Syntax

JJDIRECT [procmode][ID=started task][JMP=member][JMPPARM=parms][RTS=member]

JJDIRECT command line parameters lists the parameters and values for the JJDIRECT command.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJDIRECT RTS=RTS01 Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJDIRECT Edit Macro with temporary parameters

Interaction of Pre-set and Temporary Parameters

The parameters on JJDIRECT override the corresponding values in the JJDirect Edit Macro Settings panel.

The values set in the fields and Settings popups on the JJDirect Edit Macro Settings panel are the same ones set on thePRO/JCL Validation panel. However, these settings are stored separately from JJ. Therefore, changing them in one panelwill not affect the other.

83

JJDIRECT - Run PRO/JCL Via Directed Execution

Page 91: ASG-PRO/JCL Reference Guide

Parameters

Parameter Description

procmode

Use to specify a valid processing mode. Valid entries are:

l JOB Process the input member as a job stream.

l JCL (Default) Select to process JOBs and PROCs. This processing modeexpects a JCL stream as input. In this mode, PRO/JCL can distinguish betweenJOB- and PROC-type JCL input streams; it then automatically invokes theappropriate processing mode.

l IDCAMS Process the input member as IDCAMS control statements.

l PROC Process the input member as PROCs.

l IEBGENER Process the input member as IEBGENER control statements.

l IEBCOPY Process the input member as IEBCOPY control statements.

l IEHPROGM Process the input member as IEHPROGM control statements.

l DB2 Process the input member as DB2 control statements.

l DATA Select this processing mode to allow a JMP program to access andmanipulate input records without PRO/JCL validating or reformatting them.For example, if you have a dataset that contains control cards for variousutility programs and you want to make a change across all members of thedataset, PROCESS=DATAwill read the raw data and make it available to theJMP program, which is responsible for actually making the change. Ensurethat you specify a JMP program and an output file when using thisprocessing mode.

l ADRDSSU Process the input member as ADRDSSU control statements.

l SORT Process the input member as SORT control statements.

ID=started task Identifies the started task on which JJ is to run. The desired started task must bespecified when multiple started tasks are active.

JMP=memberA JMP program. The JMP routinemust reside in the SYSEXEC dd libraries, or in thelibrary specified in the JMP Library field of the JJ Edit Macro Settings or PRO/JCLValidation panels.

JMPPARM=parms Specifies the JMP parm(s) to be passed to the JMP program.

RTS=member Specifies an RTS member for processing input members.

JJDIRECT command line parameters

84

ASG-PRO/JCL Reference Guide

Page 92: ASG-PRO/JCL Reference Guide

JJDIRECT Output

BROWSE ASGUSR.SJL.SCAN.TEMP1 Line 00000000 Col 001 080Command ===> Scroll ===> CSR

********************************* Top of Data **********************************Structured JCL Listing - JCL Section AS OF: 08/17/17 15:13:15PRO/JCL Release R340 RTS Member: RTS01 Security Exit: ON--------------------------------------------------------------------------------**************************************************** Results of processing ISPF EDITWORKAREA ****************************************************

//JOB1 JOB//JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB//JSTEP1 EXEC PGM=PROG1E1 - DSS20006E - Member 'PROG1' was not found.E2 - DSS20105E - 'JOB1 JSTEP1': step would ABEND, CODE 'S806'.--- END OF STEP ---//JSTEP2 EXEC PROC1,PROG=IEFBR14

//PS1 EXEC PGM=&PROG,TIME=(1,1)--PS1 EXEC PGM=IEFBR14,TIME=(1,1)//DD1 DD DSN=DSSI.DOC.JCL,DISP=SHR//DD2 DD DSN=DSSI.NEW.DS,DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,// SPACE=(TRK,(1,1))--- END OF STEP ------ END OF PROC ---

--- END OF JOB ---

JOB JOB1 CONSISTS OF 2 PROGRAM(S), 1 PROC(S), 0 INCLUDE(S), 2 DD STATEMENT(S)

Structured JCL Listing - Error Summary AS OF: 04/29/17 15:13:15--------------------------------------------------------------------------------

Sev Msg No. Message Text--------------------------------------------------------------------------------E1 8 DSS20006E Member 'PROG1' was not found.E2 8 DSS20105E 'JOB1 JSTEP1': step would ABEND, CODE 'S806'.

Structured JCL Listing - Error Statistics AS OF: 04/29/17 15:13:15--------------------------------------------------------------------------------

| PRO/JCL | Standards | Suppressed |--------------------------------------------------------------------------------Advisory 0 0 0Warning 0 0 0Severe 2 0 0Total 2 0 0

Structured JCL Listing - I/O Statistics AS OF: 04/29/17 15:13:15--------------------------------------------------------------------------------INPUT DSN = DSSI.DOC.PROCLIB--------------------------------------------------------------------------------Member Name | Read | Added | Deleted | Changed | Written | References |--------------------------------------------------------------------------------PROC1 4 0 0 0 0 1Total: 4 0 0 0 0 1

INPUT DSN = ISPF EDITWORKAREA--------------------------------------------------------------------------------Member Name | Read | Added | Deleted | Changed | Written | References |--------------------------------------------------------------------------------ISPF EDITWORKAREA 4 0 0 0 0 1Total: 4 0 0 0 0 1

Options In Effect:Server Location: SYS1(192.168.0.141/1265)PCFile Owner: SYS1(192.168.0.141/1265)

.

.

.******************************** Bottom of Data ********************************

ISPF Browse Panel Showing the SJL after invoking the JJDIRECT Edit Macro

JJSCAN - Run PRO/JCLJJSCAN invokes PRO/JCL processing on the JCL or control statement member in Edit. PRO/JCL displays the results of thescan, the Structured JCL Listing (SJL) in BROWSEmode. (The JJ Edit macro displays the results directly in the Edit session.)Type JJSCAN and optional parameters on the command line, while editing a member, and press Enter to process the JCLmember.

When using JJSCAN, the operator can use the f(ind) function to easily locate particular lines or phrases in the SJL.

85

JJSCAN - Run PRO/JCL

Page 93: ASG-PRO/JCL Reference Guide

l If REFORMAT and/or JMP is specified which results in JCL changes, no files will be changed. The changes willONLY be reflected in the SJL, and will not be written to any output libraries.

l If you are a user with RTS member authority, the JJSCAN value entered takes precedence over other entriesin the JJ Edit Macro Settings.

l If you are a user who has restricted, or limited RTS member authority, the values set by the Administratoroverride the values from the JJSCAN command line or the JJ Edit Macro Settings panel.

Validating Using Preset Parameters

The SJL will be shown in BROWSE. PRO/JCL panels, the JJ Edit Macro Settings panel and the PRO/JCL Validation panel usethe same settings.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJSCAN Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJSCAN Edit Macro on Command Line

Changing Preset Parameters

Use JJSCAN OPT to alter the preset parameters in the JJ Edit Macro Settings Panel.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJSCAN OPT Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJSCAN Edit Macro on Command Line

86

ASG-PRO/JCL Reference Guide

Page 94: ASG-PRO/JCL Reference Guide

Settings------------------------------------------------------------------------------

JJ Edit Macro SettingsCommand ===>

RTS Member . . . . . DEFAULT ( * for list)Processing Mode . . JOB ( * for list)First PROCLIB . . .Lib type . . . . . PDS ( * for list)

JMP Library . . . . 'DSSI.DOC.EXEC'JMP Name . . . . . .JMP Parm . . . . . .

Reformat . . . . . . ON ( * for list)Reformat Member . . DEFAULT ( * for list)

Press END to return to Edit.

Specifying JJ Edit Macro Settings

Validating Using Temporary Parameters

Use this method to input temporary parameters when invoking PRO/JCL. Below is a sample command line andParameters for JJSCAN gives a brief description of each parameter.

Syntax

JJSCAN [procmode][ID=started task][JMP=member][JMPPARM=parms][RTS=member] [REF=member][REFORMAT][REFORMATONLY]

Parameters

Parameter Description

procmode

Use to specify a valid processing mode. Valid entries are:

l JOB (Default) Process the input member as a job stream.

l JCL Select to process JOBs and PROCs. This processing mode expects a JCLstream as input. In this mode, PRO/JCL can distinguish between JOB- andPROC-type JCL input streams; it then automatically invokes the appropriateprocessing mode.

l IDCAMS Process the input member as IDCAMS control statements.

l PROC Process the input member as PROCs.

l IEBGENER Process the input member as IEBGENER control statements.

l IEBCOPY Process the input member as IEBCOPY control statements.

l IEHPROGM Process the input member as IEHPROGM control statements.

l DB2 Process the input member as DB2 control statements.

l DATA Select this processing mode to allow a JMP program to access andmanipulate input records without PRO/JCL validating or reformatting them.

Parameters for JJSCAN

87

JJSCAN - Run PRO/JCL

Page 95: ASG-PRO/JCL Reference Guide

Parameter Description

For example, if you have a dataset that contains control cards for variousutility programs and you want to make a change across all members of thedataset, PROCESS=DATAwill read the raw data and make it available to theJMP program, which is responsible for actually making the change. Ensurethat you specify a JMP program and an output file when using thisprocessing mode.

l ADRDSSU Process the input member as ADRDSSU control statements.

l SORT Process the input member as SORT control statements.

ID=started taskIdentifies the started task on which JJ is to run. The desired started task must bespecified when multiple started tasks are active.

JMP=memberA JMP program. The JMP routinemust reside in the SYSEXEC dd libraries, or in thelibrary specified in the JMP Library field of the JJ Edit Macro Settings or PRO/JCLValidation panels.

JMPPARM=parms Specifies the JMP parm(s) to be passed to the JMP program.

RTS=member Specifies an RTS member for processing input members.

REF=member Specifies a Reformatter member for reformatting input members.

REFORMATOptional invocation of JCL reformatting by PRO/JCL. Themember is “fully scanned”,meaning that PRO/JCL validates for both syntactic and run-time errors and all PROCsare expanded.

REFORMATONLYOptional invocation of JCL reformatting by PRO/JCL. Themember is not “fullyscanned”, meaning that PRO/JCL only checks the syntax and does not expand PROCsor INCLUDEs.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJSCAN JMP=JMPTEST1 RTS=RTS01 Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJSCAN Edit Macro with temporary parameters

Interaction of Pre-set and Temporary Parameters

The parameters on a JJSCAN invocation will override the corresponding values in the JJ Edit Macro Settings panel.However, in the case of the REFORMAT parameter, when it is set to ON on the JJ Edit Macro Settings panel, it may not beturned off.

88

ASG-PRO/JCL Reference Guide

Page 96: ASG-PRO/JCL Reference Guide

The values set in the fields and Settings popups on the JJOPT panel are the same ones set on the PRO/JCL Validationpanel. Changing them in one panel changes them in the other.

JJSCAN output - SJL Report

BROWSE ASGUSR.SJL.SCAN.TEMP1 Line 00000000 Col 001 080Command ===> Scroll ===> CSR

********************************* Top of Data **********************************Structured JCL Listing - JCL Section AS OF: 08/17/17 10:19:57PRO/JCL Release R340 RTS Member: RTS01 Reformatter Member: DEFAULT JMP M--------------------------------------------------------------------------------**************************************************** Results of processing ISPF EDITWORKAREA ****************************************************

//JOB1 JOB//JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB//JSTEP1 EXEC PGM=PROG1E1 - DSS20006E - Member 'PROG1' was not found.E2 - DSS20105E - 'JOB1 JSTEP1': step would ABEND, CODE 'S806'.--- END OF STEP ---//JSTEP2 EXEC PROC1,PROG=IEFBR14

//PS1 EXEC PGM=&PROG,TIME=(1,1)--PS1 EXEC PGM=IEFBR14,TIME=(1,1)//DD1 DD DSN=DSSI.DOC.JCL,DISP=SHR//DD2 DD DSN=DSSI.NEW.DS,DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,// SPACE=(TRK,(1,1))--- END OF STEP ------ END OF PROC ---

--- END OF JOB ---

JOB JOB1 CONSISTS OF 2 PROGRAM(S), 1 PROC(S), 0 INCLUDE(S), 2 DD STATEMENT(S)

Structured JCL Listing - Error Summary AS OF: 05/05/17 10:19:57--------------------------------------------------------------------------------

Sev Msg No. Message Text--------------------------------------------------------------------------------E1 8 DSS20006E Member 'PROG1' was not found.E2 8 DSS20105E 'JOB1 JSTEP1': step would ABEND, CODE 'S806'.

Structured JCL Listing - Error Statistics AS OF: 05/05/17 10:19:57--------------------------------------------------------------------------------

| PRO/JCL | Standards | Suppressed |--------------------------------------------------------------------------------Advisory 0 0 0Warning 0 0 0Severe 2 0 0Total 2 0 0

Structured JCL Listing - I/O Statistics AS OF: 05/05/17 10:19:57--------------------------------------------------------------------------------INPUT DSN = DSSI.DOC.PROCLIB--------------------------------------------------------------------------------Member Name | Read | Added | Deleted | Changed | Written | References |--------------------------------------------------------------------------------PROC1 4 0 0 0 0 1Total: 4 0 0 0 0 1

INPUT DSN = ISPF EDITWORKAREA--------------------------------------------------------------------------------Member Name | Read | Added | Deleted | Changed | Written | References |--------------------------------------------------------------------------------ISPF EDITWORKAREA 4 0 0 0 0 1Total: 4 0 0 0 0 1

.

.

.******************************** Bottom of Data ********************************

ISPF Browse Panel Showing the results of the JJSCAN Edit Macro

Reading the SJL Report

The basic sections of the SJL report are described in this topic and a complete SJL is shown on the following pages. Thesections of the report are:

Banner Page JCL Section

89

JJSCAN - Run PRO/JCL

Page 97: ASG-PRO/JCL Reference Guide

Error Summary Error Statistics

I/O Statistics Options in Effect

PRO/JCL wraps symbolic resolution lines that are longer than the available report space.

Banner PageThe banner page contains the report legend. The legend describes the layout of the report and meaning of the symbolsused in the report.

JCL SectionThe JCL Section lists the statements from thosemembers scanned with error messages. Statements that have errorsinserted immediately below the statement are listed here as well.

Unless requested by the JCL Printing option, PROCs are not expanded in place.

Error SummaryThe Error Summary section summarizes the errors found. Each error is listed, and detail information is provided in tableformat.

The Error Summary section contains the following columns:

Column Description

PAGE The SJL page number on which the error is listed.

SEV The severity of the error.

MSG NUMBER The error message number.

MSG TEXT The text of the error message.

JOB The job in which the error was found.

STEP The jobstep in which the error was found.

PROC The PROC (if any), in which the error was found.

DD The DD statement, if any, containing the error.

INDEX # The index number. This is based on the job number, the number of PROCs executed in thejob, the number of steps executed in the job, and the number of DDs within the step.

Columns for Error Summary

For a complete listing of Error Messages, descriptions, and severity codes see the PRO/JCLMessages and Codesdocumentation.

Error StatisticsThis section summarizes the of Advisory, Warning, and Severe errors encountered.

90

ASG-PRO/JCL Reference Guide

Page 98: ASG-PRO/JCL Reference Guide

The Error Statistics section contains the columns shown in the below table:

Column Description

PRO/JCL The number of errors resulting from statement validation.

STANDARD The number of errors associated with standards enforcement.

SUPPRESSED The number of suppressed errors.

Columns for the Error Statistics portion of the SJL

I/O StatisticsFor each sequential dataset, or each member of a dataset scanned in the JCL, this section reports the number of linesread, added, deleted, changed, and written and the number of times the dataset or member is referenced.

The I/O Statistics section contains the columns shown in the below table:

Column Description

MEMBER NAME The name of themember scanned.

READ The total number of lines read.

ADDED The number of lines added as a result of JMP processing or reformatting.

DELETED The number of lines deleted as a result of JMP processing or reformatting.

CHANGED The number of lines changed as a result of JMP processing or reformatting.

WRITTEN The number of lines written to the output file, for a changed member.

REFERENCES The number of times themember is read in the job.

Columns for the I/O Statistics portion of the SJL

JJFE - Find ErrorUse the JJFE Edit macro while viewing output from the JJ edit macro. The JJFE Edit macro positions the JCL statement thatcontains the specified error number at the top of the display.

Syntax

JJFE n

Parametersn Error number (numeric part of ==MSG> En from SJL) of the JCL error statement for PRO/JCL to locate and to which toscroll.

91

JJFE - Find Error

Page 99: ASG-PRO/JCL Reference Guide

==ERR> //PJGL0020 JOB (A,P,GL),MSGCLASS=H, GL MASTER UPDATE000002 // MSGLEVEL=(1,1),000003 // TIME=1440,000004 // CLASS=2,000005 // TYPRUN=HLD

.

.

.==ERR> // JCLLIB ORDER=XXXXX.XXXXX.DEMOLIB <=== EDIT DEMOLIB DSN==MSG> E2 - DSS20028E - DATA SET 'XXXXX.XXXXX.DEMOLIB' WAS NOT FOUND IN==MSG> CATALOG.

Error Number Location

Examples

Initial JJ Output DisplayThe below figure shows the JJFE command on the command line. This feature will locate the specified error number.

EDIT DSSI.DOC.JCL(PJGL0020) - 01.00 Columns 00001 00072Command ===> JJFE 2 Scroll ===> CSR====== PRO/JCL RELEASE R340 AS OF 08/17/2017 08:27:07====== ------------------------------------------------------------------------====== THE HIGHEST SEVERITY CODE ENCOUNTERED WAS 8====== RTS MBR = DEFAULT REF MBR = DEFAULT====== | PRO/JCL | STANDARDS | SUPPRESSED | SECURITY EXIT: ON |====== ------------------------------------------------------------------------====== ADVISORY 1 0 0====== WARNING 0 0 0====== SEVERE 5 0 0====== TOTAL 6 0 0====== SEV MSG NO. MESSAGE TEXT====== ------------------------------------------------------------------------====== E1 8 DSS10080E VALUE 'HLD' SHOULD HAVE BEEN COPY, HOLD, JCLHOLD, SCAN,====== NULL VALUE.====== E2 8 DSS20028E DATA SET 'XXXXX.XXXXX.DEMOLIB' WAS NOT FOUND IN CATALOG====== E3 0 DSS01118A NO LIBRARIES ASSIGNED FOR PROCLIB DD 'PROC00'. CHECK RT====== SETTINGS FOR PROCLIB DD'S.====== E4 8 DSS10103E PROC 'PPGL0020' WAS NOT FOUND.====== E5 8 DSS10110E REFERENCE 'JS010.PS020.RC' NOT VALID: STEP 'JS010' NOT====== E6 8 DSS20028E DATA SET 'DSSI.OUTPUT' WAS NOT FOUND IN CATALOG.

...

JJ Edit Macro Output Showing JJFE Edit Macro Command

Repositioned JJ Output DisplayThe below figure shows the result of using the JJFE Edit Macro on the command line in the above figure.

92

ASG-PRO/JCL Reference Guide

Page 100: ASG-PRO/JCL Reference Guide

EDIT DSSI.DOC.JCL(PJGL0020) - 01.00 Columns 00001 00072Command ===> Scroll ===> CSR==ERR> // JCLLIB ORDER=XXXXX.XXXXX.DEMOLIB <=== EDIT DEMOLIB DSN==MSG> E2 - DSS20028E - DATA SET 'XXXXX.XXXXX.DEMOLIB' WAS NOT FOUND IN==MSG> CATALOG.000013 // SET TAPEVOL=660034000014 // SET TYPE=WEEKLY==ERR> //JS010 EXEC PPGL0020 EDIT AND UPDATE==MSG> E3 - DSS01118A - NO LIBRARIES ASSIGNED FOR PROCLIB DD 'PROC00'. CHECK==MSG> RTS SETTINGS FOR PROCLIB DD'S.==MSG> E4 - DSS10103E - PROC 'PPGL0020' WAS NOT FOUND.000016 //PS030.DATECARD DD *====== ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--000017 070502 JULY 7, 2017 1 1 3 NNN000018 //PS050.DATECARD DD * DATE CARD OVERRID====== ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--000019 070502 TYPE 5 CONTROL000020 ACCDATE=070202000021 AUDITDATE=070102=NOTE= --- END OF PROC ---==ERR> // IF (JS010.PS020.RC LT 8) THEN==MSG> E5 - DSS10110E - REFERENCE 'JS010.PS020.RC' NOT VALID: STEP 'JS010' NOT==MSG> FOUND.000023 //JS020 EXEC PGM=IEFBR14==ERR> //DD1 DD DISP=SHR,DSN=DSSI.OUTPUT(D50XDB2D)==MSG> E6 - DSS20028E - DATA SET 'DSSI.OUTPUT' WAS NOT FOUND IN CATALOG.000025 //DD2 DD SYSOUT=*=NOTE= --- END OF STEP ---000026 // ENDIF=NOTE= --- END OF JOB ---============ JOB PJGL0020 CONSISTS OF 1 PROGRAM(S), 1 PROC(S), 0 INCLUDE(S), 4 DD====== STATEMENT(S)======****** **************************** Bottom of Data ****************************

Sample JJFE Edit Macro result

Any NOTE lines in the JJ output display longer than 72 are wrapped to the next line.

JJFEX - Find Extended MessageUse the JJFEX Edit macro while viewing SJL output from the JJ Edit macro to find extended message for any error. Use thisEdit macro with or without the repositioning (JJFE) Edit macro to view the extended error message text.

Syntax

JJFEX n

Parametersn Error number (numeric part of ==MSG> En from output) of the JCL error statement to locate at the top of the display.

93

JJFEX - Find Extended Message

Page 101: ASG-PRO/JCL Reference Guide

==ERR> //PJGL0020 JOB (A,P,GL),MSGCLASS=H, GL MASTER UPDATE000002 // MSGLEVEL=(1,1),000003 // TIME=1440,000004 // CLASS=2,000005 // TYPRUN=HLD

.

.

.==ERR> // JCLLIB ORDER=XXXXX.XXXXX.DEMOLIB <=== EDIT DEMOLIB DSN==MSG> E2 - DSS20028E - DATA SET 'XXXXX.XXXXX.DEMOLIB' WAS NOT FOUND IN==MSG> CATALOG.

Error Number Location

Example

Initial JJ Output DisplayThe below figure shows the JJFEX command on the command line. This feature displays an extended error message textfor a specific error found by PRO/JCL.

EDIT DSSI.DOC.JCL(PJGL0020) - 01.00 Columns 00001 00072Command ===> JJFEX 2 Scroll ===> CSR====== PRO/JCL RELEASE R340 AS OF 08/17/2017 08:27:07====== ------------------------------------------------------------------------====== THE HIGHEST SEVERITY CODE ENCOUNTERED WAS 8====== RTS MBR = DEFAULT REF MBR = DEFAULT====== | PRO/JCL | STANDARDS | SUPPRESSED | SECURITY EXIT: ON |====== ------------------------------------------------------------------------====== ADVISORY 1 0 0====== WARNING 0 0 0====== SEVERE 5 0 0====== TOTAL 6 0 0====== SEV MSG NO. MESSAGE TEXT====== ------------------------------------------------------------------------====== E1 8 DSS10080E VALUE 'HLD' SHOULD HAVE BEEN COPY, HOLD, JCLHOLD, SCAN,====== NULL VALUE.====== E2 8 DSS20028E DATA SET 'XXXXX.XXXXX.DEMOLIB' WAS NOT FOUND IN CATALOG====== E3 0 DSS01118A NO LIBRARIES ASSIGNED FOR PROCLIB DD 'PROC00'. CHECK RT====== SETTINGS FOR PROCLIB DD'S.====== E4 8 DSS10103E PROC 'PPGL0020' WAS NOT FOUND.====== E5 8 DSS10110E REFERENCE 'JS010.PS020.RC' NOT VALID: STEP 'JS010' NOT====== E6 8 DSS20028E DATA SET 'DSSI.OUTPUT' WAS NOT FOUND IN CATALOG.

.

.

.

JJ Edit Macro Output Showing JJFEX n Edit Macro on Command Line

Extended Message DisplayThe below figure shows the result of using the JJFEX macro on the command line of the above figure.

94

ASG-PRO/JCL Reference Guide

Page 102: ASG-PRO/JCL Reference Guide

EDIT DSSI.DOC.JCL(PJGL0020) - 01.00 Columns 00001 00072Command ===> JJFEX 2 Scroll ===> CSR====== PRO/JCL RELEASE R340 AS OF 08/17/2017 08:50:08====== ------------------------------------------------------------------------====== THE HIGHEST SEVERITY CODE ENCOUNTERED WAS 8====== RTS MBR = DEFAULT REF MBR = DEFAULT====== | PRO/JCL | STANDARDS | SUPPRESSED | SECURITY EXIT: ON |====== ------------------------------------------------------------------------===== ------------------------------- DSS20028 --------------------------------===== … …===== … Command ===> …===== … …===== … The data set 'XXXXX.XXXXX.DEMOLIB' cannot be located via catalog …===== … CATALOG.nnnnn.MASTER. Possible causes of this error include …===== … misspelling the data set name. …===== … …===== … …===== … …===== … …===== … …===== … …===== … …==ERR … …00000 … …00000 -------------------------------------------------------------------------000004 // CLASS=2,000005 // TYPRUN=HLD==MSG> E1 - DSS10080E - VALUE 'HLD' SHOULD HAVE BEEN COPY, HOLD, JCLHOLD, SCAN,==MSG> OR NULL VALUE.000006 //*000007 //*$ID: //DEPOT/SYS280/PJGL0020.JCL#2 $ 000008 //*$DATETIME: 2017/03/10 15:36:36 $ 000009 //*$CHANGE: 26309 $ 000010 //*$AUTHOR: MICHAELG $ 000011 //*==ERR> // JCLLIB ORDER=XXXXX.XXXXX.DEMOLIB <=== EDIT DEMOLIB DSN==MSG> E2 - DSS20028E - DATA SET 'XXXXX.XXXXX.DEMOLIB' WAS NOT FOUND IN==MSG> CATALOG.000013 // SET TAPEVOL=660034000014 // SET TYPE=WEEKLY==ERR> //JS010 EXEC PPGL0020 EDIT AND UPDATE

Sample JJFEX Edit Macro output

See the topic - User Messages in the Using PRO/JCL with JMP documentation for more information about how to createand maintain user messages.

JJSUBJJSUB invokes PRO/JCL during an ISPF Edit session to validate the job being edited. PRO/JCL submits the job when thevalidation process completes with a severity level of 4 or less.

The Structured JCL Listing (SJL) output is only displayed when the severity level is greater than 4.

Syntax

JJSUB

ParametersThis command uses the same parameters as JJ.

95

JJSUB

Page 103: ASG-PRO/JCL Reference Guide

ExampleThe JJSUB edit macro allows you to validate themember while you edit it. If the validation process completes with aseverity level of 4 or less, the job is automatically submitted and no SJL is displayed. If the severity level is greater than 4,the job is not submitted and the SJL output is displayed.

EDIT DSSI.DOC.JCL(JOB1) - 01.02 Columns 00001 00072Command ===> JJSUB Scroll ===> CSR****** ***************************** Top of Data ******************************000001 //JOB1 JOB000002 //JCLLIB1 JCLLIB ORDER=DSSI.DOC.PROCLIB000003 //JSTEP1 EXEC PGM=PROG1000004 //JSTEP2 EXEC PROC1,PROG=IEFBR14****** **************************** Bottom of Data ****************************

ISPF Edit Panel Showing JJSUB Edit Macro on Command Line

96

ASG-PRO/JCL Reference Guide

Page 104: ASG-PRO/JCL Reference Guide

PRO/JCL System PanelsThis topic gives details about the product setup panels.

n Administrator Panels

n RTS and Reformatter Members Panels

n Product Usage Panels

n System Information Panels

n STARTED TASK NOT AVAILABLE Panel

n ERROR ENCOUNTERED Panel

Administrator PanelsUse all the panels described in this topic to administer all aspects of PRO/JCL usage. To access this panel, selectAdministration, from the ASG-PRO/JCLMain Menu.

Define Product Access and Default Settings panel

Use this panel to:

l Grant user IDs access to PRO/JCL functions and features.

l View information about product passwords.

l Assign administrator IDs.

l Edit and delete RTS members.

l Edit and view the DEFAULT RTS and Reformatter members.

l View product usage statistics.

Define Product Access and Default SettingsCommand ===>

1 PRO/JCL Menus Edit/View PRO/JCL User Configuration2 PRO/JCL RTS Members Edit/View/Delete RTS Members3 PRO/JCL Product Defaults Edit DEFAULT RTS Member4 PRO/JCL Reformatter Members Edit/View/Delete Reformatter Members5 PRO/JCL Reformatter Defaults Edit DEFAULT Reformatter Member6 Product Usage View Product Usage Information

Define Product Access and Default Settings panel

Edit/View PRO/JCL User Configuration Panel

Use this panel to add, copy, delete, and edit the access to PRO/JCL functions for user IDs. Each row in this panel showsthe settings for the authorized user IDs.

To access this panel

n Choose the PRO/JCLMenus option from the Define Product Access and Default Settings panel.

97

PRO/JCL System Panels

Page 105: ASG-PRO/JCL Reference Guide

File-------------------------------------------------------------------------------

Edit/View PRO/JCL User Configuration Row 1 to 1 of 1Command ===> Scroll ===> CSR

Use: S (Select), I (Insert), R (Repeat), D (Delete), M (Move), A (After),B (Before)

Mach User/ RTS Reformat JMPSel Name Group ID ID Adm Member JMP REF Member Program Sched--- ---- -------- -- --- -------- --- --- -------- -------- --------

SYS* ASGUSR U Y *ANY* Y Y *ANY* *ANY* *ANY*

Edit/View PRO/JCL User Configuration panel

Action Bar

File

Item Description

Save This item saves changes to the information in the panel.

Exit Saves changes and exits.

Edit/View PRO/JCL Usage Configuration File menu items

Sel Commands

Command Name Description

S SelectBrings up the Edit PRO/JCL User Configuration panel (Edit PRO/JCL UserConfiguration popup).

I InsertInserts a new entry after an entry. PRO/JCL displays a blank Edit PRO/JCLUser Configuration panel (Edit PRO/JCL User Configuration popup).

R RepeatCreate a new entry using the settings of the current ID. PRO/JCL displays theEdit PRO/JCL User Configuration panel with the data from the repeated entry(Edit PRO/JCL User Configuration popup).

D Delete Delete the selected entry. You will be asked to confirm the deletion.

M MoveMoves an entry. Use in conjunction with A (after) or B (before) on adifferent entry.

A After Use with M(move), to put themoved entry after this one.

B Before Use with M(move), to put themoved entry before this one.

Sel Commands for Edit/View PRO/JCL Usage Configuration File menu

98

ASG-PRO/JCL Reference Guide

Page 106: ASG-PRO/JCL Reference Guide

Columns

Column Description

User/Group ID Lists the specific user IDs or ID masks. This can be a RACF group ID or group ID mask.

ID

Lists the type of User ID:

l U indicates the entry in the User ID/Group ID field is a user ID or mask.

l G indicates the entry in the User ID/Group ID field is a RACF group ID or mask.

Adm

Indicates whether user is administrator.

l N for a user

l Y for Product Administrator.

RTS Member

Lists a Settings member restriction:

l DEFAULT Assigns the DEFAULT RTS member to the user ID.

l membername Restricts user ID access to that in the named RTS member.

l *Any* Grants create authority to the user for RTS members.

JMP

Lists access to JMP:

l Y Grants access to JMP function from Main Menu.

l N Denies access to JMP function from Main Menu.

REF

Lists access to Reformatter:

l Y Grants access to Reformatter function from Main Menu.

l N Denies access to Reformatter function from Main Menu.

Reformat Member

Lists a Reformatter member restriction:

l DEFAULT Assigns the DEFAULT Reformatter member to the user ID.

l membername Restricts user ID access to that in the named Reformattermember.

l *Any* Grants create authority to the user for Reformatter members.

JMP Program

List a JMP member restriction:

l membername Restricts user ID access to that in the named JMP member.

l *Any* Grants create authority to the user for JMP members.

Sched Lists the SCHEDULER that will be executed for the User/Group.

Columns for Edit/View PRO/JCL Usage Configuration File menu

99

Administrator Panels

Page 107: ASG-PRO/JCL Reference Guide

l The Product Administrator sets the order of this list manually; the order in which the rows occur isimportant. PRO/JCL uses the first entry to match the user ID.

l DEFAULT and *ANY* are reserved words for RTS member or reformatter member.

Edit PRO/JCL User Configuration Panel

Use the fields on this panel to grant access authority to functions, assign RTS members to a user ID, and grant ProductAdministrator authority. Use this panel to Insert, Repeat, Add, Move, Delete, or Edit an entry.

To access this panel

n Choose the PRO/JCLMenus option from the Define Product Access and Default Settings panel.

Edit PRO/JCL User Configuration

Command ===>

Machine Name. . . . . . . . SYS* (System ID)User/Group ID . . . . . . . ASGUSR (User or Group ID)ID Type . . . . . . . . . . U (U-User G-Group)Administrator . . . . . . . Y (Y-Yes N-No)RTS Member . . . . . . . . *ANY* (* for list or '*ANY*' or '*LIST*')Selection Exit . . . . . . *ANY* (Program name or '*ANY*')

Execution Panel Tailoring:JMP Program Data Set . .JMP Program . . . . . . . *ANY* (Program name or '*ANY*')Reformatter Member . . . *ANY* (* for list or '*ANY*' or '*LIST*')Scheduler . . . . . . . . *ANY* (* for list or '*ANY*')

Main Menu Panel Tailoring:JMP . . . . . . . . . . . Y (Y/N)Reformat . . . . . . . . Y (Y/N)Validation - ESP . . . . Y (Y/N)Validation - TWS . . . . Y (Y/N)Directed Execution. . . . Y (Y/N)

Edit PRO/JCL User Configuration popup

FieldsThe below tables describe the fields in the User Configuration panel. Entries are required in all the fields.

Field Description

Machine Name Specify the site-specific machine name.

User/Group ID Specifies the User or Group ID.

ID Type Type U for a single user ID or G for a RACF group.

Administrator Type Y to give user ID administrator or N for user authority.

Fields for the Edit PRO/JCL User Configuration

100

ASG-PRO/JCL Reference Guide

Page 108: ASG-PRO/JCL Reference Guide

Field Description

RTS MbrThe RTS member assigned to the user, *ANY* signifying create authority for RTS members,or *LIST* indicating the user or group has more than one assigned RTS member.

Selection ExitA Selection Exit is specified to makemodifications to the JOB JCL prior to validating it. JCLmodifications will not be saved. Enter a REXX program name, (1 to 8 alphanumericcharacters) or “*ANY*”, to indicate that any Selection Exit can be used.

Field Description

JMP Program dataset Type the full dataset name for the JMP program named in the JMP Program field.

JMP ProgramType a member name to limit access to the given name, or use *ANY* to grant use andcreate authority for any member.

Reformatter MemberType a member name to limit access to the given name, or use *ANY* to grant use andcreate authority for any member, or *LIST* indicating the user or group has more thanone assigned RTS member.

Scheduler Assigns the SCHEDULER that will be executed for the User/Group.

Fields for Execution Panel Tailoring

Field Description

JMP Signifies whether users may access the Develop JCLManipulation Programs panel.

Reformat Signifies whether users may access the Edit/View Reformatter Settings panel.

Validation-ESP Signifies whether users may access the Validation - ESP panel.

Validation-TWS Signifies whether users may access the Validation - TWS panel.

Directed Execution Signifies whether users may access the Directed Execution, Machine Definitions, andEPASS panels.

Fields for Main Menu Panel Tailoring

RTS and Reformatter Members PanelsUse the panels describe in this topic to manage RTS and Reformatter members.

101

RTS and Reformatter Members Panels

Page 109: ASG-PRO/JCL Reference Guide

RTS Members Panel

Use this panel to review RTS member ownership and last-used dates to determine whether a member should be deleted.Each row contains themember name, owner ID, description, and usage data for an RTS member. Product Administratorscan view or delete any member, but cannot edit any from this panel.

To access this panel

n Choose the PRO/JCL RTS Members, from the Define Product Access and Default Settings panel..

File Sort------------------------------------------------------------------------------

PRO/JCL RTS Members Row 1 to 10 of 10Command ===> Scroll ===> CSR

Use: E (Edit), V (View), D (Delete)

Sel Name Owner Description Updated On--- -------- -------- -------------------------------- -----------

DEFAULT DSSDSS1 02/03/2017JES3OPT DSSDSS1 02/03/2017MULTI2 DSSDSS1 02/03/2017USER1 ASGUSR 02/03/2017USER02 ASGUS2 02/03/2017

RTS Members panel

Action Bar

Item Description

Sort Sort on any of the columns, in ascending.

Action bar for RTS Members panel

Columns

Column Description

Name The RTS member name.

Owner The user ID owning the RTS member.

Description Description for themember.

Last Update Date this member was last updated.

Columns for RTS Members panel

102

ASG-PRO/JCL Reference Guide

Page 110: ASG-PRO/JCL Reference Guide

Commands

Command Description

V - View Displays the View Run-Time Settings Member panel.

D - Delete Deletes an RTS member.

Commands for RTS Members panel

Delete RTS Member Panel

Use this panel to delete an RTS member. This panel displays the name of themember selected for deletion. Press Enter todelete themember, or Cancel on the command line to keep themember.

To access this panel

n Choose the PRO/JCL RTS Members, from the Define Product Access and Default Settings panel.

Delete RTS Member

Command ===>

Press Enter to delete the member.Enter CANCEL to exit without deleting.

Member : SRTSDescription:

F1=Help F3=Exit F12=Cancel

Delete RTS Member panel

Reformatter Members Panel

Use this panel to review Reformatter member ownership and last-used dates to determine whether a member should bedeleted. Each row contains the name, owner ID, description, and usage data for a Reformatter member. ProductAdministrators can view or delete any member, but cannot edit any from this panel.

To access this panel

n Choose the PRO/JCL Reformatter Members, from the Define Product Access and Default Settings panel.

File Sort------------------------------------------------------------------------------

PRO/JCL Reformatter Members Row 1 to 1 of 1Command ===> Scroll ===> CSR

Use: E (Edit), V (View), D (Delete)

Sel Name Owner Description Updated On--- -------- -------- -------------------------------- -----------

DEFAULT ASGUSR 09/30/1997

Reformatter Members panel

103

RTS and Reformatter Members Panels

Page 111: ASG-PRO/JCL Reference Guide

Action Bar

Item Description

Sort Sort on any of the columns, in ascending order.

Action bar for Reformatter Members panel

Columns

Column Description

Name The Reformatter member name.

Owner The user ID owning the Reformatter member.

Description Description for themember.

Last Update Date this member was last updated.

Columns for Reformatter Members panel

Commands

Command Description

V - View Displays the View Reformatter Settings Member panel.

D - Delete Deletes a Reformatter member.

Commands for Reformatter Members panel

Delete Reformatter Member Panel

Use this panel to delete a Reformatter member. This panel displays the name of themember slated for deletion. PressEnter to delete themember, and Cancel to keep themember.

To access this panel

n Choose the PRO/JCL Reformatter Members, from the Define Product Access and Default Settings panel.

Delete Reformatter Member

Command ===>

Press Enter to delete the member.Enter CANCEL to exit without deleting.

Member : JRFMTDescription:

F1=Help F3=Exit F12=Cancel

Delete Reformatter Member panel

104

ASG-PRO/JCL Reference Guide

Page 112: ASG-PRO/JCL Reference Guide

Product Usage PanelsUse the panels described in this topic to view and manage usage data.

PRO/JCL Product Usage for All Machines Panel

Use this panel to view how PRO/JCL is being used at your site.

To access this panel

n Choose the Product Usage, from the Define Product Access and Default Settings panel.

PRO/JCL Product Usage for All Machines Row 1 to 3 of 3Command ===> Scroll ===> CSR

MACHINE SUMMARY

Lines: 31462 Type of Use QuantityJobs : 352 Foreground : 3

Errors Reported PROCS: 79 Batch : 2JCL : 292 Steps: 401 JJ/JJSCAN : 1Standards: 0 DDs : 1032 Directed : 1

Total : 7

------------------------------- MACHINE DETAIL ------------------------------

Sel Machine Nr of Uses --First Used-- --Last Used--- JCL Errors--- -------- ---------- ---------------- ---------------- ----------

SYS1 1 10/24/2017 10:46 10/24/2017 10:46 144SYS2 7 10/24/2017 07:44 10/24/2017 12:59 143WINDOWS 1 10/24/2017 11:16 10/24/2017 11:16 5

PRO/JCL Product Usage for All Machines panel

Fields

Machine SummaryThis section of the panel displays the site-usage summary for PRO/JCL.

Field Description

JCL Errors Reported The number of errors reported to date.

Standards Errors Reported The number of Standards errors reported.

Lines The number of lines validated, all members.

Jobs The number of jobs validated.

PROCs The number of PROCs validated.

Steps The number of Steps validated.

Fields for Machine Summary for Product Usage for All Machines panel

105

Product Usage Panels

Page 113: ASG-PRO/JCL Reference Guide

Field Description

DDs The number of DDs validated.

Type of Use and Quantity

The number of invocations of:

l Foreground - The number of Foreground invocations of PRO/JCL.

l Batch - The number of Batch invocations of PRO/JCL. Listed only if the“Enable Batch Usage Statistics” option was set to Y during productinstallation.

l JJ/JJSCAN - The number of times the JJ and JJSCAN Edit macros wereinvoked by PRO/JCL.

l Directed - The number of Directed Execution invocations of PRO/JCLJJDirect.

Total The sum of PRO/JCL runs for the site.

Machine DetailThis section of the panel displays the usage summary of each user IDs for PRO/JCL.

Field Description

Userid The user IDs that use PRO/JCL.

Nr of Uses The number of times PRO/JCL was used by the user ID.

First Used The date the user ID first used PRO/JCL.

Last Used The date the user ID most recently used PRO/JCL.

JCL Errors The number of JCL errors found by PRO/JCL.

Machine Detail for Product Usage for All Machines panel

CommandsUse these commands on the command line to rearrange the order of the data in the panel.

Command Description

SORT USERID Sorts by UserID field.

SORT USAGE Sorts by Nr of Uses field.

SORT RECENTUSE Sorts by --Last Used-- field.

Commands for Product Usage for All Machines panel

106

ASG-PRO/JCL Reference Guide

Page 114: ASG-PRO/JCL Reference Guide

Command Description

SORT ERRORS Sorts by JCL Errors field.

PRO/JCL Usage Analysis panel

Use this panel to view how PRO/JCL is being used by user IDs. Select the user ID of interest from the PRO/JCL ProductUsage panel to get the PRO/JCL Usage Analysis panel. The detail section lists the latest 10 times PRO/JCL was used.

To access this panel

n Type a / in the Sel column of the PRO/JCL Product Usage panel.

File-------------------------------------------------------------------------------

PRO/JCL Usage Analysis Row 1 to 7 of 7Command ===> Scroll ===> CSR

SUMMARY FOR ASGUSR ON SYS2

First Used: 04/25/2017 07:44 Lines: 30957 Type of Use QuantityLast Used: 04/25/2017 12:59 Jobs : 347 Foreground : 3Errors Reported PROCS: 79 Batch : 2JCL : 143 Steps: 376 JJ/JJSCAN : 1Standards: 0 DDs : 841 Directed : 1

Total : 7

------------------------------- LIST OF USES -------------------------------

Date Time Run Type Jobs PROCS Steps DDs JMP Name JCL Errs Stds Msgs---------- ----- ---------- ---- ----- ----- ---- -------- -------- ---------04/25/2017 12:59 Foreground 25 0 25 0 0 004/25/2017 11:34 JJ 1 1 1 35 0 004/25/2017 11:25 Batch 38 10 40 95 31 004/25/2017 11:19 Directed 1 0 5 35 21 004/25/2017 10:46 Foreground 69 12 76 119 0 004/25/2017 07:45 Foreground 208 51 220 529 91 004/25/2017 07:44 Batch 5 5 9 28 0 0

PRO/JCL Usage Analysis panel

FieldsThe user ID summary shows the same information for the user ID as for the site.

Summary for User IDThis section summarizes the usage of PRO/JCL for the user ID.

Field Description

First Used The date PRO/JCL was first used.

Last Used The date PRO/JCL was most recently used.

Fields for PRO/JCL Usage summary for User ID panel

107

Product Usage Panels

Page 115: ASG-PRO/JCL Reference Guide

Field Description

JCL Errors Reported The number of errors reported to date.

Standards Errors Reported The number of Standards errors reported.

Lines The number of lines validated, all members.

Jobs The number of jobs validated.

PROCs The number of PROCs validated.

Steps The number of Steps validated.

DDs The number of DDs validated.

Type of Use and Quantity

The number of invocations of:

l Foreground - The number of Foreground invocations of PRO/JCL.

l Batch - The number of Batch invocations of PRO/JCL. Listed only ifthe “Enable Batch Usage Statistics” option was set to Y duringproduct installation.

l JJ/JJSCAN - The number of JJ and JJSCAN edit macro invocations ofPRO/JCL.

l Directed - The number of Directed Execution invocations of PRO/JCLJJDirect.

Total The sum of runs of PRO/JCL by the user ID.

List of Uses DetailThis section lists details for themost recent 10 usages of PRO/JCL.

Field Description

Date The date of the use.

Time The time of the use.

Type

One of three values:

l I -- ISPF panels;

l E -- Edit macros;

l B -- Batch.

Jobs The number of jobs validated.

Fields for PRO/JCL Usage List of Uses Detail panel

108

ASG-PRO/JCL Reference Guide

Page 116: ASG-PRO/JCL Reference Guide

Field Description

PROCs The number of PROCs validated.

Steps The number of Steps validated.

DDs The number of DDs validated.

JMP Name The name of the JMP member run.

JCL Errors Reported The number of errors reported for that session.

Standards Messages Reported The number of Standards messages reported for that session.

Password Information Panel

This read-only panel displays your PRO/JCL password information.

File------------------------------------------------------------------------------D0SPDIA3 Password InformationCommand ===>

Customer ID: 900000000

Expiration Date: 12/31/2017

Activated Product(s):PRO/JCLINFO/X

Password Information panel

Action Bar

File Exit - Returns to the previous panel.

Fields

CUSTOMER ID ASG Customer ID number.

EXPIRATION DATE Date this product password expires.

ACTIVATED PRODUCTSAs determined by the password, the activated products this CUSTOMER ID islicensed to use.

System Information PanelsUse the panels described in this topic to set up PRO/JCL.

109

System Information Panels

Page 117: ASG-PRO/JCL Reference Guide

Specify JOB CARD for Batch Panel

Use this panel to specify the default JOB statement to provide PRO/JCL with information when it runs in batch orbackground mode.

To access this panel

n Choose System Information from the JCLManagement Solutions Menu panel, and then JOB Card from theSystem Information panel.

File-----------------------------------------------------------------------------

Specify JOB CARD for BatchCommand ===>

JOB STATEMENT INFORMATION: (Required - Enter/Verify JOB Control statements)===> //ASGUSRX JOB (ACCOUNT),'NAME' ASDFSADF===> //*===> //*===> //*===> //*

Step accounting information for generated EXEC statement (61 chars max)ACCT ===>

If you wish to be prompted with this panel when the Batch optionis specified, enter Y below:

JOB Statement panel prompt ===> (Y/N)

Press ENTER or END to save changes and return..

Specify JOB CARD for Batch panel

Fields

Field Description

JOB StatementInformation

The lines that make up the JOB statement. All 5 lines must have an entry; comment-outblank lines with //*.

Step Accounting Specify up to 61 characters of data for step accounting for EXEC statements.

JOB Statement panelprompt

Specify Y (for Yes) to see this panel each time you invoke PRO/JCL batch, and N (for No) ifyou do not want to see this panel each time.

Fields for Specify JOB CARD for Batch panel

The first time you run in batch from the panels, PRO/JCL displays this panel, if you have not alreadyinitialized this panel.

Allocated Datasets Panel

Use this panel to view the list of users that have dataset resources allocated. Use the CANCEL command to cancel user IDsthat have resources allocated and have any non-BUSY status.

110

ASG-PRO/JCL Reference Guide

Page 118: ASG-PRO/JCL Reference Guide

To access this panel

n Choose System Information from the JCLManagement Solutions Menu panel, then Data Sets from the SystemInformation panel.

Allocated Data SetsRow 1 to 2 of 2

Command ===> Scroll ===> PAGE

Enter C to Cancel a user processor task.Press END to exit.

Sel Userid Data Set Session Status--- -------- ----------------------------------- --------------

ASGUSR ASGUSR.SYS1.CNTL BUSYASGUS2 ASGUS2.SYS1.CNTL BUSY

***************************** Bottom of data ******************************

Allocated Data Sets panel

Fields

Field Description

Userid The user ID currently using the dataset resource.

Data Set The dataset resource allocated.

Session Status

The status of the processor task. These are valid values:

l BUSY -- The processor task is busy.

l NOT RESPONDING -- The processor task timed out due to started task notresponding

l TIMED OUT -- The processor task timed out due to user inactivity.

l CANCELLED -- The processor task was cancelled with the Kill command.

l ABENDED -- The processor task incurred an abend.

Fields for Allocated Data Sets panel

If no datasets are allocated, PRO/JCL displays this message in a warning popup:No datasets are currently allocated.

Allocated Resources Panel

Use this panel to viewwho is using key PRO/JCL resources.

To access this panel

n Choose System Information from the JCLManagement Solutions Menu panel, and then Resources from theSystem Information panel.

111

System Information Panels

Page 119: ASG-PRO/JCL Reference Guide

Allocated ResourcesRow 1 to 1 of 1

Command ===> Scroll ===> PAGE

Enter C to Cancel a user processor task.Press END to exit.

Sel Userid Resource Session Status--- -------- ----------------------------------- --------------

ASGUS1 RES_ADMIN BUSYASGUS2 RES_PCFILE_MEMBER:PRO/JCL-DEFAULT BUSY

Allocated Resources panel

Fields

Field Description

Userid The user ID currently using this processor task.

Resource Name

The name of the resource allocated to the processor task. In the sample output, ASGUS1 isusing the administration panels. Possible values are:

l RES_ADMIN The Administration panels are being used by the user ID.

l RES_PCFILE_MEMBER:PRO/JCL-DEFAULT The DEFAULT RTS member is being usedby the user ID.

Fields for Allocated Resources panel

Current Users Panel

Use this panel to query the started task and view status of each processor task.

To access this panel

n Choose System Information from the JCLManagement Solutions Menu panel, and then Users from the SystemInformation panel.

Current UsersRow 1 to 6 of 6

Command ===> Scroll ===> PAGE

Enter C to Cancel a user processor task.Press RIGHT to see more information.Press END to exit.

Sel Userid Session Status Memory Usage High Memory DSSIAPI Call--- -------- -------------- ------------ ----------- ----------------

USER01 NOT RESPONDING 783652 877152 RUNGETUSERIDUSER02 BUSY 737724 877328 SQLFREEHANDLEUSER05 BUSY 9212 12112 MENUGETMAIN

Current Users panel

FieldsThe below table describes the fields for the Current Users panel.

112

ASG-PRO/JCL Reference Guide

Page 120: ASG-PRO/JCL Reference Guide

Field Description

Userid The user ID currently using this processor task.

Session Status

The status of the processor task. The valid values are:

l BUSY -- The processor task is busy.

l NOT RESPONDING -- The processor task timed out due to started task notresponding

l TIMED OUT -- The processor task timed out due to user inactivity.

l CANCELLED -- The processor task was cancelled with the Kill command.

l ABENDED -- The processor task incurred an abend.

MemoryUsage The amount ofmemory the processor task is currently using.

High Memory The largest amount ofmemory used by this processor task. This number is a “high-watermark” ofmemory. Depending on activity, this number could go higher.

DSSIAPI Call The DSSIAPI call most recently active for the processor task.

Client IPIf the connection is through TCP/IP this will show the clients IP address and the port thatthey are connected on. If the connection is through ISPF (REXX) then this field will beblank.

PC File OwnerIf the Started Task is set up as a PC File Secondary to another listener this field will showthe hostname (ip address/port) of the connection that owns the PC File. If the StartedTask is not a PC File Secondary then this field will show Local.

Fields for Current Users panel

Commands

Command Description

C - Cancel Use the Cancel command to terminate a user task.

Commands for the Current Users panel

STARTED TASK NOT AVAILABLE PanelWhen the Started Task is not available, PRO/JCL displays this panel. Press ENTER to submit the JCL without scanning.Press END to return to the JCL without submitting it.

113

STARTED TASK NOT AVAILABLE Panel

Page 121: ASG-PRO/JCL Reference Guide

STARTED TASK NOT AVAILABLE

Product initialization failed. You cannot change started task IDs in anactive session.

Press Enter to submit JCL without scanning.Press End to cancel submission.

STARTED TASK NOT AVAILABLE Panel

ERROR ENCOUNTERED PanelIf the Started Task is not available, PRO/JCL displays the Error Encountered panel. Press End or Enter to return to Edit.

ERROR ENCOUNTERED

Product initialization failed. The started task is not active.

Press Enter or End to continue.

ERROR ENCOUNTERED Panel

114

ASG-PRO/JCL Reference Guide

Page 122: ASG-PRO/JCL Reference Guide

Product Control Settings and MembersThis topic explains how to set up PRO/JCL for optimized use at your site.

n Run-Time Settings

n Reformatter Settings

Run-Time SettingsRun-Time Settings (RTS) are the parameters that control how PRO/JCL processes JCL and control statement members ordetermine the appearance of reports generated by PRO/JCL.

Run-Time Settings are kept in RTS members in the PC File (a VSAM file). The DEFAULT RTS member contains settings thatare used when the activemember does not have overriding settings.

Run-Time Settings Members

Run-Time Settings members hold the settings that control how PRO/JCL validates JCL.

Different RTS members can be set up and assigned to different users and groups to process JCL and control statementmembers according to the needs of each.

Some users have create authority for RTS members. These users can use and copy any RTS member, can create RTSmembers, and delete any members they create.

A product administrator can view and delete any RTS member except the DEFAULT RTS member.

The DEFAULT RTS Member

The DEFAULT RTS member is set up and maintained by the Product Administrator. The DEFAULT RTS member cannot bedeleted. This member contains values for Run-Time settings which apply when the activemember does not have acorresponding value.

User-Created RTS Members

A user-created RTS member is an RTS member that has non-default values for Run-Time settings. Any RTS member thatresides in the PC File with a name other than “DEFAULT” is a user-created RTS member.

Interaction with the DEFAULT RTS MemberUser-created RTS member settings work in conjunction with DEFAULT RTS member settings. When a user-created RTSmember is specified, the settings in the user-created member override the settings in the DEFAULT RTS member. If asetting in a user-created RTS member is not defined, the value in the DEFAULT RTS member is used.

For specific examples of how user-created RTS table settings and DEFAULT RTS member table settings combine whenprocessing tables, refer to the Run-Time Settings.

Reformatter SettingsReformatting occurs as the last validation phase of PRO/JCL Validation.

Reformatter Settings are the parameters that control how PRO/JCL reformats JCL.

115

Product Control Settings and Members

Page 123: ASG-PRO/JCL Reference Guide

Reformatter Settings are kept in Reformatter members in the PC File (a VSAM file). There is one DEFAULT Reformattermember which contains settings that are used when the activemember does not have overriding settings.

Reformatter Settings are divided into three groups: Basic settings, Parameter settings, and Comment Settings.

Basic Settings

Basic settings control the placement of statements, parameters and the sorted order of keywords, and the number ofparameters per line.

Parameter Settings

Parameter settings is a list of keyword parameters for a statement type. The order of the parameters in this list is theorder that PRO/JCL will arrange them. If the setting Sort Keywords is Y, then PRO/JCL sorts any keywords not ordered bythe sequence alphabetically, after the sequenced parameters.

Comment Settings

Comment settings control the placement of comments relative to the statements they occur with.

Reformatter Members

Reformatter members contain the settings that control how PRO/JCL reformats JCL statements. These settings areestablished for each JCL statement type. In addition, the special statement type Generic contains values which applywhen there is no corresponding value for a setting for a statement type.

The DEFAULT Reformatter Member

The DEFAULT Reformatter member functions in much the sameway as the DEFAULT RTS member, with one exception:the special statement type Generic contains settings which apply when there are no corresponding values for astatement type setting.

116

ASG-PRO/JCL Reference Guide

Page 124: ASG-PRO/JCL Reference Guide

Reformatter PanelsThis topic describes the PRO/JCL Reformatter panels. Reformatter Settings control whether statements are reformattedand how they are reformatted. For a complete description of the reformatter settings and options, see the topic -Reformatter Settings in the System Administrator documentation.

n Basic Reformatter Panels

n Extended Reformatter Feature

Basic Reformatter PanelsThis topic provides a detail information about the PRO/JCL Reformatter panels.

Edit JCL Reformatter Settings Panel

Use this panel to select statement types for which you want to establish settings. From the ASG-PRO/JCLMain Menu,choose the Administration, option, then PRO/JCL Reformatter Defaults to reach this panel.

File Help----------------------------------------------------------------------------

Edit Reformatter SettingsOption ===>

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:

1 JCL Specify JCL Statement Type Reformatting2 IDCAMS Specify IDCAMS Statement Type Reformatting3 JES3 Specify JES3 Statement Type Reformatting4 JES2 Specify JES2 Statement Type ReformattingX Exit Exit

Edit Reformatter Settings panel

Action Bar

File

Item Description

OpenUse to open a different Reformatter member for editing. PRO/JCL displays the SelectReformatter member popup.

NewUse to create a newReformatter member. These fields in the Newpopup are blank: RfmtrMbr, Description.

Save Use to save the settings for the open member.

Action bar items for Edit Reformatter Settings panel

117

Reformatter Panels

Page 125: ASG-PRO/JCL Reference Guide

Item Description

Save As Use to create a copy of the current Reformatter member. PRO/JCL displays the Save Aspopup.

Delete Use to delete a Reformatter member. PRO/JCL displays the Delete popup.

Cancel Use to exit without saving and return to theMain Menu.

Exit Use to leave the panel if there are no changes pending, or invoke the appropriate save orsave as popup if changes are pending.

Specify JCL Statement Type Panel

Use this panel to select the JCL statement types for which you want to establish settings.

To reach this panel, select JCL on the Edit Reformatter Settings panel.

File------------------------------------------------------------------------------

Specify JCL Statement Type Reformatting Row 1 to 20 of 20Command ===> Scroll ===> CSR

Rfmtr Mbr: DEFAULT Owner: DV115A Desc:

Sel Stmt type--- -------------------------

GENERICCNTLCOMMANDDDELSEENDCNTLENDIFEXECEXPORTIFINCLUDEJCLLIBJOBOUTPUTPENDPRINTDEVPROCSCHEDULESETXMIT

Specify JCL Statement Type Reformatting panel

Fields

Field Description

Stmt Type This column lists the JCL statement types that PRO/JCL reformats. Selecting a statementtype displays the Statement Detail panel for that statement type (see Statement Detail

Fields for Specify JCL Statement Type Reformatting panel

118

ASG-PRO/JCL Reference Guide

Page 126: ASG-PRO/JCL Reference Guide

Field Description

Reformatting panel example).

PRO/JCL will not reformat a JCL statement that has an imbedded comment line that looks like a%OPC statement.

JCL Statement Detail Panel

Use this panel to specify, for each JCL statement type, themany settings for parameters and comments. Use the / (slash)command on the Specify JCL Statement Type Reformatting panel to reach this panel.

JCL DD Statement Reformatting Row 1 to 24 of 53Command ===> Scroll ===> CSR

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . . _Right Margin . . . . . __ Comment Handling . . ________Parameters per Line . . __ Comment Justify . . . _____Parameter Start Col . . __ Comment Left Margin Stmt Start Column __Sort Keywords . . . . . _ Comment Right Margin Cont Start Column __After Column 80 . . . . ____________ Keep Quoted Field On One Line _

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

DDNAMEDSNAMEDSN

Statement Detail Reformatting panel example

Fields

Field Description

Enable ReformatControls whether this type of statement is to be included in reformatting. Normally this isset to Y, causing this statement type to reformat.

Right Margin -This specifies the right-most column for the parameter area. Normally this is set to 71, themaximum allowed. However, if you wish to leave less room comments, set this to asmaller number.

Parameters per Line -

This allows you to control themaximum number of parameters that PRO/JCL will place ona single line. The number of parameters per line is also affected by _BREAK_'s in theparameter list. _BREAK_'s take precedence. Users can set manual line breaks by using the_BREAK_ keyword to divide the list of parameters onto distinct lines.

Parameter Start This specifies the start of the parameter area. This area contains all the JCL parameters.

Fields for Statement Reformatting panels

119

Basic Reformatter Panels

Page 127: ASG-PRO/JCL Reference Guide

Field Description

Column - This setting only affects the first line of a JCL statement.

Sort Keywords - This setting turns keyword parameter alphabetical sorting on (value Y) and off (value N).

Comment Handling This setting directs the way PRO/JCL deals with the comments associated withreformatted statements.

Comment Justify- This setting tells PRO/JCL whether or not to justify comments to a specific margin.

Comment RightMargin -

This setting specifies the right margin for comments. This is normally set to 71.

Comment Left Margin-

This setting sets the starting column for comments. It is especially useful when used withJustify Left. This produces a consistent location for JCL comments.

Stmt Start Column - This specifies the column in which to place the statement operator, such as JOB or DD.

Continuation Column-

This specifies the column for continuation lines for a statement.

Parameters (SequenceList) -

Use the sequence list to tell PRO/JCL the order you want for JCL keyword parameters.

This can also be used to order the sequence of subparms within a list. For instance, to indicate that LRECL should precedeBLKSIZE within the DCB parm add DCB.LRECL and DCB.BLKSIZE in the parameter sequence list.

Commands

Command Description

ALLPARMS

Use the ALLPARMS command in each Statement Detail panel to instruct PRO/JCL to list allthe available parameters for the statement type. This command lists parameters for thefollowing types:

GENERIC, DD, EXEC, INCLUDE, JCLLIB, JOB, OUTPUT, PRINTDEV, PROC, SET, XMIT

For the SET and PROC parameters PRO/JCL displays the string “NEWPARM” in theParameter section of the panel. These two parameters contain no predefined sub-parameters; users can define their own.

PRO/JCL displays this message “The JCL statementtype statement has nosubparms.” atthe bottom of the Statement Detail panel for these statement types:

CNTL, COMMAND, ELSE, ENDCNTL, ENDIF, IF, PEND

Commands for Statement Reformatting panels

120

ASG-PRO/JCL Reference Guide

Page 128: ASG-PRO/JCL Reference Guide

Specify IDCAMS Statement Type Panel

Use this panel to select the IDCAMS statement types for which you want to establish settings. PRO/JCL displays thispanel when you select Specify IDCAMS Statement Type Reformatting on the Edit/View Reformatter Settings panel.

File------------------------------------------------------------------------------

Specify IDCAMS Statement Type Reformatting Row 1 to 23 of 35Command ===> Scroll ===> PAGE

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:

Sel Stmt type--- -------------------------

GENERICALIASALLOCATEALTERALTERNATEINDEXBINDDATABLDINDEXCANCELCLUSTERCNVTCAT

...

Specify IDCAMS Statement Type Reformatting panel

Fields

Field Description

Stmt TypeThis column contains the IDCAMS statement types that PRO/JCL reformats. Selecting astatement type displays the Statement Detail panel for that statement type (see SampleReformatting panel for an IDCAMS statement).

Fields for Specify IDCAMS Statement Type Reformatting panel

IDCAMS Statement Detail Panel

Use this panel to specify, for each IDCAMS statement type, the settings for parameters and comments.

Use the / (slash) command on the Specify IDCAMS Statement Type Reformatting panel to reach this panel.

121

Basic Reformatter Panels

Page 129: ASG-PRO/JCL Reference Guide

File-------------------------------------------------------------------------------

IDCAMS ALLOCATE Statement Reformatting Row 1 to 1 of 1Command ===> Scroll ===> CSR

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . .Right Margin . . . . . Comment Handling . .Parameters per Line . . Comment Justify . . .Parameter Start Col . . Comment Left Margin Stmt Start ColumnSort Keywords . . . . . Comment Right Margin Continuation ColumnAfter Column 80 . . . .Spaces Around Commas Spaces Inside Parens Logic Indent . . .Spaces Around Keywords Spaces Outside Parens

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

<NEWPARM>

Sample Reformatting panel for an IDCAMS statement

Fields

Field Description

Enable ReformatControls whether this type of statement is to be included in reformatting. Normally this isset to Y, causing this statement type to reformat.

Right Margin -This specifies the right-most column for the parameter area. Normally this is set to 71, themaximum allowed. However, if you wish to leave less room comments, set this to asmaller number.

Parameters per Line -

This allows you to control themaximum number of parameters that PRO/JCL will place ona single line. The number of parameters per line is also affected by _BREAK_'s in theparameter list. _BREAK_'s take precedence. Users can set manual line breaks by using the_BREAK_ keyword to divide the list of parameters onto distinct lines.

Parameter StartColumn -

This specifies the start of the parameter area. The parameter area contains all the IDCAMSparameters. This setting only affects the first line of a IDCAMS statement.

Sort Keywords - This setting turns keyword parameter alphabetical sorting on (value Y) and off (value N).

After Column 80 This setting directs the way PRO/JCL deals with comments beyond 80 characters in width.

Comment Handling This setting directs the way PRO/JCL deals with the comments associated withreformatted statements.

Comment Justify- This setting tells PRO/JCL whether or not to justify comments to a specific margin.

Comment RightMargin -

This setting specifies the right margin for comments. This is normally set to 71.

Fields for a Statement Detail panel

122

ASG-PRO/JCL Reference Guide

Page 130: ASG-PRO/JCL Reference Guide

Field Description

Comment Left Margin-

This setting sets the starting column for comments. It is especially useful when used withJustify Left. This produces a consistent location for IDCAMS comments.

Stmt Start Column - This specifies the column in which to place the statement operator, such as JOB or DD.

Continuation Column This specifies the column for aligning the continuation character (- or +) for an IDCAMSstatement.

Logic IndentThis specifies the number of spaces PRO/JCL indents the logic statements IF, END, ELSEand DO.

Spaces AroundCommas

This specifies the number of spaces or blanks with which PRO/JCL surrounds commas inIDCAMS statements (both sides).

Spaces AroundKeywords

This specifies the number of spaces or blanks with which PRO/JCL surrounds IDCAMSstatement keywords (both sides).

Spaces Inside Parens This specifies the number of spaces or blanks which PRO/JCL inserts inside theparentheses in IDCAMS statements.

Spaces OutsideParens

This specifies the number of spaces or blanks which PRO/JCL inserts outside theparentheses in IDCAMS statements.

Parameters (SequenceList) -

Use the sequence list to tell PRO/JCL what order you want for IDCAMS statement keywordparameters.

Commands

Command Description

ALLPARMS

Use the ALLPARMS command in each Statement Detail panel to instruct PRO/JCL to list allthe available parameters for the statement type. This command lists parameters for thefollowing types:

GENERIC, ALIAS, ALLOCATE, ALTER, ALTERNATEINDEX, BINDDATA, BLDINDEX, CANCEL,CLUSTER, CNVTCAT, CONNECT, DCOLLECT, DELETE, DIAGNOSE, EXAMINE, EXPORT,GENERATIONDATAGROUP, IMPORT, LISTCAT, LISTDATA, NONVSAM, PAGESPACE, PARM,PATH, PRINT, REPRO, SETCACHE, USERCATALOG, VERIFY

PRO/JCL displays the string “NEWPARM” if the Parameter section of the panel contains noparameters and parameters are allowed for this statement type.

PRO/JCL displays this message “The IDCAMS statementtype statement has nosubparms.”at the bottom of the Statement Detail panel for these statement types:

Commands for a Statement Detail panel

123

Basic Reformatter Panels

Page 131: ASG-PRO/JCL Reference Guide

Command Description

DEFINE, DO, ELSE, END, IF, SET

Specify JES2 Statement Type Panel

Use this panel to select the JES2 statement types for which you want to establish settings. PRO/JCL displays this panelwhen you select the Specify JES2 Statement Type Reformatting option on the Edit/View Reformatter Settings panel.

File------------------------------------------------------------------------------

Specify JES2 Statement Type Reformatting Row 1 to 10 of 10Command ===> Scroll ===> PAGE

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:

Sel Stmt type--- -------------------------

GENERICJOBPARMMESSAGENETACCTNOTIFYOUTPUTPRIORITYROUTEXEQXMIT

JES2 Statement panel

Fields

Field Description

Stmt TypeThis column contains the JES2 statement types that PRO/JCL reformats. Selecting astatement type displays the Statement Detail panel for that statement type (see SampleReformatting panel for a JES2 statement).

Fields for JES2 Statement panel

PRO/JCL does not reformat JES2 operator commands.

JES2 Detail Statement Panel

Use this panel to specify, for each JES2 statement type, themany settings for parameters and comments. Choose the /(slash) command on the Specify JES2 Statement Type Reformatting panel to reach this panel.

124

ASG-PRO/JCL Reference Guide

Page 132: ASG-PRO/JCL Reference Guide

File------------------------------------------------------------------------------

JES2 NETACCT Statement ReformattingCommand ===> Scroll ===> PAGE

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . .Right Margin . . . . . Comment Handling . .Parameters per Line . . Comment Justify . . .Parameter Start Col . . Comment Left MarginSort Keywords . . . . . Comment Right MarginAfter Column 80 . . . .

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

<NEWPARM>

Sample Reformatting panel for a JES2 statement

Fields

Field Description

Enable ReformatControls whether this type of statement is to be included in reformatting. Normally this isset to Y, causing this statement type to reformat.

Right Margin -This specifies the right-most column for the parameter area. Normally this is set to 71, themaximum allowed. However, if you wish to leave less room comments, set this to asmaller number.

Parameters per Line -

This allows you to control themaximum number of parameters that PRO/JCL will place ona single line. The number of parameters per line is also affected by _BREAK_'s in theparameter list. _BREAK_'s take precedence. Users can set manual line breaks by using the_BREAK_ keyword to divide the list of parameters onto distinct lines.

Parameter StartColumn -

This specifies the start of the parameter area. The parameter area contains all the JES2parameters. This setting only affects the first line of a JES2 statement.

Sort Keywords - This setting turns keyword parameter alphabetical sorting on (value Y) and off (value N).

After Column 80 This setting directs the way PRO/JCL deals with comments beyond 80 characters in width.

Comment Handling This setting directs the way PRO/JCL deals with the comments associated withreformatted statements.

Comment Justify- This setting tells PRO/JCL whether or not to justify comments to a specific margin.

Comment RightMargin -

This setting specifies the right margin for comments. This is normally set to 71.

Fields for a JES2 Statement Reformatting panel

125

Basic Reformatter Panels

Page 133: ASG-PRO/JCL Reference Guide

Field Description

Comment Left Margin-

This setting sets the starting column for comments. It is especially useful when used withJustify Left. This produces a consistent location for JES2 comments.

Parameters (SequenceList) -

Use the sequence list to tell PRO/JCL what order you want for JES2 statement keywordparameters.

Commands

Command Description

ALLPARMS

Use the ALLPARMS command in each Statement Detail panel to instruct PRO/JCL to list allthe available parameters for the statement type. This command lists parameters for thefollowing types:

GENERIC, JOBPARM, OUTPUT, XMIT

PRO/JCL displays the string “NEWPARM” if the Parameter section of the panel contains noparameters and parameters are allowed for this statement type.

PRO/JCL displays this message “The JES2 statementtype statement has nosubparms.” atthe bottom of the Statement Detail panel for these statement types:

MESSAGE, NETACCT, NOTIFY, PRIORITY, ROUTE, XEQ

Commands for a JES2 Statement Reformatting panel

Specify JES3 Statement Type Panel

Use this panel to select the JES3 statement types for which you want to establish settings. PRO/JCL displays this panelwhen you select the Specify JES3 Statement Type Reformatting option on the Edit/View Reformatter Settings panel.

File------------------------------------------------------------------------------

Specify JES3 Statement Type Reformatting Row 1 to 12 of 12Command ===> Scroll ===> PAGE

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:

Sel Stmt type--- -------------------------

GENERICDATASETENDDATASETENDPROCESSFORMAT PRFORMAT PUMAINNETNETACCTOPERATORPROCESSROUTE XEQ

JES3 Statement panel

126

ASG-PRO/JCL Reference Guide

Page 134: ASG-PRO/JCL Reference Guide

Fields

Field Description

Stmt TypeThis column contains the JES3 statement types that PRO/JCL reformats. Selecting astatement type displays the Statement Detail panel for that statement type (see SampleReformatting panel for a JES3 statement).

Fields for JES3 Statement panel

PRO/JCL does not reformat JES3 operator commands.

JES3 Detail Statement Panel

Use this panel to specify, for each JES3 statement type, themany settings for parameters and comments. Choose the /(slash) command on the Specify JES3 Statement Type Reformatting panel to reach this panel.

File-------------------------------------------------------------------------------

JES3 NET Statement Reformatting Row 1 to 1 of 1Command ===> Scroll ===> CSR

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . .Right Margin . . . . . Comment Handling . .Parameters per Line . . Comment Justify . . .Parameter Start Col . . Comment Left MarginSort Keywords . . . . . Comment Right MarginAfter Column 80 . . . .

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

<NEWPARM>

Sample Reformatting panel for a JES3 statement

Fields

Field Description

Enable ReformatControls whether this type of statement is to be included in reformatting. Normally this isset to Y, causing this statement type to reformat.

Right MarginThis specifies the right-most column for the parameter area. Normally this is set to 71, themaximum allowed. However, if you wish to leave less room comments, set this to asmaller number.

Parameters per Line This allows you to control themaximum number of parameters that PRO/JCL will place on

Fields for a JES3 Statement Reformatting panel

127

Basic Reformatter Panels

Page 135: ASG-PRO/JCL Reference Guide

Field Description

_BREAK_ keyword to divide the list of parameters onto distinct lines.

Parameter StartColumn

This specifies the start of the parameter area. The parameter area contains all the JES3parameters. This setting only affects the first line of a JES3 statement.

Sort Keywords This setting turns keyword parameter alphabetical sorting on (value Y) and off (value N).

After Column 80 This setting directs the way PRO/JCL deals with comments beyond 80 characters in width.

Comment Handling This setting directs the way PRO/JCL deals with the comments associated withreformatted statements.

Comment Justify This setting tells PRO/JCL whether or not to justify comments to a specific margin.

Comment RightMargin

This setting specifies the right margin for comments. This is normally set to 71.

Comment Left MarginThis setting sets the starting column for comments. It is especially useful when used withJustify Left. This produces a consistent location for JES3 comments.

Parameters (SequenceList)

Use the sequence list to tell PRO/JCL what order you want for JES3 statement keywordparameters.

Commands

Command Description

ALLPARMS

Use the ALLPARMS command in each Statement Detail panel to instruct PRO/JCL to list allthe available parameters for the statement type. This command lists parameters for thefollowing types:

GENERIC, DATASET, FORMAT PR, FORMAT PU, MAIN, NET, NETACCT

PRO/JCL displays the string “NEWPARM” if the Parameter section of the panel contains noparameters and parameters are allowed for this statement type.

PRO/JCL displays this message “The JES3 statementtype statement has nosubparms.” atthe bottom of the Statement Detail panel for these statement types:

ENDDATASET, ENDPROCESS, OPERATOR, PROCESS, ROUTE_XEQ

Commands for a JES3 Statement Reformatting panel

Select Reformatter Member Popup

This popup lists the Reformatter members from which you select onemember to activate or delete. Each row of thispopup contains information about a Reformatter member.

128

ASG-PRO/JCL Reference Guide

Page 136: ASG-PRO/JCL Reference Guide

PRO/JCL displays this popup when you select the Open option from the File action bar item on the Edit/View JCLReformatter Settings panel.

Select Reformatter MemberRow 1 to 3 of 3

Command ===> Scroll ===> PAGE

Rfmtr Mbr: REFMTR01Owner : ASGUSR Desc: IDCAMS testing member Sys1

Sel Member Owner Description Update on--- -------- -------- --------------------------- ----------

DEFAULT ASGUS2 11/20/2017REFMTR01 ASGUSR IDCAMS testing member 11/24/2017USER01 ASGUS1 Reformatter member for TW 11/25/2017

Select Reformatter Member popup

Columns

Column Description

Update The date on which themember was last updated.

Columns for Select Reformatter Member popup

l The list is in ascending alphabetical order by member name.

l Selecting a member in this popup completes the action begun on the calling panel.

l If you chose Open from the Edit/View JCL Reformatter Settings panel, then selecting a member hereactivates themember.

l If you chose Delete, then selecting a member in this popup sets themember up to be deleted; PRO/JCLdisplays the Delete Reformatter Member confirmation popup.

New Reformatter Member Popup

Use this popup to create a newReformatter member. The Reformatter members are stored in the PC File.

PRO/JCL displays this popup when you select the Newoption from the File action bar item on the Edit/View JCLReformatter Settings panel.

New Reformatter Member

Command ===>

Fill in unique Member name and optional member description andpress Enter or End to create the member.Enter CANCEL to exit without creating a new member.

Member : (* for list)Description:

New Reformatter Member popup

129

Basic Reformatter Panels

Page 137: ASG-PRO/JCL Reference Guide

Fields

Field Description

MemberMember name is required. To view a list of all existing Reformatter member names, enter *in this field.

Description 32-character description is optional.

Fields for New Reformatter Member popup

The Reformatter member name entered in this popup must be unique; if not, PRO/JCL displays themessage “Member already exists” in the upper right corner of this popup.

Save Reformatter Member Popup

Use this popup to save changes to a Reformatter member you own when you want to exit the Edit/View JCL ReformatterSettings panel.

PRO/JCL displays this popup when you select the Newor Open options from the File action bar item on the Edit/View JCLReformatter Settings panel before saving changes with the Save option.

Save Reformatter Member

Command ===>

You made changes to the current member that are not saved.

Reformatter Member : REFMTR01Description : IDCAMS testing member Sys1

Press Enter or End to save and return.

Save Reformatter Member popup

PRO/JCL always displays the Save popup when there are changes pending for the current member.These are the File pull-down choices:

New Open

If you attempt to save changes to a member you do not own, and you are not an Administrator,PRO/JCL displays the Save As popup.

Save As Reformatter Member Popup

This popup contains fields and instructions to save a Reformatter member with a new name. PRO/JCL displays thispopup when you select the Save As option from the File action bar item on the Edit/View JCL Reformatter Settings panel.

130

ASG-PRO/JCL Reference Guide

Page 138: ASG-PRO/JCL Reference Guide

Save As Reformatter Member

Command ===>

Type a unique member name and optional description in the fields below.New Reformatter Member:Name: Owner: ASGUSR Desc:

Current Reformatter Member:Name: DEFAULT Owner: ASGUS1 Desc:

Press Enter or End to save and return.

Save As Reformatter Member popup

Fields

Field Description

NewReformatter Member

NameName under which to save the changes to Reformatter member. Enter an * (asterisk) inthe field to view a list of existing Reformatter members.

Description Optional description for the newReformatter member.

Current Reformatter Member

Name Name of Reformatter member you are editing.

Description Optional description for Reformatter member you are editing.

Fields for Save As Reformatter Member popup

PRO/JCL displays the Save As popup if there are changes pending for the current member and youare not the owner, or an Administrator. These are the commands or File pull-down choices:

New Open

Save As End/Exit

Replace Reformatter Member Popup

PRO/JCL displays this popup when themember name you specified in the Save As popup is already in use.

131

Basic Reformatter Panels

Page 139: ASG-PRO/JCL Reference Guide

Replace Reformatter Member

Command ===>Member 'REFMTR01' exists. Do you want to overwrite it?Existing Reformatter Member:Name: REFMTR01 Owner: ASGUSR Desc: IDCAMS testing member

Press Enter or End to save and return.Enter CANCEL to exit without saving.

Replace Reformatter Member popup

Fields

Field Description

NameName of Reformatter member in which you want to store new settings. Type an * in thefield to view a list of existing Reformatter members.

Description Description, for the Reformatter member which is to be replaced (optional).

Fields for Replace Reformatter Member popup

Delete Reformatter Member Popup

This popup confirms the deletion of the named member. Press Enter to delete themember; enter Cancel to stop therequest to delete.

PRO/JCL displays this popup when you select the Delete option from the File pull-down menu on the Edit/View JCLReformatter Settings panel.

Delete Reformatter Member

Command ===>

Press Enter to delete the member.Enter CANCEL to exit without deleting.

Member : JRFMTDescription:

Delete Reformatter Member popup

Product administrators may delete any user-created Reformatter member.

Cancel Changes to Reformatter Member Popup

Use this popup to cancel changes you havemade to the current Reformatter member. PRO/JCL displays this popupwhen you try to cancel from the Edit/View JCL Reformatter Settings panel with changes pending to the current member.

132

ASG-PRO/JCL Reference Guide

Page 140: ASG-PRO/JCL Reference Guide

Cancel Changes

Command ===>

You made changes to the current member that are not saved.Do you wish to cancel those changes?Reformatter Member : DEFAULTDescription :

Press Enter or End to CANCEL changes.

Canceling Changes

View Reformatter Member List Popup

PRO/JCL displays this list of Reformatter member names when you enter an * in the Reformatter Member field on theSave As Reformatter Settings popup. This popup contains a scrollable, non-selectable list of the Reformatter members.

View Reformatter Member ListRow 1 to 5 of 5

Command ===> Scroll ===> PAGE

Press END to return.Member Owner Description Update on-------- -------- --------------------------- ----------REFMTR01 ASGUSR 02/04/2017REFMTR02 ASGUSR 02/04/2017REFMTR03 ASGUSR 02/04/2017**************************** Bottom of data ******************************

View Reformatter Member List popup

Columns

Column Description

Update This column contains the date themember was most recently updated.

Columns for View Reformatter Member List popup

Extended Reformatter FeatureKEEPWITHLINENUM keeps all data to the end of the line in the same columns and on the same line, regardless of howcomments are reformatted. This option is for comments beyond 80 characters in width.

The default for this option is “TRUNCATE”.

How to Use

The user can choose to change this option to KEEPWITHLINENUM for JCL, IDCAMS, JES2, or JES3 statements.

Only the first 85 characters of input records longer than 80will appear in the SJL. The first 80 characters of JMP-added ormodified records will appear in the SJL, even though the full-length record will be written to the output dataset if “AfterColumn 80 = KEEPWITHLINENUM” is specified.

These changes aremade through the Edit Reformatter Settings Panel.

133

Extended Reformatter Feature

Page 141: ASG-PRO/JCL Reference Guide

Choose Reformatter from the ASG-PRO/JCLMain Menu, then choose JCL, IDCAMS, JES2 or JES3 from the EditReformatter Settings panel.

Edit Reformatter SettingsOption ===>

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:

1 JCL Specify JCL Statement Type Reformatting2 IDCAMS Specify IDCAMS Statement Type Reformatting3 JES2 Specify JES2 Statement Type Reformatting4 JES3 Specify JES3 Statement Type ReformattingX Exit Exit

Parameter Reformatting options

The following example shows the location of “After Column 80”, for JCL Statement reformatting.

JCL GENERIC Statement ReformattingCommand ===> Scroll ===> CSRThe GENERIC Reformat statement has no subparms.Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . . YRight Margin . . . . . 71 Comment Handling . . SENTENCEParameters per Line . . 99 Comment Justify . . . NONEParameter Start Col . . 16 Comment Left Margin 04 Stmt Start Column 12Sort Keywords . . . . . Y Comment Right Margin 71 Cont Start Column 16After Column 80 . . . . KEEPWITHLINENUM Keep Quoted Field On One Line _

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

JCL Statement Type Reformatter panel.

The following example shows the location of “After Column 80”, for IDCAMS Statement reformatting.

IDCAMS GENERIC Statement ReformattingCommand ===> Scroll ===> CSR

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . . YRight Margin . . . . . 60 Comment Handling . . AFFINITYParameters per Line . . 01 Comment Justify . . . LEFTParameter Start Col . . Comment Left Margin 60 Stmt Start Column 04Sort Keywords . . . . . Y Comment Right Margin Continuation ColumnAfter Column 80 . . . . KEEPWITHLINENUMSpaces Around Commas 00 Spaces Inside Parens 00 Logic Indent . . . 04Spaces Around Keywords 00 Spaces Outside Parens 00

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

IDCAMS Statement Type Reformatter panel

The following example shows the location of “After Column 80”, for JES2 Statement reformatting.

134

ASG-PRO/JCL Reference Guide

Page 142: ASG-PRO/JCL Reference Guide

JES2 GENERIC Statement ReformattingCommand ===> Scroll ===> CSRThe GENERIC Reformat statement has no subparms.Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . . YRight Margin . . . . . 71 Comment Handling . . SENTENCEParameters per Line . . 99 Comment Justify . . . NONEParameter Start Col . . 09 Comment Left Margin 30Sort Keywords . . . . . Y Comment Right Margin 71After Column 80 . . . . TRUNCATE Keep Quoted Field On One Line _

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

JES2 Statement Type Reformatter panel.

After Column 80

TRUNCATEThe default for this option is “TRUNCATE”, which discards all data past column 80.

JCL GENERIC Statement ReformattingCommand ===> Scroll ===> CSR

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . . YRight Margin . . . . . 71 Comment Handling . . SENTENCEParameters per Line . . 99 Comment Justify . . . NONEParameter Start Col . . 16 Comment Left Margin 04 Stmt Start Column 12Sort Keywords . . . . . Y Comment Right Margin 71 Cont Start Column 16After Column 80 . . . . TRUNCATE Keep Quoted Field On One Line _

PARAMETERS: Use ALLPARMS command to fill with all parameters.Use: I (Insert), D (Delete), M (Move), B (Before), A (After)Sel Parameter--- -----------------------------------

JCL GENERIC Statement Type Reformatter panel

Choose Reformatter from the ASG-PRO/JCLMain Menu, JCL from the Edit Reformatter Settings panel, and the StatementType from the Specify JCL Statement Type Reformatting panel to reach this panel.

KEEPWITHLINENUMThis option keeps everything from column 72 to the end of the record in the same columns and on the same line,regardless of how comments (data before column 72) are reformatted.

135

Extended Reformatter Feature

Page 143: ASG-PRO/JCL Reference Guide

JCL GENERIC Statement ReformattingCommand ===> Scroll ===> CSR

Rfmtr Mbr: DEFAULT Owner: ASGUSR Desc:Enable Reformat . . . . YRight Margin . . . . . 71 Comment Handling . . SENTENCEParameters per Line . . 99 Comment Justify . . . NONEParameter Start Col . . 16 Comment Left Margin 04 Stmt Start Column 12Sort Keywords . . . . . Y Comment Right Margin 71 Cont Start Column 16After Column 80 . . . . KEEPWITHLINENUM Keep Quoted Field On One Line _

JCL GENERIC Statement Type Reformatter panel.

To reach this panel

1. Choose Reformatter from the ASG-PRO/JCLMain Menu

2. Choose JCL from the Edit Reformatter Settings panel

3. Choose the Statement Type from the Specify JCL Statement Type Reformatting panel.

Only the first 85 characters of input records longer than 80will appear in the SJL. Only the first 80 characters of JMP-added or modified records will appear in the SJL, even though the full length record will be written to the output datasetif After Column 80 = KEEPWITHLINENUM is specified.

l If Reformatter adds a record to the JCL, the record will not contain anything in those columns.

l If Reformatter deletes a record, the data in all columns are lost.

l JCL with LRECL>80 cannot be changed or reformatted using JJ.

136

ASG-PRO/JCL Reference Guide

Page 144: ASG-PRO/JCL Reference Guide

Restart InterfacesThis topic describes about restart interfaces.

CA-11 Interface

PRO/JCL automatically detects the presence of CA-11 rerun/restart manager steps in the JCL and simulates its functions.

CONTROL-R Interface

PRO/JCL automatically detects the presence of CONTROL-R restart manager steps in the JCL and simulates its functions.No action is necessary at either PRO/JCL installation time or PRO/JCL run time.

137

Restart Interfaces

Page 145: ASG-PRO/JCL Reference Guide

Run-Time SettingsPRO/JCL's Run-Time Settings are divided into two categories:

l Keyword

l Table

The basic difference between them is how they are set, not upon what they operate.

With Keyword settings, you can only change the values assigned to keywords, not the keywords themselves. Also,Keyword Settings comewith factory default settings.

With Table settings, you create your own keywords and associate values with them, values which are usually selectedfrom a set or range of values. There can be no factory defaults for Table Settings.

The PRO/JCL User documentation and the System Administrator documentation provide details about how to set andmaintain Run-Time settings.

This topic gives details about each Run-Time setting.

n Keyword Settings Panels

n Run-Time Options

n Interface Options

n Format Options

n JCL Listing Report Options

n RTS Report Panel

n Enabled Tables

n Table Setting Panels

n Table Settings

Keyword Settings PanelsThis topic describes the panels that provide access to the Run-Time Settings Keyword settings:

l Run-Time Options l Interfaces l Format Options

l JCL Listing Report l RTS Report l Enabled Tables

Sample Keyword Setting PopupPRO/JCL displays the keyword option popup when you select an option from a Keyword Settings panel.

Use this popup to set the Keyword to an allowable value.

138

ASG-PRO/JCL Reference Guide

Page 146: ASG-PRO/JCL Reference Guide

PRO/JCL Check DSN Access Row 1 to 6 of 6Command ===> Scroll ===> PAGE

Option values:RTS . . . YDefault : YAllowable: Y or N

Description:Use Check DSN Access for PRO/JCL to check if the user IDrunning the job has proper access authority to the data setsin the JCL. Specify Y to turn on the checking. If user doesnot have sufficient authority, PRO/JCL issues a messageabout each data set that could not be accessed. Specify N toturn off the checking.

Sample Keyword Options popup

Only the RTS Value field is changeable in the popup, and only if it is not already set to N/A by theProduct Administrator.

Run-Time OptionsRun-Time options control how PRO/JCL processes JCL members and control statement members. Use the Run-TimeOptions panel to specify Run-Time Settings, to view the full RTS value, or to view the full list of allowable values for anoption. To select an option, type a slash (/) in the Sel column.

139

Run-Time Options

Page 147: ASG-PRO/JCL Reference Guide

PRO/JCL Run-Time Options Row 1 to 43 of 43Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: P390 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------

Call Management Class N N Y or NCall Storage Group N N Y or NCheck DSN Access Y Y Y or NCheck TAPE DSN Access Y or NCond Processing N N Y or NCustomer Prefix USR USR 1 - 3 alphabFOLT File size MEDIUM MEDIUM SMALL, MEDIUFree Unused File Interval within 0 toGDG UPDATE ENDOFJOB ENDOFJOB ENDOFJOB orGlobal Exit Data set namGlobal Exit Parm 1 - 50 charaISPF Statistics UPDATE UPDATE UPDATE or NOJES Dest Check Y Y Y or NLanguage Preference ENU, JPN, orLoad JCL Comments Y Y Y or NMember Checking Y Y Y or NOutput PDS ENQ EXCLUSIVE EXCLUSIVE EXCLUSIVE orOutput 73-80 AUTO AUTO RENUMBER, MAPreferred Control Card DD DDname or NuPreferred Loadlib DDNAME DDname or NuPreferred Proclib DDNAME DDname or NuProcess ADRDSSU Y Y Y or NProcess DB2 Y Y Y or NProcess ICEGENER Y Y Y or NProcess IDCAMS Y Y Y or NProcess IEBCOPY Y Y Y or NProcess IEBGENER Y Y Y or NProcess IEHLIST Y or NProcess IEHPROGM Y Y Y or NProcess SORT Y Y Y or NPROCLIBDD JOBPROC JOBPROC DDname or NuProgram Checking Y Y Y or NProgrammer Name Required N N Y or NReformat On Change Y or NReformat w/Errors N N Y or NResolve System Symbols N N Y or NSORT Requires SYSOUT Y or NStatus Threshold 1000 1000 within 1 toStore DSN for DUMMY DD N N Y or NTSO Submit Y Y Y or NUnrecognized Statement Li 10 10 Within 0 toUse JES2 PROCLIB Defs Y or N

Run-Time Options panel

CommandD(Delete) Use Delete to remove a value for a keyword option, so that the Default value for the option takes effect.

The actual list you see might be somewhat different than the one shown here, depending on thePRO/JCL release level installed, default assignments, and RTS values.

Call Management Class

This option is used by DFSMShsm to determine dataset migration and expiration criteria. This option directs PRO/JCL toinvoke the SMS Management Class ACS routine and return a Management Class, if one is selected.

140

ASG-PRO/JCL Reference Guide

Page 148: ASG-PRO/JCL Reference Guide

Allowable Values Default

Y invokes SMS Management Class ACS routine.

N bypasses the SMS Management Class ACS routine.

N

Call Management Class allowable values

To reduce the overhead and processing time by calling only the DATACLAS and STORCLAS routines, ASG recommendssetting this to N.

If SMS Managed Tape datasets are used, specify Y.

Call Storage Group

This option directs PRO/JCL to invoke the STORGRP routine and returns a storage group.

Allowable Values Default

Y invoke the SMS Storage Group ACS routine.

N bypass the SMS Storage Group ACS routine.

N

Call Storage Group allowable values

To reduce the overhead and processing time by calling only the DATACLAS and STORCLAS routines, ASG recommendssetting this to N.

Check DSN Access

This option specifies whether to check if the user has authority to access the datasets in the DD statements.

Allowable Values Default

Y enables checking. If the user does not have sufficient authority, PRO/JCL issues a messageabout each dataset that cannot be accessed.

N disables checking. Attempts to access datasets for which the user does not have sufficientauthority will be blocked by your security system, and. an actual security violation attempt will belogged.

Y

Check DSN Access allowable values

For either value, security restrictions imposed by your system are honored. PRO/JCL will neverbypass site security.

If you are testing and are not planning to submit the job under your user ID, you might want to specify N to disable thedataset checking.

See Security Interfaces for further information on this feature.

141

Run-Time Options

Page 149: ASG-PRO/JCL Reference Guide

Check TAPE DSN Access

This option specifies whether to check if the user has authority to access the tape datasets in the DD statements.

Allowable Values Default

Y enables tape dataset authority checking. If the user does not have authority, PRO/JCL issues amessage about each dataset that cannot be accessed.

N disables tape dataset authority checking.

N

Check TAPE DSN Access allowable values

The Check DSN Access option must be set to Y for this option to have any effect.

Cond Processing

This option specifies whether PRO/JCL simulates every step in a JCL stream or to evaluate all COND= and IF statementsand process JCL accordingly.

Allowable Values Default

Y enables condition code processing. PRO/JCL will use the COND= parameter and IF statementsto determine whether to simulate steps.

N to simulate every step.

Y

Cond Processing allowable values

PRO/JCL always performs syntax validation on all steps. This option controls run-time validationonly, such as checking the existence of datasets.

Customer Prefix

The Customer Prefix option specifies the string that precedes User-Defined messages issued by JMP messages.

Allowable Values Default

1 to 3 characters, which are used as the prefix for JMP messages. USR

Customer Prefix allowable values

Change the prefix to one that better suits the needs of the site.

Standards are written to validate JCL for site-specific criteria. With a standards program in effect, site-specific standardsviolations are flagged with the appropriate user-written error message on the Structured JCL Listing.

Example:USR90001E CLASS=A IS INVALID FOR PRODUCTION.

Free Unused File Interval

This option specifies the time threshold to free datasets during long running processes.

142

ASG-PRO/JCL Reference Guide

Page 150: ASG-PRO/JCL Reference Guide

Allowable Values Default

An integer from 1 to 1000 to indicate the number of seconds to keep datasets.

Use 0 to leave the datasets allocated during the process.

0

Free Unused File Interval allowable values

GDG Update

Use this option to control the external tracking of generation datasets. The GDG Update option is used to determine howGeneration Datasets will be processed. This option can be set so that PRO/JCL processes newGDG datasets as thoughthe GDG Base Record Association is updated at the end of the job.

Allowable Values Default

ENDOFSTEP specifies that +n datasets should be processed as though the GDG Base RecordAssociation is updated at the end of the step.

ENDOFJOB specifies that +n datasets should be processed as though the GDG Base RecordAssociation is updated at the end of the job.

ENDOFJOB

GDG Update allowable values

Most sites will use the default of ENDOFJOB.

l Check with your systems personnel to verify questions you might have about your site environment.

l Before specifying ENDOFSTEP, verify with the system programmers at your site that the operating systemhas been installed to process GDG datasets as though the GDG Base Record Association is updated at theend of each step. This is not the IBM default

Global Exit

This option specifies a REXX exec to be executed with each run.

Allowable Values Default

Dataset name, Member name, or Null Value. NULL

Global Exit allowable values

Choose a valid REXX exec name only or the fully qualified dataset and member name of the REXX exec.

A null value can also be specified. If the dataset name is null, the REXX exec found in the SYSEXEC DD will be used.

Global Exit Parm

This option specifies the parameter to be passed to the Global Exit.

143

Run-Time Options

Page 151: ASG-PRO/JCL Reference Guide

Allowable Values Default

1 - 50 characters or Null Value NULL

Global Exit Parm allowable values

ISPF Statistics

This option is used to specify whether PRO/JCL maintains the ISPF statistics (change date, user ID, and number of lines)associated with each dataset member as a result of changes that PRO/JCL performs on the JCL, due to JMP or reformat.

Allowable Values Default

UPDATE updates the ISPF statistics.

NOUPDATE prevents updating the ISPF statistics.

UPDATE

ISPF Statistics allowable values

You might want use the option of NOUPDATE if you have implemented a change control package(ChangeMan, ENDEVOR) to update the ISPF statistics.

JES Dest Check

Use this option to validate DEST parameters on these types of statements:

l JCL OUTPUT l JCL DD

l JES2 ROUTE l JES2 OUTPUT l JES2 XMIT

l JES3 FORMAT l JES2 OUTPUT l JES3 XMIT

Allowable Values Default

Y enables validation of DEST parameters.

N disables validation of DEST parameters.

Y

JES Dest Check allowable values

JES destination checking is limited to syntax checking only and cannot verify actual location due tolimitations in the JES Destination Validation interface.

Language Preference

This option allows the user to choose which language they prefer for their error messages.

144

ASG-PRO/JCL Reference Guide

Page 152: ASG-PRO/JCL Reference Guide

Allowable Values Default

ENU = US English

JPN = Japanese

Contact your local ASG distributor for Language Preference availability.

ENU

Language Preference allowable values

If you wish to obtain an alternate language option, contact your local ASG distributor for availability.

It is likely that not all messages are available in your preferred language. If an error occurs,PRO/JCL displays an untranslated message in English.

Member Checking

This option specifies whether PRO/JCL checks to see if PDS members specified in the JCL exists.

Allowable Values Default

Y enables member checking. PRO/JCL checks the dataset specified in the JCL for themember.

N disables member checking. PRO/JCL ensures the dataset can be found, but does not check forthemember.

Y

Member Checking allowable values

With the option set to Y, PRO/JCL checks to see ifMEMBER is in dataset A.B.C://SYSIN DD DSN=A.B.C(MEMBER),DISP=SHARE

If Member Checking is set to N and Program Checking is set to Y, PRO/JCL does not performprogram checking because for it to do proper program checking it also needs Member Checking setto Y.

Output PDS ENQ

This option determines how the PRO/JCL output libraries will be allocated.

Allowable Values Default

EXCLUSIVE Allocates output libraries (used for writing reformat or JMP program output) asDISP=OLD.

SHARED Allocates output libraries (used for writing reformat or JMP program output) asDISP=SHR). See Caution below.

EXCLUSIVE

Output PDS ENQ allowable values

145

Run-Time Options

Page 153: ASG-PRO/JCL Reference Guide

There is an exposure to data integrity problems when this option is set to SHARED if users mightaccess the output libraries with utilities that do not issue SPFEDIT enqueues (utilities such asIEBCOPY do not issue SPFEDIT enqueues).

Output 73-80

This option determines what appears in columns 73-80 of the Output member.

Allowable Values Default

RENUMBER Renumber all the records in a changed member.

MAINTAIN Keep 73-80 intact, regardless of record changes.

ISPFMaintain sequence numbers in 73-80.

AUTO This option automatically selects between ISPF and Maintain.

AUTO

Output 73-80 allowable values

l RENUMBER The first record will be numbered 100. Each following record will be incremented by 100. Thenumbers are in columns 73-78. If ISPF statistics are on for this member, themodification number will be seton all changed records in columns 79 and 80. Otherwise, columns 79 and 80 are set to “00”.

l MAINTAIN This option is useful if you keep data or special indicators in columns 73-80.

l ISPF This option maintains the sequence numbers in 73-80 in the samemanner ISPF Edit does.

l AUTO This option automatically selects between ISPF and MAINTAIN. If the first record in themember hasnumerics in 73-80, then ISPF is selected. Otherwise, MAINTAIN is used.

Preferred Control Card DD

When allocated to the PRO/JCL started task or batch job, PRO/JCL first searches the DD specified here for control cardmembers before the coded dataset name or preferred dataset name.

Allowable Values Default

Any valid DDNAME. (none)

Preferred Control Card DD allowable values

If no value is specified, PRO/JCL checks for DD JLJPF and uses it if allocated.

Preferred Loadlib DDNAME

When allocated to the PRO/JCL started task or batch job, PRO/JCL searches the DD specified here ahead of the normalsearch order to verify the existence of programs before STEPLIB, JOBLIB, or LPA.

146

ASG-PRO/JCL Reference Guide

Page 154: ASG-PRO/JCL Reference Guide

Allowable Values Default

Any valid DDNAME. (none)

Preferred Loadlib DDNAME allowable values

If nothing is specified, PRO/JCL checks for DD JLJPL and use it if allocated.

Preferred Proclib DDNAME

When allocated to the PRO/JCL started task or batch job, PRO/JCL searches the DD specified here ahead of libraries inPRO/JCL's normal search order. For more information on PRO/JCL's PROC search order, see the topic - Library SearchOrder for PROCs and INCLUDEs in the User documentation.

Allowable Values Default

Any valid DDNAME. (none)

Preferred Proclib DDNAME allowable values

Process ADRDSSU

Use this option to enable the DFSMSdss control statement interface.

Allowable Values Default

YWhen you want PRO/JCL to validate DFSMSdss control statements.

NWhen you want PRO/JCL to ignore DFSMSdss control statements.

Y

Process ADRDSSU allowable values

Process DB2

Use this option to enable the DB2 control statement interface.

Allowable Values Default

Y Validates DB2 control statements.

N Ignores DB2 control statements.

Y

Process DB2 allowable values

PRO/JCL includes a DB2 interface for extracting additional information for PRO/JCL to validate. This option performs thefollowing functions:

l Verifies that the DB2 application program identified in the DSN RUN command exists.

l Verifies that the DB2 library name specified in the DSN command exists.

l Verifies that the DB2 subsystem specified in the DSN command is an activeMVS subsystem.

l PRO/JCL performs syntax checking for DB2 control statements.

l PRO/JCL does not validate DB2 DDL commands.

147

Run-Time Options

Page 155: ASG-PRO/JCL Reference Guide

See Database Interfaces for more information on this feature.

Process DB2 Utilities

This option enables the validation of utility control cards for DB2 Version 8.1 and later. Consult the DB2 UDB forz/OS V8 Utility Guide for complete information.

Allowable Values Default

Y Validates DB2 utility control cards.

N Ignores DB2 utility control cards.

N

Process DB2 Utilities allowable values

PRO/JCL does not validate stand-alone utilities, nor does it validate SQL statements.

Process ICEGENER

This option allows the user to choose whether PRO/JCL validates ICEGENER control statements.

Allowable Values Default

Y Validates ICEGENER control statements.

N Ignores ICEGENER control statements.

Y

Process ICEGENER allowable values

Process IDCAMS

This option allows the user to enable or disable IDCAMS control statement validation.

Allowable Values Default

Y Validates IDCAMS control statements and tracks datasets created or deleted by an IDCAMSstep in the sameway JCL references are tracked.

N Ignores IDCAMS control statements.

Y

Process IDCAMS allowable values

See the topic - Other Utility Interfaces for further information on this feature.

Process IEBCOPY

This option allows the user to choose whether PRO/JCL validates IEBCOPY control statements.

Allowable Values Default

Y Validates IEBCOPY control statements. Y

Process IEBCOPY allowable values

148

ASG-PRO/JCL Reference Guide

Page 156: ASG-PRO/JCL Reference Guide

N Ignores IEBCOPY control statements.

See the topic - Other Utility Interfaces for further information on this feature.

Process IEBGENER

This option allows the user to choose whether PRO/JCL validates IEBGENER control statements.

Allowable Values Default

Y Validates IEBGENER control statements.

N Ignores IEBGENER control statements.

Y

Process IEBGENER allowable values

Process IEHLIST

This option allows the user to choose whether PRO/JCL validates IEHLIST control statements.

Allowable Values Default

Y Validates IEHLIST control statements.

N Ignores IEHLIST control statements.

Y

Process IEHLIST allowable values

Process IEHPROGM

This option allows the user to choose whether PRO/JCL validates IEHPROGM control statements.

Allowable Values Default

Y Validates IEHPROGM control statements.

N Ignores IEHPROGM control statements.

Y

Process IEHPROGM allowable values

Process SORT

This option allows the user to choose whether PRO/JCL validates SORT control statements.

Allowable Values Default

Y Validate SORT control statements.

N Ignore SORT control statements.

Y

Process SORT allowable values

149

Run-Time Options

Page 157: ASG-PRO/JCL Reference Guide

PROCLIBDD

This option specifies the ddname your system uses to resolve PROCs and INCLUDEs. This might be DYNAPROC or EZPROCif that is what your system uses to resolve PROCs. This option is only one of a series of places PRO/JCL searches forPROCs and INCLUDEs. For more information on PROC search order, see the topic - Library Search Order for PROCs andINCLUDEs in the User documentation.

Allowable Values Default

A valid ddname or null value. The DYNAPROC or EZPROC ddname your system uses to resolvePROCs.

JOBPROC

PROCLIBDD allowable values

Program Checking

This option allows the user to choose whether or not PRO/JCL validates the existence of programs.

Allowable Values Default

Y Validates the existence of programs.

N Ignores program checking.

Y

Program Checking allowable values

If Member Checking is set to N and Program Checking is set to Y, PRO/JCL does not performprogram checking because for it to do proper program checking it also needs Member Checking setto Y.

Programmer Name Required

Use this option to require the programmer name field on the JOB card to have a value.

Allowable Values Default

Y Require the programmer name field on the JOB card to have a value.

N Do not require the programmer name field on the JOB card to have a value.

N

Programmer Name Required allowable values

Some sites require the programmer name field on the JOB card to have a value.

Reformat On Change

Use this option to specify whether changed statements are to be reformatted automatically.

Allowable Values Default

Reformat On Change allowable values

150

ASG-PRO/JCL Reference Guide

Page 158: ASG-PRO/JCL Reference Guide

YWhen set to Y, change statements are automatically reformatted.

NWhen set to N, change statements are not reformatted.

Y

Users might not want to reformat members containing changes in the JCL, depending on their application.

Many users will want the changed members written to the output library. However, when using PRO/JCL to migrate JCL,you might want to use this option to prevent JCL with changes from being reformatted.

Reformat w/Errors

This option will prevent JCL with errors from being migrated when using PRO/JCL to move JCL from test to production.

Allowable Values Default

YWhen set to Y, all changed and reformatted jobs are written to the output dataset.

NWhen set to N, only changed and reformatted members that have a severity of less than 8are written to the output dataset.

N

Reformat w/Errors allowable values

Users might not want to write members that contain errors in the JCL, depending on their application for Reformat andChange.

Many users will want the changed members written to the output library. However, when using PRO/JCL to migrate JCL,you might want to use this option to prevent JCL with errors from being migrated.

Resolve System Symbols

This option is used by PRO/JCL to resolve symbols in Started Task JCL.

Allowable Values Default

Y Resolve system symbols in the source JCL.

N Bypass resolution of system symbols.

N

Resolve System Symbols allowable values

Sort Requires Sysout

This option indicates whether a SYSOUT DD statement is required.

Allowable Values Default

Y A SYSOUT DD is required when executing a SORT utility program.

N A SYSOUT DD is not required.

Y

Sort Requires Sysout allowable values

TSO Submit

This option is used by PRO/JCL to control TSO simulation for JOB statement processing.

151

Run-Time Options

Page 159: ASG-PRO/JCL Reference Guide

Allowable Values Default

Y Generate a valid JOB statement for members that do not have a JOB statement. Does notaffect processing ofmembers that have a JOB statement.

N Specify normal processing ofmembers. If no JOB statement is found, none is generated andPRO/JCL prints appropriate errors in the SJL.

Y

TSO Submit allowable values

Unrecognized Statement Limit

This option is used by PRO/JCL to limit the processing of unrecognized SYSIN statements. If the specified limit is reachedbefore PRO/JCL encounters a recognized control card, then SYSIN processing is stopped. If PRO/JCL finds a recognizedcontrol card before the specified limit is reached, SYSIN processing is not stopped.

Allowable Values Default

Any 1-4 digit integer between 0 and 1000.

Specify 0 for no limit.

10

Unrecognized Statement Limit allowable values

Use JES2 PROCLIB Defs

This option sets up the search libraries in the JES2 PROCLIB definitions after the PROCLIBs specified in the RTS Jesprocstable. The PRO/JCL started task must be authorized by the security suite in use to create an Extended MCS Console andissue the command "/$D PROCLIB" so that it can build a list of dynamically allocated JES proclibs.

Allowable Values Default

Y Searches PROCLIBs from dynamic JES2 PROCLIB definitions.

N Disables function.

N

Use JES2 PROCLIB Defs allowable values

Interface OptionsInterface options control how PRO/JCL analyzes your JCL with regard to data management. Use the Interfaces panel toset the necessary options to interact with other products, to view the full RTS value, or to view the full list of allowablevalues. To select an option, type a slash (/) in the Sel column.

152

ASG-PRO/JCL Reference Guide

Page 160: ASG-PRO/JCL Reference Guide

PRO/JCL Interfaces Row 1 to 37 of 37Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------

CA-Jobtrac AJO Date MMDDYY MMDDYY MMDDYY or DDCA-Jobtrac Location 0 0 within 0 toCA-Jobtrac SCL JOBTRAC.SCL JOBTRAC.SCL Data set namCA-Jobtrac Variables JOBTRAC.DATEFILE JOBTRAC.DATEFILE Data set namCatalog Access Y Y Y or NCatalog Alias Cnt 2 2 within 1 toCA7 Default Schedule ID 1 1 within 1 toControl-M Resolve YES, NO, orCVOL N N Y or NDAGLOBAL XXX.DAGLOBAL XXX.DAGLOBAL Data set namDB2 Authorization ID an alphabetiDB2 Plan Name an alphabetiDB2 Subsystem an alphabetiDMSVOL ARCIVE ARCIVE VOLSER or NuDSS Version 1.4 1.4 1.1, 1.2, 1.HSMVOL MIGRAT MIGRAT VOLSER or NuIAM N N Y or NIMS N N Y or NIOPLUS N N Y or NJES JES2 JES2 JES2 or JES3JES Exit Parm Anything orJES Submit Exit Member name

...

Interfaces panel

CommandD(Delete) Use Delete to remove a value for a keyword option, so that the Default value for the option takes effect.

Some of these options require special interfaces to be installed (for example, Tape Manager).Other interfaces are contained within PRO/JCL (for example, Catalog Access) and no specialinterface is needed.

Product Cross Reference Table

Use the below table to determine which product interfaces PRO/JCL supports in foreground, batch, or edit macroprocessing.

Interface Foreground Batch Edit Macro Comments

Change Managers

CA-ENDEVOR

This changemanager can call PRO/JCL. PRO/JCLsupports any mode it supports. For moreinformation see topic - ChangeManagementInterfaces.

Promotes catalogedprocedures. Supportsdatabase loading/reporting.

Supported PRO/JCL Product Interfaces

153

Interface Options

Page 161: ASG-PRO/JCL Reference Guide

Interface Foreground Batch Edit Macro Comments

ChangeMan

This changemanager can call PRO/JCL. PRO/JCLsupports any mode it supports. For moreinformation see topic - ChangeManagementInterfaces.

Promotes catalogedprocedures. Supportsdatabase loading/reporting.

SCLM

This changemanager can call PRO/JCL. PRO/JCLsupports any mode it supports. For moreinformation see topic - ChangeManagementInterfaces.

REXX EXEC that runs PRO/JCLinteractively using DSSIAPIs.

DASD Managers

DFSMShsm Y Y YDefines the volume serial intheMVS catalog wheredatasets are archived.

DMSVOL Y Y YDefines the volume serial intheMVS catalog wheredatasets are archived.

DASD Dump/Restore

DFSMSdss (ADRDSSU) Y Y Y

Provides full syntax checking.Simulates in-stream and stand-alone processing of ADRDSSUcontrol cards. Does notsimulate restore functions.

Database Managers

DB2 Y Y Y

Full processing of DSNcommands, includingPLAN/PGM and syntax ofparms.

IMS Y Y YProcessing of PSBs, DBDs, andACBs, along with fastpathsupport.

Library Managers

CA-Librarian Y Y YFull read/write functionalityand expansion of INCLUDEcards.

154

ASG-PRO/JCL Reference Guide

Page 162: ASG-PRO/JCL Reference Guide

Interface Foreground Batch Edit Macro Comments

CA-Panvalet Y Y YFull read/write functionalityand expansion of INCLUDEcards.

Schedulers

ASG ZEKE Y Y YSimulation includes fullvariable substitution.

Beta42 Y Y YSimulation includes fullvariable substitution.

CA-Jobtrac Y Y YSimulation includes fullvariable substitution.

CA-7 Y Y Y

#Jl, #J0, #Xl, and #X0statements are supported. Nolimit on number of IDs. Abilityto set a default SCHEDID andautomatically build selectstatements.

CONTROL-M Y Y Y

Simulation includes dynamicresolution of %% variables andresolution of all Auto Editvariables. Full DAGLOBALsupport.

ESP Y Y YSimulation includes fullvariable substitution.

TWS or OPC (Tivoli WorkloadScheduler)

Y Y Y

Includes TWS variableresolution even if the job hasnot been saved to the TWSdatabase, and if the user isscanning outside of the TWSenvironment.

Security Managers

CA-ACF2 Y Y Y SAF compliant.

CA-Top Secret Y Y Y SAF compliant.

RACF Y Y Y SAF compliant.

155

Interface Options

Page 163: ASG-PRO/JCL Reference Guide

Interface Foreground Batch Edit Macro Comments

Tape Managers

Automedia (ZARA) Y Y Y Automatically invoked.

CA-1 (TMS) Y Y YOut of Area codes aresupported.

CA-Dynam/TLMS Y Y Y

The TLMS database is read tolocate the volume. Datasetsnot found on a specifiedvolume at the specified labelare flagged. Only the firstvolume of a multi-volumedataset is verified.

CONTROL-M/Tape (Control-T) Y Y Y Same support as TLMS.

DFSMSrmm Y Y Y

Same support as TLMS.DFSMS level V1R3 or higher isrequired. For V1R3, the usermust be at maintenance level9806 or have PTF UW47006applied. If running V1R4, theuser must be at maintenancelevel 9806 or have PTFUW47007 applied. For V1R5 nospecial maintenance isrequired.

File Systems

IAM Y Y YProcesses IAM datasets as ifthey are ordinary VSAM files.

Utility Programs

IEBGENER Y Y YProcesses syntax, allocatesand opens files, and simulatescondition codes.

IEBCOPY Y Y YProcesses syntax, allocatesand opens files, and simulatescondition codes.

IEHPROGM Y Y Y Processes syntax, allocates

156

ASG-PRO/JCL Reference Guide

Page 164: ASG-PRO/JCL Reference Guide

Interface Foreground Batch Edit Macro Comments

and opens files, reads andparses control cards, simulatescondition codes and updatesthe internal catalog.

IDCAMS Y Y Y

Processes syntax, allocatesand opens files, simulatescondition codes and updatesthe internal catalog.

SYNCSORT Y Y YSYNCSORT- specific parmssupported.

DFSORT Y Y Y DFSORT release 13 supported.

CA-SORT Y Y YDFSORT release 13 compatible.CA-SORT specific parmssupported.

Miscellaneous

Dyna-Proc Y Y YDynamic allocation of the DDPROCLIB.

CA-EZPROCLIB Y Y Y Dynamic allocation of the DDPROCLIB.

CA-Jobtrac AJO Date

This option tells PRO/JCL whether the CA-Jobtrac Automatic JCL Override datemask is in the format ofMMDDYY orDMMYY (Eurodate) format.

Allowable Values Default

MMDDYY or DDMMYY MMDDYY

CA-Jobtrac AJO Date allowable values

CA-Jobtrac Location

This option tells PRO/JCL which location to use if no location is specified for a job.

Allowable Values Default

0 to 254 (1 to 3 digits.) (none)

CA-Jobtrac Location allowable values

157

Interface Options

Page 165: ASG-PRO/JCL Reference Guide

There is no default for this option. See the topic - Scheduler Interfacesfor further information on this feature.

CA-Jobtrac SCL

This option tells PRO/JCL the dataset that holds CA-Jobtrac SCHEDULE CONTROL LANGUAGE (SCL).

Allowable Values Default

Specify a fully-qualified name for the SCL dataset. JOBTRAC.SCL

CA-Jobtrack SCL allowable values

See the topic - Scheduler Interfacesfor further information on this feature.

CA-Jobtrac Variables

This option indicates to PRO/JCL the dataset containing the JMFSYM01 and PRODDATEmembers.

Allowable Values Default

Dataset namewith no member or Null Value.

Specify a fully-qualified dataset namewhere the JMFSYM01 and PRODDATEmembers are located.

JOBTRAC.DATEFILE

CA-Jobtrac Variables allowable values

See the topic - Scheduler Interfacesfor further information on this feature.

Catalog Access

This option determines whether or not the user wants PRO/JCL to check the system catalogs for datasets coded in theJCL.

Allowable Values Default

Y Checks the system catalogs for datasets coded in the JCL.

N Prevents the checking of the system catalog. (Equivalent to assuming that initially, the catalogmatches the JCL (without checking).)

Y

Catalog Access allowable values

Catalog Alias Cnt

This option specifies the number of nodes in a catalog alias at your site.

It is important that this value accurately matches your sites Multi-Level Alias Facility (MLAF) nodecount. Make changes to this value only when your site's MLAF node count has changed.

Allowable Values Default

Catalog Alias Count allowable values

158

ASG-PRO/JCL Reference Guide

Page 166: ASG-PRO/JCL Reference Guide

1, 2, 3, or 4. 1

Check with your systems personnel to verify your site environment.

CA-7 Default Schedule ID

This option specifies to PRO/JCL the default schedule ID to use, if no schedule ID is specified for a particular job.

Allowable Values Default

Within 1 to 255 and between 1 to 3 digits, ALL, or ONLY 1

CA-7 Default Schedule ID allowable values

See the topic - Scheduler Interfacesfor further information on this feature.

CONTROL-M Resolve

This option determines if PRO/JCL stops processing when CONTROL-M cannot resolve a variable.

Allowable Values Default

Y Tells PRO/JCL to stop CONTROL-M processing when a variable cannot be resolved.

N Tells PRO/JCL to continue processing even when CONTROL-M cannot resolve some variables.

MUST Same as YES

(none)

CONTROL-M Resolve allowable values

If nothing is entered here, CONTROL-M stops processing when it cannot resolve a variable. PRO/JCL control statementscontain %% symbols. If these control statements are coded in the JCL being scanned, CONTROL-M issues errors. SeeScheduler Interfaces for further information on this feature.

CVOL

This option is no longer used. It is provided here for earlier version compatibility only.

DAGLOBAL

This option is no longer used. It is provided here for earlier version compatibility only.

DB2 Authorization ID

This option is reserved for INFO/X. Values entered here are ignored for PRO/JCL.

DB2 Plan Name

This option is reserved for INFO/X. Values entered here are ignored for PRO/JCL.

DB2 Subsystem

This option is reserved for INFO/X. Values entered here are ignored for PRO/JCL.

159

Interface Options

Page 167: ASG-PRO/JCL Reference Guide

DMSVOL

This option specifies the pseudo- VOLSER recorded in theMVS catalog which represents datasets archived by DataManagement System (DMS).

Allowable Values Default

A valid VOLSER or Null Value. ARCIVE

DMSVOL allowable values

The DMS interface defines the volume serial in theMVS catalog in which datasets are archived.

The DMSVOL volser value must equal the volume serial coded in the RECATVOLVvvvvv parameterof DMS SYSPARMS.

See DASDManagement Interfaces for further information on this feature.

DSS Version

This option validates DFSMSdss control statements.

Allowable Values Default

1.1, 1.2, 1.3, 1.4, or 1.5

If your DSS version is higher than 1.5, enter 1.5.

1.4

DSS Version allowable values

HSMVOL

This option specifies to PRO/JCL the pseudo-VOLSER recorded in theMVS catalog that represents datasets archived byHierarchical StorageManager (HSM).

Allowable Values Default

A valid VOLSER or Null Value MIGRAT

HSMVOL allowable values

The HSMVOL interface defines the volume serial in theMVS catalog in which datasets are archived.

See the topic - DASDManagement Interfaces for further information on this feature.

IAM

This option enables PRO/JCL recognize IAM files and process them as if they were VSAM files.

Allowable Values Default

IAM allowable values

160

ASG-PRO/JCL Reference Guide

Page 168: ASG-PRO/JCL Reference Guide

Y Enable IAM

N Disable IAM

N

You might want to change the default of this option to Y, if your site has this VSAM replacement utility.

See the topic - Other Utility Interfaces for further information on this feature.

IMS

This option gives the user the choice whether or not PRO/JCL validates DFSRRC00 parameters. The IMS option providesan Information Management System (IMS) interface for extracting additional information for PRO/JCL to validate. Theinformation is available for jobs that access databases through the DLI, BMP, and DBB functions.

ACBLIB =DSN=PROD.IMS.ACBLIB,SHR

Allowable Values Default

Y Validate DFSRRC00 parameters.

N Ignore DFSRRC00 parameters.

N

IMS allowable values

The user might want to change the default to Y if they want PRO/JCL to validate DFSRRC00 parameters.

See the topic - Database Interfaces for further information on this feature.

The user can specify their IMS ACB Library Datasets using the IMS ACB Datasets option on theEdit/View Run-Time Settings panel.

IOPLUS

Use this option to simulate allocation of a DD used to invoke an IOPLUS VSAM Report.

Allowable Values Default

Y Enable IOPLUS

N Disable IOPLUS

N

IOPLUS allowable values

The IOPLUS option determines whether PRO/JCL simulates processing of the DD used to produce the IOPLUS VSAMreport.

JES

This option determines which JES system will be simulated by PRO/JCL.

Allowable Values Default

JES allowable values

161

Interface Options

Page 169: ASG-PRO/JCL Reference Guide

JES2 or JES3 JES2

JES Exit Parm

This option defines a string to be passed to the JES Submit Exit.

Allowable Values Default

Anything or Null Value. (none)

JES Exit Parm allowable values

You might want to select JES Exit Parm if your JES Exit requires an external parm. Place quotes around the value if itcontains spaces or special characters.

JES Submit Exit

This option specifies a user defined REXX exit program to be used for codemodification after your JCL is read and prior tofinal JCL processing.

Allowable Values Default

Member name or Null Value (none)

JES Submit Exit allowable values

You might want to choose JES Submit Exit if you want to comment out certain lines, make changes, or add lines to yourJCL after scheduler processing, and prior to the final JCL scan.

OASIS Delimiter

Use OASIS Delimiter to define what characters are coded on OASIS records.

Allowable Values Default

A quoted string of 1 - 3 characters or Null Value '$('

OASIS Delimiter allowable values

There is no default for this option.

OASIS Subsystem

Use this option to define the name of the OASIS subsystem. If a value is coded and the ZEKE scheduler is selected, OASISvariables will be processed.

Allowable Values Default

An alphabetic or national character followed by 1 - 3 alphanumeric or national characters orNull Value

(none)

OASIS Subsystem allowable values

162

ASG-PRO/JCL Reference Guide

Page 170: ASG-PRO/JCL Reference Guide

TWS ADID for PRO/JCL

This option specifies the name of the TWS ADID PRO/JCL uses for simulations to resolve variables. This must be the ADIDcreated for PRO/JCL during the install process.

Allowable Values Default

An alphabetic or national character followed by 1 - 15 alphanumeric or national characters. DSSIADHOC1

TWS ADID for PRO/JCL allowable values

The RTS Value for this option must be the ADID created for PRO/JCL during the install process.

PANEXEC

The PANEXEC option specifies whether to allocate any PECNTL DD statements found in the job being processed.

Allowable Values Default

Y Allocates PECNTL DD statements so proper control information is available to the PANEXECmodule for verifying program names in load libraries under control of PANEXEC.

N Use if your JCL does not have PECNTL DD statements.

(none)

PANEXEC allowable values

Security System

This option determines which security interface PRO/JCL uses.

Allowable Values Default

RACF, ACF2, TSS (Top Secret), or Null Value (none)

Security System allowable values

Refer to the topic - Security Interfaces for more information.

SMS ACS Routines

This option determines whether PRO/JCL accesses the Automatic Class Selection (ACS) routines of theMVS DFSMSsubsystem.

Allowable Values Default

Y access the ACS routines during validation of JCL.

N prevent access to ACS routines during validation when your environment is non-SMS.

Y

SMS ACS Routines allowable values

163

Interface Options

Page 171: ASG-PRO/JCL Reference Guide

The DFSMS subsystem provides information needed to validate and document JCL DD statementsused to allocate new datasets. The ACS routines provide selected constructs (DATACLAS, STORCLAS,and MGMTCLAS names.) in the same way MVS allocations obtain them. The SMS ACS RoutinesOption is ignored if the SMS subsystem is not active during PRO/JCL execution. If SMS is active onyour system and you specify NO for this option, the results might be incorrect when the input JCLcontains SMS keywords or relies on SMS for implied required parameters.

SMS Class

This option specifies whether to validate the existence of SMS constructs (STORCLAS, DATACLAS), etc., mentioned in theJCL or derived from the ACS routines.

Allowable Values Default

Y Validate SMS classes.

N Disable validation of SMS classes.

Y

SMS Class allowable values

You might want to choose N if your environment is not SMS. But, if SMS is active on your system and this option is setto N, PRO/JCL validation might be unpredictable.

l Check with your systems personnel to verify your site environment.

l The SMS Class option verifies classes specified in JCL and selected by ACS routines (if SMS ACS Routines is Y),and provides dataset attributes (such as SPACE and DCB information)

SMS Default Unit

This option specifies the unit name that SMS supplies when allocating new non-SMS managed datasets.

Allowable Values Default

1 - 8 alphanumeric, national, or '-' characters.

Specify a unit name to be used for all non-SMS allocations that do not specify a unit name in theJCL.

SYSDA

SMS Default Unit allowable values

Check with your systems personnel to verify your site environment.

SQL Block Size

The SQL Block Size option is reserved for INFO/X. Any value entered here will be ignored for PRO/JCL.

164

ASG-PRO/JCL Reference Guide

Page 172: ASG-PRO/JCL Reference Guide

Tape Manager

This option specifies which tapemanagement system PRO/JCL uses during JCL validation.

Allowable Values Default

TLMS CA-TLMS.

TMS To specify the CA-TMS tapemanagement system as a release prior to release 5.

TMS5 To specify the CA-TMS tapemanagement system as release 5 or greater.

ZARA To specify the ZARA tapemanagement system.

RMM IBM's DFSMSrmm RemovableMedia Manager.

CTLT CONTROL-M/Tape.

NOTMS To specify that NO TapeManagement System is in place.

NOTMS

TapeManager allowable values

Refer to the topic - Tape Management Interfaces for specific requirements of each TapeManagement Product.

Tape Management - Special Considerations

CONTROL-M/Tape (CTLT)This option enables PRO/JCL to verify the tapes in the database.

The following three DD's must be allocated to the PR1PROC and the started task://DAMDB DD DISP=SHR,DSN=IOA.V5R09802.CTT.MDBD//DAMDI DD DISP=SHR,DSN=IOA.V5R09802.CTT.MDBI//DATRC DD DISP=SHR,DSN=IOA.V5R09802.CTT.TRC

These are for the CONTROL-M/TapeMedia Database (MDBD &MDBI), and the CONTROL-M/Tape trace file. Datasetnames should be changed to reflect those used by CONTROL-M/Tape.

The CONTROL-M/Tape load library must bemade available to both the started task and the PR1PROC.

TLMSThe following DDmust be allocated to the PR1PROC and the started task:

//JTLMSVMF DD DISP=SHR,DSN=tlms.masterfile

This is for the TLMS VolumeMaster File. The dataset namemust be changed to reflect that which is used by TLMS.

TWS ADID for ASG Use

This option specifies the name of the PRO/JCL TWS application (TWS ADID) PRO/JCL uses for simulations. This must bethe ADID created for PRO/JCL during the install process.

Allowable Values Default

TWS ADID for ASG Use allowable values

165

Interface Options

Page 173: ASG-PRO/JCL Reference Guide

An alphabetic or national character followed by 1 - 15 alphanumeric or national characters. DSSIADHOC1

TWS Default ADID

This option specifies the name of the TWS ADID PRO/JCL uses for Not Found processing. Not Found processing occurswhen using the edit macro and the specified JOB is 'not found' in the Application Database or the Current Plan. Atemporary application will be created/deleted in the AD to associate with that JOB. The temporary TWS default ADIDspecified heremust be unique to the Application Database.

Allowable Values Default

An alphabetic or national character followed by 1 - 15 alphanumeric or national characters or NullValue.

No Default

TWS Default ADID allowable values

TWS Default Operation No

This option specifies the number of the TWS Operation PRO/JCL uses for Not Found processing. Not Found processingoccurs when using the Edit macro and the specified JOB is 'not found' in the Application Database or the Current Plan. Atemporary application will be created/deleted in the AD to associate with that JOB. This value is used in conjunction withthe TWS Default ADID RTS setting for creation of the temporary application.

Allowable Values Default

Within 1 to 255 and between 1 to 3 digits or Null Value No Default

TWS Default Operation No allowable values

TWS Default WorkStation

This option specifies the name of the TWS WorkStation PRO/JCL uses for Not Found processing. Not Found processingoccurs when using the edit macro and the specified JOB is 'not found' in the Application Database or the Current Plan. Atemporary application will be created/deleted in the AD to associate with that JOB. This value is used in conjunction withthe TWS Default ADID RTS setting for creation of the temporary application.

Allowable Values Default

An alphabetic or national character followed by 1 - 3 alphanumeric or national characters or NullValue

(none)

TWS Default WorkStation allowable values

TWS Terminate EQQYCOM

This option specifies whether PRO/JCL terminates EQQYCOM after each time JCLPREPA is exercised.

Allowable Values Default

TWS Terminate EQQYCOM allowable values

166

ASG-PRO/JCL Reference Guide

Page 174: ASG-PRO/JCL Reference Guide

Y Terminates EQQYCOM after each JCLPREPA.

N Terminate EQQYCOM when processing is completed.

N

VTOC Access

This option determines whether the DASD VTOCs are accessed for dataset information.

Allowable Values Default

Y Access the volume specified in the JCL to determine if the datasets are actually located on thatvolume.

N Prevent VTOC access when you know that the datasets do not exist.

Y

VTOC Access allowable values

ZARA Subsystem

This option specifies the name of the ZARA subsystem used at your site.

The ASG-Zara database can obtain information about tape datasets to verify the volume number coded in the JCL.

Allowable Values Default

An alphabetic or national character followed by up to 3 alphanumeric or national characters ornull value.

ZARA

ZARA Subsystem allowable values

If you have any questions about this setting, see your systems personnel.

See the topic - TapeManagement Interfaces for further information on this feature.

ZEKE Subsystem

This option specifies the name of the ZEKE subsystem. The ASG-Zeke interface substitutes an appropriate value into JCLcontaining ZEKE symbolic parameters.

Allowable Values Default

An alphabetic or national character followed by 1 - 3 alphanumeric or national characters or nullvalue.

SSSI

ZEKE Subsystem allowable values

If you have any questions about this setting, see your systems personnel.

See the topic - Scheduler Interfaces for further information on this feature.

167

Interface Options

Page 175: ASG-PRO/JCL Reference Guide

Format OptionsThese options control the appearance of the SJL report.

Format Options PanelUse this panel to set common features of reports produced by PRO/JCL. To select an option, put a slash (/) or S in the Selcolumn.

PRO/JCL Format Options Row 1 to 7 of 7Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------

Date Format MM/DD/YYYY MM/DD/YYYY MM followedFlagpage Y Y Y or NHeadings Y Y Y or NPage Length 60 60 an unsignedReport Footing Y Y Y or NReport Width 132 132 an unsignedUppercase Only N N Y or N

Format Options panel

CommandD(Delete) Use Delete to remove a value for a keyword option, so that the Default value for the option takes effect.

Date Format

This option specifies the format of the date on PRO/JCL reports.

Allowable Values Default

MM Two digit month.DD Two digit day.YY Two digit year.YYYY Four digit year.

Formatted as follows: MM/DD/YYYY, DD/MM/YYYY, YYYY/MM/DD, MM/DD/YY,DD/MM/YY, or YY/MM/DD

MM/DD/YYYY

Date Format allowable values

Choose a different format if your users do not use the default (United States) date format.

Flagpage

This option specifies whether PRO/JCL prints a title page before each report.

Allowable Values Default

Flagpage allowable values

168

ASG-PRO/JCL Reference Guide

Page 176: ASG-PRO/JCL Reference Guide

Y Print a title page

N Do not print a title page.

Y

Choose N if you do not need or want a title page included with each report.

Headings

This option determines whether or not PRO/JCL includes a printed heading on reports.

Allowable Values Default

Y Print headings.

N Do not print headings.

Y

Headings allowable values

Page Length

This option specifies the page length in number of lines for reports produced by PRO/JCL.

Allowable Values Default

Specify a numeric value 24 to 80. 60

Page Length allowable values

You might want to choose a different page lengths for different paper sizes.

Report Footing

This option determines whether or not PRO/JCL includes a footing on each page of reports.

Allowable Values Default

Y Include a footing.

N Exclude footing.

Y

Report Footing allowable values

Report Width

This option determines the width of the reports produced by PRO/JCL.

Allowable Values Default

Specify a numeric value up to 132. 132

Report Width allowable values

Uppercase Only

This option specifies whether to print the reports in all uppercase

169

Format Options

Page 177: ASG-PRO/JCL Reference Guide

Allowable Values Default

Y Force all uppercase printing.

N Print in mixed case.

N

Uppercase Only allowable values

JCL Listing Report OptionsUse these options to change the appearance of the Structured JCL Listing (SJL) report.

JCL Listing Report PanelUse this panel to modify the contents of the Structured JCL Listing (SJL). To select an option, put a slash (/) in the Selcolumn.

PRO/JCL JCL Listing Report Row 1 to 11 of 11Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMINO1 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------

JCL Printing ALL ALL ALL, EO, NOPCntl Card Print Y Y Y or NError Level 1 1 ALL, E, EW,Print Accounting Info Y Y Y or NPrint Changed JOBs Y Y Y or NPrint Password N N Y or NPrint PDS Members N N Y or NPrint Scheduler Stmts Y Y Y or N

Error Summary BYRUN BYRUN BYJOB, BYRUNError Summary Retention 4 4 within 0 toError Statistics Y Y Y or NI/O Statistics Y Y Y or NPrint OPE Summary Y Y Y or N

JCL Listing Report panel

CommandD(Delete) Removes a value for a keyword option to make the Default value active.

JCL Printing

This option determines whether the JCL section is printed, and the content of the JCL section.

Allowable Values Default

ALL Causes all the JCL, PROCS and errors to print out in the report.

EO (Errors Only) JCL and messages will print out for those jobs in which PRO/JCL has detectederrors.

ALL

JCL Printing allowable values

170

ASG-PRO/JCL Reference Guide

Page 178: ASG-PRO/JCL Reference Guide

NOPROCS Prevent PROCs from printing. PRO/JCL still validates PROCS.

NONE Excludes the JCL section of the SJL from printing.

To improve performance for large batch runs, ASG recommends specifying the EO option ratherthan the ALL option. By specifying the EO option, only the JCL and messages will be included for jobswhich PRO/JCL has detected errors [JCL for jobs without errors will not be included].

Cntl Card Print

This option determines whether or not PRO/JCL uses the specified values in the Control Card Printing Table.

Allowable Values Default

Y Turns on the values in the Control Card Printing Table.

N Turns off the values in the Control Card Printing Table.

Y

Cntl Card Print allowable values

This option interacts with the Control Card table. See Control Card Table later in this topic for moredetails.

For more information on Control Card DSNs settings, refer to the topics - Table Setting Panels and PRO/JCL SystemPanels.

Error Level

This option specifies to PRO/JCL the level of error to include in reports.

Allowable Values Default

ALL Print all levels of error messages.

E Print only the errors.

EW Print only the errors and warnings.

n Use a number between 0 and 20 to print only themessages of the specified level and higher.

1

Error Level allowable values

There are three types of error:

l A = Advisory (Informational)

l W=Warning

l E = Error

171

JCL Listing Report Options

Page 179: ASG-PRO/JCL Reference Guide

l To improve performance for large batch runs, ASG does not recommend specifying the ALL option.

l Only simulation messages can be suppressed. The severity level or suppression ofmessages numberedbelow 10000 cannot be changed. The severity level or suppression ofmessages numbered 10000 and abovecan be changed in theMessages Table.

Print Accounting Info

This option determines whether or not to print actual accounting data to the SJL or to substitute * (asterisks) in the SJL.

Allowable Values Default

Y Print actual accounting data.

N To print * (asterisks) in place of actual accounting data.

Y

Print Accounting allowable values

In some instances, you might want to choose N. For instance, for security purposes the user might not want theaccounting information printed on the report.

Print Changed JOBs

This option determines whether or not PRO/JCL prints JOBs that have changed.

Allowable Values Default

Y Print changed JOBs.

N Do not print jobs that changed, unless they have errors.

Y

Print Changed JOBs allowable values

Print Password

This option determines whether or not PRO/JCL prints the password data in the SJL, or if * (asterisks) are substituted.

Allowable Values Default

Y Print actual password data.

N Print * (asterisks) in place of actual password data.

N

Print Password allowable values

Print PDS Members

This option allows the user to cause PRO/JCL to treat all PDS members as control cards. This only applies to the user-written programs. Ten lines are displayed, unless an entry is specified in the Control Card Table indicating howmany linesto display.

172

ASG-PRO/JCL Reference Guide

Page 180: ASG-PRO/JCL Reference Guide

Allowable Values Default

Y Treat all PDS members as control cards.

N Do NOT treat all PDS members as control cards.

N

Print PDS Members allowable values

Print Scheduler Stmts

This option allows the user to include or exclude certain scheduler statements in the SJL or JJ outputs.

Allowable Values Default

Y Print all scheduler statements.

N Do not print all scheduler statements.

Y

Print Scheduler Stmts allowable values

For example, with SCHEDULER=CNLTM and this option set to N, if %%SET statements are coded in the JCL, PRO/JCL doesnot print them in the SJL nor in the JJ output. If the Control-M statements are coded in comment statements (i.e. //*%%SET), PRO/JCL processes them and includes them in its output.

For example, when validating this JCL (which includes two files FILE1 and FILE2):...

000100 //C654142S JOB (C654142,111)000200 //S1 EXEC PGM=IEFBR14000300 %%INCLIB USER01.CONTROLM.INCLIB %%INCMEM FILE1000400 //* %%INCLIB USER01.CONTROLM.INCLIB %%INCMEM FILE2

...

(FILE1)001100 //* FIRST LINE IN USER01.CONTROLM.INCLIB(FILE1)001200 //* SECOND LINE IN USER01.CONTROLM.INCLIB(FILE1)001300 //C654142A EXEC PGM=IEFBR14

(FILE2)002100 //* FIRST LINE IN USER01.CONTROLM.INCLIB(FILE2)002200 //* SECOND LINE IN USER01.CONTROLM.INCLIB(FILE2)002300 //C654142B EXEC PGM=IEFBR14002400 %%SET %%VAR1 = USER01002500 //* %%SET %%VAR2 = USER02

PRO/JCL produces this SJL:

Structured JCL Listing - JCL Section============================================================================PRO/JCL Release Rnnn RTS Member: CNTLM System: Z18A Security Exit: ON============================================================================

//C654142S JOB (C654142,111)//S1 EXEC PGM=IEFBR14//* FIRST LINE IN USER01.CONTROLM.INCLIB(FILE1)//* SECOND LINE IN USER01.CONTROLM.INCLIB(FILE1)--- END OF STEP ---//C654142A EXEC PGM=IEFBR14//* %%INCLIB USER01.CONTROLM.INCLIB %%INCMEM FILE2//* FIRST LINE IN USER01.CONTROLM.INCLIB(FILE2)//* SECOND LINE IN USER01.CONTROLM.INCLIB(FILE2)--- END OF STEP ---//C654142B EXEC PGM=IEFBR14//* %%SET %%VAR2 = USER02--- END OF STEP ---

173

JCL Listing Report Options

Page 181: ASG-PRO/JCL Reference Guide

--- END OF JOB ---

The SJL includes two files FILE1 and FILE2:

l The SJL contains all three lines from FILE1, printed in without modification. Notice that because the%%INCLUDE line (line 300 in the JOB) is a CONTROL-M line it is not present in the SJL.

l FILE2 is also printed, but after the //* %% INCLUDE line (line 400 in the JOB). Because this is a JCL comment,PRO/JCL includes it in the SJL.

l PRO/JCL treats the %%SET lines of FILE2 differently:

o line 2400 in FILE2 is a CONTROL-M line and is not included in the SJLo line 2500 in FILE2 is a JCL comment and is included in the SJL.

Error Summary

Use this option to specify how often error summaries should occur, the location of the error summary in the SJL, andwhether to exclude the summary from the SJL.

Allowable Values Default

BYJOB Prints the errors at the end of each job.

BYRUN Prints errors at the end of the entire SJL report.

BYRUNFIRST Prints an Error Summary for the entire run before the SJL report.

BYJOBFIRST Prints Error Summary for each JOB before the SJL report.

ONLY Prints only the Error Summary and Statistics, not the SJL, even if errors exist.

NONE Excludes the Error Summary section of the SJL.

BYRUN

Error Summary allowable values

The Error Summary option specifies to PRO/JCL how often error summaries should occur and the location of the errorsummary in the SJL, and whether to exclude the error summary in the SJL.

l To improve performance for large batch runs, ASG recommends the specification of the BYJOB option overthe BYRUN option. By specifying the BYJOB option, the Error Summary will be printed after processing eachjob (eliminating the need to store this information until the end of the run).

l All of the Error Summary option values except NONE, are ignored by JJ.

Error Summary Retention

This option specifies the number of days PRO/JCL should retain the Error Summary.

174

ASG-PRO/JCL Reference Guide

Page 182: ASG-PRO/JCL Reference Guide

Allowable Values Default

A one or two digit value from 1 to 99. 7

Error Summary Retention allowable values

Error Statistics

This option specifies whether to include the Error Statistics section in the SJL.

Allowable Values Default

Y print the Error Statistics section in the SJL.

N do not print the Error Statistics section in the SJL.

Y

Error Statistics allowable values

I/O Statistics

This option specifies whether to include the I/O Statistics in the SJL.

Allowable Values Default

Y print the I/O Statistics section in the SJL.

N do not print the I/O Statistics section in the SJL.

Y

I/O Statistics allowable values

Print OPE Summary

Use this option to specify whether the Options In Effect Summary is to be printed.

Allowable Values Default

Y print the Options in Effect Summary in the SJL.

N do not print the Options in Effect Summary in the SJL.

Y

Print OPE Summary allowable values

In Batch, the OPE Summary will always be printed (the N value for this option will be ignored).

RTS Report PanelUse this panel to modify the contents of the report that prints all the RTS Settings used by PRO/JCL. To select an option,put a slash (/) in the Sel column. This panel is used to set the contents of the Run-Time Settings Report.

175

RTS Report Panel

Page 183: ASG-PRO/JCL Reference Guide

PRO/JCL RTS Report Row 1 to 2 of 2Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------

Tables N N Y or NTrace N N Y or N

RTS Report panel

CommandD(Delete) Use Delete to remove a value for a keyword option, so that the Default value for the option takes effect.

Enabled TablesUse this panel to turn an option table on or off. For example, if your site allows dd exclusions, turn on DD Exclusion.

PRO/JCL Enabled Tables Row 1 to 19 of 19Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Sel Option RTS Value Default Allowable--- ------------------------- ----------------- ----------------- -------------

CA-Jobtrac Alt LOC DSNs ON ON ON or OFFContention Permitted For ON ON ON or OFFControl Card DSNs ON ON ON or OFFControl Card Prnt ON ON ON or OFFData set Prefer ON ON ON or OFFDB2 Group Attach ON ON ON or OFFDD Exclusion ON ON ON or OFFDevice Types ON ON ON or OFFDFSMShsm MCDS ON ON ON or OFFError Messages ON ON ON or OFFIMS ACB Datasets ON ON ON or OFFJesproc Concat ON ON ON or OFFLibrary Type ON ON ON or OFFPROC Exclusion ON ON ON or OFF

...

Enabled Tables panel

Table Setting PanelsTable Settings control how PRO/JCL processes JCL statements. Each Table Option associates two values. Typically, onefield takes a user-inputted string (the Key field, a value unique to each table) and the other (the Value field) takes achoice from a limited set or range of values (the Allowable Values field). In some instances, a user-inputted stringis required for both values.

Access Table Settings directly from the PRO/JCL Edit/View Run-Time Settings panel.

Sample Edit Option Popup

Use this popup to view or change the values for a table setting.

Use this popup by typing an S in the Sel column for the entry in the Table Settings panel.

176

ASG-PRO/JCL Reference Guide

Page 184: ASG-PRO/JCL Reference Guide

Table Setting Sample Popup

Command ===>

Press Enter to accept changes, or enter Cancel to reject changes.

Key . . . . . . ...... user-string hereValue . . . . . . .... EXCLUDEAllowable Values: INCLUDE or EXCLUDE

Sample Edit Table Option popup

Fields

Field Description

KeySupply the name of the option in this field (in Sample Edit Table Option popup, the Keyfield).

ValueSelect the value for this field from the Allowable Values field (the Value field in Sample EditTable Option popup).

Allowable Values This field lists the specific values or gives the range or the rules for an acceptable value forthe Value field.

Table Setting Sample Popup fields

Sample Add Option Popup

Use this popup to add an entry to an options table. Use this panel by typing Add on the command line in the table panel.This popup is representative of Add pop-ups for all table options; the field names displayed in this popup differsomewhat for each option

ADD Devices Entry

Command ===>

Press Enter to accept changes, or enter Cancel to reject changes.

Unit Name . . . . . . .Device Type . . . . . .Allowable Values: DASD or TAPE

Sample Add Table Value popup

Fields

Field Description

Unit Name(the Key field)

Supply the name of the option in this field (in Sample Add Table Value popup, use the UnitName field).

ADD Devices Entry fields

177

Table Setting Panels

Page 185: ASG-PRO/JCL Reference Guide

Field Description

Device Type(the Value field)

Select the value for this field from the Allowable Values field (in Sample Add Table Valuepopup, use the Device Type field).

Allowable Values This field lists the specific values, the range, or the rules for an acceptable value for Value.

Sample Repeat Option Popup

Use this popup to copy and add an entry to the options table.

Use this panel by typing an R in the Sel column for the entry in the table panel.

Repeat Devices Entry

Command ===>

Press Enter to accept changes, or enter Cancel to reject changes.

Unit Name . . . . . . . 3380Device Type . . . . . . DASDAllowable Values: DASD or TAPE

Sample Repeat Table Option popup

Fields

Field Description

Key FieldSupply the name of the option in this field (in Sample Repeat Table Option popup, use theUnit Name field).

ValueSelect the value for this field from the Allowable Values field (in Sample Repeat TableOption popup, put the value in the Device Type field).

Allowable Values This field lists the specific values, the range, or the rules for an acceptable value for Value.

Repeat Devices Entry fields

This popup is representative of Repeat pop-ups for all table options; the field names displayed inthis popup differ somewhat for each option.

Sample Delete Option Popup

Use this popup to remove an entry from an options table. Use this panel by typing a D in the Sel column for the entry inthe table panel.

178

ASG-PRO/JCL Reference Guide

Page 186: ASG-PRO/JCL Reference Guide

Delete Devices Entry

Command ===>

Press Enter to delete, or enter Cancel to end this request.

Devices entry to be deleted:Unit Name: DISKDevice Type: DASD

Sample Delete Table Option popup

This popup is representative of Delete popups for all table options; the field names displayed in thispopup differ somewhat for each option.

Table SettingsThis topic lists the tables available to PRO/JCL and describes the setting options for each table. These settings aredetermined by your product Administrator, and aremaintained in the DEFAULT RTS member.

Table List

Devices Table

PROC Exclude TableDD Exclude TableControl Card TableUtility Alias TableDataset Preference TableUser Utilities TableControl Card DSNs TableDFSMShsm MCDS TableIMS ACB Datasets TableMessages TableReturn Codes TableTape Out of Area Codes TableCA-Jobtrac TableJES2 - Jesprocs TableJES3 - Jesprocs TableLibrary Type TableContention Permitted DSNs TableDB2 Group Attach TableTrace Table

179

Table Settings

Page 187: ASG-PRO/JCL Reference Guide

Overriding Table Settings in the DEFAULT RTS Member

DEFAULT RTS member table entry settings can be overridden by specifying a user-created RTS member with non-defaultsettings. For more information about creating user RTS members, see the topic - Run-Time Settings in the SystemAdministrator documentation.

User-created RTS table setting entries work in combination with the DEFAULT RTS member table entries. When tableentries within a user-created RTS member are specified, the user-created settings override the Default RTS membersettings. If criteria within the user-created RTS table entries are not met, then PRO/JCL searches the DEFAULT RTSmember table entries.

For example, if a user-created RTS overrides a table entry in the DEFAULT RTS member, all of the remaining table entriesin the DEFAULT RTS member will be processed according to the Default settings. To override all of the DEFAULT RTSmember table entries, code a corresponding entry in the user-created RTS member.

When PRO/JCL displays a table from a user-defined RTS member, it displays all the values from thismember and the DEFAULT member. See figure - Sample RTS Table for an example of this combineddisplay.

PRO/JCL Devices Row 1 to 13 of 13Command ===> Scroll ===> CSR

RTS Mbr: MYRTS Owner: ASGUSR Desc:

Enter 'ADD' to add Devices

Use: S (Select), R (Repeat), D (Delete)

Sel Unit Name Device Type--- --------- -----------

MYTAPE TAPE**** Following Values are from the DEFAULT RTS Member ****DISK DASD

...

Sample RTS Table

Example 1This example uses values from a typical DEFAULT RTS member table and values from a user-created RTS member table todemonstrate how the DEFAULT RTS member table and a user-created RTS table work in combination.

180

ASG-PRO/JCL Reference Guide

Page 188: ASG-PRO/JCL Reference Guide

Scenario 1

Devices Row 1 to 1 of 1Command ===> Scroll ===> PAGE

RTS Mbr: EXAMPLE1 Owner: ASGUSR Desc:

Enter 'ADD' to add Devices

Use: S (Select), R (Repeat), D (Delete)

Sel Unit Name Device Type--- --------- -----------

DSSDA DASD**** Following Values are from the DEFAULT RTS Member ****PROD TAPESYSDA DASD

Sample User-Created RTS Table

Scenario 1 summary:

l When UNIT=DSSDA is specified in the JCL, a unit type of DASD will be used.

l When UNIT=PROD is specified in the JCL, a unit type of TAPE will be used. This value is obtained from theDEFAULT RTS member because there is no value for UNIT specified in the user-created RTS.

l When UNIT=SYSDA is specified in the JCL, a unit type of DASD will be used, as specified in the DEFAULT RTSmember.

Scenario 2

Devices Row 1 to 1 of 1Command ===> Scroll ===> PAGE

RTS Mbr: EXAMPLE1 Owner: ASGUSR Desc:

Enter 'ADD' to add Devices

Use: S (Select), R (Repeat), D (Delete)

Sel Unit Name Device Type--- --------- -----------

DSSDA TAPEPROD DASD**** Following Values are from the DEFAULT RTS Member ****PROD TAPESYSDA DASD

Sample User-Created RTS Table

Scenario 2 summary:

l When UNIT=DSSDA is specified in the JCL, a unit type of TAPE will be used.

l When UNIT=PROD is specified in the JCL, a unit type of DASD will be used.

l When UNIT=SYSDA is specified in the JCL, a unit type of DASD will be used, as specified in the DEFAULT RTSmember.

181

Table Settings

Page 189: ASG-PRO/JCL Reference Guide

Example 2This example uses SORT utility program control cards to show how the DEFAULT RTS Messages table and a user-createdRTS Messages table work in combination to suppress or reassign the severity of error messages. The figure - Sample User-Created RTS Messages Table shows a sample RTS Messages table that contains an entry to suppress PRO/JCL messageDSS11051when issued within the simulation of program SORT.

Scenario 1

MessagesCommand ===> Scroll ===> CSR

RTS Mbr: EXAMPLE2 Owner: ASGUSR Desc:

Enter 'ADD' to add Message Numbers.

Use: S (Select), R (Repeat), D (Delete)

Sel Number Level.Program.DDname.&1.&2.&3.&4.Reason--- ------ ------------------------------------------------------------------

11051 4.SORT..ABCODE**** Following Values are from the DEFAULT RTS Member ****

11051 SUPPRESS...SORT91308 3.MYPROG.MYDD.DDNAME

Sample User-Created RTS Messages Table

The above figure shows a sample user-created RTS Messages table that contains an entry to set the severity of PRO/JCLmessage DSS11051 to level 4 when simulating program SORT and the text “ABCODE” appears in themessage. In this case,ABCODE is the name of a keyword parameter.

Scenario 1 summary:

l When simulating program SORT, PRO/JCL message DSS11051will be suppressed unless the keyword parameterABCODE appears in themessage. If ABCODE appears in themessage, the user-created RTS table entry will takeprecedence over the DEFAULT RTS member table entry and message DSS11501will not be suppressed. Instead, itwill be assigned a severity level of 4.

l If any other text appears in themessage (for example, “AXCODE”), PRO/JCL message DSS11501will besuppressed by the DEFAULT RTS member table entry because AXCODE is not specified in the user-created RTSMessages table.

Scenario 2

MessagesCommand ===> Scroll ===> CSR

RTS Mbr: EXAMPLE2 Owner: ASGUSR Desc:

Enter 'ADD' to add Message Numbers.

Use: S (Select), R (Repeat), D (Delete)

Sel Number Level.Program.DDname.&1.&2.&3.&4.Reason--- ------ ------------------------------------------------------------------

11051 4.SORT..ABCODE11051 8.SORT

**** Following Values are from the DEFAULT RTS Member ****91308 3.MYPROG.MYDD.DDNAME

Sample User-Created RTS Messages Table

182

ASG-PRO/JCL Reference Guide

Page 190: ASG-PRO/JCL Reference Guide

The above figure shows a sample user-created RTS Messages table that contains an entry to set the severity of PRO/JCLmessage DSS11051 to level 4 when simulating program SORT and the text “ABCODE” appears in themessage. It alsocontains an entry to assign a severity level of 8 to all occurrences of PRO/JCL message DSS11501when simulatingprogram SORT and ABCODE does not appear in themessage.

Scenario 2 summary:

l When simulating program SORT, if ABCODE appears in themessage, the user-created RTS will take precedenceover the DEFAULT RTS member and PRO/JCL message DSS11501will not be suppressed. Instead, it will beassigned a severity level of 4.

l If ABCODE does not appear in themessage, the user-created RTS will still override the DEFAULT RTS member(because user-created RTS members are concatenated ahead of the DEFAULT RTS member) and PRO/JCLmessage DSS11051will appear with a severity level of 8.

Example 3This example shows how the DEFAULT RTS member table and a user-created RTS table work in combination to search forJES PROCS. Each scenario builds upon the entries in the DEFAULTmember, See figure - Sample User-Created RTS JesprocsTable, to illustrate the effect of how the DEFAULT RTS member and user-defined RTS members interact.

The figure - Sample User-Created RTS Jesprocs Table shows the RTS member Jesprocs table. If the JES PROCLIB statementspecifies DDname “PROC01”, PRO/JCL searches for a PROC in the following order: SYS1.PROCLIB, SYS1.TSOPROC, andCEE.SCEEPROC, until it locates the PROC or it searches all the datasets.

Scenario 1

PRO/JCL Jesprocs Row 1 to 2 of 2Command ===> Scroll ===> PAGE

RTS Mbr: EXAMPLE3 Owner: ASGUSR Desc:

Enter 'ADD' to add Jesprocs

Use: S (Select), R (Repeat), D (Delete)

Sel DDname.nn Data set--- --------- --------

PROC01.02 CSQ.SCSQPROC**** Following Values are from the DEFAULT RTS Member ****PROC01.01 SYS1.PROCLIBPROC01.02 SYS1.TSOPROCPROC01.03 CEE.SCEEPROC

Sample User-Created RTS Jesprocs Table

The above figure shows the user-created EXAMPLE3 RTS member Jesprocs table; it contains a single entry PRO/JCL usesto concatenate the CSQ.SCSQPROC dataset in place of PROC01.02 in the DEFAULT RTS member.

Scenario 1 summary:

l PRO/JCL searches the datasets for the PROC in this order:o SYS1.PROCLIB (from the DEFAULT RTS member; the EXAMPLE3 RTS member Jesprocs table (See figure -

Sample User-Created RTS Jesprocs Table) does not contain an entry for PROC01.01).o CSQ.SCSQPROC (from the EXAMPLE3 RTS member; the entry for PROC01.02 overrides the DEFAULT RTS

member Jesprocs table entry).

183

Table Settings

Page 191: ASG-PRO/JCL Reference Guide

o CEE.SCEEPROC (from the DEFAULT RTS member; the user-created table does not contain an entry forPROC01.03).

l PRO/JCL does not search dataset SYS1.TSOPROC.

Scenario 2

PRO/JCL Jesprocs Row 1 to 2 of 2Command ===> Scroll ===> PAGE

RTS Mbr: EXAMPLE3 Owner: ASGUSR Desc:

Enter 'ADD' to add Jesprocs

Use: S (Select), R (Repeat), D (Delete)

Sel DDname.nn Data set--- --------- --------

PROC01.02 CSQ.SCSQPROCPROC01.03 CSQ.SCSQPROC**** Following Values are from the DEFAULT RTS Member ****PROC01.01 SYS1.PROCLIBPROC01.02 SYS1.TSOPROCPROC01.03 CEE.SCEEPROC

Sample User-Created RTS Jesprocs Table

The above figure shows user-created EXAMPLE3 RTS member Jesprocs table that contains two entries for PROC01. Thepurpose of these two entries is to override the PROC01.02 and .03 entries in figure - Sample User-Created RTS JesprocsTable.

Scenario 2 summary:

l PRO/JCL searches two datasets (not three) for the PROC in the following order:o SYS1.PROCLIB (from the DEFAULTmember; the EXAMPLE3 RTS member Jesprocs table (See figure - Sample

User-Created RTS Jesprocs Table) does not contain an entry for PROC01.01).o CSQ.SCSQPROC (from the EXAMPLE3 RTS member; the user-created table entry for PROC01.02 overrides

the DEFAULT RTS member Jesprocs table entry for PROC01.02 and the entry here for PROC01.03 specifiesthe same dataset).

l PRO/JCL does not search CEE.SCEEPROC from the DEFAULT RTS member Jesprocs table because the PROC01.03entry in the EXAMPLE3 RTS member Jesprocs table overrides the value of the PROC01.03 entry in the DEFAULTRTS member Jesprocs table.

Devices Table

This table identifies the device unit names used at your site. Associate the local unit names with DASD or TAPE devicetypes. This information is needed for PRO/JCL to correctly locate datasets. Information entered in this table overrides oraugments information PRO/JCL obtains directly from your system.

PRO/JCL looks up which devices are defined on each system. The only devices that need to bedefined here are those which are NOT defined to MVS in the devices table. If you are unsure ofwhich devices are identified in MVS, contact your systems programmer or systems administrator.

184

ASG-PRO/JCL Reference Guide

Page 192: ASG-PRO/JCL Reference Guide

Devices Row 1 to 12 of 12Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Devices

Use: S (Select), R (Repeat), D (Delete)

Sel Unit Name Device Type--- --------- -----------

DSSDA DASDSYSDA DASDTAPE TAPETP6250 TAPEVIO DASD

Devices table

Columns

Column Description

Unit Name This is the unit parameter as coded in the JCL (UNIT=aaaaaa).

Device Type

DASD Choose this value for the Device Type if the Unit Name represents a collection ofDASD units.

TAPE Choose this value for the Device Type if the Unit Name represents a collection ofTAPE units.

Devices Table columns

PROC Exclude Table

This table excludes certain PROCs from processing. Because PRO/JCL includes all PROCs by default, the ProductAdministrator uses this panel to exclude PROCs globally.

PRO/JCL PROC Exclude Row 1 to 4 of 4Command ===> Scroll ===> PAGE

RTS Mbr: MYRTS Owner: ASGUSR Desc:

Enter 'ADD' to add PROC Exclude

Use: S (Select), R (Repeat), D (Delete)

Sel Proc Action--- ---- ------

PEXCLUDE EXCLUDEPPGL0010 EXCLUDE**** Following Values are from the DEFAULT RTS Member ****UCC11 EXCLUDE

PROC Exclude table

185

Table Settings

Page 193: ASG-PRO/JCL Reference Guide

Columns

Column Description

PROC PROC name to be excluded.

ActionExclude the selected PROC from processing consideration.

Include the selected PROC.

PROC Exclude Table columns

l If this table is empty, then by default PRO/JCL includes all PROCs.

l When a particular PROC is excluded, it is completely ignored and bypassed in all phases of processing andprinting, and will not be noted or included in the Structured JCL Listing.

l Masking characters: use * and % on the PROC.

l This example specifies all PROCs that begin with PR.

PR*

l This example specifies all PROCs that begin with PR, and have exactly 5 characters in the name:

PR%%%

DD Exclude Table

This table specifies a ddname for inclusion or exclusion from processing.

DD Exclude Row 1 to 1 of 1Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add DD Exclude

Use: S (Select), R (Repeat), D (Delete)

Sel DDname Action--- ------ ------

DDEXCLUD EXCLUDE

DD Exclude table

Columns

Column Description

DDname The ddname to be excluded or included.

DD Exclude Table columns

186

ASG-PRO/JCL Reference Guide

Page 194: ASG-PRO/JCL Reference Guide

Column Description

Action Use EXCLUDE or INCLUDE.

l Masking characters: use * and % on the DDname.

l This example specifies all DDnames that begin with SYS.

SYS*

l Only specify INCLUDE, if you need to override a DEFAULT specification of EXCLUDE.

DDnames Table

This table adds, deletes, and edits associations of programs with ddnames.

PRO/JCL generates errors for program steps that execute listed programs which do not have the associated ddnames orthe ddnames are not of the correct input/output (IO) type.

PRO/JCL DDnames Row 1 to 1 of 1Command ===> Scroll ===> PAGE

RTS Mbr: MYRTS Owner: ASGUSR Desc:

Enter 'ADD' to add DDnames

Use: S (Select), R (Repeat), D (Delete)

Sel Program.DDname IO Type--- -------------- -------

USERPGM.SYSPRINT OUTPUT**** Following Values are from the DEFAULT RTS Member ****MYPROG.DDNAME INPUT

DDnames table

Columns

Column Description

Program DDname The name of the program in JCL and the associated ddname separated by a period.

IO Type INPUT, OUTPUT or UPDATE. If the ddname is found but is not of the correct type, thenPRO/JCL issues an error.

DDnames Table columns

l Do notmake entries in this table for standard utilities for which PRO/JCL support is built in. These utilitiesinclude:

187

Table Settings

Page 195: ASG-PRO/JCL Reference Guide

ICEMAN IDCAMS IEBCOPY IEBGENER

IEHPROGM IKJEFT01 IEFBR14

l For programs with multiple required ddnames, a separate entry must bemade for each ddname.

l If a program/ddname combination is required and the ddname is missing in the JCL, PRO/JCL issues an errormessage.

l Masking characters: use the * and % on the Program and fully specify the ddname.

l This example specifies programs that begin with PR associated with their SYSIN DDs.

PR*.SYSIN

Control Card Table

PRO/JCL can limit the number of Control Card statements to be displayed in the Structured JCL Listing. Use this table toindicate to PRO/JCL howmany (at most) Control Card statements to print. Additionally, the Cntl Card Print RTS valuesetting must be set to Y.

PRO/JCL Control Card Row 1 to 4 of 4Command ===> Scroll ===> PAGE

RTS Mbr: MYRTS Owner: ASGUSR Desc:

Enter 'ADD' to add Control Card

Use: S (Select), R (Repeat), D (Delete)

Sel Program.DDname Number of lines--- -------------- ---------------

IEFBR14.SYSIN 20IEFBR14.SYSUT1 10PJGLCOMB.PJGLMAST 9PJGLCOMC.XYZ 6**** Following Values are from the DEFAULT RTS Member ****MYPROG.DDNAME 1234

Control Card Table

If a LIMIT value is not set, a default value of 10 is used.

LIMIT is an integer specifying themaximum number of control statements printed. To set the LIMIT value, select theControl Card option on the Edit/View Run-Time Settings panel and enter the value in the Number of lines column. If theoption is Y, the program and DD (Control Card settings) are checked to see if an entry exists. If the program and DD arenot coded, then the dataset name (Control Card DSNs settings) is checked to see if it was coded in the options. Thenumber of statements to print is specified with the program or dataset options. The control statements can be printed inthe SJL. The supported utility programs (IDCAMS, IEBCOPY etc.) control statements will always be printed.

188

ASG-PRO/JCL Reference Guide

Page 196: ASG-PRO/JCL Reference Guide

Columns

Column Description

Program DDnameProgram name (as it appears in the JCL) and the ddname used by program to read thecontrol statements separated by a period.

Number of lines Maximum number of lines to display for the program-ddname combination. This valueneeds to be between 0 and 999999 and between 1 to 6 digits in length.

Control Card Table columns

l Masking characters: use * and % on the Program and DDname portions of the key. This example specifiesprograms that begin with PG and any DDs that begin with SYS.

PG*.SYS*

l This table interacts with the Cntl Card Print option. See Cntl Card Print earlier in this topic for moreinformation.

Utility Alias Table

This table maps local aliases and synonyms of generic utilities like IEBGENER, IEBCOPY, and so on, so PRO/JCL treats thelocal names appropriately.

Utility Alias Row 1 to 8 of 8Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Utility Alias

Use: S (Select), R (Repeat), D (Delete)

Sel Local Utility Generic Utility--- ------------- ---------------

BETRGENR IEBGENERICEGENER IEBGENERIERRCO00 ICEMANIGHRCO00 ICEMANIRISPARM IDCAMS**** Following Values are from the DEFAULT RTS Member ****OLDGENER IEBGENERSORT ICEMANSORTGENR IEBGENER

Utility Alias table

189

Table Settings

Page 197: ASG-PRO/JCL Reference Guide

Columns

Column Description

Local The local name for a standard utility.

Generic

The standard name for the supported utility. The utility can be:

ADRSSU ICEGENER IEFBR14 IKJEFT1BCASORT ICEMAN IEHLIST PDSFASTDFHCRP IDCAMS IEHPROGM SORTDFSRRC00 IEBCOPY IKJEFT01 SYNCSORTFDRDSF IEBGENER IKJEFT1A

Utility Alias Table columns

l Masking characters: use * and % on the Local Utility name portion of the key. To map local COPY utilities toIEBCOPY, use the following mask in the Local Utility field:

COPY*

l This maps COPY01, COPYAA and so on to IEBCOPY.

PDSFAST Control Statement ValidationPRO/JCL has the ability to validate PDSFAST Control Statements. This provides a more comprehensive validation byprocessing the control statements associated with the PDSFAST utility program. If your site uses IEBCOPY as an alias forPDSFAST, the Utility Alias Table in the RTS member must be updated to correspond to this alias. In the Utility Alias Table,add IEBCOPY as the Local Utility and PDSFAST as the Generic Utility.

Dataset Preference Table

This table instructs PRO/JCL to search a different dataset before searching the corresponding one in the JCL.

Data Set Preference Row 1 to 1 of 1Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Data set Preference

Use: S (Select), R (Repeat), D (Delete)

Sel Data set Data set to Use first--- -------- ---------------------

YOURID.PROCLIB SYS1.PROCLIB

Dataset Preference table

190

ASG-PRO/JCL Reference Guide

Page 198: ASG-PRO/JCL Reference Guide

Columns

Column Description

Data set The dataset name coded in the JCL.

Data set to use first Indicate a dataset name or DDNAME. The indicated source will be searched before the onelisted in the dataset column.

Dataset Preference Table columns

When PRO/JCL encounters the named dataset, it will look in the associated one first.

User Utilities Table

This table simulates site-specific utility processing.

PRO/JCL User UtilitiesCommand ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add User Utilities

Use: S (Select), R (Repeat), D (Delete)

Sel User Utility Rexx Exec--- ------------ ---------

NATURAL NATUTIL

User Utility panel

Columns

Column Description

User Utility Specify the name of your utility as it will appear in the JCL.

Rexx Exec Indicates a REXX EXEC to be executed for site-specific utility processing each time PRO/JCLencounters the User Utility.

User Utilities Table columns

Control Card DSNs Table

This table displays control card statements in the SJL. ADD a dataset namewhere the control cards reside, then enterINCLUDE to display the control card statements. To temporarily disable control card printing for a dataset in the table(without removing the entry from the table), select the dataset and change INCLUDE to EXCLUDE.

191

Table Settings

Page 199: ASG-PRO/JCL Reference Guide

PRO/JCL Control Card DSNs Row 1 to 2 of 2Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Control Card DSNs

Use: S (Select), R (Repeat), D (Delete)

Sel Data set Action--- -------- ------

SYS1.PARMLIB INCLUDESYS2.PARMLIB INCLUDE

Control Card DSNs table

Columns

Column Description

Data set The fully qualified dataset name.

Action Use INCLUDE or EXCLUDE.

Control Card DSNs Table columns

l Wild card usage: use * and % on the Data set key.

l This example specifies datasets that haveMYCNTL.CARD as the first two nodes.

MYCNTL.CARD.*

DFSMShsm MCDS Table

This table defines one to four VSAM clusters in the DFSMShsm started task.

PRO/JCL DFSMShsm MCDSCommand ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add DFSMShsm MCDS

Use: S (Select), R (Repeat), D (Delete)

Sel Seq. no MCDS Name--- ------- ---------

DFSMShsmMCDS table

192

ASG-PRO/JCL Reference Guide

Page 200: ASG-PRO/JCL Reference Guide

Columns

Column Description

Seq. noA two-digit number from 1 - 4. The sequence number indicates the order in which thelibraries are referenced. This must be the same as in the started task JCL.

MCDS Name Indicate a Migration Control Dataset name. This is theMigration Control Dataset coded inthe DFSMShsm started task JCL.

DFSMShsmMCDS Table columns

IMS ACB Datasets Table

This table associates dataset names with an IMS ACB library.

IMS ACB Datasets Row 1 to 2 of 2Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add IMS ACB Datasets

Use: S (Select), R (Repeat), D (Delete)

Sel seq. no Data set--- ------- --------

01 DSSI.IMS01.ACBLIB02 DSSI.IMS02.ACBLIB

IMS ACB Datasets table

Columns

Column Description

seq. noA two-digit number from 01 - 99. The sequence number indicates the order in which thelibraries are referenced.

dataset A valid dataset name for this machine.

IMS ACB Datasets Table columns

Messages Table

Entries in theMessages table contain criteria that change how PRO/JCL handles messages numbered 10000 and aboveincluding user messages (numbered 90000 and above). From theMessages table, you can:

l Add, change, duplicate and delete criteria to suppress or change the severity of a message

l Record a reason for the alterations.

193

Table Settings

Page 201: ASG-PRO/JCL Reference Guide

MessagesCommand ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Message Numbers.

Use: S (Select), R (Repeat), D (Delete)

Sel Number Level.Program.DDname.&1.&2.&3.&4.Reason--- ------ ------------------------------------------------------------------

13032 211019 8.IEBCOPY..QTRBILLS99807 SUPPRESS.MYPROB.MYDDN

Messages table

Columns

Column Description

Number A specific message number.

Level.Program.DDname.&l.&2.&3.&4.Reason

A dotted string catenating the values from the fields of the Add,Edit or Repeat Message panels. See Fields for Add, Edit, andRepeat Messages panels for their descriptions. Consecutive dotsindicate a missing value. For example,

8.IEFBR14.DD1...STRING3..to override falseerror

&1, &2, and &4were not filled out on the Add, Edit or Repeatpanels.

Messages Table columns

l Only simulation and user messages can be suppressed or severity levels changed. Messages numberedbelow 10000 can neither be suppressed nor have severity changed.

l Somemessages cannot be suppressed without a replaceable parameter. PRO/JCL displays themessage“Specific text required” on the parameter field of Add, Edit, and Repeat Messages Entry panels and placesthe cursor where a value is required.

l See the topic -Managing Messages Table Entries in the System Administrator documentation for moreinformation about making entries in theMessages table.

l For a complete listing of PRO/JCL's error messages, their descriptions and severity codes see theMessagesand Codes documentation.

l In order to view a message numbered greater than 90000 (user messages), it must be predefined using theJMP message facility. See the topic - User Messages in the Using PRO/JCL with JMP for more informationabout defining user messages.

194

ASG-PRO/JCL Reference Guide

Page 202: ASG-PRO/JCL Reference Guide

Fields for Add, Edit, and Repeat Messages panelsThe fields in the Add, Repeat and Edit Messages Entry panels are criteria that PRO/JCL uses to decide whether tosuppress or alter the severity of a message. Themore fields with values, themore restrictive the criteria to suppress amessage. This means that when you enter a value in the Level or Suppress field only, you change the severity for orsuppress all instances of that message, unless a more specific entry is found based on the parameters.

Field Description

Message Number Specific error message number. Required.

Level orNew Severity

Severity level to be assigned to the specific error message number. Allowed values are0 - 20. Required only when changing severity. Not allowed with Y in the Suppress field.

SuppressY suppresses themessage. In this case, PRO/JCL inserts SUPPRESS into the Level fieldof the dotted notation on theMessages panel (See figure -Messages table). Use N forserverity changes only. Default is N.

Program Name Optional. Associated program name. Masking characters: use * and %.

DD Name Optional. Associated DD name. Masking Characters: use * and %.

&l - &4

PRO/JCL compares the values in these fields with the values substituted into messageparameters; if there is an exact match then themessage is suppressed. These valuescan be portions of the substituted string. Required when suppressing parameterizedmessages; at least one valuemust be entered. Optional for all messages whenchanging severity.

Reason Optional. Text describing the reason for modifying the severity and/or for suppressingthemessage.

Messages Table fields

Add Messages Entry PanelUse this panel to add a new entry to theMessages table. Type VIEW on the command line to see the placement ofparameters within themessage (See figure - Viewmessages panel displaying message text with variable). See Fields forAdd, Edit, and Repeat Messages panels.

195

Table Settings

Page 203: ASG-PRO/JCL Reference Guide

Add Messages EntryCommand ===>

Enter VIEW to view message.Press Enter to accept changes, or enter Cancel to reject changes.

Message Number . . . . 11019 (required)Level . . . . . . . . (0 - 20)Suppress . . . . . . . Y (Y/N)

Qualifications (optional):Program Name . . . . IEBCOPY (a full or masked PGM name)DD Name . . . . . . (a full or masked DD name)

Match text found within the message (enter up to 4 values):&1 . . . QTRBILLS&2 . . .&3 . . .&4 . . .

Reason . . . . . .

Adding Messages panel

View Message

To view a particular message

1. Type VIEW on the command line of the Add, Edit or Repeat Messages Entry panel.

2. Enter themessage number and press Enter. PRO/JCL displays themessage text for themessage number in apopup window. Use this information to:

l Verify the contents of themessage. PRO/JCL will not allow viewing ofmessages numbered less than10000.

l Identify parameters within a message.

11019

Member '&1' was selected but was not found in any input data set.

Press Enter or End to continue.

Viewmessages panel displaying message text with variable

Edit Messages Entry PanelUse this panel to edit messages. See Fields for Add, Edit, and Repeat Messages panels.

196

ASG-PRO/JCL Reference Guide

Page 204: ASG-PRO/JCL Reference Guide

Edit Messages EntryCommand ===>

Enter VIEW to view message.Press Enter to accept changes, or enter Cancel to reject changes.

Message Number . . . . 20027 (required)New Severity . . . . . 8 (0 - 20)Suppress . . . . . . . (Y/N)

Qualifications (optional):Program Name . . . . IEBCOPY (a full or masked PGM name)DD Name . . . . . . (a full or masked DD name)

Match text found within the message (enter up to 4 values):&1 . . .&2 . . .&3 . . .&4 . . .

Reason . . . . . .

Edit Messages panel

Repeat Messages Entry PanelUse this panel to duplicatemessages. See Fields for Add, Edit, and Repeat Messages panels.

Repeat Messages EntryCommand ===>

Enter VIEW to view message.Press Enter to accept changes, or enter Cancel to reject changes.

Message Number . . . . 20027 (required)New Severity . . . . . (0 - 20)Suppress . . . . . . . Y (Y/N)

Qualifications (optional):Program Name . . . . IEBCOPY (a full or masked PGM name)DD Name . . . . . . (a full or masked DD name)

Match text found within the message (enter up to 4 values):&1 . . . QTRBILLS&2 . . .&3 . . .&4 . . .

Reason . . . . . .

Repeat Messages panel

Delete Messages PanelUse this panel to confirm the deletion ofmessages.

Delete

Command ===> Scroll ===> CSR

Press Enter to delete, or enter Cancel to end this request.Messages entry to be deleted:93032 2

Delete Messages panel

197

Table Settings

Page 205: ASG-PRO/JCL Reference Guide

CA-Jobtrac Table

This table identifies specifies the library or dataset containing the PRODDATEmember for the location specified in theinput statement or the scheduler options panel.

PRO/JCL CA-JobtracCommand ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add CA-JobtracUse: S (Select), R (Repeat), D (Delete)

Sel Loc. Nr Data set--- ------- --------

001 DSSI.USER001.DATELIB

Jobtrac table

Columns

Column Description

Loc. Nr A CA-Jobtrac location number 1-254.

Data set The dataset in which the PRODDATEmember for that location resides.

CA-Jobtrac Table columns

If the user enters:001 DSSI.USER001.DATELIB

in the DATELIB table, and specifies location 001 in the CA-Jobtrac popup, then PRO/JCL looks in the PRODDATEmemberof DSSI.USER001.DATELIB to resolve any ADI records found in the JCL being scanned.

If no entry for the location is specified, the default PRODDATEmember in the dataset specified in the CA-JobtracVariables Run-time Settings will be used.

Return Codes Table

This table associates return codes or ABEND codes from JCL simulation with a particularJOBNAME.JOBSTEPNAME.PROCSTEPNAME. When this combination is encountered, PRO/JCL simulates completion ofthe step with the indicated return or ABEND code, affecting dataset disposition and subsequent condition code or “IF”statement testing.

198

ASG-PRO/JCL Reference Guide

Page 206: ASG-PRO/JCL Reference Guide

Return Codes Row 1 to 9 of 9Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Return Codes

Use: S (Select), R (Repeat), D (Delete)

Sel Jobname.Jobstepname.Procstepname Return or Abend Code--- -------------------------------- --------------------

..US1 S213

..US2 U4083

..US3 8

.JUS4.US6 20PPR0134..US7 S213PPR0134.JUS5.US8 U4095

Return Codes table

Columns

Column Description

Jobname.Jobstepname.ProcstepnameThe name of a particular PROC step in a PROC that is executed by aJOB step in a particular job.

Return or Abend Code The code PRO/JCL uses when simulating the execution of the step.

Return Codes Table columns

l Masking characters: use * and % on the Jobname, Jobstepname and the Procstepname portions of the key.

l This example specifies all steps of all PROCs called by jobs that begin with PPR.

PPR*.*.*

Tape Out of Area Codes Table

PRO/JCL can access the tapemanagement system catalog to obtain information about tape datasets to verify thevolume serial number coded in the JCL or from the system catalog. This table identifies classifies Tape Out Of Area Codesas on-site.

PRO/JCL PRO/JCL Tape Out of Area CodesCommand ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Tape Out of Area Codes

Use: S (Select), R (Repeat), D (Delete)

Sel Tape Out Of Area Code Action--- --------------------- ------

MYTAPECODE EXCLUDE

Tape Out Of Area Codes table

199

Table Settings

Page 207: ASG-PRO/JCL Reference Guide

Columns

Column Description

Tape Out Of AreaCode

The code PRO/JCL uses when simulating Tape Out of Area Codes.

Action

INCLUDE Use INCLUDE to cause the listed code to be treated as an off-site code. For anycode not listed in this table, INCLUDE is the default behavior.

EXCLUDE Use EXCLUDE to cause the listed code to be treated as an on-site code.

Tape Out Of Area Codes Table columns

See Tape Management Interfaces for details about PRO/JCL's tape management interfaces.

JES2 - Jesprocs Table

This table points to the JES PROC libraries. The Use JES2 PROCLIBS Defs setting concatenates the JES2 proclibs to the endof this list. see the topic - Library Search Order for PROCs and INCLUDEs in the User documentation for more aboutPRO/JCL's proclib search order.

PRO/JCL Jesprocs Row 1 to 2 of 2Command ===> Scroll ===> PAGE

RTS Mbr: MYRTS Owner: ASGUSR Desc:

Enter 'ADD' to add JesprocsUse: S (Select), R (Repeat), D (Delete)

Sel DDname.nn Data set--- --------- --------

PROC00.01 SYS1.PROCLIBPROC01.01 SYS1.PROCLIB**** Following Values are from the DEFAULT RTS Member ****PROC00.01 SYS1.PROCLIB

Jesprocs table

Columns

Column Description

DDname A ddname used in the JES PROC that points to the dataset.

.nnA required, user-specified, two-digit qualifier attached to the ddnamewhen specifying theentry. Use this to concatenate different datasets to the same ddname.

Dataset The dataset that should be pointed to by the ddname in the JES PROC.

Jesprocs Table columns

200

ASG-PRO/JCL Reference Guide

Page 208: ASG-PRO/JCL Reference Guide

l For more information about the PROC search order, see the topic - Library Search Order for PROCs andINCLUDEs in the User documentation.

l For a detailed example of setting up the JESPROCS table see Example 3.

l PRO/JCL searches an alternate DDName (other than PROC00) if a JES parameter was coded in the JCL beingscanned. For instance:/*JOBPARM P=PROC01

l The entry in the table, PROC00.01 SYS1.PROCLIB is the ddname that specifies the default library where theJES2 procs are kept.

l Every entry must have the nn qualifier, even if there is only one entry for each ddname.

JES3 - Jesprocs Table

This table points to the JES PROC.

PRO/JCL Jesprocs Row 1 to 1 of 1Command ===> Scroll ===> PAGE

RTS Mbr: MYRTS Owner: ASGUSR Desc:

Enter 'ADD' to add Jesprocs

Use: S (Select), R (Repeat), D (Delete)

Sel DDname.nn Data set--- --------- --------

IATPLBST.01 SYS1.PROCLIB**** Following Values are from the DEFAULT RTS Member ****PROC00.01 SYS1.PROCLIB

Jesprocs table

Columns

Column Description

DDname A ddname used in the JES PROC that points to the dataset.

.nnA required, user-specified, two-digit qualifier the user attaches to the ddnamewhenspecifying the entry. Use this to concatenate different datasets to the same ddname.

Data set The dataset that should be pointed to by the ddname in the JES PROC.

Jesprocs Table columns

l For more information about the PROC search order, see the topic - Library Search Order for PROCs andINCLUDEs in the User documentation. For a detailed example of setting up the JESPROCS table see Example3.

201

Table Settings

Page 209: ASG-PRO/JCL Reference Guide

l PRO/JCL searches an alternate DDName (other than PROC00) only if a JES parameter was coded in the JCLbeing scanned. For instance,//*MAIN PROC=XX

l The entry in the table, IATPLBST.01 SYS1.PROCLIB, is the ddname that specifies the default library where theJES3 procs are kept.

l Every entry must have the nn qualifier, even if there is only one entry for each ddname.

Library Type Table

This table tells PRO/JCL if a dataset is a Librarian or Panvalet dataset.

PRO/JCL Library TypeCommand ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Library Type

Use: S (Select), R (Repeat), D (Delete)

Sel Library Name Library Type--- ------------ ------------

ASGUSR.LIBR LIBRARIAN

Library Type Table

Columns

Column Description

Library Name The name of the library to be defined.

Library Type The type of the library, either Librarian or Panvalet.

Library Type Table columns

Contention Permitted DSNs Table

If a component library is allocated to another process, it will be skipped during PRO/JCL validation. This means that theinformation on the component cannot be expanded or validated. This table tells PRO/JCL which datasets are critical toyour processing and to wait for shared access rather than treat the dataset as inaccessible.

202

ASG-PRO/JCL Reference Guide

Page 210: ASG-PRO/JCL Reference Guide

PRO/JCL PRO/JCL Contention Permitted DSNs Row 1 to 2 of 2Command ===> Scroll ===> PAGE

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add Contention Permitted Data Sets

Use: S (Select), R (Repeat), D (Delete)

Sel Data Set Name Action--- ------------- ------

ASGUSR.*.LOAD* INCLUDEASGUSR.MY.LOAD2A EXCLUDE

Contention Permitted Table

Columns

Column Description

Data Set Name The dataset name or mask to be included in or excluded from the list of critical datasets.

Action INCLUDE is used to define the datasets upon which PRO/JCL waits for shared access beforecompleting processing.

Contention Permitted DSNs Table columns

EXCLUDE tells PRO/JCL to skip the dataset if it is inaccessible. Possible reason for using EXCLUDE would be to skip adataset that would otherwise be included by a mask, or to temporarily remove a dataset from the included list withouthaving to delete the entry.

Masking characters: use * and %.

DB2 Group Attach Table

This table associates a DB2 subsystem namewith a DB2 Group Attachment Name. PRO/JCL will check for an active“associated” subsystem when a group attachment name is specified.

PRO/JCL DB2 Group Attach Row 1 to 3 of 3Command ===> Scroll ===> CSR

RTS Mbr: DEFAULT Owner: ADMIN01 Desc:

Enter 'ADD' to add DB2 Group Attach

Use: S (Select), R (Repeat), D (Delete)

Sel Group Attach Name.nn Subsystem Name--- -------------------- --------------

DB20.01 DB2ADB20.02 DB2BDB20.03 DB2C

DB2 Group Attach table

203

Table Settings

Page 211: ASG-PRO/JCL Reference Guide

Columns

Column Description

Group Attach Name The name of a DB2 Group Attachment Name.

.nnA one or two digit qualifier the user appends to the Group Attachment Namewhenassociating more than one DB2 Subsystem namewith the same Group Attachment Name.

Subsystem Name ADB2 Subsystem name associated with the Group Attachment Name.

DB2 Group Attach Table columns

This is a site-specific setting. See your DB2 Administrator for further information.

Trace Table

ASG Customer Support will direct you in using traces.

PRO/JCL Trace 1Command ===> Scroll ===> PAGE

RTS Mbr: RTS01 Owner: ASGUSR Desc:

Enter 'ADD' to add Trace

Use: S (Select), R (Repeat), D (Delete)

Sel Name Setting--- ---- -------

Trace table

204

ASG-PRO/JCL Reference Guide

Page 212: ASG-PRO/JCL Reference Guide

Scheduler InterfacesTo validate a set of jobs accurately, it is sometimes desirable to process the jobs in run-time order. ASG providesinterfaces between PRO/JCL and many schedulers.

Generally, use a PRO/JCL interface to a given scheduler in one of two ways: validating jobs singly and validating jobs aspart of a schedule (in run-time order). These interfaces can validate jobs either way:

n ASG-ZEKE and OASIS

n Workload Scheduler

n CA-Jobtrac

n CA-Driver Interface (Batch only) to CA-7

n CA-7

n CONTROL-M

n ESP Scheduler Interface

n TWS (OPC) - Interface

n TWS (OPC) Tracker Support

ASG-ZEKE and OASISThe ASG-ZEKE interface substitutes appropriate values into JCL containing ZEKE symbolic parameters.

To establish the interface

1. Make the ZEKE & OASIS load libraries available to the started task, PR1PROC, via STEPLIB, link list, etc.

2. Specify Zeke Subsystem in the Run-Time Settings.

PRO/JCL Interfaces Row 35 to 40 of 40Command ===> Scroll ===> PAGE

RTS Mbr: BOBZ Owner: USER01 Desc: User RTS member

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- ------------

TWS Default Operation No within 1 toTWS Default WorkStation an alphabetiTWS Terminate EQQYCOM Y or NVTOC Access Y Y or NZara Subsystem ZARA an alphabetiZeke Subsystem SSSI an alphabeti

Activating the ZEKE interface from the PRO/JCL Validation panel

3. To enable OASIS processing, specify the OASIS Subsystem.

205

Scheduler Interfaces

Page 213: ASG-PRO/JCL Reference Guide

PRO/JCL Interfaces Row 22 to 40 of 40Command ===> Scroll ===> CSR

RTS Mbr: BOBZ Owner: USER02 Desc: User RTS member

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- ------------

JES Exit Parm Anything orJES Submit Exit Member nameOASIS Delimiter '$(' a quoted strOASIS Subsystem OASI an alphabetiPanexec N Y or N

Activating the ZEKE interface from the PRO/JCL Validation panel

To use a delimiter other than the OASIS default of $(, specify it in the OASIS Delimitersetting.

4. From the JJ Edit Macro Settings (use JJ OPT) or PRO/JCL Validation panel, choose Settings from the action bar.PRO/JCL displays the Settings pull-down menu.

5. Select Scheduler from the Settings pull-down menu.

2 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

Selecting Scheduler from Settings pull-down menu

6. Press Enter. PRO/JCL displays the Scheduler popup.

206

ASG-PRO/JCL Reference Guide

Page 214: ASG-PRO/JCL Reference Guide

File Settings------------------------------------------------------------------------------

PRO/JCL ValidationCommand ===>

F Foreground Execution RTS Member . . DEFAULT ( * for list).--------------------------------- Scheduler ---------------------------------.| || Command ===> || || Press Enter or End to save changes and return. || Enter CANCEL to discard changes and return. || || Active scheduler: NO SCHED || || Select a scheduler || 5 1. BETA42 || 2. CA7 || 3. CNTLM || 4. CA-Jobtrac || 5. ZEKE || 6. TWS || 7. ESP || 8. NO SCHEDULER |'-----------------------------------------------------------------------------'

Activating the ZEKE interface from the PRO/JCL Validation panel

7. Turn on the ZEKE interface by typing the number of the ZEKE option from the Scheduler popup.

8. If OASIS processing is enabled (see Step 4), PRO/JCL displays the OASIS Context popup. Fill in the fields in theOASIS Context Items for ZEKE Scheduler popup.

OASIS Context Items for ZEKE Scheduler

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Enter the following values for OASIS Context Items:

Job Name . . . . Schedule Date . . ( YYYYDDD )

Netregid . . . . Run Date . . . . . ( YYYYDDD )

Group ID . . . . Application ID . .

User ID . . . . ASGUSR Event Number . . .

System Name . . Version Number . .

OASIS Context Items for ZEKE Scheduler panel

If an OASIS function calls an EXEC, it will actually be done. This is not a simulation.

207

ASG-ZEKE and OASIS

Page 215: ASG-PRO/JCL Reference Guide

Foreground Validation with the ZEKE Interface

To access ASG-ZEKE support from the JJ Edit macro or PRO/JCL panels

1. Follow the steps in To establish the interface.

2. Use the Validation panel or the JJ Edit macro normally.

Validate a Single Member in Batch Mode

To validate one member in batch

1. Make a copy of the PROJCL member from the SPJMSAMP library.

2. Tailor the JOB statement to local standards (1 in SPJMSAMP member PROJCL ).

3. In the SET statement, verify that ---HLQ--- is set to the actual high-level qualifiers for the PRO/JCL INSTALLlibrary (2 in SPJMSAMP member PROJCL ).

4. Replace your.jcl.library and memberwith the dataset and member you want PRO/JCL to validate (3 inSPJMSAMP member PROJCL ).

5. Insert the scheduler parameter as shown (4 in SPJMSAMP member PROJCL ).

1 //ASGUSRQQ JOB (ACCT),TEST,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* SPJMSAMP MEMBER PROJCL//********************************************************************

2 // SET HLQ='---HLQ---'// JCLLIB ORDER=&HLQ..SPJMINST//********************************************************************//* EXECUTE PRO/JCL//********************************************************************//STEP1 EXEC PR1PROC//********************************************************************//* SPECIFY INPUT LIBRARY HERE//********************************************************************//SYSIN DD *

3 %% INPUT DSNAME=YOUR.JCL.LIBRARY,SELECT=MEMBER,%% REPORTS=SJL,REPORTSTYLE=PAPER,

4 %% SCHEDULER=ZEKE=(JOBNAME=xxx,NETREGID=xxx,GROUPID=xxx)/*//********************************************************************//*//* NOTE: IF YOU NEED YOUR SYSIN TO COME FROM OTHER THAN INSTREAM//* DATA, AND TO INCLUDE INSTREAM DATA AS WELL, PLEASE BE//* SURE TO INCLUDE NULL INSTREAM DATA FIRST, BEFORE POINTING//* TO THE NON-INSTREAM SOURCE. AN EXAMPLE FOLLOWS://*//* THIS WILL NOT WORK://* //SYSIN DD DSN=XXX(MEM),DISP=SHR//* // DD *//*//* THIS WILL WORK INSTEAD, AND ACCOMPLISHES THE SAME THING://* //SYSIN DD *//* %%*//* // DD DSN=XXX(MEM),DISP=SHR//* // DD *//*//********************************************************************

SPJMSAMP member PROJCL

208

ASG-PRO/JCL Reference Guide

Page 216: ASG-PRO/JCL Reference Guide

Batch Mode Using ZEKE to Validate an Entire Schedule

To validate a schedule

n Use JCL similar to the ZEKESCHmember of the SPJMSAMP library. Follow instructions within themember tocustomize it for your purposes.

Use the ZEKESCH member to use the compiled load module; use ZEKESHD2 to use the REXX execfrom the EXEC library. The advantage to using the latter is that you can customize it for specialprocessing, whereas the former is used as-is.

Batch Mode Using ZEKE with OASIS to Validate an Entire Schedule

To validate a schedule

n Use JCL similar to the ZEKEOASI member of the SPJMSAMP library to validate jobs using OASIS variables. Followinstructions within themember to customize it for your purposes.

Workload SchedulerPRO/JCL validates JCL members that contain ASG-Workload Scheduler (formerly known as BETA42, herein calledWorkload Scheduler) variables. PRO/JCL supplies JCL jobs which validate a single job and an entire schedule.

Modify the Started Task and PR1PROC

To validate JCL in a Workload Scheduler schedule

n Change these items in theWorkload Scheduler section of the started task JCL and PR1PROC (see figure -PR1PROC -- a portion of the procedure):

a. Insert three DD statements into the PR1PROC before the PEND statement (as shown at 1 inPR1PROC).

b. In the first of these DDs, change the string your.BETA42.SCHJCDB to the dataset name for theWorkload Scheduler database (see 2).

c. If theWorkload Scheduler LOADLIB is not in the LINKLIST, add it at 3.

The Workload Scheduler LOADLIB is your site-specific LOADLIB.

209

Workload Scheduler

Page 217: ASG-PRO/JCL Reference Guide

//********************************************************************//* PR1PROC - PROC//*//* MEMBER NAME : PR1PROC (BUILT FROM SKELETON: D0SIIJ10)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************//PR1PROC PROC HLQ=DSSI.Snnn.TAPE,// DB2EXIT=DSN610.SDSNEXIT,// DB2LOAD=DSN610.SDSNLOAD,// CICSLOAD=CICSTS13.CICS.SDFHLOAD,// PARMPGM='DJ0CBNW',// PROD='-PROJCL',// PCHLQ=DSSI.Snnn.TAPE//*//PROJCL EXEC PGM=DJ0YINIB,REGION=0M,PARM='&PARMPGM /&PROD'

3 //STEPLIB DD DISP=SHR,DSN=DSSI.Snnn.TAPE.LOAD...

//CEEDUMP DD SYSOUT=* LE TRACE INFORMATION//ABNLIGNR DD DUMMY//* ADD BETA42 DDs HERE

1,2 //SCHJCDB DD DISP=SHR,DSN=YOUR.BETA42.SCHJCDB1 //INPUT DD DISP=(,PASS),DSN=&&INPUT,

// UNIT=VIO,SPACE=(CYL,(1,1)),// DCB=(RECFM=FB,LRECL=80,BLKSIZE=6160)

1 //OUTPUT DD DISP=(,PASS),DSN=&&OUTPUT,// UNIT=VIO,SPACE=(CYL,(1,1)),// DCB=(RECFM=FB,LRECL=80,BLKSIZE=6160)//*//*UNCOMMENT JPCSD DD IF MORE SPACE IS NEEDED FOR CICS CSD PROCESSING.//*JPCSD DD DISP=(NEW,DELETE,DELETE),UNIT=SYSDA,SPACE=(TRK,(250,350))//*//*SYSUDUMP DD SYSOUT=* SYSTEM DUMP OUTPUT//*// PEND

PR1PROC -- a portion of the procedure

Individual Execution From the JJ Edit Macro or PRO/JCL Panels

To access Workload Scheduler support from the JJ Edit macro or PRO/JCL panels

1. Invoke PRO/JCL and choose Validation from the ASG-PRO/JCLMain Menu.

210

ASG-PRO/JCL Reference Guide

Page 218: ASG-PRO/JCL Reference Guide

File Settings--------------------------------------------------------------------------------

PRO/JCL ValidationCommand ===>

F Foreground Execution RTS Member . . DEFAULT ( * for list)B Background Execution E Edit Input LibraryV View Input Library

Input Library 'DSSI.SYS1.DEMOLIB'Member . . . . PJGL0020 Show Directory Y (Y/N)Exclude Member Show Directory N (Y/N)Type . . . . . PDS ( * for list)

Listname . . . . ( * for list)Processing Mode JOB ( * for list)First PROCLIBLib type . . . PDS ( * for list)

JMP Library. . . 'ASGUSR.SYS1.WORKLIBJMP Name . . . . JMPTEST4 Parm . .Reformat . . . . ON ( * for list) Overwrite Input Lib N (Y/N)Reformat Member. DEFAULT ( * for list)SJL Hardcopy . . N (Y/N) Keep SJL Data Set N (Y/N)

PRO/JCL Validation Panel

2. Select Scheduler from the Settings pull-down menu.

2 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

Selecting Scheduler from Settings pull-down menu

3. ChooseWorkload Scheduler from the Scheduler popup.

Scheduler

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: ZEKE

Select a scheduler1 1. Workload Scheduler

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Scheduler popup menu

211

Workload Scheduler

Page 219: ASG-PRO/JCL Reference Guide

4. Type the Taskname and the Run Date in the fields in the Scheduler Parms for Workload Scheduler popup.

Scheduler Parms for Workload Scheduler

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Taskname . . .

Run Date . . . ( MMDDYY )

Scheduler Parms for Workload Scheduler popup panel

5. Press Enter or Exit when finished with entries; PRO/JCL returns to the PRO/JCL Validation panel.

6. Enter the Input Library name and theMember name you want to validate. Fill in other fields as required.

7. Enter F on the command line and press Enter.

Executing in Batch Mode to Validate Only One Member

To validate one member in batch

1. Verify the JOB statement. See 1 in figure - SPJMSAMP member PROJCL.

2. In the SET statement, verify that ---HLQ--- is set to the actual high-level qualifiers for the PRO/JCL INSTALLlibrary See 2 in figure - SPJMSAMP member PROJCL.

3. Replace your.jcl.library and your memberwith the dataset and member you want PRO/JCL to validate.See 3 in figure - SPJMSAMP member PROJCL

4. Insert the scheduler parameter as shown. See 4 in figure - SPJMSAMP member PROJCL.

1 //ASGUSRQQ JOB (ACCT),TEST,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* SPJMSAMP MEMBER PROJCL//********************************************************************

2 // SET HLQ='---HLQ---'// JCLLIB ORDER=&HLQ..SPJMINST//********************************************************************//* EXECUTE PRO/JCL//********************************************************************//STEP1 EXEC PR1PROC//********************************************************************//* SPECIFY INPUT LIBRARY HERE//********************************************************************//SYSIN DD *

3 %% INPUT DSNAME=YOUR.JCL.LIBRARY,SELECT=YOUR MEMBER,%% REPORTS=SJL,REPORTSTYLE=PAPER,

4 %% SCHEDULER=BETA42=(TASKNAME=YOURTASKNAME,DATE=MMDDYY)

SPJMSAMP member PROJCL

Executing in Batch Mode to Validate an Entire Schedule

To execute batch mode on a schedule

n Make these changes to the SPJMSAMP member SCHDBT42:

212

ASG-PRO/JCL Reference Guide

Page 220: ASG-PRO/JCL Reference Guide

a. Insert a valid JOB statement (see 1 in figure - SCHDBT42 JCL ):

b. Type valid values for these variables (see 2 in figure - SCHDBT42 JCL ):// SET SCHJCDB=---BETA42.SCHJCDB---// SET BETA42LD=--BETA42.LOADLIB---

c. In STEP1, put the date for the scheduled jobs you want PRO/JCL to validate (see 3 in figure -SCHDBT42 JCL ).

d. In STEP2, make sure that there is a SYSIN DD * statement with at least PROCESS=JOB in it. The datain this statement is concatenated to an input statement for each member in the schedule in STEP1(see 4 in figure - SCHDBT42 JCL ).

e. The &&SELECTS dataset, which is SYSIN for STEP3, is built by SCHDBT42 (STEP2) and contains theinput statements for PR1PROC (see in figure - in SCHDBT42 JCL ).

213

Workload Scheduler

Page 221: ASG-PRO/JCL Reference Guide

1 //*SCHDBT42 JOB (ACCT),'PRO/JCL-BETA42 JOBS'//*//*//********************************************************************// JCLLIB ORDER=&HLQ..SPJMINST//********************************************************************

2 // SET SCHJCDB=---BETA42.SCHJCDB---2 // SET BETA42LD=--BETA42.LOADLIB---//********************************************************************//*//* SCHR0040 CREATES A LIST OF SCHEDULED JOBS//* SCHPARM SPECIFIES THE DESIRED DATE OR RANGE OF DATES//*//STEP1 EXEC PGM=SCHR0040,PARM='CONTROL'//STEPLIB DD DISP=SHR,DSN=&BETA42LD//SYSPRINT DD SYSOUT=*//CONTROL DD DSN=&&CONTROL,UNIT=VIO,DISP=(MOD,PASS),// SPACE=(32000,(30,30)),// DCB=(RECFM=FB,LRECL=80,BLKSIZE=3200)//SCHREPRT DD SYSOUT=*//SCHJCDB DD DISP=SHR,DSN=&SCHJCDB//*********//* SCHPARM SPECIFIES THE DATE FOR WHICH TO EXTRACT A SCHEDULE//* FORMAT IS MM/DD/YY//SCHPARM DD *

3 DATE=01/31/98//*//*******************************************************************//*//* DJ0CBT42 CREATES PRO/JCL INPUT STATEMENTS//* FOR EACH JOB IN THE SCHEDULE AN INPUT STATEMENT WILL//* BE CREATED AND THE LINE(S) IN THE SYSIN DD BELOW WILL//* BE COPIED AFTER EACH OF THE INPUT STATEMENTS//* THERE MUST BE AT LEAST ONE SYSIN RECORD//*//STEP2 EXEC PGM=DJ0CBT42//STEPLIB INCLUDE MEMBER=STEPLIB1//SYSPRINT DD SYSOUT=*//CONTROL DD DSN=&&CONTROL,DISP=(OLD,PASS)//SELECTS DD DSN=&&SELECTS,UNIT=VIO,DISP=(MOD,PASS),// SPACE=(32000,(30,30)),// DCB=(RECFM=FB,LRECL=80,BLKSIZE=3200)//SYSIN DD *

4 %% REPORTS=SJL,REPORTSTYLE=PAPER,RTSMEMBER=DEFAULT,PROCESS=JOB%%*==============================================================*//*//********************************************************************//* EXECUTE PRO/JCL PROC//********************************************************************//STEP3 EXEC PR1PROC,HLQ=&HLQ//********************************************************************//* SPECIFY INPUT LIBRARY HERE//********************************************************************

5 //SYSIN DD DISP=(OLD,PASS),DSN=&&SELECTS/*

SCHDBT42 JCL

CA-JobtracPRO/JCL simulates some of the functions of CA-Jobtrac. These include:

l Automatic JCL Override

l JCL Management Facility

214

ASG-PRO/JCL Reference Guide

Page 222: ASG-PRO/JCL Reference Guide

l Automatic Date Insertion

l DATELnnn Library Specification

Prepare an RTS MemberFurnish the dataset where the CA-Jobtrac SCL resides, the dataset where the CA-Jobtrac variables reside, and a defaultlocation in the current RTS member. If your site uses Location dependent DATELIBs, use the CA-Jobtrac DATELIBS table tospecify which library to use for which Location.

Individual Execution From the JJ Edit Macro or PRO/JCL Panels

To access CA-Jobtrac support from the JJ edit macro or PRO/JCL panels

1. Invoke PRO/JCL and choose Validation from the JCLManagement Solutions Menu.

File Settings--------------------------------------------------------------------------------

PRO/JCL ValidationCommand ===>

F Foreground Execution RTS Member . . DEFAULT ( * for list)B Background Execution E Edit Input LibraryV View Input Library

Input Library 'DSSI.SYS1.SPJMSAMP'Member . . . . PROJCL Show Directory Y (Y/N)Exclude Member Show Directory N (Y/N)Type . . . . . PDS ( * for list)

Listname . . . . ( * for list)Processing Mode JOB ( * for list)First PROCLIBLib type . . . PDS ( * for list)

JMP Library. . .JMP Name . . . . Parm . .Reformat . . . . ON ( * for list) Overwrite Input Lib N (Y/N)Reformat Member. DEFAULT ( * for list)SJL Hardcopy . . N (Y/N) Keep SJL Data Set N (Y/N)

PRO/JCL Validation Panel

215

CA-Jobtrac

Page 223: ASG-PRO/JCL Reference Guide

1 //ASGUSRQQ JOB (ACCT),TEST,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* SPJMSAMP MEMBER PROJCL//********************************************************************

2 // SET HLQ='---HLQ---'// JCLLIB ORDER=&HLQ..INSTALL//********************************************************************//* EXECUTE PRO/JCL//********************************************************************//STEP1 EXEC PR1PROC//********************************************************************//* SPECIFY INPUT LIBRARY HERE//********************************************************************//SYSIN DD *

3 %% INPUT DSNAME=YOUR.JCL.LIBRARY,SELECT=MEMBER,%% REPORTS=SJL,REPORTSTYLE=PAPER,

4 %% SCHEDULER=BETA42=(TASKNAME=YOURTASKNAME,DATE=MMDDYY)/*//********************************************************************//*//* NOTE: IF YOU NEED YOUR SYSIN TO COME FROM OTHER THAN INSTREAM//* DATA, AND TO INCLUDE INSTREAM DATA AS WELL, PLEASE BE//* SURE TO INCLUDE NULL INSTREAM DATA FIRST, BEFORE POINTING//* TO THE NON-INSTREAM SOURCE. AN EXAMPLE FOLLOWS://*//* THIS WILL NOT WORK://* //SYSIN DD DSN=XXX(MEM),DISP=SHR//* // DD *//*//* THIS WILL WORK INSTEAD, AND ACCOMPLISHES THE SAME THING://* //SYSIN DD *//* %%*//* // DD DSN=XXX(MEM),DISP=SHR//* // DD *//*//********************************************************************

SPJMSAMP member PROJCL

2. Select Scheduler from the Settings pull-down menu.

2 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

Selecting Scheduler from Settings pull-down menu

3. Choose CA-Jobtrac from the Scheduler popup.

216

ASG-PRO/JCL Reference Guide

Page 224: ASG-PRO/JCL Reference Guide

Scheduler

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: JOBTRAC

Select a scheduler4 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Scheduler popup menu

4. Enter the Schedule Date, the Time of Day date, and the Location on the Scheduler Parms for CA-Jobtrac popup.

Scheduler Parms for CA-Jobtrac

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Original Schedule Date ( YYYYDDD )

Time of Day Date . . . ( YYYYDDD )

Location . . . . . . . ( 000 - 254 )

Scheduler Parms for CA-Jobtrac popup

5. PRO/JCL returns to the PRO/JCL Validation panel.

6. Enter the Input Library name and theMember name you want to validate. Fill in other fields as required.

7. Enter F on the command line and press Enter.

Executing in Batch Mode: Validate Only One MemberModify the SPJMSAMP member PROJCL according to this procedure to validate onemember in batch.

1. Verify the JOB statement (See 1 in figure - SPJMSAMP member PROJCL ).

2. In the SET statement, verify that ---HLQ--- is set to the actual high-level qualifiers for the PRO/JCL INSTALL library(See 2 in figure - SPJMSAMP member PROJCL )

3. Replace your.jcl.library and memberwith the dataset and member you want PRO/JCL to validate (See 3 infigure - SPJMSAMP member PROJCL ).

4. Insert the scheduler parameter as shown (See 4 in figure - SPJMSAMP member PROJCL ).

217

CA-Jobtrac

Page 225: ASG-PRO/JCL Reference Guide

1 //ASGUSRQQ JOB (ACCT),TEST,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* SPJMSAMP MEMBER PROJCL//********************************************************************

2 // SET HLQ='---HLQ---'// JCLLIB ORDER=&HLQ..INSTALL//********************************************************************//* EXECUTE PRO/JCL//********************************************************************//STEP1 EXEC PR1PROC//********************************************************************//* SPECIFY INPUT LIBRARY HERE//********************************************************************//SYSIN DD *

3 %% INPUT DSNAME=YOUR.JCL.LIBRARY,SELECT=MEMBER,%% REPORTS=SJL,REPORTSTYLE=PAPER,

4 %% SCHEDULER=(JOBTRAC=(OSDDATE=YYDDD,TODDATE=yyddd,LOC=nnn))

SPJMSAMP member PROJCL

Validating Jobs in Run-Time OrderWhen validating jobs in run-time order, use the batch interface program provided by ASG, along with the JCL necessaryto run it.

The interface JCL extracts the information from CA-Jobtrac and automatically validates the jobs in their scheduled order.

The InterfaceThe interface consists of a three-step job that:

l Executes a CA-Jobtrac utility to produce a list of jobs in run-time order.

l Executes the ASG DJ0YJTSC program which selects the jobs and formats the job names into a list for PRO/JCL.

l Executes PRO/JCL to validate the jobs in run-time order.

Modify the Interface JCL and Submit the Job

To modify the interface JCL (SPJMSAMP member JTSCHED) and submit the job

Numbers in ( ) refer to callouts in figure - SPJMSAMP member JTSCHED with JCL jobinterface to CA-Jobtrac.

1. Supply a valid JOB statement. (1)

2. Insert the DSN for the CA-Jobtrac load library (2).

3. The SYSLIST DD and FORECAST DD for the JREPORT3 step is a temporary dataset for the CA-Jobtrac report. (See 3in figure - SPJMSAMP member JTSCHED with JCL job interface to CA-Jobtrac.)

4. Insert the DSN of your forecast. (4)

5. Insert the DSN of your JOB history. (5)

6. Code the selection control card in col 1 in one of two ways (6)

ALL

Or

218

ASG-PRO/JCL Reference Guide

Page 226: ASG-PRO/JCL Reference Guide

START=06/01,01:15-END=06/01,20:59

PRO/JCL interface JCL member, DJ0YJTSC, uses this statement to select the jobs from the CA-Jobtrac report.

7. Insert the dataset name PRO/JCL pulls the jobs from (7).

8. Code the scheduler parameter on the input statement. (8)%% SCHEDULER=(JOBTRAC=(OSDDATE=yyddd,TODDATE=yyddd,LOC=nnn)),

9. Submit the job.

219

CA-Jobtrac

Page 227: ASG-PRO/JCL Reference Guide

1 //DSS280QQ JOB (ACCT),BUILD,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* JTSCHED - CA-JOBTRAC INTERFACE.//*//* MEMBER NAME : JTSCHED (BUILT FROM SKELETON: D0SIIJ39)//* TYPE : SPJMSAMP//* PRODUCT RELEASE: Rnnn//********************************************************************// JCLLIB ORDER=DSSI.Rnnn.TAPE.INSTALL//********************************************************************//* ==> JTSCHED IS FOR CA-JOBTRAC 3.2 AND LATER ONLY//********************************************************************//* EXECUTE CA-JOBTRAC PROGRAM "JREPORT3".//* ==> NOTE THAT JREPORT3 DEPENDS ON THE PRIOR EXECUTION OF//* CA-JOBTRAC PROGRAM GJTRVSCH, WHICH LOADS THE FORECAST SCHEDULE.//* JCL SHOULD BE SIMILAR TO://********************************************************************//JREPORT3 EXEC PGM=JREPORT3

2 //STEPLIB DD DSN=YOUR.JOBTRAC.LOAD,DISP=SHR//SYSPRINT DD SYSOUT=*//SYSOUT DD SYSOUT=*//PULLIST DD SYSOUT=*

3 //SYSLIST DD DSN=JREPORT3.DISPLAY.SCHEDULE,// DISP=(NEW,CATLG,DELETE),// UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE),// DCB=(RECFM=FBA,LRECL=151,BLKSIZE=0)

4 //JOBTRACX DD DSN=YOUR.JOBTRAC.JFST.FORECAST,DISP=SHR5 //JOBHISTX DD DSN=YOUR.JOBTRAC.V3.JOBHIST,DISP=SHR

//SORTIN DD UNIT=SYSDA,SPACE=(CYL,(1,1))//VOLTIN DD UNIT=SYSDA,SPACE=(CYL,(1,1))//SORTOUT DD UNIT=SYSDA,SPACE=(CYL,(1,1))//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(3,3))//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(3,3))//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(3,3))//*//* PRODUCE A "DISPLAY SCHEDULE" REPORT TO A SEQUENTIAL DATA SET,//* RECFM=FBA,LRECL=151. CONTROL STATEMENTS SHOULD BE SIMILAR TO://*//SYSIN DD *DISPLAY SCHEDULE

REMARK (0)TITLE ('DISPLAY SCHEDULE REPORT INPUT TO PRO/JCL');

//*

SPJMSAMP member JTSCHED with JCL job interface to CA-Jobtrac

220

ASG-PRO/JCL Reference Guide

Page 228: ASG-PRO/JCL Reference Guide

//*********************************************************************//*//* ==> DJ0CJTSC JOBTRAC FORECAST INTERFACE EXECUTION//*//* THE FORECAST DD MUST POINT TO THE REPORT GENERATED BY JOBTRAC//* THE STEPLIB SECOND DD MUST POINT TO THE C++ RUNTIME LIBRARY//*//*********************************************************************//STEP1 EXEC PGM=DJ0CJTSC//STEPLIB INCLUDE MEMBER=STEPLIB1

3 //FORECAST DD DISP=SHR,DSN=JREPORT3.DISPLAY.SCHEDULE//*//SELECTS DD UNIT=SYSDA,SPACE=(CYL,(1,1)),DISP=(MOD,PASS),// DSNAME=&&SELECTS,// DCB=(RECFM=FB,LRECL=80,BLKSIZE=2480)//SYSPRINT DD SYSOUT=*//SYSTERM DD SYSOUT=*//*//* FIRST CONTROL STATEMENT IS MANDATORY. IF 'ALL' IS IN COLUMN 1,//* DJ0CJTSC PROCESSES ALL JOBS IN THE REPORT. IF 'ALL' IS NOT PRESENT,//* DJ0CJTSC LOOKS FOR VALID BEGINNING DATE IN COLUMN 7, FORM 'MM/DD',//* BEGINNING TIME IN COLUMN 13, FORM 'HH:MM', ENDING DATE IN COLUMN 23//* AND ENDING TIME IN COLUMN 29.//*//SYSIN DD *

6 ALL START=06/01,01:15-END=06/01,20:59%%*%%* THE ABOVE RECORD MUST BE FIRST. IT IS SELECTION PARAMETERS.%%*%%* ALL LINES STARTING WITH %% IN COL 1 WILL BE COPIED TO THE OUTPUT%%* THE LINE BELOW WITH '<<SELECTS HERE' WILL BE REPLACED BY THE%%* GENERATED SELECT STATEMENTS. EACH SELECT WILL HAS A TRAILING COMMA%%* SO THERE MUST BE AT LEAST ONE LINE FOLLOWING '<<SELECTS HERE'%%*

7 %% INPUT DSNAME=DSSI.PROJCL.SPJMSAMP,<<SELECTS HERE

8 %% SCHEDULER=JOBTRAC=(TODDATE=96360),%% REPORTS=(SJL),REPORTSTYLE=PAPER,%% PROCESS=JOB/*//********************************************************************//* EXECUTE PRO/JCL//********************************************************************//STEP2 EXEC PR1PROC//********************************************************************//* USE THE NEWLY CREATED SYSIN//********************************************************************//SYSIN DD DSN=&&SELECTS,DISP=(OLD,PASS)

CA-Driver Interface (Batch only) to CA-7CA-Driver can be accessed by the CA-7 Scheduler to provide additional job tailoring. If both CA-7 and CA-Driver are active,then use the PRO/JCL CA-Driver interface to simulate the functions CA-7 and CA-Driver perform at Job submission time.

The CA-Driver batch interface consists of a three-step job (CADRVR) that:

l Executes the CA-7 SASSBSTR program to extract the JCL from the CA-7 database for the Job specified. CA-7accesses CA-Driver and resolves the variables.

l Executes the ASG program (D0SECADV) to process the output list from LJCK command and produces the JCLexactly as it would be submitted to the JES reader.

l Executes PRO/JCL to validate the JCL.

221

CA-Driver Interface (Batch only) to CA-7

Page 229: ASG-PRO/JCL Reference Guide

For those times when you need to validate JCL that is not in a CA-7 library, you can use theCA7MEM member of the SPJMSAMP. That job does all the steps that CADRVR does; however, it first(and temporarily) places the job into a CA library before the resolution and validation steps so thatthe CA products can access it. See the Using PRO/JCL with CA-7 Scheduler documentation forcomplete details.

To prepare and use the Interface

n Modify the interface JCL member CADRVR in the SPJMSAMP(see figure - CA-Driver Interface JCL CADRVR):

1. Insert the name of the JOB as note 1.

2. Insert the PRO/JCL selection criteria at note 2.

3. Submit the job.

For future executions of the interface, change only the name on the JOB in CADRVR.

//DSS280QQ JOB (ACCT),BUILD,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* CADRVR- INTERFACE TO CA-DRIVER//*//* MEMBER NAME : CADRVR (BUILT FROM SKELETON: D0SIIJ52)//* TYPE : SPJMSAMP//* PRODUCT RELEASE: Rnnn//********************************************************************// JCLLIB ORDER=DSSI.Rnnn.TAPE.INSTALL//********************************************************************//* INTERFACE TO CA-DRIVER//* REF: SPJMSAMP(CADRVR)//*//* NOTE: MODIFY JOB STATEMENT AND ITEMS INDICATED BY ARROWS <==//*********************************************************************//******** GENERATE CA-DRIVER REPORT *********************************//*********************************************************************// SET HLQ=DSSI.Rnnn.TAPE//STEP1 EXEC CA7BATCH//SYSPRINT DD DSN=&&CADRVR,DISP=(,PASS),// SPACE=(TRK,(30,10),RLSE),UNIT=,// DCB=(RECFM=FBA,LRECL=133,BLKSIZE=6118)//SYSIN DD DATA,DLM=ZZ/LOGON

1. LJCK,JOB=YOURJOB,LIST=ONLY <===== CHANGE TO YOUR JOB NAME/LOGOFFZZ//SYSUDUMP DD SYSOUT=*//*********************************************************//* EXTRACT THE JCL FROM THE REPORT ********************//*********************************************************//ISPF EXEC PGM=IKJEFT01,DYNAMNBR=25,REGION=1024K//ISPLOG DD SYSOUT=*,// DCB=(RECFM=VA,LRECL=125,BLKSIZE=129)//*//SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC//*//INPUT DD DSN=&&CADRVR,DISP=(OLD,DELETE)//OUTPUT DD DSN=&JCLOUT,DCB=(LRECL=80,BLKSIZE=0),// UNIT=SYSDA,SPACE=(TRK,(5,1)),DISP=(,PASS)//JPDIAG DD SYSOUT=*//SYSTSPRT DD SYSOUT=*//SYSPRINT DD SYSOUT=*//SYSOUT DD SYSOUT=*//SYSTSIN DD *

D0SECADV//*********************************************************//* EXECUTE PRO/JCL ***********************************//*********************************************************//PROJCL EXEC PR1PROC,HLQ=&HLQ//JLJOB DD DSN=*.ISPF.OUTPUT,DISP=(OLD,DELETE)//SYSUDUMP DD SYSOUT=*//SYSEXEC DD DUMMY//SYSIN DD *%% INPUT DDNAME=JLJOB,%% TYPE=SEQ,

2. %% REPORTS=SJL <== PRINT SJL REPORT?/*

CA-Driver Interface JCL CADRVR

222

ASG-PRO/JCL Reference Guide

Page 230: ASG-PRO/JCL Reference Guide

CA-7PRO/JCL simulates the CA-7 # statements that are used to include or exclude lines from a job, based on the schedule ID,date, and time.

If you require PRO/JCL to validate JCL containing CA-DRIVER statements, use the JJCA Edit macro.This macro interfaces with CA-DRIVER and CA-7 for the resolution of # statements. It should not,however be used to reformat or change JCL; for these requirements, continue to use JJ. See theUsing PRO/JCL with CA-7 Scheduler documentation for complete details.

Individual Execution From the JJ Edit Macro, PRO/JCL Panels or Batch

To access CA-7 support from the JJ Edit macro or PRO/JCL panels

1. Invoke PRO/JCL and choose Validation from the ASG-PRO/JCLMain Menu.

File Settings--------------------------------------------------------------------------------

PRO/JCL ValidationCommand ===>

F Foreground Execution RTS Member . . DEFAULT ( * for list)B Background Execution E Edit Input LibraryV View Input Library

Input Library 'ASGUSR.SYS1.DEMOLIB'Member . . . . * Show Directory Y (Y/N)Exclude Member Show Directory N (Y/N)Type . . . . . PDS ( * for list)

Listname . . . . ( * for list)Processing Mode JOB ( * for list)First PROCLIBLib type . . . PDS ( * for list)

JMP Library. . . 'ASGUSR.SYS1.WORKLIBJMP Name . . . . Parm . .Reformat . . . . ON ( * for list) Overwrite Input Lib N (Y/N)Reformat Member. DEFAULT ( * for list)SJL Hardcopy . . N (Y/N) Keep SJL Data Set N (Y/N)

PRO/JCL Validation Panel

2. Select Scheduler from the Settings pull-down menu.

223

CA-7

Page 231: ASG-PRO/JCL Reference Guide

2 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

Selecting Scheduler from Settings pull-down menu

3. Choose CA-7 from the Scheduler popup.

Scheduler

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: ZEKE

Select a scheduler2 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Scheduler popup menu

4. Enter the Run Date, Run Time, and Schedule ID in the fields in the Scheduler Parms for CA7 popup.

Specifying “ALL” in the Schedule ID field causes PRO/JCL to validate the job with each Schedule ID found inthe job plus one not found in the job.

Specifying “ONLY” in the Schedule ID field causes PRO/JCL to validate the job with each Schedule ID found inthe job.

For either “ALL” or “ONLY”, PRO/JCL prints in the SJL the Schedule ID for the run before each job.

Scheduler Parms for CA7

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Run Date . . ( YYYYDDD or YYDDD )

Run Time . . ( HHMM )

Schedule Id ( 1 - 255 or ALL or ONLY )

Scheduler Parms for CA7 popup panel

224

ASG-PRO/JCL Reference Guide

Page 232: ASG-PRO/JCL Reference Guide

5. Press Enter or End when finished with entries; PRO/JCL returns to the Validation panel.

6. Enter the Input Library name and theMember name you want to validate. Fill in other fields as required.

7. Choose whether PRO/JCL treats the JCL members as separate jobs or as a run-time schedule (use the ResetBetween Members item in the Settings menu on the Validation panel (see number 13 in figure - SelectingScheduler from Settings pull-down menu)):

l If Reset Between Members is specified, PRO/JCL processes each member repeatedly based onSchedIDs it finds in that member, then processing continues with the next member (separatemembers).

Or

l If Reset Between Members is not specified PRO/JCL generates a SchedID list based on all theSchedIDs it finds in all selected members, then processes the entire list ofmembers for eachSchedID (run-time schedule).

8. Enter F on the command line and press Enter.

To Validate Members in Batch

1. Turn on the CA-7 interface through the Input statement. For example (see also the topic - INPUT Statement inthe PRO/JCL User documentation for more details about the Input statement):

%% SCHEDULER=(CA7=(SCHID=123,RUNDATE=2008123,RUNTIME=1259))

2. Furnish a default schedule ID in the CA7 Default Schedule ID interface option in the current RTS member.

Validating Jobs in Run-time Order

When validating jobs in run-time order, use the batch interface program provided by ASG, along with the JCL necessaryto run it.

The interface JCL extracts the information from CA-7 and automatically validates the jobs in their scheduled order.

If you require PRO/JCL to validate schedules whose members contain CA-DRIVER statements, usethe CA7SCHD member in SPJMSAMP. This member interfaces with CA-DRIVER and CA-7 for theresolution of # statements. See the Using PRO/JCL with CA-7 Scheduler documentation for completedetails on CA7SCHD.

Establishing the Interface and Submitting the JOB

The interface consists of a three-step (CA7SCHED) job that:

l Executes the CA-7 SASSBSTR program to produce a list of jobs in run-time order.

l Executes the PRO/JCL DJ0CCA7I program to create all of the necessary input selection statements to be validatedby PRO/JCL.

l Executes PRO/JCL to validate the list of generated jobs.

To prepare the interface JCL and submit the JOB

1. Modify the interface JCL, SPJMSAMP member CA7SCHED (see figure - Sample CA7SCHED JCL), and submit theinterface JCL according to these instructions:

225

CA-7

Page 233: ASG-PRO/JCL Reference Guide

2. Make a copy of the CA7SCHEDmember.

3. Supply the starting and ending dates and times for the forecast report on the FJOB statement. See note 1.

4. Change the DATECOL, JOBCOL, SCHIDCOL and NOEXCOL values if those from the forecast report are differentfrom the default values. See note 2.

5. The DSN parameter of the INPUT statement tells PRO/JCL where to find the job members to be validated. Seenote 3.

6. To complete the preparation of the interface furnish a default schedule ID in the CA7 Default Schedule IDinterface option in the current RTS member, if needed.

7. Submit the job.

//DSS280QQ JOB (ACCT),BUILD,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* CA7SCHED - INTERFACE TO CA-7 SCHEDULER//*//* MEMBER NAME : CA7SCHED (BUILT FROM SKELETON: D0SIIJ30)//* TYPE : SPJMSAMP//* PRODUCT RELEASE: Rnnn//********************************************************************// JCLLIB ORDER=DSSI.Rnnn.TAPE.INSTALL//*********************************************************************//* INTERFACE TO CA-7 SCHEDULER//* REF: SPJMSAMP(CA7SCHED)//*//* NOTE: MODIFY JOB STATEMENT AND ITEMS INDICATED BY ARROWS <==//*********************************************************************// SET HLQ=DSSI.Rnnn.TAPE//*//***** GENERATE CA-7 SCHEDULE REPORT *********************************//SCHEDULE EXEC CA7BATCH//SYSPRINT DD DSN=&&CA7RPT,DISP=(,PASS),// SPACE=(TRK,(30,10),RLSE),UNIT=,// DCB=(RECFM=FBA,LRECL=133,BLKSIZE=6118)//* => CHANGE MMDDYY AND HHMM VALUES BELOW <==================//SYSIN DD DATA,DLM=ZZ/LOGON

1. FJOB,SYS=GG,FROM=(MMDDYY,HHMM),TO=(MMDDYY,HHMM)/LOGOFFZZ//SYSUDUMP DD SYSOUT=*//*//***** GENERATE SELECTION STATEMENTS FOR THE SCHEDULED JOBS **********//SELECT EXEC PGM=DJ0CCA7I//STEPLIB INCLUDE MEMBER=STEPLIB1//FORECAST DD DSN=&&CA7RPT,DISP=(OLD,DELETE),RECFM=FB//SELECTS DD UNIT=SYSDA,SPACE=(CYL,(1,1)),DISP=(MOD,PASS),// DSNAME=&&SELECTS,// DCB=(RECFM=FB,LRECL=80,BLKSIZE=2480)//SYSIN DD *

2. DATECOL=2 THESE ARE ONLY NECESSARY IF THE FORECAST REPORT2. JOBCOL=25 HAS THEM IN COLUMNS OTHER THAN 2, 25, 53 & 772. SCHIDCOL=532. NOEXCOL=773. %% INPUT DSNAME=YOUR.CA7.JCLLIB,REPORTS=(SJL), <== YOUR JCL LIBRARY3. //*%% INPUT DDNAME=CA7JOBS,REPORTS=(SJL) <== YOUR JCL LIBRARY

//* IF JOBS DO NOT ALL COME OUT OF ONE LIBRARY, USE A SEPARATE DD//* TO CONCATENATE THE LIBRARIES. TO DO THIS REPLACE THE 'INPUT DSNAME'//* STATEMENT WITH THE ABOVE 'INPUT DDNAME' STATEMENT AND UNCOMMENT//* AND COMPLETE THE CA7JOBS DD IN THE PROJCL STEP.//* (NOTE: %% INPUT MUST BEGIN IN COL 1 AND MUST PRECEDE ANY COMMENTS//* IN THE SYSIN DD.)//SYSUDUMP DD SYSOUT=*

Sample CA7SCHED JCL

226

ASG-PRO/JCL Reference Guide

Page 234: ASG-PRO/JCL Reference Guide

//***** EXECUTE PRO/JCL ***********************************************//*//PROJCL EXEC PR1PROC,HLQ=&HLQ//*//********************************************************************//* USE THE FOLLOWING IF THE JOBS COME FROM DIFFERENT DATA SETS//********************************************************************//*CA7JOBS DD DISP=SHR,DSN=YOUR.FIRST.JCLLIB <== LIST ALL YOUR//* DD DISP=SHR,DSN=YOUR.SECOND.JCLLIB <== LIBRARIES HERE//* DD DISP=SHR,DSN=YOUR.THIRD.JCLLIB//*//********************************************************************//* USE THE NEWLY CREATED SYSIN//********************************************************************//SYSIN DD DSN=&&SELECTS,DISP=(OLD,PASS)

Sample CA7SCHED JCL

CONTROL-MPRO/JCL simulates some functions of the CONTROL-M Scheduler. These include:

l A batch interface to CONTROL-M to validate production jobs in run-time order.

l A dynamic CONTROL-M interface to resolve the %% variables.

l A batch interface to CONTROL-M to resolve all Auto Edit variables - including variables defined in a schedulinglibrary.

Validating Jobs in Run-Time Order

A batch interface to CONTROL-M is provided for validating all jobs on the schedule for a given time period (SPJMSAMPmember CONTROLM). The interface extracts JCL from CONTROL-M and writes it to a sequential file; the file is then inputto PRO/JCL.

CONTROL-M Scheduler Interface: Resolving %% Variables

Production JCL run by CONTROL-M often contains CONTROL-M and user %% variables and %%CALCDATE functions. The%% variables need to be resolved before the jobs can be validated. ASG provides an interface to CONTROL-M that can beautomatically invoked during both foreground and batch runs of PRO/JCL.

PRO/JCL control statements contain %% symbols. If these control statements are coded in the jobJCL being scanned, CONTROL-M issues errors.

Prepare the Interface

To establish the interface

1. Modify the PR1PROC and the Started Task PROC: Add an allocate statement for the DAGLOBAL DD, and add theCONTROL-M load library to the STEPLIB DD concatenation, after the PRO/JCL load library. If using CONTROL-M%%$WCALC variables, include a DACAL DD statement pointing to the appropriate library.

For example, add these statements to the PR1PROC proc://DAGLOBAL DD DSN=PROD.AUTO.EDIT,DISP=SHR//DAPARM DD DISP=SHR,DSN=NDS.IOA602.PARM// DD DISP=SHR,DSN=NDS.IOA602.IOAENV//PRTDBG DD DUMMY

Add this DD to the STEPLIB DD concatenation after the PRO/JCL loadlib:// DD DSN=LOAD.LIB.CNTLM,

227

CONTROL-M

Page 235: ASG-PRO/JCL Reference Guide

2. Modify the started task PROC: add an allocate statement for the DAGLOBAL DD and add the CONTROL-M loadlibrary to the STEPLIB DD concatenation after the PRO/JCL load library.

– If using CONTROL-M %%$WCALC variables, include a DACAL DD statement pointing to the appropriate library.– If using CONTROL-M, Release 6.0, include a DAPARM DD statement pointing to the appropriate libraries.– CONTROL-M, Release 6.0, requires update access to the IOALOG. As a result, all PRO/JCL users must be

granted update access to the CONTROL-M log file.For example, add these statements to the DSSISTC started task proc:

//DAGLOBAL DD DSN=PROD.AUTO.EDIT,DISP=SHR//DAPARM DD DISP=SHR,DSN=NDS.IOA602.PARM// DD DISP=SHR,DSN=NDS.IOA602.IOAENV//PRTDBG DD DUMMY

Add this DD to the STEPLIB DD concatenation after the PRO/JCL loadlib:// DD DSN=LOAD.LIB.CNTLM,

3. For background, set the Run date on the SCHEDULER parameter in the input statement:%% SCHEDULER=(CNTLM=(RUNDATE=yymmdd)),

Individual Execution From the JJ Edit Macro or PRO/JCL Panels

To access CONTROL-M support from the JJ Edit macro or PRO/JCL panels

1. Invoke PRO/JCL and choose Validation from the ASG-PRO/JCLMain Menu. PRO/JCL displays the PRO/JCLValidation panel.

2. Select Scheduler from the Settings pull-down menu.

2 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

Selecting Scheduler from Settings pull-down menu

3. Choose CNTLM from the Scheduler popup.

228

ASG-PRO/JCL Reference Guide

Page 236: ASG-PRO/JCL Reference Guide

Scheduler

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler:

Select a scheduler3 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Scheduler popup menu

4. Enter the Date in the Run Date field in the Scheduler Parameters for CNTLM popup.

Scheduler Parms for CNTLM

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Run Date . . ( YYMMDD )

Scheduler Parms for CNTLM popup panel

5. Press Enter or End when finished with entries; PRO/JCL returns to PRO/JCL Validation panel.

6. Enter the Input Library name and theMember name you want to validate and fill in other fields as required.

7. Enter F on the command line of the Validation panel and press Enter.

Validating Jobs when Variable Information is Stored in the job Scheduling Definition

To validate a set of jobs accurately, all variables must first be resolved. PRO/JCL provides sample JCL that validates a setof jobs defined in a scheduling library table (SPJMSAMP member CTLMAE). This sample JCL can be used to resolvevariables defined in the scheduling library.

The InterfaceThe interface consists of a two-step job that:

l Executes the CONTROL-M CTMAESIM PROC to resolve all CONTROL-M variables and control statements, thenplaces those jobs in a sequential file.

l Executes PRO/JCL to validate the jobs (in the sequential file) using the SCHEDLIB definitions.

Establishing the InterfaceTo establish the interface:

1. Modify the interface JCL according to the directions contained in the CTLMAEmember of the SPJMSAMP library.

2. Submit the job.

229

CONTROL-M

Page 237: ASG-PRO/JCL Reference Guide

The following shows sample JCL for the CONTROL-M Scheduler interface (in the CTLMAEmember of the SPJMSAMPlibrary):

//CTLMAE JOB (ACCT),'PROGRAMMER NAME' <=====//********************************************************************//* INTERFACE TO THE CONTROL-M SCHEDULER (TO PROCESS JOBS WITH ALL//* AUTO-EDIT VARIABLES RESOLVED)//* REF: SPJMSAMP(CTLMAE)//*//* NOTE: MODIFY ALL STATEMENTS INDICATED BY AN ARROW <====//*//* NOTE: REFER TO THE CONTROL-M USER MANUAL FOR DETAILS ON CTMAESIM//********************************************************************// SET HLQ='---HLQ---' <====// SET CNTLMPRC='---CONTROL-M PROC LIB---' <====// SET DAGLOBAL='CNTLM.GLOBAL.LIB' <====//*// JCLLIB ORDER=(&HLQ..SPJMINST,// &CNTLMPRC)

//*THE FOLLOWING STEP EXECUTES THE CONTROL-M SIMULATOR. ALL CONTROL-M//* AUTO-EDIT VARIABLES AND STATEMENTS WILL BE RESOLVED.//CTMAESIM EXEC CTMAESIM//DAGLOBAL DD DSN=&DAGLOBAL,DISP=SHR//DAPARM DD DISP=SHR,DSN=NDS.IOA602.PARM// DD DISP=SHR,DSN=NDS.IOA602.IOAENV//DASUBMIT DD DISP=(,PASS),DSN=&&JCLFILE,UNIT=SYSDA, <==== VALID UNIT// SPACE=(CYL,(1,1)),DCB=(LRECL=80,BLKSIZE=0,RECFM=FB)//SYSPRINT DD SYSOUT=*//* VARIABLES DEFINED IN THE SCHEDULING LIBRARY CAN BE USED//DASIM DD *ODATE ?ORIG.SCHED.DATE? <====SCHEDLIB ?YOUR.SCHEDULING.LIBRARY? <====TABLE ?YOURTABLE? <====JOB * <====SUBMIT//*//********************************************************************//* EXECUTE PRO/JCL//********************************************************************//STEP2 EXEC PR1PROC,REGION.PROJCL=0M//DAGLOBAL DD DSN=&DAGLOBAL,DISP=SHR//SYSUDUMP DD SYSOUT=*//SYSEXEC DD DUMMY//JLJOB DD DSN=&&JCLFILE,DISP=(OLD,DELETE,DELETE)//SYSIN DD *%% INPUT DDNAME=JLJOB,%% TYPE=SEQ,%% RTSMEMBER=DEFAULT,%% USERREPORTTITLE='CONTROL-M AUTOEDIT-RESOLVED JCL',%% REPORTSTYLE=PAPER,%% REPORTS=(SJL)**************************** Bottom of Data ***************************

SPJMSAMP member CTLMAE

ESP Scheduler Interface

To prepare the interface

1. Verify that Cybermation maintenance APAR (SA02747) has been applied to ESP.

2. Cybermation ESP load library must be available to the PRO/JCL started task and PR1PROC via LINKLIST or steplib.

3. Choose Settings from the PRO/JCL Validation panel,

230

ASG-PRO/JCL Reference Guide

Page 238: ASG-PRO/JCL Reference Guide

File Settings------------------------------------------------------------------------------

PRO/JCL ValidationCommand ===>

F Foreground Execution RTS Member . . DEFAULT ( * for list)B Background Execution E Edit Input LibraryV View Input Library

Input Library 'ASGUSR.$SYS1.DEMOLIB'Member . . . . * Show Directory Y (Y/N)Exclude Member Show Directory N (Y/N)Type . . . . . PDS ( * for list)

Listname . . . . ( * for list)Processing Mode JOB ( * for list)First PROCLIBLib type . . . PDS ( * for list)

JMP Library. . . 'ASGUSR.SYS1.WORKLIBJMP Name . . . . Parm . .Reformat . . . . ON ( * for list) Overwrite Input Lib N (Y/N)Reformat Member. DEFAULT ( * for list)SJL Hardcopy . . N (Y/N) Keep SJL Data Set N (Y/N)

PRO/JCL Validation panel

4. From the Settings pull-down menu, choose Scheduler.

2 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

Settings pull-down menu

5. From the Scheduler popup menu, choose ESP.

Scheduler-------------------------------------------------------------------------------Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: ZEKE

Select a scheduler7 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Scheduler popup menu

231

ESP Scheduler Interface

Page 239: ASG-PRO/JCL Reference Guide

6. On the Specify ESP Information panel, supply the following information:

Specify ESP Information

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

ESP Subsystem Name

Event to Simulate ( Qualified Event name )

Schedule Date . . . ( A valid ESP date )

Specify ESP Information panel

l Add the name of the ESP subsystem to use.

l Add the name of an existing event, for simulation. This event should be an event with only one job,as ESP will generatemessages about all jobs after the first.

l Add the date ESP will simulate. If no date is specified, ESP will simulate the next scheduled time.

7. Press Enter or End to save.

Scan Results

>A*>A*>A* SCANNED BY ESP AT 13.28.17 ON THURSDAY JUNE 7TH, 2017>A* SYSTEM SYS1, SUBSYSTEM ESP>A* REQUESTED BY EVENT ASGUSR.SIMJOB>A* JCL FROM ASGUSR.211.CNTL(DSSIESP)>A*

ESP Comments

ESP adds these comments during the scan. The JCL actually processed is the JCL specified by theuser to PRO/JCL, not the JCL as indicated by these comments.

Validating an Entire Schedule in Run-Time OrderThe interface consists of a three-step batch-only job that:

l Defines a temporary dataset to contain the forecasted JCL.

l Executes an ESP utility program to extract the JCL for the set of jobs and places it in the temporary file.

l Executes PRO/JCL to validate the jobs in run-time order. The ESP Scheduler Interface will only run in this manner.

232

ASG-PRO/JCL Reference Guide

Page 240: ASG-PRO/JCL Reference Guide

Modify the Control Cards and Interface JCL and Submit the Job

To modify the control cards and interface JCL and submit the job

1. Add a valid JOB statement. See note 1 in the sample ESPSCHED JCL below.

2. Define the CYBJS000 control statements and execution parameters according to ESP documentation. The“SUBSYS” execution parameter must specify the 1 to 4 character name of the ESP subsystem which manages theschedule to be validated. See note 2 in the sample ESPSCHED JCL below. Modify the DD statements to reflectyour site's ESP datasets.

3. On the SADGEN control statement specify the starting and ending dates and times to be validated. See note 3 inthe sample ESPSCHED JCL below. The JCLOUT parm must be the same dataset name specified on the JCLFILE andthe JLJOB DDs. See note 4.

4. Submit the job.

The below figure shows sample JCL for the ESP Scheduler interface (in the ESPSCHEDmember of the SPJMSAMP library).

1 //ESPSCHD1 JOB (ACCT),'PROGRAMMER NAME'//*********************************************************************//* INTERFACE TO ESP (EXECUTION SCHEDULING PROCESSOR)//*********************************************************************//****** EXTRACT JOBS IN PREDICTED EXECUTION SEQUENCE FROM ESP ********//*********************************************************************//STEP01 EXEC PGM=IEFBR14//JCLFILE DD UNIT=SYSDA,SPACE=(CYL,(5,5)),DISP=(NEW,CATLG),

4 // DSN=TEMP.SCHEDULE.JCLOUT2 //STEP01 EXEC PGM=CYBJS000,PARM='SUBSYS(ES44) SAR',REGION=0M//PRODJCL DD DSN=PROD.MODIFIED.JCL,DISP=SHR// DD DSN=PROD.SCHEDULE.JCL,DISP=SHR// DD DSN=PROD.UTILITY.JCL,DISP=SHR//SYSPRINT DD SYSOUT=*//SADFILE DD DSN=CYBCC01.ESPZ.WORKFILE,DISP=SHR//ESPCOLD DD DSN=ESP.PARMLIB(ESPCOLD),DISP=SHR//ESPPARM DD DSN=ESP.PARMLIB(ESPPARM),DISP=SHR//ESPWARM DD DSN=ESP.PARMLIB(ESPWARM),DISP=SHR//SYSIN DD *

3 SADGEN DATASET(SADFILE) -FROM('00:01 TODAY') TO('24:00 TODAY') -

4 JCLOUT('TEMP.SCHEDULE.JCLOUT')//PROJCL EXEC PR1PROC,COND=(8,LT)//********************************************************************//* PRO/JCL VALIDATE THE JCL CREATED BY ESP//********************************************************************

4 //JLJOB DD DSN=TEMP.SCHEDULE.JCLOUT,DISP=(OLD,DELETE)//SYSIN DD *%% INPUT DDNAME=JLJOB,%% TYPE=SEQUENTIAL,%% REPORTS=SJL

Sample ESPSCHED JCL

TWS (OPC) - InterfaceThe PRO/JCL interface with TWS for z/OS can validate JCL in TWS plans and applications and in Edit sessions. TWSresolves this JCL prior to PRO/JCL validation. Also, PRO/JCL can validate JCL from other datasets using the PRO/JCLapplication. PRO/JCL passes the JCL to TWS which resolves the variables as though part of PRO/JCL application, then getsit back for validation.

233

TWS (OPC) - Interface

Page 241: ASG-PRO/JCL Reference Guide

To validate JCL in TWS Applications and Plans

1. From the ASG-PRO/ JCLMain menu, select Validation - TWS to begin validating JCL for TWS applications andplans. (The number of the TWS choicemight differ from what is shown in the below figure.)

ASG-PRO/JCL Main MenuOption ===> 7

Date : 01/12/2017Time : 15:04Release: Rnnn

1 Validation Use PRO/JCL to Validate/Manipulate JCL2 Reformatter Edit/View JCL Reformatter Settings3 JMP Utility Develop JCL Manipulation Programs4 Directed Execution Validate/Manipulate JCL on Remote Machine5 Machine Definitions Edit/View Machine Definitions6 EPASS Generate EPASS7 Validation - TWS Use PRO/JCL to Validate TWS (OPC) JCL

Selecting the PRO/JCL interface with TWS to validate application and plan JCL

PRO/JCL displays the PRO/JCL for TWS - JCL Validation panel.

2. From here, choose Application, Current Plan or Trial Plan validation and refer to the ASG-PRO/JCL TWS forz/OS Scheduler Interface Handbook to validate JCL.

ASG-PRO/JCL For TWS - JCL ValidationOption ===> __________________________________________________________________

1 Application JCL Validation for an Application

2 Current Plan JCL Validation from Current Plan

3 Trial Plan JCL Validation from a Trial Plan

X Exit Exit

Menu displaying application and plan JCL validation choices

The ASG-PRO/JCL TWS for z/OS Scheduler Interface Handbook hasadditional setup and usage details.

Validating TWS JCL From Edit

The below figure shows how to use the JJTWS Edit macro to validate JCL with a specific TWS operation.

234

ASG-PRO/JCL Reference Guide

Page 242: ASG-PRO/JCL Reference Guide

EDIT ASGUSR.JCL(BR14JOB) - 01.03 Columns 00001 00072Command ===> JJTWS Scroll ===> CSR000100 //BR14JOBA JOB000200 //*%OPC SCAN000300 //* OADID DEPENDENT VARIABLE (MODNAME) = MODNAME000400 //* OCCURRENCE APPLICATION ID (OADID) = &OADID000500 //* OCCURRENCE OWNER (OADOWNER) = &OADOWNER000600 //* OCCURRENCE IA DATE TIME (OYMD1 OHHMM) = &OYMD1 &OHHMM000700 //* OPERATION JOB NAME (OJOBNAME) = &OJOBNAME000800 //* OPERATION NUMBER (OOPNO) = &OOPNO000900 //* OPERATION LATEST START (OLYMD OLHHMM) = &OLYMD &OLHHMM001000 //* OPERATION WORKSTATION (OWSID) = &OWSID001100 //* CURRENT DATE TIME (CYYMMDD CHHMM) = &CYYMMDD &CHHMM...

Using JJTWS

PRO/JCL displays the PRO/JCL For TWS Operation Selection Criteria panels. From it you can specify the application andoperation under which you want PJ to validate the JCL member.

PRO/JCL For TWS Operation Selection CriteriaCommand ===>

TWS Subsystem . . TWS1 Current Plan Ends: 15/01/26 12.00Blank out Subsystem Name to restore to defaults.

If TWS is on a remote system, enter the Server OR Remote info.Server LU Name . ________________Remote Host . . ____________________________________________________Remote Port . . ____

JOB Name . . . . . BR14TWS__Application . . . *_______________ (Mask/Blank)Input Arrival . . __/__/__ __.__ (Blank or YY/MM/DD HH.MM)Operation ID:Workstation . . ____ (Mask/Blank) Number. . . . . . ___

Variable Table . . ________________

Search TWS Current Plan . . Y (Y/N)Search TWS Applications . . N (Y/N)Provide Not Found Entry . . N (Y/N)

RTS Member . . . . DEFAULT ( * for list)First PROCLIB . . ______________________________________________Lib Type . . . . PDS_______ ( * for list)JMP Library. . . . 'USER1.JMP.EXEC'JMP Name . . . . . DELNREC3 Parm . . .

Selecting an Operation

The ASG-PRO/JCL TWS for z/OS Scheduler Interface Handbook hasadditional setup and usage details.

To validate JCL in Edit as part of the PRO/JCL Application

n Choose Scheduler in the Settings pull-down in the JJ Edit macro Settings panel menu bar and set to TWS.

235

TWS (OPC) - Interface

Page 243: ASG-PRO/JCL Reference Guide

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: NOSCHED

Select a scheduler6 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Selecting TWS temporary application interface for JJ Edit macro

The below shows how to use the JJ Edit macro to validate JCL with a temporary Application.

EDIT CUST.PROD.JCL(BR14JOB) - 01.03 Columns 00001 00072Command ===> JJ Scroll ===> CSR000100 //BR14JOBA JOB000200 //*%OPC SCAN000300 //* OADID DEPENDENT VARIABLE (MODNAME) = MODNAME000400 //* OCCURRENCE APPLICATION ID (OADID) = &OADID000500 //* OCCURRENCE OWNER (OADOWNER) = &OADOWNER000600 //* OCCURRENCE IA DATE TIME (OYMD1 OHHMM) = &OYMD1 &OHHMM000700 //* OPERATION JOB NAME (OJOBNAME) = &OJOBNAME000800 //* OPERATION NUMBER (OOPNO) = &OOPNO000900 //* OPERATION LATEST START (OLYMD OLHHMM) = &OLYMD &OLHHMM001000 //* OPERATION WORKSTATION (OWSID) = &OWSID001100 //* CURRENT DATE TIME (CYYMMDD CHHMM) = &CYYMMDD &CHHMM...

Validating a member with the temporary TWS application

Prior to using this interface, follow the instructions in Setting up the Interface for the PRO/JCLApplication. For more information on how to use the JJ Edit macro, see topic - JJ - Run PRO/JCL inthe User documentation.

Validate Members of PDS as Part of the PRO/JCL Application

Choose Scheduler in the Settings pull-down for the Validation panel menu bar and set to TWS.

236

ASG-PRO/JCL Reference Guide

Page 244: ASG-PRO/JCL Reference Guide

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: NOSCHED

Select a scheduler6 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Selecting TWS temporary application interface for Validation panel

The below figure shows how to use the PRO/JCL validation panel to validate JCL with the TWS temporary application. UseF or B to validate JCL.

PRO/JCL ValidationCommand ===> V

F Foreground Execution RTS Member . . DEFAULT ( * for list)B Background Execution E Edit Input LibraryV View Input Library

Input Library . . 'CUST.PROD.JCL'Member . . . . . BR14JOB Show Directory Y (Y/NExclude Member Show Directory N (Y/NType . . . . . . PDS ( * for list)Listname . . . . . ( * for list)Processing Mode JOB ( * for list)First PROCLIB . .Lib type . . . . PDS ( * for list)JMP Library. . . .JMP Name . . . . . Parm . . NTH 'THIRDSUBSTITUTION' 30Reformat . . . . . OFF ( * for list) Overwrite Input Lib N (Y/N)Reformat Member. . DEFAULT ( * for list)SJL Hardcopy . . . N (Y/N) Keep SJL Data Set N (Y/N)Save Error Summary Y (Y/N) using ID TEST RUN

Validating JCL in a PDS with the temporary TWS application

Prior to using this interface, follow the instructions in Setting up the Interface for the PRO/JCLApplication.

Setting up the Interface for the PRO/JCL Application

To install and use the interface to validate JCL with the PRO/JCL application, use the instructions in this topic, beginningwith Initial Setup. It is important to follow these instructions to avoid problems within TWS. To establish the interface,complete the following installation tasks:

Initial Setup1. Verify that PIFCWB(00) is specified in the TWS startup parm:

INTFOPTS PIFHD(711231)PIFCWB(00)

237

TWS (OPC) - Interface

Page 245: ASG-PRO/JCL Reference Guide

2. If the TWS started task INTFOPTS parm PIFCWB is not set to 00, the following DDmust be added to the PRO/JCLstarted task and PR1PROC.

//EQQYPARM DD DISP=SHR,DSN=DSSI.DEV.CNTL(OPCINIT)

This points to a PDS member or SEQ dataset that contains one line:INIT CWBASE(00)

l Theremust be an application description (AD) defined in TWS for PRO/JCL to use for variable resolution.

l PRO/JCL must be able to update the JS File for this operation.

l Provide PRO/JCL with appropriate access to the libraries of the TWS subsystem.

l PRO/JCL will look for Application Description DSSIADHOC1 unless an alternate ADID is specified in the RTSmember (see Interface option, TWS ADID for ASG Use) for the system on which PRO/JCL is running.

Security IssuesIf any TWS subresources (for example, application or group) for the ASG application are secured, the user must bepermitted to update the resource JS for the application descriptions defined for PRO/JCL.

Multiple SystemsIf multiple systems are being used, there should be an ADID for each system on which PRO/JCL is running defined to eachTWS controller that can be used. For example, for the threeMVS systems, MVS1, MVS2, and MVS3 each runningPRO/JCL:

l Define three ADIDs in TWS - DSSIADHOC1, DSSIADHOC2, and DSSIADHOC3.

l Specify ADID 'DSSIADHOC1' in the RTS member on MVS1.

l Specify ADID 'DSSIADHOC2' in the RTS member on MVS2.

l Specify ADID 'DSSIADHOC3' in the RTS member on MVS3.

Enabling the InterfaceUse the Settings and Scheduler pull-down menus from the JJ OPT ISPF Edit Macro to specify the TWS Scheduler Interface.After the interface is enabled, you can scan JCL members within ISPF Edit.

Scanning Within ISPF EditAfter the TWS interface is installed and enabled, the PRO/JCL Edit Macro can be invoked to scan JCL. Type JJ on the ISPFEdit Command Line and press Enter.

PRO/JCL will use the TWS Subsystem name, Input Arrival Date/Time, and Variable Table Name specified on the Settingsand Scheduler pull-down menus to resolve the TWS variables. PRO/JCL appends the resolved JCL as NOTE lines after theoriginal JCL.

Scanning Within TWSAfter the TWS interface is installed, the PRO/JCL Edit Macro can be invoked to scan JCL. From TWS's Editing JCL for aComputer Operation panel, type JJ on the Command Line and press Enter.

PRO/JCL uses the TWS Subsystem name, Input Arrival Date/Time, and Variable Table Name directly from TWS to resolvethe variables. PRO/JCL appends the resolved JCL as NOTE lines after the original JCL.

238

ASG-PRO/JCL Reference Guide

Page 246: ASG-PRO/JCL Reference Guide

l PRO/JCL does not write out changed JCL in response to JMP programs when the TWS interface is turned on.This is because TWS changes JCL but leaves no indication in the JCL about which lines it changed, or whichlines have variables or do not have variables.

l When using Directed Execution, ensure that all machines involved are running the same version of TWS.

TWS - Batch Interface

PRO/JCL batch processing simulates most of the functions and resolves variables of the TWS Scheduler. The interface isinvoked by submitting the PRO/JCL batch JCL.

Enabling the InterfaceUse the following “INPUT” statements to specify the TWS Scheduler Interface:

%% SCHEDULER=(TWS=(SUBSYSTEM=opcd,IADATE=yymmdd,IATIME=HHMM,{JCLVTABLE=tablename | APPLID=applicationid}))

If a value is added for APPLID, JCLVTABLE will be ignored.

Provide PRO/JCL with appropriate access to the libraries of the TWS subsystem.

Scanning in BatchAfter the TWS interface is specified and enabled, the PRO/JCL batch JCL can be submitted to scan JCL.

PRO/JCL uses the TWS Subsystem name, Input Arrival Date/Time, and Variable Table Name specified on the INPUTstatements to resolve the TWS variables. PRO/JCL appends the resolved JCL as NOTE lines after the original JCL.

TWS - Batch Run-Time Interface

PRO/JCL simulates most of the functions of TWS Scheduler. Sample interface JCL is contained in SPJMSAMP memberOPCESCH1. The interface consists of a three-step job that:

l Executes an ASG program to generate a list of jobs for the selected application(s).

l Sorts the list of jobs by planned start time. Executes an ASG program to extract the JCL for the set of jobs andplaces it in a temporary PDS with generated member names consisting of “A” followed by seven digits (e.g.“A1234567”).

l Executes PRO/JCL to validate the jobs in run-time order.

Determine the TWS Environment

To determine the TWS environment, answer the following questions

l Which workstation ID(s) and application(s) need to be validated?

l What is the name of the TWS subsystem?

l What is the name of the library containing themodule EQQYCOM?

l What is the name of the TWS message library dataset?

Provide PRO/JCL with appropriate access to the libraries of the TWS subsystem.

239

TWS (OPC) - Interface

Page 247: ASG-PRO/JCL Reference Guide

Modify the Control Cards and Interface JCL and Submit the Job

To modify the control statements and interface JCL, and submit the job

1. Define the Input Selection information on the CARD DD statement in the interface JCL contained in theOPCESCH1member in the SPJMSAMP library.

The only parameter required is WS=. WS identifies the selected workstation IDs for this job. At least one andas many as 100may be specified in a single job. The workstation parameter (WS=)must be specified as fourcharacters. If a workstation ID is less than four characters, right pad it with blanks followed by a comma. Forexample:

//CARD DD *WS=CPU1,CPU ,CPUX

2. Modify the rest of the JCL according to the directions contained in themember.

3. Submit the job.

l If the last workstation identified in the string is padded with a right blank, it must be followed with a trailingcomma in order to be properly read by PRO/JCL.

l As many lines as necessary can be used. Start each line with: WS=

l For information on optional parameters, see TWS Scheduler Interface: Batch Input Parameters following.

l When any other parameters are used to modify the Control Cards, they each need to be on different cards(one parameter per card).

Substituting VariablesThis capability is available for TWS Version 1, Release 3.1 and above. The interface requests TWS to supply JCL with thefollowing conditions:

l Submit variables are substituted.

l Nonpromptable setup variables are substituted.

l Promptable setup variables are substituted using the default values. Specify the defaults when calling PIF;otherwise, no substitution takes place, and the JCL might contain &, ?, and % characters.

l PHASE=SETUP directives are returned to the caller, even though TWS only simulates submission.

l A time value can be specified in the SIMTIME argument for TWS supplied variables that contain a currenttime value. TWS uses the current time if you do not specify SIMTIME.

l JCL is returned even if errors were found. Error and warning messages are inserted in the JCL.

l The OPCESCH1member of the SPJMSAMP library shows sample JCL for the TWS Scheduler interface.

TWS Scheduler Interface: Batch Input Parameters

Required ParametersWS Parameter TheWS parameter is required. For details, seeModify the Control Cards and Interface JCL and Submit theJob. Input parameter WS= is the only required input parameter for the TWS Scheduler interface JCL.

240

ASG-PRO/JCL Reference Guide

Page 248: ASG-PRO/JCL Reference Guide

Optional ParametersA line with the word DEPENDENCIES in column 1, will cause PRO/JCL to extract dependencies for JOBS to be scanned andtake them into account when ordering jobs. There are four groups of optional parameters.

Group 1: AID1 and AID2 The AID1 and AID2 parameters select specific application IDs by instructing TWS to includeapplication IDs with a value greater than or equal to the value of AID1, and less than or equal to the value of AID2. Valuescan be one to 16 characters long (no masking allowed). If omitted, AID1 defaults to blanks; AID2 defaults toZ999999999999999. For example:

AID1=FABCAID2=H

Group 2: STAT The STAT parameter identifies the status of each operation (for example, awaiting execution, complete, orcompleted in error). The following are valid status codes. The default is AWR*.

STAT Parameter Table

A Ready. No predecessor defined.

C Complete.

D Deleted.

E Operation ended in error.

I Interrupted operation

R All predecessors are complete.

S Started.

U Undecided. The status is not known.

W Waiting for a predecessor to complete.

* Ready. At least one predecessor was non-reporting. All predecessors are complete.

Group 3: SIMTIME The SIMTIME parameter causes TWS to pull jobs using the current plan as if it were running on thespecified date and time. The format of the parameter is SIMTIME=CCYYMMDDHHMM, where CCYYMMDDHHMM is avalid TWS SIMTIME value. For example:

SIMTIME=200808260600

Group 4: DATE and TIME The DATE, TIME, SDATE, STIME, EDATE, and ETIME parameters restrict the occurrences ofapplications where JCL is retrieved using the current plan. All DATE fields are in yymmdd format. All TIME fields are inhhmm format.

241

TWS (OPC) - Interface

Page 249: ASG-PRO/JCL Reference Guide

Parameter Application Occurrences to Be Extracted

DATE Occurrences on a particular date.

TIME Occurrences at a particular time.

SDATE Occurrences on a start date.

STIME Occurrences at a start time.

EDATE Occurrences on an ending date.

ETIME Occurrences at an ending time.

DATE and TIME Parameters

Valid DATE and TIME CombinationsCertain combinations of DATE, TIME, SDATE, STIME, EDATE, and ETIME are not valid. See the below table to determinevalid combinations. (Also refer to the Using PRO/JCL with TWS Scheduler Interface documentation for more detailedinformation.)

Parameter DATE TIME SDATE STIME EDATE ETIME

DATE N/A Required Prohibited Prohibited Prohibited Prohibited

TIME Required N/A Prohibited Prohibited Prohibited Prohibited

SDATE Prohibited Prohibited N/A Required Required Required

STIME Prohibited Prohibited Required N/A Required Required

EDATE Prohibited Prohibited Required Required N/A Required

ETIME Prohibited Prohibited Required Required Required N/A

Valid DATE and TIME Combinations

Prohibited= do not use this combination of parameters. Required= use both parameters. N/A=Not a valid combination.

TWS (OPC) Tracker SupportThe PRO/JCL TWS interface works on a system that has a TWS (OPC) Tracker as well as on the system with the TWSController.

To enable Tracker support

1. Choose Scheduler in the Settings pull-down for the Validation panel menu bar and set to TWS. See Specify TWSInformation panel.

242

ASG-PRO/JCL Reference Guide

Page 250: ASG-PRO/JCL Reference Guide

2. From the Scheduler panel, choose TWS.

Scheduler-------------------------------------------------------------------------------Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: NOSCHED

Select a scheduler6 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Selecting TWS from the Scheduler panel for TWS (OPC) Tracker support

Specify TWS Information

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

TWS Subsystem Name . . TWSA (Blank to restore to defaults)

If TWS is on a remote system, enter the Server OR Remote info.Server LU Name . .Remote Host . . . .Remote Port . . . .

Input Arrival Date ( YYMMDD )Input Arrival Time ( HHMM )Variable Subs TableApplication ID . . .Operation Number . .

Specify TWS Information panel

3. On the Specify TWS Information panel, fill the below fields.

Field Description

TWS Subsystem Name The name of the TWS subsystem to use.

Server LU nameLeave the Server LU name field blank when PRO/JCL is executing on the sameMVSimage as the Controller Subsystem. The LU name can be a fully qualified LU namenetworkid.luname, 3-17 characters. The luname is sufficient if Server is on same net.

Remote HostSpecify the IP Address of the remote TWS TCP/IP server.

This is mutually exclusive with the Server LU Name.

TWS Information Panel Fields

243

TWS (OPC) Tracker Support

Page 251: ASG-PRO/JCL Reference Guide

Field Description

Remote Port Specify the port number for the TCP/IP session. (0 to 65535)

Input Arrival Date IADATE is the INPUT ARRIVAL date in the format yymmdd. (Optional.)

Input Arrival Time IATIME is the Input Arrival time in the format hhmm. (Optional.)

Variable Subs Table VARIABLE SUBStitution TABLE to use. (Optional.)

Application ID The name of an existing ADID. PRO/JCL substitutes every occurrence of &OADIDwith this and use the Variable Substitution Table specified for this ADID. (Optional.)

Operation NumberOperation to simulate. Default is 1. PRO/JCL correctly resolves JOBNAME andworkstation ID (WSID) when the specified operation is not associated with the ADIDused.

If the Input Arrival Date and Input Arrival Time are left blank, PRO/JCL automatically uses thecurrent date and time when processing. If the Application ID is blank, PRO/JCL makes nosubstitutions for &OADID.

244

ASG-PRO/JCL Reference Guide

Page 252: ASG-PRO/JCL Reference Guide

Security InterfacesThis topic provides detailed information about security interfaces.

n Security Interface Functions

n Customizing the Security Interface

Security Interface FunctionsPRO/JCL's security interface works with security software such as RACF, CA-TOP SECRET, and CA-ACF2/MVS to providethe following functions:

PRO/JCL Access Control

To analyze JCL, PRO/JCL reads procedure libraries, load libraries, and control card libraries, and writes to output files. Thesecurity interface checks whether the PRO/JCL user is authorized to access these datasets.

If the security interface determines that the user does not have appropriate access to a file, it returns a non-zero returncode to PRO/JCL in register 15, and PRO/JCL will not attempt to access the dataset. This prevents access violations and S-913 abends. The interface returns a message code to PRO/JCL indicating which message to display on the Structured JCLListing (SJL). The PRO/JCL run continues.

Dataset Name Access Checking

When an MVS user submitting a job lacks appropriate authorization to access a dataset used in the job, the job fails withan access violation. Dataset name access checking validates the access to all datasets within the job stream beingscanned by PRO/JCL. To enable this function, set the Check DSN Access Run-Time Option to Y.

If you do not need dataset name access checking for a PRO/JCL job, set the Check DSN Access Run-Time Option to N toimprove performance. See the topic - Run-Time Settings and the topic - Run-Time Settings in the System Administratordocumentation for information about RTS options and how to set them.

When this option is turned on, PRO/JCL calls the security interface to do dataset name access checking for every DDstatement in the JCL input stream that contains a dataset name. The expected access of Read, Update, or Alter isdetermined from the DISP parameter specified in the DD statement. This can be overridden by the I/O code (+I, +O) inthe JCL comment field. If the security interface returns a non-zero return code (in register 15) from this call, PRO/JCLdisplays a message in the Structured JCL Listing (SJL).

PRO/JCL normally uses the TSO logon ID of the person submitting the PRO/JCL job to validate dataset name access.However, if the input JCL stream being scanned contains a JOB statement with the USER= parameter, or a //*LOGONIDstatement, security checks will bemade by PRO/JCL using that ID to validate dataset name access. MVS requires PRO/JCLto be APF-authorized to perform this alternate user ID validation. Alternate user ID validation is always available whenrunning PRO/JCL in the foreground, because foreground execution uses the product started task, which is APF-authorized.

In batch, PRO/JCL uses the alternate user ID to check access to datasets when running APF-authorized, and the logon IDof the user who submitted the PRO/JCL job when running not APF-authorized.

245

Security Interfaces

Page 253: ASG-PRO/JCL Reference Guide

PRO/JCL Termination

PRO/JCL notifies the security interface before terminating. This allows the security interface to free allocated storage andperform any other needed termination tasks.

Customizing the Security InterfaceThe PRO/JCL security interface can work with the RACF, CA-TOP SECRET, or CA-ACF2/MVS, security system.

If your site has special requirements for the PRO/JCL security interface or your site wants to turn off the PRO/JCL Securityinterface, then you must specify the appropriate option at installation step 1.

See the topic - Customizing the Security Interface in the System Administrator documentation for programmingconsiderations.

Program Requirements

The following actions are required for the interface program to function properly:

l On entering the security interface, save all register contents.

l Before returning to the calling routine, restore all registers except Register 15, and ensure that Register 15contains the appropriate return codes:

– Zero: PRO/JCL issued no messages.– Non-zero: PRO/JCL issued themessage whose ID is returned in SIPMSGCD in the Security Interface Parameter

list (see Security Interface Parameter List), or message 20780 (“Access to this dataset denied by SAF interface”)if SIPMSGCD does not contain a message ID.

Registers Used by the Security Interface Program

Each time the security interface is called, the registers are set as follows:

Register Contents

1 Address of the Security Interface Parameter (SIP) list.

13 Address of a standard MVS register save area.

14 Return address.

15 Entry point address of the security interface routine.

Security Interface Register Usage

PRO/JCL passes the name of the dataset, the user ID and group ID, and other information to the security interfacemodule in a control block called the Security Interface Parameter (SIP) list.

246

ASG-PRO/JCL Reference Guide

Page 254: ASG-PRO/JCL Reference Guide

OffsetsDec (Hex) Type Length Name Description

0 (00) Character 4 SIPID Control block ID ('SIP').

4 (04) Address 4 SIPSADDR Virtual address of SIP.

8 (08) Character 1 Reserved field.

9 (09) Character 11 SIPRSN

Reason security interface is being called. Thefollowing are used for PRO/JCL access control:

C'CATALOG REA' -Read the user catalog.

C'DYN ALLOC ' -Allocate a library needed byPRO/JCL.

C'EDIT REQST ' -Edit the dataset using ISPFEdit.

C'IMS LIBRARY' -Read data set for IMSprocessing.

C'JCLLIB READ' -Read dataset to obtaincataloged procedures and INCLUDE libraries.

C'MBR SELECT ' -Read JCL dataset.

C'READ CC MBR' -Read dataset for controlcard processing and PDS member verification.

C'STEPLIB REA' -Read dataset for PGMverification.

C'VTOC READ' -Read VTOC for datasetvalidation.

C'DSN AUTH CK' -PRO/JCL DSNAMEValidation: Validate the expected access to thedataset currently being scanned by PRO/JCL. Ifthe dataset field SIPDSN is blank, validate theUSER and/or GROUP name fields, SIPUSRID andSIPGRPID.

C'TERMINATION' -PRO/JCL has completedvalidation and is terminating.

20 (14) Character 44 SIPDSN

Dataset name to be used for validation. This fieldis blank for the termination call, and is also blankwhen it is called by PRO/JCL to validate the USERand/or GROUP parameters from a JOB card being

Security Interface Parameter List

247

Customizing the Security Interface

Page 255: ASG-PRO/JCL Reference Guide

OffsetsDec (Hex) Type Length Name Description

scanned.

64 (40) Character 6 SIPVOL Volume serial number of the dataset, if available.

70 (46) Character 1

SIPTYPESIPREADSIPUPDATSIPALTER

Type of access desired:C'R' -Read access.C'W' -Read and write access.C'A' -Alter access.

71 (47) Character 1

SIPDVTYPSIPDASDSIPTAPESIPUNKWN

Device type:C'D' -DASD device.C'T' -Tape device.C'U' -Unknown device.

72 (48) Character 8 SIPUSRID

For DSNAME validation only. Contains USER fieldfrom the JOB statement of the job currently beingscanned, or if not specified, the user ID of theuser who submitted the scan.

80 (50) Character 8 SIPGRPIDFor DSNAME validation only; contains GROUPfield from JOB statement of job currently beingscanned.

88 (58) Fixed 4 SIPUSERX

Reserved for security interface use. This field isinitialized to binary zeros when the securityinterface is initially loaded and is not modifiedfurther; it is to be used exclusively by the securityinterface.

92 (5C) Fixed 4 SIPMSGCD This field is used to return themessage ID of themessage to be displayed on the SJL.

96 (60) Character 3 SIPRC1This field is used to return a 3-character returncode to be placed in a message.

99 (63) Character 3 SIPRC2This field is used to return a 3-character returncode to be placed in a message.

102 (66) Character 3 SIPRC3This field is used to return a 3-character returncode to be placed in a message.

106 (6A) Fixed 2 Reserved field.

108 (6C) Character 8 SIPPGMNM For DSNAME validation only. This field contains

248

ASG-PRO/JCL Reference Guide

Page 256: ASG-PRO/JCL Reference Guide

OffsetsDec (Hex) Type Length Name Description

program name for EXEC PGM= statement ofcurrent step being scanned.

116 (74) Character 8 SIPJOBNMFor DSNAME validation only. This field containsthe job name of the current job being scanned.

124 (7C) Character 20 SIPPRGMRFor DSNAME validation only. This field containsprogrammer name field that was coded on theJOB statement of the current job being scanned.

144 (90) Character 144 SIPACCTGFor DSNAME validation only. This field containsthe accounting field that was coded on the JOBstatement of the current job being scanned.

288 (120) Character 8 SIPDDFor DSNAME validation only. This field containsthe name of the DD statement that is associatedwith the dataset name.

296 (128) Character 8 SIPSECLBFor DSNAME validation only. This field containsthe SECLABEL parameter that was coded on theJOB statement of the current job being scanned.

249

Customizing the Security Interface

Page 257: ASG-PRO/JCL Reference Guide

Selection ExitWith PRO/JCL's Selection Exit (REI) facility, a user may simulate various pre-processors without actually changing the JCLsource nor outputting changed JCL to an output dataset. PRO/JCL reads a member, then applies the Selection Exit, thenvalidates the JCL. The user develops the Selection Exit in REXX using the REI functions (see Selection Exit API Calls).

To makemodifications to input records prior to validating them, use a Selection Exit from any of PRO/JCL's operationalsessions: interactive sessions use the PRO/JCL Validation or the Develop JCLManipulation Programs panels; ISPF Editsessions use the PRO/JCL JJ Edit macro by turning on the Selection Exit facility, then invoking PRO/JCL for a member;batch sessions include the Selection Exit name in the JCL that calls PRO/JCL.

JCL modifications include inserting, deleting or replacing records. The JCL modifications are not saved and are written tothe Output Libraries. Modifications are reported in the SJL so that you can review and take action against any items orerrors PRO/JCL finds.

With a Selection Exit specified, PRO/JCL reads a completemember or sequential file into memory. Then, PRO/JCL invokesthe Selection Exit to perform its preprocessing before scanning the JCL. All the records from themember or file areavailable to the Exit. After preprocessing with the Exit, PRO/JCL starts its scanning. For instance, if you scan fivemembersin a single run, then for each member, PRO/JCL invokes the Selection Exit and scans the JCL.

l There are several System-Level APIs which you may use with Selection Exits. See the topic - System-levelFunctions in the Using PRO/JCL with JMP documentation for further information.

l If you are adding and deleting records, the record numbers change. For example, if there are five records andthe Selection Exit deletes record 4, where is record 5? This can become quite confusing. To solve thisproblem, PRO/JCL keeps track of your changes and leaves the records in their original location. In thisexample, record 5 remains record 5.

l The results of SAY statements in the REI REXX members are posted to the output member of the startedtask.

n Preparing to use PRO/JCL Selection Exits

n Selection Exit API Calls

n Sample Batch Run

Preparing to use PRO/JCL Selection ExitsUse the JJ Edit Macro settings panel, or the PRO/JCL Validation or JMP panels for either foreground or backgroundmode, to invoke a Selection Exit. The started task JCL must bemodified and the user's selection exit member specified.

To prepare PRO/JCL

1. In the DSSISTC started task JCL, uncomment the SYSEXEC DD statement.

2. Specify the library where the Selection Exit will be stored.

250

ASG-PRO/JCL Reference Guide

Page 258: ASG-PRO/JCL Reference Guide

//DSSISTCR PROC//*//********************************************************************//* STARTED TASK PROC FOR PRO/JCL AND INFO/X//*//* MEMBER NAME : DSSISTCR (BUILT FROM SKELETON: D0SIIJ12)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************// SET SOUT='X'// SET HLQ='DSSI.Rnnn.TAPE'// SET PCHLQ='DSSI.Rnnn.TAPE'

...//*SYSUDUMP DD SYSOUT=&SOUT//*DSNTRACE DD SYSOUT=&SOUT//SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC

INSTALL Library Member DSSISTC - Started Task Procedure

3. In the Settings action bar item on the Validation, JMP, or JJ Edit Macro Settings panels, choose Selection Exitfrom the pull-down menu.

12 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

Selecting Selection Exit from the Settingpull-down

4. Specify the Selection Exit information:

l Enter the REXX Selection Exit Name, up to eight characters, in the Name field.

l When needed, enter a parameter, up to 45 characters, in the Parm field; it is passed to the Selection Exit.

Specify Selection Exit Information

Command ===>

Selection Exit:Name: SELEXITParm: PARM PASSED TO SELEXIT

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Specify Selection Exit Information panel

251

Preparing to use PRO/JCL Selection Exits

Page 259: ASG-PRO/JCL Reference Guide

l When a user enters a Selection Exit name in this manner from any of these panels:

o PRO/JCL Validationo Develop JCLManipulation Programso JJ Edit Macro Settings

l PRO/JCL saves the name in the user's ISPF profile. When the same user invokes PRO/JCL from either of theinteractivemethods, PRO/JCL calls the saved Exit.

Invoking a Selection Exit in Batch Mode

When invoking a Selection Exit in batch mode, specify the SYSEXEC DD statement in the PR1PROC JCL procedure andinclude the Selection Exit name in the PRO/JCL input statement.

To invoke a selection exit

1. Edit PR1PROC. Specify the library where the Selection Exit will be stored. (1)

//********************************************************************//* PR1PROC - PROC//*//* MEMBER NAME : PR1PROC (BUILT FROM SKELETON: D0SIIJ10)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************//PR1PROC PROC HLQ=---HLQ---,// DB2EXIT=---DB2EXIT---,// DB2LOAD=---DB2LOAD---,// CICSLOAD=---CICSLOAD---,// PARMPGM='DJ0CBNW',// PROD='-PROJCL',// PCHLQ=---PCHLQ---//*//PROJCL EXEC PGM=DJ0YINIB,REGION=0M,PARM='&PARMPGM /&PROD'//STEPLIB DD DISP=SHR,DSN=&HLQ..LOAD// DD DISP=SHR,DSN=&DB2EXIT// DD DISP=SHR,DSN=&DB2LOAD// DD DISP=SHR,DSN=&CICSLOAD//PCFILE DD DISP=SHR,DSN=&PCHLQ..PCFILE//JPCONFIG DD DISP=SHR,DSN=&HLQ..SPJMCNTL(BATCONF)

1. //SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC//SYSTSPRT DD SYSOUT=*

•••

//*SYSUDUMP DD SYSOUT=* SYSTEM DUMP OUTPUT//*// PEND**************************** Bottom of Data **************************

Sample PRO/JCL Procedure PR1PROC

2. Edit the JCL that calls PR1PROC. Enter a Selection Exit member name (2) and parameter(3) in the PRO/JCL inputstatement as shown in the below figure:

252

ASG-PRO/JCL Reference Guide

Page 260: ASG-PRO/JCL Reference Guide

//MYPROJ JOB (ACCT),BUILD,MSGCLASS=X,NOTIFY=&SYSUID// JCLLIB ORDER=(DSSI.Rnnn.TAPE.INSTALL)//GLOBAL INCLUDE MEMBER=IXINIX//********************************************************************//* PRO/JCL - EXECUTE BATCH UPDATE//********************************************************************//STEP1 EXEC PR1PROC,// PROD='-PROJCL'//SYSEXEC DD DSNAME=SYSUSR.USU.EXEC,DISP=SHR//MYSTUFF DD DISP=SHR,DSN=SYSUSR.MY.LOAD//SYSIN DD *%% INPUT DSNAME='MYSYSS.WORK.LIB',%% SELECT=PJGL0020,%% TYPE=PDS,%% PROCESS=JOB,%% RTSMEMBER=DEFAULT,

2. %% SELECTIONEXIT=SELEXIT,3. %% SELECTIONEXITPARM='parm passed to selexit',

%% REPORTSTYLE=PAPER,%% REPORTS=(SJL)

Specifying a Selection exit and parameter to a PRO/JCL batch run.

Selection Exit API CallsREIinsertNthRec

Syntaxxx = dssiapi("REIinsertNthRec", n, insertrec);

DescriptionREIinsertNthRec adds a new record. This function accepts a number n and a record as parameters, and inserts therecord in the nth location.

Input Parametersn A REXX variable or string literal for the line before which the record in insertrec is inserted.

insertrec A REXX variable or string literal containing the inserted record.

ReturnsThis call does not return a value. Evaluate JPRC.

JPRC Valuesl OK - Record inserted.

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

REXX CodeThis REXX shows the insertion of a JES 2 priority record.

253

Selection Exit API Calls

Page 261: ASG-PRO/JCL Reference Guide

/*REXX*/say 'inserting record'insertrec = '/*PRIORITY 3'xx = dssiapi("REIinsertNthRec", 1, insertrec);

Sample REXX for REIinsertNthRec

Input JCL

//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440//STEP1 EXEC PGM=IEFBR14//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)

Sample input JCL for REIinsertNthRec

Resulting SJLThis SJL shows the inserted record.

)APRIORITY 3//SYSUSRX JOB ACCT,'NAME',NOTIFY=SYSUSR,MSGLEVEL=1,// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440// SET MYPARM=CATLG//STEP1 EXEC PGM=IEFBR14//PCFDEL DD DSN=SYSUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,&MYPARM)-- DISP=(SHR,KEEP,CATLG)--- END OF STEP ------ END OF JOB ---

Partial SJL for REIinsertNthRec

REIhowManyRecs

Syntaxnbrofrecs = dssiapi("REIhowManyRecs");

DescriptionREIhowManyRecs returns the number of records available to a Selection Exit. This number can be used as a loopterminator in REXX.

Input ParametersREIhowManyRecs takes no input parameters.

ReturnsThis call returns the number of records read by PRO/JCL.

JPRC Valuesl OK

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

254

ASG-PRO/JCL Reference Guide

Page 262: ASG-PRO/JCL Reference Guide

Example

REXX CodeThis REXX shows the use of REIhowManyRecs in a sample to delete records.

/*REXX*/nbrofrecs = dssiapi("REIhowManyRecs");nthrec = 1do while nthrec <= nbrofrecs

/* REMOVE ALL COMMENT RECORDS */recordread = dssiapi("REIgetNthRec", nthrec);posnbr = pos('//*',recordread)if posnbr > 0 then do

xx = dssiapi("REIdeleteNthRec", nthrec)endnthrec = nthrec + 1

end

Sample REXX for REIhowManyRecs

Input JCL

//* JOB AND ACCOUNT//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,//* USER NAME AND NOTIFY PARTY// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440//* MESSAGE CLASS AND REGION//STEP1 EXEC PGM=IEFBR14//*BEGIN THE BR14 STEP//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)

Sample input JCL for REIhowManyRecs

Resulting SJL

********************************************************** Results of processing ASGUSR.REI.JCL(H5A004B) **********************************************************

(D* JOB AND ACCOUNT//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,(D* USER NAME AND NOTIFY PARTY// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440(D* MESSAGE CLASS AND REGION//STEP1 EXEC PGM=IEFBR14(D*BEGIN THE BR14 STEP//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)--- END OF STEP ------ END OF JOB ---

Partial SJL for REIhowManyRecs

REIgetFileName

Syntaxfilename = dssiapi("REIgetFileName");

255

Selection Exit API Calls

Page 263: ASG-PRO/JCL Reference Guide

DescriptionREIgetFileName returns the library and member name that contains the first record in the Input JCL.

Input ParametersREIgetFileName takes no input parameters.

ReturnsThis call returns the name of the file from which the records were read.

JPRC Valuesl OK

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

REXX Code

/*REXX*/filename = dssiapi("REIgetfilename")say file name is filename

Sample REXX for REIgetFileName

Input JCLInput JCL is not of compelling interest for this API call.

Output to Started Task

FILE NAME IS SYSUSR.REI.JCL(H5A004A)

Sample SAY statement output to the Started taskfor REIgetFileName

REIgetNthRec

Syntaxrecordread = dssiapi("REIgetNthRec", n);

DescriptionREIgetNthRec retrieves a record to process. This function accepts a number n as a parameter and returns the nthstatement.

Input Parametersn A REXX variable or string literal containing the number of the record to get.

ReturnsThis call returns record to a REXX variable.

256

ASG-PRO/JCL Reference Guide

Page 264: ASG-PRO/JCL Reference Guide

JPRC Valuesl OK

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

REXX CodeThis REXX shows howREIgetNthRec retrieves the nth record based on the original record count not the count based onchanges made by REI calls.

/*REXX*/insertrec = '/*PRIORITY 3 'xx = dssiapi("REIinsertNthRec", 1, insertrec)nthrec = dssiapi("REIgetNthRec", 1)say "the retrieved record is "nthrec

Sample REXX for REIgetNthRec

Input JCLThe REXX adds a JES2 priority statement before the JOB card.

//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440//STEP1 EXEC PGM=IEFBR14//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)

Sample input JCL for REIgetNthRec

Output to Started TaskThis output demonstrates what happens to the record count when a record is inserted. Note that although a record wasinserted as a new first record, PRO/JCL retrieves the JOB card as the first record.

the retrieved record is //ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,

Sample SAY statement output to the Started task for REIgetNthRec

REIreplaceNthRec

Syntaxxx = dssiapi("REIreplaceNthRec", n, reprec);

DescriptionREIreplaceNthRec replaces a record. This function accepts a number n and a record as parameters, and replaces therecord in the nth location.

Input Parametersn A REXX variable or string literal containing number of the record to be replaced.

reprec A REXX variable or string literal containing the text of the replacement record.

257

Selection Exit API Calls

Page 265: ASG-PRO/JCL Reference Guide

ReturnsThis call does not return a value. Evaluate JPRC.

JPRC Valuesl OK

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

REXX CodeThis REXX code shows how to replace a record. It looks for a comment record beginning with //**** and replaces it with//*

/*REXX*/nbrofrecs = dssiapi("REIhowManyRecs");nthrec = 1do while nthrec <= nbrofrecsrecordread = dssiapi("REIgetNthRec", nthrec);cmtposnbr = pos('//****',recordread)if (cmtposnbr > 0) then do

reprec ='//*'recordread = dssiapi("REIreplaceNthRec", nthrec, reprec);

endnthrec = nthrec + 1

end /*do*/

Sample REXX for REIreplaceNthRec

Input JCL

//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,//****************************// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440//****************************//STEP1 EXEC PGM=IEFBR14//****************************//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)

Sample input JCL for REIreplaceNthRec

Resulting SJLThe (O lines are removed and the )M* lines are added.

258

ASG-PRO/JCL Reference Guide

Page 266: ASG-PRO/JCL Reference Guide

********************************************************** Results of processing ASGUSR.REI.JCL(H5A004B) **********************************************************

//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,(O****************************)M*// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440(O****************************)M*//STEP1 EXEC PGM=IEFBR14(O****************************)M*//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)

Partial SJL for REIreplaceNthRec

REIdeleteNthRec

Syntaxxx = dssiapi("REIdeleteNthRec", n);

DescriptionREIdeleteNthRec deletes a record. This function accepts a number n as a parameter and deletes the nth record.

Input Parametersn A REXX variable or string literal containing the number of the record to be deleted.

ReturnsThis call does not return a value. Evaluate JPRC.

JPRC Valuesl OK

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

REXX CodeThis code deletes records that begin with //* (comment records).

/*REXX*/nbrofrecs = dssiapi("REIhowManyRecs");nthrec = 1do while nthrec <= nbrofrecs

/* REMOVE ALL COMMENT RECORDS */recordread = dssiapi("REIgetNthRec", nthrec);posnbr = pos('//*',recordread)if posnbr > 0 then do

reprec ='//*' || recordreadxx = dssiapi("REIdeleteNthRec", nthrec)

endnthrec = nthrec + 1

end

Sample input JCL for REI

259

Selection Exit API Calls

Page 267: ASG-PRO/JCL Reference Guide

Input JCL

//* JOB AND ACCOUNT//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,//* USER NAME AND NOTIFY PARTY// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440//* MESSAGE CLASS AND REGION//STEP1 EXEC PGM=IEFBR14//*BEGIN THE BR14 STEP//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)

Sample input JCL for REIdeleteNthRec

Resulting SJL

********************************************************** Results of processing ASGUSR.REI.JCL(H5A004B) **********************************************************

(D* JOB AND ACCOUNT//ASGUSRX JOB ACCT,'NAME',NOTIFY=ASGUSR,MSGLEVEL=1,(D* USER NAME AND NOTIFY PARTY// MSGCLASS=X,REGION=0M,CLASS=F,TIME=1440(D* MESSAGE CLASS AND REGION//STEP1 EXEC PGM=IEFBR14(D*BEGIN THE BR14 STEP//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,KEEP,KEEP)--- END OF STEP ------ END OF JOB ---

Partial SJL for REIdeleteNthRec

Sample Batch RunThe following example shows a batch run using a Selection Exit, and the resulting Structured JCL Listing (SJL).

Sample REXX Selection ExitItems to note are:

l API call to insert a JES2 priority statement. (1)

l API call to replace a record as a comment. (2)

l API call to delete any records with the literal 'NONJCL.' (3)

260

ASG-PRO/JCL Reference Guide

Page 268: ASG-PRO/JCL Reference Guide

/*REXX */

/*INSERT A JES2 PRIOIRITY STMT BEFORE THE JOB RECORD */inserthisrec = '/*PRIORITY 3'

1 xx = DSSIAPI("REIinsertNthRec", 1, inserthisrec);nbrofrecs = dssiapi("REIhowManyRecs");

nthrec = 1do while nthrec <= nbrofrecs

recordread = dssiapi("REIgetNthRec", nthrec);/* REPLACE A RECORD WITH '++' CODED AS A COMMENT */posnbr = pos('++',recordread)if posnbr > 0 then do

reprec ='//*' || recordread2 xx = dssiapi("REIreplaceNthRec", nthrec, reprec)

endelse do

posnbr = POS('NONJCL',RECORDREAD)IF posnbr > 0 THEN DO

/* DELETE RECORDS WITH 'NONJCL' CODED */3 XX = DSSIAPI("REIdeleteNthRec", nthrec);

ENDendnthrec = nthrec + 1

endexit(0)

EXEC Library member SELSAMP

Input JCLSample input JCL to be validated by PRO/JCL.

//SELJCL JOB//JOBLIB DD DSN=SYS1.LOAD,// DISP=SHR//S1 EXEC PGM=IEFBR14//++ THIS RECORD SHOULD BE MODIFIED INTO A COMMENT CARD//S2 EXEC PGM=IEFBR14//DD1 DD DSN=SYS1.CNTL,DISP=SHR//S3 EXEC PGM=SYS1,PARM='THIS IS A SPECIAL PROGRAM'//DD1 DD DUMMY// THIS IS NONJCL.... PLEASE OMIT

SPJMSAMP Library member SELJCL

Input ParametersInput statement parameters used to invoke the sample REXX Selection Exit.

//SYSIN DD *%% INPUT DSNAME='SYS1.WORK.CNTL',%% SELECT=SELJCL,%% TYPE=PDS,%% PROCESS=JOB,%% RTSMEMBER=DEFAULT,%% SELECTIONEXIT=SELEXIT,%% SELECTIONEXITPARM='PARMPASSEDTOSELEXIT',%% REPORTSTYLE=PAPER,%% REPORTS=(SJL)

The SELECTIONEXITPARM is not used in this example but shown here for completeness.

261

Sample Batch Run

Page 269: ASG-PRO/JCL Reference Guide

Resultant SJLThe Structured JCL Listing generated from PRO/JCL, including the results of the API calls referenced in SPJMSAMP Librarymember SELJCL.

*******************************************************************************STRUCTURED JCL LISTING SELECTION EXIT TEST==============================================================================PRO/JCL RELEASE RTS MEMBER: DEFAULT Reformatter Member: DEFAULT Secur===============================================================================

1 )A /*PRIORITY 3//SELJCL JOB//JOBLIB DD DSN=SYS1.LOAD,// DISP=SHR//S EXEC PGM=IEFBR14

E1 - DSS20021A - 'SELJCL S': STEP WAS SIMULATED, COND CODE '0000'.2 (O //++ THIS RECORD SHOULD BE MODIFIED INTO A COMMENT CARD2 )M //*//++ THIS RECORD SHOULD BE MODIFIED INTO A COMMENT CARD

--- END OF STEP ---//S2 EXEC PGM=IEFBR14

E2 - DSS20021A - 'SELJCL S2': STEP WAS SIMULATED, COND CODE '0000'.//DD1 DD DSN=SYS1.CNTL,DISP=SHR

E3 - DSS20110A - DATA SET 'SYS1.CNTL' STATUS UNCHANGED ON VOLSER(S) 'D--- END OF STEP ---//S3 EXEC PGM=SYS1,PARM='THIS IS A SPECIAL PROGRAM'

E4 - DSS20021A - 'SELJCL S3': STEP WAS SIMULATED, COND CODE '0000'.//DD1 DD DUMMY

3 (D // THIS IS NONJCL.... PLEASE OMIT--- END OF STEP ------ END OF JOB ---

JOB SELJCL CONSISTS OF 3 PROGRAM(S), 0 PROC(S), 0 INCLUDE(S), 3 DD STATEMENT(S)

Sample SJL Output

Shared PC FileThis topic describes about the shared PC File facility, which enables multiple products and users, running on differentmachines and platforms, to take direction from a single primary PC File.

n Overview

n PC File Synchronization

n Web Browser Status Requests

OverviewASG's shared PC File facility enables a site to direct the actions ofmultiple users, running on different machines andplatforms, from a single PC File. When an option, password, administration setting, or selection list is set, PRO/JCL usesthat information for all users on all sharing machines. This is done by designating one started task as the primary andthen defining all the others as secondary started tasks, making a network.

The following functions are supported when using a shared PC File:

l Global product administration from any point on the network.

l Usage data collection at a single point.

l RTS member sharing on all systems.

262

ASG-PRO/JCL Reference Guide

Page 270: ASG-PRO/JCL Reference Guide

l Multiple primary started tasks. For example, the production and test environments at a site can be configured tohave separate primary started tasks and PC Files.

Terminology

Batch A process that runs independently of the PRO/JCL started task.

Client

Any program that establishes a connection to a server in order to access a shared PCFile. The following are valid client types:

l Batch Job

l Secondary PC File started tasks

l TSO/ISPF User

Host A symbolic name assigned to any IP address.

IP Address Identifies themachine on a network and the network to which themachine is attached.

ListenerA program in a Primary Started Task that listens on a specific TCP/IP port for aconnection request from a client.

Primary Started Task

The Primary Started Task maintains the PC File containing all the settings andconfiguration information for PRO/JCL. PRO/JCL updates this file for each change in anRTS member and each validation run. There is only one Primary PC File in a givennetwork of PRO/JCL started tasks.

Port The ASG default port for shared started task is 1265.

Processor task A component of the PRO/JCL started task that handles user requests for service.

Product Control File (PCFile)

This file (VSAM organized) contains all the information necessary to run PRO/JCL.Specifically, the following items are contained in the PC File:

l Run-Time Settings (RTS members)

l Error Messages

l Administration Settings

l Product Password

l Reformatter Settings

l Selection Lists

l Usage Information

l Certain static product release information

ServerA collection of related programs, such as the processor task, scanner and PC File server,that function in cooperation with one another to satisfy the requests of a client.

Secondary Started TaskThe Secondary Started Task refers all PC File access to the primary. Therefore, allsettings come from and are set in the primary. The secondary file is a back-up to the

263

Overview

Page 271: ASG-PRO/JCL Reference Guide

primary, used only when the primary is unavailable; PRO/JCL does not make updatesdirectly to the secondary PC File at anytime, but only through synchronizations. See PCFile Synchronization.

Usage Information

Records in the PC File that store data on each PRO/JCL usage. These records are writtenby the started tasks; any process (such as batch) that elects not to use the started taskskips writing usage data to the PC File.

To maintain usage statistics for scans performed in batch, turn on theEnable Batch Usage Statistics option in the ENABLE ADVANCED FEATURESsection of the Installation Interface.

What is a Primary Started Task?

A primary started task has these properties:

l Maintains the primary PC File in read-write mode. It alone writes data to the primary PC File.

l Has an enabled TCP/IP connection.

l Uses its own PC File to run PRO/JCL locally.

l Acts as a server to other started tasks or batch processes needing to connect to the primary PC File.

What is a Secondary Started Task?

A secondary started task has these properties:

l Accesses the primary PC File for needed run-time data; static product release information is retrieved locally.

l Maintains, through periodic synchronizations, a read-only copy of the primary PC File which is used only if theprimary is unavailable.

Processor Task - User Interaction

Users interact with PRO/JCL through processor tasks. Processor tasks act in parallel to make one started task available tomany users simultaneously. A processor task is serially used by multiple users. Each time a user starts an EDIT macro orpanel execution, PRO/JCL gives that validation to a processor task; the processor task might have been used by adifferent user requiring different settings. The PC File is accessed for each processor task and each validation so that thecurrent user's needs aremet and data no longer needed are discarded. PRO/JCL starts new processor tasks as users’needs dictate.

Security

The primary PC File is protected by two levels of security:

Server restrict

Controls what clients can use the primary PC File. This is based on the address of theclient. For example, if you have only one secondary PC File you can specify that client asthe only one authorized to use the primary PC File. If the IP address of a clientrequesting access does not match the authorized address(es), access is denied.

Connection contokenThe connection contoken acts like a password to the primary PC File. The installer of theprimary PC File can require any incoming requests provide a connection contoken.

264

ASG-PRO/JCL Reference Guide

Page 272: ASG-PRO/JCL Reference Guide

Without the correct password, the connection request is rejected and access to theserver is denied.

Both of these security features are controlled within the product configuration file. For more information, seeConfiguration File.

How Primary and Secondary Started Tasks Interact

Whenever a user enters the PRO/JCL ISPF panels or executes JJ on a secondary machine, a connection to the primary PCFile is automatically established between started tasks. All requests to read or write PC File information, including theupdating to users’ RTS members, are passed from the secondary to the primary. Usage data is never updated on thesecondary PC File.

Becausemultiple users through processor tasks establish multiple connections to the primary started task, configurationissues, especially WAN configuration issues, can affect performance. As processor tasks acquire users and do validationseach connection can carry about 100K of information for each validation, getting new PC File data for each instance anddiscarding older data. So, with dozens or even hundreds of users accessing a shared PC File, network congestion,serialization delay, and other WAN issues can have a noticeable performance impact on some users.

How a Secondary Started Task Acts on its Own

The connection to the primary PC File can fail for any reason:

l The listener on the primary started task might not be running

l The primary started task might be down

l The TCP/IP connection between secondary and primary might be down

l The primary machinemight be down.

In any case, PRO/JCL switches to the local secondary PC File. This allows the users to continue without interruption.PRO/JCL does not make updates directly to the secondary PC File at anytime, so while the primary is unavailable,PRO/JCL saves no changes to the PC File data. See the definition of Product Control File (PC File) under Terminology.

If a new user starts after the primary PC File becomes available, that user will automatically use theprimary PC File.

Sample ISPF Session

The following diagram illustrates a typical primary/secondary PC File configuration and ISPF users. In this example,

l Machine A is a z/OS machine that runs Started Task A, owning the primary PC File.

l Machine B is a z/OS machine that runs Started Task B, managing the secondary PC File.

To access the primary PC File, the Started Task on Machine B connects to Started Task A on Machine A through theListener running on Started Task A. Thereafter, the processor tasks communicate directly with each other.

265

Overview

Page 273: ASG-PRO/JCL Reference Guide

ISPF users shared PC File architecture

PRO/JCL starts Processor Task 3 for user 3 when Processor Tasks 1 and 2 are occupied.

Sample Batch Session

Batch jobs on a secondary machine work somewhat differently than ISPF sessions by using the independent batchprocessor. It accesses the primary started task directly which in turn, writes usage data to the PC File. See path 1A in thebelow figure.

Depending upon configuration, batch jobs on the primary machine can access the PC File through the primary startedtask, which writes usage data to the PC File (see path 1B in the below figure); or batch jobs can bypass the started taskand also bypass writing usage data (see path 2 in the below figure) to the PC File.

266

ASG-PRO/JCL Reference Guide

Page 274: ASG-PRO/JCL Reference Guide

Batch users architecture

PC File SynchronizationA secondary PC File contains a copy of the data from the primary PC File. In order to ensure that the secondary PC File isup-to-date, the secondary started task periodically synchronizes with the primary PC File. The secondary PC File containsthe timestamp of the primary PC File. During synchronization, the primary started task compares the secondarytimestamp to the primary timestamp. Unequal times indicate that a synchronization is needed. If one is needed, recordsin the primary PC File that have been updated since the last synchronization are copied to the secondary PC File. RTSmembers and other user data in a secondary PC File are never updated directly, but only through synchronization. Usagedata is never updated on the secondary PC File.

There are two ways to synchronize PC Files:

l Automatic - done periodically by a PRO/JCL secondary started task and requires no user-intervention.

l Manual - done by the administrator to force a synchronization.

Automatic Synchronization

The secondary started task initializes the synchronization of the PC Files and connects to the primary started task everytwo hours to update the secondary PC File.

267

PC File Synchronization

Page 275: ASG-PRO/JCL Reference Guide

PC File synchronization mechanism

If the program is unable to connect at the scheduled time interval, the secondary task tries toconnect every 15 minutes until a connection is established and synchronization done.

Manual Synchronization

There are two methods ofmanual synchronization:

l Operator command

l A batch job

Operator Command Synchronization

To force a synchronization on a machine with a running secondary started task, enter the following console command onthe secondary system:

F stcname,SYNC

where stcname is the name of the started task on the secondary system.

Themechanism is the same as PC File synchronization mechanism.

Sample Batch Synchronization

There are two scenarios for batch synchronization; both use INSTALL member DJ0CSYNC and do not require a startedtask:

l If the remote connection parameters for the PC File host were specified during installation, you can submit theDJ0CSYNC job to TSO as is.

268

ASG-PRO/JCL Reference Guide

Page 276: ASG-PRO/JCL Reference Guide

l If the remote connection parameters for the PC File host were not specified during installation, use these stepsto modify DJ0CSYNC and synchronized the PC Files:

a. Modify the JOB statement as required for your site.

b. Set -S to the IP address or hostname for the remote PC File host (example, 192.168.0.145).

c. Set -P to the port number on which the remote PC File host is listening (example,1266).

d. Submit the job.

1 //DSSnnnQQ JOB (ACCT),INSTALL,MSGCLASS=X,NOTIFY=&SYSUID//********************************************************************//* DJ0CSYNC - USE THIS JOB TO SYNC UP SECONDARY PCFILE TO PRIMARY PCFILE.//*//* MEMBER NAME : DJ0CSYNC (BUILT FROM SKELETON: D0SIIJ47)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************// JCLLIB ORDER=DSSI.Rnnn.TAPE.INSTALL// SET PCHLQ=DSSI.Rnnn.TAPE//********************************************************************

2,3 //DJ0CSYNC EXEC PGM=DJ0CSYNC,PARM='-S192.168.0.145 -P1266'//STEPLIB INCLUDE MEMBER=STEPLIB1//PCFILE DD DSN=&PCHLQ..PCFILE,DISP=SHR//SYSTERM DD SYSOUT=*//SYSPRINT DD SYSOUT=*//SYSOUT DD SYSOUT=*

Sample JCL for batch synchronization program DJ0CSYNC

Web Browser Status RequestsThe HTTP Server is a status server for Web browsers. The HTTP Server can provide the following information:

l Is the listener/started task running?

l Status of the PC File connection. Can a connection be established to the primary PC File? If not, where is theconnection broken?

l Status of the started task. Howmany processor tasks are running?

l Usage records for the primary PC File.

The HTTP Server should be accessed through aWeb browser. To access the server you must know the IP address andport of the listener running on the primary started task.

The /status Request

The /status command asks the started task for a current status. The /status command is entered in the Address orLocation field of your Web browser, and has the following format:

http://IP ADDRESS:PORT/status

where IP ADDRESS is the IP address of the listener (or host name as defined on your network) and PORT is the portnumber that the started task is listening on (1265 in most cases).

269

Web Browser Status Requests

Page 277: ASG-PRO/JCL Reference Guide

To view the status information for a started task

1. Type the IP address for the listener on the started task and the port number for the listener. For example, if theIP address is 192.168.0.145 and the port number is 1265, the /status request would be:

http://192.168.0.145:1265/status

2. Press Enter.

The Status dialog is displayed:

Sample HTTP /status request

Fields

Started Task ID The ID of the started task.

Initial Processor Tasks The processor tasks running on the started task.

Listeners for this started task The listeners running on the started task.

270

ASG-PRO/JCL Reference Guide

Page 278: ASG-PRO/JCL Reference Guide

Columns

Process ID Identifies which processor task is running.

User ID The userid currently using the processor task.

Memory Usage The amount ofmemory the processor task is currently using.

High MemoryThe largest amount ofmemory used by this processor task. Note:Depending on activity, this number could go higher.

DSSIAPI Call The ASG API call most recently active for the processor task.

Session Status

The status of the processor task. The valid values are:

l Busy - Processor task is busy.

l Not Responding - The processor task timed out due to started tasknot responding.

l Timed Out - The processor task timed out due to user inactivity.

Client IP/PortThe IP address of the client connection to the listener port that the client isconnected to.

PCFILE Owner The started task that owns the PC File (primary or local).

Host Name or IPAddress

The host name or IP address for the listener on the primary started task.

Port Number The port number for the listener on the primary started task.

l The HTTP connection appears in the DSSIAPI Call column as /status.

l If the /status request was made to a secondary process (example, a local started task), the owner of the PCFile would be displayed in the PC File Owner column.

The /usage Request

The /usage command is used to view themachines and usage records for any started task running a listener that allowsHTTP status requests. The /usage command is entered in the Address or Location field of your Web browser, and hasthis format:

http://IP ADDRESS:PORT/usage

where IP ADDRESS is the IP address of the listener (or host name as defined on your network) and PORT is the portnumber that the listener is listening on.

271

Web Browser Status Requests

Page 279: ASG-PRO/JCL Reference Guide

To view the usage for all machines using the primary started task

1. Enter the IP address of a listener on the primary started task and the port number for the listener. For example,if the IP address is 192.168.0.145 and the port number is 1265, the /usage request would be:

http://192.168.0.145:1265/usage

2. Press Enter.

The Product Usage for All Machines dialog is displayed:

Sample HTTP /usage request

FieldsMACHINE SUMMARY

This topic summarizes the total usage of all machines that have a listener running on a started task.

Errors ReportedJCL - The number of errors reported to date.Standards - The number of standards errors reported.

272

ASG-PRO/JCL Reference Guide

Page 280: ASG-PRO/JCL Reference Guide

Lines The number of lines processed in all members.

Jobs The number of jobs processed.

PROCS The number of PROCs processed.

Steps The number or steps processed.

DDs The number of DDs processed.

Type of Use/Quantity

The type of processor task running.

l Foreground - The number of ISPF panel invocations.

l Batch - The number of ISPF batch panel invocations.

l JJ/JSCAN - The number of edit macro invocations.

l Directed - The number of Directed Execution invocations.

ColumnsMACHINE DETAIL

This topic lists themachine (system) names using the specified PC File.

Machine Themachine (system) ID using the PC File.

Number of Uses The number of times the PC File was used by themachine.

First Used The date themachine first used the PC File.

Last Used The date themachine last used the PC File.

JCL Errors The number of JCL errors associated with themachine.

To display a list of users for one machine using the primary started task

1. Enter the IP address of a listener on the primary started task and the port number for the listener.

The Product Usage for All Machines dialog is displayed.

2. In theMACHINE DETAIL section of the dialog, click on the desired machine name.

The Product Usage dialog for onemachine is displayed.

273

Web Browser Status Requests

Page 281: ASG-PRO/JCL Reference Guide

Sample HTTP /usage request for one machine

To display a usage record for one userid on a machine

1. Enter the IP address of a listener on the primary started task and the port number for the listener.

The Product Usage for All Machines dialog is displayed.

2. In theMACHINE DETAIL section of the dialog, click on the desired machine name.

The Product Usage dialog for onemachine is displayed.

3. In the LIST OF USERS section of the dialog, click on the desired userid.

The Usage Analysis dialog for the selected user is displayed.

274

ASG-PRO/JCL Reference Guide

Page 282: ASG-PRO/JCL Reference Guide

Sample HTTP /usage request for one user

Started TaskThis topic explains in detail about the started task.

n Started Task Commands

n TCP/IP Started Task Operator Commands

n Started Task Status Output

n Starting Started Task at IPL-Time

Started Task CommandsThe below table lists all of the started task operator commands:

275

Started Task

Page 283: ASG-PRO/JCL Reference Guide

Long Form Short Form Description

START DSSISTC S DSSISTC Start the started task.

STOP DSSISTC P DSSISTC Stop the started task.

CANCEL DSSISTC C DSSISTC Cancel the started task.

MODIFYDSSISTC,LICENSE

F DSSISTC,LICENSE Display the status of the product license for each feature.

MODIFYDSSISTC,LICENSEDISPLAY

F DSSISTC,LICENSEDISPLAY Display the status of the product license for each feature.

MODIFYDSSISTC,LICENSEREFRESH

F DSSISTC,LICENSEREFRESH

Refresh the product information to install a new license key and addor remove product features. Issue this command to install a newproduct license key after executing the APMKEYS to update theproduct license information.

MODIFYDSSISTC,ALLOC

F DSSISTC,ALLOC Display dataset allocations for the started task.

MODIFYDSSISTC,KILL=nnnn

FDSSISTC,KILL=nnnn

Kill processor ID nnnn (0000-9999).

MODIFYDSSISTC,LISTIP

F DSSISTC,LISTIP List all listeners running on a started task.

MODIFYDSSISTC,STARTIP{=port}{,IPAddressorHostName}

F DSSISTC,STARTIP{=port}{,IPAddressorHostName}

Start a listener on a started task.

MODIFYDSSISTC,STATUS

F DSSISTC,STAT Display processor task status.

MODIFYDSSISTC,STOPIP{=port}{,IPAddressorHostName}

F DSSISTC,STOPIP{=port} {,IPAddressorHostName}

Stop a listener on a started task.

MODIFY F DSSISTC,SYNC Synchronize a secondary PC File with the primary PC File.

276

ASG-PRO/JCL Reference Guide

Page 284: ASG-PRO/JCL Reference Guide

Long Form Short Form Description

DSSISTC,SYNC

l You should also make a note that “DSSISTC” is the name of the PRO/JCL instance. The primary PRO/JCLinstance is “DSSISTC”, alternate PRO/JCL instances are “DSSISTC#” where # is the STCID (0-9, A-Z).

l Use the slash (/) prefix on commands entered through the SDSF operator command facility. Do not use theslash prefix on commands entered through the operator console.

l The ALLOC parameter displays the datasets allocated by the started task. The DDs dynamically allocated byuser sessions have the form: Jnnnnxxx, where nnnn is the processor task ID (0000-9999) and xxx is asequential allocation number. You can tell which user's session has allocated which datasets by looking atthe ddnames in the ALLOC display.

l The KILL parameter terminates a user's session in the started task address space. Use the STATUS parameterof theMODIFY command to get the ID of a user's session. Consider the KILL parameter a last resort; the bestway to terminate a user session is to have the user exit from the product.

TCP/IP Started Task Operator CommandsThe following started task operator commands apply to the product TCP/IP listeners. They govern how listeners arestarted and stopped without cycling the started task, and how the parameters for the listeners can bemodified.

CONFIG

The JPCONFIG DD describes the configuration for individual listeners and for remote PC Files. The JPCONFIG DD is readonce at start-up. If the configuration is modified, information should be reloaded into the started task. Any listeners thatare active at that time should be stopped and restarted to take advantage of themodification.

To reload information into the started task

n Issue the following command:

/f {started task},config

where {started task} is the name of the started task.

ListIP

To list all of the listeners running on a started task

n Issue the following command:

/f {started task},listip

where {started task} is the name of the primary started task.

Sample OutputThe results of the ListIP command appear in JESYMSG of the started task. For example:

277

TCP/IP Started Task Operator Commands

Page 285: ASG-PRO/JCL Reference Guide

DSS06657I - TCP/IP was started on these portsPORT=2000 IP=000.000.000.000PORT=2001 IP=000.000.000.000PORT=2002 IP=192.168.0.14

Sample - ListIP command output

This output shows three listeners running on a started task. Port 2000 is active on INADDR_ANY, port 2001 on INADDR_ANY and port 2002 on IP address 192.168.0.14.

StartIP

This command is used to start a listener on a started task. When the StartIP command is issued, the JPCONFIG file is alsoread to determine if there is additional configuration information for the listener (restrict, contoken, etc.).

It is not necessary for the listener to be defined in the JPCONFIG file to use the StartIP command.However, if the listener is defined in JPCONFIG it will be autostarted with the started task.

To start a listener for client connections from any IP address

n Issue the following command:

/f {started task},startip{=port}

where

l {started task} is the name of the primary started task.

l {=port} is the port number of the listener (not required).

To start a listener for client connections from a specific IP address or mask

n Issue the following command:

/f {started task},startip{=port}{,IP Address or Host Name}

where

l {started task} is the name of the primary started task.

l {=port} is the port number of the listener (not required).

l {,IP Address or Host Name} is any valid IP address or host name.

StopIP

This command is used to stop one or more listeners running on a started task.

To stop all listeners

n Issue the following command:

/f {started task},stopip

where {started task} is the name of the primary started task.

Stopping the listener(s) will not terminate existing client sessions, but no new sessions can beinitiated until a listener is started again.

278

ASG-PRO/JCL Reference Guide

Page 286: ASG-PRO/JCL Reference Guide

To stop a listener running on a particular port

n Issue the following command:

/f {started task},stopip{=port}

where

l {started task} is the name of the primary started task.

l {=port} is the port number of the listener.

To stop a listener running on a particular IP address

n Issue the following command:

/f {started task},stopip{=port}{,IP Address or Host Name}

where

l {started task} is the name of the primary started task.

l {=port} is the port number of the listener.

l {,IP Address or Host Name} is any valid IP address or host name.

Started Task Status OutputUse the below figure and the information in this topic to interpret the output from the started task status command.

F DSSISTCD,STATUS+DSS05030I - STARTED TASK IS PROCESSING THE MODIFY COMMAND+STARTED TASK STARTED AT 07:49:29 ON 2017-08-21+STCID=DSSISTCD STCINIPT=04 AUTHTASKS=00+PCBID=0000 PCBSTAT=A USRNAME= SRBRC=000 SRBNTLVL=00 COMM=T+DSSIAPI=TERMSYSTEMAPI CURRENT MEMORY=00034K MAX MEMORY=01509K+JOBS=00002 PROCS=00000 PGMSTEPS=0000001 DDS=0000002 RECORDS=0000007+ERRORS=0000003 STDSMSGS=0000000+PCBID=0001 PCBSTAT=A USRNAME= SRBRC=000 SRBNTLVL=00 COMM=T+DSSIAPI=TERMSYSTEMAPI CURRENT MEMORY=00015K MAX MEMORY=01325K+JOBS=00000 PROCS=00000 PGMSTEPS=0000000 DDS=0000000 RECORDS=0000002+ERRORS=0000001 STDSMSGS=0000000+PCBID=0004 PCBSTAT=B USRNAME=DSSUSR SRBRC=000 SRBNTLVL=00 COMM=T+DSSIAPI=PCFREADDATA CURRENT MEMORY=00029K MAX MEMORY=02290K+DSS05006I - STARTED TASK COMPLETED THE MODIFY COMMAND

Sample output from the DSSISTC status command

Started Task Fields

STCID The name of the started task.

Processor Task Information Fields

PCBID The numeric ID for the processor task.

PCBSTATThe status of the processor task. The STATUS parameter returns one of these values.

A - The processor task is available.

279

Started Task Status Output

Page 287: ASG-PRO/JCL Reference Guide

B - The processor task is busy.

N - The processor task timed out due to started task not responding.

T - The processor task timed out due to user inactivity.

K - The processor task was killed with the Kill command.

X - The processor task incurred an abend.

USRNAME The user ID currently using this processor task.

MAX MEMORYThe largest amount ofmemory used by this processor task. This number is a “high-watermark” ofmemory. Depending on activity, this number could go higher.

CURRENT MEMORY The amount ofmemory the processor task is currently using.

RNAMEThe name of the resource allocated to the processor task. This field is optional. In thesample output, RNAME does not appear because no resources were allocated.

DSSIAPI The ASG API call most recently active for the processor task.

Processor Task JCL Fields

JOBS The number of jobs processed up to the time of the status.

PROCS The number of PROCS processed up to the time of the status.

PGMSTEPS The number of program steps processed up to the time of the status.

DDS The number of dd names processed up to the time of the status.

RECORDS The number of records (lines) processed up to the time of the status.

ERRORS The number of errors recorded up to the time of the status.

STDSMSGS The number of standards violations recorded up to the time of the status.

Starting Started Task at IPL-TimeASG recommends the PRO/JCL started task be started at each IPL.

Consult with ASG Customer Support to determine the best way to implement IPL start up for the started task. Here aresomemethods for starting a started task at IPL time:

l Putting a command in SYS1.PARMLIB(COMMNDxx).

l Adding a command to a NETVIEW auto ops EXEC (either mainframe-based or PC-based).

280

ASG-PRO/JCL Reference Guide

Page 288: ASG-PRO/JCL Reference Guide

l Adding a command to a third party auto ops product (mainframe-based or PC-based).

l Adding a command to a VTAM task starter such as VTAMAPPL.

Running Multiple Started TasksPRO/JCL allows multiple started tasks to be run on the same system by identifying each started task with a unique one-character ID. If you plan to run multiple started tasks, the following considerations must be taken into account:

l Each started task must have a separate PC File (even if it is shared). You cannot run multiple started tasks on thesame system against the same PC File. A unique PC File is required for each started task.

l If a started task uses TCP/IP, it must have a unique port number.

To Create an Additional Started Tasks

Additional started tasks can be created in one of two ways:

n Option 1 - Run the Installation Interface.

a. Enter a unique one-character ID in the Started Task ID field, a PC File high-level qualifier, and portnumber for the started task.

b. Verify the information in the other data-entry fields for the new started task.

This generates a new started task JCL member and associated members for the specified character ID.

Each time you run the Installation Interface it automatically builds certain members based on theinformation provided in the data-entry fields. Existing members will be overwritten by these newmembers. For information about which product libraries and members are affected by theInstallation Interface, contact ASG Customer Support.

n Option 2 - Copy and rename an existing DSSISTC started task member.

a. After you manually create the new started task member from an existing member, you mustinclude the started task ID in the DSSISTC Execute statement in the new started task JCL:

//DSSISTC EXEC PGM=DJ0YINIT,TIME=NOLIMIT,REGION=0M,PARM=’DJ0CSTC / /STCID(x)

where x is the one-character ID you assigned to the started task (example, A).

b. Review the JPCONFIGmember (see Configuration File).

For more information about setting up and running multiple started tasks, contact ASG Customer Support.

281

Running Multiple Started Tasks

Page 289: ASG-PRO/JCL Reference Guide

Tape Management InterfacesThis topic provides detailed information about tapemanagement interfaces.

n ZARA

n CA-1 (TMS)

n CA-DYNAM/TLMS

n CONTROL-M/Tape (CTLT)

n DFSMSrmm - RemovableMedia Manager

n NOTMS

ZARAPRO/JCL accesses the ZARA RemovableMedia Manager database to obtain information about tape datasets to verify thevolume number coded in the JCL or from the system catalog against the ZARA database. PRO/JCL automatically invokesthe ZARA interface as necessary.

Identify the ZARA LibraryMake sure the ZARA interface routine (ZARAAPI1) is available during PRO/JCL execution using either of the followingmethods:

l Make sure ZARA LOADLIB is link-listed.

l Add the ZARA load library name to the STEPLIB concatenation in the started task JCL and in the PR1PROC.

Turn On the InterfaceFor the TAPEMANAGER interface option use the ZARA value.

For example:

Tape Manager Row 1 to 6 of 6Command ===> Scroll ===> PAGE

Option values:RTS . . . ZARADefault :Allowable: TLMS, TMS, TMS5, ZARA, RMM, CTLT, NOTMS, or Null Value

Description:

Use Tape Manager to specify the tape management systemPRO/JCL should use during JCL validation. Use TMS to specifythe CA-TMS tape management system is a release prior torelease 5. Use TMS5 to specify the CA-TMS tape managementsystem as release 5 or greater. Use ZARA to specify the ZARAtape management system (any release).

TapeManager options panel

282

ASG-PRO/JCL Reference Guide

Page 290: ASG-PRO/JCL Reference Guide

CA-1 (TMS)PRO/JCL accesses the CA-1 (UCC1) TapeManagement System (TMS) catalog to obtain information about tape datasets toverify the volume serial number coded in the JCL or from the system catalog against the TMS catalog. PRO/JCLautomatically invokes the CA-1 interface as necessary.

Identify the TMS LibraryMake sure the TMS interface routine (TMSSVC) is available during PRO/JCL execution using either of the followingmethods:

l Make sure TMSSVC is link-listed.

l Add the TMS load library name to the STEPLIB concatenation in the started task JCL and in the PR1PROC.

Activate the InterfaceFor the TAPEMANAGER interface option use:

l TMS5 if the CA-1 release is 5.0 or greater.

l TMS, if the CA-1 release is prior to Release 5.

For example:

Tape Manager Row 1 to 6 of 6Command ===> Scroll ===> PAGE

Option values:RTS . . . TMSDefault :Allowable: TLMS, TMS, TMS5, ZARA, RMM, CTLT, NOTMS, or Null Value

Description:

Use Tape Manager to specify the tape management systemPRO/JCL should use during JCL validation. Use TMS to specifythe CA-TMS tape management system is a release prior torelease 5. Use TMS5 to specify the CA-TMS tape managementsystem as release 5 or greater. Use ZARA to specify the ZARAtape management system (any release).

Setting PRO/JCL to invoke the TMS interface

CA-DYNAM/TLMSPRO/JCL accesses the CA-DYNAM/TLMS tapemanagement system VolumeMaster File (VMF) to verify that volume anddataset information coded in the JCL or obtained from the system catalog matches the VMF. PRO/JCL will flag thosedatasets which are not found on a specified volume at the specified label. PRO/JCL automatically invokes the CA-DYNAM/TLMS interface as necessary.

The following DDmust be added to the PR1PROC and the started task JCL:

//JTLMSVMF DD DSN=tlms.vmf.data set,DISP=SHR

This is for the TLMS VolumeMaster File.

283

CA-1 (TMS)

Page 291: ASG-PRO/JCL Reference Guide

If attempting to write to a dataset which is on a volume that is currently active, PRO/JCL will verifythat the specified volume is on-site. It will also confirm that the volume is in the appropriate status(i.e. scratch for write and not scratch for read).

Activate the CA-DYNAM/TLMS InterfaceFor the TAPEMANAGER interface option use the TLMS value. For example:

Tape Manager Row 1 to 6 of 6Command ===> Scroll ===> PAGE

Option values:RTS . . . TLMSDefault :Allowable: TLMS, TMS, TMS5, ZARA, RMM, CTLT, NOTMS, or Null Value

Description:

Use Tape Manager to specify the tape management systemPRO/JCL should use during JCL validation. Use TMS to specifythe CA-TMS tape management system is a release prior torelease 5. Use TMS5 to specify the CA-TMS tape managementsystem as release 5 or greater. Use ZARA to specify the ZARAtape management system (any release).

***************************** Bottom of data ******************************

Setting PRO/JCL to invoke the TLMS interface

CONTROL-M/Tape (CTLT)PRO/JCL accesses the CONTROL-M/TapeManager to verify the tapes in the database. PRO/JCL will flag those datasetswhich are not found on a specified volume at the specified label. PRO/JCL automatically invokes CTLT as necessary.

The following 3 DD's must be allocated to the PR1PROC and the started task:

l //DAMDB DD DISP=SHR,DSN=IOA.V5R09702.CTT.MDBD

l //DAMDI DD DISP=SHR,DSN=IOA.V5R09702.CTT.MDBI

l //DATRC DD DISP=SHR,DSN=IOA.V5R09702.CTT.TRC

These are for the CONTROL-M/TapeMEDIA DATABASE (MDBD &MDBI), and the CONTROL-M/Tape trace file. Datasetnames should be changed to reflect those used by CONTROL-M/Tape.

The CONTROL-M/Tape load library must bemade available to both the started task and the PR1PROC.

Activate the InterfaceFor the CONTROL-M/Tape interface option use the CTLT value. For example:

284

ASG-PRO/JCL Reference Guide

Page 292: ASG-PRO/JCL Reference Guide

Tape Manager Row 1 to 6 of 6Command ===> Scroll ===> PAGE

Option values:RTS . . . CTLTDefault :Allowable: TLMS, TMS, TMS5, ZARA, RMM, CTLT, NOTMS, or Null Value

Description:

Use Tape Manager to specify the tape management systemPRO/JCL should use during JCL validation. Use TMS to specifythe CA-TMS tape management system is a release prior torelease 5. Use TMS5 to specify the CA-TMS tape managementsystem as release 5 or greater. Use ZARA to specify the ZARAtape management system (any release).

Setting PRO/JCL to invoke the CTLT interface

If attempting to write to a dataset which is on a volume that is currently active, PRO/JCL will verifythat the specified volume is on-site. It will also confirm that the volume is in the appropriate status(i.e. scratch for write and not scratch for read).

DFSMSrmm - Removable Media ManagerPRO/JCL accesses IBM's RMM Control Data Set (CDS) to obtain information regarding tape datasets known to RMM. Thisinformation can be used with information from the system catalog and information on the tape DD card to verify that theDD card, the Catalog, and RMM's knowledge of the physical tape are consistent.

Information checked is VOLSER, tape dataset name, availability (out in a disaster store location or in the library), datasetsequence, status (scratch or master file), etc. PRO/JCL automatically invokes the RMM Applications Interface (API) whenrequired for a tape dataset.

RequirementsThese conditions must bemet to utilize the PRO/JCL DFSMSrmm interface:

l DFSMS level V1R3 or higher installed. For V1R3, you must be at maintenance level 9806 or have PTF UW47006applied. If running V1R4, you must be at maintenance level 9806 or have PTF UW47007 applied. For V1R5 andabove, no special maintenance is needed.

An easy way to verify themaintenance level is to locate “EDGDOCX” in SYS1.SAMPLIB and “EDGXAPI” inSYS1.LINKLIB. If thesemembers are present, you are at the correct maintenance level.

l Make sure that RMM is operative.

l The DFSMSrmm load library must bemade available to both the started task and the PR1PROC.

Activate the InterfaceFor the TAPEMANAGER interface option use RMM - for IBM's RemovableMedia Manager. For example:

285

DFSMSrmm - RemovableMedia Manager

Page 293: ASG-PRO/JCL Reference Guide

Tape Manager Row 1 to 6 of 6Command ===> Scroll ===> PAGE

Option values:RTS . . . RMMDefault :Allowable: TLMS, TMS, TMS5, ZARA, RMM, CTLT, NOTMS, or Null Value

Description:

Use Tape Manager to specify the tape management systemPRO/JCL should use during JCL validation. Use TMS to specifythe CA-TMS tape management system is a release prior torelease 5. Use TMS5 to specify the CA-TMS tape managementsystem as release 5 or greater. Use ZARA to specify the ZARAtape management system (any release).

***************************** Bottom of data ******************************

Setting PRO/JCL to invoke the RMM API interface

If attempting to write to a dataset which is on a volume that is currently active, PRO/JCL will verifythat the specified volume is on-site. It will also confirm that the volume is in the appropriate status(i.e. scratch for write and not scratch for read).

NOTMSSpecifies that no tapemanager is used.

Activate the Interface

To specify that no Tape Manager Interface option is used

Enter NOTMS. For example:

Tape Manager Row 1 to 6 of 6Command ===> Scroll ===> PAGE

Option values:RTS . . . NOTMSDefault :Allowable: TLMS, TMS, TMS5, ZARA, RMM, CTLT, NOTMS, or Null Value

Description:

Use Tape Manager to specify the tape management systemPRO/JCL should use during JCL validation. Use TMS to specifythe CA-TMS tape management system is a release prior torelease 5. Use TMS5 to specify the CA-TMS tape managementsystem as release 5 or greater. Use ZARA to specify the ZARAtape management system (any release).

Setting PRO/JCL to use no TapeManager Interface

286

ASG-PRO/JCL Reference Guide

Page 294: ASG-PRO/JCL Reference Guide

User Utility ExitPRO/JCL contains built-in simulation for many standard IBM utilities. For sites having their own (local) utilities used inplace of the standard IBM utilities, PRO/JCL provides the User Utility Application Programming Interface (the USU API).Use this API to write programs simulating the effect of the local utility upon the system catalog. Users write UserUtility exit programs in REXX. See Example 1 -- Batch and Example 2 -- Validation Panel for example User Utilityexit programs.

The PRO/JCL USU API can:

l Access control cards.

l Logically create/delete datasets.

l Add error messages to the SJL.

l Determine whether a DD has been allocated.

l Determine whether a dataset has been cataloged.

When PRO/JCL encounters a local utility name in the JCL stream, it invokes a User Utility Exit program; the exit is in effectfor the scope of the EXEC PGM statement. PRO/JCL executes User Utility Exit programs before JMP or Reformatterprocessing.

The processing of local aliases for standard IBM utilities takes precedence over the processing of aUser Utility exit program with the same name. Do not name a local utility with the same name asthat used as an alias for a standard utility.

n Preparing PRO/JCL for User Utility Exit Usage

n User Utility Exit API Calls

Preparing PRO/JCL for User Utility Exit UsageThis topic provides detailed information on preparing PRO/JCL for User Utility Exit Usage.

To prepare PRO/JCL to invoke User Utility exit programs

1. Set up the RTS member User Utilities table to tell PRO/JCL which exits to use for local utilities (known as theexit-utility pairings).

2. Modify the Started Task JCL with the dataset namewhere the User Utility exit programs are stored.

3. Modify the PR1PROC batch JCL for batch users in the samemanner as for the Started Task JCL.

4. Create the User Utility exit programs.

Setting Up the Run-Time Settings for User Utility Exit Programs

Setting up the RTS member involves two primary tasks:

287

User Utility Exit

Page 295: ASG-PRO/JCL Reference Guide

Establishing the exit-utility pairings

To establish the pairings

1. In the Settings action bar item on the PRO/JCL Validation panel, choose RTS Member from the pull-down menu.

1 1. RTS Member: DEFAULT2. Scheduler3. Output Libraries4. BatchJCL5. TSOParms6. User Report Title7. Options Report8. Skeleton Processing9. Extended Messages10. Selection List11. Alternate Userid12. Selection Exit13. Reset Between Members14. First Control Card

PRO/JCL Validation panel Settings pull-down

2. Select the User Utilities option.

File-----------------------------------------------------------------------------

PRO/JCL Edit/View Run-Time Settings Row 1 to 26 of 26Command ===> 14 Scroll ===> CSR

RTS Mbr: RTSTESTOwner : ASGUSR Description . .

1 Run-Time Options Set Run-Time Option Values2 Interfaces Select Data Management Interfaces3 Format Options Specify the Format of the Reports4 JCL Listing Report Set Content for the JCL Listing

...14 User Utilities Setup User Utilities Exits15 Control Card DSNs Get Control Cards From this Dataset16 DFSMShsm MCDS Specify DFSMShsm MCDS Name

...26 Trace Internal Trace Facility

Edit/View Run-Time Settings panel

3. Add your site utilities to the PRO/JCL User Utilities table.

PRO/JCL User UtilitiesCommand ===> ADD Scroll ===> PAGE

RTS Mbr: RTSTEST Owner: ASGUSR Desc:

Enter 'ADD' to add User Utilities

Use: S (Select), R (Repeat), D (Delete)

Sel User Utility Rexx Exec--- ------------ ---------

USERPGM USUTEST1USERPGM2 USUTEST2

User Utilities panel

288

ASG-PRO/JCL Reference Guide

Page 296: ASG-PRO/JCL Reference Guide

4. Put the name of your local utility from in your JCL in User Utility. Put the name of the User Utility exit program inREXX Exec PRO/JCL invokes at each encounter with this utility.

Add User Utilities Entry

Command ===>

Press Enter to accept changes, or enter Cancel to reject changes.

User Utility . . . . . USERPGM3Rexx Exec . . . . . . .USUTEST3Allowable Values: Member name

Adding a new user utility exit

5. Press Enter to save the new entry.

6. PF 3 to return to the Edit View Run-Time Settings panel.

Turning on the User Utility processing

To turn on User Utility Processing

1. Select the Enabled Tables option.

File------------------------------------------------------------------------------

PRO/JCL Edit/View Run-Time Settings Row 1 to 26 of 26Command ===> 6 Scroll ===> CSR

RTS Mbr: RTSTEST Owner: ASGUSR Updated by: ASGUSR on: 07/27/2017Description . .

1 Run-Time Options Set Run-Time Option Values2 Interfaces Select Data Management Interfaces3 Format Options Specify the Format of the Reports4 JCL Listing Report Set Content for the JCL Listing5 RTS Report Set Specifications for the RTS Report6 Enabled Tables Enable or Disable Options Tables

...

Edit/View Run-Time Settings panel

2. Select User Utilities.

PRO/JCL Enabled Tables Row 17 to 20 of 20Command ===> Scroll ===> CSR

RTS Mbr: RTSTEST Owner: ASGUSR Desc:

Sel Option RTS Value Default Allowable--- ------------------------ ----------------- ----------------- -------------...S User Utilities ON ON ON or OFF

Utility Alias ON ON ON or OFF...

Enabled Tables panel

3. Turn on the User Utilities by typing ON in the RTS field and pressing PF3 to save the setting. (The ON setting isthe default.)

289

Preparing PRO/JCL for User Utility Exit Usage

Page 297: ASG-PRO/JCL Reference Guide

User UtilitiesRow 1 to 3 of 3

Command ===> Scroll ===> CSR

Option values:RTS . . . ONDefault : ONAllowable: ON or OFF

Description:Use this option to control the use of User Utilities tableentries. Specify ON to enable the use of the User Utilitiestable entries. Specify OFF to disable the use of the UserUtilities table entries.

User Utilities panel

4. Continue with Modify Started Task JCLand Modify Batch Mode JCL.

Modify Started Task JCL

You can use the JJ Edit Macro or use the PRO/JCL Validation or JMP panels to invoke a User Utility exit program.

To prepare PRO/JCL to use a User Utility exit program

1. Find and uncomment the SYSEXEC DD statement. (1)

2. Specify the library where the User Utility Exit program is stored. (2)

//DSSISTR PROC//*//********************************************************************//* STARTED TASK PROC FOR PRO/JCL AND INFO/X//*//* MEMBER NAME : DSSISTCR (BUILT FROM SKELETON: D0SIIJ12)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************//*// SET SOUT='X'// SET HLQ='DSSI.Rnnn.TAPE'// SET PCHLQ='DSSI.Rnnn.TAPE'

...//*SYSUDUMP DD SYSOUT=&SOUT//*DSNTRACE DD SYSOUT=&SOUT

1 //SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC2 // DD DISP=SHR,DSN=MY.USU.EXEC...

Modifying JCL Member DSSISTC - Started Task Procedure

Restart the started task after changing its JCL.

Modify Batch Mode JCL

When invoking a User Utility exit program in batch mode, PRO/JCL looks in the dataset specified in the SYSEXEC DD in thePR1PROC JCL. Modify the SYSEXEC statement with the name of the dataset.

290

ASG-PRO/JCL Reference Guide

Page 298: ASG-PRO/JCL Reference Guide

//********************************************************************//* PR1PROC - PROC//*//* MEMBER NAME : PR1PROC (BUILT FROM SKELETON: D0SIIJ10)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************//PR1PROC PROC HLQ=---HLQ---,// DB2EXIT=---DB2EXIT---,// DB2LOAD=---DB2LOAD---,// CICSLOAD=---CICSLOAD---,// PARMPGM='DJ0CBNW',// PROD='-PROJCL',// PCHLQ=---PCHLQ---//*//PROJCL EXEC PGM=DJ0YINIB,REGION=0M,PARM='&PARMPGM /&PROD'//STEPLIB DD DISP=SHR,DSN=&HLQ..LOAD// DD DISP=SHR,DSN=&DB2EXIT// DD DISP=SHR,DSN=&DB2LOAD// DD DISP=SHR,DSN=&CICSLOAD//PCFILE DD DISP=SHR,DSN=&PCHLQ..PCFILE//JPCONFIG DD DISP=SHR,DSN=&HLQ..SPJMCNTL(BATCONF)//SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC// DD DISP=SHR,DSN=MY.USU.EXEC//SYSTSPRT DD SYSOUT=*

...//*SYSUDUMP DD SYSOUT=* SYSTEM DUMP OUTPUT//*// PEND

Sample PRO/JCL Procedure PR1PROC

Also, make sure PR1PROC uses an RTS member with the appropriate exit-utility pairings defined and the User Utilitiesturned on (see Setting Up the Run-Time Settings for User Utility Exit Programs):

...//********************************************************************//STEP1 EXEC PR1PROC//********************************************************************//* SPECIFY INPUT LIBRARY HERE//********************************************************************//SYSIN DD *%% INPUT DSNAME=YOUR.JCL.LIBRARY,%% SELECT=MEMBER,%% REPORTS=SJL,%% RTSMEMBER=RTSTEST

...

Giving PR1PROC the appropriate RTS member

Create a User Utility Exit Program

To create a User Utility exit program

1. Use any editor and follow the REXX coding guidelines at your site. For example:

291

Preparing PRO/JCL for User Utility Exit Usage

Page 299: ASG-PRO/JCL Reference Guide

/* REXX */xx = dssiapi("USUgetRecsFromDD", "USERCC")

do n = 1 to jprx.0crfound = wordpos('CREATE',jprx.n)if crfound then docrfound = crfound + 1crdsn = word(jprx.n,crfound)xx = dssiapi("USUcreateAndCatalogDataset", crdsn, "PO", "SYSDA")xx = dssiapi("USUaddErrorToControlCard", "SYSIN", n, 90013, 12,,

"Catalog Created", crdsn)enddelfound = wordpos('DELETE',jprx.n)if delfound then dodelfound = delfound + 1deldsn = word(jprx.n,delfound)xx = dssiapi("USUdeleteAndUncatalogDataset", deldsn)

endend

Sample User Utility exit program

2. Save the REXX in the dataset named in the SYSEXEC DD in the Started Task JCL and Batch JCL.

JPRX is a REXX stem variable containing the records retrieved by USUgetRecsFromDD.

Examples

Example 1 -- Batch

This example shows PRO/JCL in a batch run using two User Utility exit programs and the resulting Structured JCL Listing(SJL).

Input JCLThe below figure contains sample input JCL to be validated by PRO/JCL.

//USERJCL JOB//*****************************************************************//STEP0 EXEC PGM=IEFBR14//DD1 DD DSN=COMPANY.#TEST.PROCLIB,DISP=SHR//DD2 DD DSN=COMPANY.NEW.DS,DISP=SHR//DD3 DD DSN=COMPANY.DEL.DS,DISP=SHR//*****************************************************************//STEP1 EXEC PGM=USERPGM,PARM='DATASET.NAME.PASSED.IN.PARM'//USERCC DD *CONTROL CARDS FOR USER UTILITYCREATE COMPANY.NEW.DSDELETE COMPANY.DEL.DSDELETE COMPANY.#TEST.PROCLIBEND OF CONTROL CARDS FOR USER UTILITY

/*//*****************************************************************//STEP2 EXEC PGM=USERPGM2,PARM='DATASET.NAME.PASSED.IN.PARM'//SYSIN DD DSN=COMPANY.SYS1.CNTL(SYSIN),DISP=SHR//*****************************************************************//STEP3 EXEC PGM=IEFBR14//DD1 DD DSN=COMPANY.#TEST.PROCLIB,DISP=SHR//DD2 DD DSN=COMPANY.NEW.DS,DISP=SHR

SPJMSAMP Library member USERJCL

292

ASG-PRO/JCL Reference Guide

Page 300: ASG-PRO/JCL Reference Guide

REXX User Utility Exit MappingUsers tell PRO/JCL to call REXX User Utility exit programs as it encounters the local utility names in the input JCL. Followthe detailed instructions at the beginning of this topic, Setting Up the Run-Time Settings for User Utility Exit Programs toset up the exit-utility pairings.

PRO/JCL User Utilities Row 1 to 2 of 2Command ===> Scroll ===> CSR

RTS Mbr: RTSTEST Owner: ASG Desc:

Enter 'ADD' to add User Utilities

Use: S (Select), R (Repeat), D (Delete)

Sel User Utility Rexx Exec--- ------------ ---------

USERPGM USUTESTUSERPGM2 USUTEST2

User Utilities panel

Creating The REXX Utility ExecsFor the two local utilities, USERPGM and USERPGM2, two User Utility exit programs are needed for this example,USUTEST (See figure - User Utility program USUTEST) and USUTEST2 (See figure - User Utility exit program USUTEST2). Forboth programs, the numbers in parentheses (1)-(9) refer to numbered lines in the SJL, (See figure - Sample SJLOutput).

USUTESTThe individual API calls in User Utility exit program USUTEST:

l (1) loads the control cards for USERCC DD statement into the stem variable JPRX.

l (2) creates and catalog the dataset coded on a control card record.

l (3) adds an error message.

l (4) deletes and uncatalog a dataset coded on a control card.

/* REXX */(1) xx = dssiapi("USUgetRecsFromDD", "USERCC")

do n = 1 to JPRX.0crfound = wordpos('CREATE', JPRX.n)if crfound then docrdsn = word(JPRX.n, 2)

(2) xx = dssiapi("USUcreateAndCatalogDataset", crdsn, "PO", "SYSDA")msg = "We did it " crdsn

(3) xx = dssiapi("USUaddErrorToControlCard", "USERCC", n, 90013, 12, msg)enddelfound = wordpos('DELETE', JPRX.n)if delfound then dodeldsn = word(JPRX.n, 2)

(4) xx = dssiapi("USUdeleteAndUncatalogDataset", deldsn)end

end

User Utility program USUTEST

293

Preparing PRO/JCL for User Utility Exit Usage

Page 301: ASG-PRO/JCL Reference Guide

Complete descriptions for the USU API calls used in this example can be found in topic - User UtilityExit API Calls.

USUTEST2API calls in User Utility exit program USUTEST2 are:

l (5) checks if REQDD DD was allocated.

l (6) adds an error message when REQDD DD is not allocated.

l (7) checks if DSSI.TSTCASES.CNTLX is cataloged.

l (8) adds an error message if DSSI.TSTCASES.CNTL is not cataloged.

l (9) deletes and uncatalogs the dataset passed in the EXEC statement parm field.

/* REXX */passedparm = ARG(1)

(5) xx = dssiapi("USUisDDAllocated", 'REQDD')if jprc <> ok then do

msg = 'REQDD IS REQUIRED'(6)xx = dssiapi("USUaddErrorToControlCard", "SYSIN", 1, 90012, 12, msg)

end

dsn1 = 'DSSI.TSTCASES.CNTLX'/*check if the data set is already cataloged*/

(7) xx = dssiapi("USUisDatasetCataloged", dsn1)if jprc <> ok then domsg2 = "DSN1 IS NOT FOUND"

(8)xx = dssiapi("USUaddErrorToControlCard", "SYSIN", 1, 90013, 12, msg2)end

(9) xx = dssiapi("USUdeleteAndUncatalogDataset", passedparm)

User Utility exit program USUTEST2

Complete descriptions for the USU API calls used in this example can be found in topic - User UtilityExit API Calls.

Invoking PRO/JCLHere are some sample control cards for PRO/JCL to use to invoke the User Utility exit programs:

//SYSIN DD *%% INPUT DSNAME='USER.DATASET',%% SELECT=USERJCL,%% TYPE=PDS,%% PROCESS=JOB,%% RTSMEMBER=RTSTEST,%% REPORTSTYLE=PAPER,%% REPORTS=(SJL)

Resulting SJLThe Structured JCL Listing generated from PRO/JCL, highlighting the results of the API calls in USUTEST and USUTEST2.

294

ASG-PRO/JCL Reference Guide

Page 302: ASG-PRO/JCL Reference Guide

STRUCTURED JCL LISTING SAMPLE USER UTILITY EXIT===============================================================================PRO/JCL RELEASE RTS MEMBER: RTSTEST===============================================================================

//USERJCL JOB//*****************************************************************//STEP0 EXEC PGM=IEFBR14

E1 - DSS20021A - 'USERJCL STEP0': STEP WAS SIMULATED, COND CODE '0000'.//DD1 DD DSN=DSSI.#TEST.PROCLIB,DISP=SHR

E2 - DSS20110A - DATA SET 'DSSI.#TEST.PROCLIB' STATUS UNCHANGED ON VOLSER(S)'

//DD2 DD DSN=DSSI.NEW.DS,DISP=SHRE3 - DSS20028E - DATA SET 'DSSI.NEW.DS' WAS NOT FOUND IN CATALOG.

//DD3 DD DSN=DSSI.DEL.DS,DISP=SHRE4 - DSS20028E - DATA SET 'DSSI.DEL.DS' WAS NOT FOUND IN CATALOG.

//*****************************************************************--- END OF STEP ---//STEP1 EXEC PGM=USERPGM,PARM='DATASET.NAME.PASSED.IN.PARM'

E5 - DSS20021A - 'USERJCL STEP1': STEP WAS SIMULATED, COND CODE '0000'.2 E6 - DSS20097A - DATA SET 'DSSI.NEW.DS' CREATED ON 'ANYDASDVOLSER'.2 E7 - DSS20050A - DATA SET 'DSSI.NEW.DS' WAS CATALOGED IN 'ICFCAT.VDSS801'.4 E8 - DSS20028E - DATA SET 'DSSI.DEL.DS' WAS NOT FOUND IN CATALOG.4 E9 - DSS20053A - DATA SET 'DSSI.#TEST.PROCLIB' WAS UNCATALOGED FROM'ICFCAT.VD4 E10 - DSS20054A - DATA SET 'DSSI.#TEST.PROCLIB' SCRATCHED FROM 'DSS900'.

//USERCC DD *----+----1----+----2----+----3----+----4----+----5----+----6----+----7---

+CONTROL CARDS FOR USER UTILITYCREATE DSSI.NEW.DSDELETE DSSI.DEL.DSDELETE DSSI.#TEST.PROCLIBEND OF CONTROL CARDS FOR USER UTILITY

/*----+----1----+----2----+----3----+----4----+----5----+----6----+----7---

+CONTROL CARDS FOR USER UTILITYCREATE DSSI.NEW.DS

3 E11 - USU90013E - WE DID IT! DSSI.NEW.DSDELETE DSSI.DEL.DSDELETE DSSI.#TEST.PROCLIBEND OF CONTROL CARDS FOR USER UTILITY

//*****************************************************************--- END OF STEP ---//STEP2 EXEC PGM=USERPGM2,PARM='DATASET.NAME.PASSED.IN.PARM'

E12 - DSS20021A - 'USERJCL STEP2': STEP WAS SIMULATED, COND CODE '0000'.5,6 E13 - USU90012E - REQDD IS REQUIRED7,8 E14 - USU90013E - DSN1 IS NOT FOUND9 E15 - DSS20028E - DATA SET 'DATASET.NAME.PASSED.IN.PARM' WAS NOT FOUND IN CA

//SYSIN DD DSN=DSSI.SYS1.CNTL(SYSIN),DISP=SHRE16 - DSS20110A - DATA SET 'DSSI.SYS1.CNTL' STATUS UNCHANGED ON VOLSER(S) 'D

//*****************************************************************--- END OF STEP ---//STEP3 EXEC PGM=IEFBR14

E17 - DSS20021A - 'USERJCL STEP3': STEP WAS SIMULATED, COND CODE '0000'.//DD1 DD DSN=DSSI.#TEST.PROCLIB,DISP=SHR

E18 - DSS20028E - DATA SET 'DSSI.#TEST.PROCLIB' WAS NOT FOUND IN CATALOG.//DD2 DD DSN=DSSI.NEW.DS,DISP=SHR

E19 - DSS20110A - DATA SET 'DSSI.NEW.DS' STATUS UNCHANGED ON VOLSER(S) 'AN-----------------------------------------------------------------------------

Sample SJL Output

Example 2 -- Validation Panel

In this example, PRO/JCL is invoked from its Validation panel.

This example shows how a User Utility exit program can read the same input that a local utility would, then how itsimulates the generation of the files PRO/JCL uses later in its scan.

Input JCLThe below figure shows the sample JCL to be validated by PRO/JCL.

295

Preparing PRO/JCL for User Utility Exit Usage

Page 303: ASG-PRO/JCL Reference Guide

//GENCAMS JOB '123,456',MSGCLASS=X,NOTIFY=&SYSUID//*//PREPAMS EXEC PGM=GENCAMS,PARM='#DDS=ASGUSR.SJL.TEMP2'//GENSKEL DD DSN=ASGUSR.TEST.JCL(DELGENC),DISP=SHR//RESPARM DD DSN=ASGUSR.TEST.JCL(DELCAMS),DISP=OLD//*//IDCAMS1 EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=*//SYSIN DD DSN=ASGUSR.TEST.JCL(DELCAMS),DISP=SHR

Input JCL

The local utility GENCAMS applies PARM-supplied data to a skeleton record in DELGENC. It writes this resolved record tothe output PDS member DELCAMS, later used by the IDCAMS step.

Skeleton IDCAMS filePut the following line in themember DELGENC of dataset ASGUSR.TEST.JCL:

DELETE #DDS PURGE

If this JCL were to run, the utility GENCAMS would modify this line to become this instruction:DELETE ASGUSR.SJL.TEMP2 PURGE

REXX User Utility Exit MappingUsers tell PRO/JCL to call REXX User Utility Exit Programs as it encounters the local utility names in the input JCL. Followthe detailed instructions at the beginning of this topic, Setting Up the Run-Time Settings for User Utility Exit Programs toset up the exit-utility pairings.

PRO/JCL User Utilities Row 1 to 2 of 2Command ===> Scroll ===> CSR

RTS Mbr: RTSTEST Owner: ASG Desc:

Enter 'ADD' to add User Utilities

Use: S (Select), R (Repeat), D (Delete)

Sel User Utility Rexx Exec--- ------------ ---------

GENCAMS USUTEST3

User Utilities panel

Started Task JCL ModificationPRO/JCL administrators modify the Started Task JCL enabling users to use the User Utility feature. Follow detailedinstructions in Modify Started Task JCL.

296

ASG-PRO/JCL Reference Guide

Page 304: ASG-PRO/JCL Reference Guide

//DSSISTR PROC//*//********************************************************************//* STARTED TASK PROC FOR PRO/JCL AND INFO/X//*//* MEMBER NAME : DSSISTCR (BUILT FROM SKELETON: D0SIIJ12)//* TYPE : INSTALL//* PRODUCT RELEASE: Rnnn//********************************************************************//*// SET SOUT='X'// SET HLQ='DSSI.Rnnn.TAPE'// SET PCHLQ='DSSI.Rnnn.TAPE'

...//*SYSUDUMP DD SYSOUT=&SOUT//*DSNTRACE DD SYSOUT=&SOUT

1 //SYSEXEC DD DISP=SHR,DSN=&HLQ..EXEC2 // DD DISP=SHR,DSN=MY.USU.EXEC

...

Modifying JCL Member DSSISTC - Started Task Procedure

Creating The REXX Utility ProgramThis REXX program, USUTEST3, simulates the actions performed by program GENCAMS. PRO/JCL invokes it any time theJCL refers to GENCAMS.

297

Preparing PRO/JCL for User Utility Exit Usage

Page 305: ASG-PRO/JCL Reference Guide

1. /* REXX */2.3.4. parse ARG parm5. parse var parm from_string '=' to_string .6.7. /* Open the output file as a PDS */8. xx = DSSIAPI("USUOpenPSDD","RESPARM","OUTPUT")9. IF jprc <> 'OK' THEN DO10. xx = DSSIAPI("USUSetProgramAbend",U354)11. xx = DSSIAPI("USUaddErrorToConrolCard",0,90095,12,,12. "Required DD RESPARM was not allocated")13. EXIT 014. END15.16. /* open the input file as sequential */17. xx = DSSIAPI("USUgetRecsFromDD", "GENSKEL")18. IF jprc <> 'OK' THEN DO19. xx = DSSIAPI("USUSetProgramAbend",U353)20. xx = DSSIAPI("USUaddErrorToConrolCard",0,90095,12,,21. "Required DD GENSKEL was not allocated")22. EXIT 023. END24.25. /* Look thru the records looking for the From String */26. DO c = 1 TO jprx.027. str_parm = POS(from_string, jprx.c)28.29. /* if found then change to the To String */30. IF str_parm > 0 THEN DO31. str = 'parse var jprx.c card_1st "'from_string'" card_last'32. interpret str33. card_out = ' ' card_1st to_string card_last35. END36. ELSE37. card_out = jprx.c38. xx = DSSIAPI("USUwriteToDD","RESPARM", card_out)39. END40. xx = DSSIAPI("USUclose","RESPARM", "DELCAMS")41. EXIT 0

User Utility Exit Code USUTEST3

Complete descriptions for the calls used in this example can be found in User Utility Exit API Calls.

Lines 1-3 Introductory lines. Comment lines, blank lines and END and ELSE statements throughout the program are notdescribed.

Line 4 Retrieves the PARM= as it appeared in the JCL. The parm is required to be in the format of FROM=TO, where FROMis the characters to look for and TO is the characters to change to.

Line 5 Separates the parm field into “from” and “to” components.

Line 8 Simulates an OPEN of the DD allocated to DD RESPARM in output mode. This API function returns one of thefollowing values in JPRC:

l OK. The DD OPEN simulation was successfully executed.

l NOTFOUND. The DD requested is not allocated.

l ADSSxxxxx error message. This indicates an error in opening the DD, due to incompatible DCB attributes or otherfailures. This message will also be automatically displayed in the Resulting Structured JCL Listing.

Line 10 If open failed, simulates a program abend to indicate that the local utility was unable to complete its process.

298

ASG-PRO/JCL Reference Guide

Page 306: ASG-PRO/JCL Reference Guide

Line 11 Adds an error message to the SJL indicating why the program simulation failed.

Line 13 This line returns to PRO/JCL.

Line 17 Simulates a sequential file open on DDNAME “GENSKEL”. This API function returns one of the following values inJPRC:

l OK. The DD OPEN simulation was successfully executed and the records were read and are available in JPRX. Thespecial REXX variable JPRX is an array:

l JPRX.0 the number of records the statement contains.

l JPRX.1 through JPRX.n, each a control card belonging to the DD.

l NOTFOUND. The DD requested is not allocated.

l DSSxxxxx error message. This indicates an error in opening the DD, due to incompatible DCB attributes, securityviolations, or other failures. This message will also be automatically displayed in the Resulting Structured JCLListing.

Line 19 If open/read failed, sets a simulated program abend to indicate that the user utility was unable to complete itsprocess.

Line 20 Adds an error message to the SJL indicating why the program simulation failed.

Line 22 Returns to PRO/JCL.

Line 26 Loops through each of the records returned from USUgetRecsFromDD.

Line 27 Returns the position of the “from” string within the record.

Line 30 Tests to see if a change is required to this record.

Line 31 Creates a parse statement that breaks the record into the characters before the “from” string and the charactersafter the “from” string. For example, if the “from” string is “XXXXX” and the record is:

Stuff before XXXXX stuff after

the parse statement puts “Stuff before” into card_1st and “Stuff after” into card_last.

Line 32 Runs the REXX statement that was generated in Line 31.

Line 33 Creates a new record. It concatenates the first part of the original record with the “to” string and the end of theoriginal record.

Line 37 Copies the original record if no change needs to take place.

Line 38Writes the record to the output file DD “RESPARM”. This API modifies no actual file. Instead PRO/JCL keeps acopy of the record in memory. If a later step in the same job requests this file or member, then these records are used.This function should be called once for every record to be written.

This function should only be called after successful execution of the USUopenPODD or USUopenPSDD function.

Line 40 Creates a pseudo-member named “DELCAMS” in the PDS referenced by “RESPARM.” Again, no actual member iscreated; rather themember is kept in memory for the duration of the validation.

This function should be called following all USUwriteToDD functions calls when an output file was opened withUSUOpenPODD.

Invoking PRO/JCLInvoke PRO/JCL from the PRO/JCL Validation panel using the RTS member containing the desired exit-utility pairings.

299

Preparing PRO/JCL for User Utility Exit Usage

Page 307: ASG-PRO/JCL Reference Guide

PRO/JCL ValidationCommand ===> F

F Foreground Execution RTS Member . . RTSTEST ( * for list)B Background Execution E Edit Input LibraryV View Input Library

Input Library 'ASGUSR.JCL'Member . . . . EX2 Show Directory N (Y/N)Exclude Member Show Directory N (Y/N)Type . . . . . PDS ( * for list)

Listname . . . . ( * for list)Processing Mode JOB ( * for list)First PROCLIBLib type . . . PDS ( * for list)

JMP Library. . .JMP Name . . . . Parm . .Reformat . . . . OFF ( * for list) Overwrite Input Lib N (Y/N)Reformat Member. DEFAULT ( * for list)SJL Hardcopy . . N (Y/N) Keep SJL Data Set Y (Y/N)

Invoking PRO/JCL through the validation panel

Resulting SJL

...*** Results of processing ASGUSR.JCL(USUTEST3) **************************************************

//GENCAMS JOB '123,456',MSGCLASS=X,NOTIFY=&SYSUID--GENCAMS JOB '123,456',MSGCLASS=X,NOTIFY=ASGUSR//*//PREPAMS EXEC PGM=GENCAMS,PARM='#DDS=ASGUSR.SJL.TEMP2'//GENSKEL DD DSN=ASGUSR.TEST.JCL(DELGENC),DISP=SHR//RESPARM DD DSN=ASGUSR.TEST.JCL,DISP=OLD//*--- END OF STEP ---//IDCAMS1 EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=*//SYSIN DD DSN=ASGUSR.TEST.JCL(DELCAMS),DISP=SHR

------- Start of Utility program output -----------+----1----+----2----+----3----+----4----+----5----+----6----+----7----+--

DELETE ASGUSR.SJL.TEMP2 PURGE

------- End of Utility program output -------

--- END OF STEP ---...

SJL for Example 2

User Utility Exit API CallsWhen PRO/JCL encounters the specified utility program name, it invokes the User Utility Exit program.

Use the steps in Preparing PRO/JCL for User Utility Exit Usage to prepare PRO/JCL for User Utility Exits. Use the API calls inthe below table in User Utility Exit programs to simulate your utility programs.

300

ASG-PRO/JCL Reference Guide

Page 308: ASG-PRO/JCL Reference Guide

l In batch, output data from REXX “SAY” commands are written to the SYSTSPRT DD.

l From the validation and JMP execution panels, output data from REXX “SAY” commands are written to aTSPRnnnn DD in the DSSISTC started task, where nnnn is the processor task ID.

l There are several SYS API calls which can be used with User Utility Exits. See the topic: System-level Functionsin the Using PRO/JCL with JMP documentation for further information.

l USUaddErrorToControlCard replaces USUaddError in release 2.6.1A. Change any User Utility exits that useUSUaddError to use the new name. PRO/JCL writes this message to the SJL when it encounters USUaddErrorin a User Utility exit:DSS06143A - The 'USUaddError' API is obsolete. Pleaseuse the 'USUaddErrorToControlCard' API instead.

USUaddErrorToControlCard -- for Parameterized Messages

Use USUaddErrorToControlCard for Parameterized Messages (Form 1) to attach user-defined messages to the SJL,typically when a USU exit program finds errors in JCL. This form inserts parameter values into a pre-defined,generalized message to tailor themessage for unique situations and attaches themessage to the SJL. SeeUSUaddErrorToControlCard -- for Embedded Text Messages to learn about Form 2. It retrieves an error message from thePC File and attaches it to a statement in the SJL. It can substitute up to 4 parameters into themessage.

Syntaxxx = dssiapi("USUaddErrorToControlCard", dd, cardno, msgno, severity, value1, value2,value3, value4)

Input Parametersdd The DDnamewhere PRO/JCL is to find the control cards.

cardno Control Card number to which PRO/JCL associates the error. Use a quoted string or REXX variable.

msgnoMessage Number (in the range of 90000 - 99999). Use a quoted string or REXX variable. This number matches onecreated using the JMP Facility Create and Modify User Messages ISPF panel. See JMP Facility Panels for details aboutwriting user messages.

severity A non-negative number indicating themessage severity level:

l 0 through 3 -- Advisory, appends an A to themessage.

l 4 through 7 --Warning, appends aW to themessage.

l 8 through 99 -- Error, appends an E to themessage.

value1, value2, value3, value4Optional string values for substitution into themessage. Use REXX variables or quotedstrings. This call inserts value1 through value4 (the values) into &1 through &4 (the parameters), respectively, inthemessage.

If fewer values than required by themessage are supplied using this form, PRO/JCL substitutes blanks. If more values aresupplied than parameters provided using this form, PRO/JCL ignores the extra values.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

301

User Utility Exit API Calls

Page 309: ASG-PRO/JCL Reference Guide

JPRC Valuesl OK the error statement was added successfully.

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

In this example, each REXX IF segment uses USUaddErrorToControlCard and msgno 90001. Ifthe entire message text is in the current RTS member, PRO/JCL substitutes values from the call toUSUaddErrorToControlCard into the message text. Each call toUSUaddErrorToControlCard uses the parameters differently to tailor the message.

Message Defined.

All &1 control cards must be a CREATE &2 card.

Parameterized USUaddErrorToControlCard message

USU CodeNote the omitted parameter for &2 in the first call to USUaddErrorToControlCard and the omitted parameter for &1 inthe second call to USUaddErrorToControlCard.

/* REXX */DD="USERCC"XX = DSSIAPI("USUgetRecsFromDD", DD) /*SETS UP JPRX*/N=1 /*THE FIRST RECORD FROM THE DD */CRFOUND = WORDPOS('CREATE',JPRX.N)IF ¬CRFOUND THEN DOXX = DSSIAPI("USUaddErrorToControlCard",DD, N, 90001, 8,

"FIRST") /* omitted parm &2 */END

N=2 /*THE SECOND RECORD FROM THE DD */CRFOUND = WORDPOS('DELETE',JPRX.N)IF ¬CRFOUND THEN DOXX = DSSIAPI("USUaddErrorToControlCard",DD, N, 90001,

8, " ", "or DELETE") /* omitted parm &1 */END

Parameterized USUaddErrorToControlCard - Form 1 exit

Input JCLNote themisspellings of CREAT and DELET.

//USERJCL JOB//STEP1 EXEC PGM=MYSTUFF,PARM='MYDATAS.NAME'//USERCC DD *CREAT ABCINC.NEW.DSDELET ABCINC.DEL.DSDELETE ABCINC.#TEST.PROCLIB

/*

Parameterized USUaddErrorToControlCard - Form 1 input JCL

302

ASG-PRO/JCL Reference Guide

Page 310: ASG-PRO/JCL Reference Guide

Resulting SJL

...//USERJCL JOB//* JUST A COMMENT HERE//STEP1 EXEC PGM=MYSTUF2,PARM='MYDATAS.NAME'//USERCC DD *----+----1----+----2----+----3----+----4----+----5----+----6----+----CREAT DSSI.NEW.DSDELET DSSI.DEL.DSDELETE DSSI.#TEST.PROCLIBEND OF CONTROL CARDS FOR USER UTILITY

/*----+----1----+----2----+----3----+----4----+----5----+----6----+----CREAT DSSI.NEW.DS

E1 - USU90001E - All FIRST control cards must be a CREATE card.DELET DSSI.DEL.DS

E2 - USU90001E - All control cards must be a CREATE OR DELETE card.DELETE DSSI.#TEST.PROCLIBEND OF CONTROL CARDS FOR USER UTILITY

--- END OF STEP ------ END OF JOB ---...

Parameterized USUaddErrorToControlCard - Form 1 SJL

USUaddErrorToControlCard -- for Embedded Text Messages

Use USUaddErrorToControlCard for Embedded Text Messages (Form 2) to write user-defined messages to the SJL,typically when a USU exit program finds errors in JCL. This form takes an embedded message and writes it to the SJL. Ituses an embedded message to attach an error message to a statement that appears in the SJL. SeeUSUaddErrorToControlCard -- for Parameterized Messages to learn about Form 1.

Syntaxxx = dssiapi("USUaddErrorToControlCard", dd, cardno, msgno, severity, msgtext)

Input Parametersdd The DDnamewhere PRO/JCL is to find the control cards.

cardno Control Card number to which PRO/JCL associates the error. Use a number or REXX variable in the range 1-n.

msgnoMessage Number (in the range of 90000 - 99999). Use a quoted string or REXX variable. Do not use a messagenumber defined in the JMP Facility.

severity A positive number indicating the level of severity for themessage:

l 0 through 3 -- Advisory, appends an A to themessage.

l 4 through 7 --Warning, appends aW to themessage.

l 8 through 99 -- Error, appends an E to themessage.

msgtext A REXX variable or string literal containing the custom text to be included in the SJL.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

303

User Utility Exit API Calls

Page 311: ASG-PRO/JCL Reference Guide

JPRC Valuesl OK the error statement was added successfully.

l Otherwise, a different error occurred. Display and examine themessage in JPRC to determine the necessaryaction.

ExampleNote that the entire message text is contained in the USU code.

USU Code

/* REXX */XX = DSSIAPI("USUGETRECSFROMDD", "USERCC") /*SETS UP JPRX*/N=1 /*THE FIRST RECORD FROM THE DD */DD="USERCC"CRFOUND = WORDPOS('CREATE',JPRX.N)IF ¬CRFOUND THEN DOXX = DSSIAPI("USUADDERRORTOCONTROLCARD", DD, N, 90808, 12,

"The first control card must be CREATE.")END

Embedded Message USUaddErrorToControlCard - Form 2 example

Input JCL

//USERJCL JOB//STEP1 EXEC PGM=MYSTUFF,PARM='MYDATAS.NAME'//USERCC DD *CREAT ABCINC.NEW.DSDELET ABCINC.DEL.DSDELETE ABCINC.#TEST.PROCLIB

/*

Embedded Message USUaddErrorToControlCard - Form 2 inputJCL

Resulting SJL

...//USERJCL JOB//* JUST A COMMENT HERE//STEP1 EXEC PGM=MYSTUFF,PARM='MYDATAS.NAME'//USERCC DD *----+----1----+----2----+----3----+----4----+----5----+--CREAT DSSI.NEW.DSDELET DSSI.DEL.DSDELETE DSSI.#TEST.PROCLIBEND OF CONTROL CARDS FOR USER UTILITY

/*----+----1----+----2----+----3----+----4----+----5----+--CREAT DSSI.NEW.DS

E1 - USU90808E - THE FIRST CONTROL CARD MUST BE CREATE.DELET DSSI.DEL.DSDELETE DSSI.#TEST.PROCLIBEND OF CONTROL CARDS FOR USER UTILITY

--- END OF STEP ------ END OF JOB ---...

Embedded Message USUaddErrorToControlCard - Form 2 SJL excerpt

304

ASG-PRO/JCL Reference Guide

Page 312: ASG-PRO/JCL Reference Guide

USUclose

USUclose simulates the closing of the named DD. Use this call with any USU API call that takes a ddname parameter. If theUser Utility exit program does not reopen this DD before a USUgetRecsFromDD or USUwriteToDD call to this DD,PRO/JCL flags the DD with error messages in the SJL or Edit macro output when an attempt to access the unopened DD ismade.

Syntaxxx = dssiapi("USUclose", ddname)

Input Parametersddname The name of the DD for which PRO/JCL simulates closing. Use a quoted string or REXX variable.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK

l NOTFOUND if PRO/JCL cannot find DD name.

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

USU CodeThe USU code in the below figure is mapped to theMYSTUFF program.

/*REXX*/...XX = DSSIAPI("USUOPENPSDD", "PCFDEL", "OUTPUT")

...XX = DSSIAPI("USUCLOSE", "PCFDEL")

...XX = DSSIAPI("USUWRITETODD", "PCFDEL", "WRITE THIS TEXT")IF JPRC <> "OK" THEN DOXX = DSSIAPI("USUADDERRORTOCONTROLCARD", "PCFDEL", 1,,

90808, 12, "RECORD NOT WRITTEN TO DD")END

...

Using USUclose

Input JCL

//ASGUSRA JOB (BNW)//STEP1 EXEC PGM=MYSTUFF//PCFDEL DD DSN=ASGUSR.JCL,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(SHR,DELETE)

Sample input JCL for USUclose

Resulting SJLThis PRO/JCL output comes from running the Edit macro JJ.

305

User Utility Exit API Calls

Page 313: ASG-PRO/JCL Reference Guide

...//ASGUSRA JOB (BNW)//STEP1 EXEC PGM=MYSTUFFE1 - DSS20005E - DCB WAS NOT OPENED FOR OUTPUT FOR DDNAME 'PCFDEL'.//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(OLD,KEEP,CATLG)----+----1----+----2----+----3----+----4----+----5----+----6----+--LISTCAT ALLE2 - USU90808E - RECORD NOT WRITTEN TO DD--- END OF STEP ---

...

Output from JJ execution

PRO/JCL inserts E1 as a result of the attempt by the User Utility exit to write to the closed DD. E2 is the result of thedetection of the error by the REXX code.

USUcreateAndCatalogDataset

Use USUcreateAndCatalogDataset to simulate the creation and cataloging of a new dataset. If you have local utilities thatcreate and catalog datasets, PRO/JCL will not know about this behavior. Therefore, it does not have built-in simulation ofthe creation of datasets by the local utility. With this API you inform PRO/JCL about the behavior of the local utility.

As PRO/JCL processes a JCL stream, it tracks changes to the real system catalog in its own current catalog. In thisway, it makes sure dataset references in the JCL are applied to the current catalog state. In other words, as PRO/JCLencounters JCL with dataset dispositions adding new a dataset to the real catalog, DISP=(NEW,CATLG), it adds thedataset to the current catalog. Later in the JCL stream processing, as JCL refers to the dataset thus created, PRO/JCL willknow that the dataset was created earlier even though it is not in the real system catalog.

In calling USUcreateAndCatalogDataset, you tell PRO/JCL to update its current catalog with the new data providedin the API call; PRO/JCL performs the same functions as if the JCL contained DISP=(NEW,CATLG) for the dataset inquestion. This avoids misleading error messages later in the JCL stream processing.

For this API call, PRO/JCL ensures that the dataset is not currently cataloged. If it is cataloged, thisAPI generates an error message in the Structured JCL Listing reporting this error.

See also USUisDatasetCataloged, USUdeleteAndUncatalogDataset.

Syntaxxx = dssiapi("USUcreateAndCatalogDataset", dsname, dsorg, unitname)

Input Parametersdsname The fully-qualified dataset name for which PRO/JCL simulates creating and cataloging. Use a quoted string orREXX variable.

dsorg The type of dataset organization. Use a quoted string or REXX variable.

l PS Physical Sequential

l PO Partitioned

l VS Variable

unitname The name of the unit where the dsname resides. Use a quoted string or REXX variable.

306

ASG-PRO/JCL Reference Guide

Page 314: ASG-PRO/JCL Reference Guide

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK

l Otherwise, there is an error with the API call. Display and examine themessage in JPRC to determine thenecessary action.

Example

USU CodeEven though USUcreateAndCatalogDataset checks for the dataset before it simulates its creation, coding it this waygives you the opportunity to furnish a custom error message.

.../*REXX*/

XX = DSSIAPI("USUISDATASETCATALOGED", "ASGUSR.MY.JCL")IF JPRC = NOTFOUND THEN DOXX = DSSIAPI("USUCREATEANDCATALOGDATASET", "ASGUSR.MY.JCL",,

"PO", "SYSDA")END

ELSE DO/* ERROR PROCESSING HERE */END

...

Using USUcreateAndCatalogDataset

Input JCLNote the DISP in STEP2 is (SHR,KEEP), presumes the pre-existence of the dataset ASGUSR.MY.JCL.

//ASGUSRA JOB (BNW)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD/*//STEP2 EXEC PGM=MYSTUF2//DSNIN DD DSN=ASGUSR.MY.JCL,// DISP=(SHR,KEEP)//SYSPRINT DD *FIRST PRINT CARDSECOND PRINT CARDNTH PRINT CARD/*

Sample input JCL for USUcreateAndCatalogDataset

Resulting SJLIn these results, PRO/JCL posts no errors, because the simulation cataloged ASGUSR.MY.JCL and this dataset was foundby STEP2.

307

User Utility Exit API Calls

Page 315: ASG-PRO/JCL Reference Guide

...//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *----+----1----+----2----+----3----+----4----+----5-FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD/*--- END OF STEP ---//STEP2 EXEC PGM=MYSTUF2//DSNIN DD DSN=ASGUSR.MY.JCL,// DISP=(SHR,KEEP)//SYSPRINT DD *----+----1----+----2----+----3----+----4----+----5-FIRST PRINT CARDSECOND PRINT CARDNTH PRINT CARD/*--- END OF STEP ------ END OF JOB ---...

Results using USUcreateAndCatalogDataset from the validation panel

Compare the Results using USUcreateAndCatalogDataset from the validation panel with Results usingUSUcreateAndCatalogDataset with User Utilities OFF. In the latter case, PRO/JCL validated the JCL with User Utilities OFFto obtain these results. BecauseMYSTUFF was not simulated, ASGUSR.MY.JCL was not found in the catalog.

E1 8 DSS20028E DATA SET 'ASGUSR.MY.JCL' WAS NOT FOUND IN CATALOG.//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *----+----1----+----2----+----3----+----4----+----5----+----6----+---FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD/*--- END OF STEP ---//STEP2 EXEC PGM=MYSTUF2//DSNIN DD DSN=ASGUSR.MY.JCL,// DISP=(SHR,KEEP)E1 - DSS20028E - DATA SET 'ASGUSR.MY.JCL' WAS NOT FOUND IN CATALOG.//SYSPRINT DD *----+----1----+----2----+----3----+----4----+----5----+----6----+---FIRST PRINT CARDSECOND PRINT CARDNTH PRINT CARD/*

Results using USUcreateAndCatalogDataset with User Utilities OFF

USUdeleteAndUncatalogDataset

Use USUdeleteAndUncatalogDataset to simulate the deletion and uncataloging of a dataset.

As PRO/JCL processes a JCL stream, it tracks changes to the real system catalog in its own current catalog. In thisway, it makes sure dataset references in the JCL are applied to the current catalog state. In other words, as PRO/JCLencounters JCL with dataset dispositions deleting a dataset from the real catalog, DISP=(OLD,DELETE), it deletes thedataset from the current catalog. Later in the JCL stream processing, as JCL refers to the dataset thus deleted, PRO/JCLwill know that the dataset was deleted earlier even though this status is not reflected in the real system catalog.

308

ASG-PRO/JCL Reference Guide

Page 316: ASG-PRO/JCL Reference Guide

If you have local utilities that delete and uncatalog datasets, PRO/JCL will not know about this behavior. Therefore, itdoes not have built-in simulation of the deletion of datasets by the local utility. Use this API to inform PRO/JCL of whatthe local utility does.

In calling USUdeleteAndUncatalogDataset, you tell PRO/JCL to update its current catalog with the new data provided inthe API call; PRO/JCL performs the same functions as if the JCL contained DISP=(OLD,DELETE) for the dataset in question.This avoids misleading error messages later in the JCL stream processing.

For this API call, PRO/JCL ensures that the dataset is currently cataloged. If it is not cataloged, thisAPI generates an error message in the SJL to that effect.

Syntaxxx = dssiapi("USUdeleteAndUncatalogDataset", dsname)

Input Parametersdsname The fully-qualified dataset name for which PRO/JCL simulates deleting and uncataloging. Use a quoted string orREXX variable.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK

l Otherwise, there is an error with the API call. Display and examine themessage in JPRC to determine thenecessary action.

Example

USU CodeEven though USUdeleteAndUnatalogDataset checks for the dataset before it simulates the deletion, coding it thisway gives you the opportunity to furnish a custom error message.

/*REXX*/XX = DSSIAPI("USUISDATASETCATALOGED", "ASGUSR.MY.JCL")IF JPRC = OK THEN DOXX = DSSIAPI("USUDELETEANDUNCATALOGDATASET", "ASGUSR.MY.JCL",,

"PO", "SYSDA")END

ELSE DOERRSTR = "PROBLEM WITH DELETING ASGUSR.MY.JCL--NOT THERE"XX = DSSIAPI("USUADDERRORTOCONTROLCARD", SYSIN, 1, 90808, 12,,

ERRSTR)END

Using USUdeleteAndUncatalogDataset

309

User Utility Exit API Calls

Page 317: ASG-PRO/JCL Reference Guide

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD/*

Sample input JCL forUSUdeleteAndUncatalogDataset

Resulting SJL

...SEV MSG NO. MESSAGE TEXT

------------------------------------------------------------------------E1 12 USU90808E PROBLEM WITH DELETING ASGUSR.MY.JCL--NOT THERE//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *----+----1----+----2----+----3----+----4----+----5----+----6----+----7--FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD/*----+----1----+----2----+----3----+----4----+----5----+----6----+----7--FIRST INPUT CARDE1 - USU90808E - PROBLEM WITH DELETING ASGUSR.MY.JCL--NOT THERESECOND INPUT CARDNTH INPUT CARD--- END OF STEP ------ END OF JOB ---...

Resulting SJL from the validation panel for USUdeleteAndUncatalogDataset

USUexecOtherProgram

USUexecOtherProgram simulates the running of a specified standard utility program; see Standard Utility Names for a listof available standard utilities. The simulation of these utilities by PRO/JCL includes processing DDs in accordance with theutility's requirements. PRO/JCL also simulates these utilities for local alias names entered into the Utility Alias table.

SyntaxutilRC = dssiapi("USUexecOtherProgram", progname)

Input Parametersprogname The standard utility name or local alias for a standard utility PRO/JCL simulates running. Use a quoted string orREXX variable. The below table lists the available utilities that can be used as a program name:

ADRDSSU IDCAMS IKJEFT1A

CASORT IEBCOPY IKJEFT1B

DFHDRP IEBGENER PDSFAST

Standard Utility Names

310

ASG-PRO/JCL Reference Guide

Page 318: ASG-PRO/JCL Reference Guide

DFSRRC00 IEFBR14 SORT

FDRDSF IEHLIST SYNCSORT

ICEGENER IEHPROGM

ICEMAN IKJEFT01

ReturnsutilRC Returns the return code from the utility.

JPRC Valuesl OK Simulation was successful.

l NOTFOUND if program name not coded.

Example

USU Code

/*REXX*/XX = DSSIAPI("USUEXECOTHERPROGRAM", "SORT")

...

Using USUexecOtherProgram

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SORTIN DD *FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD//SYSIN DD *

SORT FIELDS=(1,1,CH,A)//SORTOUT DD DSN=ASGUSR.SORTOUT,SPACE=(CYL,5),DISP=(NEW,CATLG)//SYSOUT DD SYSOUT=*

...

Sample input JCL for USUexecOtherProgram

Resulting SJLNote that PRO/JCL treated MYSTUFF as though it were the SORT program.

311

User Utility Exit API Calls

Page 319: ASG-PRO/JCL Reference Guide

...//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SORTIN DD *----+----1----+----2----+----3----+----4----+----5----+----6---FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD//SYSIN DD *----+----1----+----2----+----3----+----4----+----5----+----6---

SORT FIELDS=(1,1,CH,A)//SORTOUT DD DSN=ASGUSR.SORTOUT,SPACE=(CYL,5),DISP=(NEW,CATLG)//SYSOUT DD SYSOUT=*

------- START OF UTILITY PROGRAM OUTPUT -----------+----1----+----2----+----3----+----4----+----5----+----6---

-------- PROCESSING SYSIN --------SORT FIELDS=(1,1,CH,A)

------- END OF UTILITY PROGRAM OUTPUT -------

--- END OF STEP ------ END OF JOB ---

...

Resulting SJL for USUexecOtherProgram

USUgetDSNameForDD

USUgetDSNameForDD retrieves the dataset name from the specified DD statement after symbolics and overrides areapplied.

Only the first DSN is retrieved in the case of a DD statement with several DSNs in concatenation.

Syntaxdsn = DSSIAPI("USUgetDSNameforDD", ddname)

Input Parametersddname The ddname for which PRO/JCL fetches the dataset name. Use a quoted string or REXX variable.

Returnsdsn The dataset name for the DD statement.

If there is more than one dataset within a DD concatenation, PRO/JCL returns the first. “dsn” will be set to blanks if thedataset is not coded in the DD statement.

JPRC Valuesl OK API completed successfully; check dsn return value.

l NOTFOUND Check for either of these two possibilities:o If PRO/JCL cannot find the DD statement, the “dsn” will not be found.o If DD does not have a dataset name.

312

ASG-PRO/JCL Reference Guide

Page 320: ASG-PRO/JCL Reference Guide

Example

USU Code

/*REXX*/dsn=DSSIAPI("USUGETDSNAMEFORDD", "SORTOUT")if JPRC <> "OK" then dosay dsnend

Using USUgetDSNameForDD

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SORTIN DD *FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD//SYSIN DD *

SORT FIELDS=(1,1,CH,A)//SORTOUT DD DSN=ASGUSR.SORTOUT,SPACE=(CYL,5),DISP=(NEW,CATLG)//SYSOUT DD SYSOUT=*

...

Sample input JCL for USUgetDSNameforDD

Output from REXXIn this case, refer to the program output queue (SDSF or similar).

...ASGUSR.SORTOUT...

Resulting SJL forUSUgetDSNameforDD

USUgetInputFileName

USUgetInputFileName returns the name of the dataset and member name selected for the current scan. It returns thesame name regardless of what statement the User Utility exit program is processing.

In the case of JJ, this API returns the dataset and member a user is editing.

Syntaxvalue = DSSIAPI("USUgetInputFileName")

Input ParametersNone

Returnsvalue The following table explains the return value for various PRO/JCL execution methods:

313

User Utility Exit API Calls

Page 321: ASG-PRO/JCL Reference Guide

Method Description of returned value

Batch

USUgetInputFileName returns the current member from the PRO/JCL INPUT statement. Forexample:%% INPUT DSN=SYS1.JCLLIB,

%% SELECT=(ABC,DEF)

Because 2members are selected, PRO/JCL invokes the User Utility exit program twice. Duringthe first invocation, the API returns “SYS1.JCLLIB(ABC)”. During the second invocation, itreturns “SYS1.JCLLIB(DEF)”.

JJWhen a user invokes JJ, PRO/JCL reads the JCL directly from the ISPF edit work area and notfrom a file. For example: If you are editing SYS1.JCLLIB(ABC), USUgetInputFileName returns“SYS1.JCLLIB(ABC)”.

JJDIRECT

When PRO/JCL invokes a User Utility exit program during JJDIRECT, it returns the sameinformation as JJ: the dataset and member name that the user is editing; but not thetemporary file that PRO/JCL is scanning on the remote system.

(See the topic - Directed Execution in the User documentation for more information).

Batch DirectedExecution

In directed execution, USUGetInputFileName returns the dataset name that was read on theremote system. For example:%% CONNECT%% SEND FROMDSN=SYS1.JCLLIB,SELECT=ABC,%% TODSN=SYS1.TEMP.JCLLIB%% ROUTE%% INPUT DSN=SYS1.TEMP.JCLLIB

In this case USUgetInputFilename returns SYS1.TEMP.JCLLIB(ABC).

ISPF ForegroundExecution

As with batch, when PRO/JCL is executed in ISPF Foreground USUGetInputFileName returnsthe dataset name and member name of themember being scanned.

JPRC ValuesOK Check the return value for its contents.

Example

USU Code

inputDataset = DSSIAPI("USUgetInputFileName")Say "The current input file is:" inputDataset

Using USUgetInputFileName

314

ASG-PRO/JCL Reference Guide

Page 322: ASG-PRO/JCL Reference Guide

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SORTIN DD *FIRST INPUT CARDSECOND INPUT CARD

...NTH INPUT CARD//SYSIN DD *

SORT FIELDS=(1,1,CH,A)//SORTOUT DD DSN=ASGUSR.SORTOUT,SPACE=(CYL,5),DISP=(NEW,CATLG)

...

Sample input JCL for USUgetInputFileName

Output from REXXIn this case, refer to the program output queue (SDSF or similar).

...The current input file is: ASGUSR.JCL(BR14)...

Resulting SJL for USUgetInputFileName

USUgetMBRforDD

USUgetMBRforDD retrieves themember name for the specified DD statement. Use this API Call to read themembername.

Syntaxmbr = DSSIAPI("USUgetMBRforDD", ddname)

Input Parametersddname The name of the DD from which PRO/JCL simulates getting themember. Use a quoted string or REXX variable.

Returnsmbr This function returns the dataset member name. PRO/JCL sets mbr to blanks if the dataset or member does notexist.

JPRC Valuesl OK

l NOTFOUND Means either of these two conditions:o PRO/JCL could not find the DD in the JCL.o Themember was not coded in the JCL.

315

User Utility Exit API Calls

Page 323: ASG-PRO/JCL Reference Guide

Example

USU Code

/*REXX*/MBR = DSSIAPI("USUGETMBRFORDD", SYSIN1)IF JPRC = OK THEN DOSAY MBR

END

Using USUgetMBRforDD

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN1 DD DSN=ASGUSR.WORK.CNTL(WORKSTUF),DISP=SHR

Sample input JCL for USUgetMBRforDD

Output from REXXIn this case, refer to the output queue (SDSF or similar).

...WORKSTUF...

Resulting SJL forUSUgetMBRforDD

USUgetRecsFromDD

USUgetRecsFromDD simulates the reading of control cards for the specified DD. The cards are returned in the REXXvariable JPRX.

Syntaxxx = dssiapi("USUgetRecsFromDD", ddname)

Input Parametersddname The name of the DD from which PRO/JCL simulates getting records. Use a quoted string or REXX variable.

ReturnsPRO/JCL does not return a value for this call. It returns an array of records in the special variable JPRX.

JPRC Valuesl OK

l NOTFOUND PRO/JCL could not find the DD in the JCL.

316

ASG-PRO/JCL Reference Guide

Page 324: ASG-PRO/JCL Reference Guide

Example

USU Code

/*REXX*/XX = DSSIAPI("USUGETRECSFROMDD", SORTIN)DO N=1 TO JPRX.0SAY JPRX.NEND

Using USUgetRecsFromDD

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SORTIN DD *FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD

Sample input JCL for USUgetRecsFromDD

Output from REXXIn this case, refer to the program output queue (SDSF or similar)

FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD

Resulting ofUSUgetRecsFromDD

USUgetSUBSYSforDD

USUgetSUBSYSforDD retrieves the subsystem name for the given DD.

Syntaxsubsys = dssiapi("USUgetSUBSYSforDD", ddname)

Input Parametersddname The name of the DD for which PRO/JCL gets the subsystem name. Use a quoted string or REXX variable.

Returnssubsys PRO/JCL returns the subsystem name.

JPRC Valuesl OK

l NOTFOUNDMeans either of these two conditions:o PRO/JCL could not find the DD in the JCL.o PRO/JCL could not find the subsystem name.

317

User Utility Exit API Calls

Page 325: ASG-PRO/JCL Reference Guide

Example

USU Code

/*REXX*/SAY TIME()SUBSYS = DSSIAPI("USUGETSUBSYSFORDD", SYSIN)IF JPRC = OK THEN DOSAY SUBSYS

END

Using USUgetSUBSYSforDD

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD DSN=ASGUSR.WORK.CNTL,SUBSYS=ESP,DISP=SHR//*SYSIN DD DSN=ASGUSR.SRCLIB,SUBSYS=LAM,DISP=SHR

Sample input JCL for USUgetSUBSYSforDD

Output from REXXIn this case, refer to the program output queue (SDSF or similar)

...ESP...

Resulting SJLforUSUgetSUBSYSforDD

USUisDatasetCataloged

USUisDatasetCataloged allows you to find out if a given dataset name is cataloged.

This API does not affect the status of a dataset (existing or deleted). Also, it does not generate any messages in the SJL.

USUisDatasetCataloged is useful when you want to know a dataset's status to generate a message from the UserUtility Exit program.

Syntaxxx = dssiapi("USUisDatasetCataloged", dsname)

Input Parametersdsname The fully-qualified dataset name. Use a quoted string or REXX variable.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

318

ASG-PRO/JCL Reference Guide

Page 326: ASG-PRO/JCL Reference Guide

JPRC Valuesl OK PRO/JCL found the dataset.

l NOTFOUND PRO/JCL could not find the dataset in the catalog.

l Otherwise, there is an error with the API call. Display and examine themessage in JPRC to determine thenecessary action.

Example

USU Code

/*REXX*/XX = DSSIAPI("USUISDATASETCATALOGED", "ASGUSR.JCL")IF JPRC = NOTFOUND THEN DOXX = DSSIAPI("USUCREATEANDCATALOGDATASET", "ASGUSR.MY.JCL",,

"PO", "SYSDA")END

ELSE DOERRSTR = "PROBLEM WITH CREATING ASGUSR.MY.JCL"XX = DSSIAPI("USUADDERRORTOCONTROLCARD", SYSIN, 1, 90808, 12,,

ERRSTR )END

Using USUisDatasetCataloged

Input JCL

...//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD/*//STEP2 EXEC PGM=MYSTUF2//DSNIN DD DSN=ASGUSR.MY.JCL,// DISP=(SHR,KEEP)//SYSPRINT DD *FIRST PRINT CARDSECOND PRINT CARDNTH PRINT CARD/*

...

Sample input JCL for USUisDatasetCataloged

319

User Utility Exit API Calls

Page 327: ASG-PRO/JCL Reference Guide

Resulting SJL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *----+----1----+----2----+----3----+----4----+----5----+----6----+--FIRST INPUT CARDSECOND INPUT CARDNTH INPUT CARD/*----+----1----+----2----+----3----+----4----+----5----+----6----+--FIRST INPUT CARDE1 - USU90808E - PROBLEM WITH CREATING ASGUSR.MY.JCLSECOND INPUT CARDNTH INPUT CARD--- END OF STEP ---//STEP2 EXEC PGM=MYSTUF2//DSNIN DD DSN=ASGUSR.MY.JCL,// DISP=(SHR,KEEP)E2 - DSS20028E - Data set 'ASGUSR.MY.JCL' was not found in catalog.//SYSPRINT DD *----+----1----+----2----+----3----+----4----+----5----+----6----+--FIRST PRINT CARDSECOND PRINT CARDNTH PRINT CARD/*--- END OF STEP ---

Resulting SJL for USUisDatasetCataloged

USUisDDAllocated

USUisDDAllocated determines if a DD is coded in the step executing the local Utility.

While PRO/JCL is processing JCL and it encounters a program name that you have identified as a local utility, it invokesthe User Utility Exit program. Information about that step is available to the exit. If the local utility is affected by theexistence of certain DD names, you can use this API to check if they are coded in the current step.

Generally, you will want to use one of the API calls USUOpenPSDD or USUOpenPODD. Those APIs providemoreautomated checking for a number of file conditions. For example, if the dataset on a DD doesn't existUSUisDDAllocated does not generate a message in the SJL. However, USUOpenPSDD and USUOpenPODD dogenerate the appropriatemessages.

Syntaxxx = dssiapi("USUisDDAllocated", ddname)

Input Parametersddname The name of the DD for which PRO/JCL determines the allocation status. Use a quoted string or REXX variable.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK DD was found to be allocated.

l NOTFOUND PRO/JCL did not find DD in the JCL.

320

ASG-PRO/JCL Reference Guide

Page 328: ASG-PRO/JCL Reference Guide

Example

USU CodeThis utility exit requires the existence of a DD named SYSIN for each occurrence ofMYSTUFF.

/*REXX*/SAY " "SAY TIME()XX = DSSIAPI("USUISDDALLOCATED", SYSLIBA)IF JPRC <> OK THEN DOXX = DSSIAPI("USUADDERRORTOCONTROLCARD", SYSIN, 2, 90808,,

12, "DD NOT ALLOCATED: SYSLIBA")SAY JPRC

END

Using USUisDDAllocated

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *----+----1----+----2----+----3----+----4----+--FIRST RECORDSECOND RECORDTHIRD RECORD//SYSIN1 DD DSN=ASGUSR.JCL,DISP=SHR//SYSLIB DD DSN=ASGUSR.USU.EXEC,DISP=SHR

Sample input JCL for USUisDDAllocated

Resulting SJL

...//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//SYSIN DD *----+----1----+----2----+----3----+----4----+----5FIRST RECORDSECOND RECORDTHIRD RECORD//SYSIN1 DD DSN=ASGUSR.JCL,DISP=SHR//SYSLIB DD DSN=ASGUSR.USU.EXEC,DISP=SHR----+----1----+----2----+----3----+----4----+----5FIRST RECORDSECOND RECORDE1 - USU90808E - DD NOT ALLOCATED: SYSLIBATHIRD RECORD--- END OF STEP ------ END OF JOB ---...

Resulting SJL for USUisDDAllocated

USUopenPODD

Use USUopenPODD to perform a simulated open.

321

User Utility Exit API Calls

Page 329: ASG-PRO/JCL Reference Guide

When PRO/JCL encounters a program name identified as a local utility, it invokes the appropriate User Utility Exitprogram. Information about that step is available to the exit program.

In order to simulate the operation of a local utility it is usually necessary to open one or more DDs to obtain input orsimulate the writing of output. This API call simulates the opening of a PDS as INPUT or OUTPUT. When a User Utility Exitprogram invokes this API it tell PRO/JCL that it expects this DD to be allocated and that the dataset it refers to in the DD isa PDS. With this information, PRO/JCL evaluates the JCL looking for these and other potential problems:

l Missing DD.

l Dataset is not found.

l Dataset not a PDS.

PRO/JCL writes themessages it generates during the processing of the JCL stream to the Structured JCL Listing. TheINPUT|OUTPUT designation allows PRO/JCL to look for specific errors.

When the API is used to open an output DD, the User Utility Exit program can actually write to the DD. However, PRO/JCLdoes not actually write to the real PDS. Instead, it holds the records in memory. Then if another step of the JCL streamrefers to those records, they remain available for the evaluation of that step.

Use USUopenPODD in conjunction with the USUwriteToDD and USUstowMBRforDD functions.

Syntaxxx = DSSIAPI("USUopenPODD", ddname, mode)

Input Parametersddname The name of the DD of which PRO/JCL simulates the opening. Use a quoted string or REXX variable.

modeOpen mode (INPUT or OUTPUT).

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK if the open was successfully simulated.

l NOTFOUND if the DD could not be found.

l Otherwise an error occurred. A DSS error message if any other errors occurred (such as DSN not PO). Display andexamine themessage in JPRC to determine the necessary action.

ExampleFor example, if the user utility you are simulating uses DD name “SYSUT2” for which it writes members to a PDS, you canmake certain that the DD is allocated to a proper PDS. Using this call:

xx = DSSIAPI("USUopenPODD", "SYSUT2", "OUTPUT")

Making this call will ensure that:

l the DD is available in the JCL

l the DD is allocated to a PDS

l the PDS exists or is created in the JCL

l the Security System will allow updates for the current userid

322

ASG-PRO/JCL Reference Guide

Page 330: ASG-PRO/JCL Reference Guide

The actual writing records or closing the file is not performed for this level of simulation.

The REXX code in Using USUopenPSDD is mapped to MYSTUF2 program. Note that the utility exit is looking for PCFDELA.

/*REXX*/XX = DSSIAPI("USUOPENPODD", "SYSUT2", "OUTPUT")IF JPRC <> OK THEN DOERRORSTR = "SYSUT2 " JPRCXX = DSSIAPI("USUADDERRORTOCONTROLCARD", "SYSPRINT", 1,,

90808, 12, ERRORSTR)END

Using USUopenPODD

Input JCLNote the DD name is PCFDEL.

//SYSINN DD DSN=ASGUSR.#TEST.TESTLIB,// DISP=(OLD,KEEP,CATLG)//SYSPRINT DD *FIRST CARDSECOND CARDNTH CARD/*

Sample input JCL for USUopenPODD

Resulting SJLThis is PRO/JCL output from running the PRO/JCL validation panel. With the JCL valid (even though PCFDELA is not foundby the utility exit), PRO/JCL positions E1 after the first control card of SYSPRINT DD*.

...//SYSINN DD DSN=ASGUSR.#TEST.TESTLIB,// DISP=(SHR,KEEP,CATLG)//SYSPRINT DD *----+----1----+----2----+----3----+----4----+----5----+FIRST CARDSECOND CARDNTH CARD/*----+----1----+----2----+----3----+----4----+----5----+FIRST CARDE1 - USU90808E - SYSUT2 NOTFOUNDSECOND CARDNTH CARD

...

SJL for USUopenPODD

This function can be used to simulate opening a sequential dataset. Any datasets 'opened' can beused by PRO/JCL in subsequent job steps, but at no time is the dataset actually opened - it is storedonly in memory for the duration of PRO/JCL processing for the JOB.

323

User Utility Exit API Calls

Page 331: ASG-PRO/JCL Reference Guide

USUopenPSDD

Use this function to ensure that the specified DD is properly allocated for use as a sequential dataset. Use this function inconjunction with the USUwriteToDataset function.

Syntaxxx = DSSIAPI("USUopenPSDD", ddname, mode)

Input Parametersddname The name of the DD of which PRO/JCL simulates the opening. Use a quoted string or REXX variable.

modeOpen mode (INPUT or OUTPUT).

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK if the open was successfully simulated.

l NOTFOUND if the DD could not be found.

l Otherwise an error occurred. A DSS error message if any other errors occurred (such as DSN not PO). Display andexamine themessage in JPRC to determine the necessary action.

ExampleIf the user utility you are simulating uses DD name “SYSPRINT” for which it writes members to a sequential dataset, youcan use USUopenPSDD to make certain that the DD is properly allocated to a sequential dataset. Making this call willensure that:

l the DD is available in the JCL.

l the DD is allocated to a sequential dataset.

l the sequential dataset exists or is created in the JCL.

l the Security System will allowupdates for the current userid.

Actually writing records or closing the file are not performed for this level of simulation.

USU CodeThe REXX code in the below figure is mapped to MYSTUF2 program. Note that the utility exit is looking for PCFDELA.

/*REXX*/XX = DSSIAPI("USUOPENPSDD", "PCFDELA", "OUTPUT")IF JPRC <> OK THEN DOERRORSTR = "PCFDELA " JPRCXX = DSSIAPI("USUADDERRORTOCONTROLCARD", "SYSPRINT", 1,,

90808, 12, ERRORSTR)END

Using USUopenPSDD

Input JCLNote the DD name is PCFDEL.

324

ASG-PRO/JCL Reference Guide

Page 332: ASG-PRO/JCL Reference Guide

//STEP1 EXEC PGM=MYSTUF2//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(OLD,KEEP,CATLG)//SYSPRINT DD *FIRST CARDSECOND CARDNTH CARD

Sample input JCL for USUopenPSDD

Resulting SJLThis PRO/JCL output from running the PRO/JCL validation panel. With the JCL valid (even though PCFDELA is not foundby the utility exit), PRO/JCL positions E1 after the first control card of SYSPRINT DD*.

...//STEP1 EXEC PGM=MYSTUF2//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(OLD,KEEP,CATLG)//SYSPRINT DD *----+----1----+----2----+----3----+----4----+----5----+FIRST CARDSECOND CARDNTH CARD----+----1----+----2----+----3----+----4----+----5----+FIRST CARDE1 - USU90808E - PCFDELA NOTFOUNDSECOND CARDNTH CARD

...

Resulting SJL for USUopenPSDD

USUsetProgramAbend

USUsetProgramAbend simulates setting the abend code of the program in the current step to a specified code.

Syntaxxx = dssiapi("USUsetProgramAbend", abendcode)

Input Parametersabendcode The abend code PRO/JCL inserts. Use a quoted string or REXX variable.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK Abend simulation successful.

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

325

User Utility Exit API Calls

Page 333: ASG-PRO/JCL Reference Guide

Example

USU Code

/*REXX*/XX = DSSIAPI("USUOPENPSDD", "PCFDELA", "OUTPUT")IF JPRC <>OK THEN DO

XX = DSSIAPI("USUSETPROGRAMABEND", "U808")EXIT 0END

Using USUsetProgramAbend

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(OLD,KEEP,CATLG)

Sample input JCL for USUsetProgramAbend

Resulting SJL

...E1 8 DSS20105E 'ASGUSRA STEP1': STEP WOULD ABEND, CODE 'U808'.//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFFE1 - DSS20105E - 'ASGUSRA STEP1': STEP WOULD ABEND, CODE 'U808'.//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920),// DISP=(OLD,KEEP,CATLG)

...

Resulting SJL for USUsetProgramAbend

USUstowMBRforDD

USUstowMBRforDD simulates stowing a set of records to a partitioned dataset member. It is used in conjunction withthe USUopenPODD and USUwriteToDD functions. After all required records have been prepared using USUwriteToDDfunction calls, USUstowMBRforDD simulates completion of the write process.

This function can be used to simulate writing to partitioned and sequential datasets. Any records'written' can be retrieved for processing by PRO/JCL in subsequent job steps, but at no time arethese records actually written to physical datasets - they are stored only in memory for the durationof PRO/JCL processing for the JOB.

Syntaxxx = DSSIAPI("USUstowMBRforDD", ddname, membername)

Input Parametersddname The name of the DD into which PRO/JCL simulates stowing records. Use a quoted string or REXX variable.

326

ASG-PRO/JCL Reference Guide

Page 334: ASG-PRO/JCL Reference Guide

membername Themember name to be stowed. Use a quoted string or REXX variable.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

JPRC Valuesl OK if the stowing was successfully simulated.

l NOTFOUND if the DD was not found.

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

Example

USU Code

.../*REXX*/XX = DSSIAPI("USUOPENPSDD", "PCFDEL", "OUTPUT")XX = DSSIAPI("USUWRITETODD", "PCFDEL")XX = DSSIAPI("USUSTOWMBRFORDD", "PCFDEL", "SYSIN1")

...

Using USUstowMBRforDD

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DISP=(OLD,KEEP,CATLG)//STEP2 EXEC PGM=MYSTUF2//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DISP=(MOD,KEEP)

Sample input JCL for USUstowMBRforDD

USUwriteToDD

USUwriteToDD simulates writing records to a sequential or partitioned dataset. Use it with the USUopenPODD,USUopenPSDD and USUstowMBRforDD calls. This function should be called for each record. Records written using thisfunction are stored in memory. Subsequent references to the dataset and/or PDS member with the USUgetRecsFromDDfunction will retrieve these previously stored records. For partitioned datasets, the USUstowMBRforDD function mustalso be called for the DD before the records can be referenced.

Syntaxxx = DSSIAPI("USUwriteToDD", ddname, record)

Input Parametersddname The name of the DD to which PRO/JCL simulates writing records. Use a quoted string or REXX variable.

record The record to be 'written' to the dataset allocated to ddname. Use a quoted string or REXX variable.

ReturnsPRO/JCL does not return a value for this call. Evaluate JPRC.

327

User Utility Exit API Calls

Page 335: ASG-PRO/JCL Reference Guide

JPRC Valuesl OK if the write was successfully simulated.

l NOTFOUND if the DD was not opened.

l Otherwise an error occurred. Display and examine themessage in JPRC to determine the necessary action.

l If the dataset referenced on the DD statement physically exists, after calling this function any subsequentreferences to the dataset during processing by PRO/JCL will retrieve the records defined in theUSUwriteToDD function calls rather then the records that are physically contained in the dataset.

l This function can be used to simulate writing to partitioned and sequential datasets. Any records 'written'can be retrieved for processing by PRO/JCL in subsequent job steps, but at no time are these recordsactually written to physical datasets - they are stored only in memory for the duration of PRO/JCL processingfor the JOB.

Example

USU Code

.../*REXX*/XX = DSSIAPI("USUOPENPSDD", "PCFDEL", "OUTPUT")XX = DSSIAPI("USUWRITETODD", "PCFDEL")XX = DSSIAPI("USUSTOWMBRFORDD", "PCFDEL", "SYSIN1")

...

Using USUwriteToDD

Input JCL

//ASGUSRA JOB (TST)//STEP1 EXEC PGM=MYSTUFF//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DISP=(OLD,KEEP,CATLG)//STEP2 EXEC PGM=MYSTUF2//PCFDEL DD DSN=ASGUSR.#TEST.TESTLIB,// DISP=(MOD,KEEP)

Sample input JCL for USUwriteToDD

328

ASG-PRO/JCL Reference Guide

Page 336: ASG-PRO/JCL Reference Guide

Validation PanelsThis topic describes the PRO/JCL product panels that provide access to the validation, change, standards, andreformatting functions of PRO/JCL. From these panels, you can specify the scheduler, the input library, the outputlibrary, whether the processing is done in foreground or background, and other execution-time options.

n PRO/JCL Validation Panel

n JJ Edit Macro Settings Panel

n JJDirect Edit Macro Settings Panel

n Scheduler Popup

n Output Libraries Popup

n Batch JCL Panel

n Specify TSO Hardcopy Output Panel

PRO/JCL Validation PanelUse the PRO/JCL Validation panel to validate and reformat your JCL.

To reach the Validation panel

n Choose Validation from the ASG-PRO/JCLMain Menu.

File Settings--------------------------------------------------------------------------------

PRO/JCL ValidationCommand ===>

F Foreground Execution RTS Member . . DEFAULT ( * for list)B Background Execution E Edit Input LibraryV View Input Library

Input Library 'ASGUSR.SYS1.WORKLIB'Member . . . . * Show Directory Y (Y/N)Exclude Member Show Directory N (Y/N)Type . . . . . PDS ( * for list)

Listname . . . . ( * for list)Processing Mode JOB ( * for list)First PROCLIBLib type . . . PDS ( * for list)

JMP Library. . . 'ASGUSR.SYS1.WORKLIBJMP Name . . . . Parm . .Reformat . . . . ON ( * for list) Overwrite Input Lib N (Y/N)Reformat Member. DEFAULT ( * for list)SJL Hardcopy . . N (Y/N) Keep SJL Data Set N (Y/N)

PRO/JCL Validation panel

329

Validation Panels

Page 337: ASG-PRO/JCL Reference Guide

Action Bar

File

Item Description

Edit Input LibraryEdit the input JCL member. If theMember field contains a mask, then PRO/JCLdisplays a selectable list ofmembers.

Browse Input Library Browse the input JCL member

View Input Library View the input JCL member.

Exit Return to theMain menu.

Choices for PRO/JCL Validation panel Action Bar item File

Settings

Item Description

RTS Member Edit/view the current RTS member or activate a new RTS member.

Scheduler Specify the scheduler interface PRO/JCL uses in validating JCL.

Output Libraries Specify the libraries where Reformatted or changed JCL is written.

BatchJCL Specify a JOB statement for background processing.

TSOParms Specify the parameters for hardcopy background.

User Report Title Specify a sub-title for the report.

Options ReportSpecify whether PRO/JCL prints the Options in Effect report after it finishes processingmembers.

Skeleton Processing Strips the ISPF statements from a JCL member before processing.

Extended MessagesDisplays or prohibits the display of extended messages in the SJL in foreground andbackground modes.

Selection List Edit, view and add member selection lists.

Alternate Userid

Specify an alternate userid for security checking.

An alternate user ID does not check the UNIX services path.

Choices for PRO/JCL Validation panel Action Bar item Settings

330

ASG-PRO/JCL Reference Guide

Page 338: ASG-PRO/JCL Reference Guide

Item Description

Selection Exit A Selection Exit is specified when a user wants to makemodifications to the JOB JCL priorto validating it. The JCL modifications will not be saved.

Reset BetweenMembers

Specify Y or N to determine if the PRO/JCL simulator should be reset after each memberhas been processed.

First Control Card Specifies the dataset PRO/JCL searches first for control card dataset members.

Commands

Commands Description

F (Foreground)Enter F on the Command line to execute PRO/JCL in foreground mode. PRO/JCL processesthemembers specified in theMember field or the list ofmembers specified in the Listnamefield.

E (Edit Input Library) Enter E on the Command line to edit themember or select members from a list.

B (Background)Enter B on the Command line to execute PRO/JCL in background mode. PRO/JCLprocesses themembers specified in theMember field or the list ofmembers specified inthe Listname field.

V (View Input Library) Enter V on the Command line to view themember or to select members from a list.

Commands for PRO/JCL Validation panel

l To view or edit the PRO/JCL control cards and execution JCL prior to foreground execution, enter FE on thecommand line.

l To view or edit the PRO/JCL control cards and execution JCL prior to background execution, enter BE on thecommand line.

Fields

Field Description

RTS Member This field displays the name of the active RTS member.

Input Library -- Specify the fully-qualified JCL library.

Member -- Enter the names, a range, or a mask to select members.

Show Directory -This applies when a mask (* or %) has been used in themember field.

Fields for PRO/JCL Validation panel

331

PRO/JCL Validation Panel

Page 339: ASG-PRO/JCL Reference Guide

Field Description

Y - Enter Y to display the directory of all mask matching members.

N - Enter N to process all themask matching members.

Exclude Member

Enter one or more combinations of a member name, masked member name or a range ofmember names separated by commas.

A rangemay not havemask characters (* or %) specified.

Excluded Member(s) only applies when a mask or range has been specified for theMember. Themembers coded in this field will not be processed. A range or multiplemembers are not valid when requesting Browse, View, or Edit.

Show Directory --This applies when a mask (* or %) has been used in the excludememberfield.

Y - Enter Y to display the exclude directory list.

N - Enter N to proceed without displaying the exclude directory list.

It is not valid to specify ExcludeMembers, when individual members areselected for input and themember ShowDirectory is Y.

Type Choose from: PDS, PANVALET (PAN), LIBRARIAN (LIB).

Listname The name of the selection list PRO/JCL validates. This field takes precedence over the InputLibrary and members.

Processing Mode The processing mode that tells PRO/JCL how to interpret the input members.

First PROCLIBFirst PROCLIB specifies the library PRO/JCL searches for PROC and INCLUDEmembersbefore searching other libraries. For more information on PROC search order see the topic- Library Search Order for PROCs and INCLUDEs in the User documentation.

First PROCLIB TypeThe type identifies the First PROCLIB library as being a PDS, PANVALET, or LIBRARIANdataset.

JMP Library -- Specify the fully qualified JMP library.

Name -- The name of themember of the JMP program to be run.

Parm -- The parameter to be passed to the JMP program.

ReformatSpecify whether or not PRO/JCL reformats themembers. Valid values are: ON, OFF,REFORMATONLY. Use * to view a list of values.

Reformat Member The name of the Reformatter member PRO/JCL uses to reformat the JCL members. Use *

332

ASG-PRO/JCL Reference Guide

Page 340: ASG-PRO/JCL Reference Guide

Field Description

to view a list ofmembers.

SJL HardcopyY - Prints a copy of the SJL report and is effective during both foreground and backgroundvalidation.

N - Prevents printing the SJL report and is effective during foreground validation only.

Keep SJL Data Set

Y - Keeps the SJL dataset for later reference after the foreground run.

N - Deletes the dataset after PRO/JCL displays it. PRO/JCL retains a maximum of 99datasets and does not delete or overwrite any dataset. PRO/JCL displays this error if 99SJLs are found:Allocation failed for the SJL. The maximum number of 99 SJLscurrently exists.

PRO/JCL performed its scan but was unable to save and display the SJL. Delete one ormore datasets so that PRO/JCL can allocate a dataset. This option only applies toforeground validation

JJ Edit Macro Settings PanelUse this panel to set up options for the JJ, JJSCAN, and JJSUB Edit macros.

To access this panel

n Type JJ opt on the command line while editing any member.

Settings------------------------------------------------------------------------------

JJ Edit Macro SettingsCommand ===>

RTS Member . . . . . DEFAULT ( * for list)Processing Mode . . JOB ( * for list)First PROCLIB . . .Lib type . . . . . PDS ( * for list)

JMP Library . . . . 'DSSI.SYS1.EXEC'JMP Name . . . . . .JMP Parm . . . . . .

Reformat . . . . . . ON ( * for list)Reformat Member . . DEFAULT ( * for list)Scroll to Top . . . Y (Y/N)

Press END to return to Edit.

JJ Edit Macro Settings panel

333

JJ Edit Macro Settings Panel

Page 341: ASG-PRO/JCL Reference Guide

Action Bar

SettingsThese items are similar to those found on the PRO/JCL Validation panel.

Item Description

RTS Member Edit/view the current RTS member or activate a new RTS member

Scheduler Specify the scheduler interface PRO/JCL uses in validating JCL.

Skeleton Processing Strips the ISPF statements from a JCL member before processing.

Extended Messages Displays or prohibits the display of extended messages in the SJL in foreground andbackground modes.

Reformatter Edit/view the current Reformatter member or activate a new Reformatter member.

Alternate Userid

Specify an alternate userid for security checking.

An alternate user ID does not check the UNIX services path.

Selection Exit A Selection Exit is specified when a user wants to makemodifications to the JOB JCL priorto validating it. The JCL modifications will not be saved.

Choices for JJ Edit Macro Settings Panel Action Bar item Settings

FieldsThese items are similar to those found on the PRO/JCL Validation panel.

Field Description

RTS Member This field displays the name of the active RTS member.

Processing Mode The processing mode that tells PRO/JCL how to process the input members.

First PROCLIBFirst PROCLIB specifies the library PRO/JCL searches for PROC and INCLUDEmembersbefore searching other libraries.For more information on PROC search order see thetopic - Library Search Order for PROCs and INCLUDEs in the User documentation.

First PROCLIB Type The type identifies the First PROCLIB library as being a PDS, PANVALET, or LIBRARIANdataset.

JMP Library The library from where PRO/JCL reads themember named in the JMP Member field.

Fields for JJ Edit Macro Settings Panel

334

ASG-PRO/JCL Reference Guide

Page 342: ASG-PRO/JCL Reference Guide

Field Description

JMP Member The name of themember of the JMP program to be run.

JMP Parm The parameter to be passed to the JMP program.

Reformat Specify whether PRO/JCL reformats themembers. Valid values are: ON, OFF,REFORMATONLY. Use * to view a list.

Reformat Member The name of the Reformatter member PRO/JCL uses to reformat the JCL.

Scroll to Top Determines whether PRO/JCL repositions themember in Edit back to the first line of themember or it stays on the first line displayed when themacro was invoked.

JJDirect Edit Macro Settings PanelUse this panel to set up options for the JJDIRECT Edit macro.

To access this panel

n Type JJDIRECT opt on the command line while editing any member.

Settings------------------------------------------------------------------------------

JJDirect Edit Macro SettingsCommand ===>

Remote Machine Definition ( * for list)

or IP Address . . . . . .User ID . . . . . . . Password . . .Port . . . . . . . . . (Optional)

Remote:RTS Member . . . . DEFAULTProcessing Mode ( * for list)First PROCLIB . .Lib type . . . . ( * for list)

JMP Library . . .JMP Name . . . . .JMP Parm . . . . .

Press END to return to Edit.

JJDIRECT Edit Macro Settings Panel

Action Bar Settings

Setting Description

Scheduler Specify the scheduler interface PRO/JCL uses in validating JCL.

Choices for JJDirect Edit Macro Settings panel Action Bar item Settings

335

JJDirect Edit Macro Settings Panel

Page 343: ASG-PRO/JCL Reference Guide

Setting Description

Skeleton Processing Strips the ISPF statements from a JCL member before processing.

Extended MessagesDisplays or prohibits the display of extended messages in the SJL in foreground andbackground modes.

Alternate Userid

Specify an alternate userid for security checking.

An alternate user ID does not check the UNIX services path.

Selection ExitA Selection Exit is specified when a user wants to makemodifications to the JOB JCL priorto validating it. The JCL modifications will not be saved.

First Control Card Lib The name of the library to be searched first, following standard ISPF conventions.

Remote MachineDefinitions

Add, Edit or View aMachine Definition. Machine Definitions are used to run DirectedExecution.

Fields

Field Description

Remote MachineDefinition

This is a valid Machine Definition for the user. Use an asterisk to select from a list ofMachine Definitions you may use for this machine. This is a required field if the IP Addressinformation has not been entered. If theMachine Definition and IP Address info havebeen entered, theMachine Definition will be used.

IP AddressThe IP Address of the remotemachine. For more information on Directed Execution seeJJDIRECT - Run PRO/JCL Via Directed Execution.

User ID The user ID for the remotemachine.

Password The password for the user ID on the remotemachine.

PortThe port for the listener on the remotemachine. If not specified, default is 1265. The validrange is 100 through 65536.

RTS Member This field displays the name of the active RTS member.

Processing Mode The processing mode that tells PRO/JCL how to process the input members.

First PROCLIBFirst PROCLIB specifies the library PRO/JCL searches for PROC and INCLUDEmembersbefore searching other libraries. For more information on PROC search order see the topic- Library Search Order for PROCs and INCLUDEs in the User Documentation.

Fields for JJDirect Edit Macro Settings Panel

336

ASG-PRO/JCL Reference Guide

Page 344: ASG-PRO/JCL Reference Guide

Field Description

First PROCLIB TypeThe type identifies the First PROCLIB library as being a PDS, PANVALET, or LIBRARIANdataset.

JMP Library The library from where PRO/JCL reads themember named in the JMP Member field.

JMP Member The name of themember of the JMP program to be run.

JMP Parm The parameter to be passed to the JMP program.

Processing Mode Selection Popup

Use this popup to select a processing mode to tell PRO/JCL how to interpret the statements in themembers.

To access this popup

n Enter an * (asterisk) in the Processing Mode field of the Validation panel or the Edit Macro Settings panel.

Processing Mode Selection

Command ===>

Press Enter or End to save changes and exit.

Active mode: JOBSelect Mode1 1. JOB

2. PROC3. JCL4. IDCAMS5. IEBGENER6. IEBCOPY7. IEHPROGM8. DB29. ADRDSSU10. SORT11. DATA

Processing Mode Selection Popup

Fields

Field Description

Active modeShows the name of themode. When this popup is first displayed, the value in this field is*.

SelectMode

Enter the number of themode in this field and press Enter to select it.

1. JOB -- Select this to process JCL jobs.

2. PROC -- Select to process procedures

Fields for Processing Options Panel

337

JJDirect Edit Macro Settings Panel

Page 345: ASG-PRO/JCL Reference Guide

Field Description

3. JCL -- (Default) Select to process JOBs and PROCs. This processing mode expects aJCL stream as input. In this mode, PRO/JCL can distinguish between JOB-type andPROC-type JCL input streams and then it automatically invokes the appropriateprocessing mode.

4. IDCAMS -- Select this to process IDCAMS control statements.

5. IEBGENER -- Select this to process IEBGENER control statements.

6. IEBCOPY -- Select this to process IEBCOPY control statements.

7. IEHPROGM -- Select this to process IEHPROGM control statements.

8. DB2 -- Select this to process DB2 control statements.

9. ADRDSSU -- Select this to process ADRDSSU control statements.

10. SORT -- Select this to process SORT control statements. Use the Utility Alias tableto specify the SORT utility to simulate. The default is DFSORT. Refer to Utility AliasTable, for further information.

Because you over-typed an * in the Processing Mode field on the PRO/JCLValidation or Edit Macro Settings panels to view this list, you must select avalue from the list to leave this popup.

11. DATA -- Select this processing mode to allow a JMP program to access andmanipulate input records without PRO/JCL validating or reformatting them. Forexample, if you have a dataset that contains control cards for various utilityprograms and you want to make a change across all members of the dataset,PROCESS=DATAwill read the raw data and make it available to the JMP program,which is responsible for actually making the change.

You must specify a JMP program and an output file when using this processingmode.

Library Type PopupUse the list in this popup to specify the type of library for the dataset named in the Library field on the PRO/JCL Validationpanel.

This popup displays when you enter an * (asterisk) in the Input Library Type field of the PRO/JCL Validation panel, orleave the field blank.

338

ASG-PRO/JCL Reference Guide

Page 346: ASG-PRO/JCL Reference Guide

Library Type

Command ===>

Press Enter or End to save changes and exit.

Active type: PDS

Select a Library Type1 1. PDS

2. PANVALET3. LIBRARIAN4. SEQUENTIAL

Library Type Popup

Fields

Field Description

Active typeShows the name of the active library type. When this popup is first displayed, the value inthis field is *.

Select a Library Type

Enter the number of the library type in this field and press Enter to select it. Choose fromthese:

l PDS -- Select this if the library is a PDS library. Default.

l PANVALET -- Select this if the library is a PANVALET library.

l LIBRARIAN -- Select this if the library is a LIBRARIAN library.

l SEQUENTIAL -- Select this if the library is a sequential library.

Fields for Library Type Popup

To leave this popup, select a value from the list.

Select Reformatter PopupUse the list in this popup to choose a Reformatter member.

To access this popup

n Enter an * (asterisk) in the Reformat Member field of the PRO/JCL Validation or Edit Macro Settings panels.

Select Reformatter MemberRow 1 to 1 of 1

Command ===> Scroll ===> PAGE

Rfmtr Mbr: *Owner : Desc:

Sel Member Owner Description Update on--- -------- -------- --------------------------- ----------

DEFAULT ASGUSR 07/03/2017

Select Reformatter Member Popup

339

JJDirect Edit Macro Settings Panel

Page 347: ASG-PRO/JCL Reference Guide

Fields

Field Description

Member The name of themember.

Owner The user ID that created themember.

Description The description of themember.

Update The date themember was last updated.

Fields for Select Reformatter Member Popup

Reformat PopupUse this popup to specify the action for Reformatter to perform against the dataset named in the Library field on thePRO/JCL Validation or the JJ Edit Macro Settings panel.

To access this popup

n Enter an * (asterisk) in the Reformat field of the Validation or Edit Macro Settings panels.

Reformat

Command ===>

Press Enter or End to save changes and exit.

Reformat action: OFF

Select a Reformat action2 1. ON

2. OFF3. REFORMATONLY

Reformat Popup

Fields

Field Description

Reformat actionShows type of action Reformatter will take. When this popup is first displayed, the value inthis field is *.

Select a Reformataction

Enter the number of the reformat action in this field and press Enter to select it. Choosefrom one of these:

l ON -- Reformat and validate themember.

l OFF -- Validate but do not reformat.

l REFORMAT ONLY -- Reformat but do not validate.

Fields for Reformat Popup

340

ASG-PRO/JCL Reference Guide

Page 348: ASG-PRO/JCL Reference Guide

l To leave this popup, select a value from the list.

l If you are running a JMP program, you cannot change the same statement with both a Record-Levelfunction and a JMP function. Never mix REFORMAT with Record-level API! Loss of JCL could occur. Seethe topic - Record-Level Functions in the Use documentation.

Member List Panel

Use this panel to select members for validation and to arrange the selected members in the processing order.

Use the E command on the Selection List Directory panel to edit a selection list.

File------------------------------------------------------------------------------

Member List for USRSLIST Row 1 to 8 of 8Command ===> Scroll ===> CSR

Description:Data Set Name: 'ASGUSR.JCL'

Line Commands: S Select D Delete R Repeat C Copy M Move A After B BeforeE Edit V View

Sel Name SequenceCATPROC 1CATPROC1 2**** USING MASK 'C*' ****CATPROC2CNTLJCLC4A014C56015AC56015B

Member List Panel

Fields

Field Description

Member List PRO/JCL displays the full dataset name in the first line of the panel.

NameThe names ofmembers matching themask on the Add a Selection List popup, or the list ofnames from theMember field.

SequenceThe numbers in this column represent the relative order in which PRO/JCL will process theselected members. These numbers are assigned to selected members each time the Enterkey is pressed.

USINGMASKxxxxxxxx

This marker-line in the list ofmembers divides the list into selected and not selectedportions. No sorting operations may be done on this line.

xxxxxxxx This is themask entered on the Add a Selection List popup.

Fields for the Member List Panel

341

JJDirect Edit Macro Settings Panel

Page 349: ASG-PRO/JCL Reference Guide

As members are selected, PRO/JCL moves them from the non-selected portion (below themarker-line) to the selectedportions (above themarker-line).

Command Line

Command Description

LOCATE member Use the locatemember command on the command line to scroll the list ofmembers tothemember or to the nearest match.

Command to locate a member in the Member List Panel

Sel Command

Command Description

S - SelectEnter S on a non-selected member to select it and move it to the selected portion of thelist.

D - Delete Enter D on a selected member to remove it from the selected portion.

R - Repeat Enter R on a selected member to copy a member immediately after it.

C - Copy Enter C on a selected member to copy it before (B) or after (A) another selected member.

M -Move Enter M on a selected member to move it before (B) or after (A) a member.

A - AfterEnter A on a selected member to move it after a member marked with theM or Ccommand.

B - BeforeEnter B on a selected member to move it before a member marked with theM or Ccommand.

E - Edit Enter E on any member in either portion of the list to edit themember.

V - View Enter V on any member in either portion of the list to view themember.

Commands to manage a Member List

l The commands Copy, Repeat, Delete, Move, Before, and After can only be used on selected members.

l A selection list can only be edited in one ISPF edit session at a time. The same selection list cannot be editedin ISPF split screen mode.

l Only the selection list owner can save changes to a given selection list. If the user does not own the existinglist, the changes must be saved to a new list.

342

ASG-PRO/JCL Reference Guide

Page 350: ASG-PRO/JCL Reference Guide

Add a Selection List Popup

Use this panel to add a new Selection list to the inventory of lists you have already created. Selection list members arestored in the PC File.

To access this popup

n Use the ADD command on the Selection List Directory panel.

Add a Selection List

Command ===>

List Name . . . . .

Input Library . . .Mask . . . . . . . (optional) Select Members (Y/N)Type . . . . . . . (PDS, PANVALET or PAN, LIBRARIAN or LIB)

Description . . . . (optional)

Press ENTER or END to save changes and return.Enter CANCEL to discard changes and return.

Add a Selection List Popup

Fields

Field Description

List Name The name of the list.

Input Library Specifies the name of the library from which PRO/JCL pulls names for the selection list.

MaskAmask limits the names PRO/JCL puts in theMember List panel to a subset of themembers in the library.

Select Members Y sequences themembers selected by themask; use N to prevent member sequencing.

Type

Choose one of these values for the input library type:

l PDS

l PANVALET (PAN)

l LIBRARIAN (LIB)

Description Enter an optional description for the list (up to 32 characters).

Fields for the Add a Selection List Popup

Selection List Information Popup

Use this panel to change themember mask, the description, and the input library and its type for a selection listdefinition. PRO/JCL provides no way to rename a list.

Use the A command on the Selection List Directory panel.

343

JJDirect Edit Macro Settings Panel

Page 351: ASG-PRO/JCL Reference Guide

Selection List Information

Command ===>You do not own this selection list. This information is for viewing only.List Name . . . . : K

Input Library . . : 'ASGUSR.WORK.CNTL'Mask . . . . . . : A%%%%Type . . . . . . : PDS

Description . . . : k descriptionDate Created . . . : 02/04/2017Date Updated . . . : 02/04/2017

Press ENTER or END to return.

Selection List Information Popup

Fields

Field Description

List Name The name of the list. This field on this panel cannot be changed.

Input Library The name of the library PRO/JCL pulls names from for the selection list.

MaskAmask limits the names PRO/JCL puts in theMember List panel to a subset of themembers in the library. Changing themask in this field deselects all the selected membersfrom the list.

Type

Choose one of these values for the input library type:

l PDS

l PANVALET (PAN)

l LIBRARIAN (LIB)

Description Enter an optional description for the list (up to 32 characters).

Date Created The date on which the list was created.

Date Updated The date the list was most recently updated.

Fields for the Selection List Information Popup

Copy Selection List Popup

Use this panel to copy a selection list from the directory of lists. Type a name in the “To List Name” field, and modify theother fields as necessary. PRO/JCL adds the new list to the directory of lists in alphabetical order.

Use the C command on the Selection List Directory panel.

344

ASG-PRO/JCL Reference Guide

Page 352: ASG-PRO/JCL Reference Guide

Copy Selection List

Command ===>

From List Name . . : MYLISTTo List Name . . . . (* for list)

Input Library . . : 'ASGUSR.WORK.CNTL'Mask . . . . . . :Type . . . . . . : PDS (PDS, PANVALET or PAN, LIBRARIAN or LIB)

Description . . . . (Optional)

Press ENTER or END to save changes and exitEnter CANCEL to discard changes and exit

Copy Selection List Popup

Fields

Field Description

From List Name Contains the name of the selection list being copied. This field is read-only.

To List NameEnter the name of the new list. The new list namemust be unique. An asterisk can beentered to get a directory of currently defined selection lists.

Input Library The name of the library PRO/JCL pulls names from for the selection list.

MaskEnter a mask to limit the names PRO/JCL puts in theMember List panel to a subset of themembers in the library. Changing themask in this field deselects all the selected membersfrom the list.

Type

Choose one of these values for the input library type:

l PDS

l PANVALET (PAN)

l LIBRARIAN (LIB)

Description Enter an optional description for the list (up to 32 characters).

Fields for Copy Selection List popup

Delete a Selection List Popup

Use this panel to delete a selection list from the inventory of lists you own from the validation panel. Administrators candelete any selection list.

Use the D command on the Selection List Directory panel. Press Enter to delete the list. Press End to keep the list.

345

JJDirect Edit Macro Settings Panel

Page 353: ASG-PRO/JCL Reference Guide

Delete a Selection ListCommand ===>

Selection List ‘NEWLIST’ will be deleted.

Press Enter to continue.Press END or enter Cancel to end this request.

Delete a Selection List Popup

l Only the selection list owner and the PRO/JCL administrator can delete lists.

l A selection list cannot be deleted while it is being edited.

Save As Selection List Popup

Use this popup to save a selection list under a different name.

This popup is displayed automatically when you edit a selection list you do not own and attempt to save the changes.

Press Enter or End to save the list. Enter CANCEL to exit without saving.

Save As Selection List

Command ===>You do not own the current member. Do you want to save the changes?Type a unique list name and optional description in the fields below.New Selection List Name:Name: Owner: ASGUSR Desc:

Current Selection List Member:Name: USER1 Owner: ASGUS1 Desc: test sel list

Press Enter or End to save and return.Enter CANCEL to exit without saving.

Save As Selection List Popup

Fields

Field Description

New Selection List Name

Name Enter a name for the new list.

Owner Your User ID. (Display only.)

Desc Enter an optional description for the new list (up to 32 characters).

Current Selection List Member

Name The name of the user who created the list. (Display only.)

Fields for Save As Selection List popup

346

ASG-PRO/JCL Reference Guide

Page 354: ASG-PRO/JCL Reference Guide

Field Description

Owner The User ID that created the list. (Display only.)

Desc The description of the current selection list. (Display only.)

Only the selection list owner can save changes to a given selection list. If the user does not own theexisting list, a new name must be chosen.

Replace Selection List Popup

Use this panel to replace an existing selection list.

This popup is displayed automatically when you enter the name of an existing list you own in the Name field of the SaveAs Selection List popup.

Press Enter or End to replace an existing list. Enter CANCEL to exit without saving.

Replace Selection List

Command ===>Member 'USERLIST' exists. Do you want to overwrite it?Existing Selection List:Name: USERLIST Owner: ASGUSR Desc: replaceable test list

Press Enter or End to save and return.Enter CANCEL to exit without saving.

Replace Selection List Popup

Fields

Field Description

Name The name of the list to be replaced. (Display only.)

Owner Your User ID. (Display only.)

Desc The description of the list to be replaced. (Display only.)

Fields for Replace Selection List popup

If a user attempts to save a list using the name of an existing list, the existing list can be replacedonly if it is owned by the user.

347

JJDirect Edit Macro Settings Panel

Page 355: ASG-PRO/JCL Reference Guide

Scheduler PopupUse this panel to select which scheduler PRO/JCL simulates when validating JCL. Use Scheduler from the Settings actionbar of the Validation panel.

Scheduler-------------------------------------------------------------------------------Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Active scheduler: CA-Jobtrac

Select a scheduler4 1. BETA42

2. CA73. CNTLM4. CA-Jobtrac5. ZEKE6. TWS7. ESP8. NO SCHEDULER

Scheduler popup menu

Fields

Field Description

Active scheduler Shows the name of the active scheduler.

Select a scheduler Type the number of the scheduler in this field and press Enter to select it.

Fields for Scheduler popup

l For BETA42, CA7, CNTLM, CA-Jobtrac, TWS, and ESP, PRO/JCL displays a popup where you specifyparameters for those products.

l For ZEKE, there are no parameters to set.

l For the No Scheduler choice, the Active Scheduler field must contain NO SCHED.

l If a scheduler has been assigned to a user/group, the corresponding scheduler parm panel will be displayed.

Scheduler Parms for BETA42 Popup

Use this popup to specify the parameters for the BETA42 scheduler PRO/JCL uses when validating JCL. Fill in the fields ofthis popup to specify how PRO/JCL validates BETA42 control statements. Use BETA42 from the Scheduler action bar itemand specify settings for the BETA42 scheduler.

348

ASG-PRO/JCL Reference Guide

Page 356: ASG-PRO/JCL Reference Guide

Scheduler Parms for BETA42

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Taskname . . .

Run Date . . . ( MMDDYY )

Scheduler Parms for BETA42 Popup

Fields

Field Description

TasknameThe Taskname entered must be one of the parameters used when running BETA42. Blanksand quotes are not allowed. This is a required field.

Run Date The date entered must be in MMDDYY format. This is not a required field.

Fields for Scheduler Parms for BETA42 popup

Scheduler Parms for CA7 Popup

Use this popup to specify the parameters for the CA-7 scheduler PRO/JCL uses when validating JCL. Fill in the fields of thispopup to specify how PRO/JCL validates CA-7 control statements. Use CA-7 from the Scheduler action bar item andspecify settings for the CA-7 scheduler.

Scheduler Parms for CA7Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Run Date . . ( YYYYDDD or YYDDD )

Run Time . . ( HHMM )

Schedule Id ( 1 - 255 or ALL or ONLY )

Scheduler Parms for CA7 Popup

Fields

Field Description

Run DateThe date PRO/JCL uses when simulating CA-7 during processing. The format of the date is:yyyyddd or yyddd. The ddd to use is the Julian date for processing.

Run Time The time PRO/JCL uses when simulating CA-7 during processing. The format of the time is:

Fields for Scheduler Parms for CA7 popup

349

Scheduler Popup

Page 357: ASG-PRO/JCL Reference Guide

Field Description

hhmm.

Schedule ID The CA-7 schedule ID PRO/JCL uses when simulating CA-7 during processing. The format ofthe ID is: nnn or ALL or ONLY.

Type the Run Date, Run Time, and Schedule ID in the fields in the Scheduler Parameters for CA7 popup.

Specifying “ALL” will cause PRO/JCL to validate the job with each Schedule ID found in the job plus one not found in thejob.

If RESETBETWEENMEMBERS is specified, each member will be processed repeatedly based on SchedID's found in thatmember, then processing will continue with the next member.

If RESETBETWEENMEMBERS is not specified PRO/JCL will generate a SchedID list based on all SchedID's in all membersselected, then will process the entire list ofmembers for each SchedID.

Specifying “ONLY” will cause PRO/JCL to validate the job with each Schedule ID found in the job.

When specifying “ALL” or “ONLY”, the Schedule ID for the run will be printed before each job.

The SCHID=ALL and SCHID=ONLY features are only valid in Foreground and Batch execution.

Scheduler Parms for CONTROL-M Popup

Use this popup to specify the CONTROL-M scheduler parameters PRO/JCL uses when validating JCL. Fill in the fields ofthis popup to specify how PRO/JCL validates CONTROL-M control statements. Use CNTLM from the Scheduler popup andspecify settings for the CONTROL-M scheduler.

Scheduler Parms for CNTLM

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Run Date . . ( YYMMDD )

F1=Help F3=Exit F12=Cancel

Scheduler Parms for CNTLM Popup

FieldsRun Date is the date PRO/JCL uses during CONTROL-M processing. The format of the date is: YYMMDD.

Scheduler Parms for CA-Jobtrac Popup

Use this popup to specify the parameters for the CA-Jobtrac scheduler PRO/JCL simulates when validating JCL. Fill in thefields of this popup to specify how PRO/JCL validates CA-Jobtrac control statements. Use CA-Jobtrac from the Scheduleraction bar item and specify settings for the CA-Jobtrac scheduler.

350

ASG-PRO/JCL Reference Guide

Page 358: ASG-PRO/JCL Reference Guide

Scheduler Parms for CA-Jobtrac

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Original Schedule Date ( YYYYDDD )

Time of Day Date . . . ( YYYYDDD )

Location . . . . . . . ( 000 - 254 )

F1=Help F3=Exit F12=Cancel

Scheduler Parms for CA-Jobtrac Popup

Fields

Field Description

Original ScheduleDate

The date PRO/JCL uses for resolving the CA-Jobtrac Original Scheduled Date variables. Theformat of the date is: YYYYDDD.

Time of Day DateThe date PRO/JCL uses for resolving any other CA-Jobtrac variables. The format of the dateis: YYYYDDD.

Location The location PRO/JCL uses to resolve CA-Jobtrac variables. This entry must be a valid CA-Jobtrac location. The format of the location is: nnn.

Fields for Scheduler Parms for CA-Jobtrac popup

Scheduler Parms for ASG-ZEKE Popup

Use this popup to specify the parameters for the ZEKE scheduler PRO/JCL simulates when validating JCL (herein referredto as ZEKE). Fill in the fields of this popup to specify how PRO/JCL validates ZEKE control statements. Use ZEKE from theScheduler action bar item and specify settings for the ZEKE scheduler.

351

Scheduler Popup

Page 359: ASG-PRO/JCL Reference Guide

OASIS Context Items for ZEKE Scheduler

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Enter the following values for OASIS Context Items:

Job Name . . . . Schedule Date . . ( YYYYDDD )

Netregid . . . . Run Date . . . . . ( YYYYDDD )

Group ID . . . . Application ID . .

User ID . . . . ASGUSR Event Number . . .

System Name . . Version Number . .

F1=Help F3=Exit F12=Cancel

Scheduler Parms for ZEKE Popup

Fields

Field Description

Schedule Date andRun Date

Schedule Date and Run Date are both 7 digit Julian dates. The format of the date is:YYYYDDD.

Event Number andVersion Number

Event Number and Version Number will be left padded with zeroes as needed.

Other choices All other items are as defined by OASIS.

Fields for Scheduler Parms for ZEKE popup

Scheduler Parms for TWS Popup

Use this popup to specify the parameters for TWS to use as it resolves variables. Use TWS from the Scheduler action baritem and specify settings for the TWS scheduler.

352

ASG-PRO/JCL Reference Guide

Page 360: ASG-PRO/JCL Reference Guide

Specify TWS Information

Command ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

TWS Subsystem Name . . TWSA (Blank to restore to defaults)

If TWS is on a remote system, enter the Server OR Remote info.Server LU Name . .Remote Host . . . .Remote Port . . . .

Input Arrival Date ( YYMMDD )Input Arrival Time ( HHMM )Variable Subs TableApplication ID . . .Operation Number . .

Scheduler Parms for TWS Popup

Fields

Field Description

TWS Subsystem Name Subsystem is the name of the TWS subsystem to use.

Server LU Name The LU name. A fully-qualified LU name networkid.luname, 3-17 characters.

Remote HostSpecify the IP Address of the remote TWS TCP/IP server.

This is mutually exclusive with the Server LU Name.

Remote Port Specify the port number for the TCP/IP session. (0 to 65535).

Input Arrival Date IADATE is the INPUT ARRIVAL date in the format YYMMDD.

Input Arrival Time IATIME is the INPUT ARRIVAL time in the format HHMM.

Variable Subs Table VARIABLE SUBStitution TABLE to use. (optional).

Application ID The name of an existing ADID. PRO/JCL will substitute every occurrence of&OADID with this and use the Variable Substitution Table specified for this ADID.

Operation NumberOperation to simulate. Default is 1. PRO/JCL correctly resolves JOBNAME andworkstation ID (WSID) when the specified operation is not associated with theADID used.

Fields for Scheduler Parms for TWS popup

If the IADATE/IATIME specified in the scheduler pull-down is past the end of the Current Plan, the variables based onthem (&OMM, etc.) will not be resolved as desired.

353

Scheduler Popup

Page 361: ASG-PRO/JCL Reference Guide

Scheduler Parms for ESP Popup

Use this popup to specify the parameters for ESP to use as it resolves variables for PRO/JCL. Use ESP from the Scheduleraction bar item and specify settings for the ESP scheduler.

Specify ESP InformationCommand ===>

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

ESP Subsystem Name . . ESP

Event to Simulate ASGUSR.TESTSYM ( Qualified Event name )

Schedule Date . . . . ( A valid ESP date )

Root JOB . . . .

User Parameters To Be Passed To The Event:USER1USER2USER3USER4

Scheduler Parms for ESP Popup

Fields

Field Description

ESP Subsystem Name Subsystem is the name of the ESP subsystem to use.

Event to SimulateEvent to Simulate is the name of any valid ESP event. An existing event must be specifiedfor simulation. This event should be an event with only one job, as ESP will generatemessages about all jobs after the first.

Schedule Date Schedule Date is the date PRO/JCL should simulate.

Root JOB Enter the names of the jobs and successor jobs needed for a partial re-run.

User Parameters Enter up to four parameters to be passed to ESP.

Fields for Scheduler Parms for ESP popup

Output Libraries PopupUse this popup to view, add, and delete output libraries; these specify the places where PRO/JCL writes memberschanged by JMP programs, JMP programs and reformatting. Use Output Libraries from the Settings action bar item onthe PRO/JCL Validation panel or the JJ Edit Macro Settings panel.

354

ASG-PRO/JCL Reference Guide

Page 362: ASG-PRO/JCL Reference Guide

Output LibrariesRow 1 to 3 of 3

Command ===> Scroll ===> PAGE

Enter ADD command to add libraries.Press END to save changes and return.Enter CANCEL to discard changes and return.

Use / or S to select a libraryUse D to delete a library

Sel From DSN To DSN--- --------------------------------- ---------------------------------

'DSSI.TEST.DEMOLIB' 'ASGUS1.TEST.DEMOLIB''DSSI.TEST.DEMOLIB' 'ASGUS2.TEST.DEMOLIB''DSSI.SYS1.CNTL' 'ASGUS2.SYS1.DEMOLIB'

Output Libraries Popup

Fields

Field Description

From DSN This is the source dataset for members to be changed and reformatted.

To DSN This is the target dataset for PRO/JCL to write the changed and reformatted membersfrom the source dataset.

Fields for Output Libraries popup

Commands

Command Description

ADD Use the ADD command to add a new specification.

D - Delete Use the D line command to delete a specification.

S - Select Use the S line command to edit a specification.

Commands for Output Libraries popup

For information pertaining to handling data past 80 columns, seethe topic - Reformatting JCLWider Than 80 Columns inthe System Administrator documentation.

Output Library Specification PopupUse this popup to add or edit an output library specification. Type ADD on the command line of the Output Librariespopup.

355

Output Libraries Popup

Page 363: ASG-PRO/JCL Reference Guide

Output Library Specification

Command ===>

From DSN : 'DSSI.TEST.DEMOLIB'

To DSN : 'ASGUSR.TEST.DEMOLIB'To DSN type: * (* for list)Write : CHANGEDONLY

Press ENTER or END to save changes and return.Enter CANCEL to discard changes and return.

Output Library Specification Popup

Fields

Field Description

From DSN The source dataset for members to be changed and reformatted.

To DSN The target dataset for the changed and reformatted members from the source dataset.

To DSN TypeThis is the type of the target dataset. Valid values are PDS, PANVALET, LIBRARIAN orSEQUENTIAL.

Write

This determines which members will be written to the target dataset. The values are:

l CHANGEDONLY will write JCL that has been changed by a JMP or Reformatprogram.

l ALL will write all themembers processed, and whether they were changed or not.

l NONE will not write any members to the target dataset.

Fields for Output Library Specification Popup

Both datasets must exist and the To DSN type must be correct before PRO/JCL accepts thespecification.

Batch JCL PanelUse this panel to specify a JOB Card for background mode validation. Each of the five lines must be filled in, even if only acomment delimiter.

You can also specify accounting information for generated EXEC statements. Each time you begin a background jobPRO/JCL prompts with this panel.

To access this panel and turn this prompting off

n Enter N in the JOB Statement panel prompt field.

356

ASG-PRO/JCL Reference Guide

Page 364: ASG-PRO/JCL Reference Guide

File------------------------------------------------------------------------

Specify JOB CARD for BatchCommand ===>

JOB STATEMENT INFORMATION: (Req.- Enter/Verify JOB Control statements)===> //ASGUSRX JOB (ACCOUNT),'NAME'===> //*===> //*===> //*===> //*

Step accounting information for generated EXEC statement (61 chars max)ACCT ==>

If you wish to be prompted with this panel when the Batch optionis specified, enter Y below:

JOB Statement panel prompt ===> Y (Y/N)

Press Enter or End to save changes and return.

Specify JOB Card for Batch panel

Specify TSO Hardcopy Output PanelSpecify the hardcopy parameters for your TSO output. Select TSOParms from the Settings pull-down menu of thePRO/JCL Validation panel.

File Help------------------------------------------------------------------------------

Specify TSO Hardcopy OutputCommand ===>

Enter/verify values for hardcopy output:CLASS . . . . .DEST . . . . .COPIES . . . . (1-255)FCB . . . . . .FORMS . . . . .UCS . . . . . . (For other than IBM 3800)CHARS . . . . . (Only for IBM 3800)HOLD . . . . . (Y/N)FORMDEF . . . .PAGEDEF . . . .

If you wish to be prompted with this panel when the Hardcopy optionis specified for foreground options, enter Y below:Hardcopy panel prompt ===> . . (Y/N)

Press Enter or End to save changes and return.

Specify TSO Hardcopy Output panel

Action Bar

File

Item Description

Exit Exits the panel.

357

Specify TSO Hardcopy Output Panel

Page 365: ASG-PRO/JCL Reference Guide

Fields

Field Description

CLASSDesignates the output class for hardcopy output. Because PRO/JCL cannot verify the classbefore execution, make sure the class is valid for the site.

DESTSpecifies a destination value for hardcopy output. This field is compatible with the JESlength and structure. PRO/JCL validates this value if running APF-authorized.

COPIESLegal values are 1 - 255 for JES2, 1 to 254 for JES3 for hardcopy output. The default is 1.Your site might have different guidelines.

FCB Specifies the name of the forms control buffer image JES is to use to guide printing of thisSYSOUT dataset.

FORMSDesignates special forms to be used for hardcopy output requested during foregroundprocessing.

UCSUsed for printers other than the IBM 3800. This parameter is mutually exclusive with theChars field.

CHARSUsed only if an IBM 3800 graphics font is installed. This parameter is mutually exclusivewith the UCS field.

HOLD Tells whether or not to hold SYSOUTs for TSO/E output processing. Type Y to hold or N tonot hold.

FORMDEFIdentifies a PDS library member that contains statements to tell Print Services Facility (PSF)how to print SYSOUT dataset on a page-mode printer. The statements specify overlaysand overlay locations.

PAGEDEFIdentifies a PDS library member that contains statements to tell Print Services Facility (PSF)how to print SYSOUT dataset on a page-mode printer. The statements specify pageproperties such as fonts, page size, lines per page, and so on.

Hardcopy PanelPrompt

Type Y for this panel to appear when SJL Hardcopy output is specified on a foregroundexecution panel. Otherwise, leave the default of N.

If you have not initialized this panel, then the first time you try to run in background, PRO/JCLdisplays this panel.

User Report Title Popup

Use this popup to specify an optional sub-title or description for the SJL report. This title is used in background executionmode from the PRO/JCL Validation panel. Use User Report Title from the Settings action bar item and specify a reporttitle.

358

ASG-PRO/JCL Reference Guide

Page 366: ASG-PRO/JCL Reference Guide

User Report Title

Command ===>

Report Title . . . .

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

User Report Title Popup

Fields

Field Description

Report Title The sub-title or description of the report.

Fields for User Report Title Popup

Options In Effect Report Popup

Use this popup to specify whether the Options in Effect report is to be generated. Use Options Report from the Settingsaction bar item and specify Y or N.

Options In Effect Report

Command ===>

Enable Report : Y (Y/N)

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Options in Effect Report Popup

Fields

Field Description

Enable Report Generates the Options in Effect report or N to prevent generating the report.

Fields for Options in Effect Report Popup

Skeleton Processing Popup

The sole purpose of PRO/JCL's Skeleton Processing is to avoid errors which are caused by the presence of ISPF skeletonstatements.

Use this popup to indicate whether Skeleton Processing should be performed. Choose Skeleton Processing from theSettings action bar item. Skeleton Processing is performed during the background execution mode from the PRO/JCLValidation panel. Use Skeleton Processing from the Settings action bar item and specify Y or N.

359

Specify TSO Hardcopy Output Panel

Page 367: ASG-PRO/JCL Reference Guide

Skeleton Processing

Command ===>

Enable Processing : N (Y/N)

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Skeleton Processing Popup

Fields

Field Description

Enable ProcessingY Enables skeleton processing, With Skeleton Processing enabled, PRO/JCL disregards anyISPF skeleton statement and processes the remaining JCL.

N Disables skeleton processing.

Fields for Skeleton Processing Popup

Extended Messages Popup

Use this popup to indicate whether the long, or extended message, text should appear in the SJL listing in place of theshort message text. Use Extended Messages from the Settings action bar item and specify a report title.

Extended Messages

Command ===>

Use Extended Message Text : N (Y/N)

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Extended Messages Popup

Fields

Field Description

Use ExtendedMessage Text

Y Uses extended message text.

N Uses short message text.

Fields for Extended Messages Popup

Selection List Directory Panel

PRO/JCL provides the facility to create and store lists ofmembers, from one library, for ready access to job validation.Use this panel to maintain the lists you create. Use Selection Lists from the Settings action bar item on the PRO/JCLValidation panel.

360

ASG-PRO/JCL Reference Guide

Page 368: ASG-PRO/JCL Reference Guide

File Help------------------------------------------------------------------------------

Selection List Directory Row 1 to 3 of 3Command ===>

Enter 'ADD' to add a new selection list.

E Edit Selection List D Delete Selection ListA About Selection List C Copy Selection List

Sel Listname Description Owner Last Updated

USR1LIST payroll.work.cntl mask=a* USER02 04/24/2014PAYROLL USER01 04/14/2014TEST01 test selection list USERID01 04/08/2014

Selection List Directory panel

Fields

Field Description

Listname The names of the list.

Description Optional descriptions for the lists.

Owner The user IDs that created the lists.

Last Updated The dates the lists weremost recently updated.

Fields for Selection List Directory popup

Commands

Command Description

Add Creates a new selection list.

E - EditDisplays a dialog to allow rearranging the processing order of a selection list or to addmembers to the list.

A - AboutDisplays a dialog to allow changes to themember mask, the description, and the inputlibrary and its type. A list cannot be renamed.

D - Delete Deletes the selection list.

C - Copy Copies a selection list.

Commands for Selection List Directory popup

Alternate Userid Popup

PRO/JCL provides this panel as a way of specifying an alternate userid for the purpose of security checking.

361

Specify TSO Hardcopy Output Panel

Page 369: ASG-PRO/JCL Reference Guide

To access this panel

n Choose Alternate Userid from the Settings action bar item on the PRO/JCL Validation panel.

Alternate UseridCommand ===>

Alternate userid for security checking . . .

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Alternate Userid popup

Fields

Field Description

Alternate Userid for SecurityChecking

Insert the userid PRO/JCL will use for security checking.

Fields for Alternate Userid popup

Commands

Command Description

Enter or End Saves the alternate userid and returns to the Validation panel.

Cancel Discards changes to the alternate userid and returns to the Validation panel.

Commands for Alternate Userid popup

l This userid is used by the ACS routines if the INTERFACE SMSACSROUTINES option is set to Y.

l The ALTERNATEUSERID option may be overridden with the USER= parameter, or by the JES3 //*LOGONID.

l An alternate user ID does not check the UNIX services path.

Selection Exit Information Popup

PRO/JCL provides the user with a way ofmaking modifications to the JOB JCL prior to validating it. Use this panel tospecify the desired selection exit information. Use Selection Exit from the Settings action bar item on the PRO/JCLValidation panel.

362

ASG-PRO/JCL Reference Guide

Page 370: ASG-PRO/JCL Reference Guide

Specify Selection Exit Information

Command ===>

Selection Exit:Name:Parm:

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Specify Selection Exit Information popup

Fields

Field Description

Selection ExitA Selection Exit is specified when a user wants to makemodifications to the JOB JCL priorto validating it. The JCL modifications will not be saved.

Name

The Selection Exit name is a REXX exec that exists in a dataset that has been coded in eitherthe SYSEXEC or SYSPROC DD. When running in Foreground or Edit Macro mode, theSYSEXEC or SYSPROC DD's specified in the Started Task will be used. When running inBatch mode, the SYSEXEC or SYSPROC DD's specified in the PR1PROC will be used.

Parm The parm may be up to 45 characters in length. A parm is specified when the Selection Exitwill use it.

Fields for Specify Selection Exit Information popup

Reset Between Members Popup

Use this popup to specify whether PRO/JCL should reset its simulator between members and process members in run-time order (does not reset the simulator) or not. Use Reset Between Members from the Settings action bar item on thePRO/JCL Validation panel.

Reset Between Members

Command ===> ________________________________________________________________

Reset PRO/JCL simulator between members . . . . (Y/N)

Press Enter or End to save changes and return.Enter CANCEL to discard changes and return.

Reset Between Members popup

363

Specify TSO Hardcopy Output Panel

Page 371: ASG-PRO/JCL Reference Guide

Fields

Field Description

Reset PRO/JCLsimulator betweenmembers

Y Specifies that themembers are not processed as if they were in run-time order, but asindividual members.

N Specifies that themembers are processed as if they given to PRO/JCL in run-timeorder.

Fields for Reset Between Members popup

First Control Card Popup

Use this popup to specify the library PRO/JCL is to search first for Control Cards. Use First Control Card from the Settingsaction bar item on the PRO/JCL Validation panel.

First Control Card

Command ===> ________________________________________________________________

Library . . . . . . . . . ___________________________________________________Press Enter or End to save changes and return.

First Control Card popup

Fields

Field Description

Library A valid dataset namewithout quotes. If remote is specified, the library must exist on theremotemachine .

Fields for First Control Card popup

364

ASG-PRO/JCL Reference Guide