Domino 9 und frühere Versionen > ND7: Entwicklung
Dokument zur Bearbeitung sperren
Neuling_2k7:
Hallo @Notes Gemeinde,
ich habe mal wieder eine Anforderung, die ich alleine nicht hin bekomme:
Dokumente in meiner DB sollen nicht über doppelklick zur Bearbeitung geöffnet werden können. Um Dokumente zu bearbeiten habe ich einen Aktions-Button in meiner Ansicht eingebaut.
So weit bin ich schon mal alleine gekommen:
In den Declarations der DB habe ich eine Variable <allow_edit> als boolean deklariert.
Im PostOpen der Maske wird diese Variable auf <false> gesetzt.
Im QueryModeChange der Maske wird dann folgender code abgefragt:
--- Code: ---If allow_edit = False Then
continue=False
Exit Sub
End If
--- Ende Code ---
in meinem Aktion-Button habe ich folgenden Code hinterlegt:
--- Code: --- Dim uidoc As NotesuiDocument
Dim db As NotesDatabase
Dim ws As New NotesUIWorkspace
Set uidoc=ws.CurrentDocument
allow_edit=True
uidoc.editmode=True
--- Ende Code ---
Der erste Teil der Anforderung funktioniert: das Dokument kann über einen Doppelklick nicht bearbeitet werden.
Aber:
Wenn ich den Button verwende funktioniert es auch nicht. Im Debugger habe ich festgestellt das <allow_edit> beim klick auf den Button keinen Wert hat - also quasi initial ist.
Ist das ein normales vorgehen in Notes, oder mach ich was falsch??
MadMetzger:
Hm... Wie hast du denn allow_edit definiert? Ist das eine globale Variable in der Maske? Dann hast du aber in dem Button (Wo befindet sich der?) keinen Zugriff darauf, wenn ich mich jetzt gerade nicht vollkommen irre.
Neuling_2k7:
Hi,
hab das als Variable im DB-Script_Declarations folgendermaßen definiert:
dim allow_edit as boolean
Der Button direkt auf der Maske definiert....
MadMetzger:
Dann muss ich meine Aussage revidieren. Habe es gerade ausprobiert. Hatte einen Verdacht, dass die Variable in dem Kontext nicht sichtbar ist... Aber der hat sich nicht bewahrheitet.
Neuling_2k7:
das ist ja das was mich wundert...
Wenn ich mir die gesamte Aktion im Debugger anschaue ist die Variable immer da und wird auch beim Doppelklick gefüllt und ich kann den wert dann im Querymodechange abfragen und entsprechend reagieren.
Wenn ich den Button klicke ist die Variable aber leer...
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln