Ich stehe gerade etwas auf dem Schlauch.
Ich möchten eine gemeinsame Aktion in eine Ansicht und eine Maske bauen.
Grund ist einfach, daß ich eine Änderung von X Sachen in einem Dokument unterbinden will und eine Sache (Titel) ändern möchte. Der Wert wird immer gesetzt. Die Sache mit der View klappt wie gewünscht.
Wenn ich nun aber das Dokument öffne und im Lesemodus bin, dann klappt die Aktualisierung nicht. Ich habe diverse Sachen probiert und kriege maximal den Eintrag im Titel der Registerlasche / des Tabs aktualisiert. Der Titel, der in einem Feld angezeigt wird bleibt auf dem alten Wert. Schließe ich den Tab und gehe zurück in die Ansicht, steht da auch der alte Wert. Der Eigenschaft AutoReload vor dem Save zu setzen hat da auch nichts gebracht. Hier der etwas abgespeckte Schnipsel.
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim uidoc As NotesUIDocument, uidoc2 As NotesUIDocument
Dim uiview As NotesUIView
Dim doc As NotesDocument
Dim OldSubject As String, NewSubject As String
Set db = session.CurrentDatabase
Set uidoc = ws.CurrentDocument
If (uidoc Is Nothing) Then
Set uiview = ws.CurrentView
Set doc = db.GetDocumentByID(uiview.CaretNoteID)
Else
Set doc = uidoc.Document
End If
Call doc.ReplaceItemValue( "X", "some new Value")
Call doc.Save(False, False)
If (uidoc Is Nothing) Then
Call ws.ViewRefresh()
Else
uidoc.Close(True)
Set uidoc2 = ws.EditDocument(False, doc)
uidoc2.Refresh()
End If
End Sub
Hat da jemand Erfahrungen bzw. eine Idee?
Ich muss das Dokument natürlich nicht schließen, war aber als Lösung in der Doku angegeben.