Domino 9 und frühere Versionen > ND6: Entwicklung

Übergreifende Variablen

<< < (3/4) > >>

Axel:

--- Zitat von: DaHias am 14.10.08 - 13:44:14 ---Das mit den Profildokumenten klingt eigentlich sehr vielversprechend, vor allem kann ich es damit gut benutzerspezifisch gestalten. Und dass die im Cache gehalten werden, wie es Bernhard schreibt, hab ich gelesen und finde ich auch top da ich doch einige Male darauf zugreifen werde.

--- Ende Zitat ---

Aber Achtung! Einen Fallstrick hat das Ganze. Werden Werte in Feldern des Profildokumentes geändert, werden sie erst nach einem Neustart der Datenbank gültig.

Axel

koehlerbv:
Die ursprüngliche Fragestellung deutet darauf hin, dass es sich um benutzerabhängige Variable handelt, ergo sind persönliche Profildokumente zu verwenden. Damit entfällt der Fallstrick, Axel.

Bernhard

LN4ever:
Lieber Mathias,

überleg dir gut, wie du mit Benutzern umgehst, die nur lesenden Zugriff auf deine DB haben. Die können evtl. kein Profildokument anlegen.

@Axel:
Ein bereits angelegtes Profildokument kann jeder (auch ein lesender Benutzer) verwenden und die Werte für seine Session auch überschreiben. Während der Session stehen ihm seine Werte (gecached) an jeder Stelle zur Verfügung. Man kann so etwas bei der Übertragung von Suchstrings oder Spracheinstellungen, die der Benutzer einmalig am Anfang der Sitzung vornimmt, gut einsetzen. Da turnen Hundert Benutzer auf einem einzigen von einem Editor angelegten zentralen Profildokument herum - und jeder hat nur seine eigenen Werte zur Verfügung.

Gruß

Norbert

DaHias:
@Norbert: Autorenrechte sollten aber ausreichen oder? So war es zumindest angedacht.

Also was ich bis jetzt gesehen habe, klappt das mit den Profildokumenten ganz gut und ich krieg damit auch genau das hin, was ich wollte.

LN4ever:
Lieber Mathias,

natürlich reichen Autorenrechte aus. Ich setze normalerweise noch ein Feld $PublicAccess BERECHNET BEIM ANLEGEN mit dem Wert "1" ein, damit der Zugriff nicht abgeschottet wird (in einem solchen Dokument stehen ja keine Geheimnisse drin).

Bei Profildokumenten ist eine wichtige Grenze zu beachten: In einer Datenbank darf die Summe aller Profildokumente ca. 6000 nicht übersteigen. Das erscheint auf ANhieb eine große Zahl, aber wenn du bedenkst, daß es eine ganze Reihe von halböffentlichen Code-Schnippseln gibt, die Userprofildokumente benutzen,  kann sich die Zahl schnell erhöhen. Und es ist die Vorabwarnung: für große Datenbanken mit sehr vielen Benutzern kannst du das gleich wieder knicken.

Dann mußt du den Weg gehen, den ich oben angedeutet habe: Jeder Benutzer hat ein "normales" Definitionsdokument, dessen Inhalte zu Beginn der Sitzung in das eine öffentliche Profil-Dokument kopiert werden (das der User niemals speichert). Damit stehen dir die Caching-Geschwindigkeitsvorteile zur Verfügung, die Profildokumente bieten und du bist in der Zahl der Benutzer nicht eingeschränkt.

Gruß

Norbert

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln