I've been struggling with SysML Send Signal Actions and Accept Event Actions for a while. This thread and the Executing Activity Diagrams
thread helped.
However, neither of the examples, nor the discussion touched on passing parameters. After making a simple working model, I added parameter passing. I got XYZ isn't an integer errors when trying to extract an integer from a Accept Event Action. The Console window showed the signal name and path as well as the integer that I wanted in square braces [] so I knew that I was close to a working solution.
On a whim I dragged the Signal over the object flow from the Accept Event Action output pin to an input pin on an Opaque action. Cameo offered to drop a readStructuralFeature between the pins. I attached the Accept Event output to the readstruct input and the readstruct output to the Opaque input pin. After which the model passed parameters. To me this does not appear to be an obvious solution.
Why isn't the actual value, not the signal structure presented on the Accept Event Action output pin? I suppose that what I did was place the signal, but not the parameters on the input of the Send Signal? Is it possible to just send a parameter, how? Am I doing this properly is there a more elegant means to pass parameters via these Actions?
Thanks!