我需要列出一个文档库中与特定命名约定匹配的所有文件:要检索的文档都是“Report xxxx-xx-xx”形式。
我必须使用GetListItems Web服务。
有没有办法在一次通话中收集所有这些文件?
如何在查询部分写“where”部分?
我可以在这里使用一些正则表达式吗?
由于
答案 0 :(得分:1)
阅读
WHERE
条款的构建似乎很清楚:
<Query>
<Where>
<Geq>
<FieldRef Name="Expires"/>
<Value Type="DateTime">
<Today/>
</Value>
</Geq>
</Where>
<OrderBy>
<FieldRef Name="Modified"/>
</OrderBy>
</Query>
然而似乎没有办法使用正则表达式。也许您可以做的最好的事情是使用“报告”和BeginsWith
元素上的Contains
元素来搜索短划线。
答案 1 :(得分:1)
也许您可以在文档库中添加Calculated Column,对标题文本执行字符串操作和/或测试操作,然后返回例如可以在where子句中轻松获取的内容?< / p>
这可能有助于限制服务器端的结果集......
=IF(LEFT([TitleColumn],7)="Report ", if(ISNUMBER(DATEVALUE(RIGHT([TitleColumn],10))), "TRUE", "FALSE"), "FALSE")
请参阅Microsoft's Calculated Field Formulas了解计算列中的可用内容。