ArcGIS Arcade を使用して、QuickCapture でキャプチャしたレコードのフィールドを計算できます。 プロジェクトの作成者は、Arcade 関数、演算子、レコード値を使用する式を記述できます。
Arcade QuickCapture プロファイルには、レコード値を返すために使用できる以下の変数が含まれています。
- $feature - 現在のレコードの属性
- $layer - 現在のレコードと同じレイヤー内のフィーチャ
- $datastore - 現在のレコードと同じフィーチャ サービスまたはデータベース内のレイヤー
- $map - QuickCapture プロジェクトで使用される Web マップ内のフィーチャ サービス レイヤーのコレクション
詳細については、「QuickCapture プロファイル変数」をご参照ください。
デフォルトでは、プロジェクト Web マップにプロジェクト レイヤーが含まれていないため、名前でレイヤーを参照する式 (var layername = FeatureSetByName($map, "layer_name") など) を使用できるようにするには、QuickCapture プロジェクトの構成時に Web マップを作成するオプションを選択するか、デフォルトの Web マップを式に必要なすべてのレイヤーを含むマップに置き換える必要があります。 詳細については、「プロジェクト マップの構成」をご参照ください。
注意:
プロジェクトで Arcade 式を使用する場合、プロジェクト レイヤーと Web マップに DateOnly、TimeOnly、TimestampOffset、または BigInteger フィールド タイプがないか確認します。 これらのフィールドを除外したホスト フィーチャ レイヤー ビューを作成し、代わりにそのレイヤー ビューをプロジェクトで使用する必要があります。 これらのフィールド タイプは、QuickCapture モバイル アプリで使用されている Arcade バージョン (1.18) ではサポートされていません。
Arcade 式として構築できる使用例を次に示します。
- 別のフィールドから取得した値から値を計算する
- 属性値を返すポイントとポリゴン クエリを実行する
- キャプチャされたポリラインの時間長を計算する関数を使用する
QuickCapture デザイナーは、作成者が式を構築するのに役立つ式ビルダーを含み、QuickCapture プロファイルを使用します。 ユーザー入力が一度定義され、複数のボタンで使用できるのと同様の方法で、Arcade 式を一度デザイナーに保存すると、複数のボタンに割り当てることができます。
Arcade 式は、各フィールドの [データ] タブでプロジェクト作成者が構成できます。 Arcade 式をボタンの取得フィールドに割り当てるには、[データ] タブで、取得フィールドのドロップダウン メニューから、[Arcade 式] を選択し、[新規作成] を選択します。
ArcGIS が管理するフィールド (OBJECTID、GlobalID、CreationDate、Creator、EditDate、Editor など) は、レコードが送信されるまでその値がわからないため、式では使用しないでください。 式にユーザー名またはレコード取得日の値が必要な場合、その式はデバイス変数が設定されたフィールドを参照する必要があります。
注意:
デバイスがオフラインのときに取得された Arcade 式を含むレコードだけが、デバイスが次にオンラインになったときに処理されてから送信されます。