App構築ガイドライン
Alteryx分析アプリは、ユーザーのために特定の機能を実行する自己完結型のプログラムです。インターフェイスはシンプルであり、アプリは単一の目標を念頭に設計されている必要があります。アプリは、最適なユーザー体験に焦点を当て、限られた範囲のタスクを実行する必要があります。ユーザーがウェブブラウザで構築しているアプリを実行していることを考慮すると、バックエンドの設計は巧妙でエレガントかつ効率的である必要があります。
最新のヴィンテージデータセット
特定のデータセットを使用するアプリをオーサリングする場合、選択したデータセットは、最新のヴィンテージバージョンのデータセットを使用するように設定する必要があります。つまり、Alteryxはユーザーのコンピュータにインストールされている最新バージョンのデータセットを自動的に使用します。これは、人口統計解析ツール(Allocate)、行動解析ツール(Solocast)、カルガリーツール、Drivetimes、ジオコーダー、またはマッピングツールの参照ベースマップに適用されます。データセットを設定するに>>>は、 [ オプション ] [ ユーザー設定 ] [ 編集 ] [ ユーザー設定 ] [ データセットのデフォルト ] の順に選択します。
メタ情報タブ
[ ワークフローの設定 ]ウィンドウの [ メタ情報 ] タブに入力された情報は、 Web 上のアプリケーションの詳細に表示されます。
- [ ファイル名] を使用して、ファイルの名前を表示します。または、 [ カスタム] を選択して、アプリにわかりやすい名前を付けます。:アプリケーションに "フレンドリー" な名前を付けます。例えば、アプリファイル自体がDownload_Weather_Dataと呼ばれる場合、カスタム名は同じですが、アンダースコアなしのDownload Weather Dataになります。
- ここに入力された説明はアプリのウェブ上に表示される説明なので、それが正確な説明でユーザーフレンドリーであることを確認してください。
- URLフィールドは、外部ウェブサイトへのリンクを含める機能を提供します。
- 作成者:名前、ビンテージ( YYYY.Qtr )、会社、著作権など、分析アプリケーションの作成者の詳細を入力します。
拡張子は .yxwz です
アプリをオーサリングするときは、ワークフロータイプを分析アプリに変更した場合でも、ファイルをyxwzファイルとして保存してください。ファイル拡張子がyxmdのままになっていると、アプリではなくワークフローとして開きます。
バージョン9.0で作成されたアプリは、もう*.yxmdファイルとして保存できなくなりました。
マップ入力
マップ入力ツールは、マップの入力機能を使用して、場所を選択するか、ポリゴンまたはラインを描画する機能をアプリ消費者に提供します。マップの質問は短いけれども説明的にする必要があり、ベースマップを常に使用する必要があります。ベースマップを選択するときは、必ず "最新ビンテージ" を選択してください。
最後に、[描画]モードが選択されている場合は、[ユーザーがラベル機能を使用できる]が常にチェックされていることを確認します。これにより、各カスタムポリゴンに名前を追加するオプションをユーザーに提供します。
レポート出力
アプリをギャラリーに保存する際に、レポートの出力がPCXMLとしてレンダリングされる場合、アプリケーションはエンドユーザーがウェブ上でレポートをプレビューするだけでなく、サポートされているどのレポート形式のレポートもダウンロードするオプションを提供します。サポートされているレポート形式には、PDF、Microsoft Word、Microsoft Excel、およびHTMLなどがあります。
アプリケーションをオーサリングする場合、サポートされているレポート形式のいずれかを出力できます。PCXML を使用するにAPP_NAME.pcxml
は、レンダリングツールの出力モード( Output Mode )を設定して特定の出力ファイルを選択し、出力ファイル( Output File )にを使用します。
PCXMLでレポートをプレビューする際は、フッターは表示されませんが、PDF、Word、またはExcelドキュメントとしてダウンロードすると利用できます。
ファイルの読み取り / 書き込み:アプリケーション内のマクロ
ウェブアプリの場合、アプリまたは下側のフォルダと同じフォルダ、つまりそのアプリを含むフォルダ内の任意のフォルダ内にあるファイルのみを読み込みおよび書き込みすることができます。 (1レベルよりも下にすることができます)この規則は、Alteryx製品インストーラまたはデータインストーラの一部である標準マクロでない限り、アプリに使用したいマクロにも適用されます。
%temp%
ワークフローやアプリを作成してギャラリーに保存する際は、一時ディレクトリに書き込むために%temp%を使用しないでください。すべてのファイルパスをワークフロー内に保持します。連鎖アプリを開発する場合は、ファイルパスではなくファイル名のみを使用します(例:それを閲覧してファイルを選択し、次に[ワークフローの依存関係]ウィンドウを使用して、ファイル依存パスを相対パスに変更します。
禁止されているツールとイベント
次のAlteryx Designerツールとイベントは、可能な構成と実行可能な動作が数多くあるために、Analytics Galleryでは禁止されています。
ワークフローで禁止されているツールまたはイベントのいずれかを安全な方法で使用している場合は、免除を適用して、 Alteryx Analytics Gallery でワークフローを実行できます。適用除外を申請するには:
- curator@alteryx.comにEメールを送信し、ワークフローの一般的な目的と併せて、禁止されている各ツールの使用方法とその理由を説明します。
- プライベートスタジオにワークフローを公開し、他の人がこのワークフローをダウンロードする可能性があるオプションにチェックマークを入れます 。
- ワークフローをコレクションに追加し、Alteryx Curator(curator@alteryx.com)で共有します。
- あなたのワークフローを見直すために最長2営業日、Alterxの管理人がリクエストのステータスをEメールで送付します。
R ツールを使用する Designer に含ま れる予測マクロは、 Alteryx パブリックギャラリーで使用できます。
ウェブ用にサポートされていないアプリ機能
以下は、Analyticsギャラリーのウェブ環境ではサポートされていません。
- フォルダー閲覧
- ファイル参照(名前を付けて保存)、アップロードは Web 上で正常に動作します。
- アプリがDesktop環境でエラーをスローした場合、それをギャラリーに保存することはできません。
アプリを構築するためのベストプラクティス
更新アクション
アクションツールを使用して値を更新/変更する場合、実際に必要な場合を除き、"特定の文字列を置き換える:" オプションを使用しないでください。継続的な開発のため、ワークフローのツール構成を変更すると、その特定の文字列が存在しなくなる可能性があるため、そのアクションツールを破損させることがあります。明らかに、そのオプションを使用する必要があるときに、ツールでその文字列を変更すると、アクションツールも更新する必要があることに注意してください。
分岐の更新
分岐の試行の更新を完了させるためにアクションツールを使用している場合は、両方の可能性について分岐を更新してください。すなわち、左への分岐と右への分岐です。そうしないと、1つの条件でのみ更新して、開発中にワークフローを変更した場合、あなたはいつワークフローをもう1つの方法に移行する必要があるかの説明をしていません。
分岐を終了させる
特に、分岐からワークフロー内の他の場所にデータストリームを結合する前に、すべての分岐を終了させる必要があります。分岐終了ツールは構成が不要なため、使いやすくなっています。それらを使用していることを確認するか、出力ツールを用いて分岐を終了させてください。
エラーメッセージツールの使用
質問を書き込む際は、共通の間違いを予期してユーザーを考慮してください。エラーメッセージツールを使用してエラーメッセージを発行する必要があります。例えば、ユーザーがオプションを選択する必要がある場合、彼らが何も選択しなかった際にエラーをスローします。これによりユーザーがエラーを修正する方法を理解するのに十分な意味を持たない場合があるエンジンのエラースローを避けることができます。理想的には、ユーザーが記入する必要があるすべての質問についてスローエラーがあるようにします。また、より複雑な条件を実行して、彼らが正しく記入したことを確認することもできます。例えば、最大5つのトレードエリアをカンマで区切ってテキストボックスに記入する必要がある場合(例:1, 2, 3, 4, 5)、正規表現の条件を使用して、テキストボックスに4つを超えるカンマがないことを確認します。
メッセージツールを使用してエラーを発行する
これらの同じ行に沿って、適切に構成されていてもアプリが失敗する可能性のあるケースを予測してください。例えば、ユーザーは、ジオコーディングに失敗して結果をレンダリングしないアドレスに入力する場合があります。不正なジオコードをフィルタリングしてアプリでメッセージを簡単に処理し、メッセージツールを使用してユーザーにメッセージを返すことができます。アドレスが有効であることを確認し、それに適切な変更を加えるか、別のアドレスを入力して再実行してください。"
生のXMLを更新し、HTMLメタ文字をエスケープする
ツールで生のxmlを更新している場合や、アプリで特殊文字を使用している場合は、ウェブ上でこれが予期したとおりに機能しない場合があることに注意してください。たとえば、エンジンのドロップダウンツールまたはリストボックスツールの選択には、次のようなテキストが含まれている場合があります。Age By Sex Summary Report:<Report Type=”summary”>Age By Sex Summary Report</Report>
しかし、これがウェブ上で使用されている際は、実際に質問を正しく表示することはできません。従って、これがアクションで使用された場合は、おそらく望ましい効果は得られません。解決策は、テキストを次のように変更することです:
次に、アクションで質問の回答を使用している場合は、それを更新する必要があります:
Escape XML Metacharacters関数がバージョン8.0の式ライブラリに追加されました。Specializedカテゴリからアクセスできます。この関数は、すべてのXMLメタキャラクタをエスケープされたバージョンに置き換えます。
変数ツリーを割り当てる
Allocate変数ツリーを空のままにすると、ウェブとエンジンは異なる値を返します。アプリにAllocate変数ツリーが質問タイプとしてある場合は、ユーザーが何かを選択したか、空のままにしたかどうかを確認する条件を作成することができます。エンジンについては次のように書き込むことができます:
[AllocateVariables] == "<Variables />"
変数ツリーに何も選択されていないときは、が返されます。しかし、ウェブ上で返される値は実際には何もないので、条件は次のようになります。
isempty([AllocateVariables])
当然のことながら、アプリはウェブとデスクトップの両方で動作するため、条件は実際には次のようになる必要があります:
[AllocateVariables] == "<Variables />" or isempty([AllocateVariables])
>と /文字をウェブ上で使用することも心配な場合、条件を次のように変更できます:
REGEX_CountMatches([AllocateVariables], "Variables") == 1 or isempty([AllocateVariables])
ユニオンツール
ほとんどの場合、ランタイム時にワークフローが変更されるため、手動で構成されたユニオンツールを任意のアプリから保持することをお勧めします。ユニオンツールを手動モードで構成するのではなく、ユニオンツールに入る各接続に選択ツールを挿入します。選択ツールを構成するときは、必要に応じてフィールドの名前を変更して並べ替え、動的/不明フィールドを含めないように注意してください。名前による自動構成または位置による自動構成のいずれかを使用して、ユニオンツールを構成します。
ツールコンテナとアプリの構成
アプリケーションの構成は、アプリケーションのセクションごとに異なるツールコンテナを使用することによって一部行われます。たとえば、すべてのレポートツールは通常、アプリケーションの最後のセクションであり、「レポート」というラベルの付いたツールコンテナに配置できます。
ツールコンテナツールは、強調表示する機能に基づいて色分けできます。色分けツールコンテナを使用すると、特に小さなズームで見た際に、アプリが何をしているのかを簡単に理解することができます。これは、他の誰かが作成したアプリのトラブルシューティングやデバッグの際に役立ちます。
インタフェースツールは、独自のコンテナに配置し、次のように色分けする必要があります。マルチタブアプリでは、各タブを構成するツールをそれぞれのコンテナに配置すると便利です。
ワークフロー/アプリの注釈
注釈は特定のツールに付随するテキストボックスであり、個々のツールの役割を説明するのに非常に役立ちます。主な利点の1つは、ツールを移動すると注釈も一緒に移動することです。 ワークフローコンフィギュレーションで、アノテートアイテムを表示( Annotations to show )に設定します。
必要に応じて、個々の注釈をツールの上部または下部に配置するように設定することもできます。 アノテーションを変更するには、ツールをクリックしてアノテーションタブを選択し、アノテーションを上に配置を選択または選択解除します。
マクロ固有のガイドライン
すべての以前のガイドラインは、アプリと同じくマクロにも適用されますが、次の例外はマクロにのみ適用されます。
マクロ入力
マクロ入力にはデータが含まれている必要があります。データが含まれていると、問題が発生した場合にトラブルシューティングやデバッグが非常に簡単になります。マクロ入力ツールにはテキスト入力が組み込まれています。これは、マクロ入力に適した方法です。 データ入力として機能するために大きなファイルが必要な場合は、可能であればマクロに含める必要があります。マクロのデータファイルの依存関係は、次のように名前を付ける必要があります:
NameOfMacro.NameOfDataFile.yxdb
入力名と出力名には、それらに関連付けられたツール番号を使用しないでください。[マクロ入力プロパティ]タブで、名前が十分説明的であることを確認します。ここで指定された名前は、マクロツールの構成時にユーザーに表示されます。
複数の入力と出力がある場合は、コネクタの省略形を追加すると、ツールがキャンバスに配置されたときにツールアンカーにラベルを付けることで、ツールの設定に役立ちます。マクロ入力ツール、 マクロ出力ツールを参照してください。
ネーミングタブ
ユーザーがマクロツールを構成している間は、タブ名は使いやすいように記述的にする必要があります。構成時にタブがユーザーに表示されます。デフォルトのタブ名は "質問" です。これは記述的な名前ではなく、通常は単一のタブでマクロ(またはアプリ)を開発する際の見落としです。Interface Designerウィンドウを参照してください。
サポートマクロ
親ワークフローで使用されるサポートマクロは、親マクロまたはサポートディレクトリに存在し、次のように名前を付ける必要があります。