# EsbOtlGetNextAliasCombination

Description

EsbOtlGetNextAliasCombination() returns the alias combinations for the specified member in the specified alias table. The alias is returned in the pszAlias parameter, and the member combination is returned in pszCombination.

Syntax

    EsbOtlGetNextAliasCombination (hOutline, hMember, pszAliasTable, pszAlias, pszCombination,
    usBufSize)

    ByVal hOutline       As Long
    ByVal hMember        As Long
    ByVal pszAliasTable  As String
    ByVal pszAlias       As String
    ByVal pszCombination As String
    ByVal usBufSize      As Integer

Parameters

hOutline | Outline context handle.
hMember | Handle of member to retrieve the alias combination from.
pszAliasTable | Alias table to retrieve the alias combination from. If this parameter is "", the default alias table is used.
pszAlias | Buffer for the return of the next alias. The next alias is determined by what is specified in this parameter. If a zero-length string, the first alias is returned. If the parameter is a valid alias combination, the next alias is returned.
pszCombination | Member combination of the returned alias. This buffer is allocated by the caller.
usBufSize | Size of the pszCombination buffer.

Return Value

Returns 0 if successful; otherwise:

OTLAPI_BAD_ALIASTABLE

Notes

- You should allocate space of size ESB_MBRNAMELINE for pszAlias before calling.
- You should allocate the space for pszCombination. The caller should set the length of this buffer in the usBufSize parameter.
- The pszAlias parameter is used to find the next combination. See the description of this parameter for details on how to retrieve the next combination.
- If there are no (more) alias combinations, pszCombination is set to ESB_NULL and the call returns 0.

Example

    Declare Function EsbOtlGetNextAliasCombination Lib
    "ESBOTLW" (ByVal hOutline As Long, ByVal hMember As Long,
    ByVal pszAliasTable As String, ByVal pszAlias As String,
    ByVal pszCombination As String, ByVal usBufSize As Integer) As Long

    Sub ESB_OtlGetNextAliasCombination()
    Dim sts As Long
    Dim Object As ESB_OBJDEF_T
    Dim hOutline As Long
    Dim hMemberJan As Long
    Dim szAlias As String * ESB_MBRNAMELEN
    Dim szCombination As String * 100

    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)

    If sts = 0 Then
       sts = EsbOtlFindMember(hOutline, "Jan", hMemberJan)
    End If

    If sts = 0 And hMemberJan <> 0 Then
    szCombination = "xxx"
        Do While sts = 0 And Left$(szCombination, 1)
        <> Chr$(0)
          sts = EsbOtlGetNextAliasCombination
             (hOutline, hMemberJan, "Default", szAlias, szCombination, 100)
        Loop
    End If
    End Sub

See Also

EsbOtlAddAliasCombination()
EsbOtlDeleteAliasCombination()