web-dev-qa-db-ja.com

OPENQUERYを使用してフォーマットされたMDX値を取得する

MDXの値をFORMAT_STRINGを使用して文字列に変換する方法はありますか?

次のようなコードがあります。

SELECT *
FROM OPENQUERY(DWDB001AS, '
WITH MEMBER [Measures].[ROH Total Sold Gross]
    AS [Measures].[ROH Total Sold Dollars] - [Measures].[ROH Total Sold Cost]
        ,FORMAT_STRING=''Currency''
SELECT {
    [Measures].[ROH Total Sold Gross]
    } ON COLUMNS
FROM [ServiceDept]
')

数値ではなくフォーマットされた文字列を返すようにしています。 CSTR関数は、フォーマット文字列を考慮していないようです。

SQLでそれらを変換することは、ここではオプションではありません。これは、行のフォーマット文字列が異なるためです。行のタイトルに基づいてそれらを変換することは可能かもしれませんが、私はSSASに作業を任せたいと思います。

3

私はFormat関数を使用してこれを解決することになり、次のようになります。

MEMBER [RO Count] AS Format([Measures].[ROH Count], "General Number")

誰かがより明確な答えを持っている場合に備えて、質問を少しの間開いたままにします。ハードコードするのではなく、計算されたメンバーからフォーマット文字列をプルしたかったのですが、方法がわかりませんでした。

2