Bibliotheksliste

aus AS400wiki, der freien Wissensdatenbank

Die Bibliotheksliste ist so etwas ähnliches wie der Suchpfad unter anderen Betriebssystemen, mit gewissen Abweichungen.

Zunächst organisiert OS/400 die meisten Objekte in Bibliotheken. Nun kann man mit einer Bibliotheksliste definieren, in welchen Bibliotheken ein Objekt gesucht werden soll, wenn es nicht explizit mit einer Bibliothek angesprochen wird. Das System sucht die Objekte immer in der Reihenfolge, wie die Bibliotheken in dieser Liste stehen.

Hinweis: Jeder Job auf dem System hat seine eigene Bibliotheksliste! Wenn ein Benutzer einen neuen Job startet, erhält dieser die zum Startzeitpunkt gültige Bibliotheksliste, wenn nicht anders definiert. Und jeder Job, der ohne vorgegebene Liste startet, erhält eine vorgegebene Bibliotheksliste, die der Administrator definiert hat.

Beispiel:

Hier gibt man explizit die Bibliothek MEINELIB an und sagt, ich will mit dem Objekt DATEI1 darin arbeiten.

Nun gebe ich keine Bibliothek an, und das System sucht nun in allen Bibliotheken in der Bibliotheksliste des aktuellen Jobs nach dem Objekt DATEI1 und zeigt das Ergebnis an - es können also mehrere Objekte angezeigt werden.

Der Hintergrund ist vielschichtig, das Ergebnis sowieso. Es gibt folgende Szenarien:

Inhaltsverzeichnis

Programmaufrufe

In der Regel liegen alle Systemprogramme in der Bibliothek QSYS. Wenn der Administrator eigene Programme erstellt, z.B. für den Aufruf einer Anwendung, legt man diese nicht dorthin, sondern in eine eigene Bibliothek; also sollte diese in die Bibliotheksliste aufgenommen werden.

Flexible Datenbank

Oft hat ein Anwendungsprogramm alle nötigen Dateien in einer Bibliothek, z.B. ECHTDATEN. Will man nun eine Testumgebung schaffen, kopiert man diese gesamte Bibliothek in eine neue, die man TESTDATEN nennt. Nun ersetzt man einfach in der Bibliotheksliste den Eintrag für ECHTDATEN durch TESTDATEN und ruft die Anwendung neu auf, und man arbeitet in der Testumgebung. Ausnahme: wenn ein Programmierer explizit eine Bibliothek für die Arbeit mit einer Datei aufruft, geht das natürlich nicht. Aber sowas sollte man nur in speziellen Situationen tun.

Temporäre Programmupdates

Nehmen wir an, wir haben in der Bibliotheksliste folgendes (in dieser Reihenfolge):

TESTPGM, PROGRAMME und DATEN

Nun stehen in DATEN unsere Datenbanken, in PROGRAMME die Anwendungsprogramme und TESTPGM ist leer. Der Anwender ruft zum Beispiel das Programm RECH01 auf, welches mit Rechnungen arbeitet. Nun hat dieses Programm vielleicht einen Fehler, und der Programmierer erstellt eine neue Version. Er könnte diese in die Bibliothek PROGRAMME stellen, aber das klappt vielleicht nicht, da andere Anwender mit diesem Programm arbeiten und man ihnen es nicht unter dem Hintern weg löschen und neu erstellen kann. Also wird die neue Programmversion in TESTPGM abgelegt, und jeder, der RECH01 neu aufruft, arbeitet auf Grund dieser Bibliotheksliste mit der neueren Version. Wenn sich diese Version bewährt, schiebt man dieses Programm abends in die Bibliothek PROGRAMME, andernfalls löscht man sie aus TESTPGM und alle arbeiten wieder mit der vorigen Version.

Befehle

Folgende Befehle dienen der Arbeit mit Bibliothekslisten:

  • ADDLIBLE - einen Eintrag der Bibliotheksliste hinzufügen
  • DSPLIBL - aktuelle Bibliotheksliste anzeigen
  • EDTLIBL - aktuelle Bibliotheksliste bearbeiten
  • RMVLIBLE - einen Eintrag aus der Bibliotheksliste entfernen

Systemwerte

Folgende Systemwerte definieren generelle Bibliothekslisten:

'Persönliche Werkzeuge