switch アクティビティを使用してパイプラインでの実行を条件付きで分岐する

Microsoft Fabric の switch アクティビティは、プログラミング言語の switch ステートメントのように動作します。 式を評価し、結果をケースに一致させ、その場合はアクティビティを実行します。

[前提条件]

開始する前に、次の前提条件を満たす必要があります。

UI でパイプラインにスイッチ アクティビティを追加する

スイッチ アクティビティを追加するには、次の手順を実行します。

  1. switch アクティビティを作成する
  2. switch アクティビティの評価式とケースを設定する
  3. ケース アクティビティを構成する

switch アクティビティを作成する

  1. ワークスペースに新しいパイプラインを作成します。

  2. パイプラインアクティビティツールバーで、スイッチを検索し、それを選択してキャンバスに追加します。 表示されない場合は、 + を選択してアクティビティの一覧を展開します。

    [アクティビティ] ウィンドウと [アクティビティの切り替え] が強調表示されている Fabric UI のスクリーンショット。

  3. キャンバス上で新しいスイッチアクティビティが選択されていない場合は、選択してください。

    スイッチ アクティビティの [全般設定] タブを示すスクリーンショット。

[全般] タブの詳細については、「全般設定」を参照してください。

switch アクティビティの評価式とケースを設定する

[ アクティビティ ] タブを選択します。 既定 のケースは、ケースの一覧に既に含まれます。

[式] に、スイッチ アクティビティが評価する必要がある値を入力します。 パラメーター、システム変数、関数、ローカル変数などの動的コンテンツを使用できます。

式言語とサポートされている関数の詳細については、 式言語の概要を参照してください。

各ケースの実行内容を構成するには:

  1. [ アクティビティ ] タブで、ケースの横にある鉛筆アイコンを選択します。
  2. そのケースが式と一致したときに実行するアクティビティを追加 します
  3. ケースをさらに追加するには、[+ ケースの 追加] を選択します。

また、各ケースの横にある + または鉛筆アイコンを選択して、パイプライン キャンバスのスイッチ アクティビティ カードからケースを追加し、アクティビティを構成することもできます。

タブが強調表示されている [アクティビティ設定の切り替え] タブと、新しい接続を選択する場所を示すスクリーンショット。

ケース アクティビティを構成する

ケースの鉛筆アイコンを選択すると、Fabric によってケース アクティビティ エディターが開きます。 このエディターはパイプライン エディターのようになりますが、選択したケースにのみ適用されます。

その場合に実行するアクティビティを追加します。 この例では、 既定 のケースにコピー アクティビティが含まれています。 それ以外のケースが の結果と一致しない場合、Fabric はコピー アクティビティを実行します。

サンプルのコピー アクティビティが追加された既定のケースのケース アクティビティ エディター ペインを示すスクリーンショット。

ケース アクティビティ エディターの左上隅には、現在のパイプラインとケースが表示されます。 完了したら、パイプライン名を選択してメイン パイプライン エディターに戻ります。

パイプラインを保存して実行またはスケジュールする

パイプライン エディターの上部にある [ ホーム ] タブに切り替え、[保存] ボタンを選択してパイプラインを保存します。 [ 実行 ] を選択して直接実行するか、特定の時間または間隔で実行をスケジュールする スケジュール を設定します。 パイプラインの実行の詳細については、「パイプラインの実行 をスケジュールする」を参照してください。

パイプライン エディターの [ホーム] タブを示すスクリーンショット。タブ名、[保存]、[実行]、[スケジュール] ボタンが強調表示されています。

実行後、パイプラインの実行を監視し、キャンバスの下にある [出力 ] タブから実行履歴を表示できます。

基本的な例

この例では、 v_string_inputという名前のパイプライン パラメーターに基づいてデータ処理をルーティングします。

switch アクティビティ ROYGBIV switch は、 v_string_input の値を評価し、その値と一致する場合にアクティビティを実行します。 一致するものがない場合は、 既定 のケースが空であるため、アクティビティは実行されません。

この例では、色ごとに 1 つ (赤、オレンジ、黄、緑、青、藍、紫) の 7 つのケースがあります。 各ケースには、の値をその場合の色の名前に設定する単一の v_outputが含まれています。 は入力パラメーターv_string_inputの単純な取り込みであり、このインスタンスでは@pipeline().parameters.v_string_inputが、値に評価される任意の式である可能性があります。

スイッチ評価の前に値を準備するために使用される変数アクティビティの設定のサンプルを示すスクリーンショット。

パイプラインを実行するときに、 v_string_inputの値を入力します。 "blue" と入力すると、switch アクティビティはその式を評価し、それを "Blue" ケースに一致させ、その場合はアクティビティを実行します。この場合、 v_output は "Blue" に設定されます。 "lime" と入力した場合、一致するケースがないため、switch アクティビティは 既定 のケースを実行します。これは何も実行しません。

switch 式で使用されるパラメーター値を含むパイプライン実行入力を示すスクリーンショット。この例では、入力は 'blue' です。

入力として "blue" を指定してパイプラインを正常に実行すると、"Blue" ケースの Set 変数アクティビティ の出力で、 v_output が "Blue" に設定されたことを確認し、switch アクティビティが式を評価し、正しいケースを実行したことを確認できます。

スイッチ ケースの評価後のパイプライン実行の成功例を示すスクリーンショット。青の入力後に正しい (青い) アクティビティが実行されたことを示します。