あるデータベースにおいて、文書の閲覧履歴を取りたいと 考えています。 ただし、文書に対して編集権限のないユーザーの閲覧履歴も 取りたいために、うまくいかず四苦八苦しています。 PostOpenイベントにて、RunOnServerメソッドを使用して エージェントを呼び出し、そのエージェントの中で サーバーの権限にて文書に情報をセットし、保存しようとして いるのですが、どうしても、文書を開いているユーザーの ユーザー名が取得できません。 以下が設定したスクリプトです。 (PostOpen) Dim ses As New NotesSession Dim db As NotesDatabase Dim doc As NotesDocument Dim pdoc As NotesDocument Dim agent As NotesAgent Set db = ses.CurrentDatabase Set doc = Source.Document If Not(Source.IsNewDoc) Then Set agent = db.GetAgent("(ReaderSet)") Call agent.RunOnServer(doc.NoteID) End If (ReaderSetエージェント) Dim ses As New NotesSession Dim db As NotesDatabase Dim doc As NotesDocument Dim agent As NotesAgent Dim UName2 As String Dim UName As NotesName Dim UNameAbb As String Dim ADate As Variant Dim RirekiStr As String Dim RirekiStr2 As String Dim rStr As String Set db = ses.CurrentDatabase Set agent = ses.CurrentAgent Set doc = db.GetDocumentByID(agent.ParameterDocID) UName2 = ses.UserName ADate = Now() Set UName = ses.CreateName(UName2) UNameAbb = UName.Abbreviated RirekiStr = doc.RirekiRead(0) RirekiStr2 = ADate & ":" & UNameAbb If RirekiStr = "" Then doc.RirekiRead = RirekiStr2 Else rStr = RirekiStr2 & Chr(10) & RirekiStr doc.RirekiRead = rStr End If Call doc.Save(True, False) 上記ですと、ses.UserNameにはサーバーの名前が取得されて しまいます。 PostOpenイベントでses.UserNameを使用すれば現在のユーザー名 が取得できるのですが、その値をエージェントへ渡せません・・。 どなたかアドバイスをお願い致します!