Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

10.11.1978 - 

RPG-Problemlöser aus Italien:

"Fremder Sort" bringt 30 Prozent Zeitersparnis

10.11.1978

TURIN - Es gibt sicher nicht mehr viele EDV-Anwender, die in RPG programmieren. Noch weniger allerdings haben es geschafft, trotz RPG ein Sortierpaket zum Laufen zu bringen. Giuseppe Borca, EDV-Chef bei Burgo Scott in Turin, einer Tochter der Scott Paper Company, ist einer von ihnen: "RPG hat ohne Zweifel seine guten Seiten. Aber leider nicht die Fähigkeit, Sortierprogramme laufen zu lassen. Es gibt normalerweise keine Logik oder interne Schleife zur eingeschränkten Formulierung der Sortiertabellen." Borca, ein Systemplaner und vier Programmierer konnten auf ihrer IBM 370/125 dieses Problem lösen und sind gerne bereit, anderen RPG-Fans in Europa die zur Bearbeitung von Sortieraufgaben in seinen RPG-Programmen erstellten Subroutinen zur Verfügung zu stellen - ohne jede Verpflichtung.

Heute läuft in Turin das Sortier-Paket "Ca-Sort" der Computer Associates unter SRAM (Sort-Zugriffs-Methode). Um "Calls" nach SRAM zu ermöglichen, mußten die Turiner eine Subroutine in Basic-Assembler entwerfen und einbauen, die als Interface zum RPG-Programm Dient.

Die Scott-Anwendungen laufen auf einer kleinen aber - so Borca - "gut organisierten" EDV-Anlage, einer /125 DOS/VS. Sie verfügt über 192 K Speicher, zudem Memores-3340-Plattenspeicher und drei Bandeinheiten. Als Systemsoftware hat Borca Power und Total installiert.

Schon seit einigen Jahren suchten die Scott-EDV-Mitarbeiter nach einem Sort, der sich auf einfache und unkomplizierte Weise durch ein Programm aufrufen läßt Denn: "Meist sind eine Reihe von Bearbeitungsschritten erforderlich" - so Borca - "um nur eine einzige Angabe zu erhalten", wie etwa:

- Bearbeitung von Dateien, um verwandtes Material zusammenzustellen,

- Errechnen und Ausgeben einer Zusammenfassungsdatei,

- Sortieren der Datei,

- Lesen der sortierten Datei und Ausgabe.

Dazu Borca: "Es ist oft schwierig und manchmal sogar unmöglich, Eingabedateien in der gewünschten Sequenz zu bearbeiten, weil die Struktur der Dateien Beschränkungen auferlegt - speziell bei einem Datenbanksystem."

Als Folge sieht Borca die unvermeidbar höhere Zahl von Programmen und folglich einen vermehrten Zeitaufwand für das Austesten Probleme ergaben sich auch - bedingt durch den "kleinen" Rechner -, weil für die Zwischendateien mehr Platz auf den Speichereinheiten erforderlich wurde und die CPU-Zeit für die zusätzlichen Jobs knapp wurde

Borca hoffte, durch ein geeignetes Sortiersystem "ad hoc" erstellte Sätze diesem Sort zuzuleiten; sie sollten aus Eingabedaten stammen, die in jeder Folge zu lesen waren. Borca: "Wir wollten eine Mehrfachsortiermethode finden, die sich leicht in ein Programm einbauen läßt."

Wie er das schließlich erreicht hat, beschreibt er mit den wesentlichen Schritten im RPG-Programm:

1. Definition des Interface-Feldes zwischen dem Programm und der Subroutine:

ULBL CASWOx L= 5 DLBL-Name des Arbeitsbereiches

ULBL CASLUx L= 3 Arbeitsbereich (Logical Unit)

ULBL CASRLx L= 3 (packed) Satzlänge

ULBL CASCOx L= 3 (packed) Platz im Kernspeicher

ULBL CASOFx L= 100 (max) Sortierfelder

ULBL CASEFx L= 2. Anzeichnen für Ende des Sorts

2. Definition der Nummernfelder:

Die Nummernfelder müssen zusammenhängend definiert werden, damit (...) auch den Speicher zusammenhängend zuweist. Kennsätze können (mit Ausnahme des ersten) frei gewählt werden, der "ULBL CASREx" muß sein, wie von der Subroutine gefordert.

3. Aufstellen der Sortierparameter (nur einmal zu Beginn des Jobs) nach den SRAM-Access-Method-Spezifikationen.

4. Bearbeiten der Eingabe, Bestimmen der internen Satzlänge für den Sort und das eigentliche Übergeben der Sätze an den Sort mit: "EXIT CASORx".

5. Lesen und Bearbeiten der sortierten Sätze am Ende der Eingabe. Dies geschieht mit einer "Schleife": "Informieren der Subroutine, daß Eingabe beendet ist und daß Rückrufphase begonnen hat.

Ende des Sorts wird von Subroutine an Programm zurückgegeben. Ende des Sorts. Von Sort zurückgegebenen. Satz bearbeiten. "

"Wir haben drei. Subroutinen geschrieben" kommentiert Giuseppe Borca, "mit denen wir bis zu drei Sorts parallel und gleichzeitig innerhalb des selben Programms laufen lassen können. Jede Subroutine ist mit den anderen identisch - mit Ausnahme der Kennsätze der Interface-Felder, die mit den Ziffern 1, 2 und 3 aufhören anstelle der angegebenen x."

Seit der Implementierung dieser Methode haben Borca und sein Team "mindestens 30 Prozent der Zeit für Programmierung und Austesten eingespart."

Wer weitere Informationen möchte kann sich direkt mit Giuseppe Borca bei Burgo Scott, C.V. Sovietica 121, I-10134 Turin, informieren.