Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: AleX_-_ am 07.09.12 - 13:45:49
-
Hallo zusammen,
gibt es in Notes eine Möglichkeit, dass ein User der nur Leserechte auf die Datenbank hat, ein Profildokument anlegen kann?
Danke für die Hilfe.
AleX
-
Write public documents, und Profil als Public deklarieren...
-
@Tode:
Ich habe in der Datenbank 'Write public documents' aktiviert und in der Maske die Option 'Available to Public Access users'.
Trotzdem lässt sich das Profildokumente mit Leserechten nicht erzeugen.
-
Hallo,
ich habe das gleiche Problem und dabei ist es egal wie ich (versuche) das Profildokument zu erzeugen...
Lotus script (db.Getprofiledocument("UserProfile", ses.Username) | NotesUiWorkspace.EditProfile(...))
Formelsprache (@command([EditProfile];...) | @SetProfileField(...))
Gruß
Andreas
-
Profile werden über das $name-Item gefunden.
Es geht deshalb mit folgendem hack:
1. ein neues Dokument mit doc.~$publicAccess="1" und doc.~$name = lcase("$profile_009myprofile_username") anlegen und speichern.
(die 009 entspricht len("myprofile") und muss je nach Profilname angepasst werden)
2. Dafür sorgen, dass keine Referenz mehr auf das gespeicherte Dokument existiert. z.B. mit "set doc=nothing" oder "delete doc"
3. set doc = db.getProfileDocument("myprofile", "username") ' man bekommt hier das gerade gespeicherte Dokument als Profil. (wenn man das $name-Item passend gesetzt hat)
4. UNBEDINGT das doc in mind. 1 Feld ändern (z.B. doc.ErstelltAm=now) und nochmals speichern (dadurch wird es in ein "echtes" Profil konvertiert)
Gruß
Roland
-
@Roland:
Wie kann man ein neues Dokument (Punkt 1.) anlegen und speichern wenn man nur Leserechte auf die Datenbank hat?
-
Man braucht natürlich das Recht "öffentliche Dokumente schreiben"
Ein Dokument ist öffentlich, wenn $publicaccess=1
Dann kann es es angelegt, bzw gespeichert werden.
Gruß Roland
-
Danke für den Tipp, funktioniert einwandfrei...
Gruß
Andreas