優先順位制約

優先順位制約は、パッケージ内の実行可能ファイル、コンテナー、およびタスクをリンクして制御フローを作成し、実行可能ファイルを実行するかどうかを決定する条件を指定します。実行可能ファイルには、For ループ コンテナー、Foreach ループ コンテナー、シーケンス コンテナー、タスク、またはイベント ハンドラーを設定できます。また、イベント ハンドラーは優先順位制約を使用して実行可能ファイルをリンクし、制御フローを作成します。

優先順位制約は、優先順位付き実行可能ファイルと、制約付き実行可能ファイルの 2 つの実行可能ファイルをリンクします。優先順位付き実行可能ファイルは制約付き実行可能ファイルの前に実行され、優先順位付き実行可能ファイルの実行結果により、制約付き実行可能ファイルを実行するかどうかを決定できます。次の図は、優先順位制約によってリンクされた 2 つの実行可能ファイルを示しています。

優先順位制約によって接続された実行可能ファイル

Integration Services のアーキテクチャではコンテナーを入れ子にできるので、1 つのタスクのみをカプセル化するタスク ホスト コンテナーを除き、すべてのコンテナーに他のコンテナーと独自の制御フローを含めることができます。For ループ コンテナー、Foreach ループ コンテナー、およびシーケンス コンテナーには、タスクとその他のコンテナーを複数含めることができます。さらに、そのコンテナーにも複数のタスクとコンテナーを含めることができます。たとえば、スクリプト タスクとシーケンス コンテナーを持つパッケージに、そのスクリプト タスクとシーケンス コンテナーをリンクする優先順位制約を含めます。シーケンス コンテナーには 3 つのスクリプト タスクが含まれ、その優先順位制約は 3 つのスクリプト タスクをリンクして制御フローを作成します。次の図は、2 レベルの入れ子構造のパッケージの優先順位制約を示しています。

パッケージ内の優先順位制約

パッケージは、SSIS コンテナー階層の最上層にあるため、複数のパッケージを優先順位制約によってリンクすることはできません。ただし、パッケージ実行タスクをパッケージに追加して、別のパッケージを間接的に制御フローにリンクできます。

優先順位制約は、次の方法で構成できます。

  • 評価操作を指定します。優先順位制約は、制約値および式の両方、またはいずれか 1 つを使用して、制約付き実行可能ファイルを実行するかどうかを決定します。

  • 優先順位制約で実行結果を使用する場合、成功、失敗、完了のいずれかの実行結果を指定できます。

  • 優先順位制約で実行結果を使用する場合、ブール型に評価される式を指定できます。

  • 優先順位制約を単独で評価するか、制約付き実行可能ファイルに適用する別の制約と共に評価するかを指定します。

評価操作

Integration Services には、次の評価操作が用意されています。

  • 優先順位付き実行可能ファイルの実行結果のみを使用して、制約付き実行可能ファイルを実行するかどうかを決定する制約。優先順位付き実行可能ファイルの実行結果には、完了、成功、または失敗を設定できます。

  • 評価する式。これを使用して制約付き実行可能ファイルを実行するかどうかを決定します。式が TRUE に評価された場合、制限付き実行可能ファイルは実行されます。

  • 優先順位付き実行可能ファイルの実行結果と、式を評価した戻り結果の両方を必須とする、式および制約。

  • 優先順位付き実行可能ファイルの実行結果か、式を評価した戻り結果を使用する、式または制約。

式は、有効な SSIS の式である必要があります。この式には、関数、演算子、システム関数およびカスタム関数を含めることができます。詳細については、「Integration Services の式のリファレンス」および「Integration Services の変数」を参照してください。

実行結果

優先順位制約は、次の実行結果を単独で、または式との組み合わせで使用できます。

  • 完了。制約付き実行可能ファイルを実行するには、結果にかかわらず優先順位付き実行可能ファイルが完了することだけが必要です。

  • 成功。制約付き実行可能ファイルを実行するには、優先順位付き実行可能ファイルが正常に完了する必要があります。

  • 失敗。制約付き実行可能ファイルを実行するには、優先順位付き実行可能ファイルが失敗する必要があります。

注意

同じ Precedence Constraint コレクションのメンバーである優先順位制約のみが、論理 AND 条件でグループ化できます。たとえば、2 つの Foreach ループ コンテナーの優先順位制約を組み合わせることはできません。

優先順位制約の構成

プロパティを設定するには SSIS デザイナーから行うか、またはプログラムによって設定します。

SSIS デザイナーで設定できるプロパティの詳細については、次のトピックを参照してください。

SSIS デザイナーでこれらのプロパティを設定する方法の詳細については、次のトピックのいずれかを参照してください。

プログラムによる優先順位制約の構成

プログラムによってこれらのプロパティを設定する方法については、次のトピックを参照してください。

Integration Services のアイコン (小) 最新の Integration Services の入手

マイクロソフトが提供する最新のダウンロード、アーティクル、サンプル、ビデオ、およびコミュニティで選択されたソリューションについては、MSDN または TechNet の Integration Services のページを参照してください。

これらの更新が自動で通知されるようにするには、ページの RSS フィードを定期受信します。