クエリ ウィジェットで属性または空間フィルター クエリを実行することで、データ ソースから情報を取得できます。 クエリの結果によって、他のウィジェットでも使用できる出力データ ソースが生成されます。
例
このウィジェットを使用して、次のようなアプリの設計要件をサポートします。
- ユーザーが、クエリ式に基づいてフィーチャを検索できるようにします。
- ユーザーが、マップに図形を描画し、その図形と交差するフィーチャを返せるようにします。
- ユーザーが、他のウィジェットから選択したフィーチャの形状との特定の空間リレーションシップ (インターセクトやオーバーラップなど) のあるフィーチャを検索できるようにします。
- クエリの結果を使用し、他のウィジェット用に新しいフィーチャを作成します。
使用上の注意
クエリ ウィジェットでは、追加するクエリごとにデータ ソースを設定する必要があります。各クエリは単一のレイヤーで機能し、複数の属性と空間フィルターを定義できます。 複数のクエリを作成し、複数のデータ ソースからのレイヤーを使用することもできます。 クエリは、マップの有無に関係なく構成できます。 マップ ウィジェットのクエリから返されたフィーチャを表示するには、アクションを設定して自動的に表示するか、ユーザーがボタンをクリックできるようにするデータ アクションを使用します。 現在、シーン レイヤーを使用するには、代わりに [レコード選択の変更] トリガーを追加する必要があります。これによって、ユーザーはクエリ結果をクリックしてマップ上でハイライト表示できます。
設定
クエリ ウィジェットには次の設定があります。
- [新しいクエリ] - クエリを作成し、[クエリの設定] パネルで次の設定を指定します。
- [データ] - クエリするデータを選択します。 クエリごとに 1 つのデータ ソースのみ選択できます。 フィーチャ レイヤー、選択された Web マップと Web シーンに含まれるフィーチャ レイヤー、データ ビュー、出力データ ソース、およびフィーチャ サービスの URL がサポートされています。
- [ラベル] - 各クエリの名前をカスタマイズします。 ウィジェットにクエリが 1 つしかない場合は、縦の表示ラベルとアイコン配置スタイルをオフにできます。
- [アイコン] - ウィジェットに表示される各クエリのアイコンと、コンテンツ パネルのクエリ リストを選択します。 [一般] ギャラリーと [矢印] ギャラリーからアイコンを選択するか、ファイルからアイコンを追加できます。 [削除] ボタンをクリックして、未使用のアップロード済みアイコンを削除します。
注意:
次の画像形式をアップロードできます: PNG、GIF、JPG、JPEG、BMP。 最適なパフォーマンを維持するために、1 回のアップロードに対して 10MB のサイズ制限が設けられています。
- [属性フィルター] - 属性フィルター条件を指定する SQL 式を作成します。 これによって開く SQL 式ビルダーには、複雑な対話型クエリを作成するためのオプションがいくつか用意されています。
- [ラベル] - 属性フィルター セクションのラベルをカスタマイズします。
- [説明] - 追加情報アイコン上のホバー テキストとして表示される特定の利用者 (新規ユーザーなど) 向けの手順を提供します。
- [空間フィルター] - 使用可能とする空間フィルターを選択し、必要に応じてマップ ウィジェットを選択します。
- [ラベル] - 空間フィルター セクションのラベルをカスタマイズします。
- [データ ソースからの選択済みフィーチャ] - 別のレイヤー内のフィーチャとの空間リレーションシップのあるフィーチャのみを返します。 必要に応じて、関連レイヤーのフィーチャのジオメトリに対し、検索距離を適用できます。
- [空間リレーションシップ ルール] - 次のどの空間リレーションシップをユーザーに提供するのか選択します。
- [交差する] - ソース レイヤーのフィーチャの一部がフィルター レイヤーのフィーチャに格納されています。
- [含む] - ソース レイヤーの一部またはすべてのフィーチャに、フィルター レイヤーのフィーチャが完全に含まれています。
- [交差] - ソース レイヤーのフィーチャがフィルター レイヤーのフィーチャに交差しています。
- [エンベロープ インターセクト] - ソース レイヤーのエンベロープがフィルター レイヤーのエンベロープに交差しています。
- [インデックス インターセクト] - ソース レイヤーのエンベロープが、フィルター レイヤーのインデックス エントリに交差しています。
- [オーバーラップ] - ソース レイヤーのフィーチャがフィルター レイヤーのフィーチャと重複しています。
- [接する] - ソース レイヤーのフィーチャが、フィルター レイヤーのフィーチャの境界線に接しています。
- [含まれる] - ソース レイヤーのフィーチャがフィルター レイヤーのフィーチャに完全に含まれています。
- [バッファーの有効化] - 検索距離を追加します。 デフォルトの距離と単位を定義できます。
- [空間リレーションシップ ルール] - 次のどの空間リレーションシップをユーザーに提供するのか選択します。
- [マップからのジオメトリ] - 現在のマップ範囲内にあるか、マップに描画された図形と交差するフィーチャを返します。 描画ツールのオンとオフを切り替えることで、ウィジェットで使用できるツールを制御できます。
- [説明] - 追加情報アイコン上のホバー テキストとして表示される特定の利用者 (新規ユーザーなど) 向けの手順を提供します。
- [結果] - クエリ結果をどのように表示するかを定義します。
- [ラベル] - 結果リストのラベルをカスタマイズします。
- [各レコードの構成] - ソース データからの設定を優先するか、表示するフィールドをレイヤーから指定して意味のある見出しを付けることで結果をカスタマイズします。
- [レコードの並べ替え] - 結果リストの並べ替え基準となるフィールドを構成します。
- [配置スタイル] - [縦]、[横]、または [アイコン] から選択して、ウィジェット内のクエリのスタイルをカスタマイズします。
- [結果のスタイル] - クエリ結果を単一ページまたは複数ページ上で、横向きまたは縦向きに整理します。 たとえば、ユーザーは 1 ページあたり 20 個の結果を表示するように選択できます。
操作オプション
クエリ ウィジェットは、他のウィジェットでも使用できる出力データ ソースを生成します。 同じ出力データ ソースを使用して、追加ウィジェットを操作するには、アクションを追加します。 たとえば、マップはクエリ結果を自動的に表示し、フィーチャにズームできます。 クエリ ウィジェットの設定の [アクション] タブで、[作成されたレコード] トリガーを追加し、ターゲット マップを選択して、[マップ上に表示] と [ズーム] のアクションを追加します。
クエリ結果がリストに表示されます。 リストのアイテムを選択し、マップ上で対応するフィーチャを選択するには、クエリ ウィジェットに [レコード選択の変更] トリガーを追加します。 ターゲット フレームワークを選択し、[データ レコードの選択] アクションを追加して、マップのフィーチャ レイヤーと、トリガーとアクション データ間の接続をバインドするフィールドを構成します。 さらに、[ズーム] アクションを追加して、選択したフィーチャにマップをズームできます。