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

  • ericlm128
  • Visiteur
  • Visiteur
il y a 4 ans 10 mois - il y a 4 ans 10 mois #31287 par ericlm128
Réponse de ericlm128 sur le sujet Doublons générés lors du traitement import AD
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 4 ans 10 mois par ericlm128.

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

  • witness57
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 4 ans 10 mois #31289 par witness57
Réponse de witness57 sur le sujet Doublons générés lors du traitement import AD

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.

  • witness57
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 4 ans 10 mois - il y a 4 ans 10 mois #31297 par witness57
Réponse de witness57 sur le sujet Doublons générés lors du traitement import AD
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 4 ans 10 mois par witness57.

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

  • witness57
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 4 ans 10 mois - il y a 4 ans 10 mois #31301 par witness57
Réponse de witness57 sur le sujet Doublons générés lors du traitement import AD
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 4 ans 10 mois par witness57.

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

  • ericlm128
  • Visiteur
  • Visiteur
il y a 4 ans 10 mois - il y a 4 ans 10 mois #31302 par ericlm128
Réponse de ericlm128 sur le sujet Doublons générés lors du traitement import AD
$AD_SAM += $SAM
est identique à
$AD_SAM = $AD_SAM + $SAM
Dernière édition: il y a 4 ans 10 mois par ericlm128.

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

  • ericlm128
  • Visiteur
  • Visiteur
il y a 4 ans 10 mois - il y a 4 ans 10 mois #31303 par ericlm128
Réponse de ericlm128 sur le sujet Doublons générés lors du traitement import AD
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 4 ans 10 mois par ericlm128.

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

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