Blue Prism Collection操作:如何将循环内当前行添加到另一Collection
Blue Prism 集合行复制的三种实现方案
方案1:直接使用集合筛选动作(最推荐,无需循环)
Blue Prism 官方自带的 Utility - Collection Manipulation VBO 提供了Filter Collection动作,完全可以替代你需要的循环筛选逻辑,操作步骤如下:
- 输入参数填写你的原Collection、筛选条件填写
[Flag] = True - 输出参数直接绑定你的目标Collection,运行后目标Collection会自动包含所有符合条件的行,不需要写任何循环逻辑,性能比手动遍历高很多。
方案2:循环中使用内置当前行索引(无需手动维护计数器)
如果你确实需要在遍历过程中执行其他额外逻辑,不需要自己创建计数器,Blue Prism的Loop阶段遍历Collection时会自动维护内置的当前行索引:
- 当你配置Loop阶段的遍历对象为你的原Collection后,直接用
[你的原Collection名称.Current Row]就可以获取当前遍历到的行号 - 直接把这个内置行号传给
Copy Row动作的行号参数即可,全程不需要手动维护计数变量,符合你不需要手动计数的需求。
方案3:代码阶段实现(和C#逻辑完全一致)
如果你熟悉C#语法,可以直接添加代码阶段实现,和你给出的示例逻辑几乎没有差别:
- 代码阶段的输入参数添加原Collection,输出参数添加目标Collection,语言选择C#
- 直接写入以下代码即可:
foreach (DataRow item in collection1.Rows) { if ((bool)item["Flag"] == true) { collection2.ImportRow(item); } }
注意:需要提前为目标Collection配置和原Collection完全一致的字段结构,否则会报错。
内容的提问来源于stack exchange,提问作者user183872
相关产品推荐
相关产品推荐

