с использованием SQL Server 2012 Standard Edition, но мне нужно настроить управляемую данными подписку для динамической отправки отчета по электронной почте.
Я прочитал несколько статей, и я близок к решению, я получил его, где он создает электронную почту, единственная проблема - это не передача параметров, и электронная почта выходит в виде пустого PDF.
WHILE EXISTS
(
SELECT *
FROM dbo.gs as GS
WHERE GS.Processed = 0
OR GS.Processed IS NULL
)
BEGIN
DECLARE @referenceid INT
SET @referenceid =
(
SELECT TOP 1
reference_id
FROM dbo.gs AS GS
WHERE GS.Processed = 0
OR GS.Processed IS NULL
ORDER BY GS.reference_id
)
DECLARE @site VARCHAR(100)
SET @site =
(
SELECT TOP 1
sitename
FROM dbo.gs AS GS
WHERE GS.reference_id = @referenceid
)
SELECT GSSIP.*
FROM gs AS GS
WHERE GS.reference_id = @referenceid
UPDATE [ABC].ReportServer.dbo.Subscriptions
SET ExtensionSettings = '<ParameterValues>
<ParameterValue>
<Name>TO</Name>
<Value>' + CAST(dbo.GetProspectSurveyEmail() COLLATE Latin1_General_CI_AS_KS_WS AS VARCHAR(100))
+ '</Value>
</ParameterValue>
<ParameterValue>
<Name>IncludeReport</Name>
<Value>True</Value>
</ParameterValue>
<ParameterValue>
<Name>RenderFormat</Name>
<Value>PDF</Value>
</ParameterValue>
<ParameterValue>
<Name>Subject</Name>
<Value>@ReportName executed at @ExecutionTime</Value>
</ParameterValue>
<ParameterValue>
<Name>IncludeLink</Name>
<Value>False</Value>
</ParameterValue>
<ParameterValue>
<Name>Priority</Name>
<Value>NORMAL</Value>
</ParameterValue>
</ParameterValues>'
WHERE SubscriptionID = 'b6d198c0-850b-4aa2-8152-3a772de527c4'
--SELECT * FROM [ABC].ReportServer.dbo.Subscriptions WHERE SubscriptionID = 'DA56B952-9759-403D-B5C7-439DE73809D4'
EXEC [ABC].msdb..sp_start_job @job_name = N'C1525782-F1F8-495D-95F4-A3C468B1CB14'
SELECT Parameters,
S.ExtensionSettings
FROM [ABC].ReportServer.dbo.Subscriptions AS S
WHERE SubscriptionID = 'b6d198c0-850b-4aa2-8152-3a772de527c4'
UPDATE dbo.gs
SET Processed = 1
WHERE reference_id = @referenceid
WAITFOR DELAY '00:00:10'
END
Я попытался обновить поле 'параметры' в таблице подписок, но это фактически убило подписку в отчете.
Любая помощь будет оценена
Пожалуйста, сообщите
Спасибо