Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Возвращает значение меры в кубе, форсируя неприменимые размерности на их All level (или элемент по умолчанию, если не агрегируемый) при возврате результата для определённого кортежа.
Syntax
ValidMeasure(Tuple_Expression)
Arguments
Tuple_Expression
Допустимое выражение многомерных выражений (MDX), возвращающее кортеж.
Remarks
Функция ValidMeasure возвращает значение кортежа, игнорируя атрибуты, не связанные с группой мер меры, значение которой возвращает кортеж. Атрибут может быть не связан с мерой по двум причинам:
Размерность атрибута не связана с группой меры меры в кортеже.
Размерность атрибута не связана с группой меры меры, но атрибут гранулярности не является ключевым атрибутом, и атрибут гранулярности не имеет прямой связи с атрибутом в кортеже.
Поведение, заданное этой функцией, является стандартным на стороне сервера и управляется свойством IgnoreUnrelatedDimensions на объекте группы мер.
Для каждого атрибута в указанном кортеже с гранулярностью (то есть когда элемент кортежа не является элементом All) текущая координата для каждого такого атрибута перемещается следующим образом:
Связанные атрибуты с указанным атрибутом перемещаются в тот член, который существует вместе с текущим участником.
Связанные атрибуты с указанным атрибутом перемещаются в All (или в стандартный член, если иерархия не агрегируема).
Несвязанные атрибуты перемещаются в член All (в зависимости от измерения).
Пример
Следующий запрос показывает, как функция ValidMeasure может быть использована для отмены поведения свойства IgnoreUnrelatedDimensions. В кубе Adventure Works группа меры Sales Targets имеет IgnoreUnrelatedDimensions установлен как False; поскольку измерение Дата присоединяется к этой группе по гранулярности календарного квартала, это означает, что мера квоты продаж по умолчанию возвращает нулевой уровень ниже календарного квартала (хотя в MDX Script также есть расчёт, который распределяет значения до уровня месяца). Использование функции ValidMeasure в рассчитанной мере можно использовать для того, чтобы мера Sales Quota вела себя так, будто IgnoreUnrelatedDimensions была установлена в True, и заставить Sales Quota отображать значение текущего календарного квартала.
WITH MEMBER MEASURES.VTEST AS VALIDMEASURE([Measures].[Sales Amount Quota])
SELECT {[Measures].[Sales Amount Quota], MEASURES.VTEST} ON 0,
[Date].[Calendar].MEMBERS ON 1
FROM [Adventure Works]
Аналогично, группа измерений целей продаж никак не связана с измерением Продвижение, поэтому ниже All Member любой иерархии по Промоушену она возвращает null. Опять же, это поведение можно изменить, используя ValidMeasure:
WITH MEMBER MEASURES.VTEST AS VALIDMEASURE([Measures].[Sales Amount Quota])
SELECT {[Measures].[Sales Amount Quota], MEASURES.VTEST} ON 0,
[Promotion].[Promotions].members ON 1
FROM [Adventure Works]