Definicja danych MDX — CREATE SESSION CUBE

Tworzy i wypełnia sesyjną kostkę z istniejącej sześcianu serwera. Kostka sesji jest widoczna tylko w trakcie bieżącej sesji; Nie można go przeglądać ani zapytywać z żadnej innej sesji. Kostka sesji jest domyślnie usuwana po zamknięciu sesji.

Syntax

  
CREATE SESSION CUBE session_cube_name FROM <cube list> (<param list>)  
  
<cube list>::= source_cube_name [,<cube list>]  
  
<param list>::= <param> ,<param list> | <param>  
  
<param>::= <dims list> | <measures list>  
  
<measures list>::= <measure>[, <measures list>]   
  
<dims list>::= <dim def> [, <dims list>]  
  
<measure>::= MEASURE source_cube_name.measure_name [<visibility qualifier>] [AS measure_name]   
  
<dim def>::= <source dim def> | <derived dim def>  
  
<source dim def>::= DIMENSION source_cube_name.dimension_name [<dim flags>] [<visibility qualifier>] [AS dimension_name>] [FROM <dim from clause> ] [<dim content def>]  
  
<dim flags>::= NOT_RELATED_TO_FACTS   
  
<dim from clause>::= <reg dim from clause>   
  
<dim reg from clause>::= dimension_name  
  
<dim content def>::= ( <level list> [,<grouping list>] [,<member slice list>] [,<default member>] )  
  
<level list>::= <level def> [, <level list>]  
  
<level def>::= LEVEL level_name [<level type> ] [AS level_name] [<level content def>]  
  
<level content def>::= ( <property list> ) | NO_PROPERTIES  
  
<level type>::= GROUPING  
  
<property list>::= <property def> [, <property list>]  
  
<property def>::= PROPERTY property_name   
  
<grouping list>::= <grouping entity> [,<grouping list>]  
  
<grouping entity>::= GROUP group_level_name.group_name (<mixed list>)  
  
<grp mixed list>::= <grp mixed element> [,<grp mixed list>]  
  
<grp mixed element>::= <grouping entity> | <member def>  
  
<member slice list>::= <member list>  
  
<member list>::= <member def> [, <member list>]  
  
<member def>::= MEMBER member_name  
  
<default member>::= DEFAULT_MEMBER AS MDX_expression  
  
<visibility qualifier>::= HIDDEN  
  

Elementy składni

session_cube_name
Nazwa kostki sesyjnej.

source_cube_name
Nazwa sześcianu, na którym opiera się kostka sesyjna.

source_cube_name.measure_name
W pełni kwalifikowana nazwa miary źródłowej jest uwzględniona w kostce sesji. Obliczone elementy wymiaru Miar nie są dozwolone.

measure_name
Nazwa miary w kostce sesyjnej.

source_cube_name.dimension_name
W pełni kwalifikowana nazwa wymiaru źródłowego jest uwzględniona w kostce sesyjnej.

dimension_name
Nazwa wymiaru w sesyjnej kostce.

FROM <dim z klauzuli>
Prawidłowa specyfikacja dotyczy tylko definicji wymiaru pochodnego.

NOT_RELATED_TO_FACTS
Prawidłowa specyfikacja dotyczy tylko definicji wymiaru pochodnego.

<Typ poziomu>
Prawidłowa specyfikacja dotyczy tylko definicji wymiaru pochodnego.

Remarks

W przeciwieństwie do sześcianów serwerowych i lokalnych, sześcian sesji nie jest utrzymywane poza sesją, która ją stworzyła. Kostka sesyjna jest definiowana na podstawie miar i definicji, które ją definiują. Istnieją dwa typy wymiarów.

  • Wymiary źródłowe – To wymiary, które były częścią jednego z innych kostek źródłowych.

  • Wymiary pochodne – Są to wymiary, które dostarczają nowych możliwości analitycznych. Wymiar pochodny może być wymiarem regularnym zdefiniowanym na podstawie wymiaru źródłowego, który jest przecięty pionowo lub poziomo, albo zawiera niestandardowe grupowanie elementów wymiarowych. Wymiar pochodny może być także wymiarem eksploracji danych opartym na modelu eksploracji danych.

Note

Słowo kluczowe Dimension może odnosić się zarówno do wymiarów, jak i do hierarchii.

Sesyjne kostki są wykorzystywane głównie do dynamicznego grupowania członków atrybutów w niestandardowe grupy członkowskie przez aplikacje klienckie, takie jak Microsoft Excel. W sesyjnym kostce możesz wykonywać następujące zadania:

  • Usuń wymiary istniejące w kostce źródłowej.

  • Dodaj lub usuń hierarchie z danego wymiaru.

  • Eliminuj grupy miar lub konkretne miary.

  • Dodaj nowy atrybut, oparty na powiązaniu atrybutów, w celu tworzenia grup na podstawie istniejącego atrybutu...

Important

Bezpieczeństwo obiektów sesyjnej kostki dziedziczone jest z obiektów źródłowych. Inne obiekty, takie jak skrypty akcji i obliczeń, również są dziedziczone przez kostkę sesyjną.

Instrukcja CREATE SESSION CUBE spełnia następujące zasady:

  • Nie można wykonywać grupowania na hierarchii rodzic-dziecko.

  • Nie można przeprowadzić grupowania na wymiarach ROLAP.

  • Nie można wykonywać grupowania na powiązanych wymiarach.

  • Nie możesz wykonywać grupowania na poziomach z niestandardowymi rollupami.

  • Nie można przeprowadzić grupowania na dyskretyzowanych hierarchiach atrybutów.

  • Nie można grupować na nienaturalnych hierarchiach, które są hierarchiami z wielogrupowymi relacjami między poziomami (takimi jak wiek i płeć).

  • Jawne odniesienia do nazwy kostki w skrypcie MDX są przerwane przez grupowanie, ponieważ sześcian sesji ma inną nazwę. Zamiast tego użyj słowa kluczowego CURRENTCUBE.

  • Nie można przeprowadzić grupowania na wymiarach z wyraźnymi domyślnymi członkami.

  • Podczas grupowania wykluczane są wyliczane elementy sesyjne na oryginalnej kostce serwera.

  • Podczas grupowania na wymiarze sześcianu w sześcianie serwera, grupowanie to wpływa na wszystkie wymiary sześcianu na podstawie tego samego wymiaru.

Example

Poniższy przykład pokazuje tworzenie sesyjnej wersji sześcianu Adventure Works, która zawiera miarę Reseller Sales Amount, wymiar Reseller, Product dimension, Geography oraz Date. W tej sesyjnej kostce tworzone są dwie grupy; jedna grupa obejmuje kraje/regiony w Europie, a druga grupa grupy w Ameryce Północnej. Ten przykład jest uproszczoną wersją instrukcji CREATE SESSION CUBE wydawanej przez Microsoft Excel, gdy użytkownik tworzy niestandardową grupę członków.

CREATE SESSION CUBE [Adventure Works_XL_GROUPING1]   
   FROM [Adventure Works]   
   ( MEASURE [Adventure Works].[Internet Sales Amount]  
   ,MEASURE [Adventure Works].[Reseller Sales Amount]  
   ,DIMENSION [Adventure Works].[Date].[Calendar]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Year]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Semester]  
   ,DIMENSION [Adventure Works].[Date].[Calendar Quarter]  
   ,DIMENSION [Adventure Works].[Date].[Month Name]  
   ,DIMENSION [Adventure Works].[Date].[Date]  
   ,DIMENSION [Adventure Works].[Geography].[Country]   
      HIDDEN AS _XL_GROUPING81  
   ,DIMENSION [Adventure Works].[Geography].[State-Province]  
   ,DIMENSION [Adventure Works].[Geography].[City]  
   ,DIMENSION [Adventure Works].[Geography].[Postal Code]  
   ,DIMENSION [Adventure Works].[Geography].[Geography]  
   ,DIMENSION [Adventure Works].[Product].[Product Categories]  
   ,DIMENSION [Adventure Works].[Product].[Category]  
   ,DIMENSION [Adventure Works].[Product].[Subcategory]  
   ,DIMENSION [Adventure Works].[Product].[Product]  
   ,DIMENSION [Adventure Works].[Product].[Product Key]  
   ,DIMENSION [Adventure Works].[Reseller].[Reseller]  
   ,DIMENSION [Adventure Works].[Reseller].[Geography Key]  
   ,DIMENSION [Geography].[Country]   
      NOT_RELATED_TO_FACTS FROM _XL_GROUPING81   
          ( LEVEL [(All)]  
         ,LEVEL [Country1] GROUPING  
         ,LEVEL [Country]  
            ,GROUP [Country1].[CountryXl_Grp_1]   
                ( MEMBER [Geography].[Country].&[Canada]  
                  ,MEMBER [Geography].[Country].&[United States] )  
            ,GROUP [Country1].[CountryXl_Grp_2]   
                ( MEMBER [Geography].[Country].&[France]  
                  ,MEMBER [Geography].[Country].&[Germany]  
                  ,MEMBER [Geography].[Country].&[United Kingdom] )   
            )   
   )