sql-server - 使用具有多个参数的 SSRS 从 SQL Server 生成和下载报告
问题描述
我在报表生成器中设计了一个模板,我的报表有 6 个参数:
Start Date, End Date, Source, Destination, Transaction, and Consignor
我的 SQL 表有以下列:
[DATE], [SOURCE], [DESTINATION], [REFERENCE#], [ITEMCODE], [DESCRIPTION],
[UM], [PRICE], [QTY], [AMOUNT], [MFGDATE], [EXPDATE], [LOT#], [TRANS], [CONSIGNOR], [DRDATE]
我很难为参数编写表达式,请帮忙。
解决方案
对此的查询相当直接,因为它都来自一个表。
您将编写如下查询(假设没有多值参数)
您的主要数据集将如下所示:
Select
[DATE], [SOURCE], [DESTINATION], [REFERENCE#], [ITEMCODE], [DESCRIPTION],
[UM], [PRICE], [QTY], [AMOUNT], [MFGDATE], [EXPDATE], [LOT#], [TRANS], [CONSIGNOR], [DRDATE]
from your_table
where
your_table.Date between @start_date and @end_date
and your_table.Source = @source
and your_table.Destination= @destination
and your_table.Transaction= @transaction
and your_table.consignor= @consignor
这将在报告中创建所有参数
现在确保为每个参数设置适当的类型。
IE start_date 和 end_date 应该是 datetime 等类型,
您可以在报表中有多个数据集,它们为每个参数派生参数值。
例如..你可以有一个像这样的源数据集
select distinct
source
from your_table
where your_table.Date between @start_date and @end_date
现在将源参数数据集设置为指向此值。
这将仅返回所选日期之间可用的状态。
@destination 参数的目标数据集将是
select distinct Destination
from your_table
where your_table.Date between @start_date and @end_date
and your_table.status = @status
现在您必须对其余参数执行相同的操作
现在取决于您想要如何分组和显示..您放置一个 tablix 并从您的主数据集中选择您的分组/详细信息等。我不认为这是解释如何做到这一点的地方。
推荐阅读
- r - 使用空间数据:如何在不替换的情况下找到点的最近邻?
- python-3.x - 检测图像openCV中的文本行
- python - 在 drf-yasg 中设置自定义 basePath
- java - 尝试从 hashmap 中获取值时在 Eclipse 中出现 sonarlint 错误
- r - 将多值属性分离为单个属性 R
- python-3.x - python新手,如何将用户输入添加在一起
- android - React Native Android 应用程序在 POCO X2 手机上没有响应
- sockets - 我无法通过 TCP 协议发送短消息
- java - 无法使用 Zuul 运行两个身份验证服务实例
- random - 生成一个范围内的数字并考虑平均值