2010-09-23 50 views
0

我們有使用Analysis Services作爲數據源的項目。爲了避免由於我們允許的所有選擇選項而必須創建100個查詢,我們使用大量的開關和字符串連接來創建我們的mdx查詢。這是我們的「數據訪問層」。這是一個管理的野獸和最小的錯誤:缺失的空間,錯誤拼寫很容易錯過,甚至更容易意外地包括在內。有沒有人知道一個好的資源,可以幫助使這個更易於管理,如教程,白皮書或示例項目。用於Analysis Services的數據訪問層(帶動態MDX)

爲了讓你我在談論的情況下邏輯的想法,它的推移和... 如果(時間==日) { 如果(年==一) { 回報( 「MEMBER」+ CurrentSalesPercent + 「AS([Sales%」+ YearString +「」+ StatusType +「])」); } else // 2Y return(「MEMBER」+ CurrentSalesPercent + 「AS([Sales%2Y」+ StatusType +「])」); }} 其他 如果(時間==周) { 如果(年==一) { 回報( 「成員 」+ CurrentSalesPercent + 「 AS([銷售WTD% 」+ YearString +「」 + StatusType +「])」); } else // 2Y return(「MEMBER」+ CurrentSalesPercent + 「AS([Sales WTD%2Y」+ StatusType +「])」); } ...

說實話,我不確定所有不同的措施和計算是否正確。但是,這是由另一個團隊控制的,所以我們在這裏的影響力稍小。

謝謝! mkt

回答

1

你看過MS生成MDX的方式嗎?如果您安裝了SSRS,請獲取「Red gate Reflector」並反彙編C:\ Program Files \ Microsoft SQL Server \ MSRS10.MSSQLSERVER \ Reporting Services \ ReportServer \ bin \ MDXQueryGenerator.dll

除此之外,預先設置的查詢拿參數看起來很標準:(