Book a Demo

Author Topic: Scripting fixup of BPMN2 process/collaborations - Actions & Activities  (Read 3162 times)

Mr Stuff

  • EA User
  • **
  • Posts: 64
  • Karma: +0/-0
    • View Profile
As I mentioned in http://sparxsystems.com/forums/smf/index.php/topic,38297.msg238356.html#msg238356 I have to fix up a large number of diagrams with issues that include the following (there are more to come later :-\)
  • Activities added to diagrams as Actions, hence...
          users then forcing Sequence Flow links from Activity to Action via connector palette because the UI wouldn't provide it, hence Sequence Flow to Actions invalid;)
          users using control flow links between actions
  • Timer Events "belonging" to the Actions just visually associated (because of course, you can't edge mount an intermediate event on an Action)
I've got Geert Bellekens' Synchronize script to build on and I think I have the Util required for e.g. makeCallingActivity but I'd like to check my understanding of what I need to do

1/ Pick up the Properties - Call - Behaviour value of the action e.g. "«BusinessProcess»blah::blah::name"
2/ Change Action to BPMN2.0::Activity
3/ ?set instantiate on the new Activity?
4/ Set new Activity calledActivityRef to the process picked up in step 1 (presumably by GUID?)
5/ ?Set isACalledActivity on the process picked up in step 1
6/ Iterate over Control Flow connectors and set them to Sequence Flow
7/ ?Move the called process to the library area?

And, passing question: What is this "Action" thing? It has a BPMN2.0 stereotype but I find no ref to such a type in the BPMN2.0 formal spec.

And finally re the Timer events that need to be associated with the Activities (when created!) - is there any UI method for turning a floating e.g. Intermediate Event into an (edge) mounted event? If not - has anyone scripted this? (or script object model guidance on adding an IntermediateEvent as an ObjectNode structural element to the Activity?

ADDENDUM! I forgot to ask: how can one associate the diagram of the called businessprocess (if it exists)? I can create a new Composite Diagram via the UI but can't Select an existing diagram and don't know which property to poke in a script...

Many thanks

Julian
« Last Edit: June 22, 2017, 07:47:37 pm by Mr Stuff »