Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

ActiveDirektory per LotusSript in eine Notes-DB einlesen

Frage Netzwerke Groupware

Mitglied: cvoigt

cvoigt (Level 1) - Jetzt verbinden

04.01.2007, aktualisiert 19.02.2007, 3986 Aufrufe, 3 Kommentare

Hallo Admins,

möchte in einer Notes-DB User-Daten (Gruppenzugehörigkeit) aus der ActiveDirektory auslesen. Wie geht dass?

Mit VB-Script bekomme ich es hin.
01.
'Kleines Beispielscript mit Bildschirmausgabe 
02.
'Wichtig mit cscript ausführen 
03.
Set ado = CreateObject("ADODB.Connection") 
04.
ado.Provider = "ADSDSOObject" 
05.
ado.Open 
06.
 
07.
 
08.
strBase   =  "<LDAP://dc=.....dc=DE>;" 
09.
 
10.
strFilter = "(&(objectclass=user)(objectcategory=person));" 
11.
strAttrs  = "name,sAMAccountName,sn,givenName,telephoneNumber,mail,FAG-UserDrives,FAG-UserPrinters,homeDrive,homeDirectory,profilePath;" 
12.
strScope  = "subtree" 
13.
 
14.
Set objectList = ado.Execute(strBase & strFilter & strAttrs & strScope) 
15.
 
16.
While Not objectList.EOF 
17.
  For Each Field in objectList.Fields 
18.
     If i=0 Then 
19.
	     strZeile = Field.Value 
20.
     Else 
21.
	     strZeile = strZeile & vbtab & Field.Value 
22.
     End If 
23.
     i = i+1 
24.
  Next 
25.
  WScript.Echo strZeile 
26.
  objectList.MoveNext 
27.
  strZeile = "" 
28.
  i = 0 
29.
Wend 
30.
WScript.Echo "Fertig ..." 
31.
 
32.
Wscript.sleep 20*1000
Aber ich weiß nicht, wie ich es von Notes aus tun kann.
Mit "OLE Classes" habe ich bisher nicht gearbeitet.

Wer kann mir hier einen Denkanstoß geben, wie ich vorgehen muß bzw. welche Klassen ich nutzen muß und wie ich nicht Notes-Klassen (OLE Classes) einbinde.

Vielen Dank.
Mitglied: AndreasHoster
29.01.2007 um 13:16 Uhr
Aber ich weiß nicht, wie ich es von Notes aus tun kann.
Genauso wie Du es im Posting drinstehen hast:
CreateObject arbeitet in Notes nämlich identisch wie CreateObject in VBS. (wscript.echo muß man aber noch anpassen, den Rest kannst Du aber einfach so in einen LotusScript Agenten übernehmen)

Das Einzige, worauf man aufpassen muß, wenn man server-basierte Agenten nimmt:
Der Account unter dem der Server läuft, muß die benötigten Rechte haben, z.B. lesend aufs AD zugreifen dürfen.
Und die verwendeten OLE Klassen müssen auf dem Server vorhanden sein.
Bitte warten ..
Mitglied: cvoigt
19.02.2007 um 11:40 Uhr
Funktioniert irgendwie nicht:

ich habe folgendes Script in einem Notes-Agenten stehen:
01.
Sub Initialize 
02.
	Set objADO = CreateObject("ADODB.Connection") 
03.
	objADO.Provider = "ADSDSOObject" 
04.
	objADO.Open 
05.
	 
06.
	strBase   =  "<LDAP://dc=<i>[Domäne]</i>,dc=DE>;"	 
07.
	strFilter = "(&(objectclass=user)(objectcategory=person));" 
08.
	strAttrs  = "name,sAMAccountName,sn,givenName,telephoneNumber,mail,FAG-UserDrives,FAG-UserPrinters,homeDrive,homeDirectory,profilePath;" 
09.
	strScope  = "subtree" 
10.
	 
11.
	Set objectList = objADO.Execute(strBase & strFilter & strAttrs & strScope) 
12.
	 
13.
	While Not objectList.EOF 
14.
		Forall Field In objectList.Fields 
15.
			If i=0 Then 
16.
				strZeile = Field.Value 
17.
			Else 
18.
				strZeile = strZeile & Chr(10) & Field.Value 
19.
			End If 
20.
			i = i+1 
21.
		End Forall 
22.
		Print strZeile 
23.
		objectList.MoveNext 
24.
		strZeile = "" 
25.
		i = 0 
26.
	Wend 
27.
	Print "Fertig ..."	 
28.
End Sub
Mit Print müssten mir eigentlich die Werte in der Statuszeile angezeigt werden. Aber leider beendet das Script ohne Fehlermeldung und gibt keine Daten aus. Statt des Print sollen die Daten zukünftig in Dokumente geschrieben werden, aber solange noch nicht mal mit Print die Daten ankommen, brauche ich mich darum gar nicht erst kümmern.

Was mache ich falsch?

Danke für die Hilfe.
Bitte warten ..
Mitglied: AndreasHoster
19.02.2007 um 13:06 Uhr
Ich habs mal im LotusScript-Debugger laufen lassen, das Problem ist die ForAll Schleife.
objectList.Fields wird nicht als Collection erkannt, sondern nur als Standardobjekt, deswegen geht es erst gar nicht in die ForAll Schleife.

Aber statt ForAll über alle Felder kann man die Felder einzeln abfragen:
strZeile = objectList.Fields("name") für den Namen, strZeile = objectList.Fields("sAMAccountName") etc.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Multimedia & Zubehör
Esker Fax Services für Lotus Notes

Frage von Hendrik2586 zum Thema Multimedia & Zubehör ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...