Grundlagen sind soweit vorhanden (auch wenn ich viel nachgucken muss).
Also das Feld um das es geht, wird durch Benutzer mittels einer Aktion befüllt. Die Aktion sieht so aus:
Sub Click(Source As Button)
Dim session As New notessession
Dim ws As New notesuiworkspace
Dim db As notesdatabase
Dim dialogDoc As notesdocument
Dim uidoc As notesuidocument
Set uidoc = ws.currentdocument
Set db = session.currentdatabase
uidoc.EditMode=True
zs = Chr(13) & Chr(10)
Set doc = db.createdocument
flag = ws.DialogBox( "Bemerkungen" ,True , True, False, False, False, False, "Bemerkungen", doc )
If doc.dialogBemerkungenText(0) = "" Then
Call uidoc.Close
Exit Sub
End If
tempText = zs+"---------------- " + Cstr(Now) & " / " + session.commonusername + " ----------------" + zs + doc.dialogBemerkungenText(0)+zs
Call uidoc.FieldAppendText("Bemerkungen", tempText )
Call uidoc.Save
Call uidoc.refresh
Call uidoc.Save
Call uidoc.Close
End Sub
Nun möchte ich auf mehr oder weniger elegante Weise halt auch über eine Aktion es (einem begrenzten Kreis) ermöglichen, daraus auch Sachen wieder zu entfernen.
Ich hab ein ähnliches Szenarion in einer meiner Datenbanken.
Dort gibt es ein paar Felder die "wichtig" sind und deshalb nur gesondert änderbar sein sollen.
Ich hab eine Teilmaske erstellt und dort die Textfelder im einer Tabelle im vorher - nachher Vergleich dargestellt. Der Aufruf der Teilmaske über die Dialogbox aus dem Dokument (in einem Button) ist relativ überschaubar:
Aenderungen = ws.DialogBox ("Teilmaske", True , True, False, True, False, False, "Dialog Box",,True)
Beim schließen der Teilmaske werden dann die Änderungen in das Dokument geschrieben.
Guck dir einfach mal die verschiednen Möglichkeiten von Dialogbox und Teilmasken an.
Chris