今回、Visual Basic 6.0 から SharePoint Portal Server を操作するのには コラボレーション ソリューション プラットフォームとしての Microsoft SharePoint Portal Server 2001 を参考にした。他に情報源として SharePoint Portal Server メーリングリスト もあるが、ここにはプログラムの話題は少なかった気がする。
VB の [プロジェクト(P)] -> [参照設定(N)] にて、"Microsoft PKMCDO for Microsoft Web Storage system", "Microsoft ActiveX Data Objects 2.5 Library" あたりを追加しておくと、入力支援(自動的にメソッドやプロパティを探)してくれるから便利。
# やっぱり<pre>使うときは、こまめに改行しなきゃ……
'// コピー Dim doc As New PKMCDO.KnowledgeDocument doc.DataSource.Open コピー元URL doc.Copy コピー先URL
'//フォルダ作成 Dim folder As New PKMCDO.KnowledgeFolder Dim arrExpectedContentClasses As Variant 'smartfolder という設定が要るらしい(たぶん) folder.ContentClass = "urn:content-classes:smartfolder" folder.DataSource.SaveTo _ 作成するフォルダのURL, _ , _ adModeReadWrite, _ adCreateOverwrite + adCreateCollection arrExpectedContentClasses = Array( _ "urn:content-classes:basedocument", _ "urn:content-classes:knowledgefolder", _ "urn:content-classes:smartfolder") folder.ExpectedContentClass = arrExpectedContentClasses folder.DataSource.Save
'//フォルダの存在を調べる '//(オープン時にエラーが出るかどうかで判定(^^;) Dim folder As New PKMCDO.KnowledgeFolder Dim result As Boolean On Error Resume Next folder.DataSource.Open url If Err = 0 Then result = True Else result = False End If
'//フォルダ内のファイル/フォルダ一覧を取得 Dim folder As New PKMCDO.KnowledgeFolder Dim rs As ADODB.Recordset folder.DataSource.Open url Set rs = folder.Items 'ファイルの一覧 While Not rs.EOF Dim url As String url = rs.Fields("DAV:href") 'ファイルのURLを取得 MsgBox url rs.MoveNext Wend 'フォルダの一覧 Set rs = folder.Subfolders While Not rs.EOF Dim url As String url = rs.Fields("DAV:href") 'フォルダのURLを取得 MsgBox url rs.MoveNext Wend
'//ドキュメントプロファイルのプロパティ情報を取得 Dim doc As New PKMCDO.KnowledgeDocument doc.DataSource.Open url MsgBox doc.displayName() MsgBox doc.BestBetKeywords MsgBox doc.BestBetCategories MsgBox doc.Categories MsgBox doc.Title MsgBox doc.Description '//独自追加したプロパティも拾えるみたい MsgBox doc.Property( "urn:schemas-microsoft-com:office:office#プロパティ名")
'//ファイルのチェックイン Dim k_version As New PKMCDO.KnowledgeVersion Dim rs As ADODB.Recordset Set rs = k_version.checkin(url)
tags: SharePoint Portal Server zurazure
Posted by NI-Lab. (@nilab)