MIDRANGE 03/2016 - page 38

38
TECHNIK & INTEGRATION
MIDRANGE
MAGAZIN · 03/2016
CLICK TO
Der vollständige Artikel steht Abonnenten
des TechKnowLetters online zur Verfügung.
D-Bestimmungen – Teil 4
Datenstrukturen
Über Datenstrukturen können zusammengehörende Informationen gruppiert und en bloc
definiert werden. Ebenso ermöglichen es Datenstrukturen, zusammenhängende Inhalte
in einzelne Felder zu splitten. Aus diesem Grund stellen sie einen wichtigen Bestandteil
der RPG-Programmierung dar. In diesem Artikel wird gezeigt, wie Datenstrukturen im
Free-Format definiert werden.
U
m Datenstrukturen im Free-For-
mat zu definieren, werden insge-
samt drei Operation-Codes zur Verfü-
gung gestellt:
ó
DCL-DS Beginn der Datenstruktur
Entspricht der Fix-Format-Zeile mit
dem Definitionstypen DS in Position
24 bis 25
ó
DCL-SUBF Definition von Daten-
strukturunterfeldern
Die Angabe des Schlüsselwortes DCL-
SUBF ist optional, das heißt, Unterfel-
der können direkt durch Angabe des
Namens, des Datentypen und ggf. der
Schlüsselworte (zum Beispiel INZ) de-
finiert werden.
ó
END-DS
Datenstrukturen, bei denen
explizit Datenstrukturunterfelder de-
finiert wurden, müssen mit dem Ope-
ration-Code END-DS beendet werden.
Im Fix-Format gibt es keine Entspre-
chung für diesen Operation-Code.
Operation-Code DCL-DS
Der Operation-Code DCL-DS kennzeich-
net den Beginn einer Datenstruktur
und entspricht der Fix-Format-Zeile mit
dem Definitionstypen DS in Position 24
bis 25.
Wie alle Free-Format-Anweisungen
wird auch der Operation-Code DCL-DS
mit einem Semikolon (;) beendet.
Der Datenstrukturname muss un-
mittelbar auf den Operation-Code fol-
gen. Für nicht benannte Datenstruktu-
ren ist die Angabe des Sonderwerts *N
anstatt des Namens erforderlich.
Alle Schlüsselworte, die im Fix-For-
mat in der DS-Zeile angegeben werden
konnten, zum Beispiel INZ, QUALI-
FIED, DIM und TEMPLATE, sind auch
in der Free-Format-Codierung zulässig.
Sofern eine Datenstruktur mit einer
fixen Länge definiert werden soll, muss
das Schlüsselwort LEN(Länge) verwen-
det werden.
DCL-DS
DatenstrukturName
SchlüsselWorte;
//Datenstruktur-Unterfelder
END-DS;
//Datenstruktur-Ende
DCL-DS
*N
SchlüsselWorte;
//Datenstruktur-Unterfelder
END-DS;
//Datenstruktur-Ende
Beispiel 1: Syntax Operation-Code DCL-DS –
Beginn Datenstruktur
Operation-Code END-DS
Im Free-Format erfordern alle Daten-
strukturen, bei denen explizit Daten-
strukturunterfelder angelegt werden,
eine Ende-Anweisung in Form des
Operation-Codes END-DS. In der Fix-
Format-Codierung ist für diesen Ope-
ration-Code keine Entsprechung zu
finden.
Wie alle Free-Format-Anweisungen
wird auch der Operation-Code END-DS
mit einem Semikolon beendet.
Das Codebeispiel 2 zeigt die Syntax
für den Operation-Code END-DS.
DCL-DS
DatenstrukturName
SchlüsselWorte;
//Datenstruktur-Unterfelder
END-DS
DatenstrukturName;
Beispiel 2: Syntax Operation-Code END-DS –
Ende Datenstruktur
Bei der Verwendung des Operation-
Codes END-DS sind einige Besonder-
heiten zu berücksichtigen:
ó
Die Wiederholung des Datenstruktur-
namens in der END-DS-Anweisung
ist für benannte Datenstrukturen op-
tional.
Im Beispiel 3 wird je eine benannte
Datenstruktur für ein numerisches
Datum und eine numerische Zeit de-
finiert. In der Ende-Anweisung der
Datumsdatenstruktur (1) wird der Da-
tenstrukturname erneut angegeben,
während bei der Zeitdatenstruktur
(2) auf eine Wiederholung verzichtet
wurde.
DCL-DS
DSDatumNum
Inz
;
Jahr
Zoned
(
4
);
Monat
Zoned
(
2
);
Tag
Zoned
(
2
);
End-Ds
DSDatumNum; (1)
DCL-DS
DSStdMin Inz;
Stunde
Zoned
(
4
);
Minute
Zoned
(
2
);
Sekunde
Zoned
(
2
);
End-Ds
; (2)
Beispiel 3: Datenstruktur mit und ohne Wieder-
holung des Namens im Ende-Statement
Birgitta Hauser
ó
1...,28,29,30,31,32,33,34,35,36,37 39,40,41,42,43,44,45,46,47,48,...52
Powered by FlippingBook