Physical (CS 2) to logical model (TDM3)

In comparison chart I read that physical to logical model conversion is to be defined for version 3.1 .
I have big DB project in CS2. I would like to make logical model for it.

There are more than 200 tables in that model now, plus about 30 submodels.

I like the idea to continue with that project with logical model , views, etc.

Shall I wait for versin that could do it for me, or shall I make the logival model from scratch ?

Hello,

There’s no need to wait. The latest Beta 3.0.10 offers model update feature for LER models, and also rules for LER to PER model conversion have been implemented.

We will be very happy if you help us test this feature. (Your model seems to be a great challenge to verify if model import and conversion work properly in the Beta.)

Please download the latest Beta from the Download section in this community.

What to do:

  1. Export your model in CS2 to .xml file.
  2. Open this .dmx model in TDM 3 BETA and resave it as .txp file.
  3. Select Settings | Data Type conversin Settings to define data types conversion rules. (From the Destination box, select Logical model and click the first button in the dialog toolbar.)
  4. Under your PER model, select Model | Alter Scripting, Merge Models to open the Convertor.
  5. From the Model 2 box, select [New] Logical Model. (In Model 1 box, your PER model is mentioned.)
  6. Go through the list of items and select those you like to convert and finally click Execute. - A new LER model will be created and opened automatically in the AW.

If you have any questions or come across any trouble, please write me back. Thanks.

I look forward to your feedback!

Regards,

Vladka

Important note: TDM 3 Beta supports only the following databases: MySQL 5, SQL Server 2005 and 2000, Oracle 10g and 9i, PostgreSQL 8.2 and 8.1 and Sybase ASE 15 and 12.5.

Message was edited by: vladka

I tried model comparison before, but there was no EXECUTE button.

Anyway, I followed Your points, but after point 3 I wanted to change Float -> Decimal to Float -> Float. After doubleclicking on Decimal (15,5) in destination column, the word “Decimal” vanished and runtime exception occured "Error - Access violation at address 005A4F12 in module ‘TDM.exe’, read of address 00000000’.

I cilicked it, and decimal is there again.

So I will not change anything and try to go on.

I tried model comparison before, but there was no EXECUTE button.

Model Comparator allows you only to see differences between models. For conversion, the Convertor has to be used. These are two different features.

Anyway, I followed Your points, but after point 3 I wanted to change Float -> Decimal to Float -> Float...

Thanks. I'll check this out.

Vladka

Conversion completed, but there are dozens of messages…

During conversion of Data Types no suitable Data Type has been found.
details: During conversion of data type - ENUM from modeldef MySQL 5.0 to model with modeldef Logical model was not found any suitable type. Default type was assigned.

80x

And to add, while importing CS2 XML file, “Vlastnost DISPLAYPKINDICATOR nelze načít!” occured

(property DISPLAYPKINDICATOR could not be read!) 60x

with detail

Hodnota v XML nenalezena:
#document/MODEL/ERD/SUBMODELS/SUBMODEL/PROPERTIES/DISPLAYPKINDICATOR
Pro vlastnost bude pouita výchozí hodnota “0.”

(value in XML not found: … Default value 0 will be used for property)

I guess all of my ENUM types will be lost.

Strange, in CS2 all of my ENUM types where defined as user data types - ENUMs. I wanted them to be usable anywhere in model.

But after importing it to TDM3 it changed to domain. But there are data types as well. Maybe it’s only a matter of terminology.

As I see it now, all of my ENUM data type usage is really lost in LER.
What did I wrong ?

Here’s locallog file with all the messages.
Don’t know it that’s of any help, cause I do not see there any helpful info.
locallog.txt (80.2 KB)

Hello,

Thanks very much for letting us know the result.

  1. Model Import
    Let me ask you what version of CS2 you use.

DISPLAYPKINDICATOR works for setting of work area - to display keys graphically. If import of this failes, nothing important will be lost.
In any case, we will deal with the messages and translate them properly.

MySQL 5 doesn’t use user data types and dictionary typers, therefore the CS2 user data types are imported to Domains. (It’s correct now in TDM3.)

  1. Conversion to LER model

ENUM data type conversion - we’re working on this issue at the moment. Thanks for your notification!

Domains from PER model are converted to LER model, however appropriate attributes do not use the domains, which is a bug. We will fix it. CR # 36 756.

Unfortunately, there’s no temporary solution for you at the moment. We need to fix the troubles. Thanks for your patience and co-operation.

Regards,

Vladka

We use latest CS2 version 2.24 . I begun working on that model one year ago, june 2006, so the version was lower at the time.

If things will go right, we will upgrade at least one license to TDM3 in the future.

We use latest CS2 version 2.24.

Feel free to update your CS2 version. Latest version CS2 2.25 is available at:

http://www.casestudio.com/enu/download.aspx

See the bottom of the site. Thanks.

If things will go right, we will upgrade at least one license to TDM3 in the future.

It sounds great! We will do keep improving and enhancing TDM 3 capabilities.

Regards,

Vladka + TDM Team

After paasing project through version 2.25, DISPLAYPKINDICATOR did not occur while importing to TDM3.

To generate that runtime error
You have to open DataType Conversion Settings dialog,
choose Logical model and let fill in the list.

Then click on any line in column “Destination”

After that click again on the same cell but hold the left mouse button for more than 2 or 3 seconds. After releasing the button runtime error occurs.

Yes, we know about this trouble and will fix it.
Just to explain: If you cannot define it, it means that default data type will be used for the conversion, and a warning will be displayed in the log. It doesn’t mean that the source data type will not be converted.

The default data type in this case is Bigint (however will be changed).

Thanks again for your co-operation and patience.

Regards,

Vladka