Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: arieger am 29.11.12 - 09:49:20
-
Guten Tag,
wie kann man einen berechneter Abschnitt anhand von einem bestimmten Status bearbeiten oder nur lesen lassen? Also Beispielsweise wenn Status "genehmigt" dann soll der Abschnitt von niemanden mehr bearbeitet werden können ansonsten bei Stati alles außer "genehmigt" sollen alle schreiben dürfen. Geht sowas überhaupt und wenn ja, wie?
Trotz vieler Tests und intensivem Nachforschen hier im Forum habe ich keine Lösung gefunden. Das mit Teilmasken zu lösen, bin ich mir nicht sicher, ob das geht, weil ich diese nur verbergen oder sehen lassen kann, bringt mir also nicht. Soll ja immer gesehen werden.
Folgende Formel hat mir auch keine Lösung gebracht (Abschnitt ist berechnet):
@If(Status = "genehmigt";@ True; @False).
Vielen Dank für alle Tipps bereits im vorraus?
Viele Grüße
Anton
-
Hallo,
Wie waere es denn mit 'Berechnet zur Anzeige' wer den Abschnitt noch bearbeiten darf oder nicht.
Andreas
-
Der Abschnitt muss berechnet zur Anzeige sein - sonst ist die Festlegung gespeichert und nicht ad hoc änderbar.
Vor allem aber musst Du angeben, wer den Abschnitt bearbeiten darf in Abhängigkeit vom Status. Der zeit dürfen den Abschnitt entweder @True oder @False bearbeiten. Ich glaube, die habt Ihr gar nicht in Euer Organisation ;)
Bernhard
-
"Berechnet" ist bei Abschnitten immer schlecht... Besser "Berechnet zur Anzeige"...
Ausserdem solltest Du Dir die Hilfe zu Berechneten Abschnitten durchlesen: Die Formel erwartet kein @True oder @False, sondern eine Liste mit Namen, die dürfen.
Leer bedeutet dabei: Alle (wenn ich mich recht erinnere).
Deine Formel im "Berechnet zur Anzeige" Abschnitt lautet also:
@If( Status = "genehmigt" ; "-niemand mehr-" ; @UserName )
Statt "-niemand mehr-" kannst Du irgendwas schreiben, auch einfach nur "-", Hauptsache es gibt keinen User / keine Gruppe / keine Rolle mit diesem Namen.
Die Designer- Hilfe ist Dein Freund... Da steht sowas normalerweise immer super drin beschrieben... Im Beispiel wäre es das Dokument "Abschnitte mit Zugriffskontrolle in Masken erstellen".
-
vielen Dank Euch allen für die schnelle Hilfe - Ihr seid Superklasse.
"Berechnet zur Anzeige" und die Formel von Tode hat geholfen.
Guß Anton
-
Achtung bei "-niemand-" oder "-":
Beachte Hinweis von Peter Klett:
http://atnotes.de/index.php/topic,55264.msg356463.html#msg356463
Gruß Stefan
-
Darauf hat aber Torsten oben auch schon explizit hingewiesen ;)
Bernhard
-
Stefan hat schon recht: Ich hatte zwar darauf hingewiesen, dass es keinen User / keine Gruppe geben darf, aber nicht explizit darauf hingewiesen, dass jemand mit entsprechenden Berechtigungen sich eine solche Gruppe erstellen kann, um Zugriff zu erhalten... Deshalb ist der Hinweis schon gut...
-
...Ich hatte zwar darauf hingewiesen, dass es keinen User / keine Gruppe geben darf, aber nicht explizit darauf hingewiesen, dass jemand mit entsprechenden Berechtigungen sich eine solche Gruppe erstellen kann, um Zugriff zu erhalten... ´
ganau darum ging es mir.
Danke für die Klarstellung.
Stefan
-
Guten Morgen,
das mit der Zugriffsberechtigung habe ich verstanden und berücksichtigt. Auch der entsprechende Umschaltbutton funktionert (siehe u.a. Script).
Wenn ich dann das Dokument neu öffne, ist er Abschnitt auch gesperrt. Nicht gehen tut es, wenn ich dann nach dem close mit ws.editdokument sofort wieder gestartet habe - aber egal, das brauche ich nicht.
Eine Frage hätte ich noch an die Experten: wenn Sie das ganze Dokument sperren müßten, würden Sie dann eher eine extra neue Maske mit aussschließlich berechneten Felder bevorzugen oder wurden Sie dies mit @DocLock erledigen.? Was ist da besser oder hat Vorteile, oder ist das egal?
Viele Grüße
Anton
Dim ws As NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Set ws = New NotesUIWorkspace
Set uidoc=ws.CurrentDocument
Set doc = uidoc.Document
Dim Item As NotesItem
Call uidoc.FieldSetText("Status", "Geschlossen")
Call uidoc.save
Call uidoc.refresh
Call uidoc.Close
Messagebox "Der Abschnitt Dokumentation wurde schreibgeschützt !" & Chr(13) , 64 ,"Information"