cancel
Showing results for 
Search instead for 
Did you mean: 

Updating Large Physical Data Model from Database

0 Kudos

I'm running Sap PowerDesigner 16.5 SP05 PL06 (64 bit) on computer running Windows 10 with an Intel i7 cpu and 16GB of RAM.

The PD model I'm trying to update has 633 tables and 519 views for a total of 12235 columns. The database is deployed on Sql Server 2012

Even when I select only a few views (say 10) to be updated from the Database, after I have selected the changes to be applied on these 10 views, PdShell16.exe crashes, ANyone can give me advise with this issue ? Regards

Accepted Solutions (0)

Answers (3)

Answers (3)

0 Kudos

Thank You for your last comment. I'm not a script expert, but here's what I understand from your last message.

Basically, you are saying to create a new model each time (reverse engineering) instead of trying to update an existing one.

Looping through all schemas, create a diagram for eah one, then fill it with appropriate objects (tables, view, relationships) based on their Owner property.

I will have to upgrate my scripting skills, but I like the idea.

Thank You

0 Kudos

I was able to reverse engineer the entire data base (500+ tables and 500+views) into a new model, no issue with PD. My problem is this one: This model has more then 25 schemas. To be redable, I organized it one PD diagram (tables and views) per schema. This preparation work is manual, and you want to maintain it, othersiwse, you have to rebuild all these diagrams. On a weekly basis, I would like to incorparte the DB changes into the model, then publish it. This is when I have the problem: when I select from the PowerDesigner Menu >Database > Update model from Data Base.... PD crashes.

Ondrej_Divis
Contributor
0 Kudos

Ok, so you reversed completely new model. Now try to update this new model from DataBase. Does it work or does it crash in the same way the first one does? You have to find out first, whether it is a one-model problem or PD problem. Does it behave the same when you try it from different computer (i.e. different PD installation)? Does it behave the same way if you try to update model from DB by reversing different DB? If you are going to report it as PD bug, you will have to identify, which component of your chain causes the crash and to know, if you are reliably able to reproduce the issue. On different computer, on any model, etc. Otherwise it is simply problem of 1 specific model or 1 specific PD installation. And without repro, you are not getting your bugfix anyway.

Quick workaround for this might be writing a script, which will take your newly reverse-engineered model and create all your 25 diagrams according to schemas and then display appropriate objects (according to their Owner property) on these diagrams. Quite simple thing which will allow you to avoid problematic function immediately and you will still be able to deliver the result.


Basically you will only need

ActiveModel.CreateObject(PdPDM.cls_PhysicalDiagram)

to create your diagrams and functions:

yourDiagram.AttachObject(yourTableOrView) 

to display your objects on desired diagram and

yourDiagram.CompleteLinks

to display references on all diagrams. That`s it.

Regards,
Ondrej

Ondrej_Divis
Contributor
0 Kudos

Have you tried to reverse it into new model? Does it work or does it crash too? If it doesn`t crash, it looks like there is a problem in your current model. It might be a bug, which causes PD to crash, but it can be a problem in your specific model. Does it crash when you do reverse engineering of different DB? Does it crash only when reversing specific objects (and reversing of different objects/different schemas is ok? ) ?

0 Kudos

I will try with a new model and let you know the outcome. Thanks .