/FILE CFS.STARTUP.BEISPIEL,LINK=CFSCMD
|
|
Die CFS-Startup-Datei stellt eine spezielle CFS-Prozedur dar, deren Anweisungen beim Aufruf des Programms automatisch abgearbeitet werden. In der Startup-Datei steht der volle Funktionsumfang von CFS zur Verfügung.
|
|
Die ausgelieferte Datei soll einige Standardanwendungsfälle aufzeigen. Die Datei kann durch Anpassung der Parameteranweisungen jederzeit auf die eigenen Bedürfnisse angepaßt werden.
|
|
Sollte die Datei CFS.STARTUP.BEISPIEL in der CFS-Installationskennung nicht existieren, so ist diese auch als Element S/CFS.STARTUP.BEISPIEL in der Bibliothek CFS.USERLIB. BEISPIEL enthalten und kann aus dieser Bibliothek selektiert werden.
|
|
Beispiele für Standardaktionen in einer Startup-Datei:
|
|
- | CFS-Parametereinstellungen verändern (UO, ERT, CP, CSO, ...)
|
|
- | CFS-Kommandogedächtnis laden
|
|
- | Benutzerumgebung herstellen (USERLIB, USERACT, ITEM-File, MENUE-File, ...)
|
|
- | Umschalten auf die Tastatur bis zum normalen Ende von CFS
|
|
- | Kommandogedächtnis sicherstellen
|
|
- | Eröffnete Connections automatisch schließen
|
|
Die ausgelieferte Startup-Datei stellt folgende Dateizuordnungen als Voraussetzung zum Testen der in dieser Beschreibung vorgestellten Kommandoprozeduren her:
|
|
CFS.USERLIB.BEISPIEL | | User-Library für CFS-Kommandoprozeduren
|
|
CFS.USERACT.BEISPIEL | | Definitionsdatei für benutzereigene Action Codes
|
|
Mit den benutzereigenen Action Codes wird dem Administrator und jedem einzelnen Benutzer die Möglichkeit geboten, sich individuelle Arbeitsabläufe über %act, zusätzlich zu den standardmäßig angebotenen Action Codes, bereitzustellen. Jeder dieser benutzereigenen Action Codes kann mit einem CFS-Kommando, einer CFS-Kommandoprozedur oder einer BS2000-Prozedur verknüpft werden. Die nachfolgend beschriebenen Action-Codes werden in der Datei CFS.USERACT.BEISPIEL definiert.
|
|
Sollte die Datei CFS.USERACT.BEISPIEL in der CFS-Installationskennung nicht existieren, so ist diese auch als Element S/CFS.USERACT.BEISPIEL in der Bibliothek CFS.USERLIB. BEISPIEL enthalten und kann aus dieser Bibliothek selektiert werden.
|
|
Die Datei CFS.USERACT.BEISPIEL muß zum Testen der nachfolgend beschriebenen Action Codes mit LINK=USERACT und die Bibliothek CFS.USERLIB.BEISPIEL als aktuelle USERLIB zugewiesen sein (wird in CFS.STARTUP.BEISPIEL durchgeführt). Ist dies der Fall, so stehen folgende Action Codes zur Verfügung:
|
|
%VSN | Anzeige des Allocated Space mit Größe der Extents über alle VSN's
|
|
%FC | Umsetzung einer Datei mit dem CFS-Kommando FC
|
|
%REO | Reorganisieren einer Datei/Bibliothek mit Ausweichplatte und Defragment
|
|
%FT | Filetransfer mit FT-BS2000 und vordefinierten Berechtigungen
|
|
%EDR | Datei mit EDOR bearbeiten
|
|
%PRL | Auswahl aller TSN's in TAS, die einen Print-Lock auf die markierte Datei halten
|
|
Aufruf von BS2000-Kommandos
|
|
%MFA | Katalogattribute mit SDF-Kommando /MOD-FILE-ATT auf bestimmte Werte setzen
|
|
%CAT | Katalogattribute mit ISP-Kommando /CAT auf bestimmte Werte setzen
|
|
%SEC | Datei mit /SECURE-RESOURCE-ALLOC exclusiv reservieren
|
|
%PR | Datei mit bestimmten Print-Parametern ausdrucken
|
|
%CI | Sekundärschlüssel für NK-ISAM Datei erzeugen (mit SDF-Dialog)
|
|
Starten von BS2000-DO-Prozeduren mit Parametern im Enter
|
|
%ASS | Assembler-Übersetzung mit Überwachung im Enter starten (Job-Report)
|
|
%COB | Cobol-Übersetzung mit Überwachung im Enter starten (Job-Report)
|
|
Kombinierte Verwendung von Kommandos und Action Codes durch Aufruf von CFS-Prozeduren
|
|
%P0 | Katalogattribute ändern mit aktualisieren des Tabelleneintrags
|
|
%P1 | Katalogattribute ändern mit aktualisieren des Tabelleneintrags
|
|
%U | FSTAT VTOC=YES und aktualisieren des Tabelleneintrags
|
|
%DUPK | Prüfen, ob in einer ISAM-Datei doppelte Keys vorhanden sind
|
|
| %P0, %P1 -> DO CFS.USERLIB.BEISPIEL(PROTECT):
|
|
| BS2000-Kommando absetzten, auf entsprechenden Eintrag positionieren, Action Code U eintragen, auf ursprünglichen Eintrag zurückpositionieren.
|
|
| %U -> DO CFS.USERLIB.BEISPIEL(UPDATE-VTOC):
|
|
| BS2000-Kommando FSTAT ...,VTOC=YES für Datei absetzen, auf entsprechenden Eintrag positionieren, Action Code U eintragen, auf ursprünglichen Eintrag in der Dateienliste zurück-positionieren.
|
|
| %DUPK -> DO CFS.USERLIB.BEISPIEL(DUPKEY):
|
|
| Datei mit User Options KEYPOS, KEYLEN, RECFORM auswählen, verzweigen in CFS-Editor, satzweises Vergleichen der ISAM-Keys über Wegschreiben in Prozedurvariablen.
|
|
Verzweigen in den CFS-Editor über CFS-Kommandoprozeduren
|
|
%DF | Entkomprimierte Anzeige von mit FLAM komprimierten Dateien im Display.
|
|
%DP | Anzeige von mit SHARUPD eröffneten NK-ISAM Dateien.
|
|
| %DF -> DO CFS.USERLIB.BEISPIEL(DISPLAY-FLAM):
|
|
| auf markierten Eintrag positionieren, Action Code D eintragen, DA (Data Access) FLAM aktivieren, umschalten auf Tastatur bis CFS-Editor beendet wird, danach auf ursprünglichen Eintrag in der Dateienliste zurückpositionieren.
|
|
| %DP -> DO CFS.USERLIB.BEISPIEL(DISPLAY-NKISAM):
|
|
| auf entsprechenden Eintrag positionieren, Action Code D eintragen, falls notwendig SR-Modus (Shared Update) aktivieren, falls mit NKISAM-POOL gearbeitet wird: POOL-Namen aus OPEN-List oder über Prompting anfordern, Kommando /CREATE-ISAM-POOL und /ADD-ISAM-POOL-LINK absetzen, umschalten auf Tastatur bis CFS-Editor beendet wird, danach auf ursprünglichen Eintrag in der Dateienliste zurückpositionieren.
|
|
Bearbeiten der Access-Control-List (SECOS) über CFS-Kommandoprozeduren
|
|
%AC | ACL kopieren von einer Datei, die zuvor mit Action-Code * markiert wurde
|
|
%AEU | ACL User-Id entfernen
|
|
%AEG | ACL Group-Id entfernen
|
|
%AU | User-Id in ACL aufnehmen
|
|
%AG | Group-Id in ACL aufnehmen
|
|
%AX | mehrere User-Ids/Group-Ids in ACL aufnehmen
|
|
%AMU | Rechte für User-Id modifizieren
|
|
%AMG | Rechte für Group-Id modifizieren
|
|
%AMO | Rechte für Others modifizieren
|
|
| -> DO CFS.USERLIB.BEISPIEL(ADD-ACL / MOD-ACL / REM-ACL):
|
|
| Zum Anzeigen und Verändern der Access-Control-List stehen diese beiden Kommandoprozeduren zur Verfügung. In den Prozeduren werden die notwendigen BS2000-Kommandos in der Form abgesetzt, daß die wichtigsten Parameter schon vorbelegt sind und die fehlenden Informationen im SDF-Dialog vervollständigt werden müssen. Am Ende der Prozeduren wird der jeweilige Eintrag in der Dateienliste aktualisiert.
|
|
Die CFS-Prozedur bietet die Möglichkeit, über Kurzcodes, die als Parameter beim Prozeduraufruf mitgegeben werden, häufig benötigte Standardselektionen auszuführen. Je nach Parameter wird das Inhalts-verzeichnis einer Bibliothek angezeigt. Über Stellungsparameter kann ein Kurzcode für die Bibliothek, eine Suchbedingung bezüglich des Elementnamens, eine Typbezeichnung und eine Altersangabe als Auswahlparameter übergeben werden.
|
|
Die CFS-Prozedur kann durch Anpassung der Kurzcodes und Bibliotheksnamen auf die eigene Arbeitsumgebung angepaßt werden.
|
|
DO LIB [, code] [, suchanw] [, typ] [, age]
|
|
|
| Ohne Angabe von Parametern werden alle Elemente aus einer in der Prozedur definierten Standardbibliothek ausgewählt.
|
|
|
code | Es werden alle Elemente der durch code definierten Bibliothek ausgewählt (evtl. auch nur Elemente eines bestimmten Typs).
|
|
|
| Wurde ein ungültiger Kurzcode angegeben, so wird als Bibliothek die Standardbibliothek angenommen und die Stellungsparameter logisch um eine Position nach links verschoben. code wird in diesem Fall als Such-anweisung bezüglich des Elementnamens interpretiert.
|
|
|
suchanw | Es werden alle Elemente der durch code definierten Bibliothek ausgewählt, in deren Elementnamen der String suchanw vorkommt.
|
|
|
typ | Es werden alle Elemente vom Elementtyp typ aus der entsprechenden Bibliothek ausgewählt.
|
|
|
age | Es werden alle Elemente mit AGE=age aus der entsprechenden Bibliothek ausgewählt.
|
|
DO LIB | Alle Elemente aus der Standardbibliothek (CFS.S.LMSLIB)
|
|
DO LIB,U | Alle Elemente der Bibliothek CFS.USERLIB.BEISPIEL
|
|
DO LIB,C | Alle Elemente der Bibliothek CFSLIB
|
|
DO LIB,U,CONN | Alle Elemente der Bibliothek CFS.USERLIB.BEISPIEL, in deren Elementnamen der String 'CONN' enthalten ist
|
|
DO LIB,S,,J | Alle Elemente der Bibliothek CFS.S.LMSLIB vom Elementtyp J
|
|
Die CFS-Prozedur bietet die Möglichkeit, die Inhaltsverzeichnisse zweier Bibliotheken darauf hin zu überprüfen, welche Elemente gemeinsam vorhanden, exclusiv vorhanden und neueren Datums sind. Über ein Auswahlmenü können die gewünschten Elemente ausgewählt werden.
|
|
DO COMP-LIB [, LIB1=library] [, LIB2=library] [, TMPIND=tmp]
|
|
| Ohne Angabe von Parametern wird eine Maske ausgegeben, in der die Bibliotheksnamen und der Tempfile-Indikator angefordert werden.
|
|
|
LIB1=library | Name der ersten Bibliothek
|
|
|
LIB2=library | Name der zweiten Bibliothek
|
|
|
TMPIND=tmp | Einleitungszeichen für temporäre Dateien (STD: #)
|
|
Die CFS-Prozedur bietet die Möglichkeit, die katalogisierten Dateien zweier Pubsets oder User-Ids darauf hin zu überprüfen, welche Dateien gemeinsam vorhanden, exclusiv vorhanden und neueren Datums sind. Über ein Auswahlmenü können die gewünschten Dateien ausgewählt werden.
|
|
DO COMP-PVS [, PVS1=pvs1] [, UID1=user-id1] [, PVS2=pvs2] [, UID2=user-id2] [, TMPIND=tmp]
|
|
| Ohne Angabe von Parametern wird eine Maske ausgegeben, in der die Werte für die PVS-Id, User-Id und der Tempfile-Indikator angefordert werden.
|
|
|
PVS1=pvs1 | Public-Volume-Set der ersten Benutzerkennung
|
|
|
UID1=user-id1 | Name der ersten Benutzerkennung
|
|
|
PVS2=pvs2 | Public-Volume-Set der zweiten Benutzerkennung
|
|
|
UID2=user-id2 | Name der zweiten Benutzerkennung
|
|
|
TMPIND=tmp | Einleitungszeichen für temporäre Dateien (STD: #)
|
|
Die CFS-Prozedur prüft, ob in einer vorgegebenen ISAM-Datei doppelte Schlüssel enthalten sind und gibt diese am Bildschirm aus. Am Ende wird die Gesamtzahl der gefundenen doppelten ISAM-Schlüssel am Bildschirm ausgegeben. Die für die Verarbeitung notwendigen Informationen KEYPOS, KEYLEN und RECFORM werden in der Prozedur ermittelt.
|
|
DO DUPKEY [, datei] [, OUT=N]
|
|
| Ohne Angabe von Parametern wird der Dateiname und der Indikator, ob doppelte Schlüssel am Bildschirm ausgegeben werden sollen, in einer Maske angefordert.
|
|
|
datei | Es wird für die angegebene Datei geprüft, ob doppelte Schlüssel vorhanden sind. Die Ausgabe der Parametermaske entfällt.
|
|
|
OUT=N | Die Anzeige der doppelten Schlüssel wird unterdrückt.
|
|
Die CFS-Prozedur schreibt bestimmte Datensätze der aktuell angezeigten Display-Datei in eine zweite Datei. Über Parameter kann eine CFS-Suchbedingung für die Treffersätze übergeben werden. Außerdem ist es möglich auch Datensätze im Umfeld der Treffersätze mit wegzuschreiben ( m Sätze vor und n Sätze nach dem Treffer ).
|
|
DO WRITE-MN [, ITEM=such] [, WFILE=datei] [, M=m] [, N=n]
|
|
| Ohne Angabe von Parametern wird eine Maske ausgegeben, in der die Suchanweisung, der Name der Ausgabedatei und die Anzahl Datensätze vor und nach dem Treffer angefordert werden.
|
|
|
ITEM=such | Datensätze, in denen die durch such spezifizierte CFS-Suchbedingung erfüllt ist, werden als Treffersätze behandelt und weggeschrieben.
|
|
|
WFILE=datei | Die gewünschten Datensätze werden in die Ausgabedatei geschrieben.
|
|
|
M=m | Zusätzlich zum Treffersatz werden die letzten m Sätze vor dem Treffer in die Ausgabedatei geschrieben (Standard: 0).
|
|
|
N=n | Zusätzlich zum Treffersatz werden n Sätze nach dem Treffer in die Ausgabedatei geschrieben (Standard: 0).
|
|
Die CFS-Prozedur schreibt alle Sätze ab der aktuellen Anzeigeposition in der Display-Datei bis zu einem vorgegebenen Treffer in eine zweite Datei. Über Parameter kann die Suchbedingung für den Treffer angegeben werden.
|
|
DO WRITE-BIS-TREFFER [, ITEM=such] [, WFILE=datei]
|
|
| Ohne Angabe von Parametern wird eine Maske ausgegeben, in der die CFS-Suchanweisung und der Name der Ausgabedatei angefordert werden.
|
|
|
ITEM=such | Der erste Datensatz, bei dem die durch such spezifizierte Suchbedingung erfüllt ist, wird als Treffersatz behandelt. Das Übertragen von Sätzen in die Ausgabedatei wird bei diesem satz beendet.
|
|
|
WFILE=datei | Die Datensätze bis zum Treffer werden in die Ausgabedatei geschrieben.
|
|
Die CFS-Prozedur sucht in der aktuell angezeigten Display-Datei nach einem vorgegebenen String und schreibt ab dem Suchstring n Bytes als Recform=V Sätze in eine Datei.
|
|
DO WRITE-PART [, ITEM=string] [, WFILE=datei] [, LEN=n]
|
|
| Ohne Angabe von Parametern wird eine Maske ausgegeben, in der der Suchstring, der Name der Ausgabedatei und die Länge der zu erzeugenden Datensätze angefordert werden.
|
|
|
ITEM=string | Ab dem Suchstring string wird jeweils ein eigener Datensatz in der vorgegebenen Länge geschrieben.
|
|
|
WFILE=datei | Die gewünschten Teile der Datensätze werden in die Datei datei geschrieben.
|
|
|
LEN=n | Ab dem Suchbegriff werden n Bytes als Datensatz weggeschrieben.
|
|
Die CFS-Prozedur entfernt abhängig von einem vorgegebenen Suchbegriff bestimmte Teile aus den Datensätzen. Über Parameter kann der Suchbegriff, der Offset zum Suchbegriff, ab dem gelöscht werden soll und die Länge des zu löschenden Teils übergeben werden.
|
|
Die CFS-Prozedur setzt voraus, daß die zu bearbeitende Datei entweder eine ISAM-Datei ist oder mittels des Kommandos IS bereits im ISAM-Modus angezeigt wird.
|
|
Durch modifizieren der Verarbeitungsanweisung (S1,'...'='',C) kann die Prozedur auch zum Einfügen bzw. Ersetzen von Strings verwendet werden.
|
|
DO DEL-STRING [, ITEM=string] [, OFFSET=offs] [, LEN=n]
|
|
| Ohne Angabe von Parametern wird eine Maske ausgegeben, in der der Suchstring, der Offset zum Suchbegriff und die Länge des zu löschenden Teils angefordert werden.
|
|
|
ITEM=string | Suchstring string in dessen Umfeld vorgegebene Datenbytes entfernt werden sollen.
|
|
|
OFFSET=offs | Distanz offs zum Anfang des Suchstrings, ab dem in der gewünschten Länge gelöscht werden soll (Standard: 0).
|
|
|
LEN=n | Ab dem vorgegebenen Suchbegriff und Offset werden n Datenbytes aus den Datensätzen entfernt.
|
|
Diese Prozedur soll zeigen, daß neben dem Löschen, Einfügen oder Ersetzen von Strings auch die Möglichkeit besteht, in bestimmten Situationen auch Datensätze in eine bestehende Datei einzufügen. In einer Testdatei werden bestimmte Satzinhalte dahingehend geprüft, daß bei einem Wechsel der Prüffelder neue Datensätze eingefügt werden (z.B. Gruppenwechsel, Überschriften, ...).
|
|
Die CFS-Prozedur eröffnet je nach Parameterübergabe Connections zu bestimmten vordefinierten Anwendungen bzw. bei $DIALOG, in bestimmte Benutzerkennungen. Die Prozedur stellt eine flexible Alternative zum CFS-Menüsystem für Connections (automatisierter Aufbau über vordefinierte Verbindungen) dar. Die Prozedur kann beliebig erweitert werden und muß an die individuelle Umgebung angepaßt werden (User-Id, Account, Passwort, UCON-Berechtigung, KDCSIGN, ...).
|
|
DO OC [, id] | Es wird eine Connection in die gleiche Benutzerkennung (gleiche Abrechnungs-nummer, gleicher Host) eröffnet, unter der der CFS-Grundtask läuft. Ein vorhandenes Logon-Passwort wird über BS2000-Prompting angefordert.
|
|
|
id | Über den Stellungsparameter id kann eine bestimmte vordefinierte Verbindung aufgebaut werden. Der übergebene String id wird als Label interpretiert und es werden die in der Prozedur an dieser Stelle hinterlegten OC-Anweisungen zur Ausführung gebracht.
|
|
DO OC,TSOS | Anwendung $DIALOG, Kennung $TSOS, gleicher HOST
|
|
DO OC,TSOS11 | Anwendung $DIALOG, Kennung $TSOS, Rechner HOST11
|
|
DO OC,KURS | Anwendung $DIALOG, Kennung $KURS, gleicher HOST
|
|
DO OC,UTMTEST | Anwendung UTMTEST mit automatischer Anmeldung
|
|
DO OC,CONS | Anwendung $CONSOLE, gleicher HOST
|
|
DO OC,CONS11 | Anwendung $CONSOLE, Rechner HOST11
|
|
Die CFS-Prozedur stellt Ihnen eine Verbindung zur UTM-Anwendung TEST zur Verfügung. Falls schon eine Connection zu dieser Anwendung existiert, wird in diese Verbindung verzweigt. Ansonsten ermittelt die Prozedur die nächste freie Connection, baut die Verbindung auf und setzt die hinterlegten Eingaben (z.B. KDCSIGN, RES datei, ...) automatisch ab.
|
|
Die gleiche Funktionalität steht auch in der Prozedur OC zur Verfügung ( DO OC,UTMTEST ).
|
|
Die nachfolgenden Prozeduren stellen eine Verbindung zu $CONSOLE zur Verfügung. Falls schon eine Connection zu $CONSOLE besteht, wird in diese Connection verzweigt (Continue in Connection). Existiert die Konsolverbindung noch nicht, so wird diese aus der Prozedur, gemäß den hinterlegten Berechtigungen, aufgebaut und anschließend die Kontrolle an die Tastatur übergeben. Sobald der Benutzer die Konsolverbindung verläßt, wird diese automatisch abgebaut.
|
|
Die CFS-Prozedur stellt eine Konsolverbindung über eine generierte Nebenkonsole mit allen Eingabemöglichkeiten zur Verfügung.
|
|
Vor Aufruf der Prozedur muß die UCON-Userid und das Passwort angepaßt werden.
|
|
Die CFS-Prozedur stellt eine dynamische, nicht vorgenerierte Konsolverbindung zur Verfügung, für die eine hinterlegte Operator-Role zugewiesen wird. Diese Variante des Verbindungsaufbaus steht ab BS2000 OSD/V1.0 zur Verfügung.
|
|
Vor Aufruf der Prozedur muß die User-Id, das Passwort und die Operator-Role angepaßt werden.
|
|
Die CFS-Prozedur stellt eine Verbindung zu $CONSOLE zur Verfügung, wobei die Meldungen am Bildschirm ausgegeben werden, der Benutzer jedoch keine Eingabemöglichkeit erhält.
|
|
Die Prozedur kann durch zweimaliges Betätigen der K2-Taste beendet werden.
|
|
Vor Aufruf der Prozedur muß die UCON-Userid und das Passwort angepaßt werden.
|
|
Die CFS-Prozedur baut eine Verbindung zu $VMCONS (Virtuelle Maschine VM2000) auf, wobei ein VM-Dialog gemäß den hinterlegten Eingaben zur Verfügung gestellt wird.
|
|
Sobald der Benutzer die VM-Konsole verläßt, wird diese automatisch wieder abgebaut.
|
|
Vor Aufruf der Prozedur muß eventuell das für $VMCONS definierte Passwort angepaßt werden.
|
|
/ENTER CFS.USERLIB.BEISPIEL(AUTOMATIC-CONSOLE)
|
|
In dieser BS2000-Prozedur wird CFS aufgerufen und eine Verbindung zu $CONSOLE eröffnet. Auf bestimmte Meldungen, die in dieser Konsolverbindung ausgegeben werden, können beliebige Reaktionen festgelegt werden.
|
|
- | ausstehende Anfragen können automatisch beantwortet werden.
|
|
- | von Benutzern unter bestimmten Kennungen können über TYPE Kommandos übergeben werden, die an der Konsole ausgeführt werden.
|
|
Vor Start der Prozedur muß die UCON-Userid und das Passwort angepaßt werden. Außerdem sollten, um den Aufwand möglichst gering zu halten, nicht benötigte Meldungsschlüssel mit /ASR für die UCON-Berechtigung entfernt werden.
|
|
Im Bibliothekselement CFS.USERLIB.BEISPIEL(D/KONSOLMELDUNGEN) sind die Meldungen hinterlegt, auf die die Prozedur reagieren soll.
|
|
'NKVT012 PREMOUNT TAPE'+:1-20:'?' .MOUNT
|
|
'SYSTEMDUMP DESIRED'+:1-20:'?' .SYSDUMP
|
|
'TERMINATE CONSOLE' .EXIT
|
|
Jeder Datensatz dieses Bibliothekselements besteht aus einer CFS-Suchanweisung bezüglich des Inhalts der Konsolmeldung und einem SKIP-Label.
|
|
Ist eine Suchanweisung erfüllt, d.h. eine Treffermeldung wurde ausgegeben, so wird das hinterlegte SKIP-Label (.label) in eine CFS-interne Variable mit dem Namen &SLABEL eingetragen und in der Prozedur zur Verarbeitung an die entsprechende Stelle verzweigt.
|
|
Die CFS-Prozedur stellt einen Rahmen für die Bearbeitung aller in der aktuellen Dateienliste sichtbaren Einträge dar (mit Action Code - ausgeblendete Datenobjekte werden nicht bearbeitet). Als Verarbeitung stehen alle CFS-Funktionen (Kommandos, Action-Codes, Variable Actions) zur Verfügung.
|
|
Zur Demonstration wurde als Verarbeitung das Austauschen von Strings gleicher Länge in den Dateiinhalten gewählt (ohne mit FIND-REWR zu arbeiten).
|
|
Die CFS-Prozedur kann durch modifizieren der Verarbeitungsanweisungen für individuelle Anwendungsfälle angepaßt werden.
|
|
DO PROCESS-LIST [, OLD=str1 , NEW=str2]
|
|
| Ohne Angabe von Parametern werden der Such- und der Ersetzstring in einer Maske ange-fordert.
|
|
|
| Es wird in allen Sätzen der in der Liste sichtbaren Datenobjekte nach dem String str1 gesucht und dieser durch den String str2 ersetzt. Wichtig ist, daß Such- und Ersetzstring die gleiche Länge haben, da CFS standardmäßig nicht mit Ein-/Ausfügen arbeitet (nur möglich im ISAM-Modus!).
|
|
|
| Falls die Bearbeitung für ein Datenobjekt fehlerhaft ist, wird eine entsprechende Fehlermeldung mit dem DMS-Errorcode ausgegeben und die Verarbeitung mit dem nächsten Datenobjekt fortgesetzt.
|
|
Die CFS-Prozedur bietet die Möglichkeit, über das CFS-Terminverwaltungssystem auf eine vorgegebene Termindatei zuzugreifen. Als Aktionen stehen die Anzeige aller offenen Termine, aller bzw. ausgewählter Termine und die Neuaufnahme von Terminen zu einem beliebigen Datum zur Verfügung.
|
|
Die Prozedur verwendet standardmäßig die Termindatei CFS.ITEM.jobname.
|
|
Über Parameter können die Aktion (Anzeige, Neuaufnahme), der Zugriff auf offene/alle Termine, ein Suchstring für den Termintext sowie Datum und Uhrzeit für die Neuaufnahme beeinflußt werden.
|
|
DO TERMIN | Es werden alle offenen Termine aus der zugewiesenen Termindatei angezeigt.
|
|
DO TERMIN , datum [, ...]
|
|
|
datum | Es werden alle offenen Termine aus der zugewiesenen Termindatei für den Tag datum angezeigt. Für datum kann auch +n (alle Termine von heute bis heute+n Tage) angegeben werden.
|
|
|
TEXT=string | Es werden alle offenen Termine aus der zugewiesenen Termindatei angezeigt, die im Termintext den String string enthalten. string steht für eine einfache oder mehrfache Suchanweisung.
|
|
|
| Es werden alle (inklusive der bereits erledigten STATE=OK) Termine aus der zugewiesenen Termindatei angezeigt.
|
|
|
ADD | Es wird eine Maske zur Neuaufnahme eines Termins für den aktuellen Tag mit der aktuellen Uhrzeit ausgegeben. (z.B. Aufnahme von Kurzinfos).
|
|
|
datum [, uhrzeit] | Es wird eine Maske zur Neuaufnahme eines Termins für den durch datum festgelegten Tag und der durch uhrzeit festgelegten Zeit ausgegeben.
|
|
Die CFS-Prozedur bietet die Möglichkeit, sich die Datensätze von bestimmten Datenobjekten druckaufbereitet in eine Datei ausgeben zu lassen. Am Anfang der Ausgabedatei wird ein Inhaltsverzeichnis erzeugt.
|
|
In der Prozedur wird eine Variable Action (ONXLIST) definiert. Der Benutzer wird aufgefordert, die zu bearbeitenden Datenobjekte mit dem Action Code X zu markieren. Sobald der Benutzer das Ende der Dateienliste einmal quittiert hat bzw. die Ausführung der Variablen Action durch das Kommando A forciert hat, wird die Ausgabedatei erzeugt, die Terminierungsabfrage durch die Prozedur beantwortet und anschließend die Ausgabedatei mit dem Action Code PD auf einem vordefinierten Drucker ausgegeben.
|
|
DO LIST [, datei] | Es werden alle mit X markierten Datenobjekte in einer Ausgabedatei (Standard: #LIST.TOC) aufgelistet und anschließend ausgedruckt.
|
|
|
datei | Name der Ausgabedatei.
|
|
Die CFS-Prozedur ist eine Demonstration für die Funktionalität des RUN-Moduls DATE, das in CFS-Prozeduren allgemeine Prüfungen und Berechnungen in Verbindung mit einem bestimmten Datum zur Verfügung stellt.
|
|
Die *RUN (DATE) Anweisung greift zur Analyse und Berechnung von Datumsangaben automatisch auch auf eine eventuell vorhandene Datei CFS.IFREE zu, in der zusätzliche arbeitsfreie Tage, regionale Feiertage usw. hinterlegt werden können (siehe Terminverwaltung).
|
|
Die angebotenen Datumsfunktionen können zur Plausibilitätsprüfung von Datumseingaben und zur terminabhängigen Verarbeitung in Jobs verwendet werden. So ist es zum Beispiel sehr einfach möglich, am Anfang eines Jobs (z.B. eines täglichen Repeat-Jobs) festzustellen, ob heute der erste Arbeitstag im Monat, der erste Arbeitstag der Woche, oder ein Feiertag ist. Abhängig vom Returncode kann ein Benutzerschalter oder eine Jobvariable verändert werden, aufgrund dessen im Job entsprechend verzweigt wird (z.B. Verarbeitung oder sofortiges Abmelden mit LOGOFF).
|
|
Es stehen eine Vielzahl von Funktionsaufrufen zur Verfügung:
|
|
|
DDD | laufender Tag des Jahres
|
|
|
DW | Wochentag codiert in der Form: Mo=1, Die=2, ...
|
|
|
DW-G | Wochentag in deutsch
|
|
|
DW-E | Wochentag in englisch
|
|
|
WDP | vorheriger Arbeitstag
|
|
|
WDF | erster Arbeitstag für das angegebene Monat
|
|
|
WDL | letzter Arbeitstag für das angegebene Monat
|
|
|
WW1 | Datum des Montags für die angegebene Kalenderwoche
|
|
Die CFS-Prozedur erstellt für ein vorgegebenes Jahr über die *RUN (DATE) Funktionen eine Kalenderdatei mit den Informationen Datum, Wochentag, Feiertag, Arbeitstag, Kalenderwoche und laufender Tag des Jahres.
|
|
Der Name der Kalenderdatei, sowie das gewünschte Jahr wird bei Prozeduraufruf über eine Parametermaske angefordert.
|
|
Die CFS-Prozedur bietet die Möglichkeit, in einer vorgegebenen Datei (z.B. Telefonliste, Namensliste, Firmenliste, usw.) nach beliebigen Strings zu suchen und sich alle Treffersätze am Bildschirm ausgeben zu lassen. Falls nur ein Treffersatz vorhanden ist, wird dieser in der Systemzeile ausgegeben. Wurden mehrere Treffersätze gefunden, so werden diese mit WROUT am Bildschirm angezeigt und die Prozedur mit PLEASE ACKNOWLEDGE bis zur Quittierung angehalten. Am Ende der Prozedur wird in die ursprüngliche Dateienliste zurückgekehrt.
|
|
In der Prozedur wird die vorgegebene Datei selektiert, mit dem Action Code D in den CFS-Editor verzweigt, Inhalte der Treffersätze in Prozedurvariablen geschrieben, die Inhalte der Prozedurvariablen am Bildschirm ausgegeben und am Ende mit RL wieder in die ursprüngliche Dateienliste zurückgekehrt.
|
|
Die Prozedur verwendet standardmäßig eine Testdatei aus der CFS.USERLIB.BEISPIEL als Datenbasis und kann durch Änderung des Dateinamens auf die eigene Arbeitsumgebung angepaßt werden.
|
|
DO INFO [, string] | Ohne Angabe des Parameters string werden von allen Datensätzen der Datenbasis jeweils die ersten 80 Bytes angezeigt.
|
|
|
string | Es werden nur Datensätze der aktuellen Datenbasis angezeigt, die den String string enthalten.
|
|
Die CFS-Prozedur bietet dieselben Möglichkeiten, wie in der vorher beschriebenen Prozedur INFO, jedoch werden die Treffersätze aufbereitet in einer FHS-Maske (mit *RDMASK) am Bildschirm angezeigt.
|
|
Vor Aufruf der Prozedur muß der Name der FHS-Bibliothek MFHSROUT eventuell im Prozedurkopf angepaßt werden (Standard: $FHS.MFHSROUT).
|
|
DO INFO-MASK [, string] | Ohne Angabe des Parameters string werden alle Datensätze aufbereitet angezeigt. Die Prozedur kann durch Betätigung der K1-Taste abgebrochen werden.
|
|
|
string | Es werden nur Datensätze aufbereitet angezeigt, die den String string enthalten.
|
|
E CFS.USERLIB.BEISPIEL(MOVE-FILES)
|
|
Diese BS2000-ENTER-Prozedur bietet die Möglichkeit, eine vorgegebene Gruppe von Datenobjekten auf eine bestimmte Privatplatte oder ein bestimmtes Pubset zu legen (ON&MOVE).
|
|
In der Prozedur wird CFS im Basismodus aufgerufen (SETSW ON=11, *001). Im Basismodus steht nur ein Teil des Funktionsumfangs von CFS zur Verfügung (Selektion, Variable Actions, Documentation).
|
|
E CFS.USERLIB.BEISPIEL(FIND-REWR)
|
|
Diese BS2000-DO-Prozedur bietet die Möglichkeit, in einer vorgegebenen Gruppe von Datenobjekten (mehrere Bibliotheken, SAM-, ISAM- und PAM-Dateien) nach Treffersätzen mit ganz bestimmten Strings (CFS-Suchanweisung) zu suchen, diese in eine Trefferdatei zu schreiben, die Trefferdatei zu editieren (EDT oder CFS-Display) und die geänderten Datensätze wieder in die Ursprungsdatenobjekte zurückzuschreiben.
|
|
In der Prozedur wird CFS im erweiterten Prozedurmodus aufgerufen (SETSW ON=1, *002). In diesem steht der volle Funktionsumfang von CFS ohne Einschränkungen zur Verfügung.
|
|
Die Prozedur verwendet standardmäßig eine Testdatei aus der CFS.USERLIB.BEISPIEL als Datenbasis und kann durch Änderung des Dateinamens auf die eigene Arbeitsumgebung angepaßt werden.
|
|
Die CFS-Prozedur bietet die Möglichkeit, für verschiedene Rechner individuelle Filetransferberechtigungen zu hinterlegen, die automatisch in der Filetransfermaske von CFS eingetragen werden. Die so eingetragenen Werte gelten fortan als Standard für alle FT-Aktionen, bis sie manuell oder prozedural geändert werden.
|
|
Die CFS-Prozedur kann durch Anpassung der Labels und der FT-Kommandos auf die eigene Arbeitsumgebung angepaßt werden.
|
|
DO FT-PAR [, host] [, direction]
|
|
| Ohne Angabe des Parameters host wird der in der Prozedur als Standard definierte Rechner und die dazugehörige Transferadmission (User-id, Account, Password bzw. FTAC-Transferadmission) in der FT-Maske eingetragen.
|
|
|
host | Es wird die für den Partnerrechner host hinterlegte Transferadmission (User-id, Account, Password bzw. FTAC-Transferadmission) in der FT-Maske einge-tragen. Wurde ein ungültiger Host angegeben, so wird eine Fehlermeldung ausgegeben.
|
|
|
direction | Über den zweiten Stellungsparameter direction kann die Übertragungsrichtung (TO/FROM) beeinflußt werden (Standard: TO).
|
|
|
Neben der prozeduralen Versorgung der FT-Maske stehen noch weitere Möglichkeiten des vordefinierten Filetransfers zur Verfügung:
|
|
- | Abspeichern der Eintragungen in der FT-Maske mit dem Kommando SPFT %name als Parameterset. Damit stehen die Eintragungen für die spätere Verwendung im FT-Kommando bzw. der Variablen Action zur Verfügung: z.B. ONXFT %HOST10
|
|
- | Verwendung eines benutzereigenen Action Codes, hinter dem sich ein FT-Kommando mit Parametern für die markierte Datei verbirgt z.B. %FT aus CFS.USERACT.BEISPIEL
|
|
E CFS.USERLIB.BEISPIEL(FT-INHALT)
|
|
Die BS2000-DO-Prozedur bietet die Möglichkeit, über eine Inhaltsdatei (FSTAT-Liste, CFS-DOC-Datei, ...) mehrere Dateien von einem Partnerrechner mit FT-BS2000 abzuholen. Es wird zuerst die Inhaltsverzeichnisdatei abgeholt und anschließend über OLDLIST mit der Variablen Action ON&FT bearbeitet. Dadurch werden alle in der Inhaltsdatei aufgeführten Dateien (asynchron) zum eigenen Host übertragen.
|
|
In der Parametermaske des Job-Report muß der Name der Inhaltsdatei, der Name des Partner-rechners und die Transferadmission versorgt werden.
|
|
Die CFS-Prozedur soll die verschiedenen Varianten der Parameteranforderung für CFS-Kommandoprozeduren, für BS2000-DO- bzw. S-Prozeduren über die Job-Report Parametermaske von CFS aufzeigen.
|
|
Über Texte in Doppelhochkommas können anstelle der Parameternamen beliebige Kommentare eingeblendet werden (z.B. gültige Eingabewerte für den Parameter).
|
|
Zusätzlich besteht die Möglichkeit, die Parameter dunkelgesteuert anzufordern (":D..." Secret Prompt) bzw. für lange Parametereingaben zusätzliche Eingabezeilen zur Verfügung zu stellen (":#1..." eine Zeile zusätzlich).
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und gibt den Status aller Anwendungen bzw. einer bestimmten Anwendung am Bildschirm aus. Die angezeigten Informationen umfassen die Applikationsnamen, Anzahl logischer Verbindungen, Anzahl Ein- und Ausgabenachrichten, Bytes-IN und Bytes-OUT.
|
|
DO APPL [, appl [, CON] ] | Ohne Angabe von Parametern wird eine Liste aller Anwendungen angezeigt.
|
|
|
appl | Es wird nur die Anwendung appl angezeigt. Alle anderen Anwendungen werden mit dem Action Code '-' ausgeblendet.
|
|
|
CON | Es werden die aktuell bestehenden logischen Verbindungen zur Anwendung appl angezeigt.
|
|
|
ACTION-Codes in der APPLICATION-Liste:
|
|
|
CON | Liste aller Partner einer Applikation anzeigen.
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und gibt eine Liste aller UTM-Anwendungen bzw. einer bestimmten UTM-Anwendung am Bildschirm aus. Die angezeigten Informationen umfassen den Anwendungsnamen (Namemanager-Eintrag), Scope und die TSN der jeweiligen UTM-Tasks.
|
|
DO UTM [, anw [, CON|D] ] Ohne Angabe von Parametern wird eine Liste aller UTM-Anwendungen angezeigt.
|
|
|
anw | Es wird nur die UTM-Anwendung anw angezeigt und alle anderen mit dem Action Code '-' ausgeblendet.
|
|
|
CON | Es werden die aktuell bestehenden logischen Verbindungen zur UTM-Anwendung anw angezeigt.
|
|
|
D | Es wird eine spezielle Informationsmaske für die UTM-Anwendung anw mit wichtigen UTM-Statusinformationen angezeigt. In dieser Maske können über die Kommandos KTA, KAA, ROOT, MPUTAREA, RSTAREA, FORMIO und FORMBR die verschiedenen UTM-Bereiche im Display-Format ausgegeben werden.
|
|
|
ACTION-Codes in der NAMEMANAGER-Liste UTM (Auszug):
|
|
|
CON | Liste aller Partner der UTM-Anwendung anzeigen.
|
|
|
D | UTM-Informationsmaske anzeigen.
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und gibt den Status aller im Subsystem-Katalog generierten Subsysteme bzw. eines bestimmten Subsystems am Bildschirm aus. Die Informationen umfassen u.a. den Subsystem-Namen, Version, aktueller Zustand, Ladeadresse, Holder-Task, Speicherklasse und Anzahl Verbindungen zu dem Subsystem.
|
|
DO DSSM [, ACT|subsys [, CON] ]
|
|
| Ohne Angabe von Parametern wird eine Liste aller generierten Subsysteme angezeigt.
|
|
|
ACT | Es werden nur die Subsysteme angezeigt, die sich im Zustand CREATED befinden.
|
|
|
subsys [, CON] | Es wird nur das Subsystem subsys angezeigt.
|
|
|
CON | Es wird eine Liste der Tasks angezeigt, die momentan mit dem Subsystem subsys verbunden sind.
|
|
|
ACTION-Codes in der DSSM-Liste (Auszug):
|
|
|
NP | Auswahl aller Tasks, die mit diesem Subsystem verbunden sind
|
|
|
L | Liste aller Module des Subsystems
|
|
|
HOLD | Kommando HOLD-SUBSYSTEM
|
|
|
RES | Kommando RESUME-SUBSYSTEM
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und gibt den Status aller im Netzbeschreibungsbuch von FT (File-Transfer) definierten Partnersysteme bzw. eines bestimmten Partnersystems. Die Informationen umfassen u.a. den REMSYS-Namen, SYSADR, RELADR, den aktuellen Zustand, Security-Level und Anzahl der vorhandenen Aufträge (LOC/REM).
|
|
DO FT [, ACT|partner] | Ohne Angabe von Parametern wird eine Liste aller vorhandenen FT-BS2000 Partnersysteme angezeigt.
|
|
|
ACT | Es werden nur die FT-BS2000 Partnersysteme angezeigt, für die momentan Aufträge vorhanden sind.
|
|
|
partner | Es wird der Zustand des angegebenen FT-BS2000 Partnersystem partner angezeigt.
|
|
|
ACTION-Codes in der FJAM-Liste:
|
|
|
NP | Auswahl aller Filetransferaufträge mit diesem FT-BS2000 Partnersystem in CFS (NSTAT-Selektion).
|
|
Die CFS-Prozedur greift im CFS-Editor direkt auf die Datei $SYSFJAM.SYSFSA zu und gibt die gewonnenen FTAC-Profil-Informationen in einer IFG-Maske am Bildschirm aus. Die Prozedur ist unter der Kennung TSOS aufzurufen.
|
|
Durch Klicken mit der Maus erhalten Sie eine Beschreibung zum gewünschten Feld.
|
|
Die angezeigten Informationen umfassen folgende Profileigenschaften:
|
|
|
OWNER-ID | Benutzerkennung des Eigentümers des Profils
|
|
|
NAME | Name des FTAC-Profils
|
|
|
INI | Initiator (LOCal/REMote)
|
|
|
DIR | Transfer-Direction (TO/FROM)
|
|
|
FILENAME | vorgegebener Datei-/Bibliotheksname (FILE/LIBRARY/*EXP/*EXP(LIB))
|
|
|
SUCC | lokales Success-Processing (NONE/YES/*EXP)
|
|
|
FAIL | lokales Failure-Processing (NONE/YES/*EXP)
|
|
|
WRI | Write-Mode (EXTend/REPlace/NEW)
|
|
|
IGN-LEV | Ignorieren von Security-Levels (Y/N)
|
|
|
EXP | Expiration-Date für Profil vorhanden (Y/N) (ab FTAC 2.0)
|
|
|
LCK | Profil gesperrt (Y/N) (ab FTAC 2.0)
|
|
DO FTAC [, TRANS [,suchanw] | PARTNER ] [, UID=userid] [, FILE=datei]
|
|
| Ohne Angabe von Parametern wird eine Liste aller FTAC-Profile aller User-Ids mit den Standard-Informationen angezeigt.
|
|
|
TRANS | Es wird die TRANSFER-ADMISSION in der Liste angezeigt. Als zweiter Stellungsparameter suchanw kann eine Suchbedingung bezüglich der Transferadmission angegeben werden.
|
|
|
PARTNER | Anstelle von FAIL und WRI wird der PARTNER-Name angezeigt.
|
|
|
UID=userid | Es werden nur die Profile der Benutzerkennung userid angezeigt.
|
|
|
FILE=datei | Es wird eine Ausgabedatei datei mit den gewünschten Profil-Informationen erzeugt.
|
|
|
COMMAND-Eingaben in der FTAC-Maske (Auszug):
|
|
|
+ | - | blättern in der Liste
|
|
|
/cmd | BS2000-Kommandos absetzen
|
|
|
DOC datei | Datei mit Profilinformationen erstellen
|
|
|
ACTION-Eingaben in der FTAC-Maske (Auszug):
|
|
|
D | Profil anzeigen (SHOW-FT-PROFILE)
|
|
|
M | Profil modifizieren (MOD-FT-PROFILE)
|
|
|
U | Profil die Privilegierung entziehen
|
|
|
L | Profil sperren (LOCK ab FTAC V2.0)
|
|
|
UL | Profil entsperren (UNLOCK ab FTAC V2.0)
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und gibt den Status aller generierten Geräte bzw. den Status eines bestimmten Gerätes am Bildschirm aus. Die angezeigten Informationen umfassen Volume, Device-Mnemonic, Geräte-Typ, Geräte-Zustand (ATTACHED, DETACHED), Geräteadressen und Anzahl IO's seit Startup.
|
|
DO PDT [, ATT|mn] | Ohne Angabe von Parametern wird eine Liste aller generierten Geräte angezeigt.
|
|
|
ATT | Es werden nur die Geräte angezeigt, die sich im Zustand ATTACHED befinden.
|
|
|
mn | Es wird nur das Gerät mit dem Mnemonic mn angezeigt.
|
|
|
ACTION-Codes in der PDT-Liste (Auszug):
|
|
|
NP | Auswahl aller Tasks, die momentan Dateien auf diesem Volume im Zugriff haben.
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und gibt den Status aller definierten Prozessoren bzw. eines bestimmten Prozessors am Bildschirm aus. Die angezeigten Informationen umfassen Name des Prozessors, Typ, Network-Address, IP-Address, aktueller Status (BCIN, BCACT, ...) und Typ des Protokolls.
|
|
DO FEP [, ACT|proc] | Ohne Angabe von Parametern wird eine Liste aller in BCAM definierten Prozessoren angezeigt.
|
|
|
ACT | Es werden nur Prozessoren angezeigt, die sich im Zustand BCACT befinden.
|
|
|
proc | Es wird nur der Prozessor mit dem Namen proc angezeigt.
|
|
|
ACTION-Codes in der FEP-Liste:
|
|
|
NP | Auswahl aller $DIALOG Tasks, die über den ausgewählten Prozessor ange-schlossen sind.
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und gibt den Status aller existierenden bzw. eines bestimmten Memory Pools am Bildschirm aus. Die angezeigten Informationen umfassen u.a. den POOL-Namen, Scope, Ladeadresse, Fixed-Attribut, Anzahl angeforderter Speicherseiten und Write-Status.
|
|
DO POOL [, EDT|pool [, PROG] ]
|
|
| Ohne Angabe von Parametern wird eine Liste aller existierenden Memory Pools angezeigt.
|
|
|
EDT | Es wird im EDT eine Liste aller existierenden Memory Pools und der jeweils verbundenen Tasks angezeigt. Dieselbe Funktionalität wird auch durch die Prozedur MEMORY-POOL-ALL realisiert.
|
|
|
pool [, PROG] | Es wird nur der angeforderte Memory Pool pool angezeigt.
|
|
|
PROG | Es werden alle mit dem Memory Pool pool verbundenen Tasks angezeigt. Als Taskinformation wird der Name des geladenen Programms ausgegeben.
|
|
|
ACTION-Codes in der POOL-Liste (Auszug):
|
|
|
D | Inhalt des entsprechenden Pools anzeigen
|
|
|
NP | Auswahl aller Tasks, die an diesem Pool angeschlossen sind
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und ermittelt, mit welcher Anwendung ein bestimmtes Terminal verbunden ist.
|
|
DO STAT-APPL-CON [, stat]
|
|
| Ohne Angabe von Parametern wird der Stationsname zu Beginn der Prozedur über Prompting angefordert.
|
|
|
stat | Es wird nach logischen Verbindungen der Station stat gesucht und der Anwendungsname, mit dem diese Station verbunden ist, ausgegeben.
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und zeigt eine Liste aller bzw. ausgewählter offener Konsolmeldungen an. Dazu ist innerhalb von CFS eine Connection (UCON-Verbindung) zu $CONSOLE notwendig. Die UCON-Userid und das dazugehörige Passwort müssen in der Prozedur angepaßt werden.
|
|
DO OMSG [, string] | Ohne Angabe von Parametern werden alle offenen Konsolmeldungen angezeigt.
|
|
|
string | Es werden nur die Konsolmeldungen angezeigt, die den Suchbegriff string enthalten.
|
|
|
ACTION-Codes in der OPEN-MESSAGE-Liste (Auszug):
|
|
|
FM | Anzeige der kompletten Konsolmeldung am Bildschirm (Full Message)
|
|
|
. | Beantwortung der Konsolmeldung mit TSN.
|
|
|
.input | Beantwortung der Konsolmeldung mit TSN.input
|
|
|
Falls eine Konsolmeldung mit einer Eingabe beantwortet werden muß, die länger als 4 Byte ist, so steht auch die Variable Action ONXCONS zur Verfügung. Damit ist es möglich, Konsolmeldungen verschiedener TSN's einheitlich mit einem beliebigen String zu beantworten. Für die TSN der jeweiligen Meldung steht bei der Definition ein Platzhalter !TSN zur Verfügung (z.B. ONXCONS !TSN.eingabe).
|
|
|
COMMAND-Eingaben in der OPEN-MESSAGE-Liste:
|
|
|
ATL INT=sec | Automatische freilaufende Ausgabe aller bzw. ganz bestimmter offener Meldungen in einem Intervall von sec Sekunden (Standard INT=30). Falls eine Meldung beantwortet werden soll, so ist der ATL-Modus (Automatic Task List) mit K2 unterbrechbar und kann anschließend mit ATL wieder aktiviert werden.
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und führt die beim Prozeduraufruf über einen Kurzcode angesprochene vordefinierte Taskselektion durch. Wurde beim Prozeduraufruf kein Parameter übergeben, so wird eine Übersicht aller vordefinierten Selektionen angezeigt und die gewünschte Selektion über Prompting angefordert. Nach erfolgreicher Selektion der Tasks wird automatisch in den ATL-Modus (Automatic Task List) gewechselt und die Selektion in einem Intervall von 30 Sekunden aktualisiert. Der ATL-Modus wird durch Betätigung der K2-Taste beendet.
|
|
Die Prozedur kann durch Anpassung der Kurzcodes und der TAS-Auswahlbedingungen an die eigene Arbeitsumgebung angepaßt werden.
|
|
DO TAS [, code] | Ohne Angabe von Parametern wird eine Übersicht der vordefinierten Auswahlmöglichkeiten angezeigt und eine entsprechende Auswahl durch den Benutzer erwartet:
|
|
|
| -----------------------------------------------------
|
|
|
| T A S K - S E R V I C E S | Auswahl
|
|
|
| CPU | Resourcen-Verbrauch CPU 1
|
|
|
| IO | Resourcen-Verbrauch IO 2
|
|
|
| SIZE | Resourcen-Verbrauch HSP 3
|
|
|
| IDLE | TSN's, die nicht mehr aktiv sind 4
|
|
|
| TASKS1 | Tasks unter $TT08,$KURS,$TSOS 5
|
|
|
| RSO | RSO Prints mit Fehler 7
|
|
|
| -----------------------------------------------------
|
|
|
code | Es wird die durch den code vordefinierte Taskselektion ausgeführt.
|
|
|
| z.B. DO TAS,1 (Ausgabe einer Task-Hitliste bezüglich CPU-Verbrauch)
|
|
Die CFS-Prozedur verzweigt in die Komponente JES (Join Entry Services) und führt die beim Prozeduraufruf über einen Kurzcode angesprochene vordefinierte Join-Selektion durch. Wurde beim Prozeduraufruf kein Parameter übergeben, so wird eine Übersicht der vordefinierten Selektionen angezeigt und die gewünschte Selektion über Prompting angefordert.
|
|
Die CFS-Prozedur kann durch Anpassung der Kurzcodes und der Auswahlbedingungen an die eigene Arbeitsumgebung angepaßt werden.
|
|
DO JES [, pvs] [, code] | Ohne Angabe des Parameters code wird eine Übersicht der vordefinierten Auswahlmöglichkeiten angezeigt und eine Auswahl durch den Benutzer erwartet:
|
|
|
| -----------------------------------------------------
|
|
|
| J O I N - E N T R Y - S E R V I C E S | Auswahl
|
|
|
| aktuelle Platzbelegung auf Public | 1
|
|
|
| aktuelle Platzbelegung auf Public/Private | 2
|
|
|
| Anzahl existierender Dateien/Jobvariablen | 3
|
|
|
| Reserven bezüglich des Pubspace-Limits | 4
|
|
|
| Reserven bezüglich des Tempspace-Limits | 5
|
|
|
| Reserven bezüglich des File-Limits | 6
|
|
|
| Reserven bezüglich des Jobvariablen-Limits | 7
|
|
|
| Abrechnungsnummern mit TIME<100 | 8
|
|
|
| Kennungen ohne Passwort, die nicht gesperrt sind | 9
|
|
|
| Kennungen, die nicht im HOME-PVS existieren | 10
|
|
|
| SECOS: Expiration-Date für Kennung | 11
|
|
|
| SECOS: Expiration-Date für Passwort | 12
|
|
|
| -----------------------------------------------------
|
|
|
pvs , code | Es wird die, durch den Kurzcode code vordefinierte Join-Selektion für das Public-Volume-Set pvs bzw. alle Pubsets durchgeführt.
|
|
|
| Ausgabe einer Liste aller Kennungen des Pubsets G, absteigend sortiert nach Pubspace-Used.
|
|
|
| Ausgabe einer Liste aller Kennungen des Pubsets OPG, die Publicspeicherplatz belegen und das Pubspace-Limit nicht überschreiten dürfen (ENF=N). Als Information wird die Differenz zwischen Pubspace-Limit und Pubspace-Used zusätzlich angezeigt. Die Liste ist nach Pubspace-Differenz aufsteigend sortiert.
|
|
Die CFS-Prozedur verzweigt in die Komponente TAS (Task Services) und ermittelt die aktuelle Systemauslastung und weitere wichtige Systeminformationen (u.a. CPU-Auslastung, Disk-IO's pro Sekunde, Paging-IO's pro Sekunde, prozentuale Auslastung der Paging-Area). Aufgrund vorgegebener Grenzwerte kann veranlaßt werden, daß Meßwerte, die den Maximalwert überschreiten, bei der Ausgabe hervorgehoben (hell) dargestellt werden.
|
|
Die Prozedur kann mit der K2-Taste abgebrochen werden.
|
|
DO MESSUNG,? | Es wird eine Parametermaske ausgegeben, in der die individuellen Grenzwerte angepaßt werden können.
|
|
Die Parameterversorgung kann auch direkt beim Aufruf über Schlüsselworte erfolgen:
|
|
|
CPU=proz1 | proz1 legt den Grenzwert für die prozentuale Gesamt-CPU-Auslastung fest.
|
|
|
TPR=proz2 | proz2 legt den Grenzwert für den prozentualen TPR-Anteil an der Gesamt-CPU-Auslastung fest.
|
|
|
SIH=proz3 | proz3 legt den Grenzwert für den prozentualen SIH-Anteil an der Gesamt-CPU-Auslastung fest.
|
|
|
DISKIO=diskio | diskio legt den Grenzwert für die Anzahl Disk-IO's pro Sekunde fest.
|
|
|
PAGIO=pagio | pagio legt den Grenzwert für die Anzahl Paging-IO's pro Sekunde fest.
|
|
|
PGAREA=proz4 | proz4 legt den Grenzwert für die prozentuale Auslastung der Paging-Area fest.
|
|
|
TSNCPU=cpu | cpu legt den taskspezifischen Grenzwert für den CPU-Verbrauch im Meßintervall fest. Wird dieser Wert überschritten, so enthält die Ausgabeinformation zusätzlich die TSN's der betroffenen Tasks (max. 3).
|
|
|
ACTINT=sec1 | Das Meßintervall für die TAS-Funktion SYSACT wird auf sec1 Sekunden gesetzt.
|
|
|
WAIT=sec2 | Die Wartezeit zwischen zwei Meßungen wird auf sec2 Sekunden gesetzt.
|
|
|
INFO=Y | Die Ausgabe der Meßwerte erfolgt nur, falls mindestens ein festgelegter Grenzwert überschritten wurde.
|
|
|
FILE=datei | Zusätzlich zur Bildschirmausgabe werden die ermittelten Meßwerte auch in der Ausgabedatei datei abgelegt (SAM,Recform=V). Falls die Datei schon existiert, wird diese mit OPEN=EXTEND fortgeschrieben.
|
|
|
Beispiel für eine von der Prozedur MESSUNG erzeugte Protokolldatei:
|
|
--------------------------------------------------------------------------------
HOST DATE TIME CPU TU TPR SIH IO-DISK/S IO-PG/S PG-AREA TSN
--------------------------------------------------------------------------------
HOST11 20.07.95 15:10:06 68.5 58.4 0.0 10.0 9 0 56%
HOST11 20.07.95 15:10:44 90.1 83.2 0.0 6.8 5 0 58% 0PV0
HOST11 20.07.95 15:11:22 91.7 85.6 0.0 6.1 7 0 59% 0PV0
HOST11 20.07.95 15:12:00 93.4 87.4 0.0 6.0 9 0 60% 0PV0
HOST11 20.07.95 15:12:35 90.5 85.6 0.0 4.9 5 0 58% 0PV0
HOST11 20.07.95 15:13:13 97.9 96.0 0.0 1.9 1 0 58% 0PV0
HOST11 20.07.95 15:13:50 86.7 83.9 0.0 2.8 5 0 56% 0PV0
HOST11 20.07.95 15:14:28 85.3 79.8 0.0 5.5 8 0 60% 0PV0
HOST11 20.07.95 15:15:06 99.0 93.8 0.0 5.2 14 0 60% 0PV0
HOST11 20.07.95 15:15:44 98.7 93.0 0.0 5.7 16 0 60% 0PV0
HOST11 20.07.95 15:16:21 97.6 94.2 0.0 3.5 14 0 60% 0PV0
HOST11 20.07.95 15:16:57 99.3 91.8 0.0 7.5 14 0 60% 0PV0
HOST11 20.07.95 15:17:34 98.9 89.5 0.0 9.4 28 0 61% 0PV0
HOST11 20.07.95 15:18:12 51.8 42.0 0.0 9.8 33 0 55%
HOST11 20.07.95 15:18:49 63.4 53.1 0.0 10.3 47 0 55%
HOST11 20.07.95 15:19:27 47.1 37.8 0.0 9.3 21 0 54%
HOST11 20.07.95 15:20:04 13.7 10.4 0.0 3.4 3 0 54%
HOST11 20.07.95 15:20:42 6.8 4.9 0.0 2.0 1 0 54%
HOST11 20.07.95 15:21:10 8.1 4.8 0.0 3.4 0 0 54%
Die CFS-Prozedur ermittelt zyklisch die Anzahl der IO's, die im vorgegebenen Meßintervall für jede bzw. eine bestimmte geöffnete Datei angefallen sind. Über Prozedurparameter können alle geöffneten Dateien aller bzw. eines bestimmten Tasks, eine bestimmte Datei und alle Dateien, die auf einer vorgegebenen Platte liegen ausgewählt werden.
|
|
Die angezeigten Informationen umfassen die Uhrzeit, den Dateinamen, Anzahl PAM-IO's im Meßintervall, Anzahl Read-IO's, Anzahl Write-IO's, TSN des zugreifenden Tasks und den Open-Modus der Datei.
|
|
Die ermittelten Informationen können zusätzlich in eine Datei geschrieben werden.
|
|
Die Prozedur kann mit der K2-Taste abgebrochen werden. Alternativ dazu kann eine vorgegebene Jobvariable vom Benutzer auf 'END' gesetzt werden. Die zuletzt genannte Methode garantiert stets eine definierte und ordnungsgemäße Beendigung der Prozedur.
|
|
DO FILEIO | Es werden alle Dateien angezeigt, für die in einem Meßintervall von 30 Sekunden mindestens eine Ein-/Ausgabe angefallen ist. Die Ausgabe ist absteigend nach IO's sortiert.
|
|
DO FILEIO ,? | Es wird die Parametermaske zum ändern der vorbelegten Prozedur-parameter ausgegeben.
|
|
Die Parameterversorgung kann auch direkt beim Aufruf über Schlüsselworte erfolgen:
|
|
|
TSN=tsn | Es werden nur die vom Task mit TSN tsn eröffneten Dateien berücksichtigt. Die Prozedur beendet sich automatisch, falls die angegebene TSN im System nicht mehr existiert.
|
|
|
FILE=datei | Nur die IO's für die Datei datei berücksichtigt.
|
|
|
VOLUME=vsn | Es werden nur Dateien berücksichtigt, die auf der Platte vsn mindestens einen Extent besitzen und eröffnet sind.
|
|
|
IO=n | Die Ausgabe beschränkt sich auf alle Dateien, auf die im Meßintervall mehr als n IO's durchgeführt wurden.
|
|
|
SUMIO=TSN|SUM | Die Ausgabe der IO's für die Dateien erfolgt einzeln für jede TSN (Standard) oder als Summe der IO's über alle TSN's, die auf diese Datei zugegriffen haben (SUM).
|
|
|
INT=sec | Dauer des Meßintervalls in Sekunden (Standard: 30 sec).
|
|
|
JOBVAR=jv-name | Name einer Jobvariablen, die zum Beenden der Messung verwendet werden kann. Die Jobvariable muß in Spalte 1 bis 3 auf den Wert 'END' gesetzt werden.
|
|
|
WFILE=wfile | Die Informationen werden zusätzlich in die Datei wfile geschrieben.
|
|
|
Beispiel für eine FILEIO-Auswertung:
|
|
*******************************************************************************
* F I L E - I O 'S DATUM: 20.07.95 HOST: HOST11
*******************************************************************************
* P A R A M E T E R : TSN = *ALL
* FILENAME = *ALL
* VOLUME = *ALL
* DELTA-IO = >0
* INTERVALL = 30
* SUMIO = TSN
*------------------------------------------------------------------------------
* TIME FILENAME D-IO REA WRI TSN OPN
*------------------------------------------------------------------------------
09:06:51 :CFS:$TT08.CFS.PLAM1 18 18 0 0PVS I
09:06:51 :O:$TSOS.SYSLNK.ASSEMBH.011.LG 13 13 0 0PVV EX
09:06:51 :O:$TSOS.SYSSDF.ASSEMBH.011.USER 3 3 0 0PVV EX
09:06:51 :O:$TSOS.ASSEMBH 3 3 0 0PVV EX
09:06:51 :CFS:$TT08.CFS.E.0PVS.090642 3 2 1 0PVS
09:06:51 :CFS:$TT08.S.IN.CFS.PLAM1.ASS.0PVV.134253 2 2 0 0PVV EX
09:06:51 :CFS:$TT08.CFS.E.0PVS.090642 1 1 0 0PVV EX
09:07:28 :CFS:$TT08.CFS.PLAM1 128 128 0 0PVQ I
09:07:28 :CFS:$TT08.CFS.PLAM1 64 64 0 0PVV
09:07:28 :MAC:$TSOS.MACROLIB.V10 30 30 0 0PVV
09:07:28 :CFS:$TT08.S.214.0PVV.CIFLIB 15 2 13 0PVV OI
09:07:28 :CFS:$TT08.S.214.0PVQ.ZS.WRTRD.0112 9 5 4 0PVQ
09:07:28 :O:$TSOS.SYSSDF.ASSEMBH.011.USER 3 3 0 0PVV EX
09:08:03 :MAC:$TSOS.MACROLIB.V10 78 78 0 0PVV
09:08:03 :CFS:$TT08.S.214.0PVV.CIFLIB 25 0 25 0PVV OI
09:08:03 :CFS:$TT08.CFS.PLAM1 24 24 0 0PVV
09:08:37 :CFS:$TT08.CFS.PLAM1 50 50 0 0PVV
09:08:37 :CFS:$TT08.S.214.0PVV.CIFLIB 38 0 38 0PVV OI
09:08:37 :MAC:$TSOS.MACROLIB.V10 17 17 0 0PVV
09:09:09 :CFS:$TT08.CFS.PLAM1 46 46 0 0PVV
09:09:09 :CFS:$TT08.S.214.0PVV.CIFLIB 34 0 34 0PVV OI
09:09:09 :MAC:$TSOS.MACROLIB.V10 22 22 0 0PVV
09:09:43 :CFS:$TT08.S.214.0PVV.CIFLIB 61 0 61 0PVV OI
09:09:43 :MAC:$TSOS.MACROLIB.V10 12 12 0 0PVV
09:09:43 :CFS:$TT08.CFS.PLAM1 7 7 0 0PVV
09:10:17 :CFS:$TT08.S.214.0PVV.CIFLIB 58 0 58 0PVV OI
09:10:17 :CFS:$TT08.CFS.PLAM1 8 0 8 0PVV
09:10:51 NO ENTRIES FOUND
09:11:22 :CFS:$TT08.S.214.0PVV.CIFLIB 288 272 16 0PVV OI
09:11:22 :CFS:$TT08.CFS.PLAM1 97 11 86 0PVV
09:11:56 :CFS:$TT08.CFS.MDCCRDX.SRC 175 0 175 0PVV O
09:12:30 :CFS:$TT08.CFS.MDCCRDX.SRC 377 0 377 0PVV O
09:13:04 :CFS:$TT08.CFS.MDCCRDX.SRC 429 0 429 0PVV O
09:13:35 :CFS:$TT08.CFS.MDCCRDX.SRC 428 0 428 0PVV O
09:14:09 :CFS:$TT08.CFS.MDCCRDX.SRC 353 0 353 0PVV O
09:14:43 :CFS:$TT08.CFS.MDCCRDX.SRC 255 0 255 0PVV O
09:15:17 :CFS:$TT08.CFS.MDCCRDX.SRC 916 916 0 0PVV I
09:15:17 :CFS:$TT08.CFS.MDCCRDX.SRC.FLM 221 0 221 0PVV O
09:15:17 :O:$FLAM.FLAM 20 20 0 0PVV EX
09:15:17 :CFS:$TT08.CFS.PLAM1 2 0 2 0PVV
09:15:17 :CFS:$TT08.S.IN.CFS.PLAM1.ASS.0PVV.134253 1 1 0 0PVV EX
09:15:17 :CFS:$TT08.S.IN.CFS.LIB.XXX.DO.FLAMK.0PVV.42 1 1 0 0PVV EX
09:15:52 NO ENTRIES FOUND
09:16:23 NO ENTRIES FOUND
/DO CFS.USERLIB.BEISPIEL(FILESTAT),...
|
|
Die BS2000-DO Prozedur vermißt eine einzelne TSN, eine Task mit einem vorgegebenen Jobnamen oder alle Tasks einer Benutzerkennung. Die Prozedur ermittelt zyklisch die Anzahl der IO's, die im vorgegebenen Meßintervall für jede bzw. ausgewählte geöffnete Dateien angefallen sind. Darüber hinaus werden die CPU-Verbrauchswerte und weitere Informationen der betroffenen Tasks ausgegeben. Die ermittelten Informationen werden in eine Datei geschrieben. Bei Überwachung eines bestimmten Jobnamens oder einer Benutzerkennung wartet die Prozedur mit der Messung, bis der erste zu vermessende Task gestartet wurde. Die Prozedur beendet sich automatisch, sobald keine zu vermessende Task mehr existiert. Die Messung kann auch vorzeitig beendet werden, indem eine vorgegebene Jobvariable vom Benutzer auf 'END' gesetzt wird.
|
|
/DO $user-id.CFS.USERLIB.BEISPIEL(FILESTAT), ...
|
|
|
| Mit diesem Parameter kann ein Task mit einem vorgegebenen Jobnamen (z.B. TEST01) überwacht werden. Falls noch kein Task mit diesem Jobnamen existiert, wartet die Prozedur mit der Messung, bis der erste Task mit diesem Namen gestartet ist. Die Messung wird automatisch beendet, sobald der Task mit dem vorgegebenen Jobnamen auf LOGOFF läuft.
|
|
|
| Mit diesem Parameter werden alle Tasks vermessen, die unter einer vorgegebenen Benutzerkennung angeloggt sind (z.B. TT08). Falls noch kein Task unter dieser Kennung existiert, wartet die Prozedur mit der Messung, bis der erste Task unter der Benutzerkennung gestartet ist. Die Messung wird automatisch beendet, sobald der letzte Task unter der Benutzerkennung auf LOGOFF läuft.
|
|
|
| Mit diesem Parameter kann ein laufender Task mit einer vorgegebenen TSN vermessen werden. Die Messung wird automatisch beendet, sobald der Task mit der vorgegebenen Jobnamen auf LOGOFF läuft.
|
|
|
| Nur einer der oben beschriebenen drei Parameter darf bein Aufruf der Prozedur angegeben werden. Die anderen beiden müssen den Standardwert *NONE besitzen.
|
|
|
| Es werden nur die IO's von Dateien ausgegeben, deren Namen der in such spezifizierten CFS-Suchbedingung genügen.
|
|
|
| Standard: *ALL. Es erfolgt keine Beschränkung bezüglich der Dateinamen.
|
|
|
INT=sec | Das Meßintervall wird auf sec Sekunden gesetzt (Standard: 30 sec).
|
|
|
| Benutzerkennung und Dateiname der Programmphase von CFS.
|
|
|
| Name einer Jobvariablen, die zum vorzeitigen Beenden der Messung verwendet werden kann. Die Jobvariable muß in Spalte 1 bis 3 auf den Wert 'END' gesetzt werden.
|
|
|
| Die Ergebnisse der Messung werden in die angegebene Datei geschrieben.
|
|
|
Beispiel für eine FILESTAT-Auswertung:
|
|
----------------------------------------------------
I O - S T A T I S T I K VOM 20.07.95 14:31:22
----------------------------------------------------
USER-ID : TT08
INTERVALL : 60 SEK
FILES : *ALL
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:32:30 1 0 :CFS:$TT08.CFS.E.0PVS.143126 1 0PVS
14:32:30 1 0 :CFS:$TT08.CFS.E.0PVS.143126 1 0PVZ EX
14:32:30 2 0 :CFS:$TT08.S.IN.CFS.PLAM1.ASS.0PVZ.826748 2 0PVZ EX
14:32:30 85 0 :CFS:$TT08.CFS.PLAM1 85 0PVZ
14:32:31 102 0 :MAC:$TSOS.MACROLIB.V10 102 0PVZ
14:32:31 6 0 :O:$TSOS.SYSSDF.ASSEMBH.011.USER 6 0PVZ EX
14:32:31 3 0 :O:$TSOS.ASSEMBH 3 0PVZ EX
14:32:31 2 38 :CFS:$TT08.S.214.0PVZ.CIFLIB 40 0PVZ OI
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:32:31 0PVQ TT08 HILBERT 240 3 DIA 0.24 0 0 0
14:32:32 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:32:32 0PVS TT08 HILBERT 240 3 DIA 2.05 8 0 0
14:32:32 0PVZ TT08 HILBERT 255 2 BAT 45.84 259 0 0
14:32:32 SUM OF ALL DELTA IN INTERVALL: 48.13 267 0 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:33:33 101 0 :CFS:$TT08.CFS.PLAM1 101 0PVZ
14:33:33 44 0 :MAC:$TSOS.MACROLIB.V10 44 0PVZ
14:33:33 0 72 :CFS:$TT08.S.214.0PVZ.CIFLIB 72 0PVZ OI
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:33:34 0PVQ TT08 HILBERT 240 3 DIA 0.13 0 0 0
14:33:34 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:33:34 0PVS TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:33:34 0PVZ TT08 HILBERT 255 2 BAT 52.31 240 0 0
14:33:34 SUM OF ALL DELTA IN INTERVALL: 52.44 240 0 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:34:37 7 7 :CFS:$TT08.CFS.PLAM1 14 0PVZ
14:34:38 15 0 :MAC:$TSOS.MACROLIB.V10 15 0PVZ
14:34:38 0 124 :CFS:$TT08.S.214.0PVZ.CIFLIB 124 0PVZ OI
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:34:38 0PVQ TT08 HILBERT 240 3 DIA 0.13 0 0 0
14:34:38 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:34:38 0PVS TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:34:39 0PVZ TT08 HILBERT 255 2 BAT 53.79 193 1 0
14:34:39 SUM OF ALL DELTA IN INTERVALL: 53.92 193 1 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:35:40 11 89 :CFS:$TT08.CFS.PLAM1 100 0PVZ
14:35:40 258 16 :CFS:$TT08.S.214.0PVZ.CIFLIB 274 0PVZ OI
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:35:41 0PVQ TT08 HILBERT 240 3 DIA 0.14 0 0 0
14:35:41 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:35:41 0PVS TT08 HILBERT 240 3 DIA 0.01 0 0 0
14:35:41 0PVZ TT08 HILBERT 255 2 BAT 46.50 397 1 0
14:35:41 SUM OF ALL DELTA IN INTERVALL: 46.65 397 1 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:36:45 0 535 :CFS:$TT08.CFS.MDCCRDX.SRC 535 0PVZ O
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:36:45 0PVQ TT08 HILBERT 240 3 DIA 0.13 0 0 0
14:36:45 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:36:46 0PVS TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:36:46 0PVZ TT08 HILBERT 255 2 BAT 57.63 572 0 0
14:36:46 SUM OF ALL DELTA IN INTERVALL: 57.76 572 0 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:37:47 0 853 :CFS:$TT08.CFS.MDCCRDX.SRC 853 0PVZ O
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:37:48 0PVQ TT08 HILBERT 240 3 DIA 0.14 0 0 0
14:37:48 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:37:48 0PVS TT08 HILBERT 240 3 DIA 0.01 0 0 0
14:37:48 0PVZ TT08 HILBERT 255 2 BAT 57.42 899 0 0
14:37:48 SUM OF ALL DELTA IN INTERVALL: 57.57 899 0 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:38:52 0 622 :CFS:$TT08.CFS.MDCCRDX.SRC 622 0PVZ O
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:38:52 0PVQ TT08 HILBERT 240 3 DIA 0.13 0 0 0
14:38:52 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:38:52 0PVS TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:38:53 0PVZ TT08 HILBERT 255 2 BAT 57.68 657 0 0
14:38:53 SUM OF ALL DELTA IN INTERVALL: 57.81 657 0 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:39:54 1 0 :CFS:$TT08.S.IN.CFS.PLAM1.ASS.0PVZ.826748 1 0PVZ EX
14:39:54 0 2 :CFS:$TT08.CFS.PLAM1 2 0PVZ
14:39:54 1 0 :CFS:$TT08.S.IN.CFS.LIB.XXX.DO.FLAMK.0PVZ.08 1 0PVZ EX
TIME TSN USER-ID JOBNAME D-CPU D-IO D-PAGING D-OTHER
14:39:55 0PVQ TT08 HILBERT 240 3 DIA 0.13 0 0 0
14:39:55 0PVR TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:39:55 0PVS TT08 HILBERT 240 3 DIA 0.00 0 0 0
14:39:55 0PVZ TT08 HILBERT 255 2 BAT 33.81 4 0 0
14:39:55 SUM OF ALL DELTA IN INTERVALL: 33.94 4 0 0
----------------------------------------------------------------------------------------
TIME REA WRI FILENAME D-IO TSN OPN
14:40:56 2 0 :CFS:$TT08.CFS.JR.HILBERT.SYSOUT.0PVS.143126 2 0PVS
CPU IO PAGING OTHER
14:40:56 TOTAL : 408.22 3229 2 0
14:40:56 ENDE DER MESSUNG
Die CFS-Prozedur ermittelt für die in einer Reihe von Variablen hinterlegten Pubsets, Privatplatten oder Pools von Pubsets/Privatplatten, den aktuellen Belegungszustand und gibt die Informationen am Bildschirm aus. Für die einzelnen Pubsets, Privatplatten oder Pools können individuelle Grenzwerte vorgegeben werden. Falls diese Grenzwerte überschritten sind, werden die entsprechenden Werte bei der Ausgabe hell dargestellt.
|
|
Vor dem Start der Prozedur müssen die Pubsets, Privatplatten und Pools in der Prozedur angepaßt werden.
|
|
Die einzelnen Pubsets, Privatplatten und Platten-Pools sind innerhalb der Prozedur in Variablen &VOL1, &VOL2, &VOL3, ..., &VOLn fortlaufend zu hinterlegen. Der Inhalt der Variablen &VOL1, ... ,&VOLn wird folgendermaßen interpretiert:
|
|
|
*&VARn='PVSI_VOLUME_POOLNAME_PRO%_PAMPAGES_POOLRELA'
|
|
|
PVSI | Catid eines Public-Volume-Sets
|
|
|
VOLUME | VSN einer Privatplatte
|
|
|
POOLNAME | Poolname, der über POOLRELA zusammengefassten Platten
|
|
|
PRO% | Grenzwert für die Plattenbelegung in Prozent
|
|
|
PAMPAGES | Grenzwert für die Anzahl freier PAM-Seiten
|
|
|
POOLRELA | Poolname für die Zuordnung zu einem Plattenpool
|
|
DO SPACE [, PUB|PRIV|POOL] [, FILE=datei]
|
|
| Ohne Angabe von Parametern werden für alle in der Prozedur hinterlegten Pubsets, Privatplatten und Plattenpools die aktuellen Belegungszustände am Bildschirm angezeigt.
|
|
|
PUB | Es werden nur die Informationen für die definierten Pubsets angezeigt.
|
|
|
PRIV | Es werden nur die Informationen für die definierten Privatplatten angezeigt.
|
|
|
POOL | Es werden nur die Informationen für die definierten Plattenpools angezeigt.
|
|
|
FILE=datei | Die angeforderten Informationen werden in eine SAM-Datei datei geschrieben. Die Bildschirmausgabe wird unterdrückt.
|
|
/E CFS.USERLIB.BEISPIEL(ADDRESS-SPACE)
|
|
Die Enter-Prozedur bietet die Möglichkeit, den noch freien System-Adreßraum zyklisch zu überwachen. Dies ist besonders dann von Nutzen, wenn es sporadisch zu Engpässen kommt. Über Prozedurvariablen kann eine Meßwertedatei angegeben werden, in die jeweils die aktuell ermittelten Werte ausgegeben werden. Falls der vorgegebene Grenzwert unterschritten ist, wird an der Konsole eine Meldung ausgegeben und zusätzlich eine Liste der User- und System-Tasks (je 10 Tasks mit CL3, CL4, CL5, CL6) zum Zeitpunkt des Engpasses ausgegeben.
|
|
Die Prozedur kann über /INTR tsn von der Konsole aus beendet werden.
|
|
Vor Start der Prozedur sollte der Name der Meßdatei, der Grenzwert für den Systemadreßraum und die Intervallzeit an die individuelle Umgebung angepaßt werden:
|
|
|
wfile | Name der Meßdatei, in der zyklisch die ermittelten Informationen abgelegt werden (Standard: CFS.UEB.ADDRSP).
|
|
|
lim | Grenzwert für die Anzahl freier 4K-Seiten im Systemadreßraum (Standard: 500).
|
|
|
int | Prüfintervall in Sekunden (Standard: 600).
|
|
Die CFS-Prozedur ermöglicht es, für einen laufenden Task, nachträglich die maximale CPU-Zeit hochzusetzen bzw. das NTL Attribut zu vergeben.
|
|
Die Prozedur verzweigt in die Komponente TAS, wählt die entsprechende TSN aus und modifiziert über die symbolische Anzeige von Kontrollblöcken (%TCB,%JTBP) die notwendigen Felder im TCB (Task Control Block) und im JTBP (Job to be processed Block).
|
|
DO MOD-MAXCPU [, tsn [, time]
|
|
| Ohne Angabe von Parametern wird die TSN und die zu vergebende CPU-Zeit über Prompting angefordert.
|
|
|
tsn | TSN des zu modifizierenden Tasks
|
|
|
time | neu zu vergebende CPU-Zeit bzw. NTL (No Time Limit)
|
|
|
Die Prozedur MOD-MAXCPU sollte nicht mehr benutzt werden, das die entsprechende Funktion durch den TAS Action-Code T realisiert ist.
|
|
/E CFS.USERLIB.BEISPIEL(CAN-CONMAX)
|
|
Die Enter-Prozedur läuft unter der Kennung TSOS und überwacht die Typ 3 (Dialog) Tasks aller Benutzerkennungen außer TSOS bezüglich der seit Logon vergangenen Zeit (Connect Zeit).
|
|
Die Prozedur cancelt alle interaktiven Tasks, deren Logon-Zeitpunkt mehr als ccc Minuten zurück liegt.
|
|
Über einen zweiten Parameter www ( <= ccc ) kann die Anzahl der Minuten eingestellt werden, ab der Tasks per Message Kommando vor einem möglichen Cancel gewarnt werden.
|
|
Am Anfang der Prozedurdatei sind die vom Benutzer veränderbaren Parameter aufgeführt.
|
|
|
&CONMAX=720 | Maximale Connect-Zeit in Minuten. Alle Dialogtasks, die länger connectiert sind, werden von der Prozedur gecancelt.
|
|
|
&CONWARN=600 | Warnzeit in Minuten. Alle Dialogtasks, die länger connectiert sind, werden in regelmäßigen Abständen (siehe &WAIT) von der Prozedur per Message-Kommando auf ein bevorstehendes Canceln hingewiesen.
|
|
|
&WAIT=600 | Wartezeit in Sekunden. Um den durch die Prozedur verursachten Systemoverhead gering zu halten, wird zwischen den einzelnen Durchläufen der Prozedur ein Wartezyklus von &WAIT Sekunden zwischengeschaltet.
|
|
|
| Die Wartezeit bewirkt außerdem, daß Message-Kommandos an Tasks nur in diesen Intervallen abgesendet werden.
|
|
|
&USID=-TSOS | Benutzerkennungen, die von der Überwachung auszuschließen sind. Mehrere auszuschließende Benutzerkennungen können angegeben werden in der Form: -user1+-user2+- ...
|
|
|
| Es ist auch möglich, daß nur die Tasks von bestimmten angegebenen Benutzerkennungen überwacht werden sollen. Hierzu müssen die Kennungen angegeben werden in der Form: user1,user2, ...
|
|
|
&JOBT=3 | Es werden nur Tasks des angegebenen Jobtypes überwacht.
|
|
|
| In der Prozedur ist außerdem die User-Id und das Passwort für den Zugang zu der $CONSOLE-Anwendung einzutragen.
|
|
|
Der Enter-Prozess für diese Prozedur kann nur per Cancel-Kommando beendet werden.
|
|
/E CFS.USERLIB.BEISPIEL(CAN-CPUMAX)
|
|
Die Enter-Prozedur läuft unter der Kennung TSOS und überwacht die Typ 3 (Dialog) Tasks aller Benutzerkennungen außer TSOS bezüglich des CPU-Verbrauchs.
|
|
Die Prozedur überwacht interaktive Tasks (&JOBT=3, &PRI=>239, &USID=-TSOS), die in einem Meßintervall von &INT Sekunden (&INT=10) mehr als &CPUMAX CPU-Sekunden (&CPUMAX=8) verbraucht haben. Falls der Parameter &WARNING auf 'Y' gesetzt ist (Standard), werden die Tasks mehrmals (&WARNCNT=3) per Message vor einem drohenden Cancel gewarnt. Danach bzw. sofort, falls &WARNING='N' werden diese Tasks gecancelt.
|
|
Am Anfang der Prozedurdatei sind die vom Benutzer veränderbaren Parameter aufgeführt.
|
|
|
&INT=10 | Meßintervall in Sekunden. Im Meßintervall wird die verbrauchte CPU-Zeit der Tasks analysiert.
|
|
|
&CPUMAX=8 | Schwellwert für CPU-Zeit in Sekunden. Es werden alle Tasks gemerkt, die im Meßintervall mehr als die angegebene CPU-Zeit verbraucht haben.
|
|
|
&USID=-TSOS | Benutzerkennungen, die von der Überwachung auszuschließen sind. Mehrere auszuschließende Benutzerkennungen können angegeben werden in der Form: -user1+-user2+- ...
|
|
|
| Es ist auch möglich, daß nur die Tasks von bestimmten angegebenen Benutzerkennungen überwacht werden sollen. Hierzu müssen die Kennungen angegeben werden in der Form: user1,user2, ...
|
|
|
&JOBT=3 | Es werden nur Tasks des angegebenen Jobtypes überwacht.
|
|
|
&PRI=>239 | Es werden nur Tasks mit einer Priorität im angegebenen Bereich analysiert.
|
|
|
&WARNING='Y' | Alle Tasks, die die erlaubte CPU-Zeit im Intervall überschritten haben, werden per Message Kommando vor einem drohenden Cancel gewarnt.
|
|
|
| Bei &WARNING='N' wird sofort ohne Warnung gecancelt. In diesem Fall ist auch der folgende Parameter &WARNCNT ohne Bedeutung.
|
|
|
&WARNCNT=3 | Falls die CPU-Fresser in 3 aufeinander folgenden Meßintervallen die zulässige CPU-Zeit jeweils überschritten haben erfolgt ein Cancel. Falls in einem Meßintervall die CPU-Zeit nicht überschritten wurde, wird der interne Zähler für diesen Task auf 0 zurückgesetzt.
|
|
|
&WAIT=60 | Wartezeit in Sekunden zwischen den einzelnen Analysezyklen. Um den durch die Prozedur verursachten Systemoverhead gering zu halten, wird zwischen den einzelnen Durchläufen der Prozedur ein Wartezyklus von &WAIT Sekunden zwischengeschaltet.
|
|
|
| Die Wartezeit bewirkt außerdem, daß die Probenentnahme für die verbrauchte CPU-Zeit und die Warnung an die Tasks per Message-Kommando nur in diesen Intervallen erfolgt.
|
|
|
| In der Prozedur ist außerdem die User-Id und das Passwort für den Zugang zu der $CONSOLE-Anwendung einzutragen.
|
|
|
Der Enter-Prozess für diese Prozedur kann nur per Cancel-Kommando beendet werden.
|
|
/E CFS.USERLIB.BEISPIEL(CAN-IDLE)
|
|
Die Enter-Prozedur läuft unter der Kennung TSOS und überwacht die Typ 3 (Dialog) Tasks aller Benutzerkennungen bezüglich des Zeitpunkts des letzten CPU-Verbrauchs.
|
|
Die Prozedur cancelt alle interaktiven Tasks, die seit mehr als &IDLE Minuten keinen Zuwachs an CPU-Zeit verursacht haben.
|
|
Am Anfang der Prozedurdatei sind die vom Benutzer veränderbaren Parameter aufgeführt.
|
|
|
&IDLE=300 | Idle-Zeit in Minuten. Alle Tasks, die seit mehr als 300 Minuten keinen CPU-Zuwachs verzeichnet haben, werden gecancelt.
|
|
|
| Es ist zu beachten, daß bei &IDLE keine allzugroßen Werte angegeben werden sollten, da auch Idle-Tasks in größeren Zeitabständen minimale Anteile an CPU-Zeit aufnehmen.
|
|
|
&WAIT=60 | Wartezeit in Sekunden zwischen den einzelnen Analysezyklen. Um den durch die Prozedur verursachten Systemoverhead gering zu halten, wird zwischen den einzelnen Durchläufen der Prozedur ein Wartezyklus von &WAIT Sekunden zwischengeschaltet.
|
|
|
Der Enter-Prozess für diese Prozedur kann nur per Cancel-Kommando beendet werden.
|
|
Die CFS-Prozedur wählt alle Dateien der eigenen Kennung aus, die sich auf HSMS Storage Level S2 befinden, die also ausgelagert sind. Es wird eine BS2000-DO-Prozedur mit einem SECURE-Kommando für alle durch den Benutzer mit X markierten Dateien erstellt. Dies hat zur Folge, daß die Dateien von HSMS wieder eingelagert werden.
|
|
Die Einlagerung mehrerer Dateien hat den Vorteil, daß alle markierten Dateien mit einem Kommando angesprochen werden, und somit auch nur ein HSMS-Task zur Einlagerung erzeugt wird.
|
|
Die erzeugte Prozedur wird über das Job-Report-System als Enterprozess mit Überwachung gestartet.
|
|