Author Topic: EA 15.2 - Component Diagram - Cannot 'Convert to Instance' on some Components  (Read 2972 times)

Janhn_fnb_za

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Hi,

I copied a (template) Component Diagram and now want to convert components on the copied diagram to instances.

EA isn't allowing me to do it on some components (but works on others) - I only get

Parent
Multiplicity
Convert Linked Element to Local Copy

under the Advanced menu.

Thanks

Jan

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 11849
  • Karma: +460/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
You'll have to try and figure out what makes some components different from others I guess

Might be nesting, might be location in the model, locking, stereotypes, ...

Geert

Janhn_fnb_za

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Hi Geert

Thanks for your reply.

From some cursory examination, it seems all the components I'm having issues with has Provided Interface elements attached to them.
For components that don't, there's no issue and the option is available.

Is this expected? It seems quite counter-intuitive.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 11849
  • Karma: +460/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Yes, I can reproduce that. You can't convert it to an instance if it has embedded elements.

I think embedded elements are not allowed on objects, so converting it to an instance would result in an invalid situation.

Geert

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8188
  • Karma: +232/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Yes, I can reproduce that. You can't convert it to an instance if it has embedded elements.

I think embedded elements are not allowed on objects, so converting it to an instance would result in an invalid situation.

Geert
This may be because EA creates Objects (that is runtime instances of Classes) when you "Convert to instance".  I do believe that this is correct for metatypes that aren't pure classes.  I think I covered this in my What IS an Instance post.  We do not use Objects at all for Instances.


Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

qwerty

  • EA Guru
  • *****
  • Posts: 12814
  • Karma: +366/-295
  • I'm no guru at all
    • View Profile
Object is a metaclass from ancient 1.5. It's InstanceSpecification now. For the well-know compatibility reasons Sparx prefers to stay with Object. There's some chat with Eve about that topic.

q.