Author Topic: v15.1-State machines - Select Trigger browser cannot find my signals/receptions  (Read 7142 times)

avi10000

  • EA User
  • **
  • Posts: 134
  • Karma: +0/-0
    • View Profile
Hi all,

Using v15.1

re: State machines - 'Select Trigger' browser cannot find my signals/receptions


I read in the book SysML Distilled page 166 that you define signals as owned by blocks:

       
If the state machine has a transition with a signal event trigger, then the structure that’s
       executing the state machine must own a reception that has the same
       name. Recall from Chapter 3, “Block Definition Diagrams,” that a reception
       is a kind of behavioral feature that a block can own; it’s the
       kind of behavioral feature that’s invoked upon receipt of a signal
       instance.

So I define signals and their corresponding receptions,
However, when I enter the Triggers definition (select the transitiion line > then Properties > Constraints > Triggers) and set Type to Trigger and then click the Elipsis to open the Select Trigger browser,

I browse to my BDD that contains the signals and receptions , but those signals and receptions are never visible.

What I am doing wrong?

Thanks,
Avi

« Last Edit: November 02, 2021, 12:09:12 am by avi10000 »

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 7736
  • Karma: +103/-18
    • View Profile
You need to create a trigger that accepts that signal. The dialog is trying to get you to select a Trigger, but you can use it to add a new one.
Eve

support@sparxsystems.com

avi10000

  • EA User
  • **
  • Posts: 134
  • Karma: +0/-0
    • View Profile
>> You need to create a trigger that accepts that signal. The dialog is trying to get you to select a Trigger, but you can use it to add a new one.

>> ... but you can use it to add a new one.

Right. I can enter a signal name right into the Name field and then click Save, and that will create a new trigger (waiting for a signal of that name, which then causes the transition).  That was a stroke of luck that that worked. 

But it seems to me that the way it is really supposed to work -- does not work for me (yet). 

>> create a trigger that accepts that signal.

So how do I create a a trigger that accepts that signal? (procedure)


Thanks

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 7736
  • Karma: +103/-18
    • View Profile
Go to the 'Trigger' page of the Trigger properties window.
Click the ellipsis for the 'Specification' field.
Select the appropriate signal and press 'OK'.
Alternately, click 'Add New' and create a new Signal.
Eve

support@sparxsystems.com

avi10000

  • EA User
  • **
  • Posts: 134
  • Karma: +0/-0
    • View Profile

Btw, I am using EA v15.1

avi10000

  • EA User
  • **
  • Posts: 134
  • Karma: +0/-0
    • View Profile
Hi Eve,
Thank you for your response.
So that is I what thought I have been doing.
Btw, I assume you mean to first select a state transition line.

But anyway, I followed your instructions to the 'T' , as follows, while adding some remarks.
Assuming I first select a state transition line….
1. Go to the 'Trigger' page of the Trigger properties window. Done, I think.
[Remark: In v15.1 there is a 'Trigger' pane (– not a Trigger page) within the Properties page. ]


2. Click the ellipsis for the 'Specification' field. Done, I think.
[Remark: Ok - so I click the the ellipsis button. Btw, the only ellipsis on the Properties page is next to the Name field, so that’s what I clicked.
Btw #2, you did not mention anything about first selecting the ‘Type’ (Call/Change/Signal/Time). So I left it blank, relying on you that everything will all turn out ok in the end.
Btw#3, at this point the Select Trigger browser window opens.


3. Select the appropriate signal and press 'OK'.
[Remark: None of my signals or receptions are visible. I mean those signals or receptions that I defined using the method that I assume is the “correct” (canonical) method of defining a BDD then child signals. ]


4. Alternately, click 'Add New' and create a new Signal. Done, I think.
[Remark: ‘Add New’ does not cause any action to occur. You can type a name in the Name field, and then click the ellipsis as above and this somehow forces the creation of a new event, whose name then appears next to the event transition line.



So bottom line:
1. Why cannot I see the events and receptions that I have created using the correct approach of BDDs and then adding signal children to the  BDD diagram?

2. Somehow I can create the event transitions by cheating, but it gets the job done. That's the way it seems to me. 


Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 7736
  • Karma: +103/-18
    • View Profile
2. I thought signal was the default. Set it to that.

3. It should show Signals, not events or receptions.

Eve

support@sparxsystems.com