メジャーの定義
ここでは、メジャーを定義する方法を説明します。
システムは、既定の名前が Count のメジャーを自動的に作成します。この既定の名前をオーバーライドするには、キューブの [カウント・メジャーのキャプション] オプションを指定します。"キューブ・オプションの指定" を参照してください。
"このドキュメントに示したサンプルのアクセス方法" も参照してください。
メジャーの追加
メジャーを追加するには、クラス・ビューワからクラス・プロパティをドラッグして、これをモデル・ビューワの [メジャー] ラベルにドロップします。次に、必要に応じて詳細領域で変更を加えます。
また、次のようにすることもできます。
-
[要素の追加] をクリックします。
ダイアログ・ボックスが表示されます。
-
[新規項目名の入力] に、メジャー名を入力します。
"モデル要素の名前" を参照してください。
-
[メジャー] をクリックします。
-
[OK] をクリックします。
-
モデル・ビューワで、メジャーを選択します。
-
少なくとも、以下のオプションは指定してください。
メジャー集約方法の指定
[集計] オプションは、複数のレコードを結合する際、常に、このメジャーの値の集約方法を指定します。このオプションを指定する場合は、以下の値のいずれかを使用します。
ブーリアンまたは文字列のメジャーでは COUNT を選択します。
検索可能なメジャーの指定
メジャーを検索可能 として指定できます。その場合はピボット・テーブルで使用されるレコードをそのメジャーの値でフィルタ処理できます。
メジャーを検索可能として指定するには、詳細領域で [検索可能] チェック・ボックスにチェックを付けます。
Note:
検索可能なメジャーの名前には、角括弧やコンマ ([],) を含めることはできません。
キューブ内のメジャーの順序の変更
キューブ内のメジャーの順序を変更する手順は以下のとおりです。
-
[順序変更] をクリックします。
ダイアログ・ボックスが表示されます。
-
[メジャー] をクリックします。
-
必要に応じて、[アルファベット順] をクリックし、アルファベット順に配列します。
これは、即座にリストに作用します。必要に応じて、リストをさらに再編成できます。また、メジャーを追加する際に、アルファベット順の自動配列は行われません。
-
メジャーの名前をクリックし、必要に応じて上矢印または下矢印をクリックします。
-
必要に応じて、他のメジャーでもこの操作を繰り返します。
-
[OK] をクリックします。
キューブ内のメジャーの順序は、アナライザでの表示方法に影響を与えます。その他の影響はありません。メジャーをアルファベット順に配列したほうが便利なユーザもいれば、使用頻度の高いメジャーをリストの上部に配置するユーザもいます。
ファクト・テーブル内のフィールド名の指定
キューブ・クラスのコンパイル時に、システムは 1 つのファクト・テーブル・クラスと、いくつかの関連クラスを生成します。キューブの構築時に、これらのテーブルに値が入力されます。詳細は、"ファクト・テーブルおよびディメンジョン・テーブルの詳細" を参照してください。
既定では、システムによってファクト・テーブルの列名が生成されますが、その代わりに使用する列名を指定することもできます。これを実行するには、各メジャーの [ファクト・テーブルのフィールド名] オプションに値を指定します。このオプションは、NLP メジャーには使用できません。一意の名前を使用するように注意してください。
Important:
[ファクト・テーブルのフィールド名] には、SQL の予約語を使用しないでください。SQL 予約語のリストは、"InterSystems SQL リファレンス" の "予約語" を参照してください。名前は、英字かパーセント記号 (%) で始まる必要があります。最初の文字が % である場合、2 番目の文字は Z または z である必要があります。制約の詳細は、"サーバ側プログラミングの入門ガイド" の "クラス・メンバ" を参照してください。また、fact または listing という語は、どのような大文字と小文字の組み合わせであっても使用しないでください。
リストの追加フィルタの指定
既定では、ユーザが詳細リストを表示する際、システムは、現在のコンテキスト (リストが要求されたコンテキスト) で使用されているソース・レコードごとに行を 1 つ表示します。指定されたメジャーについて、詳細リストを表示する際にシステムが使用する追加フィルタを指定できます。例えば、Patients サンプルの Avg Test Score メジャーを考えてみます。このメジャーは TestScore プロパティに基づいています。これは一部の患者については NULL になっています。ユーザが Avg Test Score メジャーを開始してリストを表示する際、このメジャーを再定義してそれらの患者をフィルタで除外できます。
このようなフィルタが必要な場合、メジャーの定義の一部に含めます。大半の場合、フィルタは以下の形式になります。
measure_value operator comparison_value
このフィルタは詳細リスト・クエリに追加され、フィルタ条件を満たさないレコードをすべて除外します。
リスト・フィルタの他の形式に MAX/MIN があります。このようなリスト・フィルタを使用した場合、詳細リストには、メジャーの最大 (または最小) 値を持つレコードのみが表示されます。メジャーは、リスト・フィルタと同じ種類の集約を使用する必要があります (リスト・フィルタが含まれている場合)。
特定のメジャーについて、リストの追加フィルタを指定するには、以下の手順を実行します。
-
モデル・ビューワで、メジャーを選択します。
リスト・フィルタで [最大] を使用する場合、[最大] として [集約] で定義されているメジャーを選択します。
同様に、[最小] を使用する場合、[最小] として [集約] で定義されているメジャーを選択します。
-
([詳細] 領域の) [メジャー固有のリスト・フィルタ] セクションで、以下の値を指定します。
このオプションを使用した場合、このメジャーは検索可能となる必要があるため、アーキテクトで [検索可能] チェック・ボックスが自動的に有効になります。
例
Patients キューブの Avg Test Score メジャーを修正し、[演算子] に [<>]、[値] に "" を指定するとします。つまり、NULL のテスト・スコアを持つ患者をフィルタで除外します。次に、以下のピボット・テーブルを考えてみます。
CHD 行の Patient Count セル (または Avg Age セル) をクリックして詳細リストを表示すると、以下のように表示されます。
ただし、ピボット・テーブルの Avg Test Score セルをクリックして詳細リストを表示すると、以下のように表示レコードは少なくなります。