我正在从sharepoint列表中检索值列表,这很有效但我的问题是它只检索前100条记录。目前有500条记录可供使用。
场景:我在信息传输形式上有两个组合框:
位置列表将过滤区域列表,但由于infopath似乎只检索前100条记录,因此大多数位置都没有显示任何区域,因为没有任何内容可以过滤。
答案 0 :(得分:7)
By design,查询将仅返回列表默认视图的第一页结果。更改SharePoint中默认视图的item limit
,您将更改InfoPath的返回值。
编辑(链接来自我的评论,为了更好的可读性):
以下是在MSDN forum (scroll to the bottom)中描述此修复程序的来源,博客评论describes the SharePoint setting step-by-step,一个评论a screen cap of the somewhat counter-intuitive interface,另一个评论performance implications on the server side。
希望这有帮助。
答案 1 :(得分:1)
记录我发现的尝试解决问题的方法。我还没有能够更改默认视图,因为我没有权限。那应该会改变。
我发现一个可能的解决方法是您可以将列表导出到Excel,其中包含我要查找的所有数据。 sharepoint生成的文件是Excel查询文件,如“export.iqy”。您可以在记事本中保存并打开文件。看起来像下面的
WEB
1
http://SharepointSite/_vti_bin/owssvr.dll?XMLDATA=1&List={14C4ED2B-3050-4C47-B5F3-6333C3B0FB28}&View={8E6124E0-23F2-4BA2-86E7-96E7F36BAEC8}&RowLimit=0&RootFolder=%2fLists%2fSharepoint%20Sites
Selection={14C4ED2B-3050-4C47-B5F3-6333C3B0FB28}-{8E6124E0-23F2-4BA2-86E7-96E7F36BAEC8}
EditWebPage=
Formatting=None
PreFormattedTextToColumns=True
ConsecutiveDelimitersAsOne=True
SingleBlockTextImport=False
DisableDateRecognition=False
DisableRedirections=False
SharePointApplication=http://SharepointSite/_vti_bin
SharePointListView={8E6124E0-23F2-4BA2-86E7-96E7F36BAEC8}
SharePointListName={14C4ED2B-3050-4C47-B5F3-6333C3B0FB28}
RootFolder=/Lists/My list
您可以选择第三行 -
http://SharepointSite/_vti_bin/owssvr.dll?XMLDATA=1&List= {14C4ED2B-3050-4C47-B5F3-6333C3B0FB28}&安培;查看= {8E6124E0-23F2-4BA2-86E7-96E7F36BAEC8}&安培; RowLimit = 0&安培; RootFolder =%2fLists%2fSharepoint%20Sites
并使用它来检索完整列表。我添加了一个新的接收数据连接,选择了一个xml文档并添加了上面的URL。
它没有形成特别好的但它会返回我期待的所有数据。
我认为 Argalatyr 解决方案在这一点上要简单得多,但这取决于我是否能够更改默认视图。
答案 2 :(得分:0)
没有这种硬编码,还有一种解决方法。如果您打开查询编辑器,那么您就有了带有菜单项的可用功能区。打开“主页”->“选择顶行”并在那里输入一些非常高的数字(我的列表中有 596 行,所以我输入了顶行 20000 的限制,我得到了整个列表)。
抱歉,我没有可用的英文版 Excel,因此无法添加屏幕截图。