++ Ressourcenzuordnungsabschnitte

++ Beim Ressourcenzuordnungsabschnitt handelt es sich um eine Gruppe von Zuordnungselementen mit den folgenden Kenndaten:
++ Sie können sich ein Zuordnungselement als eine Gruppe von Eigenschaften und Werten in einer hierarchischen Abhängigkeit vorstellen, wie im folgenden Beispiel dargestellt:
  // ein Zuordnungselement
  property:  fileName
  value:     myFile01

    // ein Eintrag mit mehreren Eigenschaften
    property:  system
    value:     aix
    property:  fileType
    value:     spool
    property:  systemName
    value:     employee

    // ein zweiter Eintrag
    property:  system
    value:     win
    property:  fileType
    value:     seqws
    property:  systemName
    value:     c:\myProduct\myFile.txt
++ Im folgenden Beispiel bezieht sich der Name der logischen Datei "myFile01" auf diese physischen Dateien:

++ Bei dem Dateinamen muss es sich um einen gültigen Namen, einen Stern oder den Anfang eines gültigen Namens gefolgt von einem Stern handeln. ++ Der Stern steht als Platzhalter für mindestens ein Zeichen und dient zum Identifizieren von Namensgruppen. ++ Ein Zuordnungselement, das beispielsweise den folgenden Wert für einen Dateinamen enthält, gilt für alle Dateinamen, die mit den Buchstaben myFile beginnen:

  myFile*

++ Wenn mehrere Elemente für einen in Ihren Programmen verwendeten Dateinamen gültig sind, verwendet EGL das erste gültige Element. ++ Beispielsweise kann eine Gruppe von Zuordnungselementen durch die folgenden Werte für einen Dateinamen in der folgenden Reihenfolge gekennzeichnet sein:

  myFile
  myFile*
  *

++ Beachten Sie das Element, das dem letzten Wert zugeordnet ist. Hier ist der Wert des Dateinamens nur ein Stern. ++ Solch ein Element könnte auf jede Datei angewendet werden. Bezieht es sich jedoch auf eine bestimmte Datei, ist das letzte Element nur anwendbar, wenn die vorherigen Elemente es nicht sind. ++ Wenn Ihr Programm beispielsweise auf "myFile01" verweist, ersetzt die im zweiten Element angegebene Verbindung das dritte Element, um festzulegen, wie der Verweis verarbeitet wird.

++ Bei der Generierung wählt EGL ein bestimmtes Zuordnungselement zusammen mit dem ersten geeigneten Eintrag aus. ++ Ein Eintrag ist in den folgenden Fällen geeignet:

++ Wenn Sie beispielsweise eine Generierung für AIX durchführen, verwendet EGL den ersten Eintrag, der auf aix oder any verweist.

Dateitypen

++ Ein Dateityp bestimmt, welche Eigenschaften für einen bestimmten Eintrag in einem Zuordnungselement erforderlich sind. In der nächsten Tabelle sind die EGL-Dateitypen beschrieben.

Dateityp Beschreibung
gsam ++ Eine serielle oder eine Druckdatei, die einer GSAM-Datenbank zugeordnet ist.
ibmcobol ++ Eine serielle, indexiert oder relative Datei. ibmcobol wird für die folgenden Codetypen unterstützt:
  • Den EGL-Debugger auf einer Windows-Plattform.
  • ++ Mit EGL generierter Java™-Code, der auf einer Windows- oder AIX-Plattform ausgeführt wird, um Zugriff auf ferne VSAM-Dateien unter z/OS bereitzustellen.
  • ++ EGL-generierten Java-Code, der Zugriff auf VSAM-Dateien bereitstellt, die unter AIX gespeichert sind.

ibmcobol wird weder vom EGL-Debugger unter Linux noch für EGL-generierten Java-Code unterstützt, der für alle Laufzeitumgebungen außer Windows oder AIX generiert wird.

mmsgq Eine serielle Datei, die einer Nachrichtenwarteschlange mit mehreren Segmenten zugeordnet ist.
mq ++ Eine WebSphere MQ-Nachrichtenwarteschlange. Details zur Verwendung einer solchen Warteschlange finden Sie in Ihrer WebSphere MQ-Dokumentation.
seq ++ Eine serielle Datei, auf die ein COBOL-Programm zugreift, das JCL-gesteuert unter z/OS (nicht unter CICS) oder unter iSeries ausgeführt wird. ++ Auf diesen Dateityp greifen die COBOL-Anweisungen READ/WRITE zu. ### Unter z/OS erfolgt der Zugriff auf den Datensatz schneller das data set is faster than if you specify seqrs as the file type. ++ Bei Angabe von "seq" gelten jedoch die folgenden Einschränkungen:
  • Der Systemname muss ein DD-Name sein, der mit einem DD-Namen in der JCL übereinstimmt.
  • Ihr Code darf den Systemnamen nicht zur Laufzeit ändern.
seqrs ++ Eine serielle Datei, auf die ein COBOL-Programm zugreift, das JCL-gesteuert unter z/OS (nicht unter CICS) ausgeführt wird. ++ Auf diesen Dateityp greift die EGL-Laufzeit zu. Der Zugriff auf die Datei ist langsamer als bei der Angabe von "seq" als Dateityp. Sie verfügen allerdings über eine größere Flexibilität:
  • Wenn Sie den Systemnamen angeben, können Sie entweder einen DD-Namen oder den Namen eines Datensatzes angeben. Details finden Sie im Abschnitt "Zuordnungselemente"
  • Sie können den Systemnamen zur Laufzeit überschreiben, indem Sie den Wert in der berichtsspezifischen Variable resourceAssociation (bei Dateien) oder in der Systemvariable converseVar.printerAssociation (bei Druckausgaben) ändern.
seqws ++ Eine serielle Datei, auf die ein EGL-generiertes Java-Programm zugreift.
smsgq ++ Eine serielle oder eine Druckdatei mit einer Nachrichtenwarteschlange mit einem einzigen Segment.
spool ++ Eine Spooldatei unter AIX, CICS, iSeries COBOL oder Linux.
tempaux ++ Eine temporäre CICS-Hilfsspeicherwarteschlange.
tempmain ++ Ein temporäre CICS-Hauptspeicherwarteschlange.
transient ++ Eine CICS-Warteschlange mit transienten Daten.
vsam ++ Unter IBM® i ist eine Datei vom Typ vsam eine emulierte VSAM-Datei, auf die ein EGL-generiertes COBOL-Programm zugreift.
++ Unter einem z/OS-Batch ist die Datei ein VSAM-Datensatz, auf den ein EGL-generiertes COBOL-Programm zugreift. ++ Der Zugriff auf den Datensatz erfolgt über die COBOL-Anweisungen READ/WRITE. Es ist ein schnellerer Zugriff als bei Angabe von vsamrs als Dateityp möglich. Wenn vsam angegeben wird, gelten die folgenden Einschränkungen jedoch nicht:
  • Der Systemname muss ein DD-Name sein, der mit einem DD-Namen in der JCL übereinstimmt.
  • Ihr Code darf den Systemnamen nicht zur Laufzeit ändern.
  • ++ Ein indizierte Datensatz, der dem Dateinamen zugeordnet ist, darf nicht in einer Anweisung vom Typ get previous verwendet werden.
vsam wird für IMS/VS nicht unterstützt.
++ Unter CICS ist eine Datei vom Typ vsam ein VSAM-Datensatz, auf den ein EGL-generiertes COBOL-Programm zugreift. ++ Der Zugriff auf den Datensatz erfolgt über CICS-Befehle vom Typ "EXEC". Unter CICS können Sie wie folgt vorgehen:
  • ++ Geben Sie beim Angeben des Systemnamens den CICS-Namen für Dateisteuertabellen an.
  • Sie können den Systemnamen zur Laufzeit überschreiben, indem Sie den Wert in der berichtspezifischen Variable resourceAssociation ändern.
  • ++ Ein indizierter Datensatz, der dem Dateinamen zugeordnet ist, kann in einer Anweisung vom Typ get previous verwendet werden.

vsam wird auch für die folgenden Codetypen unterstützt:

  • ++ Ferner VSAM-Zugriff über den EGL-Debugger auf der Windows- oder Linux-Plattform.
  • ++ Ferner VSAM-Zugriff über ein beliebiges EGL-generiertes Java-Programm.
vsamrs ++ Bei einem z/OS-Batch und einer IMS-BMP ist der Dateityp vsam ein VSAM-Datensatz, auf den ein EGL-generiertes COBOL-Programm zugreift. Der Zugriff auf den Datensatz erfolgt über die EGL-Laufzeit. ++ Der Dateizugriff ist langsamer als bei Angabe des Dateityps "vsam", allerdings verfügen Sie über eine größere Flexibilität:
  • Wenn Sie den Systemnamen angeben, können Sie entweder einen DD-Namen oder den Namen eines Datensatzes angeben. Details finden Sie im Abschnitt "Zuordnungselemente".
  • ++ Sie können den Systemnamen zur Laufzeit überschreiben, indem Sie den Wert in der berichtsspezifischen Variable resourceAssociation (bei Dateien) ändern.
  • ++ Ein indizierter Datensatz, der dem Dateinamen zugeordnet ist, kann in einer Anweisung vom Typ get previous verwendet werden.

Gültige Dateitypen der Ziellaufzeitumgebung

++ In der folgenden Tabelle sind die gültigen Dateitypen beschrieben, die je nach Ziellaufzeitumgebung zur Verfügung stehen. ++ Darüber hinaus werden die der Ziellaufzeitumgebung und dem Datensatztyp entsprechenden Standarddateitypen aufgeführt.
Ziellaufzeitumgebung IndexedRecord RelativeRecord SerialRecord PrintForm
Java-Generierung
  • ibmcobol *
  • vsam
  • ibmcobol *
  • vsam
  • seqws*
  • ibmcobol *
  • vsam
  • seqws (1)
IMS/VS Nicht vorhanden Nicht vorhanden
  • smsgq*
  • mmsgq
  • smsgq*
IMS BMP
  • vsam
  • vsamrs*
  • vsam
  • vsamrs*
  • seq
  • seqrs*
  • vsam
  • vsamrs
  • gsam
  • smsgq
  • mmsgq
  • seq
  • seqrs*
  • smsgq
  • gsam
iSeries COBOL
  • vsam*
  • vsam*
  • seq*
  • vsam
  • seq*
  • spool
z/OS batch
  • vsam
  • vsamrs*
  • vsam
  • vsamrs*
  • seq
  • seqrs*
  • vsam
  • vsamrs
  • seq
  • seqrs*
  • gsam
z/OS CICS
  • vsam*
  • tempaux
  • tempmain
  • vsam*
  • spool
  • tempaux
  • tempmain
  • transient
  • vsam*
  • spool
  • transient*
Debug
  • ibmcobol*
  • vsam
  • ibmcobol*
  • vsam
  • ibmcobol
  • seqws
  • vsam
  • seqws (1)
++ Die folgenden Hinweise gelten für die obige Tabelle:
*
++ Gibt den Standarddateityp an.
(1)
++ Standardmäßig senden Druckformulare in Java und Debug die Ausgabe an einen Drucker und nicht an eine Datei. Es wird keine Ressourcenzuordnung verwendet.

Feedback