几乎有两个城市的故事......我有17,000行数据作为2列中的一对字符串进入。每行总有5个项目编号和5个项目单位计数(单位计数总是4个字符)。他们必须匹配单位和项目或它是无效的。我要做的是将字符串“取消”到单独的行 - 项目编号和项目单位
所以这是一行数据和两列
的示例我编写了一个C#windows app测试工具,将数据拆分为单独的行,并且工作正常,花花公子。所以它基本上将数据转换为85,000(5乘17,000)行,并在网格中显示给我,这是我所期望的(ID,项目编号和项目单位)。
在我的SSIS应用程序中,我添加了一个脚本任务来处理相同的数据,并且基本上使用了我的测试工具使用的相同代码。当我运行我的任务时,我可以看到它加载17,000行,但它只在输出上生成15,000 +/-所以显然有些不对。
我在想的是我没有正确设置脚本任务,即使它使用了我的测试工具使用的相同代码,因为它因某种原因丢弃了记录。
如果我回到我的任务并给它一个特定的记录ID,它在第一次传递中没有得到,它将处理该ID并生成正确的输出。所以这告诉我记录是可以的,但由于某种原因它会错过它或在初始过程中丢弃它。也许与缓冲区有关?
答案 0 :(得分:1)
嗯 - 我明白了。
我们有一个序列任务,其中包含大量并行运行的数据流任务。我们依靠引擎来确定优先级并处理数据提取和正确加载。但是,这个特定的脚本任务不是由该序列容器中的引擎正确处理的。
线索是你可以在整个过程之外运行脚本任务,它运行正常。因此,我们将脚本任务从序列任务中拉出来,并在序列任务之后将其自行放置,现在它正确运行。