none
CSV Import und Attribut befüllen RRS feed

  • Frage

  • Hallo zusammen,

    ich habe eine CSV Datei mit Benutzerinformationen. Unter anderem auch eine Spalte extensionAttribute12, welches beim Import in das AD Benutzerobjekt angelegt/befüllt werden soll. Da ich ziemlich Neu in der Thematik PowerShell bin habe ich ein Script gesucht und bin auch fündig geworden, welches eigentlich meine Zwecke erfüllt.

    Import-Module ActiveDirectory
    $users = Import-Csv -Path "C:\Users\Public\ImportMtest.csv"
     
    foreach ($user in $users) {
    #Search in specified OU and add attribute
    Get-ADUser -Filter "SamAccountName -eq '$($user.samaccountname)'" -Properties * -SearchBase "OU=_User,OU=Mtest,DC=ad,DC=meineDomain,DC=de" |
    Set-ADUser -Add @{"extensionAttribute12"=$($user.extensionAttribute12)}
    }

    Wenn ich das Script durchlaufen lasse, zeigt er mir folgenden Fehler:

    Set-ADUser : Cannot bind parameter 'Add' to the target. Exception setting "Add": "Object reference not set to an instance of an object."
    At line:4 char:16
    + Set-ADUser -Add <<<<  @{"extensionAttribute12"=$($user.extensionAttribute12)}
        + CategoryInfo          : WriteError: (:) [Set-ADUser], ParameterBindingException
        + FullyQualifiedErrorId : ParameterBindingFailed,Microsoft.ActiveDirectory.Management.Commands.SetADUser

    Ich hoffe Ihr könnt mir ein wenig unter die Arme greifen.

    Danke & Gruß

    Andy

    Freitag, 24. November 2017 09:44

Antworten

  • So ich hab mir mal die CSV vorgenommen. Irgendwie standen Semikolon als Trennzeichen anstatt Komma.

    Zu guter letzt war am Ende der CSV noch ein CR und im Script habe ich die Pipe entfernt.

    Danach habe ich einen Testlauf mit 5 Pseude Benutzern gemacht und er hat alles so befüllt wie ich mir das vorstelle.

    @BeaYa

    Eine Vorbefüllung scheint hier nicht notwendig.

    Danke für die Hilfe

    Freitag, 24. November 2017 13:43

Alle Antworten

  • > S**et-ADUser : Cannot bind parameter 'Add' to the target. Exception setting "Add": "Object reference not set to an instance of an object."

    Gibt es den fraglichen User?

    Freitag, 24. November 2017 12:52
  • Kann es sein, dass im extensionAttribute12 bereits etwas steht?
    Meines wissens muss vorher ein "Set-Aduser Name -Clear extensionAttribute12" laufen, damit ein add funktioniert.

    Ein $ kann man sich wohl auch sparen.

    Freitag, 24. November 2017 12:54
  • So ich hab mir mal die CSV vorgenommen. Irgendwie standen Semikolon als Trennzeichen anstatt Komma.

    Zu guter letzt war am Ende der CSV noch ein CR und im Script habe ich die Pipe entfernt.

    Danach habe ich einen Testlauf mit 5 Pseude Benutzern gemacht und er hat alles so befüllt wie ich mir das vorstelle.

    @BeaYa

    Eine Vorbefüllung scheint hier nicht notwendig.

    Danke für die Hilfe

    Freitag, 24. November 2017 13:43