Lotus Notes LDAP abfrage
Hi,
Wer kann mir sagen wie ich mit VB-Skript das LDAP von Lotus Notes abfragen kann ?
Bräuchte ein Beispiel in dem ich z.B. den Usernamen eingebe und dann als Ergebnis die Emailadresse zurück bekomme.
LDAP Abfragen im AD bekomme ich soweit hin - nur mit Notes komme ich nicht so klar.
Vielleicht kann mir jemand helfen ?!
Gruss
SKID
Wer kann mir sagen wie ich mit VB-Skript das LDAP von Lotus Notes abfragen kann ?
Bräuchte ein Beispiel in dem ich z.B. den Usernamen eingebe und dann als Ergebnis die Emailadresse zurück bekomme.
LDAP Abfragen im AD bekomme ich soweit hin - nur mit Notes komme ich nicht so klar.
Vielleicht kann mir jemand helfen ?!
Gruss
SKID
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 84845
Url: https://administrator.de/contentid/84845
Ausgedruckt am: 05.11.2024 um 19:11 Uhr
2 Kommentare
Neuester Kommentar
Hi Skid,
ich habe folgenden Code für Dich. Er ist zwar in/für VBA, aber ich denke du solltest damit klarkommen.
sqls = "SELECT NotesAddr.Nname, NotesAddr.Vname, NotesAddr.Shortname, NotesAddr.eMail, NotesAddr.Gruppe, NotesAddr.Tel " _
& "FROM NotesAddr;"
Set rstemp = CurrentDb.OpenRecordset(sqls)
adressbuch = "names.nsf"
'Das Adressbuch PEOPLE auslesen
ansicht = "People"
Server = "<Dein Servername>" 'z.B.: mail01/xxxx/xxxx
i = 0
Set objNotes = GetObject("", "Notes.NotesSession")
If objNotes Is Nothing Then
Set objNotes = CreateObject("Notes.NotesSession")
End If
Set LNdb = objNotes.GetDatabase(Server, adressbuch)
Set LNview = LNdb.GetView(ansicht)
Call LNview.Refresh
Set LNdoc = LNview.GetFirstDocument
ReDim lnarray(100, 50)
On Error Resume Next
Do While Not LNdoc Is Nothing
Set item = LNdoc.GetFirstItem("lastname")
Set item1 = LNdoc.GetFirstItem("firstname")
Set item2 = LNdoc.GetFirstItem("shortname")
Set item3 = LNdoc.GetFirstItem("InternetAddress")
Set item4 = LNdoc.GetFirstItem("OfficePhoneNumber")
array1 = item.Values
array2 = item1.Values
array3 = item2.Values
array4 = item3.Values
array5 = item4.Values
rstemp.AddNew
rstemp.Fields(0) = array1(0)
rstemp.Fields(1) = array2(0)
If UBound(array3) > 0 Then
rstemp.Fields(2) = array3(1)
Else
rstemp.Fields(2) = array3(0)
End If
rstemp.Fields(5) = array5(0)
rstemp.Fields(3) = array4(0)
rstemp.Update
Set LNdoc = LNview.GetNextDocument(LNdoc)
Loop
'####Verteilergruppen ermitteln
ansicht = "Groups"
Set LNdb = Nothing
Set LNview = Nothing
Set LNdoc = Nothing
i = 0
Set LNdb = objNotes.GetDatabase(Server, adressbuch)
Set LNview = LNdb.GetView(ansicht)
Call LNview.Refresh
Set LNdoc = LNview.GetFirstDocument
ReDim lnarray(100, 50)
On Error Resume Next
Do While Not LNdoc Is Nothing
Set item = LNdoc.GetFirstItem("Listname")
array1 = item.Values
rstemp.AddNew
rstemp.Fields(0) = array1(0)
rstemp.Fields(2) = array1(0)
rstemp.Fields(3) = array1(0)
rstemp.Fields(4) = True
rstemp.Update
Set LNdoc = LNview.GetNextDocument(LNdoc)
Loop
On Error GoTo 0
rstemp.Close
Set rstemp = Nothing
Set LNdoc = Nothing
Set LNview = Nothing
Set LNdb = Nothing
Set objNotes = Nothing
Gruß
Ralf
ich habe folgenden Code für Dich. Er ist zwar in/für VBA, aber ich denke du solltest damit klarkommen.
sqls = "SELECT NotesAddr.Nname, NotesAddr.Vname, NotesAddr.Shortname, NotesAddr.eMail, NotesAddr.Gruppe, NotesAddr.Tel " _
& "FROM NotesAddr;"
Set rstemp = CurrentDb.OpenRecordset(sqls)
adressbuch = "names.nsf"
'Das Adressbuch PEOPLE auslesen
ansicht = "People"
Server = "<Dein Servername>" 'z.B.: mail01/xxxx/xxxx
i = 0
Set objNotes = GetObject("", "Notes.NotesSession")
If objNotes Is Nothing Then
Set objNotes = CreateObject("Notes.NotesSession")
End If
Set LNdb = objNotes.GetDatabase(Server, adressbuch)
Set LNview = LNdb.GetView(ansicht)
Call LNview.Refresh
Set LNdoc = LNview.GetFirstDocument
ReDim lnarray(100, 50)
On Error Resume Next
Do While Not LNdoc Is Nothing
Set item = LNdoc.GetFirstItem("lastname")
Set item1 = LNdoc.GetFirstItem("firstname")
Set item2 = LNdoc.GetFirstItem("shortname")
Set item3 = LNdoc.GetFirstItem("InternetAddress")
Set item4 = LNdoc.GetFirstItem("OfficePhoneNumber")
array1 = item.Values
array2 = item1.Values
array3 = item2.Values
array4 = item3.Values
array5 = item4.Values
rstemp.AddNew
rstemp.Fields(0) = array1(0)
rstemp.Fields(1) = array2(0)
If UBound(array3) > 0 Then
rstemp.Fields(2) = array3(1)
Else
rstemp.Fields(2) = array3(0)
End If
rstemp.Fields(5) = array5(0)
rstemp.Fields(3) = array4(0)
rstemp.Update
Set LNdoc = LNview.GetNextDocument(LNdoc)
Loop
'####Verteilergruppen ermitteln
ansicht = "Groups"
Set LNdb = Nothing
Set LNview = Nothing
Set LNdoc = Nothing
i = 0
Set LNdb = objNotes.GetDatabase(Server, adressbuch)
Set LNview = LNdb.GetView(ansicht)
Call LNview.Refresh
Set LNdoc = LNview.GetFirstDocument
ReDim lnarray(100, 50)
On Error Resume Next
Do While Not LNdoc Is Nothing
Set item = LNdoc.GetFirstItem("Listname")
array1 = item.Values
rstemp.AddNew
rstemp.Fields(0) = array1(0)
rstemp.Fields(2) = array1(0)
rstemp.Fields(3) = array1(0)
rstemp.Fields(4) = True
rstemp.Update
Set LNdoc = LNview.GetNextDocument(LNdoc)
Loop
On Error GoTo 0
rstemp.Close
Set rstemp = Nothing
Set LNdoc = Nothing
Set LNview = Nothing
Set LNdb = Nothing
Set objNotes = Nothing
Gruß
Ralf