IBM i Services werden ausgeliefert als SQL Views, User Defined Table Functions (UDTF) oder als Gespeicherte Prozeduren (Stored Procedures). Zahlreiche lauffähige Beispiele werden in IBM i ACS unter Run SQL Scripts bereitgestellt.
All diese Services können auch in Db2 Web Query eingesetzt und deren Ergebnisse verwendet werden. Dieser und die nächsten Artikel zu diesem Thema zeigen, wie das geht.
Was sind IBM i Services?
IBM i Services sind eine Sammlung von integrierten Dienstprogrammen, die in der IBM i-Betriebssystemumgebung ausgeführt werden. Sie bieten eine breite Palette von Funktionen, die es Entwicklern und Systemadministratoren ermöglichen, auf verschiedene Ressourcen und Informationen innerhalb des IBM i-Betriebssystems zuzugreifen und diese zu verwalten.
Zu den IBM i Services gehören beispielsweise die Datenbank-Services, die es Benutzern ermöglichen, auf Datenbanken innerhalb des IBM i-Betriebssystems zuzugreifen und diese zu verwalten. Andere IBM i Services umfassen Systemverwaltungsdienste wie das Überwachen von Systemressourcen, das Verwalten von Benutzerkonten und das Verwalten von Druckaufträgen.
IBM i Services können über verschiedene Schnittstellen aufgerufen werden, einschließlich der IBM i-Befehlszeilenschnittstelle und der SQL-Schnittstelle. Die Verwendung von IBM i Services kann die Effizienz und Produktivität von Systemadministratoren und Entwicklern erhöhen, indem sie schnell auf wichtige Ressourcen und Informationen zugreifen können, ohne zusätzliche Tools oder Programme installieren zu müssen.
IBM i Services – eine kurze Geschichte
IBM i Services in Form von SQL, SQL DDL und SQE dienen als Alternative zu IBM i APIs und CL-Befehlen.
- 2013: Beginn mit dem ersten IBM i Service – QSYS2.PTF_INFO
- Alternative zum CL-Befehl DSPPTF (Display PTF)
- Beweis, dass SQL Views zusammen mit SQL UDTFs (User Defined Table Functions) mit wenig Aufwand einen maßgeblichen Gegenwert liefern
- 2015: IBM Services „schlagen Wurzeln“
- Mit jedem Technology Refresh (TR) werden Erweiterungen ausgeliefert
- 2017: IBM i Services werden als Technologie für die Modernisierung eingesetzt
- Bringt die Leistung von SQL für SQL-basierte Reporting- und Überwachungs-Tools
- 2019: Es gibt dreizehn aktuelle Kategorien von IBM i Services
- Und es werden immer mehr
- 2023: Es gibt bereits neunzehn Kategorien
Unter den folgenden URLs finden Sie weitere detaillierte Informationen zu den IBM i Services:
IBM i Services – IBM Documentation
Inzwischen wurde auch die neue Version von IBM i ACS 1.1.9.2 angekündigt. Diese wird auch die zahlreichen neuen IBM i Services und die Erweiterungen bestehender Services enthalten (April 2023).
Welche Kategorien und Arten von Services gibt es?
Die Bibliothek QSYS2 enthält die meisten verfügbaren Services. Einer davon ist QSYS2.SERVICES_INFO. Dieser Service ist in Form einer Tabelle verfügbar, die alle Services von IBM i enthält. Jeder dort eingetragene Service enthält neben dem Namen des Services auch die Kategorie und den Objekttyp.
Mit den folgenden SQL-Anweisungen kann man sich eine Übersicht über die IBM i Services verschaffen:
— Liste aller Services
select * from qsys2.services_info order by Service_Category;
Jeder Service enthält auch ein Spalte „Example“ mit einer ausführbaren SQL-Anweisung. So enthält der Service LPRINTF als Stored Procedure folgende SQL-Anweisung in der Spalte Example:
— wieviele Services gibt es?
select count(*) from qsys2.services_info; — 201 (15.04.2023)
— Service SYSTOOLS.LPRINTF
— Description: Write a message to the joblog.
CALL SYSTOOLS.LPRINTF(‚This message sent on ‚ CONCAT
DAYOFWEEK(CURRENT DATE) CONCAT ‚ at ‚ CONCAT CURRENT TIME);
— in welchen Bibliotheken?
Select Listagg(Distinct Service_Schema_Name, ‚, ‚) Within Group (Order By Service_Schema_Name) as „Bibliotheken“
From Qsys2.Services_Info;
— welche Kategorien? –> wie in ACS Beispielen
Select Listagg(Distinct Service_Category, ‚, ‚) Within Group (Order By Service_Category) as „Kategorien“
From Qsys2.Services_Info;
Die Liste der Kategorien ist nahezu identisch mit der Liste in ACS Run SQL Scripts und Aus Beispielen für IBM i Services einfügen.
— wieviele Kategorien?
select count(distinct Service_Category) from Qsys2.Services_Info; — 19 (15.04.2023)
— welche Arten von Services?
Select Listagg(Distinct Sql_Object_Type, ‚, ‚) Within Group (Order By Sql_Object_Type) as „Objekt-Typen“
From Qsys2.Services_Info;
IBM i Services in Db2 Web Query
Ab der Version 2.2.1 stellt IBM mit der Auslieferung Db2 Web Query zahlreiche Beispiele bereit, bei denen IBM i Services verwendet werden. Diese sind zu finden in dem Hauptordner oder Arbeitsbereich mit der Bezeichnung IBM i Administration Samples.
Der Ordner enthält auch einen Report mit den verfügbaren Services: Services Available.
Bei Aufruf des Reports kann selektiert werden, ob die Liste alle oder nur Services von bestimmten Kategorien enthalten soll. Die Sortierung erfolgt nach Kategorie.
In diesem Report wir das Synonym qsys2_services_info verwendet. Der Service liegt als VIEW vor.
Den von IBM erstellten Report habe ich in meinen Ordner a_IBM i Services (allgemein) kopiert und dort mit dem InfoAssist bearbeitet. Zum einen habe ich zu dem bestehenden Report die Spalte SQL_OBJECT_TYPE hinzugefügt.
Nun sollte der Report nach SQL Objekt-Typ sortiert und danach auch auswählbar sein. Die Ausgabe sollte in Excel erfolgen. Dazu habe ich den bestehenden Report weiter verwendet und modifiziert und unter einem neuen Namen abgespeichert.
Damit ist eine Selektion für alle oder nur für bestimme Objekttypen möglich.
Die Ausgabe erfolgt nach Excel.
Tipp: Ändern Sie in keinem Fall die Originalprogramme von IBM, sondern kopieren Sie diese in in einen eigenen Ordner und modifizieren Sie diese.
Vorschau:
Im nächsten Artikel stelle ich Ihnen weitere Verwendungen von IBM i Services mit Db2 Web Query vor.
Bis dahin wünsche ich Ihnen weiterhin viel Spaß beim Vermehren Ihrer Fertigkeiten.
Der Autor Theo Bär schreibt regelmäßig für den TechKnowLetter.
Sie erreichen ihn unter
EDV-Beratung Theo Bär
Ringmauerweg 1
69250 Schönau
Tel.: (+49) 6228 912 630
E-Mail: [info@edv-baer.com]
Sechs Ausgaben des TechKnowLetters erhalten Sie hier für 88 Euro.