- 次のビューアクションスクリプトは、ビューで現在ハイライト表示されている文書を編集モードで開きます。
Sub Click(Source As Button)
workspace As New NotesUIWorkspace
Call workspace.EditDocument( True )
End Sub
- 次のビューアクションスクリプトはビューで現在ハイライト表示されている文書を編集モードで開き、挿入点を [本文] フィールドに移動します。
Sub Click(Source As Button)
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = workspace.EditDocument( True )
Call uidoc.GotoField( "Body" )
End Sub
- 次のエージェントは、指定された文書を読み込みモードで開きます。文書は、CustomerNumber フィールドでソートされたビューの GetDocumentByKey を使用して選択されます。
Sub Initialize
Dim ws As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim customerNumber As String
Set db = session.CurrentDatabase
Set view = db.GetView("All Documents by CustomerNumber")
customerNumber = Inputbox$("Customer number")
If customerNumber <> "" Then
Set doc = view.GetDocumentByKey(customerNumber, True)
If doc Is Nothing Then
Messagebox "Customer # " & customerNumber,, _
"Customer not found"
Else
Call ws.EditDocument(False, doc)
End If
End If
End Sub
- 次のエージェントは、指定した文書をテキストが「Address」のアンカーリンクに読み込みモードで開き、ユーザーが書き込みモードに切り替えられないようにします。文書は、CustomerNumber フィールドでソートされたビューの GetDocumentByKey を使用して選択されます。
Sub Initialize
Dim ws As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim customerNumber As String
Set db = session.CurrentDatabase
Set view = db.GetView("All Documents by CustomerNumber")
customerNumber = Inputbox$("Customer number")
If customerNumber <> "" Then
Set doc = view.GetDocumentByKey(customerNumber, True)
If doc Is Nothing Then
Messagebox "Customer # " & customerNumber,, _
"Customer not found"
Else
Call ws.EditDocument(False, doc, True, "Address")
End If
End If
End Sub
- 次のエージェントは文書を開くフレームで実行されるため、NotesUIDocument オブジェクトが返されないようにします。オブジェクトが返されると、エラー lsERR_LSXU13_ANCESTOR_TARGET_FRAME が発生します。この文書は開かれますが、返される NotesUIDocument オブジェクトは Nothing です。次の例も参照してください。
Sub Initialize
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim s As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Set db = s.CurrentDatabase
Set view = db.GetView("All Documents")
Set doc = view.GetFirstDocument
Call ws.OpenFrameSet("main")
Call ws.SetTargetFrame("left")
Set uidoc = ws.EditDocument(False, doc, False,,False)
End Sub
- 次のエージェントは、NotesUIDocument オブジェクトが返されないようにはしませんが、エラー lsERR_LSXU13_ANCESTOR_TARGET_FRAME を捕捉します。この場合、文書は開かれません。
%INCLUDE "lsxuierr.lss"
Sub Initialize
On Error Goto handleError
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim s As New NotesSession
Dim db As NotesDatabase
Dim v As NotesView
Dim doc As NotesDocument
Set db = s.CurrentDatabase
Set view = db.GetView("All Documents")
Set doc = view.GetFirstDocument
Call ws.OpenFrameSet("main")
Call ws.SetTargetFrame("left")
Set uidoc = ws.EditDocument(False, doc, False)
Exit Sub
handleError:
If Err() = lsERR_LSXUI3_ANCESTOR_TARGET_FRAME Then
Exit Sub
Else
Messagebox Err(),, Error()
Exit Sub
End If
End Sub
- 次のアクションは、返答文書のフォーム上で実行されます。既存の UI インスタンスが存在する場合は、それを使用して親文書を編集します。
Sub Click(Source As Button)
REM Create workspace, UI objects, and back-end objects
Dim ws As New NotesUIWorkspace
Dim uidb As NotesUIDatabase
Dim uidoc As NotesUIDocument
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim parentDoc As NotesDocument
Set uidb = ws.CurrentDatabase
Set uidoc = ws.CurrentDocument
Set db = uidb.Database
Set doc = uidoc.Document
REM Save if new so there will be a UNID
If uidoc.IsNewDoc Then Call uidoc.Save
REM Get the parent document
Dim unid As String
unid = doc.ParentDocumentUNID
If unid = "" Then Exit Sub ' Just in case
Set parentDoc = db.GetDocumentByUNID(unid)
REM Open parent document
REM Do not open a new window if document is already in the UI
Call ws.EditDocument(True, parentDoc,,,, False)
End Sub