次の方法で共有


制御フローに繰り返しを追加する

Integration Services には For ループ コンテナーが含まれています。For ループ コンテナーとは制御フローの要素で、これを使用すると、条件に応じてパッケージ内の制御フローを繰り返すループを、簡単に含めることができます。 詳細については、「 For ループ コンテナーに評価されるまでそのワークフローを繰り返します。

For ループ コンテナーは、ループの各繰り返しにおいて条件を評価し、条件が FALSE に評価されると停止します。 For ループ コンテナーに含まれる式によって、ループの初期化、繰り返される制御フローの実行を停止する評価条件の指定、評価条件の比較対象となる値を更新する式への値の代入を行います。 評価条件は必ず指定する必要がありますが、初期化式および代入式の指定は任意です。

For ループ コンテナーに機能は用意されていません。繰り返し可能な制御フローを構築する構造を提供するだけです。 コンテナーに機能を設定するには、For ループ コンテナーに少なくとも 1 つのタスクを含める必要があります。 詳細については、「 Integration Services のタスク」を参照してください。

For ループ コンテナーには、複数のタスクを持つ制御フローを含めたり、他のコンテナーを含めることができます。 For ループ コンテナーにタスクとコンテナーを追加する手順は、タスクとコンテナーをドラッグする先がパッケージではなく For ループ コンテナーであること以外は、パッケージに追加する手順と同様です。 For ループ コンテナーに複数のタスクまたはコンテナーが含まれる場合、パッケージの場合と同様に、優先順位制約を使用してそれらを連結できます。 詳細については、「 優先順位制約」を参照してください。

For ループ構成での式の使用

評価条件、初期化の値、または代入値を指定することによって For ループ コンテナーを構成する場合、リテラルまたは式のどちらかを使用できます。

式には変数を含めることができます。 変数を使用する利点は実行時に更新できるので、パッケージの管理がより柔軟かつ容易になることです。 式の最大長は 4,000 文字です。

式の内部で変数を指定する場合、変数名をアット マーク (@) で始める必要があります。 たとえば、 という名前 Counterの変数に対して、For ループ コンテナーで使用される式に「」と入力 @Counter します。 変数の名前空間のプロパティを含める場合は、変数と名前空間を角かっこで囲む必要があります。 たとえば、名前空間のMyNamespace変数に「Counter@MyNamespace::Counter」と入力します。

For ループ コンテナーが使用する変数は、For ループ コンテナーのスコープ、またはパッケージ コンテナー階層において上位層にある任意のコンテナーのスコープ内で定義する必要があります。 たとえば、For ループ コンテナーは、それ自体のスコープ内で定義された変数と、パッケージ スコープ内で定義された変数を使用できます。 詳細については、「Integration Services (SSIS) の変数」と「パッケージで変数を使用する」を参照してください。

SSIS の式文法には、評価、初期化、または代入に使用する複雑な式を実装するための、演算子と関数の完全なセットが用意されています。 詳細については、「Integration Services (SSIS) 式」を参照してください。

For ループ コンテナーを制御フローに実装するには

  1. For ループ コンテナーをパッケージに追加します。 詳細については、「コントロール フローでのタスクまたはコンテナーの追加または削除」を参照してください。
    .

  2. タスクとコンテナーを For ループ コンテナーに追加します。 詳細については、「コントロール フローでのタスクまたはコンテナーの追加または削除」を参照してください。
    .

  3. 優先順位制約を使用して、For ループ コンテナー内のタスクとコンテナーを連結します。 詳細については、「 既定の優先順位制約を使用してタスクとコンテナーを連結する」を参照してください。

  4. For ループ コンテナーを構成します。 詳細については、「 For ループ コンテナーを構成するに評価されるまでそのワークフローを繰り返します。

参照

制御フローのタスクまたはコンテナーを追加または削除する
コンポーネントのグループ化とグループの解除
既定の優先順位制約を使用してタスクとコンテナーを連結する
制御フローに列挙を追加する
制御フロー