2017-04-16 64 views
1

我想使用EA.Automation接口在StateMachine圖(Initial State,Choice,EntryPoint,ExitPoint ...)中查找元素的確切類型。看到下面的圖片:如何在狀態機圖中獲取元素的確切類型Enterprise Architect

我用下面的代碼片段:

void GetRealTypeOfNodes(EA.Diagram diagram) 
    { 
     var objects = diagram.DiagramObjects; 
     foreach(EA.DiagramObject obj in objects) 
     { 
      EA.Element elem = Repository.GetElementByID(obj.ElementID); 

      MessageLogger.log(elem.Type, obj.ObjectType.ToString(), elem.Name, obj.GetType().ToString()); 
     } 
    } 

但我得到的是:

  • 型元素:「StateNode 「 - 並非如預期的那樣,例如:初始狀態或選擇

你能幫助我得到我想要的嗎?

回答

2

您需要檢查Element.SubType

  • 11 =決定
  • 3 =初始

這可能介於EA的幫助下進行記錄,也可能不是。在SQL暫存區中發出查詢

SELECT name, ntype FROM t_object 

。這將返回subTypentype,你可以找出丟失的。

根據我的內幕書,StateNode s可以取值3,4,10,11,12,13,14,100和101爲SubType。但我沒有列出,哪個是哪個。

+0

謝謝,這正是我所需要的。 –

相關問題