在脚本组件中定义包变量,并在 SSIS 中的另一个脚本组件中使用它们

Define package variables in Script component and use them in another script component in SSIS

提问人:Dexter 提问时间:8/18/2023 更新时间:8/18/2023 访问量:26

问:

我使用 SSIS 处理使用 xml 文件的项目。 所以我在 SSIS 数据流中。在第一个脚本组件中,我对 xml 执行操作(我获取第一行和最后一行并执行操作)。根据我收到的内容,我想更改一些包变量的值。为此,在我的第一个脚本组件的 PostExecute() 中,我执行以下操作

Variable.myVariable = myLocalVariable;
MessageBox.Show(Variable.myVariable);

(顺便说一句,我不知道这是否重要,我在 Input0_ProcessInput(Input0Buffer Buffer) 函数中向 OutputBuffer 添加了行)。

之后,我刚刚在第一个 C# 脚本组件中定义的变量,我想稍后在第二个脚本组件中使用。但是,当我尝试检索在第一个脚本组件的 PostExecute() 中初始化的包变量的值时,我只有创建它们时设置的变量的默认值。

我如何以及在哪里检索在第二个脚本组件的第一个 PostExecute() 中初始化的变量?其次,为什么当我在 PostExecute() 中放置 MessageBox.Show(“string”) 时,消息没有显示,而在脚本的其他地方却显示?

C# 变量 SSIS 脚本组件

评论

0赞 jdweng 8/18/2023
使用第一个脚本将值存储在数据库中,然后在第二个脚本中查询数据库中的值。
0赞 Nicolaesse 8/18/2023
您可以使用从传递变量值的父包执行的同一子包。mssqltips.com/sqlservertip/6089/......

答: 暂无答案