2011-07-06 27 views
1

我在单独的服务器上安装了SSRS,SQL Server 2008,R2和SharePoint 2010。我正在尝试针对2个相关的列表开发几个报告。SharePoint 2010来自BIDS的CAML,使用VS 2008

我使用_vti_bin/lists.aspx(类型为XML)为列表创建共享数据源,然后创建使用共享数据源引用的数据源。我还创建了2个DataSet,每个列表使用CAML。

对于这两个数据集,我得到的回报,但我缺少的字段...

也许是在DataSet CAML声明???或者它会完全是其他的东西?

这里是我的CAML声明:

<Query> 

     <SoapAction>http://schemas.microsoft.com/sharepoint/soap/GetListItems</SoapAction> 

     <Method Namespace="http://schemas.microsoft.com/sharepoint/soap/" Name="GetListItems"> 

      <Parameters> 

       <Parameter Name="listName"> 

        <DefaultValue>{xxxx-xxxx-xxxx}</DefaultValue> 
       </Parameter> 


       <ElementPath IgnoreNamespaces="True">*</ElementPath> 

      </Parameters> 

     </Method> 

    </Query> 

上更好的方法有什么建议要做到这一点也可以接受。谢谢!

回答

1

你后:

<Query></Query> 

你应该有一个:

<Field> 
    <Field Name="FieldName">...</Field> 
</Field> 

为每一个需要字段。

希望这有助于

克里斯

+0

谢谢,这帮助。但现在我被困在如何获得字段的实际名称? – Daniel

+0

我发现我能够使用字段名称做到这一点: GetListItemsResponse/GetListItemsResult/listitems/data/row {@ Column1,@ Column2,@ Column3,@ Column4,@ column5,@ column6 ,@ column7} 我坚持的一件事是@必须包含在字段名称之前。在我的情况下,它看起来像@ows_FieldName – Daniel

+0

是在ssrs中的大多数参数使用@ParamName语法,所以这个问题是否解决?你能把它标记为答案吗? – KrizD