# Symbolic Constant Definitions

The following tables describe the symbolic constants used specifically by the Outline API. These constants are defined in the Essbase Visual Basic global text file `esb32.bas`.

- Restructure values
- Account member currency conversion category values
- Account member time balance values
- Account member time balance skip values
- Share constants
- Dimension categories (tags)
- Dimension categories used for optimizing auto-configure storage
- Sorting options
- Query types
- Query options
- Generation and level options

## Restructure values

Value | Description
ESB_DOR_ALLDATA | Keep all data
ESB_DOR_NODATA | Discard all data
ESB_DOR_LOWDATA | Keep only level 0 data
ESB_DOR_INDATA | Keep only input data

## Account member currency conversion category values

Value | Description
ESB_CONV_NONE | Default conversion category. Member inherits category from parent.
ESB_CONV_CATEGORY | Define a currency conversion category for this member
ESB_CONV_NOCONV | No conversion for this member

## Account member time balance values

Value | Description
ESB_TIMEBAL_NONE | No time balance
ESB_TIMEBAL_FIRST | First time balance member
ESB_TIMEBAL_LAST | Last time balance member
ESB_TIMEBAL_AVG | Average time balance member

## Account member time balance skip values

Only valid if time balance does not equal ESB_TIMEBAL_NONE

Value | Description
ESB_SKIP_NONE | Don't skip anything
ESB_SKIP_MISSING | Skip the value if the data is #missing
ESB_SKIP_ZEROS | Skip the value if the data is 0
ESB_SKIP_BOTH | Skip the value if the data is #missing or 0

## Share constants

Value | Description
ESB_SHARE_DATA | Normal member (default value)
ESB_SHARE_NEVER | Never share this member, even if it would normally be an implicit share.
ESB_SHARE_LABEL | Label member. Do not store data for this member.
ESB_SHARE_SHARE | Shared member. This member cannot have children and must have the actual member with the same name in the same dimension.

## Dimension categories (tags)

Value | Description
ESB_CAT_NONE | No category
ESB_CAT_ACCOUNTS | Accounts dimension
ESB_CAT_TIME | Time dimension
ESB_CAT_COUNTRY | Country dimension
ESB_CAT_TYPE | Type dimension. This dimension is valid only in currency databases
ESB_CAT_CURPARTITION | Currency partition dimension. Valid only in non-currency databases.

## Dimension categories

Used for optimizing storage when using storage auto-configure

Value | Description
ESB_STORECAT_OTHER | None or don't know storage category
ESB_STORECAT_TIME | Time storage category
ESB_STORECAT_UNITS | Units storage category
ESB_STORECAT_SCENARIO | Scenario storage category
ESB_STORECAT_ACCOUNTS | Accounts storage category
ESB_STORECAT_PRODUCT | Product storage category
ESB_STORECAT_ORGAN | Organization storage category
ESB_STORECAT_MARKET | Market storage category
ESB_STORECAT_CUSTOMER | Customer storage category
ESB_STORECAT_DIST | Distribution Channel storage category
ESB_STORECAT_BUSUNIT | Business Unit storage category
ESB_STORECAT_GEOG | Geographical Location storage category

## Sorting options

Value | Description
ESB_SORT_ASCENDING | Sort in ascending order
ESB_SORT_DESCENDING | Sort in descending order

## Query types

Used for defining the operation to perform in ESB_PREDICATE_T

Value |
ESB_CHILDREN
ESB_DESCENDANTS
ESB_BOTTOMLEVEL
ESB_SIBLINGS
ESB_SAMELEVEL
ESB_SAMEGENERATION
ESB_PARENT
ESB_DIMENSION
ESB_NAMEDGENERATION
ESB_NAMEDLEVEL
ESB_SEARCH
ESB_WILDSEARCH
ESB_USERATTRIBUTE
ESB_ANCESTORS

## Query options

You can specify for certain query types in ESB_PREDICATE_T

Value | Description
ESB_MEMBERSONLY | Valid for ESB_SEARCH, ESB_WILDSEARCH
ESB_ALIASESONLY | Valid for ESB_SEARCH, ESB_WILDSEARCH
ESB_MEMBERSANDALIASES | Valid for ESB_SEARCH, ESB_WILDSEARCH
ESB_COUNTONLY | Valid for any query type. Queries the outline without returning any data. Returns a count of how many members meet the query type by filling in the ulTotalCount field in ESB_PMBRCOUNTS_T.

## Generation and level options

You can use with EsbOtlGetGenNames() and EsbOtlGetLevelNames()

Value | Description
ESB_GENLEV_ALL | Returns default and user-defined names
ESB_GENLEV_ACTUAL | Returns only names that are user-defined
ESB_GENLEV_DEFAULT | Returns all default names, including the default names for generations and levels that also have user-defined names
ESB_GENLEV_NOACTUAL | Returns all default names, excluding the default names for generations and levels that also have user-defined names