2016-06-13 21 views
0

我剛剛使用Power BI和DAX爲我的新工作開始,所以如果這是一個超級簡單或愚蠢的修復我道歉。功率BI:DAX公式來查找日期之間的天數給予「日期值的無效數字表示是中遇到」錯誤

我試圖創建一個計算的日期範圍之間工作天數列(NUMDAYS),其計算日期範圍內的天數,和列(NumWorkDays)。我有一個包含日期列表的表格(日曆),並用1或0表示是否是工作日(週一至週五)。在一個單獨的表(出貨量),我有我想要找的工作天數兩個日期值:DateOfDelivery和DateOfSale。

這裏是我的DAX公式爲列...

NUMDAYS:

NumDays = IF(ISBLANK('Shipments'[DateOfDelivery]), -1, CALCULATE(COUNTROWS('Calendar'),DATESBETWEEN('Calendar'[Dates],'Shipments'[DateOfSale], 'Shipments'[DateOfDelivery]))) 

NumWorkDays:

NumWorkDays = IF(ISBLANK('Shipments'[DateOfDelivery]), -1, CALCULATE(SUM('Calendar'[IsWorkDay]),DATESBETWEEN('Calendar'[Dates],'Shipments'[DateOfSale], 'Shipments'[DateOfDelivery]))) 

每當我嘗試運行任何公式,我得到這個錯誤:

An invalid numeric representation of a date value was encountered.

就是這樣。我已經通過兩個表尋找奇怪的值,並且我已經仔細檢查了數據類型以確保它們是日期時間而不是有趣的。老實說我很難過,所以任何幫助,將不勝感激。提前致謝!

**編輯:我試圖打破每個公式的部分嘗試並查明正在導致錯誤的位置。看起來這是一個從DATESBETWEEN()函數發起,但我不能縮小它特定的列或表導致該問題。這只是該功能的一個已知問題?

回答

0

得到了別人的電源BI社區論壇的答案......原來使用DATESBETWEEN()是不正確的方式去。

更新NUMDAYS:

NumDays = IF(ISBLANK('Shipments'[DateOfDelivery]), -1, CALCULATE(COUNTROWS('Calendar'),filter('Calendar', 'Calendar'[Dates]>('Shipments'[DateofSale]) && 'Calendar'[Dates]<=(''[Delivered])))) 

更新NumWorkDays:

NumWorkDays = IF(ISBLANK('Shipments'[DateOfDelivery]), -1, CALCULATE(COUNTROWS('Calendar'), filter('Calendar', 'Calendar'[Dates]>('Shipments'[DateofSale]) && 'Calendar'[Dates]<=('Shipments'[DateOfDelivery])&& 'Calendar'[WorkDay]=1))) 

這裏的鏈接在其網站上的帖子:http://community.powerbi.com/t5/Desktop/DATESBETWEEN-gives-quot-Invalid-Numeric-Representation-of-a-Date/m-p/42604#M16306

相關問題