Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Wiesel am 24.02.06 - 09:59:08
-
Guten Morgen!
Hab schon im Forum gesucht, bin aber nicht so richtig auf antworten gekommen, deshalb hier nochmal Fragen zum geliebten Thema "private Ansichten" (R5):
1.
Es gibt die Möglichkeit, 3 verschiedene private Ansichten anzulegen:
"Privat"
"Gemeinsam, Privat bei Erstbenutzung"
"Gemeinsam, für Desktop privat bei Erstbenutzung"
Wo liegen genau die Unterschiede? Wann sollte man was verwenden? Und wo wird die Ansicht dann gespeichert?
2.
Ich habe irgendwann mal in einem Forum den Ratschlag bekommen, besser eingebettete Ansicht anstatt private Ansichten zu nutzen, da private Ansichten manchmal spinnen und nicht das anzeigen, was sie anzeigen sollen. Hat ja auf jeden Fall den Vorteil, daß Gestaltungsänderungen sofort ziehen (bei privaten Ansichten muss ja erst die Datenbank entfernt werden, damit die privaten Ansichten gelöscht werden, was auch nicht immer so funktioniert, wobei ich da dann auch noch eine 3. Frage hätte...).
Ein Nachteil der eingebetteten Ansicht hat sich jetzt herausgestellt. Und zwar kann kein vernünftiger Ansichtsausdruck gemacht werden. Es werden dann alle Dokumente der Ansicht ausgedruckt, die es im Hintergrund so gibt. Aber der User soll ja nur die Dokumente bekommen, die für ihn bestimmt sind.
Da wir in diesem Jahr noch R6 einsetzen wollen und ich hier im Forum erfahren habe, daß das in R6 funzt, dachte ich vorübergehend daran, den Druck für die User (nur in der Ansicht) zu unterdrücken. Geht das?
3.
Wir arbeiten über ein CMS. Die User brauchen keine Datenbanken mehr installieren oder deisntallieren, da das alles über Zugriffsrechte gesteuert wird und der User alle die Datenbanken im CMS zur Verfügung hat, die er benötigt.
Arbeite ich also mit privaten Ansichten und ändere was, kommen die Änderungen nicht zum tragen. Kann ich sowas automatisieren, daß sich bei jeder Öffnung der Datenbank z.B. die private Ansicht neu aufbaut??
So, das waren viele Fragen auf einmal. Es ist immer schwer, gut zu beschreiben, was einem so durch den Kopf geht. Also bei Unklarheiten: Fragen!
Ich danke Euch,
Wiesel
-
1. a. Privat ist privat, d.h. nur der Ersteller der Ansicht, sieht diese auch.
b. Quasi ein "normale Ansicht". Sobald ein Benutzer auf diese Ansicht zugreft, erstellt es ihm eine Private Ansicht. siehe a.
Diese Ansichten werden in der DB angelegt. und können auch zentral wieder gelöscht werden, da es zum Teil zu komischen effekten kommen kann.
Designupdates werden nicht automatisch übernommen. Diese Ansichten können mit LS entfernt werden.
c. Wie b. nur wird diese Ansicht auf dem Desktop des Clients gespeichert und nicht in der Datenbank auf dem Server. Auch hier sind Designupdates ein problem.
2. Leser oder Autorenfelder verwenden? oder sonst mit spofu ordnern arbeiten
3. Ja
-
Danke für Deine Antworten.
Habe da noch ein paar Fragen.
1. a) "Der Ersteller der Ansicht" , heißt also der Entwickler?
1. b) Wie lösche ich solche Ansichten zentral?
1. c) Wie verhält sich das, wenn ich heute die DB öffne und eine Ansicht "auf dem Desktop" speicher und morgen an einem anderen PC sitze?
2. Was sind spofu Ordner?
Bei Leserfeldern kenn ich das Problem, das Kategorien angezeigt werden, aber dann nicht die Dokumente. Sieht unschön aus. Geht das mit "Leere Kategorien nicht anzeigen" weg?
3. Wie?
-
1.a) Nö, jeder der in der ACL die "Create private Views" angehäkelt hat.
b) zentral geht nicht, entweder via UserInteraktion und einem Button oder über das QueryOpen der Datenbank. Dann wird beim öffnen der DB die Ansichten gelöscht für den User. (Da die Ansichten privat sind, kommst Du via Agent sonst nicht ran :-))
c) Kann ich nicht beantworten, davon habe ich bis jetzt die Finger gelassen. Bei einer Ansicht wird wahrscheinlich diese neu erstellt. Dann hat der Benutzer 2, auf jedem Client eine. Problem dabei ist jetzt wahrscheinlich wenn sich dazwischen das Design geändet hat. Dann hat er je nach PC eine andere Ansicht....
2. Glossar: SPOFU : Shared Private On First Use
Ja, dies sollte weggehen
3. Im QueryOpen der Datenbank die privaten Ansichten des Users löschen, weil dort der ScriptCode im Kontext des Users ausgeführt wird und so zugriff auf die Ansicht hat.
-
zu 2. und 3.:
kann mich noch nicht für eine bestimmte Lösung entscheiden. Kommt nach bestimmt drauf an, was die User so an Wünschen haben.
Bzgl. 3. noch eine Frage: Welche Scriptklasse kann denn persönliche Ansichten greifen und löschen?
-
Bzgl. 3. noch eine Frage: Welche Scriptklasse kann denn persönliche Ansichten greifen und löschen?
Guckst du hier: http://atnotes.de/index.php?topic=15045.msg89288#msg89288
Axel
-
Die Klasse NotesView hat die Eigenschaft isPrivate.
Du kennst ja den Namen der View bzw. kannst über NotesDatabase.Views über alle Ansichten iterieren und wenn NotesView.isPrivate = true, die Ansicht löschen...