Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: adminnaddel am 11.04.05 - 13:09:09

Titel: Groups im names.nsf auflösen ...
Beitrag von: adminnaddel am 11.04.05 - 13:09:09
Hallo liebe Gemeinde,

ich habe mehrere gruppen im lokalen names.nsf welche im Field "Member" unzählige Ansprechpartner (Mail-Adressen) abgelegt sind!

Ich muss nun für jeden Member innerhalb der Gruppe ein doc erstellen um es unter Contacts anzeigen zu lassen!  ??? ??? ???

Jemand ne schnelle Lösung parat?

lg
Andy
Titel: Re: Groups im names.nsf auflösen ...
Beitrag von: Don Pasquale am 11.04.05 - 13:11:36
        Dim ws As New NotesUiWorkspace
   Dim session As NotesSession
   Dim db As NotesDatabase
   Dim doc As NotesDocument
   Dim DocA As NotesDocument
   Dim view As NotesView
   Dim acl As NotesACL
   Dim Entry As NotesACLEntry
   Dim GRUPPE As String
   Dim ok As Boolean
   
   'GRUPPE = getParam("GRUPPE")
   
   Set session = New NotesSession
   Set db  = session.CurrentDatabase
   Set acl = db.ACL
   Set Entry = acl.GetFirstEntry
   
   While Not Entry Is Nothing
      ok = logge (10, "ACL auslesen:" & Entry.Name)
      If entry.IsGroup Then
         ok = logge(10,  "Gruppe:" & entry.Name )
      '   If entry.Name = GRUPPE Then
            ok = logge(10, GRUPPE & " gleich" & entry.Name )
            Gosub GRUPPEAUSLESEN            
      '   Else
            ok = logge(10, GRUPPE & " nicht gleich" & entry.Name )
      '   End If
      Else
         ok = logge (10, entry.Name & " ist keine Gruppe" )
      End If   
      Set Entry = ACL.GetNextEntry( Entry )
   Wend
   
   
   Exit Function
   
   
      ' ******************************** '
   
GRUPPEAUSLESEN:
   
   ok =  logge ( 1 , "GRUPPE AUSLESEN")
   Dim memfield As Variant
   Dim nd_db As notesdatabase
   Dim g_doc As notesdocument
   Dim flag As Variant
   Dim server As String
   Dim ename As String
   Set db = session.currentdatabase
   server = db.server
   Set nd_db = New notesdatabase("","")
   flag = nd_db.open(server, "names.nsf")
   Set view = nd_db.getview("Groups")
   Set g_doc = view.getdocumentbykey(entry.name, True)
   'getMember = g_doc.getitemvalue("members")
   
   memfield = g_doc.getitemvalue("members")
   Forall X In memfield
      'ename = X
      'Messagebox (ename$)
      'Call eintragePerson(ename$)      
   End Forall
Return


Für das eintragePerson musst DU Dir was ausdenken
Ciao
Don Pasquale
Titel: Re: Groups im names.nsf auflösen ...
Beitrag von: koehlerbv am 11.04.05 - 23:58:55
Pascals Ansatz zeigt schon mal auf, wie sowas prinzipiell zu lösen ist. Anders geht das auch nicht.
Wenn es um Gruppenauflösung geht, muss man aber auf jeden Fall noch die rekursive Auflösung berücksichtigen - eine Gruppe kann ja wieder eine Gruppe enthalten (und diese wiederum eine und diese wiederum ...). Hier sollte man keinen Kompromiss eingehen.

Bernhard
Titel: Re: Groups im names.nsf auflösen ...
Beitrag von: elajen am 12.04.05 - 07:51:30
Hallo,

ic habe eine Routine zur rekursiven Gruppenauflösung auf meiner Web-Seite unter http://www.langner-e.de -> Notes & Domino -> Entwicklung -> Code Schnipsel.

Diese läuft nur unter Notes 6.

Gruß von Ekki