@Catrex:
So wie ich das sehe, soll der Anwender nur 1 bestimmtes Feld über mehrere Doks ändern dürfen.
Nutz doch das gleich mal als Auslöser, dies in LotusScript umzusetzen.
Hier ein Gerüst, das so schon funktioniert:
On Error Goto ErrorHandler
Const FIELDNAME_TOCHANGE$ = "Titel"
Dim session As New NotesSession
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Dim strNewValue As String
Dim strMsg As String
Set db = session.CurrentDatabase
Set collection = db.UnprocessedDocuments
Set doc = collection.GetFirstDocument
strMsg = "Sie haben " & collection.Count & " Dokumente ausgewählt. Bitte neuen Wert eingeben:"
strNewValue = Trim$(Inputbox$(strMsg , "Feldwert ändern..."))
If strNewValue = "" Then
Msgbox "Sie haben <Abbrechen> betätigt oder keinen neuen Feldwert eingegeben.", 64, "Aktion abgebrochen"
Exit Sub
End If
While Not(doc Is Nothing)
Call doc.ReplaceItemValue(FIELDNAME_TOCHANGE, strNewValue)
Call doc.Save(False, False)
Set doc = collection.GetNextDocument(doc)
Wend
Msgbox "Es wurden " & collection.Count & " Dokumente erfolgreich abgearbeitet.", 64, db.Title
goOut:
Exit Sub
ErrorHandler:
Msgbox "Fehler: " & Err & " - " & Error$ & Chr(10) _
& "in Zeile: " & Erl, 48, "Es ist ein Fehler aufgetreten"
Resume goOut
Ist allerdings noch nicht sauber !
Was Du z.B. noch alles einbauen könntest:
- Fehler abfangen, wenn der Anwender keine Schreibrechte hat
- Überprüfen des Feldes FIELDNAME_TOCHANGE (also z.B. den Typ des Items. Wenn kein Textfeld, dann brichst Du mit einer Fehlermeldung ab)
- etc.