v60ExceptionCompatibility

Wird die Eigenschaft 'v60ExceptionCompatibility' auf YES gesetzt, hat dies folgende Auswirkungen:
  • Sie können nur einen einzigen onException-Block in einem try-Block verwenden, und es kann kein Ausnahmebedingungstyp angegeben werden.
  • Mithilfe der Variablen 'sysLib.currentException' können Sie die Art des Problems bestimmen. Diese Variable ist nur im V6-Kompatibilitätsmodus verfügbar.
  • Ausnahmebedingungen werden nicht über die Grenzen des Bereichs hinaus weitergegeben, in dem sie auftreten. Tritt beispielsweise ein Fehler innerhalb einer von einem try-Block aufgerufenen Funktion auf, erhält der try-Block niemals einen Hinweis darauf, dass die Ausnahmebedingung ausgelöst wurde.
  • Permanente E/A-Fehler führen zur Beendigung der Anwendung, sofern Sie nicht die Programmeigenschaft 'handleHardIOErrors' auf YES setzen. In diesem Fall löst EGL eine Ausnahmebedingung aus, damit das Programm den permanenten E/A-Fehler selbst bearbeiten kann.
  • Sie können keine eigenen Ausnahmebedingungen auslösen.

EGL setzt 'v60ExceptionCompatibility' automatisch auf YES, wenn Code aus EGL Version 6 oder VisualAge Generator migriert wird. Für neuen Code ist diese Eigenschaft nicht erforderlich. Sie können diese Eigenschaft in verschiedenen Programmen in einer Ausführungseinheit auf unterschiedliche Werte setzen. Diese Vorgehensweise kann jedoch Fehler verursachen.

Kompatibilität

Tabelle 1. Hinweise zur Kompatibilität für die Eigenschaft 'v60ExceptionCompatibility'
Plattform Problem
COBOL-Generierung Wird die Eigenschaft 'v60ExceptionCompatibility' auf YES gesetzt, wird bei nicht behandelten Ausnahmebedingungen die Fehleranzeige wie in Version 6 angezeigt. Wird diese Eigenschaft auf NO gesetzt, wird ein ELAX-Abbruch angezeigt, und die Nachrichten werden in die ELAD-Warteschlange geschrieben.