【问题标题】:SSRS subscription - change the date format (@ExecutionTime) on the subject lineSSRS 订阅 - 更改主题行上的日期格式 (@ExecutionTime)
【发布时间】:2014-10-15 21:07:40
【问题描述】:

问题:SSRS 订阅电子邮件中的默认主题行使用@ExecutionTime 预定义变量,并在运行时将其替换为 mm/dd/yyyy hh:mm:ss 格式的日期时间.由于我们已经为印度客户部署了我们的产品,因此我们希望日期格式为 dd/mm/yyyy 格式。

互联网上的大多数帖子都建议使用数据驱动的报告订阅来构建自定义电子邮件主题。但根据 SQL Server 文档,此功能仅在 Enterprise 和 BI 版本中可用。

其他尝试使用 =Parameters!ExecutionDateTime =FORMAT(@ExecutionTime,"dd-MMM-yyyy") =format(Globals!ExecutionTime , "MMM yyyy") 失败了。

两天徒劳的尝试解决了这个问题。将继续寻找,并希望 SO 社区可以提供帮助。

【问题讨论】:

    标签: datetime reporting-services subscription


    【解决方案1】:

    除了 Tushar Sood 的回答之外,我想补充一点:语言可以适用于更改语言设置后添加的订阅。

    这可以通过在报告数据库中执行以下步骤来实现:

    1. 转到托管 Reporting Services 的 SQL 服务器
    2. 打开 SQL Server Management Studio 并转到名为 “ReportServer”的数据库
    3. 扩展数据库“报表服务器”
    4. 展开表格
    5. 在编辑模式下打开名为 "dbo.Subscriptions" 的表...您将看到名为 "Locale" 的列

    对于一些显示 "M/d/yyyy" 格式的报告,区域设置将设置为值 "en-US"。

    1. 将值更改为“en-GB”

    现在您所有使用 @ExecutionTime 的报告(包括旧报告)都将开始以 "en-GB" 格式显示日期时间。

    就是这样......快乐的报告!!!

    【讨论】:

      【解决方案2】:

      难以置信,但确实如此。 @ExecutionTime 变量的日期格式由报表服务器 Internet Explorer 上的语言设置确定。以下是您可以更改它的方法:

      1. 在 IE 中,打开设置 -> Internet 选项 -> 语言 -> 添加.. -> 英语(印度)[en-IN](或您需要的日期格式的语言)

      2. 现在添加新的 SSRS 订阅并验证收到的电子邮件。

      PS:这仅适用于更改语言设置后添加的订阅。较早的订阅电子邮件将继续使用较早的格式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-12-14
        • 2017-11-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多