格式字串
使用格式字串,您可以將數值類型測量中的 Essbase 成員值格式化,以便顯示它們以供查詢之用,如文字、日期或其他預先定義的值類型。您可以在計量維度中的所有成員,以及其他維度的公式成員上定義格式字串。
使用格式字串時顯示的值是儲存格的格式值 (MDX 中的 FORMATTED_VALUE 特性)。
基礎實際值為數值,且此值不受相關聯的格式化值影響。格式字串可讓您在取代原始數值時顯示更有意義的值。例如,使用以文字為基礎的格式化值,您可以將資料儲存格顯示為「高」、「中」和「低」。
此外,還支援使用內建文字和日期計量類型的文字和日期類型值。格式字串為您的實作增加了更多的彈性,因此您可以將格式字串套用至多個維度的成員,而使用文字和日期測量,則只能將一個或另一個字串套用至單一測量維度。您可以將格式字串套用至數值維度;您不需要將維度輸入為文字或日期。
格式字串可套用至聚總儲存 (ASO) 或區塊儲存 (BSO) 資料庫。
主題:
實行格式字串
聚總儲存 (ASO) 和區塊儲存 (BSO) 資料庫支援格式字串。您可以在資料庫層次實行格式字串。使用下列工作流程來啟用與使用 Essbase 中的格式字串。
-
在大綱特性中,啟用輸入的計量。
-
在「帳戶」維度中,建立您要格式化其成員的計量,並在其成員特性中編輯「關聯格式字串」欄位,以建立 MDX 格式指令。如需建立 MDX 格式指令的語法,請參閱 MDX 格式指令。
格式字串的限制
分割區不支援格式字串。
格式字串的長度上限為 256 個字元。
共用成員 (包括隱含的共用) 不能有個別的格式字串。共用成員會繼承原型成員的格式字串。
MDX 格式指令
您可以在 ASO 和 BSO 立方體中使用 MDX 表示式定義 Essbase 格式字串。
套用格式字串的 MDX 語法如下:
format_string_expression = MdxFormat (string_value_expression)其中 string_value_expression 是有效的 MDX 字串值表示式,如 MDX 規格中所述 (請參閱 MDX 文法規則 )。
大部分的 MDX 表示式都可以用來指定格式字串;但是,格式字串不能包含目前格式化之儲存格值以外的資料儲存格值的參照。您可以使用 MDX CellValue 函數來參照目前的儲存格值。
Essbase 會將具有無效格式字串的成員視為未定義格式字串。大綱可以使用無效的格式字串儲存。如果查詢是由格式字串無效的成員所組成, Essbase 會產生警告。
如果成員未與格式字串相關聯,則會套用預設格式規則。預設格式規則會根據計量為數值、文字或日期類型來格式化儲存格。對於數值計量,預設格式化值為該數字的文字版本。對於文字計量,預設格式化值為根據相關文字清單物件的文字值。對於日期值,預設格式是根據大綱特性中定義的日期格式字串格式化的日期字串。
支援格式字串的函數
當您將格式字串套用至 Essbase 測量時,有些 MDX 函數會很有用。
格式字串會在 ASO 和 BSO 立方體中套用為 MDX 表示式。
-
EnumText 會傳回與內部數值相關聯的文字清單標籤。
-
EnumValue 會傳回文字清單標籤的內部數值。
-
CellValue 會傳回目前儲存格的內部數值。
-
NumToStr 會將值轉換成小數字串。
@ENUMVALUE 計算函數在為具有文字計量或格式字串的區塊儲存資料庫寫入計算命令檔時非常有用。此函數會傳回與內部數值相關聯的文字清單標籤。
MaxL alter session set dml_output 敘述句的子句 set formatted_value on | off 。依照預設,格式化的值會顯示在查詢中,但此敘述句可用來關閉格式化值的顯示。
OUTFORMATTEDVALUES Report Writer 命令會傳回報表中格式化的儲存格值。