You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为SSRS报表添加运行日期参数至保存文件名

在SSRS报表服务器中为导出文件名自动添加运行日期的实现方案

手动导出(点击保存图标)的实现方式

SSRS默认的导出对话框不会自动填充带日期的文件名,但可以通过以下两种方式实现:

  1. 自定义报表代码+URL参数导出

    • 打开报表设计器,右键报表空白区域选择「报表属性」(注意不是按F4调出的属性窗口),切换到「代码」标签页,添加VB自定义函数:
      Public Function GetFormattedFileName() As String
          Return Me.Report.DisplayName & " - " & Format(Globals!ExecutionTime, "MM/dd/yyyy")
      End Function
      
    • 导出时,使用包含文件名参数的URL访问报表,示例URL:
      http://你的报表服务器地址/ReportServer/Pages/ReportViewer.aspx?/报表路径/报表名称&rs:Command=Render&rs:Format=PDF&rc:FileName==Code.GetFormattedFileName()
      
      访问这个URL后,点击导出按钮时,文件名会自动带上运行日期。
  2. 浏览器脚本辅助(适合频繁手动导出的场景)
    如果不想每次使用URL,可以给浏览器添加用户脚本(比如Tampermonkey),监听报表导出对话框的弹出事件,自动在文件名末尾追加当前日期。脚本逻辑示例:

    // 监听导出对话框,自动添加日期
    document.addEventListener('DOMContentLoaded', function() {
        setInterval(function() {
            var saveDialog = document.querySelector('[id*="SaveAs"]');
            if (saveDialog && saveDialog.value.indexOf('-') === -1) {
                var date = new Date();
                var formattedDate = (date.getMonth()+1).toString().padStart(2,'0') + '/' + date.getDate().toString().padStart(2,'0') + '/' + date.getFullYear();
                saveDialog.value = saveDialog.value + ' - ' + formattedDate;
            }
        }, 500);
    });
    

自动订阅导出的实现方式

如果是定期自动生成报表,创建订阅时直接设置文件名表达式即可:

  • 打开报表订阅设置,找到「文件名」输入框,点击旁边的表达式按钮(fx)
  • 输入表达式:
    =Globals!ReportName & " - " & Format(Globals!ExecutionTime, "MM/dd/yyyy")
    
  • 保存订阅后,每次订阅生成的文件都会自动带上运行日期。

内容的提问来源于stack exchange,提问作者jr7138

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 14:03:09