2016-11-12 13 views
0

データ駆動型サブスクリプションであるReporting Servicesから3つのレポートを実行するSSISパッケージを開発しました。SSISパッケージから複数のSSRSレポートを実行する

SSISジョブを実行すると、3つのレポートすべてを一度に実行するので、レポートを順番に、つまり1つずつ実行する必要があります。これどうやってするの?

答えて

0

これは予期された現象です。データ駆動型サブスクリプションジョブをトリガすると、SQL Serverエージェントがジョブを開始し、トランザクション全体が完了します。その後、SSISパッケージは次のデータ駆動型サブスクリプションジョブと次回のサブスクリプションジョブをトリガするようになります(ジョブトリガを順番に実行したと仮定します)。

ジョブの実行にJob1、Job2、Job3を従属させたい場合は、追加のコードを手動で記述する必要があります。これについては、サブスクリプションのステータスコードを監視する方法があります。

ReportServerデータベースには、「LastStatus」列を含むdbo.Subscriptionsという表があります。現在私のローカルデータベースでは、私はサブスクリプションを持っていないとまた、テーブルのドキュメントを見つけることができません。しかし、私はこれがブール値か「成功」か「失敗」のような状態フラグのどちらかであると確信しています。最初のジョブを起動すると、.netコードを記述してポーリング間隔でこのステータスを監視する必要があります。希望の結果を得たら、次の仕事を開始するように進みます。

これは明らかです。この回答を実際の例で編集します。

+0

ありがとうVKarthik、私は.netプログラマではない、私はあなたがコードを提供できることを願っています。 – Sabby

+0

フラグの値は次のとおりです。完了:合計1件の処理済み。 0エラー、または保留中またはエラー:このレポートには.... – Sabby

関連する問題