当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。
記事そのもののリンクについてはご自由に行っていただいてよいです。

テクてく Lotus 技術者 Slack に参加しよう!

2008年4月30日水曜日

ビューで選択した文書を取得する

ビューで文書を選択して、その文書に何かアクションを起こすということは、
よくあることだと思う。
その方法を記載しておく。
以下のサンプルの太文字部分が、選択した文書を取得するか所だ。
ポイントは、取得した文書はNotesDocumentCollectionであるところ。
例え、1文書しか選択していなくてもコレクションに収められるので、
直接NotesDocumentにすることはできない。

Sub Initialize
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim docs As NotesDocumentCollection
    Dim doc As NotesDocument
    
    'カレントデータベースを設定する
    Set db = session.CurrentDatabase
    
    'ビューから選択された文書を取得する
    Set docs = db.UnprocessedDocuments
    
    '全文書数分の繰り返し
    For i = 1 To docs.Count
        'GetNthDocument( i )は、i番目の文書を取得するという意味
        'このときの文書の並びはデータベースに保存された順
        Set doc = docs.GetNthDocument( i )
        
        'タイトルをsbjという変数に保存しておく。その際、1タイトルごとに改行する
        'Chr$(13)は改行コードを意味する
        sbj = sbj + Cstr( i ) + "." + doc.Subject( 0 ) + Chr$(13)
    Next
    
    'タイトルの表示
    Messagebox sbj, 0, "DB中の全文書のタイトル"
End Sub


0 件のコメント: