SSIS:在数据流中使用System :: TaskName [英] SSIS: Use System::TaskName inside the dataflow
问题描述
有关更详细的日志记录,我想检索[System :: TaskName]
For more detailed logging, I want to retrieve the [System::TaskName]
现在,当从失败的任务开始时,我们进入脚本任务",在那里我获取[System :: TaskName]并将其写入日志.从逻辑上讲,这将写入当前TaskName ='Script task'而不是失败的任务
Right now, when starting from the task that fails we go to 'script task', there I fetch [System::TaskName] and write that in the log. Logically this writes the current TaskName = 'Script task' instead of the failed task
问题是System :: TaskName仅在任务内部知道,逻辑上... 实际上,我想从数据流内部更新变量'User :: CurrentTaskName',从任务内部更新=.
Problem is the System::TaskName is only know inside the task, logical... In fact I want to update a variable 'User::CurrentTaskName' from inside the dataflow, = from inside the task.
如果我可以在数据流中使用脚本任务"组件,但我找不到它,这将是最简单的. 可能我需要解决方法.
This would be easiest if I could use a 'Script Task' component inside a dataflow but I can't find that. Probably I need a workaround.
希望你们大概理解我的意思...
Hope you guys understand approximately what I mean...
提前谢谢!
推荐答案
我能够通过在脚本组件内添加以下内容来访问TaskName.
I was able to access the TaskName by adding the following inside a Script Component.
Private Function ReadVariable(ByVal varName As String) As Object
Dim result As Object
Try
Dim vars As IDTSVariables100
Me.VariableDispenser.LockForRead(varName)
Me.VariableDispenser.GetVariables(vars)
Try
result = vars(varName).Value
Catch ex As Exception
Throw ex
Finally
vars.Unlock()
End Try
Catch ex As Exception
Throw ex
End Try
Return result
End Function
然后像这样访问变量
ReadVariable("System::TaskName")
这篇关于SSIS:在数据流中使用System :: TaskName的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!