Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: MKnost am 31.01.06 - 11:43:50

Titel: Daten aus Profil-Dok in Ansicht übernehmen?
Beitrag von: MKnost am 31.01.06 - 11:43:50
 :-(
Hallöle,

Wie kann ich aus einem Profildokument Daten auslesen und in eine Ansicht packen? Ich bräuchte das für eine Mitarbeiterliste, aber ich komm an die Daten weder per Feldzuweisung noch über @GetProfileField dran. Muss ich da eine andere Funktion nutzen oder geht das aus Profildokumenten gar nicht?

Grüssle Micha
Titel: Re: Daten aus Profil-Dok in Ansicht übernehmen?
Beitrag von: koehlerbv am 31.01.06 - 11:49:14
Daten aus Profildokumenten können prinzipiell nicht in Ansichten dargestellt werden.
Titel: Re: Daten aus Profil-Dok in Ansicht übernehmen?
Beitrag von: Axel am 31.01.06 - 11:54:10
Daten aus Profildokumenten können prinzipiell nicht in Ansichten dargestellt werden.


Um solchen und anderen "Gemeinheiten" der Profiledokumente, wie z.B. dem Caching und Problemen bei der Replikation aus dem Wege zu gehen habe ich mir vor einiger Zeit eine eigene Klasse zu Verwaltung von Userprofilen geschrieben. Diese habe ich bereits mehrfach mit Erfolg, auch in größeren DBs eingesetzt.

Schau mal hier: Klasse für UserProfile (http://www.free.dominoserver.de/computer/noteslibrary.nsf/d2d59a3d7fc73a2bc1256a6900638352/74e4b61d04ca824dc1256db20041582a!OpenDocument)


Axel
Titel: Re: Daten aus Profil-Dok in Ansicht übernehmen?
Beitrag von: MKnost am 31.01.06 - 13:13:27
Zitat
Daten aus Profildokumenten können prinzipiell nicht in Ansichten dargestellt werden.

Hab ich mir schon fast gedacht , aber die Klasse von Axel sieht gut aus, ich werd das mal probieren...

Danke.... :)

Sodele, ich hab das ganze mal versucht zu lösen, allerdings auf eine ziemlich chaotische Weise glaube ich....

Ich hab für jeden Nutzer Profil-Doks, die nur er editieren kann. Ich brauch nun aber eine Ansicht, in der einige der Daten für nur eine Rolle sichtbar sind. Das hab ich dann so gelöst:

Im Postsave der Maske der Profildokumente steht folgendes Script, welches mir beim Speichern eines Profildocumentes ein neues Dokument basierend auf einer bestimmten Maske mit den Daten des Profildokumentes erstellt.

Code
SubPostSave()
Dim session As New NotesSession
Dim db As NotesDataBase
Dim doc as NotesDocument
Dim success As Variant

Set db = session.CurrentDataBase
Set doc = New NotesDocument (db)
doc.Form = ("Personal") 'Die Maske für die Personaldaten
success = doc.ComputeWithForm(False, False)
If success then
Call doc.Save(true, true)
End If
End Sub
Klappt auch wunderbar, nur wenn ein Nutzer jetzt sein ProfilDok editiert, wie kann ich dann das "extrahierte" Dokument identifizieren und auch entsprechend ändern?

Wär schön, wenn mir jemand da ein bissel auf die Sprünge helfen könnte...

Grüsse Micha