【发布时间】:2020-08-14 22:00:44
【问题描述】:
我有一个从我的查询返回内容的 ADO.NET 数据源。这是一个单列、多行的结果集,我需要遍历这个结果集并通过 JavaScript 单独处理每一行。为此,我使用了一个 foreach 循环容器。
为了测试这一点,我在我的 foreach 循环容器中创建了一个 JavaScript 函数来输出一个带有结果集内容的警报框。
我有以下简单的测试代码:
task.run = function () {
var myObj = task.variables["User::MyObject"].value;
alert(myObj);
return ScriptResults.Success;
};
我知道循环运行良好,因为我收到的警报数也等于我期望的行数。但是,我的 JavaScript 函数似乎没有从数据库中读取实际的返回值。警报只是作为一个空字符串弹出。我不确定我在 JavaScript 中调用对象的方式是否正确,但如果有人能指出正确的方向,让我知道如何让实际的行值出现在警报框中,我将不胜感激。
谢谢!
编辑:我正在为 ForEach 循环容器使用 Foreach ADO 枚举器。
【问题讨论】:
-
“User::MyObject”是 Object 数据类型吗?您使用的是哪个枚举器?
-
是的,它是对象数据类型。我正在使用 Foreach ADO 枚举器。
-
您是否在 Foreach 循环编辑器的“变量映射”下为源数据集中的每一列指定了变量?您的代码是否不需要引用这些变量之一,而不是“User::MyObject”,我认为它是您的 ADO 对象源变量?
-
天哪!我没有!这解决了它。我什至没有意识到我没有具体说明。感谢您指出!
标签: javascript foreach ssis resultset foreach-loop-container