我有一个Microsoft Dynamics CRM实施的动态登录名和密码列表。我正在创建一个SSIS作业,需要从这些组织中检索多个实体。目前,Kingswaysoft有一个用于Microsoft Dynamics CRM的SSIS集成工具包,用于检索数据。不幸的是,使用Kingswaysoft会导致至少60个 Dynamics CRM Source 组件,120个 Sort 组件和60个 Merge Joins 。这不仅需要永远创造,而且维护起来也很困难。我更愿意:
答案 0 :(得分:1)
要创建一个(ForEach)循环容器,迭代您打算用作参数的一组数据,请将以下项添加到" master"包:
将数据类型Object
的包变量添加到您的包中 - 它会
包含带有参数的Recordset。
添加数据流以读取您的平面文件数据源
(可行
您可以在数据流中读取的任何数据源都相同
将Recordset目标添加到数据流,分配包
您在步骤1中创建的变量VariableName
自定义属性
并选择输入列(顶部复选框选择所有列)
切换回控制流程并添加Foreach循环容器
添加尽可能多的Package变量,以便参数化您的
工作包程序连接,任务等,并将其范围设置为
Foreach循环容器通过在变量列表中选择它们
点击Move Variable
图标(带箭头的框)
打开Foreach属性并切换到Collection
标签
将枚举器更改为Foreach ADO Enumerator
选择
您的Package变量为ADO object source variable
枚举模式,默认为Rows in first table
切换到变量映射标签并指定列索引 将Recordset列添加到您创建的所需目标变量中 在第5步。
将执行包任务添加到Foreach循环容器和 在包标签上连接您的工作包。
在参数绑定标签上,指定循环范围的主控 包含从步骤5到相应Child包的变量 参数。