最近のアクセス:
QueryViewer コントロール

QueryViewer は、Query オブジェクトまたは Data Provider オブジェクトを実行して取得したデータを表示できるようにするために Web Panel オブジェクトまたは Panel オブジェクトに含める必要のある拡張コントロールです。表示できるオプションは次のとおりです:
  1. Cardクエリ値の静的な表現です。値のトレンドを表示できます。
  2. Chart: タイムライングラフ円形グラフ極座標グラフなど、さまざまな種類のグラフを選択できます。
  3. Map: 地理軸を含むクエリ用の世界、大陸、または国の地図です (GeneXus 17 Upgrade 4 以降で使用可能)。
  4. Pivot Table: 列の入れ替えと情報のグループ化が可能なテーブルです。
  5. Table: 行と列が固定されている静的なテーブルです。
重要な注記: モバイルアプリケーションのサポートは、GeneXus 17 以降で使用できます。

主な機能:

  • スマートフォンを含むすべてのブラウザーとの互換性
  • データのエクスポート (PDF、HTML、XML、XLSX 形式。テーブルとピボットテーブルのオプションでのみ有効)
  • ドラッグ アンド ドロップを使用したピボットテーブルの直観的な操作
  • プログラミングによる設定も可能
注: テーブルとピボットテーブルでは、項目属性の右上を右クリックするだけで、その項目属性を非表示にすることができます。ピボットテーブルで、すべての Data 項目属性が非表示の場合、 [ Quantity ] フィールドは表示され、非表示にできません。

このコントロールの使用方法

次の手順は、Web アプリケーションでこのコントロールを操作する方法を説明しています (ネイティブ モバイル アプリケーションでも同じように機能します)。
1) QueryViewer コントロールを [ ツールボックス ] から Web Panel オブジェクトの [ Web Layout ] にドラッグします。


イメージ:52573.png


2) QueryViewer コントロールの [ Object ] プロパティに、表示するデータを生成する Query オブジェクトまたは Data Provider オブジェクトを設定します。


イメージ:52575.png


3) Output グループの下にある [ Type ] プロパティを設定します。ここで、出力の 5 つの表示方法のうちのいずれかを選択できます:


イメージ:52577.png


[ Chart ] オプションを選択する場合は、 [ Chart Type ] プロパティを設定して特定のタイプのグラフを選択できます。


イメージ:52579.png


4) この設定だけで、QueryViewer コントロールを含むオブジェクトを実行し、実行時に結果を表示できます。
また、QueryViewer の他のプロパティを設定することもできます。たとえば、縦棒グラフに関連する次のプロパティを設定できます:
  • [ XAxis Title ] プロパティ = Country Name
  • [ YAxis Title ] プロパティ = Population
結果として、次のクエリが実行時に表示されます:


イメージ:52578.png


注: 最初に QueryViewer コントロールをナレッジベース内の Web フォームにドラッグしたときに、このコントロールを使用するために必要となる構造化データタイプと、新しい GeneXus ドメインのセットを含む GeneXusReporting モジュールが追加されます。また、変数のセットがオブジェクトの [ Variables ] エレメント内に自動的に作成され、サンプルのソースがオブジェクトの [ Events ] エレメントに追加されます。このコードは、実行時のコントロールの使用および設定について情報を示すものです。


シナリオ

以下に、QueryViewer コントロールを使用する際のシナリオをいくつか示します:
  • クエリの新しいビューを取得するための動的なフィルタ
1 つのクエリ内の 1 つの関係要素 (クエリエレメント) について表示される値を変更して、そのクエリの新しいビューを表示できます。これを実行するには、QueryViewer コントロールとクエリ間でパラメーターを渡します。
  • 実行時の QueryViewer コントロールのカスタマイズ
[ Axes ] プロパティに関連付けられた変数によって、コントロールのビューに影響するプロパティの一部をプログラミングにより変更できます。
  • 実行時のクエリの変更
コントロールに関連付けられたクエリを別のクエリに置き換えることで、クエリを変更できます。これを実行するには、次の例のように、コントロールの [ Object ] プロパティを変更します。
Event Start
  Attractions.Object = AttractionsByCountry(<パラメーター 1>, <パラメーター 2>, ...)
EndEvent
この例では、Attractions は QueryViewer コントロール名、Object はクエリを実行する Query オブジェクトの名前を格納するためのコントロールのプロパティ、AttractionsByCountry はその Query オブジェクトの名前です。関連付けられるオブジェクトが Data Provider オブジェクトの場合にも、同じことが言えます。
  • コードによる集計の変更
Data Provider オブジェクトが QueryViewer に関連付けられている場合は、QueryViewerElements.Element 集計フィールドを使用するコードによって集計を変更できます。
既定の集計は Sum です。


コントロールのプロパティ

QueryViewer コントロールのプロパティ」を参照してください。


コントロールのイベント



DragAndDrop イベント ドラッグ アンド ドロップ操作が検出されたときの処理をプログラミングできます。
ItemExpand イベント ネストされたデータを含む Query エレメントをユーザーが展開したときの処理をプログラミングできます。
ItemCollapse イベント ネストされたデータを含む Query エレメントをユーザーが折りたたんだときの処理をプログラミングできます。
FilterChanged イベント 項目属性 (行、列、またはページエリアに位置するもの) の有効な値のリストから値が削除されるかそのリストに値が追加されるたびに実行されます。
ItemClick イベント Query エレメントのクリック時に実行されます。
ItemDoubleClick イベント Query エレメントのダブルクリック時に実行されます。(モバイルデバイスでコントロールを実行している場合、このイベントはサポートされていません)


メソッド



GetMetadata() 項目属性 (プロパティを含む) のリストを格納する QueryViewerElements タイプのオブジェクトを返します。(詳細については、「 [ Elements ] プロパティ」を参照)
GetData()  ピボットテーブルにロードされた項目属性のすべてのデータを格納する文字列変数を XML で返します。
GetFilteredData() その時点で表示されているデータ (フィルタが適用されるため、ピボットテーブルからすべてのデータを取得する GetData() メソッドとはデータが異なる場合があります) を格納する文字列変数を XML で返します。
NotifyMetadata() 項目属性 (プロパティを含む) のリストを作成します。このメソッドは結果としてオブジェクトを返すのではなく、TrackContext イベントによって後から取得可能な QueryViewerElements タイプの変数を生成します。
NotifyData() ピボットテーブルにロードした項目属性によって参照されるすべてのデータをロードします。このメソッドは結果としてオブジェクトを返すのではなく、TrackContext イベントによって後から取得可能な変数を生成します。
NotifyFilteredData() フィルタを適用した結果その時点で表示されているデータ (NotifyData() メソッドでロードされるデータとは異なる場合があります) をロードします。このメソッドは結果としてオブジェクトを返すのではなく、TrackContext イベントによって後から取得可能な変数を生成します。


メソッドの使用

使用例として、データベースとの間でメタデータを保存および復元する方法を見てみます。この作業を実行するには、QueryViewer が埋め込まれている Web パネルで次のイベントを定義します。 
メタデータを保存する
Event 'NotifyMetadata'
  QueryViewer.NotifyMetadata() 
Endevent

Event TrackContext(&Metadata)
  SaveMetadata(&Metadata)
EndEvent
メタデータを復元する
Event Refresh 
   &Axes = RestoreMetadata() 
EndEvent
注:


参考情報

QueryViewer コントロールの互換性


サブページ
Created: 14/09/18 03:46 by Admin Last update: 24/12/17 20:29 by Admin
カテゴリ
Powered by GXwiki 3.0