Sparx Systems Forum

Enterprise Architect => General Board => Topic started by: Shegit Brahm on July 14, 2017, 12:04:15 am

Title: own Toolbox: CallBehavior: nothing, ActivityInitial&Decision: something
Post by: Shegit Brahm on July 14, 2017, 12:04:15 am
I created an UML Profile for individual stereotypes and a Toolbox based on that.
- create in ToolboxBase.eap, use in TboxUse.eap

need sync for full definitions from myProfile:
- constraints will be added only after syncing the element (User Guide already says so: http://www.sparxsystems.com/enterprise_architect_user_guide/13.0/model_domains/synchronizetagsandconstrain.html (http://www.sparxsystems.com/enterprise_architect_user_guide/13.0/model_domains/synchronizetagsandconstrain.html))

my problem with ActivityInitial:
- creating an element from original UML and adding stereotype myInit does nothing: neither tagged Values nor constraints added. And stereotype is visually wrong: instead of "<<myInit>> it shows <<myProfile::myInit>>
- syncing the stereotype from myToolbox: does nothing
- adding stereotype using drag'n'drop from myToolbox: impossible, creates always new node
- only solution so far: creating ActivityInitial from myToolbox, sync it, re-connecting & transferring everything from now-old node, delete now-old node.

my problem with Decision:
- creating element from original UML: adding stereotype myDec using properties page is impossible, myProfile is not offered for selection
- solution: drag'n'drop from myToolbox, adds everything or create from myToolbox

my problem with CallBehavior:
- defining toolbox needs "special skill": the metaclass is called "BehaviorCall", the toolbox attributes need full qualifier with "myProfileTB::myCallBehavior(UML::BehaviorCall)" (other stereotypes need only myProfileTB::myAction, guess it is because of CB vs BC)
- drag'n'drop from myToolbox on empty activity diagram does nothing
- drag'n'drop from myToolbox on default action does nothing
- creating action from default toolbox, changing kind to CallBehavior, drag'n'drop myCall from myToolbox: I get choice "apply myCall/ add myCall" - but nothing happens.
- only solution: create action from default, change kind to CB, select stereotype in properties


So all in all everywhere a different kind of workaround exists - but is there nothing to achieve a consistent work flow?

files for example:
https://www.dropbox.com/s/rr0z7btay6lcnq8/myProfileTB.xml?dl=1  profile definition as UML profile
https://www.dropbox.com/s/irgqc8f87a7dd2a/myToolb_MDG.xml?dl=1  entire stuff as MDG technology
https://www.dropbox.com/s/zs9tz7gd9orx56r/myToolbox.xml?dl=1  toolbox definition as UML profile
https://www.dropbox.com/s/8mt338nhrcyyske/TboxUse.eap?dl=1   eap where MDG is used
https://www.dropbox.com/s/ou1gvo94lo6xr6l/ToolboxBase.eap?dl=1 eap where profiles got defined

Thanks, Shegit
Title: Re: own Toolbox: CallBehavior: nothing, ActivityInitial&Decision: something
Post by: Shegit Brahm on July 19, 2017, 10:24:57 pm
Could solve CallBehavior that it "does something useful".

Extend metaclass "action" and set the generated attribute "kind" to the initial value "CallBehavior".
Define in myToolbox this stereotype in short form (myProfileTB::myCallbehavior) - that results in an action.
see (https://www.dropbox.com/s/o4f9dajk3rl7wdj/myProfileCallB.png?dl=1)

If I drag'n'drop now from myToolbox into an activity diagram, I will get an action of kind CallBehavior.

Only disadvantage: If I create an clean UML action and add in properties page the stereotype "myCallBehavior" - the kind on subpage "Advanced" will stay unchanged, but anything else looks like it should.

Works too with ExpansionRegion to set mode on iterative, e.g..
Stays only the annoying Initial and Final that resist any setting of stereotype, they still need creation from myToolbox.