パッケージの制御フローのデザイン

Integration Services パッケージの制御フローは、パッケージとサービスの構造をタスクに提供するコンテナー、パッケージの機能を提供するタスク、およびコンテナーとタスクを連結して制御フローを作成する優先順位制約など、さまざまな種類の制御フローの要素を使用して作成されます。

パッケージの制御フローを作成するには、SSIS デザイナーの [制御フロー] タブのデザイン画面である制御フロー デザイナーを使用します。

制御フローを作成するには、次の作業を行います。

  • パッケージ内で繰り返すワークフローを実装するコンテナー、または制御フローをサブセットに分割するコンテナーを追加します。

  • データ フローのサポート、データの準備、ワークフローとビジネス インテリジェンス機能の実行、およびスクリプトの実装を行うタスクを追加します。

  • 優先順位制約を使用してコンテナーとタスクを連結し、順序付けされた制御フローを作成します。

データ ソースに接続するタスクとコンテナーが制御フローに含まれる場合は、さらに接続マネージャーをパッケージに追加する必要があります。接続マネージャーは、制御フロー デザイナーで作業中に追加できますが、さらに、[データ フロー] または [イベント ハンドラー] タブがアクティブのときにも追加できます。

また、SSIS デザイナーには、デザイン画面を管理したり、制御フローを自己文書化するための、多数のデザイン時機能も含まれています。

制御フロー デザイナーの使用

[制御フロー] タブがアクティブの場合、SSIS デザイナーには、パッケージの制御フローを作成するためのデザイン画面が表示されます。[接続マネージャー] 領域では、パッケージで使用する接続マネージャーを追加または変更でき、[ツールボックス] には [制御フロー項目][メンテナンス プランのタスク] が一覧表示されます。[ツールボックス] の [制御フロー項目] ノードには、多くの種類のタスクとコンテナーが一覧表示されます。これに対して、[メンテナンス プランのタスク] ノードには、SQL Server データベースとジョブをメンテナンスするためのタスクのみが一覧表示されます。

次の図は、制御フロー デザイナーに表示された、簡単なパッケージの制御フローを示しています。この図で表示されている制御フローは、パッケージレベルの 3 つのタスク、および 3 つのタスクが含まれるパッケージレベルの 1 つのコンテナーで構成されています。タスクとコンテナーは、優先順位制約を使用して連結されます。

SSIS デザイナーの [制御フロー] タブ

コンテナーの追加と構成

Integration Services には、制御フロー内で使用できる 3 種類のコンテナーが含まれています。

  • Foreach ループ コンテナー。列挙子を使用してループを実装する、繰り返す制御フローを作成するためのコンテナーです。たとえば、Foreach ループ コンテナーは、Foreach File 列挙子を使用して、フォルダー内のすべてのファイルで動作を実行するように構成できます。詳細については、「Foreach ループ コンテナー」および「制御フローへの列挙の追加」を参照してください。

  • For ループ コンテナー。条件を評価してループを実装する、繰り返す制御フローを作成するためのコンテナーです。たとえば、For ループ コンテナーは、タスクを 7 回繰り返すように構成できます。詳細については、「For ループ コンテナー」および「制御フローへの繰り返しの追加」を参照してください。

  • シーケンス コンテナー。制御フローのサブセットを作成して、複数のタスクを 1 つの単位として管理するためのコンテナーです。たとえば、シーケンス コンテナーを無効にすると、そのコンテナー内のすべてのタスクを無効にできます。詳細については、「シーケンス コンテナー」および「制御フロー内でのシーケンスの使用」を参照してください。

タスクの追加と構成

Integration Services には、パッケージのビジネス要件を満たす制御フローを作成するための、さまざまなタスクが含まれています。パッケージでデータを処理する必要がある場合、制御フローには少なくとも 1 つのデータ フロー タスクを含める必要があります。たとえば、データの抽出、データ値の集計、およびデータ ソースへの結果の書き込みをパッケージで行う必要がある場合などです。詳細については、「Integration Services タスク」および「制御フローへのタスクの追加」を参照してください。

タスクとコンテナーの連結

[制御フロー] タブのデザイン画面にタスクまたはコンテナーを追加すると、SSIS デザイナーは、アイテムにコネクタを自動的に追加します。パッケージに 2 つ以上のアイテム、つまりタスクまたはコンテナーが含まれている場合、コネクタを 1 つのアイテムから別のアイテムにドラッグすると、それらを制御フローに結合できます。

2 つのアイテム間のコネクタは、優先順位制約を表します。優先順位制約では、連結された 2 つのアイテムの関連性を定義します。ここでは、実行時にタスクとコンテナーが実行される順序、およびタスクとコンテナーが実行される条件を指定します。たとえば、優先順位制約は、あるタスクが成功した場合にのみ、制御フロー内の次のタスクが実行されるように指定できます。詳細については、「優先順位制約」および「タスクおよびコンテナーでの優先順位制約の設定」を参照してください。

接続マネージャーの追加

多くのタスクではデータ ソースに接続する必要があるため、タスクに必要な接続マネージャーをパッケージに追加する必要があります。使用する列挙子の型に応じて、Foreach ループ コンテナーにも接続マネージャーが必要となる場合があります。接続マネージャーは、制御フローをアイテム別に作成するときに追加できます。または、制御フローの作成を開始する前に追加することもできます。詳細については、「Integration Services の接続」および「接続マネージャーの追加」を参照してください。

デザイン時機能

SSIS デザイナーには、制御フロー用に 2 つのデザイン時機能が含まれています。

  • 制御フローの一部を、折りたたみ可能なグループ化構造に含め、デザイン画面の領域を節約します。詳細については、「タスクとコンテナーのグループ化」を参照してください。

  • デザイン画面に注釈を追加すると、パッケージを自己文書化できます。詳細については、「パッケージの注釈の使用」を参照してください。

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

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

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