掲示板一覧   -   トピック一覧
   EA API
     フォーク・ジョインが、どのパーティションに属するか調べる方法


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
sugimoto
投稿日時: 2008-6-27 14:04
EA Administrator
投稿: 1992

フォーク・ジョインが、どのパーティションに属するか調べる方法

○ご質問

APIで、フォークノード、ジョインノードがどのアクティビティパーティションに
属しているかを調べたいのですが、可能でしょうか?

DialogObjectの位置情報や大きさから算出するしかないでしょうか?


○回答

EA.DiagramObjectで取得したフォーク/ジョインの「ParentID」に
パーティションのIDが入っていますので、そのIDを元にパーティション
の情報を取得することができます。

ご参考までに、弊社で確認したソースコード(C#)を以下に記載します。

EA.DiagramObject dgmObj;
for (short i = 0; i < diagram.DiagramObjects.Count; i++)
{
  dgmObj = (EA.DiagramObject)diagram.DiagramObjects.GetAt(i);
  EA.Element elm = Repository.GetElementByID(dgmObj.ElementID);

  if (elm.Type == "Synchronization")
  {
    int ID = elm.ParentID;
    EA.Element elm2 = Repository.GetElementByID(ID);
    string type = elm2.Type;
    string name = elm2.Name;
  }
}

上記、elm2でパーティションの情報を取得できます。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ