我使用的是SharePoint List类型的嵌入式数据源。
我使用了一个用户可以修改的参数,该参数将按月过滤数据集。我见过一些示例,但它们要么都使用SQL查询,要么只在确切的日期而不是月份进行过滤。
我添加了一个参数ParamMonth
,并将其数据类型设置为Date/Time。我可以看到这为我的报告添加了一个下拉框,这正是我想要的。理想情况下,我希望添加所有12个月的名称或类似的名称,但我不知道当数据超过一年时,这将如何工作。现在,我已经添加了报告参数,我需要将其添加到我的数据集中进行筛选。这就是我被卡住的地方。
发布于 2017-01-24 03:10:01
一种简单的方法是创建一个类型为Integer
的参数,并在Available Values
选项卡中设置所有月份,如下所示(例如,我只设置了5个月)。
然后转到DataSet Properties
/ Filter
选项卡,并使用以下设置。
对于表达式使用:
=MONTH(Fields!Date.Value)
其中,Date
是您将用于按月筛选的字段。在Value
中,您必须使用:
=Parameters!Month.Value
更新:提供年份选择。
最好的方法是从DataSet获取可用值,在本例中是您的SP列表。
只需在数据集中创建一个具有可用年份的计算字段(它可以是SP列表数据集的副本),将其命名为calculatedYear
并使用:
=YEAR(Fields!Date.Value)
现在创建一个Intenger数据类型的Year参数,并设置如下设置:
其中DataSet15
是为您的参数提供可用年份的DataSet名称。
然后只需在数据集中添加另一个筛选器:
注意:您将需要两个数据集,一个用于获取可用年份,另一个用于筛选。
如果这有帮助,请告诉我。
https://stackoverflow.com/questions/41813629
复制相似问题