Alteryxのテキスト入力ツールでありがちなデータ型とサイズのミスをご紹介します
Alteryxのテキスト入力ツールは、ちょっとしたマスターテーブルや変換表を実装するのに非常に便利なツールです。テキスト入力ツールを使う上でありがちな「データ型」と「サイズ」のミスをご紹介したいと思います。
テキスト入力ツールは自動的に最適化された型・サイズになる
テキスト入力ツールにデータを入力すると、型は自動的に設定されます(明示的にユーザー側で指定できません)。
Alteryx Designerでは結果ウィンドウにて「メタデータ」というボタンをクリックすることで、フィールドタイプなどを確認することができます。
今回の入力例です。
これに対してのメタデータです。
「No」というフィールドは一番データ量の小さくなる整数値「Byte」型。
「カテゴリ」、「小カテゴリ」というフィールドは、それぞれ2バイト文字の最大文字数ということで、それぞれ「WString」(固定長ワイド文字列)でサイズは3と7になっています。
やらかしがちな例
それでは、テキスト入力ツールを使った時にやらかしがちな例を上げたいと思います。
結論から書きますと、「テキスト入力ツール」で自動的に決まったサイズ・型により意図しない結果になる、ということになります。
例えば、データを保存する際に、保存先フォルダをテキスト入力ツールからインプットし、それをデータに付加してデータを保存、ということができますが、その時に思ったファイル名で保存がうまくできない、というケースにあたることがあります。
ワークフロー的には以下のようなイメージです。
このワークフローが目指すところは、カテゴリ(ビール、日本酒、ワイン)ごとに「お酒リスト_(カテゴリ名).csv」という名称で3つのファイルを保存することです。
これをこのまま実行するとエラーになります。
フォーミュラツールでファイル保存先のフルパスを作っていくところで、元々のフォルダパスのみとなり、付加しようとしていた「お酒リスト_(カテゴリ名).csv」がまったく付加できていないことがわかるかと思います。
これは「ファイル保存先パス」というフィールドのメタデータを確認するとわかりますが、型が「String」のサイズ「6」になっています。そのため、6文字以上は格納されず切り捨てられます。また、「String」のため日本語も格納されません。
解決策
「テキスト入力」ツールの後段のところでフィールドのサイズを十分な値に変更し、さらに日本語を格納できるようにデータ型を変更する必要があります。
今回は「フィールド付加」ツールを使っているため、そこでサイズを十分な値にし、日本語が格納できるような「WString」もしくは「V_WString」にすれば問題ありません。
もしくは、わかりやすくするために「テキスト入力」ツールの後ろに「セレクト」ツールを挿入し、データ型とサイズを変更するというのも良いかと思います。
まとめ
今回は初心者向きの記事になりましたが、データ型とサイズには気をつけましょう、という内容になります。
特に「テキスト入力」は気が付かないうちに型やサイズが決められてしまうため、わかっていても、ついうっかりミスしやすいです。
サンプルWF
※Alteryx Designer 2019.2.7.63499時点の情報です