Run a Console Application and Mail Output Report with PowerShell
We had a console application GetStorageReport which runs and generates detailed storage reports based on some SharePoint APIs. Got the requirement to run the tool periodically and mail the output report of the application. Scheduled a PowerShell script to execute the application and mail the report to Administration team.
Here is my PowerShell code:
Here is my PowerShell code:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue #Trigger the executable file Start-Process "D:\Scripts\StorageReport\GetStorageReport.exe" # Wait until the report is generated while(-not (Test-Path "D:\Scripts\StorageReport\StorageReport.csv")) { Start-Sleep 30 #sleep for 30 seconds } $ReportDate=get-date -Format "MMM-dd-yyyy" #Rename the Report Rename-Item -Path "D:\Scripts\StorageReport\StorageReport.csv" -NewName "D:\Scripts\StorageReport\StorageReport_$ReportDate.csv" #Send the Mail $MailMessageParameters = @{ SmtpServer = "smtp.company.org" Subject = "SharePoint Storage Report - $ReportDate" Body = "Please find attached Database storage report as on $ReportDate" From = "[email protected]" To = "[email protected]" Attachments ="D:\Scripts\StorageReport\StorageReport_$ReportDate.csv" } Send-MailMessage @MailMessageParameters #Remove the Report if (Test-Path "D:\Scripts\StorageReport\StorageReport_$ReportDate.csv") { Remove-Item "D:\Scripts\StorageReport\StorageReport_$ReportDate.csv" }
No comments:
Please Login and comment to get your questions answered!