Author Topic: Create autom. a Class Diagram after a new Package  (Read 19852 times)

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #30 on: November 05, 2010, 12:03:31 am »
Hello,
thank you for your helpful answer. RefreshModelView(0) does work, but it closes the folder tree/folder structure and I don't want this kind of behavior.
I have inserted the package ID(RefreshModelView(PackageID)), too. But this way is not better.  Do you have any idea?

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13226
  • Karma: +550/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Create autom. a Class Diagram after a new Pack
« Reply #31 on: November 05, 2010, 12:43:40 am »
Yes, you can select your package (or the new diagram) again, so it will open the tree again.
Look at Repository.ShowInProjectView (object Item)


Geert

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #32 on: November 05, 2010, 01:26:41 am »
THANKS! It does work, now! :)
My solution:
Quote
//Reload Project Browser
Repository.RefreshModelView(0);
//Select new Diagram in the Prjoject Browser
Repository.ShowInProjectView(NewDiagram);
:)
« Last Edit: November 05, 2010, 01:33:59 am by marine1981 »

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #33 on: November 09, 2010, 11:47:44 pm »
Now, I have got a further problem with the new element in the Project Browser. I create the element with:

Code: [Select]
EA.Element NewElement = (EA.Element)NewPackage.Elements.Add(...);
The program creates the element in th new Package in the Project Browser. But I need the element in the same level like the new package and not under the package. How I can move the element and How I can set the position at the creation in the tree? I have tested with PosTree but without any success. Do you have got any idea?

Thanks


Sven
« Last Edit: November 09, 2010, 11:48:13 pm by marine1981 »

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13226
  • Karma: +550/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Create autom. a Class Diagram after a new Pack
« Reply #34 on: November 09, 2010, 11:56:34 pm »
Sven,

In that case you'll have to add the diagram on the parentPackage of the new package.
So you'll have to do something like
Code: [Select]
EA.Package myParentPackage = myRepository.GetPackageByID(myNewPackage.ParentID);
myParentPackage.Diagrams.AddNew(...


Geert

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #35 on: November 10, 2010, 12:23:02 am »
Your information was helpful.

I modified you example for a element:
Code: [Select]
EA.Package ParentPackage = Repository. GetPackageByID(NewPackage.ParentID);
EA.Element NewElement = (EA.Element)ParentPackage.AddNew(Convert.ToString(elementName), "UseCase");
NewElement.... = "...";
An it does work!

Thanks

Sven
« Last Edit: November 10, 2010, 12:23:36 am by marine1981 »

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #36 on: November 10, 2010, 12:33:54 am »
I see a mistake, now. I don't can manual delete the new element in the Project Browser.
Do you have got any reason for this manner?

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13226
  • Karma: +550/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Create autom. a Class Diagram after a new Pack
« Reply #37 on: November 10, 2010, 12:38:59 am »
No, try reloading, that might help.

Geert

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #38 on: November 10, 2010, 12:42:31 am »
Reload without a newstart does not work. First after a new start I can delete the elements. Why?
« Last Edit: November 10, 2010, 12:43:06 am by marine1981 »

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13226
  • Karma: +550/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Create autom. a Class Diagram after a new Pack
« Reply #39 on: November 10, 2010, 12:48:34 am »
No idea :-/

Geert

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #40 on: November 29, 2010, 08:18:35 pm »
How I can create a Composition? With:
Code: [Select]
NewConnector = (EA.Connector)NewElement.Connectors.AddnNew("","Composition");
I get with this code only a aggreation and not a Composition.

Thanks


Sven

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13226
  • Karma: +550/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Create autom. a Class Diagram after a new Pack
« Reply #41 on: November 29, 2010, 08:27:28 pm »
Sven,

You have to set the ConnectorEnd.Aggregation to the value "2" to make it composite.
(by the way, you might want to use regular associations iso aggregations, EA treats them a little different, although in UML the only difference is in the AggregationKind)

Geert

marine1981

  • EA User
  • **
  • Posts: 58
  • Karma: +0/-0
    • View Profile
Re: Create autom. a Class Diagram after a new Pack
« Reply #42 on: November 29, 2010, 08:29:33 pm »
Thanks! It does work!