SmartJCL - horizont

Werbung
Smart/JCL
Der einfache Weg zur fehlerfreien JCL
Versionen im Überblick
HORIZONT
Software
1
HORIZONT für Rechenzentren
Garmischer Str. 8
D- 80339 München
Tel ++49(0)89 / 540 162 - 0
®
www.horizont-it.com
SmartJCL
Versionen im Überblick
Aktuelles
Release
V3R1
V3R0
V2R4
V2R3
V2R2
V2R1
HORIZONT
2
®
SmartJCL
SmartJCL 3.1
SmartJCL V3R1 ist im September 2011 verfügbar.
Es enthält folgende neue Funktionen:
• Eine Reihe neuer Parameter und Optionen für
JCL Check und Reformat
-
Lesen der DB2 Subsysteme aus System-Kontrollblöcken
-
Check TSO Programme
Reformatieren ausgewählter oder geänderter JCL Statements
Steuern, wie ISPF Member Statistik im Ausgabefile JCKJCLO
gesetzt wird
HORIZONT
3
®
SmartJCL
SmartJCL 3.1
• Unterstützung z/OS 1.12 SORT Erweiterungen
-
JOINKEYS Application
Date Field Conversions
MERGE Operator
MERGEIN Alternate ddnames
...
• Unterstützung TWS 8.6
HORIZONT
4
®
SmartJCL
SmartJCL 3.1
• ISPF Dialog unterscheidet User und
Administratoren
- Admins werden während der Installation oder in
JCKXPARM definiert
- Admins haben zusätzliche Konfigurationsoption
- Benutzer können SmartJCL nur „benutzen“
HORIZONT
5
®
SmartJCL
SmartJCL 3.1
ISPF Dialog unterstützt Administratoren:
Geben Sie Admin
User hier an ...
HORIZONT
6
®
SmartJCL
SmartJCL 3.1
ISPF Dialog unterstützt Administratoren:
Verfügbar für
jeden User.
Verfügbar nur für
Admin-User.
HORIZONT
7
®
SmartJCL
SmartJCL 3.1
ISPF dialog supports administrator:
Die AdminstratorOptionen.
HORIZONT
8
®
SmartJCL
SmartJCL 3.1
ISPF dialog supports administrator:
Verfügbar für
jeden User.
HORIZONT
9
®
SmartJCL
SmartJCL 3.1
• Neue SRI Funktion "SriCatEntry" für
Katalog-Zugriff und -Informationen
- Liefert
• Entry name (= DSN)
• Catalog name
• Entry type
• Volser
- Einfacher als LISTCAT und Scannen des Outputs
HORIZONT
10
®
SmartJCL
SmartJCL 3.1
• Erweitertes JCL Change Facility (SJC)
- Neue Kommandos DELSTMT, DELSTEP,
INSERTSTMT, INSERTSTMT BEFORE FIRST (z.B.
vor erstem EXEC)
- DO/ENDDO Block zum Zusammenfassen mehrerer
Aktionen für eine Bedingung
- RANGE (Spalte 1-72)
HORIZONT
11
®
SmartJCL
SmartJCL 3.1
Erweitertes JCL Change Facility: INSERTSTMT
Einfügen beim ersten/letzten
Statement davor/danach (FIRST,
LAST, BEFORE, AFTER) ...
... die
einzufügenden
Statements ...
... wenn diese
Kriterien erfüllt sind.
HORIZONT
12
®
SmartJCL
SmartJCL 3.1
Erweitertes JCL Change Facility:
Füge dieses JCLLIB
Statement nach dem JOB
Statement ein.
HORIZONT
13
®
SmartJCL
SmartJCL 3.1
Erweitertes JCL Change Facility:
Mehrere PARMn und
VALUEn Paare zur
Selektion ...
DELSTMT und DELSTEP
kann mit Parameter-selektion
kombiniert werden
HORIZONT
14
®
SmartJCL
SmartJCL 3.1
Erweitertes JCL Change Facility: PARMn, VALUEn
kombiniert mit DO/ENDDO.
Mehrere PARMn und
VALUEn Paare zur
Selektion ...
... und PARM und
VALUE für die
Changes.
DO/ENDDO zum Gruppieren
mehrerer Changes für eine
Selektion.
HORIZONT
15
®
SmartJCL
SmartJCL 3.1
Diese JCL wird modifiziert:
Enthält den String III.JJJ für
den Change als auch den
String AAAAA, der den
Change ausschließt.
HORIZONT
16
®
SmartJCL
SmartJCL 3.1
Resultierende JCL:
Nur die geänderten JCL
Statements werden
formatiert:
SJCREF=CHANGED
HORIZONT
17
®
SmartJCL
SmartJCL 3.1
Erweitertes JCL Change Facility: RANGE
RANGE kann mit
LNCHANGE,
CHANGE INSTREAM und
CHANGE COMMENT
verwendet werden
HORIZONT
18
®
SmartJCL
Fragen zu SmartJCL?
[email protected]
HORIZONT
19
®
SmartJCL
SmartJCL 3.0
SmartJCL V3R0 ist Ende August 2009 verfügbar.
Wesentliche Neuerungen werden u.A. sein:
• ISPF Dialog zum Definieren von Regeln zur Prüfung
kundenspezifischer Standards
-
Jedes RZ hat individuelle Regeln, z.B. „Im Sort-Step muss UNIT=SYSDA
sein“
-
Bislang haben solche Checks die Verwendung des SmartJCL REXX
Interfaces erfordert
-
Der Regel-Dialog erlaubt auch ohne Programmierkenntenisse, komplexe
Regeln zu definieren
-
Sehen Sie den Dialog auf folgenden Seiten
HORIZONT
20
®
SmartJCL
Standard Check - Einstieg
Das Einstiegspanel zum:
- Bearbeiten von Regeln
- Generieren des SRI-Codes
HORIZONT
21
®
SmartJCL
Standard Check: Optionen
Mit welchen Regeln
wollen Sie arbeiten ...
... und wo soll der
generierte Code gespeichert werden.
HORIZONT
22
®
SmartJCL
Standard Check - Einstieg
Bearbeiten von
Regeln beginnen ...
HORIZONT
23
®
SmartJCL
Regelliste
Eine neue Regel anlegen
oder eine vorhandene zum
Bearbeiten wählen ...
HORIZONT
24
®
SmartJCL
Regel bearbeiten
Wenn Pos. 6 des Jobnamens R oder E ist und
DISP ungleich SHR ...
… oder Pos. 3
des Jobnamens 3
ist und DISP
ungleich SHR ...
HORIZONT
… dann gib eine
Meldung aus.
25
®
SmartJCL
Selektionskriterien
Alle möglichen Selektionskriterien können
von einer Liste ausgewählt werden…
HORIZONT
26
®
SmartJCL
Selektionskriterien
Weiter unten in der Liste...
... die von Standard
Check bereitgestellte
Selektionskriterien
HORIZONT
27
®
SmartJCL
Selektionskriterien
Die JOB-Anweisung
ist ausgewählt …
… und alle möglichen
Parameter und Subparameter dazu
werden aufgelistet ...
HORIZONT
28
®
SmartJCL
Vergleichsoperatoren
... wie auch alle
Vergleichsoperatoren
zum Jobnamen
HORIZONT
29
®
SmartJCL
Angabe der Vergleichswerte
Werte für Substr
Hier geben Sie eine
Liste von Werten ein.
HORIZONT
30
®
SmartJCL
Aktion für eine Regel
Was soll passieren,
wenn die Bedingungen zutreffen?
HORIZONT
31
®
SmartJCL
Aktion für eine Regel
Es kann eine Meldung
oder eine REXX
aufgerufen werden.
HORIZONT
32
®
SmartJCL
Aktion für eine Regel
Wo soll die Meldung
erscheinen?
HORIZONT
33
®
SmartJCL
Aktion für eine Regel
Die Meldung ist in
einem MessageMember zu definieren.
HORIZONT
34
®
SmartJCL
XML für eine Regel
Die im Dialog erstellten
Regeln werden als XML
gespeichert.
HORIZONT
35
®
SmartJCL
SRI Code generieren
Option 2 erstellt aus der
XML SmartJCL REXX
Interface Code.
HORIZONT
36
®
SmartJCL
SRI Code generieren
HORIZONT
37
®
SmartJCL
SRI Code generieren
Der erstellte REXX
Code ist mit dem
Parameter SRI-PRG
beim Check bzw.
Reformat anzugeben.
HORIZONT
38
®
SmartJCL
SmartJCL 3.0
Neue Funktionen und Erweiterungen:
• Installation - Eigener PARM dataset
-
Trennung von Produktbibliotheken und Parameterbibliothek (Parmeter in
CLIST/SKELS verursachen Probleme).
-
Einfachere Verteilung (und Wartung) von SmartJCL auf mehrere z/OS
Systeme.
• Scheduler Interface für TWS
-
TWS 8.5 Unterstützung
HORIZONT
39
®
SmartJCL
SmartJCL 3.0
Neue Funktionen und Erweiterungen (2):
• JCL Checker
-
z/OS 1.11 Unterstützung
• DD EATTR Parameter und SORT Erweiterungen
-
Prüfung der IEHPROGM Steueranweisungen und deren
Berücksichtigung für Katalogchecks
-
Warnung für nicht RACF geschützte Datasets
Warnung wenn für den ersten Qualifier kein Alias existiert
• Um Datasets im Masterkatalog zu vermeiden
-
Unterdrücken von Meldungen: Platzhalter für Meldungsnummer möglich
• Um Meldungen für bestimmte Member zu unterdrücken
• Beispiel für PARM(JCKKMSX): JCK* MEMBER=member-name
HORIZONT
40
®
SmartJCL
SmartJCL 3.0
Neue Funktionen und Erweiterungen (3):
• JCL Reformat
-
Reformat kann direkt auf PO-Dateien schreiben
• Bisher wurde eine PS-Datei mit IEBUPDTE Format verwendet.
• ISPF Memberstatistik wird aktualisiert.
-
Reformat der COMMAND Anweisung
HORIZONT
41
®
SmartJCL
SmartJCL 3.0
Neue Funktionen und Erweiterungen (4):
• SmartJCL REXX Interface (SRI)
-
Neue Funktion %SRIInclude um Kopien des gleichen Codes zu
vermeiden
-
Neue Funktion SRIChangeRef zum Anpassen der Referenzen auf
geänderte Stepnamen
-
Gleiche Zeilennummern in SRI Meldungen wie im Trace.
HORIZONT
42
®
SmartJCL
Fragen zu SmartJCL?
[email protected]
HORIZONT
43
®
SmartJCL
®
SmartJCL
Der einfache Weg zur fehlerfreien JCL
Vielen Dank für Ihre
Aufmerksamkeit!
HORIZONT
Software
44
HORIZONTfür Rechenzentren
Garmischer Str. 8
D- 80339 München
Tel ++49(0)89 / 540 162 – 0
®
www.horizont-it.com
SmartJCL
SmartJCL V2R4
SmartJCL V2R4 wird in Q3 2008 verfügbar sein.
Es enthält folgende wesentliche Neuerungen:
• Support für z/OS 1.9
-
OS Version/Release kann mit Parameter OSVER= gesetzt werden
Prüfung neuer SORT Parameter (z/OS 1.4 bis z/OS 1.9)
• DB2 Subsystem Check
-
Prüfung, ob angegebene DB2 Subsysteme definiert und aktiv sind
Neue Parameter:
DB2-SUBSYS-CHECK DB2SC=Y/N
DB2-GROUP=db2_group_name
DB2-SUBSYS=subsys_name
• Default Loadlib für "exist program" check
-
Neuer Parameter:
DEFAULT-LOADLIB DLL=P390A.JCK.DEV.LOAD
HORIZONT
45
®
SmartJCL
SmartJCL V2R4
• Lesen der PROCLIBS direkt von JES
-
Die PROCLIB Definitionen können automatisch von JES gelesen
oder wie bisher manuell angegeben werden
-
Nur für JES2 und JES3 Global, nicht für JES3 Local
Neuer Parameter:
READ-SYSTEM-PROCLIB
RSP=Y/N
• Bessere Anpassung an Kundenumgebung
-
Festlegen der Priorität, ob Parameter oder DD-Anweisungen für
weitere Datasets (JCKMSGI, JCKMSXI, PWDIN) zieht
-
Neuer Parameter:
JCK-FILE
JCK-FILE=PARM PARM OR DD
Unterstützt verkettete Parametermember und mehr
Aufrufparameter für Edit-Makros. Reduziert Bedarf an weiteren
OPZXPARM Membern und Edit-Makros.
-
HORIZONT
46
®
SmartJCL
SmartJCL V2R4
• Performanceverbesserungen
-
JCK Makro reagiert schneller
Optimierter Katalog-Check unter JES3 -> weniger CPU Zeit
• Verbesserter ISPF Dialog
-
Siehe nächste Folien
HORIZONT
47
®
SmartJCL
Verbesserter ISPF Dialog
Das Hauptpanel ist der
Einstieg für alle weiteren
Dialoge ...
...und informiert über
verfügbare Edit-Makros.
HORIZONT
48
®
SmartJCL
Joblibs und Auswahl der Member
Geben Sie Ihre Joblibs
an und selektieren
Member ...
HORIZONT
49
®
SmartJCL
Auswahl Member
Mit JCK startet man
den Check…
Member werden mit ”S”
ausgewählt oder durch
Angabe eine Reihenfolge mit
Nummern, z.B.
“1”, “2”, “3”
HORIZONT
50
®
SmartJCL
Prüfung Member
…die selektierten Member
werden nacheinander geprüft.
Fehlerhafte Jobs werden im
Editor angezeigt…
HORIZONT
51
®
SmartJCL
Anzeige der fehlerhaften Jobs
...am Ende zeigt die
Selektionsliste die
resultierenden Return-Codes.
HORIZONT
52
®
SmartJCL
Foreground
Eine weitere Option ist
die Prüfung der
selektierten Member im
Vordergrund...
HORIZONT
53
®
SmartJCL
Foreground - Ergebniss
... die
Zusammenfassung
wird nach dem
Check angezeigt…
... auf die Meldungen,
Details und Sysprint
kann man direkt
zugreifen
HORIZONT
54
®
SmartJCL
Batch
BATch prüft die
ausgewählten Member
im Batch…
HORIZONT
55
®
SmartJCL
Batch – Generierter Job
... schicken Sie den
vorbereiteten Job ab.
HORIZONT
56
®
SmartJCL
Kleiner Ausblick auf V3R0 gefällig?
HORIZONT
57
®
SmartJCL
SmartJCL V2R3
SmartJCL V2R3 ist seit 20. Juni 2007 verfügbar.
Es enthäIt folgende wesentlichen Änderungen:
• Einfachere Installation
-
SVC ist nicht mehr nötig für “third party RACF check”
“Firewall friendly” Remote Check (kein “call back”)
• TWS-Variablenersetzung
-
Verwendung eines temporären TWS Controllers, keine Beeinflussung des
Produktions-TWS-Controllers
-
TWS 8.3 Unterstützung
• REXX Interface:
-
Zugriff auf überschreibende Parameter und Utility Statements
• Neue Check Parameter
HORIZONT
58
®
SmartJCL
SmartJCL – Einfachere Installation
SmartJCL 2.2 benutzt einen SVC für Authorisierung.
Nachteile waren:
• SVC Installation erfordert SystemProgrammierung
- Assembler Coding
- SVC muß geladen werden
• Der SVC wurde von einigen Kunden nicht
akzeptiert
HORIZONT
59
®
SmartJCL
SmartJCL – Einfachere Installation
V2R3 verwendet das TSO Service Facility.
• Parmlib Member IKJTSOnn ist zu modifizieren
AUTHTSF NAMES(
CSFDAUTH
IEBCOPY
ICQASLI0
IKJEFF76
EQQMINOR
JCKASA1
JCKASU
/*
/*
/*
/*
/*
/*
/*
/*
/*
/*
PROGRAMS TO BE AUTHORIZED
WHEN CALLED THROUGH THE
TSO SERVICE FACILITY.
ICSF
OPC DIALOG INTERFACE
SMARTJCL ACCESS CHECK
SMARTJCL SWITCH USER
*/
*/
*/
*/
*/
*/
*/
*/
*/
*/)
+
+
+
+
+
+
+
+
+
• Parmlib Member IKJTSOnn ist zu aktivieren
SET IKJTSO=nn
HORIZONT
60
®
SmartJCL
Neue IP-Kommunikation
ROTJSHD
TP Program
ROTJSHD
Port
Port11
Port 1
JCL im
ISPF Editor
JCL im
ISPF Editor
Port 2
OLD
HORIZONT
TP Program
Server Program
verwendet die
bestehende
Verbindung, um
Daten zum Client
zu schicken.
Dadurch werden
Firewall-Probleme
vermieden.
NEW
61
®
SmartJCL
SmartJCL – Simulations-TWS
Ein eigener TWS Controller wird für die
Variablenersetzung verwendet. Vorteile sind:
• Der Produktions-Controller wird nicht beeinflusst
-
Keine Performance-Einbußen
Keine Locks auf dem JS-File
• Hohe Automation
-
Nötige Dateien werden vom Produktions-Controller kopiert
Controller wird von SmartJCL Jobs gestartet und gestoppt
• TWS 8.3 Unterstützung
HORIZONT
62
®
SmartJCL
SmartJCL – REXX-Interface
Neue REXX Interface-Funktionen für ....
• Überschreibende JCL-Anweisungen und Parameter
-
Ermöglichen den Zugriff auf JCL-Anweisungen, die für einen ProzedurAufruf verwendet werden (vor der Ersetzung des Prozedur-Aufrufes).
• Utilities
-
Ermöglichen den Zugriff auf Utility Anweisungen und Parameter
• Reformat nur für modifizierte Anweisungen
-
Vermeidet ungewollte Änderungen an JCL-Anweisungen (Kommentare),
die nicht modifiziert wurden.
HORIZONT
65
®
SmartJCL
SmartJCL – Neue Parameter
Neue Parameter für ....
• JCL Check
- ACF2 //*LOGONID
- Erforderliche Parameter (JOB-ACCOUNTING und JOB-PGMRS-NAME)
- Kundenspezifische Defaults (IDCAMS linker und rechter Rand)
• Ausgabe
- Zeilennumber für SRI Meldungen (SRI-MSGLNNUM)
- Kundenspezifische Start/Stop Meldungen (STARTM= und STOPM=)
- Nur Jobs mit Meldungen ausgeben (CORRECT_JOB_OUTPUT=)
- Unterdrücken von Meldungen für Member (MEMBER=)
• Access Check
- Kundenspezifisches Profil für Zugriffscheck (RACF-AUDIT-ENTITY)
- Defaultwerte für Zugriffsrechte für DISP= Werte
HORIZONT
66
®
SmartJCL
Do you have any questions about
SmartJCL 2.3?
[email protected]
Production
Scheduler
JCL
Plan
Reformat
REXX Interface
Variable
Scheduler Interface
SmartJCL
HORIZONT
67
®
SmartJCL
SmartJCL V2R2
SmartJCL V2R2 ist jetzt verfügbar (Juli 2006) .
Es enthält eine Reihe an Detail-Verbesserungen zur
einfacheren Installation und Nutzung:
• Performance-Verbesserung JCK Edit-Makro
• RACF Check mit beliebigen Usern unter TSO
• Erweiterte TWS-Simulation
• OSJ Edit-Makro: Dialog konfigurierbar
• Lesen Konfigurationsdaten vom System
• Migrieren bisheriger Check-Parameter
HORIZONT
68
®
SmartJCL
SmartJCL - Performance
Die Performance-Verbesserungen betreffen die EditMakros JCK bzw. OSJ JCK.
• Bisher war SmartJCL auf Massenchecks im Batch
ausgerichtet. Daher gab es Situationen, in denen die
Online-Variante im Edit-Makro-Modus nicht performant
genug war.
• Die neuen Edit-Makros benötigen nun lediglich 20-60% der
ursprünglichen Zeit.
• Dynamische statt statische Allokierung
-
Zeitaufwendige Mehrfach-Allokierungen werden vermieden.
Neue Parameter in JCKKPARM ersetzen DD-Statements
• Proclibs werden nur bei Bedarf allokiert
HORIZONT
69
®
SmartJCL
SmartJCL - Performance
JCL ohne Prozedur Aufruf
Neues Macro
JCK
2,02 s
8,20 s
Mit Prozedur – Prozedur ist in der ersten PROCLIB
Neues Macro
2,18 s
Mit Prozedur – Prozedur ist in der letzten PROCLIB
Neues Macro
4,93 s
HORIZONT
70
JCK
8,20 s
JCK
8,19 s
®
SmartJCL
SmartJCL - Check mit beliebigen Usern
Der "RACF Access Check" wurde mit SmartJCL V2R1
eingeführt.
• V2R1
-
Im Batch "RACF Check" mit beliebiger UserId möglich
Unter TSO "RACF Check" nur mit eigener UserId möglich
• V2R2
-
Auch unter TSO ist jetzt die Prüfung mit beliebigen Usern möglich.
Security Exit wird von SmartJCL bereitgestellt, um die nötige APFAuthorisierung durch SVC zu ermöglichen
HORIZONT
71
®
SmartJCL
SmartJCL - Erweiterte TWS Simulation
Betrifft die Ersetzung der TWS-Variablen als
Vorbereitung der JCL für den Check im Batch.
• Bisher zwei Möglichkeiten der TWS-Variablenersetzung
-
ACTION=SIMULATE, PIF Request JCLPREPA
-
ACTION=SUBSTITUTE, HORIZONT-eigene Ersetzung
• Ist für größere JCL-Mengen (> 5000) zu langsam
• Beeinträchtigt Controller, sperrt JS-Datei
• Ist sehr schnell, benötigt keine TWS-Ressourcen, nur Read auf AD
• Kann nicht alle Variablen ersetzen, z.B. SETVAR
Fazit:
Entweder vollständig (und langsam),
oder schnell (und unvollständig)!
HORIZONT
72
®
SmartJCL
SmartJCL - Erweiterte TWS Simulation
Lösung mit V2R2: Kombination beider Verfahren
• Erst HORIZONT-eigene Variablenersetzung
• Können alle Variablen ersetzt werden?
-
Ja: Ok, JCL ist fertig
Nein: Starte zweite Ersetzung mit PIF Request JCLPREPA
• Lösung ist abhängig von Kundenumgebung
-
Ungünstiger Fall: zweite Ersetzung wird (fast) immer aufgerufen.
HORIZONT
73
®
SmartJCL
SmartJCL - Erweiterte TWS Simulation
Neue Parameter (alte Parameter gelten weiterhin):
• ACTION=PIFSIM
-
Bisher ACTION=SIMULATE
• ACTION=HORIZONTSIM
-
Bisher ACTION=SUBSTITUTE
• ACTION=SIM
-
Neu für kombinierte Variablenersetzung
Nur im Batch verfügbar
HORIZONT
74
®
SmartJCL
SmartJCL - Erweiterte TWS Simulation
Beispiel:
&OADID wird mit
HORIZONTSIM nicht ersetzt...
... jedoch im zweiten Schritt
durch JCLPREPA
HORIZONT
75
®
SmartJCL
SmartJCL - OSJ Edit-Makro
Ein Beispiel:
Der Anwender will die JCL im Editor prüfen
(und nicht die JCL aus dem JS File)
In diesem Fall muss
der Anwender durch
mehrere Panels, die
gleichen Eingaben
müssen immer
wiederholt werden.
HORIZONT
76
®
SmartJCL
SmartJCL - OSJ Edit-Makro
SP
... geben Sie "SP"
ein, um weitere
Parameter ändern zu
können...
HORIZONT
77
®
SmartJCL
SmartJCL - OSJ Edit-Makro
... und ändern Sie den
Parameter!
HORIZONT
78
®
SmartJCL
SmartJCL - OSJ Edit-Makro
Mit SmartJCL kann der Dialog über eine Parameterdatei
frei konfiguriert werden:
• Werte können vorgegeben werden (statt Eingabe über
Dialog)
• Default-Werte und -Aktionen je Panel
• Anpassung an kundenspezifische Bedürfnisse
HORIZONT
79
®
SmartJCL
SmartJCL - OSJ Edit-Makro
Neue Parameter
Datei zur Steuerung
des Dialogs
HORIZONT
80
®
SmartJCL
SmartJCL - Lesen Konfigurationsdaten
• Konfigurationsdaten mussten bisher von außen
bereitgestellt werden.
-
Fehleranfällig, Check nicht korrekt
Arbeitsaufwand
• Smart JCL 2.2 ermittelt automatisch
-
SMS Klassen (bisher Job JCKJSMS)
Master Catalog
MVS Version
HORIZONT
81
®
SmartJCL
SmartJCL - Parameter
Die Parameter im Member JCKKPARM werden bei
einem Release-Wechsel übernommen.
• Alte (übernommene) und neue Parameter werden markiert.
• Nur neue Parameter müssen angepasst werden.
HORIZONT
82
®
SmartJCL
SmartJCL - Parameter
Automatische
Umstellung während der
Installation
HORIZONT
83
®
SmartJCL
Haben Sie noch Fragen zu
SmartJCL 2.2?
[email protected]
Production
Scheduler
JCL
Plan
Reformat
REXX Interface
Variable
Scheduler Interface
SmartJCL
HORIZONT
84
®
SmartJCL
SmartJCL V2R1
SmartJCL V2R1 ist seit März 2005 verfügbar und bietet
u.A. folgende neue Funktionen:
• "Remote Check"
-
JCL von einem System ausgehend auf anderen Systemen
prüfen
• "Change Facility"
-
Einfache Sprache zur Änderung von JCL Statements, z.B. für
Massenänderungen
• ...und vieles mehr...
HORIZONT
85
®
SmartJCL
V2R1 – Remote Check
Der "Remote Check" ermöglicht es Ihnen, JCL auf einem
anderen System zu prüfen. Vorteile:
• Komfort
-
Sie arbeiten im Editor auf dem Testsystem. Mit einem einzigen
Befehl wird die JCL im Hintergrund auf das Produktionssystem
übertragen und geprüft. Die Ergebnisse werden im Editor
angezeigt.
• Betriebssicherheit
-
Fehler können bereits in der Testumgebung erkannt und behoben
werden.
• Einfach zu Installieren
-
TCP/IP Standardarchitektur von HORIZONT (ROTJSHD +
Prozedur)
HORIZONT
86
®
SmartJCL
V2R1 – Remote Check
Der "Remote Check" kann auf unterschiedliche Art und
Weise geprüft werden:
• Edit Macro
-
Die zu prüfende JCL wird in den Edtor geladen, mit einem
einfachen Kommando wird der "Remote Check" gestartet.
• Auswahl der JCL im ISPF Dialog, Programmlauf
im Batch
-
Die zu überprüfenden Jobs können über den Jobnamen (von –
bis) oder über eine Liste ausgewählt werden.
HORIZONT
87
®
SmartJCL
V2R1 – Remote Check Batch Mode
-------------------------- SmartJCL Remote JCL Check -------------Command ===>
Primary
OPT
JOBLIST
JOBLIB
commands (top):
Browse TCP/IP parameters
Edit joblist
Edit joblibraries
Remote Check ISPF Dialog
Select one of the following options and press ENTER.
Member
===> ________ - ________
Specify one member (left) to check a single job, or specify
two members (from member-to member) to check a range of members.
Joblist
===> P390G.JCK.JOBLIST___________________________
If you do not specify any member, the Joblist will be used for
selection.
Joblibs
===> P390A.OPG.CNTL______________________________
Submit
===> E S submit job, E edit before submit
Seclect a valid server name with S
_
CPU1
_
CPU2
******************************* Bottom of data *****************************
HORIZONT
88
®
SmartJCL
V2R1 – Remote Check Foreground
EDIT
P390A.OPG.CNTL(TESTJCK) - 01.00
Command ===> JCK SRV=CPU1
Scroll ===> CSR
****** ********************* Top of Data ************************
000001 //P390KX
JOB 'SMARTJCL',
Ziel CPU angeben
000002 //
MSGCLASS=T,
000002 //
NOTIFY=&SYSUID,
000004 //
REGION=6M
000005 //*
------- SmartJCL - Remote check ------000006 //ADUNL
EXEC PGM=OPUIAD4,
000007 //
PARM='/PW=RFKEFZR',
Enter
password: _________
000008 //
REGION=4M
000009 //SYSPRINT DD
SYSOUT=*
000010 //OPUTEXT DD
DSN=&&OPUTEXT,
000011 //
DISP=(NEW,PASS),
000012 //
SPACE=(TRK,(1,1)),
000013 //
DCB=(RECFM=FB,LRECL=80,BLKSIZE=80),
Das Passwort für das
000014 //
UNIT=SYSDA
000015 //OPUDAT
DD
DSN=&&OPUDAT1,
Zielsystem wird
000016 //
DISP=(NEW,PASS),
abgefragt
000017 //
SPACE=(CYL,(1,1)),
000018 //
DCB=(RECFM=FB,LRECL=406,BLKSIZE=16240)
HORIZONT
89
®
SmartJCL
V2R1 – Remote Check
EDIT
P390A.OPG.CNTL(TESTJCK) - 01.00
Command ===> JCK SRV=CPU1
Scroll ===> CSR
****** ********************* Top of Data ************************
=NOTE= MESSAGE SUMMARY AND COUNTS: E=00001, W=00000, I=00000
=NOTE= LABEL MSG.NO. ERROR MESSAGE
=NOTE= ------ -------- -----------------------------------------=NOTE= .HAAA JCK0440E PROGRAM OPUIAD4 NOT FOUND ON SEARCH PATH
000001 //P390KX
JOB 'SMARTJCL',
000002 //
MSGCLASS=T,
000002 //
NOTIFY=&SYSUID,
000004 //
REGION=6M
000005 //*
JCLPGM=OPUIAD4,
wird auf dem Ziel-System
000006 //ADUNL DieEXEC
000007 //
PARM='/PW=RFKEFZR',
geprüft,
das Ergebnis wird direkt im
000008 //
REGION=4M
Editor
000009 //SYSPRINT
DD angezeigt
SYSOUT=*
000010 //OPUTEXT DD
DSN=&&OPUTEXT,
000011 //
DISP=(NEW,PASS),
000012 //
SPACE=(TRK,(1,1)),
000013 //
DCB=(RECFM=FB,LRECL=80,BLKSIZE=80),
000014 //
UNIT=SYSDA
HORIZONT
90
®
SmartJCL
V2R1 – Remote Check Übersicht
TEST
PROD
TCP/IP
TCP/IP
//DD SYSPRINT
SmartJCL
JCL
Member
DSN2
CatalogCheck
JCL (ISPF Editor)
HORIZONT
91
Procedures
DSN3
®
SmartJCL
V2R1 – Change Facility
Zusätzlich zum REXX-Interface bietet SmartJCL eine
komfortable Änderungsfunktion. Die Eingabesyntax ist
einfach aufgebaut, einige Beispiele:
• CHANGE PARM=DSN,VALUE=PROD*,NEWVAL=TEST*
• DELETE PARM=UNIT
• DELETE
JOB=ABC%,PGM=IDCAMS,PARM=UNIT,VALUE=TAPE4
HORIZONT
92
®
SmartJCL
V2R1 – Sonstige Neuerungen
Sonstige Neuerungen:
• "Catalog"-Verifizierung
-
Es wird geprüft, ob eine im Catalog eingetragene Datei
tatsächlich existiert
• ASA
-
ASA-Zeichen werden optional ausgegeben (DD JCKDTLO).
• SmartJCL Meldungen können ersetzt werden
-
Fehlernummer, Return Code und der Text der Fehlermeldung
können ersetzt werden
HORIZONT
93
®
SmartJCL
V2R1 – Sonstige Neuerungen 2
• Proceduren
-
Prozeduren werden nach der "EXEC PROC" Anweisung als
"=NOTE=" Zeilen eingeblendet.
-
Die "=NOTE=" Zeilen beinhalten JCL Überschreibungen
("overrides") und die ersetzten symbolischen Parameter.
• Feld Validierung
-
Der Inhalt des "Account" Parameters kann gegen eine Liste
geprüft werden.
-
Der "SCHENV=" Parameter kann gegen eine Liste geprüft
werden.
• Beschränkung der Fehler Meldungen
-
Der Check wird abgebrochen, sobald eine bestimmte Anzahl von
Fehlern überschritten wird.
HORIZONT
94
®
SmartJCL
V2R1 – Sonstige Neuerungen 3
• Neue Überschriften und Fussnoten in JCKDTLO
und JCKSUMO
-
Die Überschrift beinhaltet die Programmversion sowie die Startund Endezeiten.
Die Fussnote enthält eine Fehlerstatistik.
• Format von JCKSUMO
-
Das Format der Datei JCKSUMO ist nun identisch für JCKJCLI
und JUPJInnn.
• Bestimmte Jobs nicht nach JCKDTLO schreiben
-
Fehlerfreie Jobs werden nicht in JCKDTLO ausgegeben
(optional).
HORIZONT
95
®
SmartJCL
V2R1 – Sonstige Neuerungen 4
• Zugriffsberechtigungen überprüfen
- Der JCL-Check wird mit der in der Jobkarte
-
angegebenen Userid durchgeführt.
Ist keine Userid angegeben, dann wird die Userid des
Anwenders verwendet, der den Check-Job gestartet
bzw. das Edit Makro aufgerufen hat.
Alternativ kann der gewünschte User als Parameter
angegeben werden
HORIZONT
96
®
SmartJCL
V2R1 – Sonstige Neuerungen 5
• RACF-Audit Profil
- Es gibt in SmartJCL einen Parameter, mit dem man
-
angibt, ob RACF Verletzungen in den SYSLOG
geschrieben werden (RA=Y|N).
Der neue Parameter "RACF-AUDIT RA=N" kann über
ein RACF Profil geschützt werden. Der Anwender
muss Leseberechtigung für das Profil haben, damit
RA=N akzeptiert wird..
HORIZONT
97
®
SmartJCL
Haben Sie noch Fragen zu
SmartJCL 2.1?
[email protected]
File Edit Confirm Menu Utilities Compilers Test Help
--------------------------------------------------------------------------EDIT
P390H.SPFTEMP1.CNTL
Columns 00001 00072
Command ===> JCK
Scroll ===> CSR
****** ***************************** Top of Data **************************
=NOTE= LABEL MSG.NO. ERROR MESSAGE
File Edit Confirm Menu Utilities Compilers Test Help
=NOTE= ------ -------- --------------------------------------------------------------------------------------------------------------------------=NOTE= .HAAA JUP0008E 00,
,00009,INVALID JCL STATEMENT: '
EDIT
P390A.HUP.PLI.DEV($C1) - 01.02
Columns 000
=NOTE= .HAAB JCK0002E 00,
,00000,INVALID STMT ' IN ROUTINE JCKJOB
Scroll =
=NOTE= .HAAC JCK0316E 00,
,00000,DATA SET NOT FOUND IN CATALOG Command ===>
=NOTE= .HAAD JCK0316E 00,
,00000,DATA SET NOT FOUND IN CATALOG ****** ***************************** Top of Data *********************
=NOTE> SmartJCL
JCL XREF LISTING
=NOTE= .HAAE JCK0270E 00,
,00000,INVALID VALUE CATL FOR THE NORMAL
000001 //P390HX JOB ,'HORIZONT',MSGCLASS=T,
=NOTE> --------------------------------------------------------------000002 // NOTIFY=&SYSUID,REGION=6M
000003 //JCLCHECK JOB ,'HORIZONT/DIRNBERGER',MSGCLASS=T,CLASS=A,
=NOTE= -- NOTIFY=P390H,REGION=6M
000004 // NOTIFY=&SYSUID
000003 //*
=NOTE> +++ JCK1234I JOB FOUND IN APPLICATION STTMONTH01
000004 //******************************************************************
-------------------------------- SmartJCL ------------------------------=NOTE> +++ JCK1234I PREDECESSOR: STTMONTH00 JCLCHK01
000005 //* UNLOADCommand
OPC-VSAM
DSN=P390A.OPCESA.V2R0M0.AD
===>
________________________________________________________
=NOTE> +++ JCK1234I PREDECESSOR: STTMONTH00 JCLCHK02
000006 //******************************************************************
000007 //ADUNL
EXEC PGM=OPUIAD5,
Command:
ENTER Start RES Reset parameters
=NOTE> +++ JCK1234I SUCCESSOR:
.HAAB // PARM=('DEP(0),ER(0)/'
=NOTE> +++ JCK1234I SPECRES:
INITA
=NOTE= JUP0008E Selection
00,
,00009,INVALID JCL STATEMENT: '
=NOTE> +++ JCK1234I SPECRES:
STT
=NOTE= JCK0002E 00,
,00000,INVALID
STMT ' IN ROUTINE
JCKJOBNumber ===> ___
Jobname
===> ________
Operation
000011 //*
000009 //
'OI=N
PC=OS2 ID
OD=N ===>
EX=Y MYAPP*_______
PW=RNCECLI')
Application
Workstation ID
===> ____
000012
//PROCS
JCLLIB ORDER=(P390A.ROSE.PLI.CNTL)
From
===> 20010601 0600
Group
===> ________
000013
//*
To
===> 20010701 0559
Owner
===> ____________
YYYYMMDD HHMM
000014 //DEL
EXEC PGM=IDCAMS
Simulation
000015 //SYSPRINT DD *
Simulation Type ===> FULL___
OPC Subsystem
===> OP6CDEL P390A.STT.DATA.VALCURVE
000016
Use JCL from a private JCL Library for Simulation
===> N (Y/N)
000017 //*
Output Datasets
SmartJCL Output DSN
SmartJCL Sysprint
EQQMLOG
HORIZONT
===> P390G.HCLCHECK.HCL__________________________
===> P390G.HCLCHECK.SYSPRINT_____________________
===> P390G.HCLCHECK.EQQMLOG______________________
98
®
SmartJCL
Neue Funktionen in V2R0
V2R0 ist verfügbar seit 1. April 2004
• REXX Interface
-
Installationsspezifische Standards zu überprüfen
Massenupdate
• Integration der Auto-Edit Funktion (Control-M)
• Proceduren überprüfen
• Prüfen, ob DB2/IMS Programme existieren
• Utilities (DD-Namen)
HORIZONT
99
®
SmartJCL
REXX Interface
REXX ist flexibel, allgemein bekannt und überall
verfügbar. Mit den SmartJCL Funktionen kann von
REXX aus auf JCL-Statements zugegriffen werden.
• Zugriff auf jedes beliebige JCL Statement (Lesen,
Ändern, Löschen, Einfügen)
• Standard Funktionen und Operatoren, z.B. zur StringVerarbeitung
• Spezielle Funktionen zur JCL-Bearbeitung, z.B.
Qualifier ("USER.PROD.TYPE", LAST) = "TYPE“
• SET Funktionen zum Ändern, Löschen, Einfügen von
Statements und Steps
• Ermöglicht JCL-Massen-Änderungen
HORIZONT
100
®
SmartJCL
REXX Interface
File Edit Confirm Menu Utilities Compilers Test Help
----------------------------------------------------------------EDIT
P390A.JCK.SCL(XMP1)
01.02
REXX
mit
COMMAND ===>
000001 /* Scan the Joblib, and delete all DSNs from the
joblib,
SmartJCL
000002
which are not in the linklist */
„Funktion
000003
000004 Stmt = GetStmt("FIRST")
Package“
000005 Type = GetType(Stmt)
000006 while Type ^= "EXEC" do
000007
if Type = "DD" & Linklist (GetValue (Stmt, "DSN")) then
000008
Stmt = DelStmt("NEXT")
000009
else
000010
Stmt = GetStmt("NEXT")
000011
Type = GetType(Stmt)
000012 end
****** ************************ Top of Data *********************
HORIZONT
101
®
SmartJCL
REXX Interface
Änderung…
Member1
REXX
Member2
REXX
MemberX
//DD SYSPRINT
etc.
Verifizierung
HORIZONT
102
®
SmartJCL
Utilities
File Edit Confirm Menu Utilities Compilers Test Help
-----------------------------------------------------------------EDIT
P390A.HUP.PLI.DEV($C1) - 01.02
COMMAND ===>
****** ********************* Top of Data *************************
000001 //E5MS130S JOB (ACCOUNT),'HORIZONT',CLASS=3,MSGCLASS=T
000002 //*
000003 //DUMP
EXEC PGM=ICEMAN,PARM='ABEND,HIPRMAX=0'
000004 //SORTIN
DD DSN=P390C.TEMP.SMF2.$,DISP=SHR
000005 //SYSOUT
DD SYSOUT=*
000006 //SYSIN
DD *
000007
SORT FIELDS=COPY,SKIPREX=770000,STOPAFT=785000
=NOTE= JCKxxxxE 00,E5MS130S,SORTOUT DD STATEMENT MISSING
****** ***************** Bottom of Data **************************
•IEBGENER
•IEBCOPY
•IDCAMS
•SORT
DD Namen und Syntax
von Utilities prüfen
HORIZONT
103
®
SmartJCL
Haben Sie noch Fragen zu
SmartJCL 2.0?
[email protected]
File Edit Confirm Menu Utilities Compilers Test Help
--------------------------------------------------------------------------EDIT
P390H.SPFTEMP1.CNTL
Columns 00001 00072
Command ===> JCK
Scroll ===> CSR
****** ***************************** Top of Data **************************
=NOTE= LABEL MSG.NO. ERROR MESSAGE
File Edit Confirm Menu Utilities Compilers Test Help
=NOTE= ------ -------- --------------------------------------------------------------------------------------------------------------------------=NOTE= .HAAA JUP0008E 00,
,00009,INVALID JCL STATEMENT: '
EDIT
P390A.HUP.PLI.DEV($C1) - 01.02
Columns 000
=NOTE= .HAAB JCK0002E 00,
,00000,INVALID STMT ' IN ROUTINE JCKJOB
Scroll =
=NOTE= .HAAC JCK0316E 00,
,00000,DATA SET NOT FOUND IN CATALOG Command ===>
=NOTE= .HAAD JCK0316E 00,
,00000,DATA SET NOT FOUND IN CATALOG ****** ***************************** Top of Data *********************
=NOTE> SmartJCL
JCL XREF LISTING
=NOTE= .HAAE JCK0270E 00,
,00000,INVALID VALUE CATL FOR THE NORMAL
000001 //P390HX JOB ,'HORIZONT',MSGCLASS=T,
=NOTE> --------------------------------------------------------------000002 // NOTIFY=&SYSUID,REGION=6M
000003 //JCLCHECK JOB ,'HORIZONT/DIRNBERGER',MSGCLASS=T,CLASS=A,
=NOTE= -- NOTIFY=P390H,REGION=6M
000004 // NOTIFY=&SYSUID
000003 //*
=NOTE> +++ JCK1234I JOB FOUND IN APPLICATION STTMONTH01
000004 //******************************************************************
-------------------------------- SmartJCL ------------------------------=NOTE> +++ JCK1234I PREDECESSOR: STTMONTH00 JCLCHK01
000005 //* UNLOADCommand
OPC-VSAM
DSN=P390A.OPCESA.V2R0M0.AD
===>
________________________________________________________
=NOTE> +++ JCK1234I PREDECESSOR: STTMONTH00 JCLCHK02
000006 //******************************************************************
000007 //ADUNL
EXEC PGM=OPUIAD5,
Command:
ENTER Start RES Reset parameters
=NOTE> +++ JCK1234I SUCCESSOR:
.HAAB // PARM=('DEP(0),ER(0)/'
=NOTE> +++ JCK1234I SPECRES:
INITA
=NOTE= JUP0008E Selection
00,
,00009,INVALID JCL STATEMENT: '
=NOTE> +++ JCK1234I SPECRES:
STT
=NOTE= JCK0002E 00,
,00000,INVALID
STMT ' IN ROUTINE
JCKJOBNumber ===> ___
Jobname
===> ________
Operation
000011 //*
000009 //
'OI=N
PC=OS2 ID
OD=N ===>
EX=Y MYAPP*_______
PW=RNCECLI')
Application
Workstation ID
===> ____
000012
//PROCS
JCLLIB ORDER=(P390A.ROSE.PLI.CNTL)
From
===> 20010601 0600
Group
===> ________
000013
//*
To
===> 20010701 0559
Owner
===> ____________
YYYYMMDD HHMM
000014 //DEL
EXEC PGM=IDCAMS
Simulation
000015 //SYSPRINT DD *
Simulation Type ===> FULL___
OPC Subsystem
===> OP6CDEL P390A.STT.DATA.VALCURVE
000016
Use JCL from a private JCL Library for Simulation
===> N (Y/N)
000017 //*
Output Datasets
SmartJCL Output DSN
SmartJCL Sysprint
EQQMLOG
HORIZONT
===> P390G.HCLCHECK.HCL__________________________
===> P390G.HCLCHECK.SYSPRINT_____________________
===> P390G.HCLCHECK.EQQMLOG______________________
104
®
SmartJCL
Neue Funktionen in V1R1
V1R1 ist verfügbar seit Juni 2003
• Dataset-Exclude für Katalog-Verarbeitung
• Job-Include/Exclude Liste (Batch Mode)
• Individuelles Ein/Ausschalten von
Fehlermeldungen
• TWS-Daten in der JCL anzeigen
• Reformat (Jobs und Proceduren)
• Control-M Variablen Substitution
• Aufteilung der Ausgabe auf mehrere Datasets
HORIZONT
105
®
SmartJCL
Reformat
EDIT
P390A.OPG.CNTL(TESTJCK) - 01.00
Columns 00001 00072
Command ===>
Scroll ===> CSR
****** ********************* Top of Data ************************
000001 //P390KX JOB ,'SMARTJCL',MSGCLASS=T,
000002 // NOTIFY=&SYSUID,REGION=6M
000003 //*
000004 //ADUNL
EXEC PGM=OPUIAD4,
000005 //
PARM='/PW=RFKEFZR',REGION=4M
000006 //SYSPRINT DD
SYSOUT=*
Unformatierte JCL ist
000007 //OPUTEXT DD DISP=(NEW,PASS),DSN=&&OPUTEXT,
unübersichtlich und
000008 //
SPACE=(TRK,(1,1)),
000009 // DCB=(RECFM=FB,LRECL=80,BLKSIZE=80),UNIT=SYSDA
schwer lesbar
000010 //OPUDAT
DD DISP=(NEW,PASS),DSN=&&OPUDAT1,
000011 //
UNIT=SYSDA,SPACE=(CYL,(1,1)),
000012 //
DCB=(RECFM=FB,LRECL=406,BLKSIZE=16240)
000013 //*
****** ********************* Bottom of Data *********************
HORIZONT
106
®
SmartJCL
Reformat
Reformatierte
JCL00072
ist
EDIT
P390A.OPG.CNTL(TESTJCK) - 01.00
Columns 00001
Command ===>
Scroll ===> CSR
•
übersichtlich
****** ********************* Top of Data ************************
• hilft dadurch Fehler
000001 //P390KX
JOB 'SMARTJCL',
000002 //
MSGCLASS=T,
zu vermeiden
000002 //
NOTIFY=&SYSUID,
• senkt somit die
000004 //
REGION=6M
000005 //*
Kosten
000006 //ADUNL
EXEC PGM=OPUIAD4,
000007 //
PARM='/PW=RFKEFZR',
000008 //
REGION=4M
000009 //SYSPRINT DD
SYSOUT=*
000010 //OPUTEXT DD
DSN=&&OPUTEXT,
000011 //
DISP=(NEW,PASS),
000012 //
SPACE=(TRK,(1,1)),
000013 //
DCB=(RECFM=FB,LRECL=80,BLKSIZE=80),
000014 //
UNIT=SYSDA
000015 //OPUDAT
DD
DSN=&&OPUDAT1,
000016 //
DISP=(NEW,PASS),
000017 //
SPACE=(CYL,(1,1)),
000018 //
DCB=(RECFM=FB,LRECL=406,BLKSIZE=16240)
HORIZONT
107
®
SmartJCL
Reformat
Die Reformatfunktion von SmartJCL kann über
Parameter an kundenspezifische Standards angepasst
werden, u.a.
• Die Positionen von Schlüsselwort, Wert und den
Fortsetzungszeilen sind für jeden Parameter
individuell einstellbar
• Flexible Kommentarbehandlung
• Reformatierung der IF/ELSE Anweisungen
HORIZONT
108
®
SmartJCL
Reformat
-------------------------- SmartJCL Reformat--------------------Command ===>
Primary
REF
JOBLIST
JOBLIB
commands (top):
Edit reformat parameters
Edit joblist
Edit joblibraries
Select one of the following options and press ENTER.
Member
===> RFMT#E1_ - ________
Specify one member (left) if you would like to check a
a single job, or specify two members
if you would like to check a range of members.
Joblist
===> ____________________________________________
If you do not specify any member, the Joblist
Der ISPF Dialog
is used for selection.
für
die ReformatFunktion
Joblibs
===> P390G.SMARTJCL.JOBLIBS______________________
Submit
===> E
HORIZONT
S submit job, E edit before submit
109
®
SmartJCL
TWS-Daten in der JCL anzeigen
File Edit Confirm Menu Utilities Compilers Test Help
----------------------------------------------------------------EDIT
P390A.HUP.PLI.DEV($C1) - 01.02
COMMAND ===>
****** ************************ Top of Data *********************
==MSG> PREDECESSORS:
==MSG> APPLICATION
OPNO JOBNAME
==MSG> -----------------------------==MSG> XINFO22
61 XXRJCM2
==MSG> XINFO22
60 XXRJCM1
==MSG> XINFO22
1
==MSG> SUCCESSORS:
==MSG> APPLICATION
OPNO JOBNAME
==MSG> -----------------------------==MSG> XINFO22
64 XXRJDBLC
Anzeige der
==MSG> SPECIAL RESOURCES:
wichtigsten TWS==MSG> -------------------------------------------==MSG> DSN1
Informationen im
=NOTE= ******************* JCL PREPARED BY SMARTJCL/SIMJCL *******
JCL-Editor
=NOTE= ************************** END OF PREPARED JCL
************
000001 //XXRJCM3 JOB (ACCOUNT),'HORIZONT',MSGCLASS=T,CLASS=A,
HORIZONT
110
®
SmartJCL
Aufteilung der Ausgabe, z.B. Summary
Display Filter View Print Options Help
----------------------------------------------------------------Die Ausgabe ist aufgeteilt:
SDSF OUTPUT DISPLAY JCKJPS2 JOB03904 DSID
105 LINE 0
CO
•
JCKSUMO
(Summary)
COMMAND INPUT ===>
SCR
*********************************
TOP OF DATA
********************
• JCKDTLO
(Detailled)
MSG.NO. ERROR MESSAGE
-------- --------------------------------------------------------JCK0402E MISPLACED DD STATEMENT
JCK0400E JOB HAS NO STEPS
JCK0416E JOB NAME HAS TO BE EQUAL WITH MEMBER NAME
JCK0402E MISPLACED DD STATEMENT
JCK0400E JOB HAS NO STEPS
JCK0400E JOB HAS NO STEPS
JCK0416E JOB NAME HAS TO BE EQUAL WITH MEMBER NAME
JCK0440E PROGRAM ZVB245
NOT FOUND ON SEARCH PATH
JCK0457W DATA SET SYS1.CEE.SCEERUN NOT IN CATALOG
Ausgabe als
JCK0441E LIBRARY COULD NOT BE ALLOCATED TO SEARCH FOR PROGRAM, DSN
Zusammenfassung…
JCK0515E DATA SET CANNOT BE FOUND/NOT IN CATALOG,
DSN = "SYS1.CEE.
JCK0457W DATA SET SSKM.SMART611.DCALOADP NOT IN CATALOG
JCK0441E LIBRARY COULD NOT BE ALLOCATED TO SEARCH FOR PROGRAM, DSN
HORIZONT
111
®
SmartJCL
Aufteilung der Ausgabe, z.B. Summary
Display Filter View Print Options Help
----------------------------------------------------------------SDSF OUTPUT DISPLAY JCKJPS2 JOB03904 DSID
105 LINE 0
CO
COMMAND INPUT ===>
SCR
********************************* TOP OF DATA ********************
LIB MEMBER
JOBNAME JSTEPNAME PSTEPNAME DD-NAME
---- -------- -------- --------- --------- -------J001 $$$CONT
SYSIN
J001 $$$CONT
SYSIN
J001 $C
DDP4
J001 $DDTABLE
SYSIN
J001 $DDTABLE
SYSIN
J001 $PROLOG
J001 $SIGNAL #ZVB245
J001 $SIGNAL #ZVB245 STEP1
STEP1
J001 $SIGNAL #ZVB245 STEP1
STEP1
STEPLIB
…nur mit wichtigen
J001 $SIGNAL #ZVB245 STEP1
STEP1
STEPLIB
Informationen
J001 $SIGNAL #ZVB245 STEP1
STEP1
STEPLIB
J001 $SIGNAL #ZVB245 STEP1
STEP1
STEPLIB
J001 $SIGNAL #ZVB245 STEP1
STEP1
STEPLIB
HORIZONT
112
®
SmartJCL
Aufteilung der Ausgabe, z.B. Detailled
Display Filter View Print Options Help
----------------------------------------------------------------SDSF OUTPUT DISPLAY JCKJPS2 JOB03904 DSID
105 LINE 0
CO
COMMAND INPUT ===>
SCR
********************************* TOP OF DATA ********************
000100
.HAAA JCK0402E MISPLACED DD STATEMENT
.HAAA JCK0400E JOB HAS NO STEPS
P390A.JUP.DATA.JOBLIB($PROLOG):
000001 //* ------------------------------------------------------000002 //* JD021016, ........
000003 //* ------------------------------------------------------000004 //*
Oder eine Datei mit
.HAAA JCK0400E JOB HAS NO STEPS
detaillierten
P390A.JUP.DATA.JOBLIB($SIGNAL):
Fehlermeldungen
000001 //#ZVB245 JOB (OA-MF-NB),MSGLEVEL=(1,1),CLASS=P,MSGCLASS=T,
000002 //
TIME=1440,REGION=8M,TYPRUN=SCAN
incl. Ausgangs-JCL
.HAAA
JCK0416E JOB NAME HAS TO BE EQUAL WITH MEMBER NAME
HORIZONT
113
®
SmartJCL
Control-M
---------------------- CTM/SimJCL Startpanel --------------------Command ===>
Select one of the following options and press ENTER
1 JOBLIST
- Select jobs for simulation
2 SIMULATE
- Start JCL simulation based on previous selection
3 CHECK
4 CHECK
- Start JCL check based on previous simulation
- Start JCL check without simulation
5 REFORMAT
- Start JCL reformat (pre release)
Note:
Options 3, 4, 5 are only available, if a JCL checker
is installed, for example SmartJCL Hauptpanel der
Control-M
Schnittstelle
HORIZONT
114
®
SmartJCL
Control-M
------------------ CTM/SimJCL Command ===>
top : RESET restore
Selection
Table
Application
Group
Jobname
Owner
Create Joblist -----------------
default values, JC change jobcards
===>
===>
===>
===>
===>
____________________
____________________
____________________
________
______________________________
Schedule Library
DSN
===> DATA.CTM.MAN.SCHEDULE___________________
Output files
Joblist
Variablelist
Auswahl der Jobs
===> P390G.MJV.SELJOBS_______________________
===> P390G.MJV.SETVAR________________________
Submit
HORIZONT
===> S
S submit job, E
115
über Control-M
Feldersubmit
edit before
®
SmartJCL
Haben Sie noch Fragen zu
SmartJCL 1.1?
[email protected]
File Edit Confirm Menu Utilities Compilers Test Help
--------------------------------------------------------------------------EDIT
P390H.SPFTEMP1.CNTL
Columns 00001 00072
Command ===> JCK
Scroll ===> CSR
****** ***************************** Top of Data **************************
=NOTE= LABEL MSG.NO. ERROR MESSAGE
File Edit Confirm Menu Utilities Compilers Test Help
=NOTE= ------ -------- --------------------------------------------------------------------------------------------------------------------------=NOTE= .HAAA JUP0008E 00,
,00009,INVALID JCL STATEMENT: '
EDIT
P390A.HUP.PLI.DEV($C1) - 01.02
Columns 000
=NOTE= .HAAB JCK0002E 00,
,00000,INVALID STMT ' IN ROUTINE JCKJOB
Scroll =
=NOTE= .HAAC JCK0316E 00,
,00000,DATA SET NOT FOUND IN CATALOG Command ===>
=NOTE= .HAAD JCK0316E 00,
,00000,DATA SET NOT FOUND IN CATALOG ****** ***************************** Top of Data *********************
=NOTE> SmartJCL
JCL XREF LISTING
=NOTE= .HAAE JCK0270E 00,
,00000,INVALID VALUE CATL FOR THE NORMAL
000001 //P390HX JOB ,'HORIZONT',MSGCLASS=T,
=NOTE> --------------------------------------------------------------000002 // NOTIFY=&SYSUID,REGION=6M
000003 //JCLCHECK JOB ,'HORIZONT/DIRNBERGER',MSGCLASS=T,CLASS=A,
=NOTE= -- NOTIFY=P390H,REGION=6M
000004 // NOTIFY=&SYSUID
000003 //*
=NOTE> +++ JCK1234I JOB FOUND IN APPLICATION STTMONTH01
000004 //******************************************************************
-------------------------------- SmartJCL ------------------------------=NOTE> +++ JCK1234I PREDECESSOR: STTMONTH00 JCLCHK01
000005 //* UNLOADCommand
OPC-VSAM
DSN=P390A.OPCESA.V2R0M0.AD
===>
________________________________________________________
=NOTE> +++ JCK1234I PREDECESSOR: STTMONTH00 JCLCHK02
000006 //******************************************************************
000007 //ADUNL
EXEC PGM=OPUIAD5,
Command:
ENTER Start RES Reset parameters
=NOTE> +++ JCK1234I SUCCESSOR:
.HAAB // PARM=('DEP(0),ER(0)/'
=NOTE> +++ JCK1234I SPECRES:
INITA
=NOTE= JUP0008E Selection
00,
,00009,INVALID JCL STATEMENT: '
=NOTE> +++ JCK1234I SPECRES:
STT
=NOTE= JCK0002E 00,
,00000,INVALID
STMT ' IN ROUTINE
JCKJOBNumber ===> ___
Jobname
===> ________
Operation
000011 //*
000009 //
'OI=N
PC=OS2 ID
OD=N ===>
EX=Y MYAPP*_______
PW=RNCECLI')
Application
Workstation ID
===> ____
000012
//PROCS
JCLLIB ORDER=(P390A.ROSE.PLI.CNTL)
From
===> 20010601 0600
Group
===> ________
000013
//*
To
===> 20010701 0559
Owner
===> ____________
YYYYMMDD HHMM
000014 //DEL
EXEC PGM=IDCAMS
Simulation
000015 //SYSPRINT DD *
Simulation Type ===> FULL___
OPC Subsystem
===> OP6CDEL P390A.STT.DATA.VALCURVE
000016
Use JCL from a private JCL Library for Simulation
===> N (Y/N)
000017 //*
Output Datasets
SmartJCL Output DSN
SmartJCL Sysprint
EQQMLOG
HORIZONT
===> P390G.HCLCHECK.HCL__________________________
===> P390G.HCLCHECK.SYSPRINT_____________________
===> P390G.HCLCHECK.EQQMLOG______________________
116
®
SmartJCL
Smart/JCL
Der einfache Weg zur fehlerfreien JCL
Vielen Dank für Ihre
Aufmerksamkeit!
HORIZONT
Software
117
HORIZONT für Rechenzentren
Garmischer Str. 8
D- 80339 München
Tel ++49(0)89 / 540 162 - 0
®
www.horizont-it.com
SmartJCL
Herunterladen