Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
预览SSIS包中具有OData源的SharePoint列表时出错_Sharepoint_Ssis_Odata_Sql Server Data Tools_Ssis 2017 - Fatal编程技术网

预览SSIS包中具有OData源的SharePoint列表时出错

预览SSIS包中具有OData源的SharePoint列表时出错,sharepoint,ssis,odata,sql-server-data-tools,ssis-2017,Sharepoint,Ssis,Odata,Sql Server Data Tools,Ssis 2017,在SSIS包中,我试图从SharePoint列表中提取数据。 我正在使用OData源连接管理器。我将维修文件放在正确的位置。我正在使用一种身份验证类型:Windows身份验证。 当我点击“测试连接”按钮时,我得到“测试连接成功” 在OData源代码编辑器中,我选择刚刚配置的连接管理器。我选择“收藏”选项。然后从集合中选择列表。 当我点击“预览”按钮时,会弹出以下错误: 从有效负载中读取错误。有关详细信息,请参阅“Error”属性。(Microsoft.Data.OData) 以下是扩展错误: =

在SSIS包中,我试图从SharePoint列表中提取数据。 我正在使用OData源连接管理器。我将维修文件放在正确的位置。我正在使用一种身份验证类型:Windows身份验证。 当我点击“测试连接”按钮时,我得到“测试连接成功”

在OData源代码编辑器中,我选择刚刚配置的连接管理器。我选择“收藏”选项。然后从集合中选择列表。 当我点击“预览”按钮时,会弹出以下错误:

从有效负载中读取错误。有关详细信息,请参阅“Error”属性。(Microsoft.Data.OData)

以下是扩展错误:

===================================

An error occured when reading the OData feed. (Microsoft.Data.DataFeedClient)

------------------------------
Program Location:

   at Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.InterceptODataException[T](Func`1 function)
   at Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.ReadNextODataEntry()
   at Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.ReadNextRow(IRow reuseRow)
   at Microsoft.Data.DataFeedClient.BufferedRowsReader.FetchNextRow(IRow reuseRow)
   at Microsoft.Data.DataFeedClient.BufferedRowsReader.MoveNext()
   at Microsoft.Data.DataFeedClient.DataFeedDataReader.InternalMoveNext()
   at Microsoft.Data.DataFeedClient.DataFeedDataReader.Read()
   at Microsoft.DataTransformationServices.DataFlowUI.ODataConnectionPage.PreviewButton_Click(Object sender, EventArgs e)

===================================

An error was read from the payload. See the 'Error' property for more details. (Microsoft.Data.OData)

------------------------------
Program Location:

   at Microsoft.Data.OData.Atom.BufferingXmlReader.ReadNextAndCheckForInStreamError()
   at Microsoft.Data.OData.Atom.BufferingXmlReader.ReadInternal(Boolean ignoreInStreamErrors)
   at Microsoft.Data.OData.Atom.BufferingXmlReader.Read()
   at System.Xml.XmlReader.SkipSubtree()
   at System.Xml.XmlReader.Skip()
   at Microsoft.Data.OData.Atom.ODataAtomEntryAndFeedDeserializer.ReadFeedContent(IODataAtomReaderFeedState feedState, Boolean isExpandedLinkContent)
   at Microsoft.Data.OData.Atom.ODataAtomReader.ReadAtEntryEndImplementation()
   at Microsoft.Data.OData.ODataReaderCore.ReadImplementation()
   at Microsoft.Data.OData.ODataReaderCore.ReadSynchronously()
   at Microsoft.Data.OData.ODataReaderCore.InterceptException[T](Func`1 action)
   at Microsoft.Data.OData.ODataReaderCore.Read()
   at Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.ReadNextODataEntryInternal()
   at Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.<ReadNextODataEntry>b__5()
   at Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.InterceptODataException[T](Func`1 function)
===================================
读取OData提要时出错。(Microsoft.Data.DataFeedClient)
------------------------------
节目地点:
在Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.InterceptODataException[T](Func`1函数)
在Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.ReadNextToDataEntry()上
在Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.ReadNextRow(IRow reuseRow)上
在Microsoft.Data.DataFeedClient.BufferedRowsReader.FetchNextRow(IROWReuseRow)中
在Microsoft.Data.DataFeedClient.BufferedRowsReader.MoveNext()中
在Microsoft.Data.DataFeedClient.DataFeedDataReader.InternalMoveNext()中
在Microsoft.Data.DataFeedClient.DataFeedDataReader.Read()上
在Microsoft.DataTransformationServices.DataFlowUI.ODataConnectionPage.PreviewButton_单击(对象发送者,事件参数e)
===================================
从有效负载中读取错误。有关详细信息,请参阅“Error”属性。(Microsoft.Data.OData)
------------------------------
节目地点:
在Microsoft.Data.OData.Atom.BufferingXmlReader.ReadNexAndCheckForInStreamError()上
位于Microsoft.Data.OData.Atom.BufferingXmlReader.ReadInternal(布尔ignoreInStreamErrors)
在Microsoft.Data.OData.Atom.BufferingXmlReader.Read()上
位于System.Xml.XmlReader.SkipSubtree()处
在System.Xml.XmlReader.Skip()处
位于Microsoft.Data.OData.Atom.ODataAtomEntryAndFeedDeserializer.ReadFeedContent(IODataAtomReaderFeedState feedState,布尔值isExpandedLinkContent)
位于Microsoft.Data.OData.Atom.odatatomReader.ReadateEntryEndImplementation()上
在Microsoft.Data.OData.ODataReaderCore.ReadImplementation()上
在Microsoft.Data.OData.ODataReaderCore.ReadSynchronously()上
在Microsoft.Data.OData.ODataReaderCore.InterceptException[T](Func`1操作)
在Microsoft.Data.OData.ODataReaderCore.Read()上
在Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.ReadNextToDataEntryInternal()中
在Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.b_uu5()上
在Microsoft.Data.DataFeedClient.DataFeedODataReaderV3.InterceptODataException[T](Func`1函数)
无论我选择什么集合,都是相同的错误。我甚至尝试用查询选项将数据限制在我知道没有问题的1个字段中

我正在使用SSDT 2017。SharePoint版本为2013年

有什么想法吗?提前感谢。

解决方法 如果尝试使用ODATA组件连接到Sharepoint时遇到问题,则可以使用SSIS Sharepoint列表适配器,该适配器是由Microsoft SSIS社区(产品团队)完成的项目

这些组件发布在Codeplex for SSIS 2005和2008上,几年前,该项目迁移到GitHub并更新为支持SQL Server 20162017

CodePlex项目URL

GitHub项目URL

Sharepoint列表适配器2017发布版

相关问题


更新1 在搜索时,我找到了以下关于使用ODATA源代码和Sharepoint的主题:

在评论中,有一个用户(Ravikiran)提到了相同的异常,看起来这是一个数据类型问题:

为此,我可以通过请求sharepoint管理员创建一个计算列来解决这个问题,该列将引用这些查找列并显示值。此计算列将是基本类型varchar,因此通过odata适配器很容易获取此列的数据

另一位用户(Angela)也给出了另一种解决方案:

只是想让你知道我让它工作了。我安装了Sharepoint列表适配器,并将其添加到SSIS包中


检查我的答案更新