我的SSIS包中有一个foreach循环容器,它迭代了大约30个.mdb(Access 2000)文件。
这些文件可能非常大(最大1GB),所以我想要一些视觉反馈'显示当前正在迭代的文件,可以是文件名,也可以是当前x文件中的文件'。
有没有办法在执行包时动态显示这个? Pehaps动态更新框的名称?
我正在使用SQL Server / Visual Studio 2005
提前致谢。
答案 0 :(得分:3)
在foreach
循环的开头放置一个脚本任务,选择Visual Basic
,选择要监视的变量为ReadOnlyVariables,然后用此代码替换默认的Public Sub Main()
(编辑:每个请求还包含Enum ScriptResults
个代码):
Enum ScriptResults
Success = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Success
Failure = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure
End Enum
Public Sub Main()
Dim msg As String = ""
For Each Variable As Microsoft.SqlServer.Dts.Runtime.Variable In Dts.Variables
msg = msg & "--" & Variable.Name & "|| " & Variable.Value.ToString() & "||"
Next
Dts.Events.FireInformation(-1, "", msg, String.Empty, -1, False)
Dts.TaskResult = ScriptResults.Success
End Sub
进度选项卡将在每次迭代开始时记录变量。