掲示板一覧   -   トピック一覧
   EA API
     内部ブロック図の情報取得方法


フラット表示 前のトピック | 次のトピック
投稿者 トピック
mogass
投稿日時: 2012-3-9 16:28
EA Administrator
投稿: 171

内部ブロック図の情報取得方法

サポートに頂きましたお問い合わせと回答の要約です。

○お問い合わせ

モデル要素の情報を取得するにあたり,幾つかの情報の取得方法が不明な点があります。
以下の情報の取得方法につきまして,アドバイスを頂ければ幸いです.
(使用しているモデルはSysMLのモデルとなります)

1. 内部ブロック図にて,プロパティ(パーツ)を配置し,
  追加設定」-「プロパティ種類の設定」を使用して
  プロパティの型を設定した時の設定した型情報
2. 内部ブロック図にて,プロパティ(パーツ)を配置し,
  プロパティにて「キーワード」を設定した時のキーワード情報
3. 内部ブロック図に配置したプロパティに対し,
  フローポートを設定し,「追加設定」-「プロパティ種類の設定」を
  使用してフローポートの型を設定した時の設定した型情報
4. 内部ブロック図にて,フローポート間をコネクタを使用して
  接続した場合のコネクタの情報

上記の各情報につきまして,取得方法,もしくはサンプル(Java)などが
ございましたら,お教え頂ければ幸いです.

○回答

引用:

1. 内部ブロック図にて,プロパティ(パーツ)を配置し,
  追加設定」-「プロパティ種類の設定」を使用して
  プロパティの型を設定した時の設定した型情報

この情報は、ElementオブジェクトのMiscData属性で
取得することができます。
MiscDataは引数0~4の配列(の文字列)となっており、
該当する情報はMiscData(0)を参照することにより
取得することができます。

MiscData(0)で取得した値は対象となる
ElementオブジェクトのGUIDとなっており、
このGUIDを元に対象のElementオブジェクトを取得します。

GUIDを元にElementオブジェクトを取得する方法は
いくつかあります。
全てのパッケージの全ての要素を順に確認し
GUIDが合致する要素を探す方法もありますが、
RepositoryオブジェクトのGetElementByGuid()メソッドを
使用すると、引数のGUIDに合致するElementオブジェクトを
返してくれるので、簡単に取得することができます。

Elementオブジェクトに関しましては、
ヘルプの「Element」のページをご覧ください。
Repositoryオブジェクトに関しましては、
ヘルプの「Repository」のページをご覧ください。

引用:

2. 内部ブロック図にて,プロパティ(パーツ)を配置し,
  プロパティにて「キーワード」を設定した時のキーワード情報

上記と同じく、ElementオブジェクトのMiscDataに値が
格納されています。
該当する情報はMiscData(4)を参照することにより
取得することができます。

引用:

3. 内部ブロック図に配置したプロパティに対し,
  フローポートを設定し,「追加設定」-「プロパティ種類の設定」を
  使用してフローポートの型を設定した時の設定した型情報

フローポートに関しましてもプロパティ(パーツ)と同様、
Element.MiscData(0)を参照することにより取得することができます。

引用:

4. 内部ブロック図にて,フローポート間をコネクタを使用して
  接続した場合のコネクタの情報

コネクタの情報は、Connectorオブジェクトとなります。
接続されている(フローポートの)Elementオブジェクトの
Connectors属性に格納されています。

Connectorsはコレクションオブジェクトとなっており、
GetAt()メソッドやGetByName()メソッドで、格納されている
Connectorオブジェクトを取得することができます。

コレクションオブジェクトに関しましては、
ヘルプの「Collection」のページをご覧ください。

Connectorオブジェクトに関しましては、
ヘルプの「Connector」のページをご覧ください。

サンプルコードに関しましては、
Javaのコードではございませんが、
ヘルプの「サンプルコード」のページ以下を
ご参考にしていただければ幸いです。

また、Enterprise Architectのインストールディレクトリ
の"code samples"フォルダ以下にささやかなサンプルコード
がありますので、こちらもご参考にしてください。
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » 内部ブロック図の情報取得方法 mogass 2012-3-9 16:28