如何使用 SSIS 读取 Excel 电子表格中的变量值

How to read variable's value in Excel spreadsheet using SSIS

没有我有一个 SSIS 包,每 4 小时传输和归档文件一次。在该包内,我执行了 SQL 执行存储过程的任务,我在其中调用存档 table 中的一列。我的存储过程有效,每次我 运行 带有断点的项目时,我都可以看到一个变量正在获取列的值。 我需要做的下一步是将该值传输到 Excel 电子表格中。为此,我创建了具有 Excel 源、派生列和 Excel 目标的数据流任务。 Excel 源文件只是一个没有数据的临时文件,所以在派生列任务中,我将 'F1' 列替换为用户变量,在目标文件中,我将该值映射到正确的列. 每次我 运行 我得到一个成功的包 运行,但我的目标文件是空的。我不知道我做错了什么,我尝试了所有可能的选择,但它不起作用。

[

如你所说

Excel Source File is just a temporary file with no data in it.

数据流任务用于将数据从源传输到目标。如果源为空,则不会传输任何行。

您应该将 Excel 源列和派生列替换为脚本组件,该脚本组件根据存储所需值的变量生成行。

这是@Hadi 回答的代码:

使用脚本组件源。

  1. 将您的变量添加到读取的变量中
  2. 将您的输出列名称添加到 Output0 输出。
  3. 添加以下代码来创建要处理的数据

    Output0Buffer.AddRow();
    Output0Buffer.[Your Column Name] = Variables.[Your Variable name];
    

大功告成!!!