掲示板一覧   -   トピック一覧
   EA API
     GUI操作時とEA APIからの操作時でのSysMLブロック定義図の挙動の違いについて


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
umesan
投稿日時: 2019-3-11 13:27
EA Administrator
投稿: 1142
GUI操作時とEA APIからの操作時でのSysMLブロック定義図の挙動の違いについて
サポート宛にいただきましたご指摘の要約です。

○ご指摘
SysMLのブロック定義図での、コンポジション接続時の挙動について質問です。

* APIで実装したい操作 *
EAのSysMLブロック定義図のダイアグラム上にBlock1とBlock2が配置されている状態で、この2つのブロックに、コンポジット集約(全体→部分)の関係をAPIを使って作成したい。

== GUI上の動作について(この操作をAPIで実装したいです。) ==

GUI上でBlock1とBlock2をコンポジット接続した時の動作
・Block1とBlock2をコンポジット接続する(Block1,Block2はダイアグラム上に事前配置済み)。
・SysMLブロック定義図のダイアグラム上でBlock1とBlock2をコンポジット線で接続する。
・Block1の区画にpartsとして、Block2が生成される。

=======================================

GUIでは、上記の動作となりますが、APIで同じことをしようとすると↓のようになります。

== APIを使った際の動作について(うまくいっていないところ) ==

API上でBlock1とBlock2をコンポジット接続した時の動作
・Block1とBlock2をコンポジット接続する(Block1,Block2はダイアグラム上に事前配置済み)。
・SysMLブロック定義図のダイアグラム上でBlock1とBlock2をコンポジット線で接続する。

API上で線を引くことはできました。(ここまでは期待通り)

しかし、接続線の生成のみで、Block1のpart区画は作成されませんでした。

そこで、別途API(Elements.AddNew("", "Part"))を使用しPartエレメントを明示的に作成したが、Block1の★parts★の区画に表示されず、★properties★の区画として、Block2が表示されてしまいます。

=======================================

GUI上で設定した際の構成要素と同じような値をPartエレメントに対して、設定しているつもりではいるのですが、同じように表示されないのは何故でしょうか?

どのプロパティ値にどのような値を設定したらparts区画に表示されますでしょうか?

AddNewでPartを指定しているのに、propertiesになってしまうのはおかしい(不具合?)と思っています。


〇回答
現在のEAでは、接続と子要素の関連付け(パートプロパティに対する接続の役割に束縛)を行うAPIがないため、ご要望のをAPIで実現することは、できないことがわかりました。
誠に申し訳ありませんが、ご了承いただけますようお願いいたします。


>EAのSysMLブロック定義図のダイアグラム上にBlock1とBlock2が配置されている状態で、この2つのブロックに、コンポジット集約(全体→部分)の関係をAPIを使って作成したい。
昨年4月に別のお客様からも同様のご指摘をいただいており、APIで対応できるように開発元に依頼しておりますが、現時点で対応されておりません。

改めて開発元に依頼するようにいたします。該当の部分に関しましては、現時点では、頂きましたGUIの操作もしくは以下のUIの操作で対応いただけますようお願いいたします。

パートプロパティ要素のコンテキストメニュー > 追加設定 > 接続の役割に束縛


>どのプロパティ値にどのような値を設定したらparts区画に表示されますでしょうか?
現在のEAでは、parts区画への表示か properties区画への表示かの判断に、上記「接続の役割に束縛」の有無を利用しているようです。申し訳ありませんが、回避方法はみつけられませんでした。こちらも併せて開発元に連絡いたします。

ご迷惑・お手数をおかけし誠に申し訳ございませんが、以上ご確認よろしくお願い致します。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ