Hallo Zusammen,
das Ziel ist es, über das Web eine Notes-Ansicht zu zeigen. Hier kann der User nach dem Ausfüllen eines Profils eine oder mehrere Kategorien wählen, die dann sofort nach dem Speichern des Profils angezeigt werden. Bei relationellen DB kein Thema, aber in Notes ein Alptraum.
Das 1. Problem ist, dass die Profil-Methodik nicht über das Web läuft, also weder die @Formel, noch die Skript-Methodik (UI-Workspace).
2. Problem ist, dass wir mit eingebetteten Ansichten arbeiten und nicht wollen, dass alle Userinfos selbst in den Dokumenten stehen, um sie dann über die Single Category-Funktion auszuwählen. Das wäre nämlich nicht performant, denn nach dem Speichern von Profilen müssten alle Dokumente mit den Usernamen bestückt werden (wer darf bzw. will was sehen).
Ich habe das so gelöst, dass ich vor dem Speichern des Profildokuments (einfache Maske) einen Web-Agent starte, der die createView-Methodik ausführt und für den spezifischen User eine eigene Ansicht erstellt, wobei die ausgewählten Kategorien als Ansichtsauswahl fungieren und der Username als Name der Ansicht. In einer Web-Maske, die sich anschließend öffnet, wird evaluiert, ob ein Profildokument des Users existiert und wenn ja, wird seine Ansicht eingebettet angezeigt, wenn nicht, dann die Ansicht mit allen Kategorien. Ein dynamischer Link verweist auf sein persönliches Profildokument, damit er es jederzeit editieren kann.
Alles soweit ok und vor allem richtig schnell (ca. 1-2sek vom Speichern des Profils zur Anzeige der neuen Ansicht). Ein kleiner Nachteil sind die Menge der User-Ansichten in der DB, die aber nicht mein Problem darstellen. Ich habe ein Berechtigungsproblem. Denn der Web-User muss Entwicklerrechte haben, um die Ansicht zu erstellen, es sei denn, ich stelle den Agent so ein, dass er zwar aus dem Web auszuführen ist, aber unter einen anderem Namen läuft, nämlich in meinem Fall der Server-ID mit den entsprechenden Rechten. Und genau das tut er nicht. Der Agent wird weiterhin mit der User-ID ausgeführt und nicht mit der eingestellten Server-ID. Das führt bei Notes 6.5.4-Server dazu, dass die Ansicht mit der User-ID erstellt wird (egal ob der User Entwicklerrechte hat oder nicht). Das ist aber auch das letzte, was der Server dann tut, bevor er sich aufhängt. Auf einen Notes-Server, Version 7, wird der Agent nicht ausgeführt, wenn der User keine Entwicklerrechte hat.
Weiss jemand Rat oder eine andere Möglichkeit mein oben beschriebenes Ziel umzusetzen?