Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Thunder am 07.04.06 - 10:57:58

Titel: Maske vor Berabeitung schützen - im Frame
Beitrag von: Thunder am 07.04.06 - 10:57:58
Hallo Notes Gemeinde,
normalerweise sperre ich die Masken mit folgendem Script:
(auch hier um Forum gefunden)


in den Globals (Declaration):
Dim ws As NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument


in PostOpen:
Sub Postopen(Source As Notesuidocument)
     Set ws=New NotesUIWorkspace
     Set uidoc=ws.CurrentDocument
     Set doc=uidoc.Document
End Sub


in QueryModeChange:
Sub Querymodechange(Source As Notesuidocument, Continue As Variant)
     If doc.hasitem("bearbeiten") Then
          Call doc.removeitem("bearbeiten")
     Else
          continue=False
          Msgbox"Sie haben keine Berechtigung dieses Dokument zu ändern !"
     End If
End Sub

Anschließend brauche ich nur einen Button, der das 'bearbeiten' Feld setzt und es ist wieder bearbeitbar.Ich weiß, dass es kein 100%iger Schutz ist, aber er reicht für meine Zwecke.

Leider funktioniert er nicht, wenn ich die Maske in einem Frame anzeigen lasse.
Es kommt die Fehlermeldung: Object Variable not set!
Kann man da leicht etwas ändern? Sonst lasse ich das Dokument halt nicht im Frame anzeigen.

Gruß
Remko
Titel: Re: Maske vor Berabeitung schützen - im Frame
Beitrag von: Axel am 07.04.06 - 11:13:47
Kannst du mit dem Debugger feststellen, an welcher Stelle die Fehlermeldung kommt?

Andere Frage noch, zu was braucht du denn die ganzen Variablen? Wenn's nur um das Verhindern des Editieren geht würde doch das auch so gehen:

in QueryModeChange:
Sub Querymodechange(Source As Notesuidocument, Continue As Variant)
     If Source.Document.hasitem("bearbeiten") Then
          Call Source.Document.removeitem("bearbeiten")
     Else
          continue=False
          Msgbox"Sie haben keine Berechtigung dieses Dokument zu ändern !"
     End If
End Sub


Axel
Titel: Re: Maske vor Berabeitung schützen - im Frame
Beitrag von: Thunder am 07.04.06 - 11:29:11
Tja-keine Ahnung. Wie gesagt, ich habe es einfach übernommen.
Aber Du hast recht. Es funktioniert auch so !
Jetzt kommt auch keine Fehlermeldung mehr hoch  :D :D
Das war ja ganz leicht.

thx a lot Axel
Titel: Re: Maske vor Berabeitung schützen - im Frame
Beitrag von: koehlerbv am 07.04.06 - 11:37:13
Hast Du eigentlich keinen anderen Code im PostOpen? Dann öffne mal Dein Dokument direkt im EditMode aus einer Ansicht ... Du bist dann im Dokument, ohne QueryModeChange durchlaufen zu haben.

Bernhard
Titel: Re: Maske vor Berabeitung schützen - im Frame
Beitrag von: Thunder am 07.04.06 - 12:03:54
Ich weiß - Strg+B und man könnte bearbeiten.
Da ich mich aber nicht mit Script auskenne und die Anwendung auch nicht soo wild ist, lebe ich halt damit.   :-:
Aber zumindest ist der Doppelklick gesperrt, den der NormalUser meist benutzt. Und der war mir wichtig !
Titel: Re: Maske vor Berabeitung schützen - im Frame
Beitrag von: koehlerbv am 07.04.06 - 12:10:42
Hast Du den Best Practices-Artikel (http://atnotes.de/index.php?topic=20455.0) hierzu nicht gelesen?

Bernhard
Titel: Re: Maske vor Berabeitung schützen - im Frame
Beitrag von: Thunder am 07.04.06 - 12:20:17
thx

Werde ich mir mal zu Gemüte führen.