Bei der Generierung von COBOL-Code mit EGL gibt es einige Einschränkungen in Bezug auf die Aktionen, die Sie ausführen können.
Wenn Sie COBOL-Code generieren, gelten die folgenden Einschränkungen:
- Für COBOL-Programmnamen gibt es die folgenden Einschränkungen:
- Für zSeries sind Namen auf 8 Zeichen begrenzt.
- Für iSeries sind die Namen aufgerufener Programme auf 8 Zeichen begrenzt, die Namen von Hauptprogrammen sind auf 7 Zeichen begrenzt.
- Für Services sind die Namen auf 7 Zeichen begrenzt.
- Namen dürfen nur alphanumerische Zeichen und @, # und $ enthalten.
- Eine CICS-Anwendung kann nur eine allgemeine Stapelanwendung aufrufen, wenn die folgenden Bedingungen erfüllt sind:
- Die Stapelanwendung initialisiert keine Datei-E/A.
- Die Stapelanwendung wird mit den Verbindungsoptionseinstellungen DYNAMIC und OSLINK aufgerufen.
- Die aufgerufene Anwendung muss für Stapelbetrieb (nicht CICS) generiert werden.
- SET-Werteblöcke werden nur zum Festlegen von Eigenschaftswerten in Abschnittsdefinitionen und Variablendeklarationen und für die Initialisierung von Feldwerten in Variablendeklarationen unterstützt.
- Die Eigenschaft validValues unterstützt nur einen einzigen Nummernkreis.
- Für Text- und Druckformulare:
- Verwenden Sie nicht die folgenden Feldtypen:
- HEX
- FLOAT
- SMALLFLOAT
- TIME
- TIMESTAMP
- Wenn Sie ein Feld als Datum verwenden, geben Sie eine Datumsformatzeichenfolge oder eine Konstante in die Feldeigenschaft dateFormat ein. Es gelten folgende Einschränkungen:
- Wenn Sie das Formularfeld als ein Feld vom Typ DATE, NUM(8) oder NUM(10) definieren und ein Datum im
gregorianischen Format anzeigen möchten, müssen Sie für die Feldlänge 10 angeben. Sie können das eigene aus acht oder zehn Zeichen bestehende Format (entweder "yy/MM/dd" oder "yyyy/MM/dd" mit einem Trennzeichen Ihrer Wahl und der Angabe von Jahr, Monat und Tag in beliebiger Reihenfolge) oder eines der folgenden Datumsformate verwenden:
- usaDateFormat
- eurDateFormat
- isoDateFormat
- jisDateFormat
- systemGregorianDateFormat
- Wenn Sie das Formularfeld als ein Feld vom Typ NUM(8) definieren und ein Datum im
julianischen Format anzeigen möchten, müssen Sie für die Feldlänge
8 angeben. Sie können das julianische Format
"yy/ddd" oder "yyyy/ddd" (mit einem Trennzeichen Ihrer Wahl) oder
das
Datumsformat systemJulianDateFormat verwenden.
- Wenn Sie das Formularfeld als ein Feld vom Typ NUM(6) definieren und ein Datum im
julianischen Format anzeigen möchten, müssen Sie für die Feldlänge
6 angeben. Sie können das julianische Format "yy/ddd" (mit einem Trennzeichen Ihrer Wahl) oder
das Datumsformat systemJulianDateFormat verwenden.
- Wenn Sie das Formularfeld als ein Feld vom Typ CHAR(8) definieren, müssen Sie für die Feldlänge 8 angeben.
Sie können entweder das gregorianische Format "yy/MM/dd"
(mit einem Trennzeichen Ihrer Wahl und der Angabe von Jahr, Monat und Tag in beliebiger Reihenfolge) oder eines der folgenden Datumsformate verwenden:
- systemGregorianDateFormat
- systemJulianDateFormat
- Wenn Sie das Formularfeld als ein Feld vom Typ CHAR(10) definieren, müssen Sie für die Feldlänge 10 angeben. Sie können das eigene aus acht
oder zehn Zeichen bestehende Format (entweder "yy/MM/dd" oder "yyyy/MM/dd" mit einem Trennzeichen Ihrer Wahl und der Angabe von Jahr, Monat und Tag in beliebiger Reihenfolge) oder eines der folgenden Datumsformate verwenden:
- usaDateFormat
- eurDateFormat
- isoDateFormat
- jisDateFormat
- systemGregorianDateFormat
- systemJulianDateFormat
- Folgende Funktionen werden nicht unterstützt:
- ArrayDictionaries, Wörterverzeichnisse, Stellvertreter, Berichtsverarbeitung und consoleUI.
- Die Systemvariable sysVar.currentException. Sie können nicht angeben, welche Ausnahmebedingung zuletzt in der Ausführungseinheit ausgelöst wurde, obwohl die Verwendung des Blocks OnException unterstützt wird.
- Mehrdimensionale Feldgruppen oder die feldgruppenspezifischen Funktionen resizeAll und setMaxSizes.
Es werden jedoch mehrdimensionale, strukturierte Feldgruppen unterstützt.
- Die Basiselementtypen CLOB und BLOB (Literale und die Unterzeichenfolgensyntax werden jedoch unterstützt).
- Konvertierung von Text in SMALLFLOAT oder FLOAT (die Konvertierung von FLOAT
oder SMALLFLOAT in Text wird jedoch unterstützt).
- Folgende Systemfunktionen werden nicht unterstützt:
- Funktionen in den Systembibliotheken consoleLib, javaLib
und lobLib
- Die folgenden Funktionen in sysLib:
- callCmd
- errorLog
- getCmdLineArg
- getCmdLineArgCount
- getMessage
- getProperty
- setError
- setErrorForComponentID
- setLocale
- setRemoteUser
- startCmd
- startLog
- Die Eigenschaft type im Element callLink des Verbindungsoptionsabschnitts unterstützt nicht die Verwendung von remoteCall auf der iSeries-Plattform.
Sprachhinweise
Wenn Sie COBOL auf einer Windows-Maschine generieren, für die die
Ländereinstellung auf "Türkisch" gesetzt ist, wird keine Ausgabe erstellt. Zum Entwickeln von EGL-Anwendungen, die in türkisch ausgeführt werden können, führen Sie folgende Schritte aus:
- Legen Sie "Englisch" als Windows-Ländereinstellung fest.
- Legen Sie als Dateicodierung "Türkisch" fest, indem Sie die Eclipse-IDE mit den folgenden VM-Argumenten starten:
- VMArgs=-Dfile.encoding=Cp1254
- VMArgs=-Dibm.system.encoding=Cp1254
Sie können diese Werte in der Datei rationalsdp.ini im Produktinstallationsverzeichnis festlegen.