User per VBScript aus dem AD in eine .csv exportieren für MAHARA-Import


sehr verwirrender ArtikelNaja, ganz OKbrauchbar für Checker...guter Artikelsehr guter Artikel - Danke

Der Massenimport via .csv von Usern in MAHARA ist (vor allem, wenn man auf das deutsche Language-Pack umgestellt hat) voll der Pein und Trauer…

Anbei ein Script, dass ausgewählte Schüler anhand ihrer Mitgliedschaft zu einer OU in einer CommandShell ausgibt, die man dann nur noch kopieren muss in eine .csv und importieren…

Speicher als “maharaExport.vbs” und in einer Commandshell mit
cscript maharaExport.vbs
ausführen lassen…

'On Error Resume Next
Const ADS_SCOPE_SUBTREE = 2
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand =   CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE 

'### hier die gewünschte OU auswählen ######
course = "3A,3B,3C,3D,3E"

courseArr = split(course,",")

'Wscript.Echo "Benutzername;Passwort;E-Mail;Vorname;Nachname;Studenten-ID"
Wscript.Echo "username,password,email,firstname,lastname,studentid"
UserCounter = 20170001

for i = 0 to UBOUND(courseArr)
	objCommand.CommandText = "SELECT name, distinguishedName, sAmAccountname, mail, givenName, SN FROM 'LDAP://OU=" & courseArr(i) & ",OU=Schueler,OU=Benutzer,DC=hak-neusiedl,DC=local' WHERE objectCategory='user'"

	Set objRecordSet = objCommand.Execute

	objRecordSet.MoveFirst

	Do Until objRecordSet.EOF

		Wscript.Echo  chr(34) & objRecordSet.Fields("sAmAccountname").Value & chr(34) & "," & chr(34) & "ASDFASDF" & chr(34) & "," & chr(34) & objRecordSet.Fields("mail").Value & chr(34) & "," & chr(34) & objRecordSet.Fields("givenName").Value & chr(34) & "," & chr(34) & objRecordSet.Fields("SN").Value & chr(34) & "," & chr(34) & UserCounter & chr(34) '& "," & courseArr(i)

		objRecordSet.MoveNext
		UserCounter = UserCounter+1
	Loop

next

This entry was posted in Active Directory, Scripts, VBScript. Bookmark the permalink.

Hinterlasse eine Antwort