2

現在、Server 2012 上の新しい SQL Server 2012 インストールで、SSRS から時間ベースのサブスクリプション レポートを電子メールで送信できません。

SSRS LogFiles に次のエラーが表示されます

schedule!WindowsService_5!dc4!10/14/2013-10:01:09:: i 情報: データ 1a762da1-75ab-4c46-b989-471185553304 でイベント TimedSubscription を処理しています。ライブラリ!WindowsService_5!dc4!10/14/2013-10:01:09:: e エラー: Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException をスローしています:、レポート サーバー データベース内でエラーが発生しました。これは、接続エラー、タイムアウト、またはデータベース内のディスク不足状態が原因である可能性があります。; library!WindowsService_5!dc4!10/14/2013-10:01:09::w 警告: トランザクションのロールバックが実行されませんでした 接続が無効なスケジュールです!WindowsService_5!dc4!10/14/2013-10:01:09:: i情報: イベント 'TimedSubscription' の処理中にエラーが発生しました。データ = 1a762da1-75ab-4c46-b989-471185553304、エラー = Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: レポート サーバー データベース内でエラーが発生しました。これは、接続障害、タイムアウト、またはデータベース内のディスク不足状態が原因である可能性があります。---> System.Data.SqlClient.SqlException: 無効なオブジェクト名 'ReportServerTempDB.dbo.ExecutionCache'。

データベースは SQL 2008 から移行されました。これはサード パーティによって行われたもので、見落としがあるかどうかはわかりません。

どんな援助でも大歓迎です。

ありがとうございました。

デーン

4

3 に答える 3

0

Daniel E.の答えは正解です。

私はそれを見つけるのに多くの時間を費やしましたが、既存のサブスクリプションを更新しているときにエラーが発生しました

「レポート サーバー データベース内でエラーが発生しました。これは、接続障害、タイムアウト、またはデータベース内のディスク不足状態が原因である可能性があります。(rsReportServerDatabaseError)」</p>

上記のエラーでオンラインで検索したところ、修正できませんでした。久しぶりにトラが古いデータベースを指していることに気づきました。以下の一時データベース: [ReportServerTempDB] 正しい tempDB に更新した後、すべて正常に動作し始めました。

ALTER TRIGGER [dbo].[Schedule_UpdateExpiration] ON [dbo].[Schedule]  
AFTER UPDATE
AS 
UPDATE
   EC
SET
   AbsoluteExpiration = I.NextRunTime
FROM
   [ReportServerTempDB].dbo.ExecutionCache AS EC
   INNER JOIN ReportSchedule AS RS ON EC.ReportID = RS.ReportID
   INNER JOIN inserted AS I ON RS.ScheduleID = I.ScheduleID AND RS.ReportAction = 3
于 2015-09-10T15:11:54.513 に答える