特定の次元に対して指定されたすべての世代名を取得します。世代名は、EsbOtlSetGenNameを使用してアウトラインに明示的に追加されます。
構文
EsbOtlGetGenNames ( hOutline, pszDimension, ulOptions, pulCount ) ByVal hOutline As Long ByVal pszDimension As String ByVal ulOptions As Long pulCount As Long
パラメータ | 説明 |
---|---|
hOutline |
Essbaseアウトライン・ハンドル。 |
pszDimension |
世代名を取得する次元。 |
ulOptions |
これは、次のいずれかの値にできます:
|
pulCount |
pNameArrayに要素数が戻されます。指定したメンバーの世代名の数です。 |
pNameArray |
指定された次元に対する世代名の構造体の配列。 |
備考
呼出し元は、pNameArray構造体の使用後、EsbFree()を呼び出してこの構造体を解放する必要があります。
プログラマは各世代名構造体が戻されるたびにEsbGetNextItem()を1度呼び出す必要があります。
この呼出しは、EsbOtlOpenOutline()およびEsbOtlOpenOutlineQuery()の両方に機能します。EsbOtlOpenOutlineQuery()呼出し中にサーバーから戻されるため、情報は両方に対してローカルに存在します。
戻り値
関数が正常終了した場合、戻り値は0になります。
例
Declare Function EsbOtlGetGenNames Lib "ESBOTLN" (ByVal hOutline As Long, ByVal pszDimension As String, ByVal ulOptions As Long, pulCount As Long) As Long Sub ESB_OtlGetNames() Dim sts As Long Dim hOutline As Long Dim Object As ESB_OBJDEF_T Dim Dimension As String Dim GenOpt As Long Dim Count As Long Dim pGenName As ESB_GENLEVELNAME_T Dim Access As Integer Dim AppName As String Dim DbName As String AppName = "Sample" DbName = "Basic" sts = EsbSetActive(hCtx, AppName, DbName, Access) If sts=0 Then sts = EsbOtlOpenOutlineQuery(hCtx, Object, hOutline) '************** Get Gen Names ****************** Dimension = "Year" GenOtp = ESB_GENLEV_DEFAULT If sts = 0 Then sts = EsbOtlGetGenNames(hOutline, Dimension, GenOpt, Count) If sts = 0 And Count <> 0 Then For n% = 1 To Count sts = EsbGetNextItem(hCtx, ESB_GENLEVELNAME_TYPE, pGenName) Next End If End If End If End Sub
関連トピック