我为Salesforce中的Dataloader构建了一个脚本:
**# The Function for the Check Error File**
function CheckErrorFile {
Param ([string]$perrorfilepath)
$csvlines = (Get-Content $perrorfilepath | Measure-Object -line).Lines
# header is always 1 row so we look for > 1 rows
if ($csvlines -gt 1)
{
$errorCount = $csvLines - 1
$errorMessage = [string]::Format("** errors ** {0} failed rows in {1}", $errorCount, $perrorfilepath)
# this will print red error message but not stop execution
write-error $errorMessage
}
}
**# set up locations/variables for data loader**
$dataloader = "C:\Program Files (x86)\salesforce.com\Data Loader\bin\process.bat"
$dlconfig = "U:\Projekte\Salesforce\Dataloader-Test-Infor-Files\Example-Migration-SF-Test\DataLoaderConfig"
set-location "C:\Program Files (x86)\salesforce.com\Data Loader\bin"
$dlLogFolder = "U:\Projekte\Salesforce\Dataloader-Test-Infor-Files\Example-Migration-SF-Test\Logs\"
**# execute the data loader**
& $dataloader $dlconfig testsf-delete
**# check for errors in the error.csv file**
CheckErrorFile ("{0}error_testsf.csv" -f $dlLogFolder)
到目前为止它的思维非常好
但我想要的是从CheckErrorFile Command返回的错误代码应发送到电子邮件地址。
所以我考虑了2个注意事项:
如果错误发送到邮件
将错误输出打包到变量中并发送到邮件地址
但我不太擅长Powershell,我知道如何将其整合到我的剧本中。
当事件日志发生变化时,我发现了一个带有发送触发器的站点,但我不确定我是否可以将其用于我的目的以及如何集成它:
Powershell Email when Eventlog is Changed
愿有人帮忙
thnks