EsbOtlFreeMember

EsbGetNextItemが呼び出されたときにEsbOtlQueryMembersから戻されたメンバーを解放します。

構文

            EsbOtlFreeMember
             (
            hOutline, hMember
            )
ByVal 
            hOutline
             As Long
ByVal 
            hMember
              As Long
         
パラメータ説明

hOutline

EsbOtlOpenOutlineQuery()から戻されたEssbaseアウトライン・ハンドル。

hMember

解放するメンバーを定義しているメンバーのハンドル。

備考

EsbOtlQueryMembers()からの結果は、EsbGetNextItem()の呼出しを介して一度に1つのメンバーを戻します。これらの使用されるアイテムがそれぞれ実行された場合、プログラマはEsbOtlFreeMember()を呼び出す必要があります。

戻り値

正常終了の場合は0が戻されます。

         Declare Function EsbOtlFreeMember Lib "ESBOTLN" 
(ByVal hOutline As Long, ByVal hMember As Long) As Long
Declare Function EsbOtlQueryMembers Lib "ESBOTLN" 
(ByVal hOutline As Long, ByVal hMember As Long,
pPredicate As ESB_PREDICATE_T, pCounts As ESB_MBRCOUNTS_T) As Long

Sub ESB_OtlQueryMembers()
   Dim sts As Long
   Dim hOutline As Long
   Dim hMember As Long
   Dim ihMember As Long
   Dim Object As ESB_OBJDEF_T
   Dim MbrInfo As ESB_MBRINFO_T
   Dim Predicate As ESB_PREDICATE_T
   Dim Counts As ESB_MBRCOUNTS_T
   Dim Access As Integer
   Dim AppName As String
   Dim DbName As String
   
   AppName = "Sample"
   DbName = "Basic"
   sts = EsbOtlOpenOutlineQuery(hCtx, Object, hOutline)
   If sts = 0 Then
     sts = EsbOtlOpenOutlineQuery(hCtx, Object, hOutline)
   Predicate.ulQuery = ESB_CHILDREN
   Predicate.pszDimension = "Year"
   Counts.ulStart = 0
   Counts.ulMaxCount = 10
   If sts = 0 Then
      sts = EsbOtlQueryMembers(hOutline, hMember, Predicate, Counts)
     If sts = 0 And Counts.ulReturnCount <> 0 Then
       For n% = 1 To Counts.ulReturnCount
          sts = EsbGetNextItem(hCtx, ESB_HMEMBER_TYPE, ihMember)
       If sts = 0 And ihMember <> 0 Then
                sts = EsbOtlFreeMember(hOutline, ihMember)
       End If
      Next
     End If
   End If
End If
End Sub
      

関連トピック