cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

How to find the association block which types a connector?

Regular Member

How to find the association block which types a connector?

I am looking for a way to find the type-defining block of a connector, such as "CableConnSocketA-SocketB" on the following diagram:

[Block] Context [Cable Reuse].png

I cannot find it in the properties of Connector. And I cannot find the connector in any of the browsers except the dictionary browser, that does not lead any further.

I would have expected a DataType tab in the Properties pane, as is common with other type definitions, such as with Full Ports, but nothing...

(If I select the port "toECU" on the above diagram I get such a DataType tab on the Properties pane, which shows me the full path of "Socket TypeA" and even allows me to switch to its Properties pane.)

 

The context of the above ibd diagram is the following bdd, where you can see the association-typing block "CableConnSocketA-SocketB" that I am looking for. The shown association between "Socket TypeA" and "Socket TypeB" is the one that I selected from the pop-up menu when I created the connection "Connector" on the ibd diagram above. The ibd belongs to the block "Context with Reuse" on the lower part of the bdd.

[Package] CableModeling with AssociationBlock Reuse [1].png

Does anybody know a way how I can find the block "CableConnSocketA-SocketB" in the model, coming from the ibd above?

 

Any hints are very welcome!

Jan

 

@ptc: Could you consider a new feature, where the Properties pane of a connection is enhanced by a "DataType" tab, as mentioned above?

(Sorry, but as Basic Member I am not allowed to create Product Ideas... Therefore I put this suggestion here, as it is directly related to my question. Feel free to move this part over.)

11 REPLIES 11

Re: How to find the association block which types a connector?

Clarification:

I just realized that "CableConnSocketA-SocketB" is not the name of the block (which is called "CableConnection SocketTypeA-SocketTypeB"), but the name of the association between "Socket TypeA" and "Socket TypeB" on the bdd.

But anyhow: It would be nice to be able to find out, which is the typing association of the connector.

Therefore my initial question remains valid, just strike out "block" from "association block", as this remains the missing link on the path to the block.

Furthermore I would highly appreciate to have a less quirky path from the association to the association block linked to the association. The only one I found is this one:

* select the association in the diagram (bdd)

* on its Properties pane go to the Item tab, there choose to get shown the AssociationClass

* there it is: "CableConnection SocketTypeA-SocketTypeB" -> but if you right-click on it and choose Find > In Package Browser, you get "Item not found in Package browser". Quite weird.

* But there is a path: instead of Find, after having selected the item click on the "Properties" icon in the right-upper Corner. This way you have the blocks properties. Now go to the General tab and right-click on the item's type icon > Find > In Package Browser and this time Modeler does not let you down again but shows you the block in the Package Browser.

Interestingly the AssociationClass list of the connector typed by the association "CableConnSocketA-SocketB" is empty...

I hope this clears up some potential confusion.

Still hoping for hints.

Jan

Re: How to find the association block which types a connector?

Hi Jan,

 

Perhaps this is too little too late, but I just happened to notice your question and I thought I might have a suggestion for you.  

 

First of all though, I think it's significant to note that connectors don't actually have data types, they just have (generally speaking) beginnings and endings. If you added an item flow to the connector, that could have a data type. Also, the beginning and ending points, i.e. ports, could have data types.   But not the connector itself.

 

So, I'm not exactly sure what you want to be able to find, but you might be able to get what you want by right clicking on a connector on your diagram, then selecting Report -> Details to see which things are associated via the connector (or Report -> Useage to get a list of the diagrams it appears on).

 

You can also use Tellme from the Tools menu to get in depth information about any diagram symbol/model item.

 

I hope this helps.

 

Regards,

Lyn

Re: How to find the association block which types a connector?

Hi Lyn,

thanks for your reply. Unfortunately the issue is still current. You haven't been too late ;-)

I can follow your argumentation, but it somehow does not fit to what I find in the Modeler.

If you look at the context diagram (ibd) above, you see that the right connector has it's "name" and "type" shown (Connector and CableConnSocketA-SocketB), where type is the name of the related association. (It disappears, if your disable "Show type" in the View Options of the connector). On the left connector the connectors name is not shown, just the "type" (CableConnSocketA-SocketB).

If I look in Report > Details, I get the type of the connector (Association) and the current ibd, but I do not get neither the name of the association (CableConnSocketA-SocketB) nor the diagram where this name is set.

Scanning through TellMe does not show this info in plaintext either. I did not verify if it is indirectly referenced via some of the IDs in there.

 

Therefore I still would like to trace back to the point where the name CableConnSocketA-SocketB was given to the association that ended up setting the "type" of the connector in the ibd...

Hints / Support still appreciated.

Thanks, Jan

Re: How to find the association block which types a connector?

Hi all,

This is a very valid question, and thanks for putting this here. Even I was not able to find association blocks (links) to start with in modeler, and this question helped me find it!!

However, I'm still finding it impossible to set the 'type' of connector as the association block. 

Thanks,

Mudit

Re: How to find the association block which types a connector?


@lhenderson wrote:

 

First of all though, I think it's significant to note that connectors don't actually have data types, they just have (generally speaking) beginnings and endings.


That is not correct; a connector can be typed by an association and when that association is described by an association block then the connector becomes an instance of that block in the context of the block that owns the connector.

Since at least SysML 1.2 there has been a connectorProperty in the language specification; see excerpt below from the SysML 1.2 specification. It therefore seems that Modeler does not implement this, or if it does then it is not exposed in the GUI. It would be really nice to be able to show the connector's "part" (i.e. the instance of the association block in context) on the IBD.

 

Regards

Dave Banham

<SysML 1.2>

8.3.2.3 ConnectorProperty

Description

Connectors can be typed by association classes that are stereotyped by Block (association blocks, see Section 8.3.2.6, "ParticipantProperty). These connectors specify instances of the association block created within the instances of the block that owns the connector. The values of a connector property are instances of the association block created due to the connector referred to by the connector property.

A connector property can optionally be shown in an internal block diagram with a dotted line from the connector line to a rectangle notating the connector property. The keyword «connector» before a property name indicates the property is stereotyped by ConnectorProperty.

</SysML 1.2>

Re: How to find the association block which types a connector?

I've created a product improvement suggestion for this issue: see https://community.ptc.com/t5/Integrity-Ideas/Implement-connectorProperty/idi-p/598443.

Re: How to find the association block which types a connector?

If I understand the problem correctly, although it's true you currently can't show the name of the association block on an IBD,  you can use a workaround to get to the block by doing  Report > Uses on the Connector.   Then, in the results,  select the Association.  In the properties pane for the Association, click the Items tab and select the Association Class item.  

 

See KB article =>

 

https://www.ptc.com/en/support/article?n=CS300511

 

Lyn

Re: How to find the association block which types a connector?

At least with IM v8.3b, the "report usage" command for a connector that is typed by an association only returns the IBD on which the connector is displayed. It does not report the typing association, nor does it report the owning block.

Re: How to find the association block which types a connector?

 I think you misread my response.   What you want to do is Report > Uses.  (This is different than Report > Usage)  Report > Uses will include the Association in the results, and selecting the Association in the results window will cause the properties pane to show the properties for the Association.   At that point, on the Items tab in the properties pane, you would want to drop down the Show associated box and select Association Class.  This will show you the block that types the association:

 

Capture.JPG