Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Schnittstellenformate und Betriebsmodi

&pagelevel(4)&pagelevel

Für die IEDTGLE-Schnittstelle wird ein neues Format angeboten.

Damit gibt es zwei Formate:

  • V16-Format: identisch mit der IEDTGLE-Schnittstelle des EDT V16.6B

  • V17-Format: neues Format mit Erweiterungen für Unicode

Beim Generieren der Kontrollblöcke für die IEDTGLE-Schnittstelle kann der Benutzer die gewünschte Version wählen (siehe Abschnitt „Generierung und Aufbau der Kontrollblöcke“).

Grundsätzlich gilt:

  • Die IEDTGLE-Schnittstelle (V16-Format) wird nur vom Kompatibilitäts-Modus in vollem Umfang unterstützt

  • Die IEDTGLE-Schnittstelle (V17-Format) wird nur vom Unicode-Modus in vollem Umfang unterstützt.

Um Anwendungen schreiben zu können, die die IEDTGLE-Schnittstelle nutzen und sowohl mit dem Kompatibilitäts-Modus als auch mit dem Unicode-Modus laufen können, gibt es einen neuen Verbindungsmodul, der die Schnittstellen umsetzt. Damit ist es auch möglich, dass eine Anwendung, die mit der IEDTGLE-Schnittstelle des EDT V16.6B arbeitet, ohne Umstellung auch im Unicode-Modus des EDT V17.0A läuft, wenn sie nur solche Funktionen nutzt, die auch der Unicode-Modus unterstützt.

Falls noch kein EDT läuft, oder bei laufendem EDT alle Arbeitsdateien leer sind, wird bei Aufruf der IEDTCMD-Schnittstelle der passende Betriebsmodus aktiviert: Kompatibilitäts-Modus für V16-Format, Unicode-Modus für V17-Format. Sobald eine explizite Umschaltung des Betriebsmodus mit der @MODE- oder @CODENAME-Anweisung vorgenommen wurde, tritt dieser Automatismus außer Kraft. Nachfolgende Moduswechsel müssen dann immer explizit vorgenommen werden. Ebenso findet niemals ein impliziter Moduswechsel aus einer Anwenderroutine heraus statt. Andernfalls ginge der Rücksprung aus der Anwenderroutine in den EDT ins Leere.

Man beachte, dass ein implizites Umschalten des Betriebsmodus durch Wechsel der Schnittstellenversion nur über die IEDTCMD-Schnittstelle möglich ist. Da der EDT sich nach dem Umschalten im nicht initialisierten Zustand befindet, würden alle Funktionsaufrufe, die einen initialisierten EDT voraussetzen, zum Fehler führen.

Generell empfiehlt sich, innerhalb eines Programms stets mit dem gleichen Format der Schnittstelle (V17-Format oder V16-Format) zu arbeiten und eventuell notwendige Wechsel des Betriebsmodus explizit (via @MODE-Anweisung) vorzunehmen.

Falls der EDT bereits läuft und ein Wechsel des Betriebsmodus nicht möglich ist oder aufgrund eines vorangegangenen expliziten Wechsels nicht erfolgt (s.o.), wird das Schnittstellenformat umgesetzt:

  • Ein Aufruf der IEDTGLE-Schnittstelle im V16-Format wird auf V17-Format umgesetzt, wenn der EDT im Unicode-Modus läuft.

  • Ein Aufruf der IEDTGLE-Schnittstelle im V17-Format wird auf V16-Format umgesetzt, wenn der EDT im Kompatibilitäts-Modus läuft.

Diese Umsetzung ist nur möglich, wenn die genutzte Funktion vom gerade laufenden Betriebsmodus des EDT unterstützt wird. Beispielsweise kann das V16-Format des AMCB nicht in das V17-Format umgesetzt werden, wenn Locate-Mode verlangt wird. In diesem Fall wird der Returncode EAMPAERR/EAMPA08 geliefert.

Bei Nutzung der IEDTGLE-Schnittstelle im V16-Format gilt:

  • Der Locate-Mode kann nicht umgesetzt werden.

  • Beim Lesen des globalen Status (Funktion IEDTGET mit Pseudo-Arbeitsdatei ’G’),wird das im V17-Format entfallene Feld für den global eingestellten Zeichensatz nur dann mit einem Wert ungleich Leerzeichen versorgt, wenn in allen nicht leeren Arbeitsdateien der gleiche Zeichensatz eingestellt ist.

Für die IEDTGLE-Schnittstelle im V17-Format ist festgelegt, welche Teilmenge ins V16-Format umgesetzt werden kann (kompatibles V17-Format). Dies wird bei der Beschreibung jeweils angegeben.

Der volle Umfang des V17-Formats (erweitertes V17-Format) kann nur mit dem Unicode-Modus verwendet werden.

Um sicherzustellen, dass nicht versehentlich Erweiterungen benutzt werden, kann an der Schnittstelle im V17-Format angegeben werden, dass nur das kompatible Format genutzt werden soll (durch Setzen des Flag EGLCOMP). In diesem Fall wird die Nutzung von Funktionen des erweiterten Formates mit Returncode abgewiesen (auch im Unicode-Modus).

Bei Verwendung des erweiterten Formats (Flag EGLCOMP nicht gesetzt) wird zudem verhindert, dass eine automatische Umsetzung des V17-Formats in das V16-Format stattfindet, auch wenn dies möglich wäre. Man beachte aber, dass das Flag ein Umsetz-Flag und kein Umschalt-Flag ist. D.h. auch mit kompatiblem Format findet ggf. ein Umschalten in den Uni-code-Modus statt, wenn dies möglich ist.

Das V16-Format ist identisch mit dem Format der IEDTGLE-Schnittstelle des EDT V16.6B. Daher kann eine Anwendung, die das kompatible V17-Format nutzt, auch mit EDT V16.6B laufen, wenn sie den Verbindungsmodul IEDTGLE des EDT V17.0A eingebunden hat.

Die Übersicht zeigt, welche Kombinationen möglich sind:

EDT V17 nicht
vorhanden

EDT V17 vorhan-
den-Umschalten
erlaubt und Aufruf
über IEDTCMD

EDT V17 vorhan-
den-Kompatibilitätsmodus
aktiv,
Umschalten verboten


EDT V17 vorhan-
den-Unicode-Modus
aktiv, Umschalten
verboten

Aufruf über
IEDTGLE V16
Schnittstelle

Wie bisher

Kompatibilitäts-
Modus einstellen

Keine Sonderbehandlung
nötig

Umsetzen auf V17
Schnittstelle-wenn
nicht möglich: Fehler


Aufruf über
IEDTGLE V17
Schnittstelle
(kompatibles Format)

Umsetzen auf V16
Schnittstelle

Unicode-Modus
einstellen

Umsetzen auf V16
Schnittstelle

Keine Sonderbehandlung
nötig

Aufruf über
IEDTGLE V17
Schnittstelle (erweitertes
Format)

Fehler

Unicode-Modus
einstellen

Fehler

Keine Sonderbehandlung
nötig

Aufruf über
L-Modus Schnittstelle


Wie bisher

Kompatibilitäts-
Modus einstellen

Keine Sonderbehandlung
nötig

Fehler