2

对于再次发布此类问题,我提前道歉,我知道其他人已经问过,但是当我尝试这些解决方案时,它并不能解决我的问题。

这就是我想要完成的事情:我有自定义报告(实际上是几个),我想在一个名为 Benefit 的自定义实体上根据上下文运行。每个报告都包含一个子报告。报告是使用 VS2008 BIDS 开发的。

报告中有四个实体;收益(主要实体)、账户、程序Yr、lineItemDetails(由收益ID链接的子报表)

问题是报告没有正确过滤,它给了我所有的好处,而不是当前的记录。

主要报告 fetchxml 查询如下。我删除了属性字段以使其更易于阅读

<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="true">
  <entity name="vsi_benefit" alias="benefit" enableprefiltering="1"           prefilterparametername="CRM_Filteredvsi_benefit">
    <attribute name="vsi_benefitid" />
    <attribute name="vsi_approvalstatus" />
    <attribute name="vsi_participantprogramyearid" />
    <order attribute="vsi_name" descending="false" />
    <filter>
    <condition attribute="vsi_benefitid" operator="eq" value="Parameters!CRM_FilteredBenefit.Value"/>
    </filter>
    <link-entity name="vsi_participantprogramyear" from="vsi_participantprogramyearid" to="vsi_participantprogramyearid" alias="participantprogramyear">
    <attribute name="vsi_programyearid" />  
  <link-entity name="account" from="accountid" to="vsi_participantid" alias="participant">
    <attribute name="vsi_pin" />        
  </link-entity>
</link-entity>    

所以问题是我得到了所有的好处,而不是现在的。我已经在一个简单的报告中使用福利实体进行了测试,我得到了相同的结果,所有的好处。

我希望有人能够帮助解决这个问题。

谢谢!

4

1 回答 1

0

可能是您对 prefilterparamtername 的定义与您在条件过滤器中对它的使用不同:

prefilterparametername=" CRM_Filteredvsi_benefit "

条件属性="vsi_benefitid" operator="eq" value="参数!CRM_FilteredBenefit .Value"

编辑:微软在这里有一些关于 prefilterparametername 的指导。如果您打算在报告参数中使用自动预过滤,您需要确认您的 RDL 以确认您已设置您的 queryParameters 和 ReportParameters 以匹配 prefilterparametername。您可以发布 rdl 的 queryparameters 和 reportparameters 部分吗?

于 2012-03-01T16:52:52.790 回答