W wielu przypadkach deweloperzy muszą współdzielić wymiary pomiędzy kostkami w ramach tego samego projektu SQL Server Analysis Services. Osiągnięcie pożądanego efektu jest bardzo proste i nie wymaga specjalnych działań. Co natomiast w przypadku gdy chcemy współdzielić wymiar ale nie udostępniać wszystkich hierarchii dla jednej z kostek? Realnych przykładów jest bardzo wiele np. jedna kostka porusza się po datach fiskalnych natomiast druga po kalendarzowych i chcemy aby widoczne były tylko odpowiadające hierarchie. Jednym ze sposobów jest stworzenie dwóch oddzielnych wymiarów – jednak pozbawiamy się wtedy możliwości współdzielenia.
Niewiele osób wie ale osiągnięcie pożądanego efektu jest bardzo proste. Dla przykładu spójrzmy na projekt kostki Adventure Works (możecie go pobrać tutaj). Mamy dwie kostki:
- AdventureWorks
- MinedCustomers
Obie kostki używają wymiaru czasu – chcemy aby kostka AdventureWorks widziała hierarchię Calendar, a kostka MinedCustomers widziała tylko hierarchię Fiscal – do dzieła!
Pierwszym krokiem jest otwarcie kostki AdventureWorks na zakładce Cube Structure.
W dolnej części ekranu możemy znaleźć wymiary, rozwińmy interesujący nas wymiar Date i hierarchię Fiscal – zaznaczmy ją:
Po zaznaczeniu interesującej hierarchii we właściwościach szukamy pola Visible zaznaczamy False. Analogicznie ustawiamy właściwości dla kostki MinedCustomers.
To wszystko! Jak widać osiągnięcie zamierzonego efektu jest bardzo proste, wystarczy znać tą bardzo prostą technikę.
Adrian Chodkowski
Latest posts by Adrian Chodkowski (see all)
- Microsoft 365 User Group Poland Kraków #3 – Transformowanie danych przy pomocy Power Query i języka M - December 4, 2019
- SQL Server 2019 – Intelligent Query Processing – Scalar Function Inlining - November 30, 2019
- Power BI – OneDrive refresh czyli sposób na odświeżanie i synchronizację raportów - November 10, 2019