Ssrs date/time 参数默认为数据集中的第一个日期
Ssrs date/time parameter to default to first date from a dataset
我有一个名为 "activities" 的数据集,它是用 SQL 编写的,在这个数据集中有一个名为 "created on" 的字段。
执行报告时,它当前具有截止日期和起始日期参数,以便过滤并仅显示基于所选日期的记录。
我需要的是 "start date" 参数默认为第一个活动 "created on" 日期。
例如报告已执行并有多项活动。
- Activity 创建于= 01/01/2017,
- Activity b 创建于= 02/01/2017,
- Activity c 创建于 = 03/01/2017
结果:
执行报告时的开始日期参数应默认为 01/01/2017。
您不能有使用 and 表达式的默认参数。因此,您不能如您所料=Min(Fields!MyDateField.Value, "DataSet1")
这样做。由于此数据集取决于参数,因此在执行报表之前它不可用。
相反,您需要创建另一个提供默认值的数据集。
- 创建新数据集(例如
dsStartDate
)
- 将数据集查询设置为
SELECT MIN(myDateColumn) as StartDate FROM myTable
- 在您的参数属性中,转到 "Default Values",选择 "Get values from a query"
- Select
dsStartDate
作为数据集,StartDate
作为值字段。
就是这样。
我有一个名为 "activities" 的数据集,它是用 SQL 编写的,在这个数据集中有一个名为 "created on" 的字段。
执行报告时,它当前具有截止日期和起始日期参数,以便过滤并仅显示基于所选日期的记录。
我需要的是 "start date" 参数默认为第一个活动 "created on" 日期。
例如报告已执行并有多项活动。
- Activity 创建于= 01/01/2017,
- Activity b 创建于= 02/01/2017,
- Activity c 创建于 = 03/01/2017
结果: 执行报告时的开始日期参数应默认为 01/01/2017。
您不能有使用 and 表达式的默认参数。因此,您不能如您所料=Min(Fields!MyDateField.Value, "DataSet1")
这样做。由于此数据集取决于参数,因此在执行报表之前它不可用。
相反,您需要创建另一个提供默认值的数据集。
- 创建新数据集(例如
dsStartDate
) - 将数据集查询设置为
SELECT MIN(myDateColumn) as StartDate FROM myTable
- 在您的参数属性中,转到 "Default Values",选择 "Get values from a query"
- Select
dsStartDate
作为数据集,StartDate
作为值字段。
就是这样。