Матрица показывает строки только в том случае, если есть результат для этой строки. Вы можете подумать: это 0, поэтому результата нет. Но это неправильно: 0 тоже допустимый результат. Чтобы удалить строку, вы должны убедиться, что результат пуст, также известный как NULL в базах данных и BLANK в DAX.
Поскольку вы не опубликовали DAX своих мер, некоторые предложения:
- Удалите нули из исходных данных. Не уверен, что у вас есть доступ к данным, но вы можете заменить 0 нулевыми / пустыми значениями либо в PowerQuery, либо в SQL.
- Мы не можем видеть исходные данные (что означают данные в как выглядит таблица фактов?), но я предполагаю, что именно в этом и заключается настоящая «проблема».
- Внесите поправку в меру. Не самое красивое решение, но работает. псевдокод:
VAR _Show = COUNT ( 'Fact'[ID] )
RETURN
IF ( _Show = 0 , BLANK(), _Show)
Но, опять же, нам нужна дополнительная информация о данных в вашей таблице фактов и мерах, которые вы уже создали.
Изменить:
Вы уже заменили BLANKS на 0 и включили «Показывать элементы без данных». Тогда указанная выше мера не принесет никакой пользы.
Предложение:
- Отключите «Показывать элементы без данных»!
Новая мера :
(при условии, что DimStatus [Description] находится в столбце
# Count =
// Orginal Measure: Count Unique IDs
VAR __COUNTROSTER = DISTINCTCOUNT('FactJobClubOrientation'[RosterID])
// Second Measuse: Count Regardless of show or no show, to see if there was a session
VAR __COUNTALLROSTER = CALCULATE(DISTINCTCOUNT('FactJobClubOrientation'[RosterID]), ALL('DimStatus'[Description]))
RETURN
// If there was a sesssion, show the measure with 0 instead of blanks
IF ( __COUNTALLROSTER > 0 , IF ( ISBLANK(__COUNTROSTER) , 0 , __COUNTROSTER))
Третье предложение:
Вы хотите, чтобы все локации отображались с 0, если нет показа. Я включил проверку ISINSCOPE для DimDate, чтобы он не показывал 0 при сворачивании местоположения.
# Count =
// Orginal Measure: Count Unique IDs
VAR __COUNTROSTER = DISTINCTCOUNT('FactJobClubOrientation'[RosterID])
// Second Measuse: Count Regardless of show or no show, to see if there was a session
VAR __COUNTALLROSTER = CALCULATE(DISTINCTCOUNT('FactJobClubOrientation'[RosterID]), ALL('DimStatus'[Description]))
// Third: Show 0 for all locations, if there's no session.
VAR __NOROSTER = IF ( NOT ISINSCOPE('DimDate'[SessionDate]) , CALCULATE( 0 , ALL(DimLocation)))
RETURN
// If there was a sesssion, show the measure with 0 instead of blanks
IF ( __COUNTALLROSTER > 0 , IF ( ISBLANK(__COUNTROSTER) , 0 , __COUNTROSTER), __NOROSTER)