'メタデータの取得
Public Sub GetMetadata()
Dim pGxApplication As IGxApplication
Set pGxApplication = Application
Dim pGxObject As IGxObject
Set pGxObject = pGxApplication.SelectedObject
Dim pMetadata As IMetadata
Set pMetadata = pGxObject
Dim pXmlPropertySet As IXmlPropertySet2
Set pXmlPropertySet = pMetadata.Metadata
Dim strXML As String
strXML = pXmlPropertySet.GetXml("")
'ファイルに保存
'Debug.Print strXML
'
'Open "G:\TESTFILE.xml" For Output As #1 ' シーケンシャル出力モードでファイルを開きます。
'Write #1, strXML
'Close #1
'ファイルに保存したXMLを元にXPathを求めて該当の値を取得
'Debug.Print pXmlPropertySet.CountX("dataIdInfo/idAbs")
Debug.Print pXmlPropertySet.SimpleGetProperty("dataIdInfo/idPurp") 'サマリ
Debug.Print pXmlPropertySet.SimpleGetProperty("dataIdInfo/idAbs") '説明
'Dim pPS As IPropertySet
'Set pPS = pXmlPropertySet
'
' 'retrieve all names and values for the PropertySet
' pPS.GetAllProperties vName, vValue
'
' 'Displays only the first ten Element Names
' For Each v In vName
' strNames(i) = CVar(v)
' i = i + 1
' If i = 10 Then
' Exit For
' End If
' Next
' i = 0
'
' 'Display only the first ten Element Values
' For Each v In vValue
' strValues(i) = CVar(v)
' i = i + 1
' If i = 10 Then
' Exit For
' End If
' Next
' i = 0
'
' strFinal = "Names: Values" & vbNewLine
' For Each v In vValue
' strFinal = strFinal & strNames(i) & ": " & strValues(i) & vbNewLine
' i = i + 1
' If i = 10 Then
' Exit For
' End If
' Next
' MsgBox strFinal
End Sub
記事
