Wörterverzeichnisabschnitt

Wörterverzeichnisabschnitte enthalten Listen mit Daten, auf die Sie über einen Schlüssel zugreifen können. Beispielsweise können Sie eine Funktion zur Nachrichtenbehandlung erstellen, die ein Wörterverzeichnis mit aus einer Datenbank gelesenen Schlüsseln und Nachrichten enthält.

Ein Wörterverzeichnisabschnitt ist immer verfügbar und wird nicht von Ihnen definiert. Eine Variable, die auf einem Wörterverzeichnisabschnitt basiert, umfasst eine Reihe von Schlüsseln und die zugehörigen Werte. Sie können Schlüssel/Wert-Einträge während der Ausführung hinzufügen und entfernen. Verwenden Sie die Schlüsselnamen in einem Programm wie Feldnamen in einem Datensatz. Die Wörterverzeichnisvariable hält die Einträge in der Reihenfolge, in der Sie sie eingegeben haben.

Das folgende Beispiel zeigt die Deklaration einer Wörterverzeichnisvariablen:
  myRef Dictionary 
    {
      ID        = 5,
      lastName  = "Twain",
      firstName = "Mark"
    };

Wenn Sie die Einträge in die Deklaration einfügen, ist jeder Schlüsselname eine EGL-Kennung, die den EGL-Namenskonventionen entsprechen muss. Wenn Sie während der Ausführung Einträge hinzufügen, gibt Ihnen dies mehr Flexibilität; siehe "Dynamische Typen und dynamischer Zugriff".

Im Folgenden finden Sie Beispiele, bei denen neue Schlüssel/Wert-Paare zum Wörterverzeichnis hinzugefügt werden:
  myRef.age = 30;
  myRef["Credit"] = 700;
Wenn Sie versuchen, einen Schlüssel zuzuordnen, der bereits vorhanden ist, überschreiben Sie den vorhandenen Schlüssel/Wert-Eintrag. Die folgende Zuordnung ist zulässig und ersetzt "Twain" durch "Clemens":
  myRef.lastname = "Clemens";
Sie können Zuordnungen auch verwenden, um Daten abzurufen:
  lastname STRING
  age, credit INT;

  lastname = myRef.lastname; 
  age = myRef["age"];
  credit = myRef.credit;
Der Wert in einem Schlüssel/Wert-Eintrag hat den Typ ANY, d. h., Sie können unterschiedliche Arten von Informationen in ein Wörterverzeichnis stellen. Sie können alle folgenden Werte in einen Wörterverzeichniseintrag aufnehmen:
Beim Hinzufügen einer Variablen zu einem Wörterverzeichnis wird eine Kopie der Variablen zugeordnet. Betrachten Sie den folgenden Datensatzabschnitt:
  Record ExampleRecord
	   x int;
	 end

Im nächsten Beispiel wird eine Variable ExampleRecord in das Wörterverzeichnis gestellt. Anschließend wird der Wert der ursprünglichen Variable geändert:

  testValue int;

  myRecord ExampleRecord;

  // Legt einen Variablenwert fest und stellt ein Kopie
  // der Variablen in das Verzeichnis.
  myRecord.x = 4; 
  myRef Dictionary
  {
    theRecord = myRecord
  };
	
  // Nimmt einen neuen Wert in den ursprünglichen Datensatz auf.
  myRecord.x = 700;

  // Greift auf die Datensatzkopie des Wörterverzeichnisses Zugriff zu 
  // und ordnet testValue den Wert 4 zu.
  testValue = myRef.theRecord.x;
Beim Zuordnen eines Wörterverzeichnisses zu einem anderen wird der Zielinhalt durch den Quelleninhalt ersetzt und die Eigenschaften des Zielwörterverzeichnisses werden überschrieben (siehe Eigenschaften von Wörterverzeichnissen). Beispiel: Die bedingte Anweisung im folgenden Code ist 'true' (wahr):
  myRef Dictionary { age = 30 };

  newRef Dictionary { age = 50 };
  newRef = myRef;

  // Wird in 'true' aufgelöst.
  if (newRef.age == 30)
    ;
  end

Eigenschaften, die Sie in der Deklaration angeben können, beeinflussen, wie das Wörterverzeichnis verarbeitet wird; siehe "Wörterverzeichniseigenschaften". Wörterverzeichnisspezifische Funktionen stellen Daten und Services für Ihren Code zur Verfügung; siehe "Wörterverzeichnisfunktionen".

Kompatibilität

Tabelle 1. Überlegungen zur Kompatibilität für Wörterbuchabschnitte
Plattform Problem
COBOL-Generierung Der Wörterverzeichnisabschnitt ist ungültig.

Feedback