Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EDT:EGL Language conversion"
m (add edt category) |
|||
(9 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | EGL language conversion | + | EGL language conversion considerations from IBM Rational Business Developer and EGL CE. |
− | *[[EDT:EGL Language Part Types]] | + | *[[EDT:EGL Language Part Types|EGL Language Classifiers (Part Types)]] |
{| width="800" cellspacing="1" cellpadding="1" border="1" | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
|- | |- | ||
− | | bgcolor="#bbbbbb" align="center" | + | | align="center" bgcolor="#bbbbbb" | Rational Business Developer |
− | + | | align="center" bgcolor="#bbbbbb" | EDT | |
|- | |- | ||
| Called program | | Called program | ||
Line 18: | Line 18: | ||
|- | |- | ||
| Nullable | | Nullable | ||
− | | <br> | + | | Nullability is a quality of the field or parameter not the type...similar to how database columns define a column to be nullable or not nullable. [http://wiki.eclipse.org/EDT:Language_Overview02#Nullability See Language Overview / Nullability]<br> |
|} | |} | ||
Line 25: | Line 25: | ||
{| width="800" cellspacing="1" cellpadding="1" border="1" | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
|- | |- | ||
− | | bgcolor="#bbbbbb" align="center" | + | | align="center" bgcolor="#bbbbbb" | Rational Business Developer |
− | + | | align="center" bgcolor="#bbbbbb" | EDT | |
|- | |- | ||
| Default is inout | | Default is inout | ||
Line 38: | Line 38: | ||
| timestamp without pattern is inout | | timestamp without pattern is inout | ||
| timestamp without pattern default is in, because timestamp without pattern is reference type | | timestamp without pattern default is in, because timestamp without pattern is reference type | ||
+ | |} | ||
+ | |||
+ | *EDT:EGL Language Function Return | ||
+ | |||
+ | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
+ | |- | ||
+ | | align="center" bgcolor="#bbbbbb" | Rational Business Developer | ||
+ | | align="center" bgcolor="#bbbbbb" | EDT | ||
+ | |- | ||
+ | | Generated Java - A Return statement is not required in the EGL source for a function if the function returns a value.<br> | ||
+ | | Generated Java - A Return statement is required in the EGL source for a function, for all exit points, if the function returns a value. | ||
|} | |} | ||
Line 44: | Line 55: | ||
{| width="800" cellspacing="1" cellpadding="1" border="1" | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
|- | |- | ||
− | | bgcolor="#bbbbbb" align="center" | + | | align="center" bgcolor="#bbbbbb" | Rational Business Developer |
− | + | | align="center" bgcolor="#bbbbbb" | EDT | |
|- | |- | ||
| time | | time | ||
− | | replaced with timestamp | + | | |
+ | Before 0.8.1 M2: replaced with timestamp <br>After 0.8.1 M2: time is now available in EDT | ||
+ | |||
|- | |- | ||
| interval | | interval | ||
Line 62: | Line 75: | ||
{| width="800" cellspacing="1" cellpadding="1" border="1" | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
|- | |- | ||
− | | bgcolor="#bbbbbb" align="center" | + | | align="center" bgcolor="#bbbbbb" | Rational Business Developer |
− | + | | align="center" bgcolor="#bbbbbb" | EDT | |
|- | |- | ||
| system libraries | | system libraries | ||
Line 111: | Line 124: | ||
{| width="800" cellspacing="1" cellpadding="1" border="1" | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
|- | |- | ||
− | | bgcolor="#bbbbbb" align="center" | + | | align="center" bgcolor="#bbbbbb" | Rational Business Developer |
− | + | | align="center" bgcolor="#bbbbbb" | EDT | |
|- | |- | ||
| call host program | | call host program | ||
Line 129: | Line 142: | ||
{| width="800" cellspacing="1" cellpadding="1" border="1" | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
|- | |- | ||
− | | bgcolor="#bbbbbb" align="center" | + | | align="center" bgcolor="#bbbbbb" | Rational Business Developer |
− | + | | align="center" bgcolor="#bbbbbb" | EDT | |
|- | |- | ||
| matches | | matches | ||
Line 139: | Line 152: | ||
|- | |- | ||
| bitwise | | bitwise | ||
− | | operators support for int types only. | + | | operators support for int types only. Rational Business Developer supports SmallInt as well |
|} | |} | ||
Line 146: | Line 159: | ||
{| width="800" cellspacing="1" cellpadding="1" border="1" | {| width="800" cellspacing="1" cellpadding="1" border="1" | ||
|- | |- | ||
− | | bgcolor="#bbbbbb" align="center" | + | | align="center" bgcolor="#bbbbbb" | Rational Business Developer |
− | + | | align="center" bgcolor="#bbbbbb" | EDT | |
|- | |- | ||
| basicLibrary | | basicLibrary | ||
Line 185: | Line 198: | ||
<br> | <br> | ||
− | + | EGL Rich UI MVC<br> | |
− | The model for these files is different in EDT so you cannot reuse deployment descriptors from | + | {| width="800" cellspacing="1" cellpadding="1" border="1" |
+ | |- | ||
+ | | align="center" bgcolor="#bbbbbb" | Rational Business Developer | ||
+ | | align="center" bgcolor="#bbbbbb" | EDT | ||
+ | |- | ||
+ | | validValues annotation | ||
+ | | Not Supported | ||
+ | |- | ||
+ | | | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | <br> '''A note on deployment descriptor files (*.egldd):'''<br> | ||
+ | |||
+ | The model for these files is different in EDT so you cannot reuse deployment descriptors from Rational Business Developer. If you have a *.egldd file that's in the old format, and you want to "reset" it to be empty, you can open it with a text editor and replace it with the following:<br> | ||
<pre><?xml version="1.0" encoding="UTF-8"?> | <pre><?xml version="1.0" encoding="UTF-8"?> | ||
<egl:deployment xmlns:egl= "http://www.eclipse.org/xmlns/edt/deployment/1.0" > | <egl:deployment xmlns:egl= "http://www.eclipse.org/xmlns/edt/deployment/1.0" > | ||
</egl:deployment> | </egl:deployment> | ||
− | </pre> | + | </pre> |
− | + | [[Category:EDT]] | |
− | [[Category: EDT]] | + |
Latest revision as of 13:29, 9 July 2012
EGL language conversion considerations from IBM Rational Business Developer and EGL CE.
Rational Business Developer | EDT |
Called program | Not supported |
DataItem, Stand alone (top level) function |
Not supported right now |
Datatable, Structured Record, Form, FormGroup |
Not supported |
Nullable | Nullability is a quality of the field or parameter not the type...similar to how database columns define a column to be nullable or not nullable. See Language Overview / Nullability |
Rational Business Developer | EDT |
Default is inout | Default is inout for value type
Default is in for reference type |
Array default is inout | Array default is in, because array is reference type |
timestamp without pattern is inout | timestamp without pattern default is in, because timestamp without pattern is reference type |
- EDT:EGL Language Function Return
Rational Business Developer | EDT |
Generated Java - A Return statement is not required in the EGL source for a function if the function returns a value. |
Generated Java - A Return statement is required in the EGL source for a function, for all exit points, if the function returns a value. |
Rational Business Developer | EDT |
time |
Before 0.8.1 M2: replaced with timestamp |
interval | Not Supported right now, no replacement |
money, num, bin |
use Decimal |
Rational Business Developer | EDT |
system libraries | all needs to be fully qualified with library name i.e. sysLib, dateTimeLib, serviceLib, xmlLib...etc. |
currentDate() DateTimeLib.currentDate() |
When you declare aDate data, aDate should be inited with the current date |
currentTime() DateTimeLib.currentTime() |
Not Supported |
currentTimeStamp() DateTimeLib.currentTimeStamp() |
When you declare temp timestamp, temp is inited with the current timestamp |
StrLib.usaDateFormat StrLib.eurDateFormat StrLib.jisDateFormat StrLib.isoDateFormat |
Constants.usaDateFormat Constants.eurDateFormat Constants.jisDateFormat Constants.isoDateFormat |
StrLib.usaTimeFormat StrLib.eurTimeFormat StrLib.jisTimeFormat StrLib.isoTimeFormat |
Constants.usaTimeFormat Constants.eurTimeFormat Constants.jisTimeFormat Constants.isoTimeFormat |
StrLib.db2StampFormat StrLib.odbcTimeStampFormat |
Constants.db2StampFormat Constants.odbcTimeStampFormat |
DateTimeLib.dayOf(cTimeStamp) DateTimeLib.weekdayOf(cTimeStamp) DateTimeLib.monthOf(cTimeStamp) DateTimeLib.yearOf(cTimeStamp) DateTimeLib.dateOf(cTimeStamp) |
cTimeStamp.dayOf() cTimeStamp.weekdayOf() cTimeStamp.monthOf() cTimeStamp.yearOf() cTimeStamp.dateOf() |
DateTimeLib.timeOf() DateTimeLib.timeValue() |
Not Supported |
DateTimeLib.dateValueFromGregorian() DateTimeLib.dateValueFromJulian() |
DateTimeLib.dateFromGregorian() DateTimeLib.dateFromJulian() |
XMLLib.convertToXML(eglType any) XMLLib.convertToXML(eglType any, document boolean) |
Use XMLLib.convertToXML(eglType any, document boolean) |
ServiceLib.convertFromJSON(json string,eglType any) |
JsonLib.convertFromJSON(json string,eglType any) |
ServiceLib.convertToJSON(eglType any) |
JsonLib.convertToJSON(eglType any) |
Rational Business Developer | EDT |
call host program
call local program Move statement |
Not supported right now |
Rational Business Developer | EDT |
matches | no longer an operator, have to use String matchesPattern() function instead |
like | no longer an operator, have to use String isLike function instead |
bitwise | operators support for int types only. Rational Business Developer supports SmallInt as well |
Rational Business Developer | EDT |
basicLibrary | no more basicLibrary |
annotation on Library | no annotation is supported on library |
RuntimeException |
no more RuntimeException, use AnyException |
IndexOutOfBoundException |
InvalidIndexException |
PGM includeReferencedFunctions=yes |
top level function are not supported |
PGM allowUnqualifiedItemReferences = yes |
must fully qualify part names |
XMLStructure = xmlStructurekind |
XMLValue {kind = xmlStructurekind. |
FORMName |
|
javaScriptName=xxx |
use externalName=xxx |
d Dictionary{ordering=byInsertion} d Dictionary{ordering=byKey} |
d Dictionary = new Dictionary(true, OrderingKind.byInsertion) d Dictionary = new Dictionary(true, OrderingKind.byKey) The default for caseSensitive is false |
aString string[0]{maxSize=10}; anInt int = aString.getMaxSize(); |
Not Supported(no more maxSize) |
EGL Rich UI MVC
Rational Business Developer | EDT |
validValues annotation | Not Supported |
A note on deployment descriptor files (*.egldd):
The model for these files is different in EDT so you cannot reuse deployment descriptors from Rational Business Developer. If you have a *.egldd file that's in the old format, and you want to "reset" it to be empty, you can open it with a text editor and replace it with the following:
<?xml version="1.0" encoding="UTF-8"?> <egl:deployment xmlns:egl= "http://www.eclipse.org/xmlns/edt/deployment/1.0" > </egl:deployment>