既存文書の一部ををコピーして別の文書を作成しようとしています。
Dim session As New NotesSession
Dim workspace As New NotesUIWorkspace
Dim db As NotesDatabase
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument, doc2 As NotesDocument
Dim item As NotesItem
'// 確認メッセージ
RetVal = Messagebox ( "文書のコピーを作成します。よろしいですか?" ,1+32, "メッセージ" )
If RetVal = 2 Then
Exit Sub
End If
Set uidoc = workspace.CurrentDocument
Set doc = uidoc.Document
Set db = session.CurrentDatabase
Set doc2 = New NotesDocument(db)
doc2.form=doc.form(0)
Set item = doc.GetFirstItem("Categories")
Call item.CopyItemToDocument(doc2, "Categories")
Set item = doc.GetFirstItem("Body")
Call item.CopyItemToDocument( doc2, "Body") ←コピーした文書ではここでエラー
Call doc2.RemoveItem( "$FILE" )
Call workspace.editdocument(True, doc2,False )
Set uidoc = workspace.CurrentDocument
uidoc.Refresh
以上のコードはうまくいくのですが、このスクリプトでコピーした文書をさらにコピーしようと
上記のスクリプトを実行すると、以下のエラーが出てしまいコピーができません。
「エラー:文書アイテムがみつかりません(Body)」
エラーなくコピーをつくるための方法がわかりません。
わかる方がいたら教えて頂けると助かります。
足りない情報等ありましたら、ご指摘ください。
よろしくお願いいたします。
補足:
このBobyフィールドは、計算結果フィールドになっており、以下のような配置になっています
Bodyフィールド(計算結果)
Body_inputフィールド(編集可能)
Body_inputフィールドに入力した内容をフォームのQueryCloseイベント時にBodyフィールドにアップしています。
これが今回のエラーに関係しているのかどうかはわかりません。