2013-10-20 155 views
2

在模型搜索功能中似乎沒有將結果限制爲特定類型的方法,例如,類,節點等有沒有辦法實現這一點?我知道我可以製作一個SQL查詢,但無法找到正確的表名。有沒有辦法在Sparx Enterprise Architect中搜索元素類型?

編輯

看來,我可以做以下

Select *, Object_Type AS CLASSTYPE, Name from t_object Where Object_Type="Node"

似乎Sparx似乎沒有記錄Object_Type,因爲它在文檔中顯示爲Type

回答

1

通過在搜索術語框中輸入內容,沒有縮小內置搜索結果的標準方法。

如果使用查詢生成器創建搜索,則可以指定搜索只應返回某些類型的元素。在「添加過濾器」對話框中,元素類型被稱爲ObjectType

可以利用SQL字符串操作函數來實現SQL查詢,該查詢根據您決定的某種語法將<Search Term>分解爲多個部分,允許您指定名稱和元素類型,比如說(但不是內置搜索可以做到這一點)。這是不可能的使用查詢生成器。

如果您創建自己的SQL搜索查詢,如您所知,t_object.Object_Type包含該元素的類型。

關於文檔,它只是沒有記錄的數據庫模式。您引用的Type字段來自對象模型API,並且在該API中,該屬性實際上被稱爲類型。

此外,API中的所有類都包含一個屬性ObjectType,該屬性標識數據類型。這些值來自ObjectType枚舉類型,並且包括otAttribute,otDiagram,otElement,otRepository等。

+0

謝謝。儘管我如何搜索給定的元素類型,例如節點使用模型搜索功能,而不是利用SQL – PeanutsMonkey

+0

你是什麼意思'識別數據類型? – PeanutsMonkey

+0

API中的所有數據類型都有此(靜態)成員,其唯一用途是區分數據類型。大多數情況下你不需要檢查它,但有時你會得到一個匿名對象(例如Repository.GetTreeSelectedObject)。有關使用示例,請創建一個瀏覽器腳本並查看爲您創建的代碼。 – Uffe

相關問題