Ι Я пытаюсь сделать вычисляемый атрибут измерения с помощью именованного набора, но я не очень хорошо знаком с mdx. Я хочу, чтобы атрибут содержал описание, основанное на значениях 4 разных атрибутов. Я попытался использовать следующий код, но должен иметь недопустимый синтаксис (дает ошибку).Именованный набор с использованием iif в mdx
create set [pet types]
as
iif([Vw Cube Customer Dim].[Has Pet].&[Yes],
iif([Vw Cube Customer Dim].[Has Cat].&[Yes],
iif([Vw Cube Customer Dim].[Has Dog].&[Yes],
iif([Vw Cube Customer Dim].[Has Other Pet].&[Yes],
"Multiple Pets","Cat and Dog"),
"Cat"),
iif([Vw Cube Customer Dim].[Has Dog].&[Yes]
and [Vw Cube Customer Dim].[Has Pet].&[Yes],
"Dog and other Pet","Dog")),
"No Pet")
Странные 'mdx' какие ссылки вы используете, чтобы придумать это? Читаемость нуждается в некоторой работе. Одна очевидная проблема заключается в том, что вы пытаетесь создать «Мера, а не набор». Набор - это группа членов - ваш скрипт возвращает строку на основе условий - так что это мера. – whytheq
Я использовал различные ссылки и свое воображение. В частности, у меня был сценарий dax для расчетного столбца, и я попытался реализовать его в mdx. Я понимаю, что вы имеете в виду о моем недоразумении. Итак, как я могу сделать вычисляемый столбец с этой логикой? Именованный расчёт на DSV не помогает, потому что оператор case не поддерживает наборы с общими членами (пересекается) –
Я использую 'MDX' для запроса кубов - я не вмешиваюсь в сценарий куба, поэтому, возможно, это не поможет. Если вы можете абстрагировать свою проблему с нормальным сценарием MDX ('WITH ... SELECT ... FROM ... WHERE'), то я могу помочь. – whytheq