Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Uwe Schreiner am 11.09.07 - 16:02:19

Titel: Unterschiedliche Dokumente in der gleichen Ansicht
Beitrag von: Uwe Schreiner am 11.09.07 - 16:02:19
Hallo Admins,

dies ist mein erster Post hier, daher hoffe ich, dass ich alles klar und verständlich rüber bringe ;)

Also folgendes: Bei einer DB sollen manche Dokumente für alle Nutzer
sichtbar sein, einige nur für die Leitenden Angestellten. Die Docs für die
Leitenden sollen aber teilweise über einen Doc-Link den Mitarbeitern seines
Bereiches zugänglich gemacht werden können (Vorauswahl durch den Leiter).

Dazu hab ich mir folgendes gedacht: Ich erstelle Rollen. Diese können wiederrum vom Autor als Leser ausgewählt werden und in ein Leserfeld eingetragen werden. So weit alles klar, aber die Ansicht bekomme ich nicht so hin, dass Dokumente nur bei den Leitern angezeigt werden und bei den Mitarbeitern nicht, da ich ja auch die Mitarbeiter grundsätzlich als Leser auf dem Dokument berechtigen muss. Als Ansichtenauswahl hab ich folgende Formel probiert:

SELECT @If(@IsMember("[NurLeiter]";@UserRoles);@All;Sichtbar="Nein")

Es wird hier allerdings immer der "Sonst-Zweig" des If´s genommen, egal ob der Nutzer die Rolle [NurLeiter] hat....
Es wird teilweise auf Ansichten in Masken zum dynamischen Erstellen von Ansichten verwiesen, aber ich hab zwar ata´s Anleitung gefunden, allerdings wie dieses genau funktioniert und und wie ich das auf meinen Fall übertragen kann verstehe ich nicht  :( Ansonsten mache ich das über verschiedene Ansichten, die je nach Rolle gezogen werden)

(Ich bin notestechnisch ein wenig aus der Übung, vor allem die neuen Gestaltungselemente machen mir Probleme ;) mache derzeit vieles noch über Navigatoren... bin ich da eigentlich ganz alleine ??? ) )

Gruß
Uwe
Titel: Re: Unterschiedliche Dokumente in der gleichen Ansicht
Beitrag von: klaussal am 11.09.07 - 16:05:18
Wenn Du mit Leserfeldern arbeitest, dann können eh nur die Leute, die in den Leserfeldern stehen bzw. die Rolle haben, die Dokumente sehen. Also ist das mit der select-Formel überflüssig.

Im Nachgang:
Dynamische Ansichten gibt es nicht !  :-P
Titel: Re: Unterschiedliche Dokumente in der gleichen Ansicht
Beitrag von: m3 am 11.09.07 - 16:09:30
1) Willkommen im Forum.

2) Posting ist ganz wunderbar :)

3) Warum willst Du die Dokumente nicht in der Ansicht anzeigen lassen?
Wenn der MA über den Doclink zugreifen darf, kann man die Doks doch auch in der View anzeigen. Nimmt ihm die Leiter die Leserechte weg, wird das Dok auch nicht mehr in der View angezeigt.
Und nicht komm mit jetzt mit "aus Sicherheitsgründen sollen die Docs nur für Leiter angezeigt werden", weil dann komm ich mit einem nassen Fetzen und prügel Dir das aus dem Kopf ;)  ;D
Titel: Re: Unterschiedliche Dokumente in der gleichen Ansicht
Beitrag von: pete_bla am 11.09.07 - 16:38:16
zustimm!

Das mit den Leserfeldern ist ein korrekter Ansatz.
Die Ansichtsauswahlformel ist somit nicht relevant! (Vergiss die Formel!)

Du solltest den Dokumenten ein Leserfeld (oder gleich Autorenfeld) für die Rolle "[NurLeiter]" fest einbauen.
-> Alle mit dieser Rolle dürfen die Dokumente sehen und Bearbeiten (den Rest erledigt dann Notes)

Die Anwender die vom Leiter berechtigt werden werden explizit (mit Namen oder Gruppe (oder Rolle)) in das Leserfeld eingetragen, wenn sie berechtigt werden.
Ansonsten nützt Dir Dein Konzept recht wenig für den Leseschutz!

Wenn Du mit 1 Leserfeld arbeitest hättest Du diese Formel:
Code
@IF(@ThisValue=""; "[NurLeiter]"; @ThisValue)
(wenn es Leer ist, wären sonst alle berechtigt)
Und es ist ein Mehrfachwertfeld!

Und z.B. einen Button mit der der Leider den User zum Leserfeld hinzufügt:
Code
neuerLeser:=@Name([Canonicalize];ausgewaehlterLeser);
@SetField("Leser"; Leser:neuerLeser)

Du kannst auch (Sicher ist Sicher) noch mit 1 Leserfeld und 1 Autorenfeld arbeiten (Autoren =automatisch auch Leser)
Autorenfeld hat "[NurLeiter]" fest eingetragen:
Code
"[NurLeiter]"

Leserfeld darf dann aber nicht leer sein (sonst können alle das Dok lesen)
Code
@IF(@ThisValue=""; "[NurLeiter]"; @ThisValue)

Gruss, Pete(r)

PS: Mit Deiner Asichtsauswahlformel
SELECT @If(@IsMember("[NurLeiter]";@UserRoles);@All;Sichtbar="Nein")
versuchst Du eine "Dynamische auswahl", diese wird spätestens auf dem Server scheitern, sobald mehrere Dokumente in der DB stehen und mehrere User gleichzeitig auf die Ansicht zugreifen.
Sowas macht man in Notes einfach nicht!
Darum will ich auch garnicht über diese Formel nachdenken, wie sie funktionieren könnte.

Titel: Re: Unterschiedliche Dokumente in der gleichen Ansicht
Beitrag von: Uwe Schreiner am 11.09.07 - 17:05:02
wow, ich bin begeistert über die schnellen Antworten :)

@klaus: Die User sollen gemäß Aussage der Geschäftsleitung nicht von Infos überlaufen werden ("Die sollen nicht die ganze Zeit Ihre Mails lesen"...)... was aber ja nix anderes ist, als die bisherigen internen Rundschreiben, aber egal :P

@m3: der nasse Fetzen würde mich interessieren, ansonsten s.o. *g*

@pete: das Leserfeld wird grundsätzlich mit der Admin-Rolle gefüllt... nicht, dass mir da nen Dokument verschwindet.... Jo, und die Formel vergesse ich gerade ... ähm welche Formel ;)

Ich denke, ich werde die ganze Sache jetzt über zwei verschiedene Ansichten angehen und die den unterschiedlichen Rollen zuweisen. Da weiss ich wenigstens, dass das funtioniert ^^