У меня есть 1 виртуальный куб состоит из 2 кубов. Пример таблицы фактов 1-го куба.MDX: iif условие на величину измерения
id object_id time_id date_id state
1 10 2 1 0
2 11 5 1 0
3 10 7 1 1
4 10 3 1 0
5 11 4 1 0
6 11 7 1 1
7 10 8 1 0
8 11 5 1 0
9 10 7 1 1
10 10 9 1 2
Где Состояние: 0 - Хорошо, 1 - вниз, 2 - Неизвестный
Для этого куба у меня есть одна мера StateCount она должна рассчитывать государства для каждого object_id. Вот, например, мы имеем такой результат:
для 10: 3 раз Ok, 2 раза вниз, 1 раз не указан для 11: 3 раз Ok, 1 раз вниз
Второй куб выглядит следующим образом:
id object_id time_id date_id status
1 10 2 1 0
2 11 5 1 0
3 10 7 1 1
4 10 3 1 1
5 11 4 1 1
Статус: 0 - out, 1 - in. Я сохраняю это в StatusDim.
В этой таблице хранятся записи, которые не должны учитываться. Если объект имеет статус 1, это означает, что я исключил его из count.
Если мы пересекались эти таблицы и использовать StateCount мы получим этот результат:
для 10: 2 раза Ok, 1 раз вниз, 1 раз Неизвестных
для 11: 2 раза Ok, 1 разы вниз
Насколько я знаю, я должен использовать рассчитанный элемент с условием IIF
. В настоящее время я пытаюсь что-то вроде этого.
WITH MEMBER [Measures].[StateTimeCountDown] AS(
iif(
[StatusDimDown.DowntimeHierarchy].[DowntimeStatus].CurrentMember.MemberValue
<> "in"
, [Measures].[StateTimeCount]
, null)
)
Должен ли '[StatusDimDown.DowntimeHierarchy]' иметь дополнительные квадратные скобки '[StatusDimDown]. [DowntimeHierarchy]'? Какова релевантность «в»? – whytheq