1

我一直在使用Datazen一段時間,努力瞭解它如何在內部工作,特別是缺乏關於它的文檔。Datazen - SSAS表格模型 - 日期未考慮

無論如何,我有一個SSAS表格模型,其中有一個日期時間字段在表中標記爲日期。我使用這個表格模型在Excel中創建報告,並且工作正常。

現在,我想在Datazen使用這個表格模型中,我試圖創建,讀取的措施和MDX屬性的數據視圖

問題是,當我標誌着場創建日期爲DATETIME在Datazen控制面板,它給了我下面的消息: Failed to refresh in Dashboard

這是我使用的MDX查詢:

SELECT NON EMPTY { 
    [Measures].[Count of Misuse Bugs], 
    [Measures].[Count of Valid Bugs], 
[Measures].[Count of Bugs], 
[Measures].[Count of Invalid Bugs], 
[Measures].[Time Spent on invalid Bugs], 
[Measures].[Time Spent on Valid Bugs], 
[Measures].[Invalidity Ratio], 
[Measures].[Misuse Ratio] 
} ON COLUMNS, 
NON EMPTY { 
    (
    [Bugs].[BugID].[BugID].ALLMEMBERS * 
    [Bugs].[BugTitle].[BugTitle].ALLMEMBERS * 
    [Bugs].[Client].[Client].ALLMEMBERS * 
    [Bugs].[Current State].[Current State].ALLMEMBERS * 
    [Bugs].[Final Resolution].[Final Resolution].ALLMEMBERS * 
    [Bugs].[Internal Vs. External].[Internal Vs. External].ALLMEMBERS * 
    [Bugs].[Last Reasonable State].[Last Reasonable State].ALLMEMBERS * 
    [Bugs].[Owner].[Owner].ALLMEMBERS * 
    [Bugs].[Owner State].[Owner State].ALLMEMBERS * 
    [Bugs].[Project].[Project].ALLMEMBERS * 
    [Bugs].[Release].[Release].ALLMEMBERS * 
    [Bugs].[Responsibility].[Responsibility].ALLMEMBERS * 
    [Bugs].[TAR].[TAR].ALLMEMBERS * 
    [Creation Dates].[Creation Date].[Creation Date].ALLMEMBERS 
) 
} ON ROWS FROM [Bugs] 

我使用SQL Server 2012的任何幫助將是很大的更加感激ated。 ADDING FIELD AS DATETIME IN DATAZEN DATA VIEW

回答

0

Datazen在理解日期格式化方面並不是最有活力的。嘗試格式化爲yyyy-MM-dd。

編輯:我正在創建一個新格式的日期成員。希望這會對你有用。

WITH 
MEMBER DatazenDate AS 
cdate(format([Creation Dates].[Creation Date].CURRENTMEMBER.MEMBER_VALUE, "yyyy-MM-dd"))  

SELECT NON EMPTY { 
    DatazenDate   
    [Measures].[Count of Misuse Bugs], 
     [Measures].[Count of Valid Bugs], 
    [Measures].[Count of Bugs], 
    [Measures].[Count of Invalid Bugs], 
    [Measures].[Time Spent on invalid Bugs], 
    [Measures].[Time Spent on Valid Bugs], 
    [Measures].[Invalidity Ratio], 
    [Measures].[Misuse Ratio] 
    } ON COLUMNS, 
    NON EMPTY { 
     (
     [Bugs].[BugID].[BugID].ALLMEMBERS * 
     [Bugs].[BugTitle].[BugTitle].ALLMEMBERS * 
     [Bugs].[Client].[Client].ALLMEMBERS * 
     [Bugs].[Current State].[Current State].ALLMEMBERS * 
     [Bugs].[Final Resolution].[Final Resolution].ALLMEMBERS * 
     [Bugs].[Internal Vs. External].[Internal Vs. External].ALLMEMBERS * 
     [Bugs].[Last Reasonable State].[Last Reasonable State].ALLMEMBERS * 
     [Bugs].[Owner].[Owner].ALLMEMBERS * 
     [Bugs].[Owner State].[Owner State].ALLMEMBERS * 
     [Bugs].[Project].[Project].ALLMEMBERS * 
     [Bugs].[Release].[Release].ALLMEMBERS * 
     [Bugs].[Responsibility].[Responsibility].ALLMEMBERS * 
     [Bugs].[TAR].[TAR].ALLMEMBERS * 
     [Creation Dates].[Creation Date].[Creation Date].ALLMEMBERS 
    ) 
    } ON ROWS FROM [Bugs] 
+0

我們該怎麼做到這一點?使用cdate?你可以請我在上面提到的MDX查詢如何完成? – mazazino

+0

用一個新成員編輯我的答案,這是一個正式日期。 –

+0

非常感謝,它確實有效。但問題是現在的表現。隨着我添加或測量的每個成員,cdate成員正在以指數方式放慢查詢性能。還有其他的選擇嗎? – mazazino

0

我有同樣的問題,

我用下面的方法,

WITH 
MEMBER SalesDateAsDateTime as 
Iif([Measures].[WorkOrderCount]=0, null, [Sales Date].[Calendar Date].CurrentMember.MEMBER_VALUE) 

WITH 
MEMBER SalesDateAsDateTime AS 
cdate(format([Sales Date].[Calendar Date].CURRENTMEMBER.MEMBER_VALUE, "yyyy-MM-dd")) 

WITH MEMBER [Measures].[SalesDateAsDateTime] AS 

([Sales Date].[Calendar Date].CurrentMember.MEMBERVALUE) 

但是,所有這些需要較長的時間才能得到結果,最後我添加了一個日期直接測量立方體MAXIMUM

這很快