У меня есть отчет, в котором отображаются данные за указанную дату. Отчет создается ежедневно, и его копии отправляются получателям по электронной почте. Тема электронного письма по умолчанию: «@ReportName был выполнен в @ExecutionTime». Вместо того, чтобы включать дату выполнения, я хочу включить дату данных отчета, которые доступны в параметре с именем @date.

Как я могу включить значение параметра отчета в тему письма о подписке?

2
Michael Venable 19 Май 2014 в 19:47

4 ответа

Лучший ответ

Я бы рекомендовал изучить подписки на основе данных. В основном они позволяют вам написать запрос, чтобы установить значение (значения) параметров и определить дополнительные столбцы, которые можно использовать для строки темы, тела сообщения и т. Д. Вот один полезный ресурс:

Также я должен отметить, что подписки на основе данных доступны только в определенных версиях SQL Server (Evaluation, Developer, Enterprise).

2
stubaker 22 Ноя 2016 в 01:20

Включение значений параметров отчета в строку темы подписки по электронной почте невозможно с SSRS. Подписки на основе данных позволяют динамически создавать строку темы во время выполнения, но не позволяют запрашивать и вставлять параметры в строку темы. Насколько я могу судить, это просто невозможно.

1
Michael Venable 28 Май 2014 в 00:33

Это должно быть возможно, не используя подписки, но, например, из SSIS, чтобы * отобразить отчет SSRS и сохранить, например, в виде html-файла, * создайте электронное письмо и поместите файл из отчета либо в тело, либо как вложение, * и установите тему электронного письма. Здесь снова возникает проблема считывания значения или параметра из подготовленного отчета, на который в настоящее время у меня нет ответа. Но здесь у вас есть все средства, включая .net, так что это должно быть возможно.

Майк

0
Mike 2 Мар 2016 в 10:19

Значения параметров находятся в поле Parameters таблицы dbo.Subscriptions в базе данных ReportServer. Если вы обновите раздел темы поля ExtensionSettings значениями из поля Параметры, вы можете добиться этого, не приобретая корпоративную лицензию. Просто помните, что ExtensionSettings - это ntext, поэтому вам нужно будет выполнить CAST в NVARCHAR (MAX), чтобы выполнить оператор REPLACE ().

0
Kungfu 28 Апр 2017 в 17:37