Autor Thema: Groups im names.nsf auflösen ...  (Gelesen 3335 mal)

Offline adminnaddel

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 819
  • Geschlecht: Männlich
  • What a wonderful girl, so beautiful und se....;-)
Groups im names.nsf auflösen ...
« 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

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re: Groups im names.nsf auflösen ...
« Antwort #1 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

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Groups im names.nsf auflösen ...
« Antwort #2 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

elajen

  • Gast
Re: Groups im names.nsf auflösen ...
« Antwort #3 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

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz