Alteryxツールアイコン「ツリーツール」(Tree Tool)をご紹介します
ツリーツール(Tree Tool)
[インターフェース]カテゴリのツリーツールについて紹介します。概要
このツールは、組織化された階層的なデータ構造を表示して、アプリまたはマクロでの 1 つ以上の選択をユーザーが行えるようにします。
設定項目
設定
大きく分けて3種類※のツリーから選択します。
項目(ツリーデータソース) | 内容 |
ファイルシステムディレクトリ | ツリー表示でファイルの選択を行います [ルートパス]で最初に表示されるパスを選択します [ワイルドカード]で表示させるファイル名や拡張子に制限を設けられます |
カスタムXML | ツリーの構成をXMLファイルで定義します
[カスタムXMLパス]でXMLファイルを指定します |
カスタムファイル/データベース | ツリーの構成をファイルやデータベースのテーブルで定義します [ファイル/データベース/接続]でツリー表示させたいテーブルを選択します [キーフィールド]でツリー表示させる階層を定義したカラムを選択します [説明フィールド]でツリーに表示される名前を定義したカラムを選択します |
※ツリーデータソースの「Allocate地理情報」、「Allocate変数」については別途ライセンスが必要になるため、本紹介では割愛します。
使用例
-
ファイルシステムディレクトリ
ツリーツールで選択したcsvファイルを開くようにしてみます。
上図のように設定し、開きたいファイルはルートパス以下に格納します。
実行するとこのような感じになります。
ツリー表示でファイルを選択できるようになりました。
-
カスタムXML
カスタムXMLを使ったツリーツールで下図のようなデータから対象を選択できるようにしてみます。
各データには固有のIDを振ります。IDの先頭2文字は親とする階層の番号、残り2文字は階層内で一意となる番号としています。たとえばTeaのIDは0102なので、階層の番号は01、階層内での番号は02となります。
ツリーツールで使用するXMLファイルは下図のように作成します。
要素vは属性nとkを持ち、nにはツリーで表示する名前、kは選択された場合に取得する値を入れます。
ツリーツールでは使用するXMLファイルのパスを指定します。
アクションツールではアクションタイプを「フォーミュラで値を変更」とし、フィルターツールの条件を変えられるようにします。
フォーミュラで行っている具体的な内容は次のようになります。
・ツリーツールで取得したkの値が1文字の場合は"1=1"とする(フィルター無し)
・それ以外の場合、取得したkの値と[ID]カラムの値、または[ID]カラムの先頭2文字が一致した場合をフィルター条件とする
実行するとこのような感じになります。
完了するとツリーで選択したデータのみ得られました。
-
カスタムファイル/データベース
カスタムファイルを使ったツリーツールで下図のような内容のcsvファイルから対象を選択できるようにしてみます。
B列にはツリーツールで選択した場合に取得される値を入れています。値の先頭1文字は親とする階層の番号、残り2文字は階層内で一意となる番号としています。たとえばBurgerの場合の値は201なので、階層の番号は2、階層内での番号は01となります。
ツリーツールでは使用するファイルのパス、選択した場合に取得されるキーフィールド、ツリーに表示される説明フィールドを指定します。
ツリーで複数選択された値は改行コードに区切られて取得されるため、列分割ツールで複数行に分割し、結合ツールで一致するものを取得します。
実行するとこのような感じになります。
完了するとツリーで選択したデータのみ得られました。
注意点
・ツリーツールはAPI未対応
Alteryx Serverにアップロードしたツリーツールを含むワークフローをAPIで実行しようとすると、ツリーの質問を取得することができません(API未対応の質問を含むワークフローですと応答されます)。
サンプルワークフロー
※Alteryx Designer 2023.1.1.336 時点の情報です