我正在尝试使用Report Builder 2.0使用XML数据源查询Sharepoint列表。我明确列出了我想要返回的字段,因为否则I don't get all of them,因为有些字段有时为空。但是,我需要的其中一个字段名称中有一个空格。如果我在没有明确指定字段的情况下进行查询,我会将其作为字段之一返回:ows_Pre-Req Estimate
。如何在ElementPath
代码中指定此字段?当我尝试将字段名称放在引号中时,我会得到不同的错误,或者只留下一个如图所示的空格:
<ElementPath IgnoreNamespaces="true">
GetListItemsResponse/GetListItemsResult/listitems/data/row{@ows_Release,@ows_Theme,@ows_ID,@ows_Pre-Req Estimate}
</ElementPath>
这是我离开空间并尝试在查询设计器中运行查询时出现的错误:
XmlDP查询无效。第1行的语法错误,ElementPath的字符105。预期}。
我尝试检查MSDN page about ElementPath,但没有看到任何有空格的字段的注释。我在Maria's two cents上看到有人建议使用_x0020_
而不是空格,但这似乎也不起作用。
交叉发布到Microsoft Forums。
答案 0 :(得分:2)
ElementPath
_x0020_
逃离<FieldRef Name="Pre_x002d_Req_x0020_Estimate" />
。我的问题是你必须在字段名称中删除连字符。我下载了Report Builder 3.0并尝试在其中创建查询。之后,编辑查询的XML会向我显示字段名称,因为它们应该被编码:
<ElementPath IgnoreNamespaces="true">
GetListItemsResponse/GetListItemsResult/listitems/data/row{@ows_Release,@ows_Theme,@ows_ID,@ows_Pre_x002d_Req_x0020_Estimate}
</ElementPath>
我现在可以在Report Builder 2.0中使用它(注意字段名称前面的“ows_”):
{{1}}