Question Doublons générés lors du traitement import AD

Plus d'informations
il y a 1 an 3 mois - il y a 1 an 3 mois #31287 par ericlm128
En complément, je t'avais proposé des modifications que tu n'a pas intégrés. Notamment pour éviter un doublon potentiel post formatage (remplacement des diacritiques)

www.powershell-scripting.com/index.php/f...rt-ad?start=54#31188

Tu ne peux pas te permettre de vérifier si il existe un doublon (l'incrémenter si besoin) puis le modifier, ce n'est pas logique
Dernière édition: il y a 1 an 3 mois par ericlm128.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 3 mois #31289 par witness57

En complément, je t'avais proposé des modifications que tu n'a pas intégrés. Notamment pour éviter un doublon potentiel post formatage (remplacement des diacritiques)

www.powershell-scripting.com/index.php/f...rt-ad?start=54#31188

Tu ne peux pas te permettre de vérifier si il existe un doublon (l'incrémenter si besoin) puis le modifier, ce n'est pas logique

 Ah oui, il faut que je vois ça.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 3 mois - il y a 1 an 3 mois #31297 par witness57
Pour mon problème des mauvais caractères qui s'affichaient dans l'export-csv, j'ai forcé l'encodage en UTF8 et ça s'affiche bien maintenant.
$NewUsers | Export-Csv -path "C:\Users\Administrateur\Desktop\export.csv" -Encoding "UTF8" -Append -NoTypeInformation -Delimiter ";"
Dernière édition: il y a 1 an 3 mois par witness57.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 3 mois - il y a 1 an 3 mois #31301 par witness57
Je suis en train de regarder ta première proposition avant de passer à l'autre qui devrait permettre de supprimer les doublons, afin de mieux comprendre.

Et dans ce bloc de code :
#1 $SAM = $givenname.Substring(0,1).ToLower() + $sn.ToLower()
 #2  
#3   if ($AD_SAM -contains $SAM)
 #4   {
 #5     for ($i = 1 ; $AD_SAM -contains ($SAM + $i) ; $i++)
 #6     {
 #7     }
 #8     $SAM = $SAM + $i
 #9   }
 #10  $AD_SAM += $SAM
 #11  
 #12 $SAM = $SAM.SubString(0, [Math]::Min(19, $SAM.length))
 #13 $SAM = Remove-DiacriticsAndSpaces -inputString $SAM


Voilà ce que je comprends:

Une condition if vérifie si le login nouvellement généré à la ligne 1 ($SAM) est déjà présent dans la source (AD_SAM).
Si non : ça passe directement à la ligne 12, à savoir, formatage du login créé à la ligne 1.
Si oui : Une boucle for vérifie si  "login1" existe, puis "login2"; etc.., la boucle est traitée tant que la condition est true. Dès qu'un login est trouvé, la condition est false, on passe à la ligne 10 ?

Je ne comprends pas bien le sens de :
$AD_SAM += $SAM
[/code]

 Est-ce que ça renvoie à 
$AD_SAM = $AD_SAM + $SAM
[/code] ?

Ensuite les lignes 12 et 13 traitent du format du login.

Merci merci
 
Dernière édition: il y a 1 an 3 mois par witness57.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 3 mois - il y a 1 an 3 mois #31302 par ericlm128
$AD_SAM += $SAM
est identique à
$AD_SAM = $AD_SAM + $SAM
Dernière édition: il y a 1 an 3 mois par ericlm128.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 1 an 3 mois - il y a 1 an 3 mois #31303 par ericlm128
Une condition if vérifie si le login nouvellement généré à la ligne 1 ($SAM) est déjà présent dans la source (AD_SAM).
Si non : ça passe directement à la ligne 12, à savoir, formatage du login créé à la ligne 1.
Si oui : Une boucle for vérifie si  "login1" existe, puis "login2"; etc.., la boucle est traitée tant que la condition est true. Dès qu'un login ($SAM + $i) n'est pas trouvé, la condition est false, on passe à la ligne 8
Ligne 8 on stock dans $SAM le compteur avec son incrémentation (qui n'existe pas dans l'AD)
Ligne 10 on ajoute à la source AD le nouvelle utilisateur qui va être créée

Ligne 12, 13 remise en forme (de nouveau) du compte utilisateur


 
Dernière édition: il y a 1 an 3 mois par ericlm128.
Les utilisateur(s) suivant ont remercié: witness57

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.075 secondes
Propulsé par Kunena