Как получить количество прямых и косвенных отчетов менеджера из AD в Powershell - PullRequest
1 голос
/ 15 февраля 2020

Может ли кто-нибудь помочь мне с помощью сценария powershell, чтобы найти ЧИСЛО прямых и косвенных отчетов для менеджера из Active Directory. Мне просто нужно количество людей (подробности не требуются)

Под этим менеджером в этой сфере бизнеса работают сотни человек. Поэтому невозможно подсчитать их вручную.

Спасибо

1 Ответ

1 голос
/ 15 февраля 2020

Вам нужно будет использовать рекурсивный метод, который ищет всех пользователей, у которых в качестве менеджера выбран человек. Они дадут вам прямые отчеты ... просто и быстро.

Проблема возникает, когда вы также хотите получить косвенные отчеты ... которая потребует от вас проверять прямые отчеты для каждого пользователя, от которого вы получаете Прямой отчет нужного человека и т. д.

Следующий метод может помочь вам достичь этого, но имейте в виду, что это займет все больше и больше времени, в зависимости от количества менеджеров в этом дереве.

function Get-Reports ([string] $manager) {
  $users = Get-ADUser -Filter "manager -eq '$manager'"
  if ($users -ne $null){
    $users
  }
  $users | % { Get-Reports $_ }
}

# Usage
(Get-Reports <userID>).Count
...