最近のアクセス:
[Axis] プロパティおよび [Visible] プロパティのリファクタリング

QueryElements の [ Axis ] プロパティおよび [ Visible ] プロパティをリファクタリングして、クエリの作成プロセスを容易にできます。目的は、クエリエレメントの構造表現と視覚を分離して、それぞれ別に展開できるようにすることです。

変更

[ Axis ] の Hidden 値が [ Visible ] プロパティに移動しました。これにより、Boolean データタイプから列挙型の 3 つの値に変更になります。
  • Yes: エレメントは最初から表示されますが、UI から非表示にできます。
  • No: エレメントは最初から非表示になりますが、ユーザーのアクションによって表示することができます。
  • Never: エレメントは表示されず、変更もできません。
[ Axis ] プロパティは 2 つのプロパティに分けられます:
  • Type (Datum|Axis): クエリ内の項目属性の関数を示します。
  • Axis (Rows|Columns|Pages): TypeAxis で、クエリがピボットテーブルとして表示される場合にのみ有効です。

適用範囲

オブジェクト: DashboardQuery

互換性

この変更により、次のコンポーネントに影響が生じます:

クエリ

これらのプロパティは、GeneXus IDE でバージョン 17 Upgrade 1 以上でクエリをオープンするときに変換されます (GeneXus Server では変換されません)。クエリは新しい値で保存され、クエリのバージョン番号が変わります (内部で、バージョン番号が 3 から 4 に更新されます)。そのため、以前のバージョンの GeneXus で開くことができなくなります (バージョン番号は Query オブジェクトのデシリアライゼーションでコントロールされます)。バージョンの制御はインポートにも適用されるため、新しいバージョンのクエリをエクスポート/コミットして IDE や古い GeneXus Server に送ることはできません。

ダッシュボード

ダッシュボードの Query オブジェクトでも同じプロパティを使用できます。Dashboard オブジェクトは IDE で開かれるときに変換されます (クエリ内で直接設定されるものも同じです)。新しい値は、オブジェクトが保存されるときにのみ保存されます。その時点で古いバージョンの GeneXus では開くことができなくなります。

コード

実行時にプログラミングによって QueryViewer コントロールおよびプロパティが変更される Web パネルは、再プログラミングする必要があります。つまり、&Axes コレクション (具体的には [ Visible ] プロパティまたは [ Type ] プロパティ) が使用される場合です。
必要とされる変換は次のとおりです。
  • QueryViewer.AllowChangeAxesOrder = <value>QueryViewer.AllowElementsOrderChange = <value> に変更
  • エレメント &Axis&Axes コレクションに追加し、 [ Visible ] プロパティまたは [ Type ] プロパティを設定する場合
  • [ QueryViewerAxes ] プロパティを [ QueryViewerElements ] に変更
  • [ Axes ] プロパティを [ Elements ] に変更
  • [ Axis ] プロパティを [ Element ] に変更
変換に関する次の表を参照してください:
古い構文 新しい構文  
&Axis.Visible = true
&Axis.Visible = QueryViewerVisible.Yes
(1)
&Axis.Visible = true
&Axis.Visible = QueryViewerVisible.No
(2)
&Axis.Visible = false
&Axis.Visible = QueryViewerVisible.Never
 
&Axis.Type = QueryViewerAxisType.Row
&Axis.Type = QueryViewerElementType.Axis

&Axis.Axis = QueryViewerAxisType.Rows
(3)(8)
&Axis.Type = QueryViewerAxisType.Column
&Axis.Type = QueryViewerElementType.Axis

&Axis.Axis = QueryViewerAxisType.Columns
(4)(8)
&Axis.Type = QueryViewerAxisType.Page
&Axis.Type = QueryViewerElementType.Axis

&Axis.Axis = QueryViewerAxisType.Pages
(5)(8)
&Axis.Type = QueryViewerAxisType.Data
Axis.Type = QueryViewerElementType.Datum
(6)
&Axis.Type = QueryViewerAxisType.NotShow
&Axis.Visible = QueryViewerVisible.No
(7)
(1) - &Axis.Type <> QueryViewerAxisType.NotShow の場合
(2) - &Axis.Type = QueryViewerAxisType.NotShow の場合
(3) - Row に「s」を追加
(4) - Column に「s」を追加
(5) - Page に「s」を追加
(6) - [ Axis ] プロパティを無視
(7) - [ Type ] プロパティと [ Axis ] プロパティの値は任意
(8) - 2 行目は出力がピボットテーブルの場合にのみ必要
変換例
次のコードがある場合:
//コードは GeneXus 17 まで有効
&Axis.Name = !"CustomerName" //いくつかの項目属性
&Axis.Visible = &Visible // Boolean
&Axis.Type = &Type // QueryViewerAxisType データタイプ ('Row' 'Column' 'Page' 'Data' 'NotShow')
&Axes.Add(&Axis)
以下のように変更する必要があります:
//コードは GeneXus 17 Upgrade 1 以降で有効
&Axis.Name = !"CustomerName"
&Axis.Visible = &Visible // QueryViewerVisible データタイプ ('Yes' 'No' 'Never')
&Axis.Type = &Type // QueryViewerElementType ('Axis' 'Datum')
&Axis.Axis = &AxisItem // QueryViewerAxisType ('Rows' 'Columns' 'Pages')
&Axes.Add(&Axis)
そうしないと、エラーが表示されます:
// True|False を QueryViewerVisible.Yes|QueryViewerVisible.No|QueryViewerVisible.Never に変更
spc0010 Type mismatch in assignment: &Axis.Visible = &Visible (QueryViewerVisible=Boolean).// &Type を QueryViewerAxisType から QueryViewerElementType に変更
spc0010 Type mismatch in assignment: &Axis.Type = &Type (QueryViewerElementType=QueryViewerAxisType).// QueryViewerAxisType.Page を QueryViewerAxisType.Pages に変更し、変換テーブルを参照して &Axis.Type への新しい割り当てが必要かどうかを判断
spc0010 Type mismatch in assignment: &Axis.Type = QueryViewerAxisType.Page (QueryViewerElementType=QueryViewerAxisType)

使用可能バージョン

このプロパティは GeneXus 17 Upgrade 1 以降で利用できます。

注意: GeneXus Server を使用する場合は、バージョン 17 Upgrade 1 以上へのアップグレードを推奨します。Query オブジェクトがプログラムで使用されている場合や、バージョン 17 で保存されている場合は、アップグレードが必須です。

参考情報

[ Allow Change Axes Order ] プロパティ
クエリエレメント内の [ Axis ] プロパティ
[ Visible ] プロパティ
クエリエレメント内の [ Type ] プロパティ


サブページ
Created: 21/04/20 02:19 by Admin Last update: 21/08/23 20:01 by Admin
カテゴリ
Powered by GXwiki 3.0