Local Cube and Global Cube Creation Syntax
NOTE: This information applies to AS2000 local cubes.
Microsoft provides two different types of syntax to create local cube files. CubeSlice supports both the CREATE LOCAL CUBE syntax and the CREATE GLOBAL CUBE syntax. This choice is made in the Cube Syntax option box on the General tab.
You can view the code that is generated for each option in the Code Editor. The code for CREATE LOCAL CUBE is much longer and gives more options for choosing which options from the server cube are to be included in the local cube.
The cube creation statements are used programmatically in different ways to create a local cube. You can examine these differences by generating the VB code module for each statement, using the Save To VB button in the Code Editor.
In many cases it doesn't matter which cube creation syntax you use. Local cubes created by the two commands will appear to be the same. But there are limitations when creating each one. There are times that you will have to pick one or the other in order to create local cubes that contain specific characteristics.
Limitations that apply to both types of cube creation syntax are described in
Known Limitations.
Limitations when using the Local Cube Syntax
The designation of a default member of a cube is not supported when using Local Cube Syntax, while it is supported with Global Cube Syntax.
Parent-child dimensions are converted into regular dimensions when using the Local Cube Syntax. Some of the specialized options of parent-child dimensions are lost in this conversion process. Parent-child dimensions are fully supported with the Global Cube Syntax.
Custom member formulas and custom rollup formulas are not supported when using Local Cube Syntax, but they are supported when using Global Cube Syntax.
A cube containing unary operators cannot be created when using Local Cube Syntax, but it can be created when using Global Cube Syntax. Our testing indicates that unary operators work correctly in standard dimensions created with the Global Cube Syntax, but do not work correctly when used in parent-child dimensions. As of the present time, Microsoft’s literature states that unary operators are not supported in local cubes.
Limitations when using the Global Cube Syntax
You cannot choose to exclude member properties when using Global Cube Syntax. All member properties from included levels are always included in the local cube. When using the Local Cube Syntax you can choose to include or exclude each of the cube’s member properties. The Member Properties tab is disabled when using Global Cube Syntax.
You cannot choose to exclude calculated members when using Global Cube Syntax. All calculated members from the source cube are always included in the local cube. When using Local Cube Syntax you can select which calculated members are included in the local cube.
The option Remove members above the filtered level on the General tab is always selected when using the Global Cube Syntax.
The option Apply calculation before other slicing on the Members tab is always selected when using the Global Cube Syntax.
Distinct count measures are not directly supported in local cubes. When using Local Cube Syntax, CubeSlice automatically generates a calculated member to replace a distinct count measure. This is not done when using the Global Cube Syntax. You can still, of course, create calculated measures in the source cube for distinct counting, which will be automatically included in the local cubes. See Measures with Distinct Count Aggregation for more information.
Ragged dimensions cannot be created when using the Global Cube Syntax. When using the Local Cube Syntax you can create ragged dimensions with the following two options selected for the Hide Member If property of a level: