Я создаю отчет из AD пользователей с указанными датами истечения срока действия контракта. До сих пор мне удалось придумать это, которое выводит в файл CSV с пользовательскими заголовками и сокращенной датой.
Get-QADUser -SizeLimit 0 -IncludedProperties AccountExpires,Domain,Name -DontUseDefaultIncludedProperties | Where { $_.Title -ne "Resource" } | Select @{Label="Domain";Expression={(($_.Domain).Name)}},@{Label="Employee Name";Expression={($_.Name)}},@{Label="Contract Expiry Date";Expression={(($_.AccountExpires).ToShortDateString())}},title,department,Office | Export-Csv C:\ExportForHR.csv -NoTypeInformation
Что я хочу сделать, так это поместить пользовательское значение в столбец «Дата истечения срока действия контракта», если они не имеют значения.
т.е. если у меня нет контракта, значение по умолчанию равно null, поэтому в электронной таблице ничего не отображается. Но что, если я хочу вместо этого указать в поле «Без истечения срока действия контракта» или «Полный рабочий день»?
Не удалось найти ничего подходящего с помощью команды выше. Вероятно, я мог бы написать полный сценарий powershell для вывода в файл CSV, не используя такие вещи, как Select и export-csv, но я бы не хотел этого, если мне действительно не нужно.