我有里程报销单的无纸系统。我们在提交多个工作表的过程中遇到了一些问题,并帮助主管检查我是否创建了一个执行SQL查询的PowerShell脚本,并创建了一个包含所有主管的文本文件。然后,它读取该列表并运行另一个SQL查询以获取其先前提交的里程表的所有员工姓名和日期范围,将其保存到CSV文件并通过电子邮件发送给主管,以便他们在批准下一组时检查它片材。
当我从命令行运行脚本时,它运行良好。我想安排它每周运行一次。然而,当我测试它时,它会挂起。它创建了第一个主管文件。做了一些测试后,(我注释掉了发送邮件的部分)它挂起发送第一封电子邮件。我计划使用与创建凭证文件相同的凭据运行任务。有什么建议吗?
以下是我发送邮件的内容
Param($User,$File)
$User="System_Mangler@familyenrichment.cc"
$password = Get-Content "SystemMangler.txt" | ConvertTo-SecureString
$credential = New-Object System.Management.Automation.PsCredential($user,$password)
这是脚本的开头。 这是在发送邮件的循环中。出于测试目的,我将它发送给我而不是用户。
$From = "System_Mangler@familyenrichment.cc"
$To = "ebosworth@familyenrichment.cc"
$Attachment = "c:\backup\tools\testing.csv"
$Subject = "Mileage Date Ranges"
$Body = "Here is a list of your employees and dates of previously submitted mileage sheets. When approving mileage sheets, Please check to make sure this is not a duplicate. `r`n Thank you `r`n The System Mangler"
$SMTPServer = "smtp.gmail.com"
$SMTPPort = "587"
Send-MailMessage -From $From -To $To -Subject $Subject `
-Body $Body -SmtpServer $SMTPServer -UseSsl -Port $SMTPPort `
-Credential $Credential -Attachments $Attachment