#powerbi #ssas #relationship #dax
#powerbi #ssas #отношения #dax
Вопрос:
ОК. Так что это будет довольно сложно объяснить, но я постараюсь изо всех сил.
У меня есть четыре таблицы, которые имеют отношения, соединяющие их все.
- Таблица A подключена к таблице B с помощью одностороннего фильтра от B до A.
- Таблица B подключена к таблице C с помощью двустороннего фильтра от B до C и от C до B.
- Наконец, у меня есть таблица дат, которая связана с таблицей C через связь с датой.
По умолчанию DateTable фильтрует стандартные отношения, а не те, которые указаны выше. В результате мне приходится использовать пользовательскую связь, чтобы посмотреть правильную дату.
Я использую DAX таким образом, но при запуске он выдает ошибку SQL.
CALCULATE(
COUNTROWS(
FILTER('Table A',
'Table A'[Field1] = "Turtle" ||
'Table A'[Field1] = "Zebra"
)
), USERELATIONSHIP('Date'[Date], 'Table C'[SpecialDateKey])
)
Я думаю, проблема в том, что я не применяю ПОЛЬЗОВАТЕЛЬСКИЕ ОТНОШЕНИЯ к родителю (таблица B), а вместо этого к дедушке и бабушке (таблица C). Есть ли стандартный способ заставить эти отношения работать или мне лучше попробовать объединить таблицу B и таблицу C?
Комментарии:
1. Пожалуйста, предоставьте изображение модели (диаграмму отношений) из PowerBI. Вы говорите, что получаете ошибку, пожалуйста, укажите ошибку, которую вы получаете. Я теряюсь, когда вы говорите: таблица A подключена к таблице B хотите односторонний фильтр? Я не знаю, что таблицы могут быть связаны фильтрами, они связаны только отношениями.
2. У вас есть НЕАКТИВНЫЕ отношения между ‘Date’ и ‘Table C’ в столбцах, которые вы указали в функции? Возвращается ошибка, если какой-либо из столбцов, названных в качестве аргумента, не является частью отношения или аргументы принадлежат разным отношениям.