When generating COBOL code using EGL there are some restrictions
on what you can do.
If you are generating COBOL code, the following restrictions are
in effect:
- COBOL program names have the following restrictions:
- For zSeries, names are
limited to 8 characters.
- For iSeries®, called
program names are limited to 8 characters, main program names to 7
characters.
- For services, names are limited to 7 characters.
- Names can contain alphanumeric characters plus @, #, and $ only.
- A CICS® application can
only call a common batch application if the following conditions are
met:
- The batch application does not initiate file I/O;
- The batch application is called using the DYNAMIC and OSLINK linkage
option settings;
- The called application must be generated for batch (not CICS).
- Set-values blocks are supported only for setting property values
in part definitions and variable declarations and for initializing
field values in variable declarations.
- The validValues property supports only
a single range of numbers.
- For both text and print forms:
- Do not include the following field types:
- HEX
- FLOAT
- SMALLFLOAT
- TIME
- TIMESTAMP
- If you are using a field as a date, you specify a date-format
string or constant in the dateFormat field
property, and these restrictions are in effect:
- If you specify the form field as type DATE, NUM(8) or NUM(10)
and intend to present a date in Gregorian format, you must specify
the field length as 10 and may use your own 8 or 10-character format
(either "yy/MM/dd" or "yyyy/MM/dd", with a separator
of your choice and with the years, months, and days in any order);
or any of the following date formats:
- usaDateFormat
- eurDateFormat
- isoDateFormat
- jisDateFormat
- systemGregorianDateFormat
- If you specify the form field as type NUM(8) and intend to present
a date in Julian format, you must specify the field length as 8 and
can use either the Julian format "yy/ddd" or "yyyy/ddd"
(with a separator of your choice) or the date format systemJulianDateFormat
- If you specify the form field as type NUM(6) and intend to present
a date in Julian format, you must specify the field length as 6 and
can use either the Julian format "yy/ddd" (with a separator
of your choice) or the date format systemJulianDateFormat
- If you specify the form field as type CHAR(8), you must specify
the field length as 8 and may use either the Gregorian format "yy/MM/dd"
(with a separator of your choice and with the years, months, and days
in any order) or either of the following date formats:
- systemGregorianDateFormat
- systemJulianDateFormat
- If you specify the form field as type CHAR(10), you must specify
the field length as 10 and may use your own 8 or 10-character format
(either "yy/MM/dd" or "yyyy/MM/dd", with a separator
of your choice and with the years, months, and days in any order);
or any of the following date formats:
- usaDateFormat
- eurDateFormat
- isoDateFormat
- jisDateFormat
- systemGregorianDateFormat
- systemJulianDateFormat
- The following capabilities are not supported:
- ArrayDictionaries, Dictionaries, Delegates, report processing,
and consoleUI
- The sysVar.currentException system variable;
you cannot identify which exception was thrown most recently in the
run unit, although use of the OnException block
is supported
- Multidimensional arrays or the array-specific functions resizeAll and setMaxSizes.
However, multidimensional structured field arrays are supported.
- The primitive types CLOB and BLOB (but literals and the substring
syntax are supported)
- Conversion of text to SMALLFLOAT or FLOAT (but conversion of FLOAT
or SMALLFLOAT to text is permitted)
- The following system functions are not supported:
- Functions in the system libraries consoleLib, javaLib,
and lobLib
- The following functions in sysLib:
- callCmd
- errorLog
- getCmdLineArg
- getCmdLineArgCount
- getMessage
- getProperty
- setError
- setErrorForComponentID
- setLocale
- setRemoteUser
- startCmd
- startLog
- The type property in the callLink element
of the linkage options part does not support the use of remoteCall on
the iSeries platform
Language Considerations
When you generate
COBOL on a Windows machine
running in the Turkish locale, no output is created. You can develop
EGL applications that run in Turkish by following these steps:
- Set your Windows locale
to English.
- Set file encoding to Turkish by starting the Eclipse IDE with
the following VM arguments:
- VMArgs=-Dfile.encoding=Cp1254
- VMArgs=-Dibm.system.encoding=Cp1254
You can set these values in the rationalsdp.ini file found in
the product installation directory.