優先順位制約
優先順位制約は、パッケージ内の実行可能ファイル、コンテナ、およびタスクをリンクして制御フローを作成し、実行可能ファイルを実行するかどうかを決定する条件を指定します。実行可能ファイルには、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 タスク
パッケージの制御フローの作成