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

Translate

2008年10月9日木曜日

スクリプトでテキストリストを操作する

テキストリストを扱ってみよう。
テキストフィールドに複数の値をセットしたいときに便利。

サンプルは、自文書の返答文書として、文書を作成。
その文書のテキストフィールド(複数値可)に値をリストとして追加していくというもの。

------------------------------------------------------------------
Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim uiws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument

'返答文書関連の変数の定義
Dim resdoc As NotesDocument
Dim item As NotesItem
Dim subject As String

'DBの全文書関連の変数の定義
Dim docs As NotesDocumentCollection
Dim doc2 As NotesDocument
Dim i As Integer

'自DBを取得する
Set db = session.CurrentDatabase

'自文書を取得する
Set uidoc = uiws.CurrentDocument
Set doc = uidoc.Document

'返答文書の作成(resdocがdocの返答文書になる)
Set resdoc = db.CreateDocument
Call resdoc.MakeResponse( doc )

'テキストフィールドをクリアする
Set item = resdoc.ReplaceItemValue( "TextField" , "" )
'DBの全文書のタイトルを取得して、テキストリスト形式で返答文書に埋め込む
Set docs = db.AllDocuments
For i = 1 To docs.Count
Set doc2 = docs.GetNthDocument( i )
subject = doc2.Subject( 0 )
Call item.AppendToTextList( subject )
Next

'その他の項目を設定
resdoc.Form = "Response2"
resdoc.Subject = "バックグラウンドで作成した返答文書"

'返答文書を変更したので保存する
Call resdoc.Save( True, True )
End Sub

Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: