拓蹼報告表示式的函數

給 BIRT 資料集建立表示式時,可以使用這些函數。在表示式欄位中按 ALT+/,以查看函數清單及預先定義的 XPath 表示式。

列和欄中的表示式

BIRT 資料集包括數個用來指定所要擷取資料的表示式。每個資料集都具有單一列查詢,此表示式指定資料集列的資料。比方說,如果您想要顯示一個表來列出拓蹼中的每個單元,及直欄中單元的相關資訊,則可以使用下列表示式來建立列查詢:
DeployCoreRoot/topology/_schema-element_unit

在指定列查詢的表示式之後,將一個以上的表示式指定給直欄定義。這些表示式提供列查詢所識別拓蹼元素的相關資訊。比方說,如果列查詢傳回了單元,則可以指定直欄定義以擷取單元的屬性,例如,指定 @description 以擷取其說明,或者指定 @initInstallState 以擷取其起始安裝狀態。

使用函數,可以進一步瞭解您想要在列查詢或直欄定義中擷取的資訊。部分函數適合於列查詢,而其他函數適合於直欄定義。

列查詢中的函數

使用函數,您可以在列查詢中指定複式資料。例如,可以在列查詢中使用 getHosted 函數,來建立資料集,以僅包括指定單元所管理的單元。如果要使用此函數,請匯入拓蹼模型資料來源(如建立自訂報告範本中所述),使用查詢參數(例如 myUnit)從此資料來源建立新資料集,然後在資料集查詢中使用該參數及 getHosted 函數。此外,還必須將列對映的類型欄位設為查詢的相容傳回類型;如果是傳回單元的查詢,則可以指定 core:Unit
getHosted(resolveURI($myUnit))
在資料集查詢中使用該函數

類似於大部分函數,getHosted 函數接受 XPath 位置作為參數,在此情況下是主機單元的位置。拓蹼報告的預先定義 XPath 表示式中列示了常用的 XPath 表示式。

然而,大部分函數傳回拓蹼元素的 URI,而不是 XPath 位置。URI 包含工作區中拓蹼檔的位置,及拓蹼內單元的 ID,例如:
platform:/resource/MyProject/topologies/MyNamespace/MyTopology.topology#/Unit_1
URI 必須轉換成 XPath 位置,才能傳遞至函數。可以使用 resolveURI 函數將 URI 轉換成 XPath 位置,如此範例中所示:
resolveURI('platform:/resource/MyProject/topologies/MyNamespace/MyTopology.topology#/Unit_1')

在大多數情況下,您不需指定 XPath 位置或 URI 作為字串文字;報告範本隨附的大部分資料來源,都包含一個 URI 欄位以提供單元或其他拓蹼元素的 XPath 位置。可以將此 URI 參數傳遞至函數或另一個資料集,以便尋找單元或其他拓蹼元素。

報告中列的函數中列示了使用於列查詢的函數。

直欄定義中的函數

函數可以傳回每個拓蹼元素(由列查詢所傳回)的較複雜相關資訊。與傳回資料集的列查詢函數不同的是,直欄定義函數傳回單一資料部分,通常是諸如字串、整數或布林之類的初始值。

例如,getCaption 函數會傳回字串。如果使用諸如 DeployCoreRoot/topology/_schema-element_unit 之類的資料集查詢來建立可以傳回一系列單元的資料集,則可以使用 getCaption 函數,在資料集中建立一個直欄來顯示每個單元的標題。

在直欄定義中使用函數

類似於列查詢函數,直欄定義函數也採用 XPath 位置作為參數。然而,XPath 位置相對於列查詢所傳回的拓蹼元素。比方說,如果列查詢傳回單元,則那些單元用在直欄定義中的 XPath 位置是一個句點。在先前的範例中,如果列查詢傳回一系列單元,則可以使用表示式 getCaption(., 'true', 'true') 來建立直欄以包含其中每個單元的標題。

與拓蹼一起使用的 UML 及 EMF 函數

提供下列函數以用於「Eclipse 建模架構 (EMF)」及 UML 資料集,但它們也適用於拓蹼資料集。可以在列查詢及直欄定義中使用這些函數。
resolveURI(inputURI)
傳回所指定拓蹼元素的 XPath 位置。
inputURI
拓蹼元素的 URI。

傳回類型:字串

getURI(inputElement)
傳回所指定拓蹼元素的 URI。
inputElement
拓蹼元素的 XPath 位置。

傳回類型:字串

getXMIType(inputElement)
傳回所指定拓蹼元素的類型。
inputElement
拓蹼元素的 XPath 位置。

傳回類型:字串

您也可以使用 EMF 及 UML 資料集的其他 XPath 函數中列示的其他函數。


意見