Skip to content

Attribute Dimensions

Attribute dimensions let you slice a base dimension by member properties without restructuring the base dimension.

The usual workflow is to register the attribute dimension with ADD_ATTRIBUTE_DIMENSION, run PREFLIGHT_ATTRIBUTE_DIMENSIONS, and then build it with BUILD_ATTRIBUTE_DIMENSION.

Minimum role: CUBE_ADMIN

ADD_ATTRIBUTE_DIMENSION(
P_CUBE_NAME,
P_ATTR_DIM_NAME,
P_BASE_DIM_NAME,
P_SOURCE_TABLE
) -> VARCHAR

Registers an attribute dimension against a base dimension.

Parameter Type Req/Opt Description
P_CUBE_NAME VARCHAR req Cube name.
P_ATTR_DIM_NAME VARCHAR req Name for the attribute dimension.
P_BASE_DIM_NAME VARCHAR req Base dimension described by the attribute dimension.
P_SOURCE_TABLE VARCHAR req Table mapping base members to attribute values.
CALL CUBE.ADD_ATTRIBUTE_DIMENSION(
'GMPLN',
'PRIMARY_UOM',
'PRODUCT_GROUP',
'SHARED_DATA.GMPLN_UOM_INPUT'
);

Minimum role: CUBE_ADMIN

BUILD_ATTRIBUTE_DIMENSION(
P_CUBE_NAME,
P_ATTR_DIM_NAME,
P_SKIP_NORMALIZE,
P_SKIP_DIMENSION_VIEW,
P_SKIP_PROFILE
) -> VARCHAR

Builds a registered attribute dimension and makes it queryable.

Parameter Type Req/Opt Description
P_CUBE_NAME VARCHAR req Cube name.
P_ATTR_DIM_NAME VARCHAR req Attribute dimension to build.
P_SKIP_NORMALIZE BOOLEAN opt Skips normalization of the source.
P_SKIP_DIMENSION_VIEW BOOLEAN opt Skips regeneration of the consumer dimension view.
P_SKIP_PROFILE BOOLEAN opt Skips derivation of the cube profile.
CALL CUBE.BUILD_ATTRIBUTE_DIMENSION('FINANCE', 'PRIMARY_UOM');

Minimum role: CUBE_ADMIN

PREFLIGHT_ATTRIBUTE_DIMENSIONS(
P_CUBE_NAME,
P_BUILD,
P_ASYNC
) -> VARCHAR

Checks every attribute dimension on a cube for problems. It can optionally build the attribute dimensions that pass validation.

Parameter Type Req/Opt Description
P_CUBE_NAME VARCHAR req Cube name.
P_BUILD BOOLEAN opt When TRUE, also builds attribute dimensions that pass preflight.
P_ASYNC BOOLEAN opt Builds qualifying dimensions in parallel.

Run preflight without building:

CALL CUBE.PREFLIGHT_ATTRIBUTE_DIMENSIONS('FINANCE', FALSE, FALSE);

Minimum role: CUBE_ADMIN

VALIDATE_ATTRIBUTE_DIMENSION(
P_CUBE_NAME,
P_DIM_NAME
) -> VARCHAR

Validates one attribute dimension’s structure and its associations to the base dimension.

Parameter Type Req/Opt Description
P_CUBE_NAME VARCHAR req Cube name.
P_DIM_NAME VARCHAR req Attribute dimension to validate.
CALL CUBE.VALIDATE_ATTRIBUTE_DIMENSION('FINANCE', 'PRIMARY_UOM');

Minimum role: CUBE_ADMIN

REBUILD_DEPENDENT_ATTRIBUTES(
P_CUBE_NAME,
P_BASE_DIM_NAME,
P_SKIP_DIMENSION_VIEW,
P_SKIP_PROFILE
) -> VARCHAR

Rebuilds every attribute dimension attached to a specified base dimension.

Run this procedure after rebuilding the base dimension so that its attribute associations remain consistent.

Parameter Type Req/Opt Description
P_CUBE_NAME VARCHAR req Cube name.
P_BASE_DIM_NAME VARCHAR req Base dimension that changed.
P_SKIP_DIMENSION_VIEW BOOLEAN opt Skips regeneration of the consumer dimension view.
P_SKIP_PROFILE BOOLEAN opt Skips derivation of the cube profile.
CALL CUBE.REBUILD_DEPENDENT_ATTRIBUTES('FINANCE', 'PRODUCT_GROUP');