プロジェクト ユーザー入力変数値はアプリの利用者によって入力され、プロジェクト内の 1 つ以上のボタンに適用できます。 アプリの利用者が値を入力しますが、プロジェクト作成者は変数を適用するボタンとフィールドを定義する必要があります。
次のことがプロジェクト ユーザー入力変数に当てはまります。
- プロジェクトあたり最大 3 つのプロジェクト ユーザー入力変数を定義できます。
- その値は、ボタンが押される前に利用者が入力します。 ユーザー入力が必須に設定されている場合は、プロジェクトの開始時にこの値の入力が求められますが、この値はいつでも編集できます。
- その値は、任意のボタンの任意のテキスト フィールドに適用できます。
- その値は、コード値ドメインで構成されたテキスト フィールドまたは整数フィールドに適用できます。
- その値は、範囲ドメインで構成されたテキスト フィールドには適用できません。
プロジェクト ユーザー入力変数のプロパティは次のとおりです。
- ラベル - アプリ内のプロジェクト ユーザー入力ページのタイトルとして表示するテキスト。
- 入力タイプ - 1 行テキスト、複数行テキスト、選択リストにすることができます。 選択リストの場合、値を定義して自由入力を許可できます。 プロジェクトに追加したクエリ レイヤーまたはテーブルのフィールドから値を取得するには、動的選択リストを使用します。
- ヒントの適用 - アプリ内のプロジェクト ユーザー入力ページにヒント テキストが表示されます。
- 入力マスクの適用 - 文字や記号を使用して入力マスクを定義することによって、データ入力の形式を定義します。
- バーコード スキャナーの表示 - 入力ダイアログ ボックスでバーコード スキャナーを使用し、テキスト フィールドに入力します。
注意:
QR CODE、UPC A、UPC E、EAN 8、EAN 13、CODE 39、CODE 128 形式がサポートされています。
- 必須 - ボタンを押す前に、モバイル アプリの利用者がユーザー入力値を入力する必要があるかどうかを指定します。 必須でない場合は、利用者が必要に応じて、編集ボタン (画面上部に表示されたユーザー入力値の横にある) を選択して値を入力することによってユーザー入力値を入力できます。
注意:
必須フィールドを含むフィーチャ レイヤーにユーザー入力値を適用する場合は、必須プロパティが true に設定されていることを確認してください。そうしないと、送信エラーが発生します。
プロジェクト ユーザー入力変数は、各フィールドの [データ] タブまたは [プロジェクト ユーザー入力] メニュー項目で、プロジェクト作成者が作成し、構成します。
プロジェクト ユーザー入力変数をボタンの取得フィールドに割り当てるには、[データ] タブで、取得フィールドのドロップダウン メニューから、[プロジェクト ユーザー入力] を選択します。
モバイル アプリでは、データ フィールドの長さを上回るテキストの入力ができません。
動的選択リスト
プロジェクト ユーザー入力は、既存のフィーチャ レイヤーまたはテーブルと関連付けることで動的選択リストを設定できます。 リストの内容は、作成者がリストのプロパティを構成することで制御できます。
動的選択リストを使用するには、[プロジェクト レイヤーの管理] をクリックして、クエリ レイヤーまたはテーブルをプロジェクトに追加します。 [レイヤー] パネルの [クエリ] タブで、[追加] をクリックして、1 つ以上のレイヤーまたはテーブルを検索して選択します。
注意:
読み取り専用フィーチャ レイヤー、テーブルを使用して、動的選択リストを設定できます。
動的選択リストのプロパティは次のとおりです。
- 表示フィールド - モバイル アプリに表示する値。
- 値フィールド - レイヤーに格納する値。
- 並べ替えフィールド - 動的選択リストの並べ替えに使用するフィールド。
- 並べ替え順 - 昇順または降順。
- 更新モード - 手動または自動。 手動の場合、ユーザー入力を必須に設定すると、プロジェクトを最初に開いたときのみリストが更新されます。 以降の更新は、ユーザーがリストを下にドラッグすると実行されます。 自動の場合、ユーザー入力を必須に設定すると、プロジェクトを開いたときやユーザー入力が編集されたときにリストが更新されます。
- フィルター - 動的選択リストに表示する値を制限するのに使用するクエリ。 WHERE 句の条件を構築する際は、オプションを使用して、選択したレイヤーからデバイス変数 (username、fullName、firstName、lastName、email) またはフィールドを選択できます。 たとえば、選択したレイヤー内の運動員フィールドにユーザー名が含まれている場合、アプリに現在サイン インしている運動員のユーザー名とのみ一致する値にリストをフィルターするには、Canvasser='${username}' という式を入力します。
モバイル アプリは、リストの結果の最初のページのみを返します。これは ArcGIS Online フィーチャ サービスの場合、デフォルトで 2,000 レコードです。
モバイル アプリで動的選択リストを一度表示すると、オフラインで使用できます。リストの更新を取得するには、リストを再読み込みするときにデバイスがオンラインである必要があります。