I just committed a first pass at reverse engineering. Like SQL gen,
this does a pass-through to EOF. There are some differences in the
way this works compared to EOModeler:
* In EOModeler, you create a new model with a reverse engineering.
In Entity Modeler, you reverse engineer into an existing model. This
means you can reverse engineer multiple times (if you add tables
later, for instance). To reverse engineer:
** Make a new EOModel
** Set the connection dictionary, etc on your active database config
** Select the model node in the outline view
** Click the Reverse Engineer button on on the Entity Modeler button
bar (yes .. these icons are all totally confusing and there are tons
of them ... i know ... i need to start pulling these things out into
menus, but I've just been to lazy to do it)
** Select the tables, click OK
** Profit
* Entity Modeler will attempt to guess prototypes on reverse
engineered attributes. This is sort of hackish right now, because at
least with FrontBase, reverse engineering generates attributes with
values that are different than Wonder's prototypes. There is a big
if/else block of "leniency" for these comparisons to accomodate. If
you run into ones that aren't guessed properly, let me know and I can
take a look. Right now with FrontBase, most of the Wonder ones are
guessed right.
* Entity Modeler will rename for capitalization on attributes,
entities, and relationships. Reverse engineering (at least with
FrontBase) generates everything in all caps. This look really ugly
and makes EM generate lots of warnings. Names are post-processed to
look SLIGHTLY better (obviously it can't really guess CamelCase
entity names)
There's currently no feedback when this operation is running, so just
trust that it is cranking away. Prototype guessing is a little bit
labor intensive. I need to hookup a progress dialog so you can see
what the heck it's doing.
Try it out in tonight's build and let me know.
ms
This archive was generated by hypermail 2.0.0 : Mon Feb 19 2007 - 07:43:27 EST