Die in den Natural-Systemdateien FNAT und FUSER gespeicherten
Natural-Objekte sind in logische Konstrukte unterteilt, die als Libaries (Bibliotheken)
bezeichnet werden. Eine Natural-Library dient dazu, Objekte nach bestimmten funktionalen
Kriterien zusammenzufassen. So kann eine Library beispielsweise aus einem Satz von Objekten
bestehen, die eine bestimmte Aufgabe zu erledigen haben. Wenn das Add-on-Produkt Natural
Security installiert ist, kann man eine Library auch verwenden, um den Zugriff auf Objekte
auf bestimmte Benutzergruppen, z.B. Administratoren, einzuschränken.
Eine Natural-Anwendung kann, je nachdem wie die Umgebung eingerichtet ist, auf Objekte in mehreren Libraries zugreifen.
Alle Operationen bei Libraries werden mit Hilfe von Menüfunktionen oder entsprechenden Kommandos ausgeführt. Siehe auch den Abschnitt Kommandos und Menü-Funktionen benutzen.
Dieser Abschnitt behandelt folgende Themen:
Natural-Systemdateien - System-Architektur-Dokumentation
Libraries in Systemdateien - System-Architektur-Dokumentation
Library Maintenance - Natural Security-Dokumentation
Siehe auch Namenskonventionen für Libraries.
Eine Library enthält Objektmodule, d.h. Quellcode-Objekt (Source-Objekt) und ggf. zugehöriges katalogisiertes Objekt, der folgenden Natural-Objekttypen: Programm, Subprogramm, Subroutine, Copycode, Helproutine, Class, Function, Text, Recording, Map, Local Data Area, Global Data Area, Parameter Data Area, Command Prozessor Source, Error Message, Dialog, Debug Environment, Adapter und Resource.
Im folgenden Abschnitt werden die verschiedenen Typen von Libraries vorgestellt.
Eine Benutzer-Library enthält Objekte einer Benutzer-Anwendung, die speziell zu dieser
Anwendung gehören und zum Ausführen dieser Anwendung benötigt werden. Benutzer-Libraries
sind in der Systemdatei FUSER untergebracht.
Bei einer System-Library handelt es sich um eine interne Datei. System-Libraries sind
in der Systemdatei FNAT untergebracht.
In einer System-Library sind alle Objekte enthalten, die zum Ausführen einer Natural-Systemanwendung benötigt werden.
Darüber hinaus gibt es System-Libraries, die Objekte des Typs Programm enthalten, die zu Demonstrationszwecken geliefert werden, siehe Beispiel-Libraries.
Auf die System-Libraries SYSLIB und SYSLIBS können Sie nicht
zugreifen. Diese sind zur internen Verwendung bestimmt. Wenn Sie es dennoch versuchen,
erhalten Sie die Fehlermeldung: Libraries SYSLIB and SYSLIBS reserved for
system usage.
Wichtig
Speichern Sie keine benutzerspezifischen Objekte in einer
Natural-System-Library. Diese Objekte können überschrieben werden, wenn Installations-
oder Korrektur-Datasets bzw. Dateien (zum Beispiel beim Umstieg auf einen höheren System
Maintenance (SM) Level oder eine neue Version oder beim Einspielen von Fix-Bändern) in
die Systemdateien geladen werden.
Eine Steplib ist eine Natural-Benutzer-Library oder System-Library, die mit der aktuellen Benutzer- oder System-Library verkettet ist. Eine Steplib kann als alleiniger Speicherort für mehrere Objekte dienen, die von verschiedenen Anwendungen gemeinsam genutzt werden. Dadurch wird die redundante Speicherung von identischen Objekten vermieden und die Strukturierung von Anwendungen erleichtert.
Eine Steplib ist eine Library, in der Natural sucht, wenn ein Objekt in der aktuellen
Library nicht gefunden werden konnte (siehe auch den folgende Abschnitte). Als
Standard-Steplibs dienen die Libraries SYSTEM in den Systemdateien
FUSER und FNAT.
Dieser Abschnitt behandelt folgende Themen:
Wenn Natural Security aktiv ist, können Sie im Security-Profil zu jeder Library
zusätzliche Steplibs festlegen. Die Einträge in einem Library-Security-Profil haben
Vorrang vor jeglichen außerhalb von Natural Security vorgenommenen Festlegungen. Diese
Steplibs werden nach einem Objekt durchsucht, bevor in den Standard-Steplibs
SYSTEM in den Systemdateien FUSER und FNAT
danach gesucht wird.
Steplibs - Natural Security-Dokumentation
Wenn kein Natural Security aktiv ist, können Sie beim Session-Start eine zusätzliche
Steplib mit Hilfe des Natural-Profilparameters STEPLIB angeben.
Darüber hinaus können Sie weitere Steplibs unter Verwendung der
Programmierschnittstellen (APIs, z.B. USR1025N oder USR3025N)
definieren. Diese und weitere APIs finden Sie in der System-Library
SYSEXT.
Diese Steplibs werden nach einem Objekt durchsucht, bevor in den Standard-Steplibs
SYSTEM in den Systemdateien FUSER und FNAT
danach gesucht wird.
STEPLIB - Zusätzliche Steplib Library - Parameter-Referenz-Dokumentation
Um die Steplib-Einstellung Ihrer aktuellen Library zu überprüfen
Geben Sie folgendes Systemkommando ein:
TECH
Das Fenster TECH erscheint.
Blättern Sie nach unten, indem Sie solange EINGABE drücken, bis die Tabelle mit der Spalte Steplib erscheint.
TECH - Systemkommandos-Dokumentation
Dieser Abschnitt beschreibt, in welcher Reihenfolge Natural-Libraries und Systemdateien nach einem angeforderten Objekt durchsucht werden, das entweder aus einer Benutzer-Library oder einer System-Library heraus ausgeführt werden soll.
Anmerkung
Wenn der Profilparameter BPSFI auf ON gesetzt ist
(Standard-Einstellung ist OFF), wird zunächst nach Objekten im Buffer Pool gesucht.
Die aktuelle Library in der Systemdatei FUSER gemäß Definition in der
Systemvariablen *LIBRARY-ID.
Die Steplibs (sequenziell) gemäß Angaben im Natural-Security-Profil für die aktuelle Library oder in der Steplib-Tabelle.
Die Standard-Steplib gemäß Definition in der Systemvariablen *STEPLIB.
Die Library SYSTEM in der Systemdatei FUSER.
Die Library SYSTEM in der Systemdatei FNAT.
Die aktuelle Library in der Systemdatei FNAT gemäß Definition durch die
Systemvariable *LIBRARY-ID.
Die Steplibs (sequenziell) gemäß Angaben im Natural-Security-Profil für die aktuelle Library oder in der Steplib-Tabelle.
Die Library SYSLIBS in der Systemdatei FNAT, die Objekte
enthält, die gemeinsam von Systemkommandos und Dienstprogrammen (Utilities) verwendet
werden.
Die Library SYSTEM in der Systemdatei FNAT.
Die Library SYSTEM in der Systemdatei FUSER.
Da die Systemdatei FUSER zuletzt durchsucht wird, dürfen Sie ein Objekt, das
sowohl in der Systemdatei FUSER als auch in FNAT verwendet wird
(z.B. eine User Exit Routine für ein Natural-Dienstprogramm (Utility) nur an einer Stelle
vorhalten, und zwar in FUSER.
Wenn Sie eine Natural-Session starten, melden Sie Sie sich automatisch bei einer von Natural zugewiesenen Library ein. Auf Natural-Bildschirmen ist normalerweise ein Feld vorhanden (z.B. Library oder LIB=), in dem der Name (die Kennung) Ihrer Library angezeigt wird, d.h. die aktuelle Library (z.B. LIB=SYSTEM), in der Natural-Objekte gespeichert werden und aus der sie abgerufen werden.
Um festzustellen, welche Ihre aktuelle Library ist
Geben Sie folgendes Systemkommando ein:
TECH
Das Fenster TECH erscheint. Der Name (die Kennung) der Library, in der Sie zurzeit angemeldet sind, wird im Feld Library angezeigt.
Wenn der Natural-Profilparameter AUTO auf OFF gesetzt ist, weist
Natural Ihnen standardmäßig die Library ID SYSTEM zu. Sie können beim Starten
der Session die Standard-Library ändern, indem Sie AUTO auf
ON setzen. AUTO=ON bewirkt die automatische
Anmeldung (Einloggen) bei der Library, die Ihrer Benutzerkennung entspricht.
Wenn Ihr Natural unter Natural Security läuft, gelten besondere Regeln für das Anmelden. Diese sind in der Natural Security-Dokumentation beschrieben.
Es kann sein, dass Sie sich bei einer anderen Library anmelden müssen, wenn Sie eine Verwaltungsfunktion ausführen oder an einer anderen Anwendung arbeiten möchten. Siehe Abschnitt Anmelden (Einloggen) bei einer Library.
TECH - Systemkommandos-Dokumentation
AUTO - Automatische Anmeldung - Parameter-Referenz-Dokumentation
Logging On - Natural Security-Dokumentation
Wenn Sie ein Natural-Objekt anlegen oder pflegen oder ein Natural-Programm in einer bestimmten Library ausführen möchten, müssen Sie unter Umständen zuerst die Library wechseln und sich bei der Library oder Steplib (siehe Steplib-Libraries) anmelden, die das Objekt enthält bzw. aufnehmen soll.
Zum Anmelden bei einer Library benutzen Sie normalerweise das Systemkommando LOGON. Wenn Ihr Natural
unter Natural Security läuft, gelten besondere Regeln. Diese sind in der Natural
Security-Dokumentation beschrieben.
Nach dem erfolgreichen Anmelden bei einer Library, die noch keine Objekte enthält, lautet
die Bestätigungsmeldung: This library is empty (Diese Library ist
leer).
Anmerkung
Das Systemkommando LOGON berücksichtigt keine Objekte des
Typs Error Message und Debug Environment. Deshalb bezieht sich die o. g. Meldung nur auf
die anderen Objekttypen. Um festzustellen, ob eine Library Objekte des Typs Error Message
und Debug Environment enthält, können Sie, zum Beispiel, das Dienstprogramm (Utility)
SYSMAIN oder SYSERR bzw. den
Debugger
benutzen.
Darüber hinaus können Sie auch das Systemkommando LIST (siehe Objekte in einer Library
auflisten) benutzen, um festzustellen, ob eine Library leer
ist.
Die Library, bei der Sie sich angemeldet haben, bleibt solange aktiv, bis Sie sich bei einer anderen Library anmelden oder Ihre Natural-Session beenden.
Um sich bei einer anderen Library anzumelden
Geben Sie folgendes Systemkommando ein:
LOGON library-ID
Dabei ist library-ID der Name (Kennung) der Library, auf die Sie zugreifen wollen.
Oder:
Im Natural-Hauptmemü oder einem der untergeordneten Menüs:
Überschreiben Sie in der rechten oberen Ecke des Bildschirms im Feld Library die dort vorhandene Library-Kennung mit der Kennung der gewünschten Library (siehe auch Beispiel für eine Menü-Funktion.
Drücken Sie EINGABE.
Vorausgesetzt, die von Ihnen eingegebene Library ID erfüllt Namenskonventionen für Libraries,
dann erscheint die folgende Meldung zur Bestätigung: Logon in Library
library-ID accepted (Anmeldung bei
Library library-ID akzeptiert).
Logging On - Natural Security-Dokumentation
Um eine neue Library anzulegen, benutzen Sie entweder das Systemkommando LOGON, mit dem Sie eine
leere Library erhalten, in der Sie ein Objekt erstellen können, oder Sie verwenden die
Verschieben-(Move-) oder Kopier-(Copy-)Funktion eines Natural-Dienstprogramms (Utility),
wenn Sie Objekte übertragen.
Um eine neue Library anzulegen
Wenn Sie das Systemkommando LOGON benutzen, folgen Sie der
Beschreibung im Abschnitt Anmelden
(Einloggen) bei einer Library. Geben Sie die ID der neuen
Library an. Diese enthält noch keine Objekte. Legen Sie in dieser Library mindestens
ein katalogisiertes Objekt oder ein Quellcode-Objekt (Source-Objekt) an.
Wenn Sie Objekte aus einer vorhandenen Library in eine neue Library verschieben oder kopieren möchten, folgen Sie der Beschreibung im Abschnitt Libraries kopieren, verschieben und umbenennen.
Eine Liste aller in Ihrer aktuellen Natural-Systemumgebung vorhandenen Libraries erhalten
Sie, indem Sie die Utility SYSMAIN benutzen.
Um alle Libraries mittels Menüfunktionen aufzulisten
Wählen Sie im Natural-Hauptmenü den Eintrag aus.
Drücken Sie EINGABE.
Der Bildschirm Pflegen und Übertragen von Objekten erscheint.
Wählen Sie Übertragen von Objekten in andere Libraries - SYSMAIN
Oder:
Geben Sie in der Kommandozeile das folgende Systemkommando ein:
SYSMAIN
Drücken Sie EINGABE.
Das Hauptmenü des Dienstprogramms (Utility) SYSMAIN erscheint, zum
Beispiel:
12:10:14 ***** NATURAL SYSMAIN UTILITY ***** 2022-11-18
User SAG - Main Menu -
Code Object Code Function
A Programming Objects C Copy
D Debug Environments D Delete
E Error Message Texts F Find
P Profiles L List
R Rules M Move
S DL/I Subfiles R Rename
V DDMs ? Help
X Predict Sets
? Help . Exit
. Exit
Object Code .. A Function Code .. _
Command ===>
Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
Help Menu Exit Copy Del Find List Move Ren |
Geben Sie im Feld Object Code ein A ein
(Standardeinstellung), um alle Libraries aufzulisten, die Natural-Objekte
(Fehlermeldungen und Debug-Umgebungen) enthalten. (Für Fehlermeldungen müssen Sie
ein E eingeben, für Debug-Umgebungen ein D).
Geben Sie im Feld Function Code ein L (für List)
ein.
Drücken Sie EINGABE.
Es erscheint der Bildschirm List Programming Objects.
Geben Sie im Feld Code ein A ein, um nach
Libraries zu suchen, die alle Arten von Objektmodulen enthalten: katalogisierte
Objekte und Quelcode-Objekte (Source-Objekte).
Geben Sie im Feld Source Library einen Stern (*) ein, um nach allen Libraries zu suchen.
(Informationen zu gültigen Namensbereichen siehe Angabe eines Namensbereichs in der SYSMAIN-Dokumentation.)
Lassen Sie die übrigen Eingabefelder unverändert.
Drücken Sie EINGABE.
Es erscheint der Bildschirm Library Selection. Er enthält eine Liste aller in der aktuellen Systemdatei vorhandenen Libraries.
Drücken Sie EINGABE, um in der Liste nach unten zu blättern.
Auf dem Bildschirm Library Selection können Sie eine bestimmte Library auswählen und die in ihr enthaltenen Objekte auflisten. Weitere Informationen finden Sie im Abschnitt Library Selection, siehe Verwandtes Thema weiter unten.
Um alle Libraries mit einem Kommando aufzulisten
Geben Sie das folgende Kommando in der Kommandozeile ein:
SYSMAIN LIST ALL * IN LIBRARY *
Drücken Sie EINGABE.
Der Bildschirm Library Selection erscheint mit einer Liste aller in der aktuellen Systemdatei vorhandenen Libraries.
Auflisten und Auswählen von Libraries in der SYSMAIN-Dokumentation
Eine Liste der in einer Library enthaltenen Objekte erhalten Sie, indem Sie entweder das
Systemkommando LIST oder die entsprechende Funktion des
Natural-Dienstprogramms (Utility) SYSMAIN oder den Object Handler benutzen.
Anmerkung
Das Systemkommando LIST kann keine Objekte des Typs
Fehlermeldung oder Debug-Umgebung verarbeiten. Letztere können Sie, zum Beispiel, mit dem
Dienstprogramm (Utility) SYSMAIN auflisten.
Dieser Abschnitt beschreibt, wie Sie sich eine Liste von Objekten mit Hilfe des
Systemkommandos LIST anzeigen lassen können.
Um Objekte mit LIST
aufzulisten
Geben Sie das folgende Kommando ein:
LIST *
Dabei bedeutet die Angabe eines Sterns (*), dass alle Quellcode-(Source-)Objekte und alle katalogisierten Objekte aufgelistet werden sollen.
(siehe auch: object-name-range im Abschnitt LIST in der Systemkommandos-Dokumentation).
Drücken Sie EINGABE.
Es erscheint der Bildschirm LIST Objects in a Library (siehe
Beispiel). Er enthält eine Liste der Source-Objekte und der katalogisierten Objekte,
die in der aktuellen Library (in diesem Beispiel: TEST) in der
aktuellen Systemdatei vorhanden sind.
18:27:05 ***** NATURAL LIST COMMAND ***** 2022-11-23
User SAG - LIST Objects in a Library - Library TEST
Cmd Name Type S/C SM Version User ID Date Time
--- *________ *__________ *__ * *______ *________ *__________ *________
__ COPYLDA Copycode S R SAG 2012-07-23 17:58:19
__ DEMOSPGM Subprogram S/C S SAG 2012-07-23 17:58:34
__ EMP-L Local S/C SAG 2012-07-23 17:58:47
__ GDATEST Global S SAG 2012-07-24 10:09:25
__ HELPR1 Helproutine S/C S SAG 2012-07-24 10:02:59
__ LDATEST Local S/C SAG 2012-07-23 17:59:16
__ MAPTEST Map S/C S SAG 2012-07-24 10:04:44
__ MAP01 Map S/C S SAG 2012-07-24 10:04:25
__ PDASTUB Subprogram S/C S SAG 2012-07-24 10:03:41
__ PDATEST Parameter S/C SAG 2012-07-24 10:03:47
__ PGMTEST Program S/C S SAG 2012-07-24 10:03:53
__ PGM01 Program S S SAG 2012-07-23 17:59:02
__ SUBPGM1 Subprogram S S SAG 2012-07-23 17:59:08
__ SUBRTEST Subroutine S/C R SAG 2012-07-24 10:07:58
14 Objects found
Top of List.
Command ===>
Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
Help Print Exit Sort -- - + ++ > Canc |
Sortiert ist die Liste nach dem Objektnamen (in der Spalte
Name). Sie enthält zusätzlich Informationen zu jedem Objekt
(z. B. den Objekttyp: Program), zur Art des vorhandenen Objektmoduls
(in der Spalte S/C: S =
Source-Objekt/Quellcode-Objekt, C = katalogisiertes Objekt) und die
Benutzerkennung (User ID) des Benutzers, der das Objekt angelegt oder geändert
hat.
Auf dem Bildschirm LIST Objects in a Library können Sie ein Objekt zur weiteren Verarbeitung auswählen. Sie können sich z. B. den Quellcode eines Objekts anzeigen lassen oder Objekte aus einer Library löschen. Siehe Um Objekte mit LIST zu löschen.
Weitere Informationen zum Bildschirm LIST Objects in a Library sowie
zu weiteren Optionen, die Ihnen beim Systemkommando LIST zur
Verfügung stehen, siehe Verwandte Themen unten.
object-name-range - LIST, Systemkommandos-Dokumentation
Bedeutung der Spaltenüberschriften - LIST, Systemkommandos-Dokumentation
Liste der Objekte sortieren - LIST, Systemkommandos-Dokumentation
Eine Funktion auf einem Objekt ausführen - LIST, Systemkommandos-Dokumentation
Sie können sich eine Liste der in der aktuellen Library in der aktuellen Systemdatei enthaltenen Objekte ausdrucken lassen.
Um eine Objektliste zu drucken
Geben Sie das folgende Kommando ein:
LIST *
Dabei bedeutet die Angabe eines Sterns (*), dass alle Quellcode-(Source-)Objekte und alle katalogisierten Objekte aufgelistet werden sollen.
(Siehe auch: object-name-range im Abschnitt LIST in der Systemkommandos-Dokumentation).
Drücken Sie EINGABE.
Drücken Sie PF2 (Print).
Es erscheint das Fenster PRINT, zum Beispiel:
+--------------- PRINT ---------------+ ! ! ! Page Size for Print ... 60 ! ! Destination ........... DAECOP09 ! ! Start Printing (Y/N) .. Y ! ! ! +-------------------------------------+ |
Geben Sie im Feld Destination einen gültigen Druckernamen ein. (Fragen Sie ggf. Ihren Natural-Administrator nach dem Namen eines in Ihrer Umgebung zur Verfügung stehenden Druckers.) Falls Sie dies wünschen, können Sie im Feld Page Size for Print die Seitenlänge ändern (standardmäßig hat eine Seite 60 Zeilen).
Drücken Sie EINGABE.
Es erscheint der Bildschirm Printout Specification, auf dem Sie Druckereinstellungen, z. B. die Anzahl der zu druckenden Exemplare vornehmen können.
Drücken Sie EINGABE.
Die Liste der in der Library enthaltenen Objekte wird auf dem angegebenen Drucker gedruckt.
LIST - Systemkommandos-Dokumentation
Sie können die in der Liste angezeigten Objekte weiter eingrenzen, indem Sie zusätzliche Auswahlkriterien angeben, z. B. die Benutzerkennung (ID) des Benutzers, der ein bestimmtes Objekt oder eine bestimmte Zeichenkette in einem Objekt-Quellcode (Source) angelegt hat.
Dieser Abschnitt beschreibt, wie Sie unter Angabe von Suchkriterien Objekte suchen
können. Dazu können Sie entweder die Utility SYSMAIN oder das Systemkommando SCAN benutzen.
Der folgende Abschnitt enthält Beispiele dafür, wie Sie Objekte durch Angabe von
Suchkriterien suchen können, indem Sie entweder die Funktionen des SYSMAIN-Menüs oder das entsprechende Kommando
benutzen.
Um Objekte mit SYSMAIN zu suchen
Wählen Sie im Natural-Hauptmenü den Eintrag Pflegen und Übertragen von Objekten aus.
Drücken Sie EINGABE.
Der Bildschirm Pflegen und Übertragen von Objekten wird angezeigt.
Wählen Sie Übertragen von Objekten in andere Libraries - SYSMAIN
Oder:
Geben Sie in der Natural-Kommandozeile das folgende Kommando ein:
SYSMAIN
Drücken Sie EINGABE.
Das Hauptmenü der Utility SYSMAIN wird angezeigt.
Geben Sie im Feld Object Code ein A (für
Programming Objects) ein (Standardeinstellung), um nach
allen Objekttypen zu suchen.
Ausnahmen: Für Fehlermeldungen müssen Sie ein E (für Error
Message Texts), für Debug-Umgebungen ein D (für
Debug Environments) eingeben.
Geben Sie im Feld Function Code ein F für
(Find) ein.
Drücken Sie EINGABE.
Der Bildschirm Find Programming Objects wird angezeigt (Beispiel):
09:07:25 ***** NATURAL SYSMAIN UTILITY ***** 2022-11-24
User SAG - Find Programming Objects -
Code Function
A Find All/Individual Objects
C Find only Cataloged Objects
S Find only Saved Objects
W Find only Stowed Objects
? Help
. Exit
Code ...... _
Object Name ...... *________ Type ........ _______________
Source Library ... TEST____ Database .... 10___ File .. 32___
Options Criteria .... N
Command ===>
Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
Help Menu Exit Copy Del Find List Move Ren Fsec Fdic Fnat |
Geben Sie im Feld Code ein A (für
Find All/Individual Objects) ein, um nach allen Arten von
Objektmodulen zu suchen: katalogisierte Objekte und Quellcode-(Source-)Objekte.
Geben Sie im Feld Object Name einen Stern (*) ein, um nach allen Objektnamen zu suchen. Dies ist die Standardeinstellung.
(Gültige Namensbereiche siehe Angabe eines Namensbereichs in der SYSMAIN Utility-Dokumentation.)
Geben Sie im Feld Source Library die Kennung (ID) der Library ein, die die zu suchenden Objekte enthält.
Überschreiben Sie im Feld Criteria das N (No)
durch Y (Yes). N ist die Standardeinstellung.
Lassen Sie alle übrigen Eingabefelder unverändert.
Drücken Sie EINGABE.
Es erscheint das Fenster Additional Criteria (zusätzliche Kriterien), in dem Sie Suchkriterien eingeben können, zum Beispiel:
09:12:30 ***** NATURAL SYSMAIN UTILITY ***** 2022-11-24
User SAG - Find Programming Objects -
+------------------------------------------+
! --- Additional Criteria --- !
! !
! Object Type ..... PM__________________ !
! Date/Time From .. 2022-01-01 _____ !
! Date/Time To .... 2022-11-24 _____ !
! User ID ......... SAG______ !
! Terminal ID ..... ________ !
! !
! !
! !
Code .. ! Command ===> !
Object Name .. ! !
+------------------------------------------+
Source Library ... TEST____ Database .... 10___ File .. 32___
Options Criteria .... Y
Command ===>
Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
Help Menu Exit Copy Del Find List Move Ren Fsec Fdic Fnat |
Geben Sie eines oder mehrere Suchkriterien ein und drücken Sie EINGABE.
Das Fenster wird geschlossen. Ein Plus-Zeichen (+) vor dem Feld
Criteria zeigt an, dass in dem Fenster außer dem Objekttyp
noch andere Suchkriterien angegeben wurden.
+ Criteria .... N
Drücken Sie noch einmal EINGABE.
Der Bildschirm Find Selection erscheint. Er enthält eine Liste aller Source-Objekte und katalogisierten Objekte, die in der angegebenen Library in der aktuellen Systemdatei vorhanden sind.
In dem obigen Beispiel werden alle Objekte der Typen P (Programm)
und M (Map) angezeigt, die zwischen 2022-01-01 und
2022-11-24 durch den Benutzer SAG angelegt oder
geändert wurden.
Drücken Sie EINGABE, um in der Liste nach unten zu blättern, bis die
folgende Meldung erscheint: Library has been successfully
listed (Die Library wurde erfolgreich aufgelistet.).
Auf dem Bildschirm Find Selection haben Sie die Möglichkeit, ein Objekt zur Weiterverarbeitung auszuwählen, zum Beispiel, können Sie sich den Quellcode eines Objekts anzeigen lassen. Siehe Auswahllisten für Programmierobjekte in der SYSMAIN Utility-Dokumentation.
Menüfunktionen und Kommandos benutzen in der SYSMAIN Utility-Dokumentation
Um Objekte direkt mittels Kommando SYSMAIN zu suchen
Geben Sie das folgende Kommando ein:
SYSMAIN FIND ALL * TYPE PN WITH USER user-ID IN library-ID
Dabei gibt ALL an, dass alle Quellcode-(Source-)Objekte und
katalogisierten Objekte in die Suche einbezogen werden sollen.
Der Stern (*) gibt an, dass alle Objektnamen in die Suche einbezogen werden sollen (siehe auch: Angabe eines Namensbereichs in der SYSMAIN Utility-Dokumentation).
PN gibt die Objekttypen an, nach denen gesucht werden soll
(P bedeutet Programm, N bedeutet Subprogramm.
library-ID ist die Kennung (ID) der zu durchsuchenden Library.
user-ID ist die Benutzerkennung (ID) des Benutzers, nach dem gesucht werden soll.
Drücken Sie EINGABE.
Es erscheint der Bildschirm Find Selection. Er enthält eine Liste aller Quellcode-(Source-)Objekte und katalogisierten Objekte der Typen Programm und Subprogramm, die von dem angegebenen Benutzer angelegt oder geändert wurden.
Schlüsselwörter und Variablen in Direktkommandos in der SYSMAIN Utility-Dokumentation
Der folgende Abschnitt enthält Beispiele dafür, wie Sie Objekte finden können, indem
Sie ihre Quellcode-(Source-)Objekte nach einer bestimmten Zeichenkette mit Hilfe des
Systemkommandos SCAN durchsuchen.
Anmerkung
Das Systemkommando SCAN verarbeitet keine Objekte des
Typs Fehlermeldung (Error Message) und Debug-Umgebung
(Debug-Environment). Zum Durchsuchen von Fehlermeldungen können Sie die Vorgehensweise
im Abschnitt Meldungen durchsuchen in der Natural-Utility
SYSERR anwenden.
Um Quellcode-(Source-)Objekte mit Hilfe von Menüfunktionen zu durchsuchen
Geben Sie in der Natural-Kommandozeile das folgende Systemkommando ein:
SCAN
Drücken Sie EINGABE.
Der Bildschirm Scan Objects in Libraries erscheint (siehe folgendes Beispiel). Sie können hier einen Objektbereich und einen Suchwert eingeben:
12:50:55 ***** NATURAL SCAN COMMAND ***** 2022-11-18
User SAG - Scan Objects in Libraries - Library TEST
Code Function
T Statistics
L List of Objects Containing Scan Value
S Object Lines with Scan Value
? Help
. Exit
Code ................ L
Scan value .......... LOCAL___________________________
Replace value ....... GLOBAL__________________________
Library ............. TESTLIB_
Object name ......... *________ Selection list .... N
Object type(s) ...... *_____________
Absolute scan ....... N Trace ............. N
Predict set number .. __ Predict set user .. ________
Ignore case ......... N Ignore comments ... N
Defaults from SCAN profile (SCANPROF) read.
Command ===>
Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
Help Menu Exit Prof |
Geben Sie im Feld Code ein L (für
) ein und
geben Sie einen Suchwert, eine Library und einen Objektbereich ein. Mit
Stern-Notation (*) können Sie alle Objektnamen und Objekttypen auswählen.
Geben Sie im Feld Replace value eine Zeichenkette (z. B.
GLOBAL) ein, durch die der angegebene Suchwert (z. B.
LOCAL) ersetzt werden soll.
Drücken Sie EINGABE.
Der Bildschirm Select Objects for Library erscheint. Er
enthält für die angegebene Library in der aktuellen Systemdatei eine Liste aller
Source-Objekte, die die angegebenen Suchkriterien erfüllen. Im Fall des obigen
Beipiels werden alle Objekte in der Library TESTLIB ausgewählt, die
die Zeichenkette LOCAL enthalten.
Auf dem Bildschirm Select Objects for Library können Sie ein Objekt auswählen und die Source-Zeile, die den Suchwert enthält, anzeigen oder ändern.
Weitere Informationen zum Bildschirm Scan Objects in
Libraries siehe Menü-Optionen in der Beschreibung des
Systemkommandos SCAN in der
Systemkommandos-Dokumentation
Um Quellcode-(Source-)Objekte mittels Direktkommando zu durchsuchen
Geben Sie in der Natural-Kommandozeile das folgende Kommando ein:
SCAN FUNC=L,SVAL=scan-value,LIB=library-ID,*
Dabei ist:
scan-value die Zeichenkette (z. B.
LOCAL), nach der die Sourcen durchsucht werden sollen.
library-ID library-ID die ID der Library, die
durchsucht werden soll (z. B. TESTLIB).
Verwenden Sie Stern-Notation (*), wenn nach allen Source-Objekten in der Library gesucht werden soll.
Drücken Sie EINGABE.
Weitere Informationen siehe SCAN mittels Direktkommando in der Systemkommandos-Dokumentation
Sie können eine Library kopieren oder verschieben, indem Sie alle Natural-Objekte von einer Quell-Library in eine vorhandene oder neue Ziel-Library kopieren oder verschieben.
Beim Umbenennen einer Library sind dieselben Schritte wie beim Verschieben einer Library nötig. Sobald alle Objekte einer Library in eine neue Ziel-Library verschoben worden sind, wird die alte Library automatisch gelöscht.
Sie können einzelne oder mehrere Objekte von einer Library in eine andere Library
kopieren oder verschieben, indem Sie entweder das Natural-Dienstprogramm (Utility)
SYSMAIN oder den Object Handler benutzen.
Dieser Abschnitt enthält Beispiele für das Kopieren oder Verschieben aller Objekte mit
SYSMAIN, und zwar mit Hilfe von Menüfunktionen oder den entsprechenden
Kommandos.
Objekte mit Hilfe von SYSMAIN-Menüfunktionen kopieren oder verschieben
Objekte mit Hilfe von Direktkommandos kopieren oder verschieben
Um alle Objekte mit Hilfe von
SYSMAIN-Menüfunktionen zu kopieren oder zu verschieben
Rufen Sie das Hauptmenü des Dienstprogramms (Utility) SYSMAIN auf.
Geben Sie im Feld Object Code ein A ein
(Standardeinstellung), um alle Objekttypen auszuwählen.
(Ausnahmen: für Fehlermeldungen (Error Messages) geben Sie ein E,
für Debug-Umgebungen (Debug Environments) ein D ein.)
Geben Sie im Feld Function Code ein C (für
Copy) oder ein M (für
Move) ein.
Drücken Sie EINGABE.
Je nachdem, welchen Funktionscode Sie eingegeben haben, erscheint entweder der Bildschirm Copy Programming Objects oder der Bildschirm Move Programming Objects.
Geben Sie im Feld Code ein A ein, um alle Arten
von Objektmodulen auszuwählen: katalogisierte Objekte und
Quellcode-(Source-)Objekte.
Überschreiben Sie im Feld Sel. List (Selection List) das
Y (Yes) mit einem N (No). Y ist die
Standardeinstellung.
Geben Sie im Feld Object Name einen Stern (*) ein, um alle Objektnamen auszuwählen. Dies ist die Standardeinstellung.
(Informationen zu gültigen Namensbereichen finden Sie unter Angabe eines Namensbereichs in der SYSMAIN Utility-Dokumentation.)
Geben Sie im Feld Source Library die Kennung (ID) der Library ein, die die zu kopierenden oder zu verschiebenden Objekte enthält.
Geben Sie im Feld Target Library die Kennung (ID) einer vorhandenen oder einer neuen Library ein, in die Sie die Objekte kopieren oder verschieben wollen.
Alle anderen Eingabefelder lassen Sie unverändert.
Drücken Sie EINGABE.
Alle Quellcode-(Source-)Objekte und katalogisierten Objekte werden von der
angegebenen Quell- in die Ziel-Library in der aktuellen Systemdatei kopiert bzw.
verschoben. Danach erscheint die Meldung Function completed
successfully (Funktion erfolgreich beendet).
Um alle Objekte mit Hilfe von Direktkommandos zu kopieren oder zu verschieben
Geben Sie eines der folgenden Kommandos ein:
SYSMAIN COPY ALL * FM old-library TO new-library
(kopiert Objekte)
bzw.
SYSMAIN MOVE ALL * FM old-library TO new-library
(verschiebt Objekte)
Dabei gibt ALL an, dass alle Quellcode-(Source-)Objekte und
katalogisierten Objekte ausgewählt werden sollen.
Der Stern (*) gibt an, dass alle Objektnamen ausgewählt werden sollen (siehe auch Angabe eines Namensbereichs in der SYSMAIN Utility-Dokumentation).
old-library ist die ID der Library, die die zu kopierenden oder zu verschiebenden Objekte enthält.
new-library ist die ID einer vorhandenen oder neuen Library (siehe auch Namenskonventionen für Libraries).
Drücken Sie EINGABE.
Wenn der Kopier- oder Verschiebevorgang erfolgreich beendet wurde, wird das
verarbeitete Kommando angezeigt, und die folgende Meldung erscheint:
Function completed successfully (Funktion erfolgreich
beendet).
Weitere Informationen zu den Funktionen, die Ihnen beim Dienstprogramm (Utility) SYSMAIN zur Verfügung stehen, zum Beispiel zum Ersetzen (Replace) und Umbenennen (Rename) von Objekten, finden Sie unter Beschreibung der Funktionen des Dienstprogramms SYSMAIN in der Debugger und Dienstprogramme-Dokumentation.
Eine Library wird in einer Natural-Umgebung nur so lange gepflegt, wie sie wenigstens ein Quellcode-(Source-)Objekt oder ein katalogisiertes Objekt enthält. Wenn Sie in einer Library alle Objekte löschen, ist diese Library nicht mehr vorhanden.
Sie können einzelne oder mehrere Objekte aus einer Library löschen, indem Sie das
Systemkommando LIST oder eine Natural-Utility benutzen.
Die folgende Anleitung enthält Beispiele dafür, wie Sie Objekte mit Hilfe des
Systemkommandos LIST aus der aktuellen Library löschen können
und wie Sie unter Verwendung der Menüfunktionen bzw. Kommandos der Utility SYSMAIN Objekte aus einer anderen Library löschen
können.
Um Objekte mit dem LIST-Kommando zu
löschen
Geben Sie folgendes Kommando ein:
LIST *
Der Stern (*) gibt an, dass alle Quellcode-(Source-)Objekte und katalogisierten Objekte aufgelistet werden sollen.
(siehe auch object-name-range im Abschnitt LIST in der Systemkommandos-Dokumentation).
Drücken Sie EINGABE.
Es erscheint der Bildschirm LIST Objects in a Library. Er enthält eine Liste der in der aktuellen Library in der aktuellen Systemdatei vorhandenen Quellcode-(Source-)Objekte und katalogisierten Objekte.
Geben Sie in der Spalte Cmd neben dem oder den gewünschten Objekt oder Objekten folgendes Zeilenkommando ein:
DE
Siehe auch den Beispielschirm weiter unten.
Drücken Sie EINGABE.
Es erscheint ein DELETE-Fenster (ähnlich dem unten gezeigten):
17:04:25 ***** NATURAL LIST COMMAND ***** 2010-03-01
User SAG - LIST Objects in a Library - Library TEST
Cmd Name Type S/C SM Version User ID Date Time
--- *________ *__________ *__ * *______ *________ *__________ *________
DE COPYLDA Co +---------------DELETE---------------+ 010-03-01 15:10:48
DE DEMOSPGM Su | | 010-02-05 19:00:08
DE EMP-L Lo | Please select one item: | 010-03-01 15:31:31
DE GDATEST Gl | | 010-03-01 15:23:37
__ HELPR1 He | _ Confirm each deletion | 010-03-01 15:13:12
__ LDATEST Lo | _ Delete without confirmation | 010-02-05 18:49:14
__ MAPTEST Ma | _ Exit (no deletion) | 010-03-01 15:14:16
__ PDASTUB Su | | 010-03-01 15:31:18
__ PDATEST Pa +------------------------------------+ 010-03-01 15:31:24
__ PGM01 Program S S SAG 2010-03-01 15:29:31
__ SUBPGM1 Subprogram S S SAG 2010-03-01 15:25:02
__ SUBRTEST Subroutine S/C R SAG 2010-03-01 15:30:12
__ TESTPGM Program S S SAG 2010-03-01 15:26:40
__ TEXTTEST Text S SAG 2010-03-01 15:05:23
Top of List.
Command ===>
Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
Help Print Exit Sort -- - + ++ > Canc |
Wählen Sie eine Option aus, indem Sie ein beliebiges Zeichen in dem Feld neben der gewünschten Option eingeben und EINGABE drücken:
Wenn Sie Confirm each deletion wählen, erscheint ein
Fenster zu jedem zu löschenden Objekt, in dem Sie jeweils den Namen des Objekts
eingeben müssen, um die Löschung zu bestätigen.
Wenn Sie Delete without confirmation wählen, erfolgt
die Löschung sofort.
Wenn Sie Exit wählen, erfolgt keine Löschung, und das
Fenster verschwindet.
Um Objekte mit SYSMAIN-Menüfunktionen zu löschen
Rufen Sie das Hauptmenü des Dienstprogramms (Utility) SYSMAIN auf.
Geben Sie im Feld Object Code ein A ein
(Standardeinstellung), um alle Typen von Objekten auszuwählen.
(Ausnahmen: Für Fehlermeldungen geben Sie ein E, für
Debug-Umgebungen ein D ein.)
Geben Sie im Feld Function Code ein D (Delete)
ein.
Drücken Sie EINGABE.
Der Bildschirm Delete Programming Objects erscheint.
Geben Sie im Feld Code ein A ein, um alle
Arten von Objekten auszuwählen: katalogisierte Objekte und
Quellcode-(Source-)Objekte.
Überschreiben Sie im Feld Sel. List (Selection List) das
Y (Yes) mit einem N (No). Y ist die
Standardeinstellung.
Geben Sie im Feld Object Name einen Stern (*) ein, um alle Objektnamen auszuwählen. Dies ist die Standardeinstellung.
(Bezüglich gültiger Namensbereiche siehe Angabe eines Namensbereichs in der SYSMAIN Utility-Dokumentation.)
Geben Sie im Feld Source Library die Kennung (ID) der Library ein, die Sie löschen möchten.
Die übrigen Eingabefelder lassen Sie unverändert.
Drücken Sie EINGABE.
In der angegebenen Library in der aktuellen Systemdatei werden alle
Quellcode-(Source-)Objekte und katalogisierten Objekte gelöscht, und es erscheint
die folgende Meldung: Function completed successfully
(Funktion erfolgreich ausgeführt).
Um alle Objekte mit einem SYSMAIN-Kommando zu löschen
Geben Sie folgendes Kommando ein:
SYSMAIN DELETE ALL * FM library-ID
Dabei gibt ALL an, dass alle Quellcode-(Source-)Objekte und
katalogisierten Objekte ausgewählt werden sollen.
Der Stern (*) gibt an, dass alle Objektnamen ausgewählt werden sollen (siehe auch Angabe eines Namensbereichs in der SYSMAIN Utility-Dokumentation).
library-ID ist die Kennung (ID) der Library, die die zu löschen Objekte enthält.
Drücken Sie EINGABE.
Wenn der Löschvorgang erfolgreich beendet wurde, wird das verarbeitete Kommando
angezeigt, und die folgende Meldung erscheint: Function completed
successfully (Funktion erfolgreich beendet).