2017-10-21 97 views
0

Time bucket時間桶在雙向電力

列DAX查詢:

Column = if(Table1[TransactionDate].[Date]=Table1[COBProcessDate].[Date], 
    SWITCH (
     TRUE(), 
    HOUR (Table1[COBProcessDate]) 
    + MINUTE (Table1[COBProcessDate])/60 
    >= 6 
    && HOUR (Table1[COBProcessDate]) 
     + MINUTE (Table1[COBProcessDate])/60 
     < 8.5, "6:00 a.m. - 8:30 a.m.", 
HOUR (Table1[COBProcessDate]) 
    + MINUTE (Table1[COBProcessDate])/60 
    >= 8.5 
    && HOUR (Table1[COBProcessDate]) 
     + MINUTE (Table1[COBProcessDate])/60 
     < 9.5, "8:30 a.m. - 9:30 a.m", 
HOUR (Table1[COBProcessDate].[Date]) 
    + MINUTE (Table1[COBProcessDate])/60 
    >= 9.5 
    && HOUR (Table1[COBProcessDate]) 
     + MINUTE (Table1[COBProcessDate])/60 
     < 12, "9:30 a.m. to noon", 
HOUR (Table1[COBProcessDate]) 
    + MINUTE (Table1[COBProcessDate])/60 
    >= 12 
    && HOUR (Table1[COBProcessDate]) 
     + MINUTE (Table1[COBProcessDate])/60 
     < 15.5, "noon to 3:30 p.m.", 
HOUR (Table1[COBProcessDate].[Date]) 
    + MINUTE (Table1[COBProcessDate])/60 
    >= 15.5 
    && HOUR (Table1[COBProcessDate]) 
     + MINUTE (Table1[COBProcessDate])/60 
     < 18, "3:30 p.m. to 6:00 p.m.", 
"6:00 p.m. - 6:00 a.m."),"Next Day") 

我不能夠在正確的系列安排時間。例如上午6:30至上午8:30,然後上午8:30至上午9:30,然後中午至下午6:30,然後是下午6:30至下午11:59,然後是第二天。連接了 屏幕截圖。 在此先感謝。

回答

1

默認的列值按字母順序排列,如果你想或者必須改變這一點,你必須完成以下步驟:

創建另一個計算列「列索引」 列值將是用於排列第一列的列值。 結果會是這個樣子

... | column | column index 
... | 6:00 a.m. - 8:30 a.m. | 1 
... | 8:30 a.m. - 9:30 a.m. | 2 
... 

您可以使用完全相同的DAX公式,而是返回一個字符串將返回表示排序指數

排序「列」的數值「排序列」 在「數據視圖」標記您要訂購的列,切換到「建模」功能區並選擇「按列排序」 - 選擇包含數值的列。

隱藏索引列 爲了避免在字段窗格中混亂,我總是隱藏我的索引列。

希望這是你在找什麼

問候 湯姆

+0

謝謝..它的工作.. –