分岐ノードは、DataStudio の論理制御ノードです。 分岐ノードはさまざまな論理条件下で分岐ロジックと分岐の方向を定義することができます。

  • 分岐ノードは、DataWorks Standard Edition 以降でのみ使用することができます。
  • 一般に、分岐ノードは割り当てノードとともに使用する必要があります。 割り当てノードの詳細については、「Assignment ノード」をご参照ください。

分岐ノードの作成

  1. DataWorks コンソールにログインします。 左側のナビゲーションウィンドウでワークスペースをクリックします。 ワークスペースページで、ターゲットのワークスペースを探して、[操作] 列の [データ分析] をクリックします。
  2. 表示されるデータ分析タブで、ポインターをアイコンの作成アイコンの上に移動して、[全般] > [分岐ノード] をクリックします。

    または、左側のナビゲーションウィンドウでワークフローをクリックし、[全般] を右クリックしてから、[作成する] > [分岐ノード] をクリックします。

  3. 表示されるノードの作成ダイアログボックスで、ノード名地域を設定します。
    ノード名は 1~128 文字である必要があります。
  4. [コミット] をクリックします。

分岐ロジックの定義

  1. 分岐ノードが作成されると、ノード設定タブが表示されます。
  2. 定義セクションで、[分岐を追加] をクリックします。 表示される分岐定義ダイアログボックスで、パラメーターを設定します。
    パラメーター 説明 
    Condition
    • 分岐の状態です。 Python 比較演算子のみを使用して、分岐ノードの論理条件を定義することができます。
    • ノードの実行中に式の結果が true の場合、対応する分岐条件が満たされています。
    • ノードの実行中に式の解析に失敗すると、分岐ノード全体が失敗します。
    • 分岐条件を定義するには、ノードコンテキストで定義されたグローバル変数とパラメーターを使用することができます。 たとえば、 ${input} 変数は、分岐ノードの入力パラメーターとして使用することができます。
    Associated Node Output
    • 分岐の関連ノード出力です。 ノード出力は、分岐ノードの子ノードの依存関係を設定するために使用されます。
    • 分岐条件が満たされると、ノード出力に対応する子ノードが実行されます。 子ノードが他のノードの出力にも依存している場合、これらのノードのステータスが考慮されます。
    • 分岐条件が満たされていない場合、ノード出力に対応する子ノードは実行されません。 子ノードは実行されていない状態に設定されています。
    Description 分岐の説明です。 たとえば、分岐 ${input} ==1${input}>2 が定義されています。 それらはそれぞれ 1 および 2 として記述されています。分岐の定義
  3. パラメーターを設定し、[OK] をクリックします。
    分岐を追加した後、分岐の [操作] 列の [変更] または [削除] をクリックし、編集または削除します。
    • [変更] をクリックして、分岐および関連する依存関係を変更します。
    • [削除] をクリックして、分岐と関連する依存関係を削除します。

ノードのプロパティの設定

分岐条件を定義した後、出力名がプロパティタブの出力セクションに自動的に追加されます。 出力名に基づいて子ノードを分岐ノードに関連付けることができます。ノードのプロパティの設定
ワークフローのダッシュボードのノード間に線を引くことによって確立された依存関係は、"プロパティ" タブに記録されません。 これらの依存関係を手動で入力する必要があります。

例:分岐ノードの子ノードの設定

子ノードを分岐ノードのさまざまな出力結果に関連付けて、さまざまな条件下で分岐を定義することができます。 たとえば、次の図に示すワークフローでは、分岐 Branch_1Branch_2 が分岐ノードの子ノードとして定義されています。分岐ノードの子ノードの設定
Branch_1 は、次の図に示すとおり、autotest.fenzhi121902_1 の出力に依存します。Branch_1
Branch_2 は、次の図に示すとおり、autotest.fenzhi121902_2 の出力に依存します。Branch_2

分岐ノードをコミットして実行する

分岐ノードをコミットし、オペレーションセンターで実行します。 この例では、Branch_1 の条件が満たされています。 Branch_1 は、分岐ノードの autotest.fenzhi121902_1 出力に依存します。
  • Branch_1 の条件が満たされています。 この分岐の子ノードが実行されます。 分岐を選択して、実行中の詳細を実行時ログタブに表示することができます。
  • Branch_2 の条件が満たされていません。 この分岐の子ノードはスキップされます。 分岐を選択して、関連情報を実行時ログタブに表示することができます。

サポートされている Python 比較演算子

次の表では、a 変数の値が 10 で、b 変数の値が 20 であると想定しています。
比較演算子 説明
== 等しい:2 つのオブジェクトが等しいかどうかを確認します。 (a==b) false を返します。
! = イコールではない:2 つのオブジェクトが等しいかどうかを比較します。 (a! =b) true を返します。
<> イコールではない:2 つのオブジェクトが等しいかどうかを比較します。 (a<>b) は true を返します。 この演算子は ! と似ています。 =.
> より大きい:演算子の左側の変数が右側の変数より大きいかどうかを確認します。 (a> b) falseを返します。
< より小さい:演算子の左側の変数が右側の変数より小さいかどうかを確認します。 返される結果が 0 または 1 の場合、0 は false を示し、1 は true を示します。 これらの 2 つの結果は、それぞれ特別な変数 true および false と同等です。 (a<b) は true を返します。
>= 次の値以上:演算子の左側の変数が右側の変数以上かどうかを確認します。 (a>=b) は false を返します。
<= 次の値以下:演算子の左側の変数が右側の変数以下かどうかを確認します。 (a<=b) は true を返します。