Jetzt steh ich etwas auf dem Schlauch: "Servernamen ermitteln und den dann verwenden"
Bei der Funktion
Call docNew.MakeResponse(uidoc.Document)
verwende ich den Servernamen ja nicht explizit.
Der beigefügte Code
dim sTemp as string
sTemp = docNew.ParentDatabase.Server '// SRV01/SRV/TEST
sTemp = uidoc.Document.ParentDatabase.Server '// CN=SRV01/OU=SRV/O=TEST
soll nur dazu dienen, um zu zeigen dass die Servernamen unterschiedlich angezeigt werden. sTemp hat sonst keinerlei Funktion. Der Fehler passiert schon früher in der Zeile ... makeResponse...
Hier ist der komplette Code:
Private Function CreateResponses(col As NotesDocumentCollection) As String
On Error Goto error_Handle
Dim ses As New NotesSession
Dim dbCurr As NotesDatabase
Set dbCurr = ses.CurrentDatabase
If col. count > 0 Then
Dim docSelected As NotesDocument
Set docSelected = col.GetFirstDocument
Dim docNew As NotesDocument
While Not docSelected Is Nothing
CreateResponses = docSelected.strResName(0)
Set docNew = dbCurr.CreateDocument
Call docSelected.CopyAllItems( docNew, True )
docNew.ApprovalStatus = "Not approved"
Dim item As NotesItem
Set item = docNew.GetFirstItem( "rtfResBody" )
Call item.Remove
Dim namCurrUser As New NotesName(ses.UserName)
docNew.nameUpdatedBy = namCurrUser.Common
docNew.nameCreator = namCurrUser.Common
docNew.strShowHistory = "YES"
Redim aryFieldValues(0 To 1) As Variant
aryFieldValues(0) = "[ADMIN]"
aryFieldValues(1) = "[READ ALL]"
docNew.Readers = aryFieldValues
Redim aryFieldValues(0 To 2) As Variant
aryFieldValues(0) = "[ADMIN]"
aryFieldValues(1) = "[EDIT ALL]"
aryFieldValues(2) = namCurrUser.Canonical
docNew.Editors = aryFieldValues
'// m_uiProxy ist ein globales (public) NotesUIDocument
Call docNew.MakeResponse( m_uiProxy.Document ) '// Hier passiert der Fehler
Call docNew.Save( True, False )
Set docSelected = col.GetNextDocument( docSelected )
Wend
End If
cleanup_Handle:
On Error Goto 0
GetExtendedError.ThrowLastError MODULE_NAME + "." + Typename(Me)
Exit Function
error_Handle:
GetExtendedError.Store Err, Erl, Error$, MODULE_NAME + "." + Typename(Me)
Resume cleanup_Handle
End Function