我有一个调用 Powershell 并检查文件夹是否为空的“执行进程任务”。如果返回 $false,我希望 SSIS 作业失败。
这是代码
param ([string] $FolderLocation)
$FolderLocation = 'C:\Temp\IsFolderEmpty\'
if( (Get-ChildItem $FolderLocation | Measure-Object).Count -eq 0)
{
#Folder Empty
return $true
} Else {
return $false
}
每当我在 SSIS 中运行它时,它总是运行,无论是否$true
返回$false
。我试过创建一个新变量并在其中使用它,StandardOutputVariable
但没有任何运气。
尝试使用脚本任务来检查设置为
StandardOutputVariable
执行进程任务的 SSIS 变量的值。如果此值为 false,则该Dts.Events.FireError
方法会引发一个错误事件,该事件可用于使包失败。下面的代码是使用 C# 的示例,其中当变量为false
. 需要在ReadOnlyVariables
脚本任务的字段中设置 SSIS 变量以允许访问它。