# EsbOtlSetLevelName

Description

EsbOtlSetLevelName() sets the name for a specific level within a dimension.

Syntax

    EsbOtlSetLevelName (hOutline, pszDimension, usLevel, pszName)

    ByVal hOutline     As Long
    ByVal pszDimension As String
    ByVal usLevel      As Integer
    ByVal pszName      As String

Parameters

hOutline | Outline context handle.
pszDimension | Name of dimension that contains the level.
usGen | Number of level for which to set a name. Leaf members are level 0.
pszName | Name to give the level.

Return Value

Returns 0 if successful; otherwise one of the following:

OTLAPI_BAD_GENLEVELNAME
OTLAPI_ERR_GENLEVELNAMEEXISTS
OTLAPI_ERR_GENLEVELEXISTS
OTLAPI_ERR_NOTADIM
OTLAPI_ ERR_GENLEVELNAMEMBR

Notes

- The level name follows the same rules as a member name and must be unique across the entire member name space. It cannot duplicate any other generation, level, member name, or alias. Attempting to add a duplicate name generates an error.
- Each specific dimension and level must have only one name.

Example

    Declare Function EsbOtlSetLevelName Lib
    "ESBOTLW" (ByVal hOutline As Long, ByVal pszDimension As String,
    ByVal usLevel As Integer, ByVal pszName As String) As Long

    Sub ESB_OtlSetLevelName()
    Dim sts As Long
    Dim Object As ESB_OBJDEF_T
    Dim hOutline As Long
    Dim Dimension As String
    Dim LevelNum As Integer
    Dim LevelName As String

    Object.hCtx = hCtx
    Object.Type = ESB_OBJTYPE_OUTLINE
    Object.AppName = "Sample"
    Object.DbName = "Basic"
    Object.FileName = "Basic"

    sts = EsbOtlOpenOutline(hCtx, Object, ESB_YES,
    ESB_YES, hOutline)

    '************************************
    '********** Set Level Name **********
    '************************************
    Dimension = "Year"
    LevelNum = 1
    LevelName = "Month"
    If Not sts Then
       sts = EsbOtlSetLevelName(hOutline,
        Dimension, LevelNum, LevelName)
    End If
    End Sub

See Also

EsbOtlDeleteLevelName()
EsbOtlGetLevelName()
EsbOtlGetLevelNames()