Hi David,
I have already tried creating my own DDL language, using EA's Code Generation Template feature (this was the reason, how I landed up with my bug no. 2). Unfortunately, I hit an obstacle over there regarding certain attribute variables. To be more precise, it was "Precision" & "Scale". Through my DDL language I tried to generate something like this "some_number_field NUMBER(8,2)". But I could not find %attPrecision% or %attScale% or anything similar to that. Sparx has provided quite a few variables such as %attName%, %attType%, %attLength%, etc. but some like Precision and Scale are missing or else maybe I am unable to find it in their EA Guide.
As a temporary solution, I generated the DDL scripts with BYTE & CHAR included, using EA's DDL generator, then removed those annoying keywords using "replace all" in all the generated scripts using a text editor.
As for the Unique Index bug, I have found out 2 more interesting things. I created a table with PK, UK, FK and other additional columns. Then I manually created 3 indexes. First was a Normal index on a general column. Second was a Unique Index on the FK column. And Third was again a Unique Index but on a general column(non-FK). Now, when I reverse engineered this table....
a) The Normal Index AND the FK Unique Index were captured by EA. Only the Third Unique Index was skipped out.
b) Although the FK Unique Index was picked by EA, it did not mark it as Unique. i.e. Under Index Operation properties --> Extended properties, the Unique Checkbox was unticked. And because of that when I generated the DDL, the original Unique Index on FK came out as a Normal Index.
I can't even add the missing Unique Indexes manually, because as soon as I sync it with the database, my changes are overwritten by what EA finds in database.
For me, the Unique Index bug seems to have taken a priority. I hope sparx systems resolves the same asap.
--Mustanshir