Adding Dimensions
A Casabase Cube is composed of dimensions such as Account, Entity, Period, Product, Scenario, and Version.
Each dimension contains members organized into one or more hierarchies that define parent-child relationships, navigation paths, and aggregation behavior.
You can add dimensions to an existing cube using the Cube Config interface or the CREATE_DIMENSION stored procedure.
Before adding a dimension, you need a dimension definition table containing the members, parent-child relationships, and any additional member properties required by the dimension.
For more information about these tables, see Dimension Definition Tables.
Before You Begin
Section titled “Before You Begin”The dimension definition table must be accessible to Casabase Cube and contain the columns you intend to map to the dimension.
At a minimum, the table must contain the member and parent-child information required to define its hierarchy structure.
Additional columns can provide properties such as:
- Aliases
- Aggregation operators
- Shared-member indicators
- Member formulas
- Time Balance properties
- Sort order
- UDAs
- Member comments
- Data storage properties
The source column names do not need to use the same names as tables generated from an Essbase outline. You map the appropriate columns when creating the dimension.
Add a Dimension Using the UI
Section titled “Add a Dimension Using the UI”To add a dimension:
- Open Casabase Cube in Snowsight.
- Select Cube Config from the navigation.
- Select the target cube.
- Select Add Dimension.
- Select the dimension definition table and configure the required column mappings.
- Configure the dimension settings.
- Create the dimension.
The dimension is added to the selected cube.
Column Mapping
Section titled “Column Mapping”Casabase Cube maps columns from the dimension definition table to properties used to construct the dimension and its hierarchy structures.
Available mappings include:
| Mapping | Description |
|---|---|
| Input Table | Table containing the dimension definition. |
| Parent Column | Column containing the parent member name. |
| Child Column | Column containing the member name. |
| Alias Column | Column containing the primary member alias. |
| Operator Column | Column containing the aggregation operator. |
| Shared Member Column | Column identifying shared members. |
| Shared Value | Value in the shared-member column that identifies a shared member. |
| Formula Column | Column containing member formulas. |
| Time Balance Column | Column containing Time Balance behavior. |
| Time Balance Skip Column | Column containing Time Balance Skip behavior. |
| Sort Order Column | Column containing member ordering information. |
| UDA Column | Column containing User Defined Attributes. |
| Comment Column | Column containing member comments. |
| Storage Column | Column containing member storage properties. |
Not every dimension requires every mapping.
For example, a simple dimension without formulas, shared members, Time Balance behavior, or UDAs may use only the mappings required to describe its members, hierarchy structure, and aggregation behavior.
Dimension Settings
Section titled “Dimension Settings”In addition to column mappings, each dimension has settings that control its behavior within the cube.
Time Dimension
Section titled “Time Dimension”Is Time Dimension identifies the dimension that represents time within the multidimensional model.
For example:
Dimension: PERIOD
Year│├── Qtr1│ ├── Jan│ ├── Feb│ └── Mar├── Qtr2│ ├── Apr│ ├── May│ └── Jun└── ...The time dimension participates in time-aware calculation behavior such as Time Balance processing.
Default Member
Section titled “Default Member”Default Member defines the member used for the dimension when a query does not explicitly specify a member from that dimension.
For example:
Dimension: SCENARIODefault Member: ActualA default member is optional.
Dimension Solve Order
Section titled “Dimension Solve Order”Dimension Solve Order defines the solve-order precedence associated with the dimension.
This setting is separate from the solve order that can be assigned to individual calculated members.
Use dimension solve order when calculation precedence needs to be controlled across dimensions.
See Formula Capabilities for more information about solve-order behavior.
Use Security
Section titled “Use Security”Use Security enables Casabase Cube security for the dimension.
When enabled, access to members in the dimension can be restricted using user-based security rules.
Enabling security on a dimension does not automatically restrict every user. Casabase Cube row-level security is opt-in per user: filtering applies when the cube has a security-enabled dimension and the executing user has at least one active security rule for the cube.
See Security Model before enabling security on a production dimension.
Auto Rebuild
Section titled “Auto Rebuild”Auto Rebuild identifies whether the dimension participates in dimension rebuild operations.
This is useful when dimension definitions are maintained or refreshed and the resulting multidimensional structures need to be regenerated.
See Rebuilding Dimensions for details.
Active
Section titled “Active”Active controls whether the dimension is active within the cube.
This allows a dimension configuration to remain defined while controlling whether it participates in the active cube model.
Time Balance Configuration
Section titled “Time Balance Configuration”Dimension definition tables can map member-level Time Balance properties using:
TB_TYPETB_TYPE_SKIP_VALUEor equivalent customer-defined source columns.
Supported Time Balance values are:
FLOWFIRSTLASTAVERAGESupported Time Balance Skip values include:
NONEMISSINGZEROSMISSING_AND_ZEROSThe source columns containing these properties are selected through the Time Balance Column and Time Balance Skip Column mappings.
Time Balance properties define how applicable members aggregate across the cube’s time dimension.
See Hierarchy Capabilities for more information about Time Balance behavior.
Shared Members
Section titled “Shared Members”Casabase Cube supports members that participate in multiple hierarchy branches within a dimension.
To configure shared members, specify:
- The column that identifies shared-member occurrences.
- The value in that column that represents a shared member.
For example:
Shared Member Column: MEMBER_IS_SHAREDShared Value: trueThe actual source column name and shared value depend on the dimension definition table.
Formulas
Section titled “Formulas”A dimension definition table can contain formulas for calculated members.
Map the appropriate source column using Formula Column.
For example:
FORMULAcan contain formulas associated with calculated members in an Account or Measures dimension.
Formula behavior is controlled by the Casabase Cube calculation engine and the cube’s Apply member formulas setting.
See:
Add a Dimension Using SQL
Section titled “Add a Dimension Using SQL”Dimensions can also be added programmatically using:
CUBE.CREATE_DIMENSIONThe procedure accepts the following parameters:
CREATE_DIMENSION( CUBE_NAME, DIMENSION_NAME, INPUT_TABLE_NAME, PARENT_COL, CHILD_COL, ALIAS_COL, OPERATOR_COL, DATA_TABLE_COL_NAME, USE_SECURITY, IS_SHARED_COL, SHARED_VALUE, FORMULA_COL, TB_TYPE_COL, TB_TYPE_SKIP_COL, SORTORDER_COL, IS_TIME_DIMENSION, UDA_COL, SKIP_SNAPSHOT, COMMENT_COL, STORAGE_COL, PROPERTY_COLS, SKIP_HIERARCHY_VIEW)For example:
CALL CASABASE_CUBE.CUBE.CREATE_DIMENSION( 'FINANCE', 'ACCOUNT', 'CASABASE_CUBE.SHARED_DATA.FINANCE_ACCOUNT', 'PARENT', 'CHILD', 'ALIAS', 'OPERATOR', 'ACCOUNT', FALSE, 'MEMBER_IS_SHARED', 'true', 'FORMULA', 'TB_TYPE', 'TB_TYPE_SKIP_VALUE', 'SORTORDER', FALSE, 'UDA', FALSE, 'MEMBER_COMMENT', 'DATA_STORAGE', NULL, FALSE);This creates the ACCOUNT dimension in the FINANCE cube using the specified dimension definition table and column mappings.
Mapping the Dimension to Cube Data
Section titled “Mapping the Dimension to Cube Data”Each dimension must identify the corresponding dimension column in the cube’s bottom-level data.
The SQL interface specifies this using:
DATA_TABLE_COL_NAMEFor example:
| Dimension | Cube Data Column |
|---|---|
ACCOUNT |
ACCOUNT |
ENTITY |
ENTITY |
PERIOD |
PERIOD |
YEARS |
YEARS |
SCENARIO |
SCENARIO |
This mapping associates dimension members with the corresponding dimension values stored in the cube.
It does not require users to specify the physical table containing the cube data when running queries. Casabase Cube manages the cube’s data within the Native Application database.
Adding Multiple Dimensions
Section titled “Adding Multiple Dimensions”Repeat the process for each additional dimension required by the cube.
For example:
FINANCE│├── ACCOUNT├── ENTITY├── PERIOD├── YEARS├── SCENARIO└── VERSIONEach dimension can have its own:
- Definition table
- Column mappings
- Default member
- Dimension solve order
- Security configuration
- Time-related configuration
- Rebuild behavior
- Active status
Together, these dimensions define the analytical structure of the cube.
Within each dimension, hierarchy structures organize the members and define their relationships and aggregation paths.
After Adding a Dimension
Section titled “After Adding a Dimension”CREATE_DIMENSION validates and builds the new dimension as part of the creation operation. A separate rebuild is not required merely because the dimension was just created.
Use REBUILD_DIMENSIONS later when the dimension definition table or mapped metadata changes.
A typical new-dimension workflow is:
Create / PopulateDimension Definition Table │ ▼VALIDATE_DIMENSION (optional pre-check) │ ▼ Add Dimension / CREATE_DIMENSION │ ▼Dimension Created and Built │ ▼ Query CubeAfter later source-definition changes:
Modify Definition │ ▼VALIDATE_DIMENSION │ ▼REBUILD_DIMENSIONS │ ▼HEALTH_CHECK │ ▼Verification QueryKey Takeaways
Section titled “Key Takeaways”- Dimensions are the primary analytical components of a Casabase Cube.
- A dimension contains members organized into one or more hierarchies.
- A dimension is created from a dimension definition table.
- Parent-child relationships in the definition table describe hierarchy structure within the dimension.
- Source column names are mapped to Casabase Cube dimension and member properties.
- Dimensions can include aliases, aggregation operators, shared members, formulas, Time Balance properties, UDAs, comments, and other supported metadata.
- Dimension-level settings include Default Member, Dimension Solve Order, Security, Auto Rebuild, and Active status.
DATA_TABLE_COL_NAMEassociates the dimension with the corresponding dimension column in the cube data.- Dimensions can be created through the UI or programmatically using
CREATE_DIMENSION. - After dimension configuration changes, rebuild the affected dimensions and validate their hierarchy structures.
Next Steps
Section titled “Next Steps”Continue with:
- Dimension Definition Tables for dimension source table structure and property mappings.
- Rebuilding Dimensions for applying dimension definition changes.
- Dimension Validation for validating source definitions before creation or rebuild.
- Hierarchy Capabilities for an overview of supported multidimensional hierarchy behavior.
