2016-06-13 13 views
0

Ich habe gerade erst begonnen, Power BI und DAX für meinen neuen Job zu verwenden, also wenn dies ein ist super einfach oder blöd fix ich entschuldige mich.Power BI: DAX-Formel zur Ermittlung der Anzahl der Tage zwischen den Daten gibt "eine ungültige numerische Darstellung eines Datums wurde encounted" Fehler

Ich versuche, eine Spalte (NumDays) zu erstellen, die die Anzahl der Tage innerhalb eines Datumsbereichs berechnet, und eine Spalte (NumWorkDays), die die Anzahl der Arbeitstage zwischen dem Datumsbereich berechnet. Ich habe eine Tabelle (Kalender), die eine Liste von Daten enthält und mit 1 oder 0 angibt, ob es ein Arbeitstag ist oder nicht (Mo-Fr). In einer separaten Tabelle (Shipments) habe ich zwei Datumswerte. Ich versuche die Anzahl der Arbeitstage zwischen DateOfDelivery und DateOfSale zu finden.

Hier sind meine DAX-Formeln für beide Spalten ...

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]))) 

Jedes Mal, wenn ich versuche, entweder Formel zu laufen, bekomme ich diese Fehlermeldung:

An invalid numeric representation of a date value was encountered.

Und das war's. Ich habe beide Tabellen durchsucht, um nach merkwürdigen Werten zu suchen, und ich habe die Datentypen zweimal überprüft, um sicherzustellen, dass sie Datumsangaben sind und nicht etwas Funkhaftes. Ehrlich gesagt bin ich hier ziemlich ratlos, also würde jede Hilfe geschätzt werden. Danke im Voraus!

** Edit: Ich habe versucht, die Teile jeder Formel zu zerlegen, um zu versuchen, genau festzustellen, wo der Fehler verursacht wird. Es scheint, als ob es von der Funktion DATESBETWEEN() stammt, aber ich kann es nicht auf eine bestimmte Spalte oder Tabelle eingrenzen, die das Problem verursacht. Ist das nur ein bekanntes Problem mit dieser Funktion?

Antwort

0

Antwort von jemandem in den Power BI Community-Foren ... Es stellte sich heraus, dass DATESBETWEEN() nicht der richtige Weg war.

Aktualisiert numdays:

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

Aktualisiert NumWorkDays:

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

Hier ist der Link zum Beitrag auf ihrer Website: http://community.powerbi.com/t5/Desktop/DATESBETWEEN-gives-quot-Invalid-Numeric-Representation-of-a-Date/m-p/42604#M16306