Я создаю скрипт, который подключается к SQL, вытаскивает набор данных и форматирует его. Затем мне нужно отправлять электронные письма менеджерам для каждой команды вместе с таблицей Html, и я не думаю, что лучший способ продолжить вторую половину.Массовое письмо из таблицы данных Powershell
данных отформатирован следующим образом: Team | Item | Manager email
Каждый предмет уникален, поэтому некоторые из них могут оказаться рядом с той же командой и тот же адрес электронной почты.
Будет что-то вроде следующего работоспособной:
For each $_.ManagerEmail in $dataset (build html output containing each unique item)
Они, очевидно, должны получать только один адрес электронной почты, а не по одному для каждого элемента.
Любые мысли или указатели, пожалуйста?
EDIT: Благодарим вас за участие. Я попытался реализовать предложение Mathias, но сценарий заканчивается без вывода или ошибок. Я знаю, что часть SQL работает нормально, поэтому проблема здесь.
foreach($ManagerSet in $Dataset.Rows |Group-Object "Manager Email")
{
$Items = $ManagerSet.Group |Select-Object Item
$Outlook = New-Object -ComObject Outlook.Application
$Mail = $Outlook.CreateItem(0)
$Mail.To = $ManagerSet.ManEmails
$Mail.Subject = "Test" $Mail.Body = 'Testing. Failures include' + $managerset.itemname + $managerset.Info1 $Mail.Send()
}
Любые указатели на то, что я пропустил?
вам, вероятно, потребуется пройти через все предметы и отсортировать их, если вы хотите отправить одно электронное письмо для нескольких элементов, я не вижу другого способа достичь этого – 4c74356b41