メンバーを移動します。
構文
EsbOtlMoveMember
(
hOutline, hMember, hNewParent, hNewPrevSibling
)
ByVal
hOutline
As Long
ByVal
hMember
As Long
ByVal
hNewParent
As Long
ByVal
hNewPrevSibling
As Long
| パラメータ | 説明 |
|---|---|
hOutline |
アウトラインのコンテキスト・ハンドル。 |
hMember |
移動するメンバーのハンドル。 |
hNewParent |
新しい親のハンドル。このフィールドは、hNewPrevSiblingフィールドがESB_NULLの場合にのみ使用されます。 |
hNewPrevSibling |
新しい以前の兄弟のハンドル。 |
備考
移動したメンバーは、hPrevSiblingメンバーの後に挿入されます。このフィールドがESB_NULLである場合、移動したメンバーはhParentにで指定した親の最初の子になります。
hParentおよびhPrevSiblingがESB_NULLである場合、移動したメンバーはアウトラインの最初の次元になります。
型がESB_ATTRMBRDT_STRINGでないゼロレベル(リーフ・ノード)の属性メンバーを移動すると、ESB_ATTRSPECS_T構造体のアウトラインの定義によって、メンバーのロング名がリセットされます。
祖先を移動すると、ゼロレベルの属性メンバーのロング名に影響する場合があります。
戻り値
正常終了の場合は0が戻されます。それ以外の場合は、次の値が戻されます:
OTLAPI_BAD_MOVE
例
Declare Function EsbOtlMoveMember Lib
"ESBOTLN" (ByVal hOutline As Long, ByVal hMember As Long,
ByVal hNewParent As Long, ByVal hNewPrevSibling As Long) As Long
Sub ESB_OtlMoveMember()
Dim sts As Long
Dim Object As ESB_OBJDEF_T
Dim hOutline As Long
Dim hMemberProfit As Long
Dim hFQ As Long
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, "First Q", hFQ)
End If
If sts = 0 Then
sts = EsbOtlFindMember(hOutline, "Profit", hMemberProfit)
End If
If sts = 0 And hFQ And hMemberProfit Then
sts = EsbOtlMoveMember(hOutline, hFQ,
hMemberProfit, ESB_NULL)
End If
End Sub
関連トピック