sql - 在下拉菜单中创建 PDF
问题描述
目前我们使用 SQL Server 报告服务进行报告。我们创建了 2 个 PDF,其中包含数据。是否可以将它们插入到报表生成器中,或者能够通过下拉菜单过滤这两个?
例如:
我有 19 财年 4th Quarter.pdf 文件现在我有 20 财年 1st Quarter.pdf 文件。如果我选择 19 财年,是否可以在下拉菜单中显示该 pdf,反之亦然?
我不认为这是可能的,因为它们是 pdf,但我想我会检查。
解决方案
您需要在报告中添加一个参数,您可以在其中选择年份和季度。
每年都必须制作一份新报告是非常愚蠢的。
如果您需要一个季度的 SQL,10 年前,10 年前,这将是:
;WITH CTE AS
(
SELECT
DATEADD(year, DATEDIFF(year, 0, CURRENT_TIMESTAMP) -10, 0) AS quarter_begin
UNION ALL
SELECT
DATEADD(month, 3, CTE.quarter_begin) AS quarter_begin
FROM CTE
WHERE YEAR(DATEADD(month, 3, CTE.quarter_begin)) < YEAR(DATEADD(year, DATEDIFF(year, 0, CURRENT_TIMESTAMP) +11, 0) )
)
SELECT * FROM CTE
或者更详细
;WITH CTE AS
(
SELECT
DATEADD(year, DATEDIFF(year, 0, CURRENT_TIMESTAMP) -10, 0) AS quarter_begin
UNION ALL
SELECT
DATEADD(month, 3, CTE.quarter_begin) AS quarter_begin
FROM CTE
WHERE YEAR(DATEADD(month, 3, CTE.quarter_begin)) < YEAR(DATEADD(year, DATEDIFF(year, 0, CURRENT_TIMESTAMP) +11, 0) )
)
,CTE2 AS
(
SELECT
quarter_begin
,DATEADD(day, -1, DATEADD(month, 3, CTE.quarter_begin)) AS quarter_end
,ROW_NUMBER() OVER (PARTITION BY YEAR(quarter_begin) ORDER BY quarter_begin) AS quarter_no
,YEAR(quarter_begin) AS quarter_year
FROM CTE
)
SELECT
quarter_begin
,quarter_end
,N'Q' + CAST(quarter_no AS nvarchar(4)) + '-' + CAST(quarter_year AS nvarchar(4)) AS txt
FROM CTE2
ORDER BY quarter_begin
推荐阅读
- flutter - 从 Flutter 类访问数据
- javascript - 如何简化 JS 中的 if 语句
- python - 使用 Anaconda,从长远来看,杂乱的基础根是否会成为问题?
- tensorflow - LSTM 参数修改
- python-3.x - 如何对 python 3 中的列表进行排序,优先考虑特定值?
- python - 如何修复“无法启动内核”
- node.js - Nodejs护照会话未保存
- leaflet - 添加多边形时传单中的警告
- oracle - 调用另一个存储过程并设置为局部变量并使用类似表
- java - 在 IntelliJ IDEA 的调试模式下设置 final 字段的值