Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zwraca wartość miary w sześcianie, wymuszając nieodpowiednie wymiary do ich poziomu All (lub domyślnego członka, jeśli nie jest agregowalny) podczas zwracania wyniku dla określonej krotki.
Syntax
ValidMeasure(Tuple_Expression)
Arguments
Tuple_Expression
Poprawne wyrażenie z zakresu wyrażeń wielowymiarowych (MDX), które zwraca krotkę.
Remarks
Funkcja ValidMeasure zwraca wartość krotki, ignorując atrybuty, które nie mają związku z grupą miar miary, której wartość krotka zwraca. Atrybut może być niezwiązany z miarą z dwóch powodów:
Wymiar atrybutu nie ma związku z grupą miar miary w krotkach.
Wymiar atrybutu nie ma związku z grupą miar miary, ale atrybut ziarnistości nie jest atrybutem kluczowym, a atrybut ziarnistości nie ma bezpośredniego związku z atrybutem w krotkach.
Zachowanie określone przez tę funkcję jest domyślnym zachowaniem po stronie serwera i jest kontrolowane przez właściwość IgnoreUnrelatedDimensions na obiekcie grupy miar.
Dla każdego atrybutu w określonej krotki z dokładnością (czyli gdzie element w krotki nie jest elementem All), bieżąca współrzędna dla każdego takiego atrybutu jest przesuwana następująco:
Powiązane atrybuty z określonym członkiem atrybutu są przenoszone do członka istniejącego z aktualnym członkiem.
Powiązane atrybuty z określonym członkiem atrybutu są przenoszone do All member (lub domyślnego członka, jeśli hierarchia nie jest agregowalna).
Niepowiązane atrybuty są przenoszone do funkcji All member (na podstawie miary).
Example
Poniższe zapytanie pokazuje, jak funkcję ValidMeasure można użyć do nadpisania zachowania właściwości IgnoreUnrelatedDimensions. W kostce Adventure Works grupa miar Sales Targets ma ustawione IgnoreUnrelatedDimensions na False; ponieważ wymiar Daty łączy się z tą grupą miar przy szczegółowości Kwartału Kalendarzowego, oznacza to, że miara Kwoty Sprzedaży domyślnie zwraca wartość null poniżej Kwartału Kalendarzowego (choć istnieje także obliczenie w skrypcie MDX, które przydziela wartości do poziomu Miesiąca). Użycie funkcji ValidMeasure w obliczonej miare może sprawić, że miara Sales Quota zachowuje się tak, jakby IgnoreUnrelatedDimensions było ustawione na True i wymusić wyświetlanie wartości Sales Quota za bieżący kwartał kalendarzowy.
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]
Podobnie, grupa miar Sales Targets nie ma żadnego związku z wymiarem Promocja, więc poniżej poziomu All Member dowolnej hierarchii w Promotion zwraca się na null. Ponownie, to zachowanie można zmienić, używając 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]