分析アプリ(Analytic App)を作成しよう – 今日からはじめるAlteryx再入門アドベントカレンダー

2020.12.13

こんにちは。

データアナリティクス事業本部ソリューション部プリセールススペシャリストの兼本です。

当エントリは2020年アドベントカレンダー『今日からはじめるAlteryx再入門』の13日目のエントリです。

このアドベントカレンダーの企画は、Developers.IOにてAlteryxの情報をお届けしてきたメンバーによるAlteryxを1から学べるシリーズになっています。Alteryx触ってみたい!という方の入門記事として、Alteryx使っているけど改めて基礎から学びたい!という方の再入門記事としてご活用いただければ幸いです。

13日目の今日は「Analytic Appを作成しよう」ということで、インターフェースツールの使い方をご紹介します。

Analityc Appとは?

Alteryxでワークフローを作成すると、ワークフロー内の検索パラメータだけを変更して実行したい場合があります。例えば、本アドベントカレンダーの07日目で紹介した法人番号検索Web APIを実行する例では、REST APIのパラメータを含むURLを使用しました。

  • 7日目で使用したワークフロー

  • テキスト入力ツールにはURLを直接記述しました。

上記の例では、検索したい企業名を変更したいときはテキスト入力ツールの設定を開いてURLを直接書き換える必要がありますが、入力ミスをする可能性もありますし、ちょっと不便ですね。

このような時はワークフローをAnalytic App化することで、実行時に検索項目などのパラメータを指定することができます。

Analytic Appの作り方

Analytic Appは通常のワークフローにインターフェースツールを配置することで使用できます。インターフェースカテゴリのツール一覧は以下の通り。

  • ワークフローにテキストボックスツールを配置します。

  • 設定にインターフェースに表示するラベルとデフォルト値を設定します。

  • インターフェースツールをパラメータを追加したいツール(ターゲット)の稲妻マークに接続すると自動的にアクションツールが配置されます。

  • インターフェースツールで設定した内容をターゲットのツールのどの設定に対して適用するのかアクションを指定します。

  • なお、テキスト入力ツール側ではAnalytic App化するにあたって、APIに渡すパラメータをそれぞれのフィールドに分解しています。

  • インターフェースツールを使用するワークフローを作成すると、ワークフロー実行ボタンの左に小さく「分析アプリとして実行」ボタンが表示されるので、これを押下します。

  • パラメータ入力用のダイアログが表示されます。

  • パラメータ(今回の場合は法人番号を検索したい法人名)を入力して「完了」ボタンを押下するとワークフローが実行され、処理が正常終了したら、実行結果を表示するかを確認するダイアログが表示されます。

  • 実行結果を表示しています。Analytic Appでは明示的にデータをファイル出力していない場合(≒ワークフローに閲覧ツールしかない)、「出力ファイルがありませんでした。」というメッセージが表示されますので、その場合はデータ出力ツールを使用してデータを出力してください。

  • 検索する法人名を「クラス」に変更して再度Analytic Appを実行した結果です。アドホックに検索条件を変えてワークフローが実行できていますね。

非表示パラメータの作成

  • 以下のようにひとつのツールに対して複数のインターフェースツールを接続することも可能です。

  • アプリケーションキーなど、ユーザに変更させたくないパラメータを使うときはテキストボックスの設定で「非表示」オプションを有効にします。これにより、パラメータを非表示にできます。

ドロップダウンリスト

  • 法人番号検索APIでは、「mode」パラメータで前方一致検索もしくは部分一致検索のいずれかを指定できる機能が提供されていますが、このように複数条件の中からひとつの選択肢を選ばせたいケースでは、ドロップダウンリストを使用します。

  • ドロップダウンリストの値を指定する方法はいくつかありますが、ここでは手動設定を選択し、key-value形式で「表示名:値」を入力しています。

  • Analityc Appとして実行すると新たに検索モードを選択するドロップダウンリストが追加されています。

ツールの分岐

法人番号検索APIには、法人名で検索する以外に法人番号や設立年月日で検索をする機能が用意されています。

法人番号検索APIの機能 リクエストURLの例
法人名で検索 https://api.houjin-bangou.nta.go.jp/4/name?id=[アプリケーション ID]&name=%E5%9B%BD%E7%A8%8E%E5%95%86%E4%BA%8B&change=1&type=01
取得期間で検索 https://api.houjin-bangou.nta.go.jp/4/diff?id=[アプリケーション ID]&from=2018-05-09&to=2018-05-09&type=01
法人番号で検索 https://api.houjin-bangou.nta.go.jp/4/num?id=[アプリケーション ID]&number=8040001999013&type=01&history=0

このような時は機能ごとにワークフローを作るよりも、選択肢に応じてワークフローを分岐したいですよね。実は「開発者」タブにある「分岐・分岐終了」ツールとインターフェースツールを組み合わせることで処理を実現できます。

  • (ここからちょっとワークフローが複雑になります)分岐ツールを使うと以下のようなワークフローを作成できます。

  • 分岐ツールの設定を有効にすると分岐方向を変更できます。

  • 分岐ツールにインターフェースツールを接続し、分岐のオンオフを動的に行います。この例ではラジオボタンを使用しています。

  • 法人名で検索する機能がデフォルトで選択されるようにしています。

  • 取得期間で検索する場合のラジオボタンは以下のように設定します。

  • ワークフローの設定で、デフォルトで実行する処理が選択されるように調整しておき、アクションツールではツールが選択されたときに分岐を切り替えるようにします。

  • 配置した2つのラジオボタンは同じグループとして設定されていないので、このままでは期待する動作をしません。ラジオボタンのグルーピングや配置したインターフェースツールの配置を調整するときは、メニューから「表示>インターフェースデザイナー」を選択してインターフェースデザイナーを起動します。グループを新しく追加して2つのラジオボタンが同じグループに収まるようにします。また法人名と取得期間で検索する機能で使うツールはそれぞれラジオボタンの配下のグループに所属するように調整します。

  • このワークフローをAnalytic Appとして実行すると、以下のようなダイアログが表示されます。

  • ラジオボタンを「取得期間で検索」に切り替えるとGUIが切り替わります。

  • ワークフローを実行すると指定した取得期間から1か月間のデータを取得できました。

ところで、Analytic Appを作成していると処理を実行した結果が期待した通りに動作しているかがわかりにくい場合があります。このような時はメッセージツールを配置してデータを確認することができます。

  • メッセージツールを配置したワークフロー

  • メッセージツールの設定

  • Analytic Appの実行結果で出力ログを表示した状態。メッセージツールで作成した出力の内容が確認できます。

また、ツールの接続が複雑になることで視認性が悪くなりますので、不要な接続を無線接続にすることで可読性を高めることができます。

  • すべての接続を表示した状態

  • インターフェースツールとの接続を無線接続に変更した状態

ちょっとしたテクニックですが、ワークフロー作成時の参考にしていただければ幸いです。

公式ヘルプページへのリンク

インターフェースツールには、これ以外にも様々なツールが用意されていますが、このエントリですべてをご紹介するのは難しいので、よく使うツールについて、Alteryx公式ヘルプサイトへのリンクを用意しました。

まとめ

インターフェースツールを利用してインタラクティブな分析アプリを作成する方法についてご紹介しました。明日は「データの確認をしよう」をお届けする予定です。

以上、最後までお付き合いいただきありがとうございました。