小编dr_*_*son的帖子

SSIS困境:多个站点上的相同SharePoint列表的动态OData连接

我在使用OData带有动态更改连接字符串的SharePoint列表源(在ODataConnection Manager中)时遇到问题.我的数据流任务内部的OData源无法验证从父包执行DFT时出现错误消息"无法从运行时连接管理器获取受管连接".

我做了一些广泛的谷歌搜索,并坚持不懈地梳理论坛; 但是,我还没有找到任何似乎能解决这个问题的方法.任何帮助找出解决方案将不胜感激!

以下是主要SSIS包的一般流程:

  1. 截断登台表
  2. 从SQL表中获取所有网站集URL及其GUID
  3. 为每个网站集执行包任务(foreach ADO循环容器)
    1. 从UserInformationList中提取数据(OData源)
    2. 为此网站集的GUID添加列
    3. 将数据加载到临时表中
  4. 等..

主要包装: SSIS主要包装控制流程

儿童包控制流程: SSIS UserInformationList包控制流程

EL UserInformationList DFT: SSIS UserInformationList数据流任务

包输出错误消息: 包含错误消息的SSIS包输出

在测试整个解决方案时,所有内容(任务,参数,变量等)都会正常运行,直到3.1(见上文),当OData源在验证期间失败时.更改源和连接管理器的唯一方面是连接管理器的URL和ConnectionString; 我在每个站点上访问的特定SharePoint列表永远不会更改.当解决方案进入子包时,在进入DFT之前,会正确设置Connection Manager的URL和ConnectionString.

通过执行包任务测试子包时,使用硬编码的参数值,子包无法验证.

仅测试子包时,没有错误,列表信息按预期存储在数据库中.但是,通过单独测试,ODataConnection Manager将使用包参数的默认值.

到目前为止我尝试过的事情:

  • 设为DelayValidationTrue
  • 将调试运行时从64位更改为32位(并再次返回)
  • 使用集合指定列表(在OData源代码编辑器中)
  • 使用资源路径指定列表(在OData源代码编辑器中)
  • 将子包作为Farm Admin运行
  • 将解决方案作为Farm Admin运行

其他信息:

  • SharePoint 2013
  • Visual Studio 2012的数据工具
  • Microsoft的ODataSQL Server 2012源代码

sharepoint ssis odata

9
推荐指数
1
解决办法
3296
查看次数

标签 统计

odata ×1

sharepoint ×1

ssis ×1