Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionユーザーズ・ガイド 12.2.1.3.0 E90111-02 |
|
前へ |
次へ |
この項では、オブジェクトのインラインまたは名前付きでの保存について説明します。次の項目が含まれます。
トピック
特定のオブジェクトを使用する際、他のオブジェクトを作成して、そのオブジェクトとともに保存できます。
他のオブジェクトとともに保存される場合、そのオブジェクトはインラインで保存されます。フィルタ、グループおよび計算項目をインラインで保存できます。たとえば、分析の一部としてグループを作成できます。分析を保存すると、グループはインラインで、つまり分析とともに保存されます。
これらのオブジェクトは、インラインで保存する以外に、個別のオブジェクトとしてOracle BIプレゼンテーション・カタログにサブジェクト・エリアとともに保存できます。オブジェクトを単独で保存すると、オブジェクトは名前付きオブジェクトになります。名前付きオブジェクトによって再利用性が得られます。1つのオブジェクトを作成し、名前付きオブジェクトで指定された列を含む分析、ダッシュボード(フィルタの場合)やダッシュボード・ページ(フィルタの場合)に複数回使用できます。名前付きオブジェクトを更新および保存すると、名前付きオブジェクトが使用されているすべてのオブジェクトに更新がただちに適用されます。
たとえば、グループを分析にインラインで保存した後で、単独のオブジェクトとしてカタログに保存できます。その名前付きグループを「カタログ」ペインから他の分析に適用できます。
名前付きフィルタ、グループおよび計算項目は、関連するサブジェクト・エリア・フォルダに通常保存されます。
サブジェクト・エリア・フォルダに保存することによって、同じサブジェクト・エリアに対して分析を作成する場合にオブジェクトが使用可能であることが保証されます。
/My Foldersに保存されている名前付きオブジェクトは、そのユーザーのみが使用できます。/Shared Folders
フォルダに保存されているオブジェクトは、フォルダにアクセスする権限を持つ他のユーザーも使用できます。サブジェクト領域フォルダが/My Folders
フォルダにも/Shared Folders
フォルダにもない場合、サブジェクト領域フォルダが自動的に作成されます。オブジェクトを保存する際、「名前を付けて保存」ダイアログにはデフォルトの保存パス/My Folders/Subject Area Contents/<subject area>
が表示されます。ただし、ダイアログの「フォルダ」領域には、カタログ内のサブジェクト・エリア・フォルダのすべてのインスタンスが表示され続けます。
フィルタをインライン・フィルタまたは名前付きフィルタとして保存できます。
「分析」エディタの「基準」タブにある「フィルタ」ペインでインライン・フィルタを作成する際、オプションでインライン・フィルタを名前付きフィルタとして保存できます。名前付きフィルタは、分析レベルで作成することも、グローバル・ヘッダーからスタンドアロン・オブジェクトとして作成することもできます。
名前付きフィルタは、ダッシュボードに埋め込まれている分析または同じダッシュボード・ページに埋め込まれている分析のすべてまたは一部をフィルタできます。
グループおよび計算項目を保存すると、アプリケーション全体でこれらの関数を再使用できます。
グループまたは計算項目をインライン・オブジェクトまたは名前付きオブジェクトとして保存できます。
ビューの編集や保存の際、または複合レイアウトでの操作の際にグループまたは計算項目を作成すると、グループまたは計算項目は分析にインラインで保存されます。
「選択ステップ」ペインでの操作時は、次のようになります。
カタログ内の名前付きオブジェクトとしてステップ内にあるグループまたは計算項目を保存できます。
ステップのセットまたは列に対する結果のメンバー・リストを名前付きオブジェクトとして保存できます。ステップの1つに計算項目が含まれる場合、ステップのセットをグループとして保存できません。
「別の分析へのグループの追加」を参照してくください。
計算項目またはグループを名前付きオブジェクトとしてカタログに保存するには:
「選択ステップ」ペインを表示します。
計算項目またはグループのリンクをクリックし、「計算項目を次の名前で保存」または「グループを次の名前で保存」 をクリックして「名前を付けて保存」ダイアログを表示します。
ダイアログを完成させ、オブジェクトをカタログに保存します。
ステップのセットをグループとしてカタログに保存するには:
「選択ステップ」ペインを表示します。
列名の一番右にある「選択ステップの保存」ボタンをクリックします。
「選択ステップの保存」ダイアログを完成させ、グループをオブジェクトとしてカタログに保存します。
フィルタと選択ステップの2つを使用して、分析を実行すると表示される結果を限定し、結果が特定の質問に対する解答となるようにします。
フィルタと選択ステップの両方を使用して、分析の実行時に表示される結果を制限します。これは、結果が特定の質問の回答となることを意味します。分析に対して選択した列とフィルタと選択ステップによって、結果に何が含まれるかが決まります。フィルタの選択ステップに基づき、基準に合う結果のみが表示されます。たとえば、所属する業界によっては、フィルタと選択ステップを使用して、業績上位10名を調べることができます。さらに、特定のブランドの売上金額、最も収益性の高い顧客も調べることができます。
フィルタと選択ステップは列レベル・ベースで適用し、分析でデータを限定する2つの方法を提供します。フィルタは常に、選択ステップが適用される前に列に適用されます。ステップは指定された順序で適用されます。フィルタと選択ステップは様々な点で異なります。
フィルタは、問合せの集計前に列に直接適用されます。フィルタは問合せに影響するため、メジャーの結果値に影響します。たとえば、集計すると100になるメンバーのリストがあるとします。時間の経過とともに、フィルタ基準に合うメンバーが増え、集計が200になります。
選択ステップは問合せの集計後に適用され、表示されているメンバーにのみ作用し、結果の集計値には作用しません。たとえば、集計すると100になるメンバーのリストがあるとします。選択ステップを使用してメンバーの1つを削除した場合、集計は100のままです。選択ステップは列ごとで、列をまたぐことができません。
分析に対して選択した列とフィルタと選択ステップによって、結果に何が含まれるかが決まります。フィルタの選択ステップに基づき、基準に合う結果のみが表示されます。たとえば、所属する業界によっては、フィルタと選択ステップを使用して、業績が最もよい10人、特定のブランドの売上金額、最も収益性の高い顧客などを確認することが考えられます。
プロンプトと呼ばれる別の種類のフィルタは、ダッシュボードのすべてのアイテムに適用できます。実行時にプロンプトを使用して、選択ステップおよびフィルタを完了できます。「ダッシュボードと分析でのプロンプト」を参照してください。
Oracle BI Enterprise Editionにはフィルタ・ビューと選択ステップ・ビューがあり、これらを分析に追加すると、その分析に適用されているフィルタや選択ステップが表示されます。これらのビューを追加すると、分析内の情報に対するユーザーの理解度が高まります。「ダッシュボードでの表示用のビューの追加」を参照してください。
フィルタと選択ステップは列レベル・ベースで適用し、分析でデータを限定する2つの方法を提供します。
フィルタは常に、選択ステップが適用される前に列に適用されます。ステップは指定された順序で適用されます。フィルタと選択ステップは様々な点で異なります。
フィルタ
フィルタを属性列およびメジャー列に直接適用できます。問合せの集計前にフィルタを適用し、問合せとメジャーの結果の値に影響が及ぶようにする必要があります。たとえば、集計すると100になるメンバーのリストがあるとします。時間の経過とともに、フィルタ基準に合うメンバーが増え、集計が200になります。
選択ステップ
選択ステップは問合せの集計後に適用され、表示されているメンバーにのみ作用し、結果の集計値には作用しません。たとえば、集計すると100になる階層メンバーのリストがあるとします。選択ステップを使用してメンバーの1つを削除した場合、集計は100のままです。
選択ステップは、属性列と階層列の両方に作成できます。選択ステップは列ごとで、列をまたぐことができません。属性列には集計メンバーがないため、属性列に対しては選択ステップを使用してもフィルタを使用しても階層列ほど違いは出ません。メジャー列が「選択ステップ」ペインに表示されている場合、ステップによって影響を受けないようステップを作成できません。メジャーは、属性列および階層列に対する条件ステップ(100万ドルより多い売上など)の作成に使用されます。
分析に含めるデータ・メンバーを指定すると、データ・ソースからのデータの選択が作成されます。
選択ごとに、特定の列(製品、地理など)に対するメンバー・セットの基準を指定します。各選択は1つ以上のステップで構成されます。ステップは、選択に影響を与える指示(テキストABC
を値に含む製品メンバーの追加など)です。ステップが実行される順序は、データの選択に影響を及ぼします。各ステップはその列のすべてのメンバーに作用するのではなく、前のステップからの結果に増分的に作用します。
これらの選択ステップは、「選択ステップ」ペインに表示できます。ステップは、次の方法で作成されます。
列を分析に追加すると、特定のメンバーを明示的に追加しないかぎり、すべてのメンバーで開始する選択ステップが自動的に作成されます。「結果」タブで列メンバーをドラッグ・アンド・ドロップして分析に追加することでも、ステップが自動的に作成されます。たとえば、年の階層列からメンバーFY2007とFY2008をピボット表にドラッグ・アンド・ドロップするとします。「FY2007, FY2008を追加」という選択ステップが作成されます。
グループと計算項目を追加すると、ステップが自動的に作成されます。
特定の階層列または属性列に対するデータの選択を絞り込むために、右クリックの相互作用(「関連項目の追加」や「保持のみ」など)を使用すると、ステップが自動的に作成されます。これらの選択ステップを削除するには、「グループの削除」や計算項目の削除などの右クリック相互作用を使用します。「ビューの右クリック相互作用」を参照してください
「選択ステップ」ペインを使用してステップを直接作成し、特定の階層列または属性列に対するデータの選択を詳細に指定できます。「選択ステップ」ペインは、「結果」タブ、「基準」タブおよび一部のビュー・エディタなどの様々な場所から表示できます。
選択ステップのタイプは次のいずれかです。
明示的なメンバーのリスト - ステップに、列のメンバーのリスト(ボストン、ニュー・ヨーク、カンザス、南部など)を含めることができます。階層列の場合、メンバーの階層レベルは異なっていてもかまいません。属性列の場合、メンバーの列はその列のみです。
条件ステップ - 条件に基づいて列からメンバーが選択されます。条件には、様々なタイプ(メジャーや最上位/最下位の値に基づくなど)があります。このメンバー・リストは動的で、実行時に決まります。
選択ステップの実行中に、テキスト以外(日付や時間など)の階層列のメンバーを検索すると、結果なしになります。
階層に基づいたステップ - 階層列に対するステップで、メンバーの選択に使用する関係のタイプを選択できます。ファミリ関係(子、親など)、特定の階層レベル(レベル・ベースの階層の場合のみ)またはレベル関係(レベル・ベースの階層の場合のみ)を選択できます。
グループと計算項目 - ステップにグループまたは計算項目を含めることができます。グループと計算項目は追加ステップにのみ使用できます。保持のみステップまたは削除ステップには使用できません。
「グループと計算項目の使用」を参照してください。
ステップは、様々な場所で表示できる「選択ステップ」ペインで作成します。
データ・ソースからのデータの選択基準を指定する際の指示を提供する選択ステップを作成します。分析に列を追加すると、暗黙的な「すべてのメンバーで開始」ステップが追加されます。「すべて」とは、フィルタ適用後の列のすべてのメンバーを意味します。
たとえば、「Office」列のメンバー(Baltimore、AustinおよびAthens)の基準を指定するステップを作成できます。
「結果」タブで選択ステップを作成すると、ユーザーが自分にとって最も重要なデータを選択できます。
ビューの特定の階層列または属性列に対するデータの選択を絞り込むために、右クリックの相互作用(「関連項目の追加」や「保持のみ」など)を使用すると、選択ステップが自動的に作成されます。「ビューの右クリック相互作用」を参照してください
分析に選択ステップを追加した後、「分析」エディタの「結果」タブに移動して、「選択ステップ」ビューを分析に追加します。選択ステップ・ビューを追加すると、その分析に適用された選択ステップをユーザーが実行時に表示できるようになります。「結果」タブの「選択ステップ」エディタを参照してください。
選択ステップをグループ・オブジェクトとして保存すると、それらを複数の場所で再利用できます。
選択ステップのセットを作成した場合、セットをグループ・オブジェクトとして保存し、再利用できます。「インラインまたは名前付きでのグループおよび計算項目の保存」を参照してください。
リポジトリが二重列用に構成されている場合、二重列に選択ステップを作成できます。
二重列上に選択ステップを作成するには、その列の表示値を選択します。その表示値に対応するコード値を使用してステップが自動的に評価されます。
二重列を使用する場合、注意して「新規計算項目」ダイアログを使用してください。計算項目のカスタム式に、データ・セットの最初の行からの列を指定する$1などの位置の演算子を含めることができます。位置の演算子を含める場合、式の評価時、表示値はコード値にマップされません。
「二重列機能の理解」を参照してください。
列に名前付きまたはインライン・フィルタを作成して特定のデータを表示できます。
「列フィルタの編集」を参照してください。
リポジトリが二重列用に構成されていて、次と等しい/次に存在する、次と等しくない/次に存在しないまたは次の間にある以外の演算子を使用し、表示値ではなくコード値を指定する場合、表示列ではなく、コード列を明示的に選択する必要があります。「二重列機能の理解」を参照してください。
保存済フィルタをオープンおよび編集する手順は、次のとおりです。
名前付きフィルタを編集して保存した場合は、フィルタが使用される場所にフィルタに対する変更が伝播されます。
このSQL関数により、標準以外のフィルタを追加できます。
この項には、EVALUATE_PREDICATE関数の使用に関する次のトピックが含まれています。
『Oracle Business Intelligence Enterprise Edition論理SQLリファレンス・ガイド』を参照してください。
EVALUATE_PREDICATE関数は、インライン・フィルタ句として追加できます。
この関数は、階層列には使用できません。Oracle BI EEのフィルタ演算子で適切なフィルタ句を作成できない場合にこの関数を使用します。この関数は、ブールを戻り値とするデータベース関数用で、SQL関数にのみ使用できます。EVALUATE_PREDICATEのサポートは、多次元のデータ・ソース全体には及んでいません。また、EVALUATE_PREDICATEをXMLデータ・ソースに使用できません。
インライン・フィルタ句としてEVALUATE_PREDICATE関数を追加するには、管理者からEVALUATE_PREDICATE関数の追加権限を付与されている必要があります。
例
EVALUATE_PREDICATE関数の使用方法の例は、次のとおりです。この例では、Products.P4 Brand値は、6文字より長い必要があります。実行後、この例では、P4 Brand列のデータの長さが6文字より長い(BizTechやHomeViewなど)行を返します。
SELECT 0 s_0, "A - Sample Sales"."Products"."P3 LOB s_1, "A - Sample Sales"."Products"."P4 Brand" s_2, "A - Sample Sales"."Base Facts"."1- Revenue" s_3 FROM "A - Sample Sales" Where EVALUATE_PREDICATE('length(%1)>6',"A - Sample Sales"."Products"."P4 Brand"). ORDER BY 1,2,3
この手順では、EVALUATE_PREDICATE関数をインライン・フィルタに追加する方法について説明します。
この関数は、階層列には使用できません。詳細は、フィルタにEVALUATE_PREDICATE関数を使用する方法およびOracle Business Intelligence Enterprise Edition論理SQLリファレンス・ガイドを参照してください。
分析でデータをフィルタしたい場合、名前付きフィルタを適用できます。
次の手順を使用して、名前付きフィルタを分析に適用します。
Shared Folders/2. Functional Examples/Filters/A - Sample Sales/Demo
です。列フィルタをANDやORブール演算子と組み合せ、グループ化することにより、SQL文を知らなくても複雑なフィルタを作成することができます。
グループ化または列フィルタの組合せにより、Oracle BI EEが分析をフィルタする優先順を定めることができます。
フィルタをグループ化する場合、フィルタには3つ以上のフィルタ・アイテムが含まれている必要があります。
フィルタとして使用する論理SQL WHERE句を作成または編集できます。
この機能は通常は必要ありませんが、高度なフィルタ機能を必要とするユーザーが使用します。SQL句の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Edition論理SQLリファレンス・ガイド』を参照してください。
フィルタをSQL文に変換した後は、フィルタ・アイテムは「高度なSQLフィルタ」ダイアログでSQL文として表示および編集できます。「フィルタの編集」ダイアログでは、フィルタを表示または編集できなくなります。
計算済メジャーは他のメジャーから導出され、式を使用して作成されます。
直接データベース問合せまたは組合せリクエストには計算済メジャーを追加できません。
次の手順で、計算済メジャーを作成します。
次のいずれかのアクションを実行します。
複合レイアウト内の列を含むデータ・ビューに計算済メジャーを作成するには、分析エディタ: 「結果」タブの「新規計算済メジャー」ボタンをクリックします。
複合レイアウト内の特定のデータ・ビューに計算済メジャーを作成するには、特定のデータ・ビューを編集して、「結果」タブのデータ・ビュー・エディタの「新規計算済メジャー」ボタンをクリックします。
「新規計算済メジャー」ダイアログの操作を完了します。
「OK」ボタンをクリックします。
計算済メジャーを編集するには:
計算済メジャーは、「分析」エディタの「基準」タブから編集できます。
ヒート・マトリックス、表、ピボット表、トレリスまたはグラフにデータを表示する方法として、グループまたは計算項目を作成できます。
グループや計算項目を使用すると、データ・ソースに存在しない新規メンバーを列に追加できます。これらのメンバーは、カスタム・メンバーとも呼ばれます。
グループは、選択したメンバーの静的リストまたは選択ステップによって生成される動的リストです。グループはメンバーとして表されます。階層列に対して作成されたグループはドリルできますが、属性列に対して作成されたグループはドリルできません。
グループでは、一緒に表示されるメジャー列の既存の集計関数が使用されます。集計は、Oracle BIサーバーの最下位詳細レベルから上方に行われますが、値が二重に集計されることはありません。
計算項目はメンバー間の計算で、ドリルできない1つのメンバーとして表されます。計算項目を作成する際、選択した集計方法(合計、平均、カスタム式など)に新規メンバーを追加します。計算は集計レベルで行われ、最下位詳細レベルでは行われません。
グループまたは計算項目の作成時に「すべてのビュー」オプションを選択すると、グループと計算項目の両方が分析全体の選択ステップになります。したがって、その分析のすべてのビューに使用されます。これらのグループおよび計算項目は、インライン・オブジェクトとしても、名前付きオブジェクトとしても保存できます。詳細は、「インラインまたは名前付きでのオブジェクトの保存」を参照してください。
「現在のビュー」オプションを選択して特定のビューに対するグループまたは計算項目を作成する場合、グループまたは計算項目は特定のアクティブなビューにのみ適用されます。
グループ(他の製品では「保存済選択」とも呼ばれます)は、列のユーザー定義メンバーです。
グループはメンバーのリストの場合も、メンバーのリストを生成するために実行する選択ステップのセットの場合もあります。すべてのメンバーは同じ属性列または階層列に属し、階層列内の階層レベルは異なっていてもかまいません。グループは常に、列リストの最下部に、追加された順(「選択ステップ」ペインに表示される順)に表示されます。グループには、メンバーまたは他のグループを含めることができます。カスタム・グループを作成して、ビュー内の列にカスタム・グループを追加できます。
グループはカタログに保存して再利用できます。たとえば、グループを分析およびダッシュボードの列プロンプトまたは変数プロンプトに適用できます。グループをプロンプトに適用すると、実行時、プロンプトでは、グループまたはグループのメンバーが選択リスト・オプションとしてユーザーに示されます。ユーザーがグループまたは列メンバーを選択した場合のプロンプトによる選択ステップのオーバーライドの詳細は、「列プロンプトによる選択ステップのオーバーライド」を参照してください。
計算項目はメンバー間の計算で、1つのメンバーとして表されます。
計算項目を使用すると、Oracle BIリポジトリで指定されているデフォルトの集計ルール、およびデザイナによって選択されている集計ルール(既存の分析の場合)をオーバーライドできます。計算項目は、カスタム式を使用して(デフォルト)または選択したメンバーと関数(SUMなど)を組み合せて定義できます。
計算項目は、ユーザーが定義した列のメンバーです。計算項目には、メンバーまたは他の計算項目を含めることができます。計算項目は常に、列リストの最下部に、追加された順(「選択ステップ」ペインに表示される順)に表示されます。計算項目はカタログに保存して再利用できます。
計算項目は、メンバーのセットを1つのエンティティとして表示したり操作する場合に便利です。たとえば、次のものに対して計算項目を定義できます。
地理的地域の主要な取引先
ハイエンドの製品
標準的でない期間(9月の最初の3週間など)
計算項目は、様々な場所で列に対して作成できます。計算は、メジャーに適用されるデフォルトの集計ルールとは異なります。「表とピボット表への合計の追加」を参照してください。内部では、計算項目は、SQLのSELECT文として処理され、指定された関数が結果セットに対して実行されます。『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Edition論理SQLリファレンス・ガイド』を参照してください。
グループまたは計算項目を使用して、新しいメンバーを列に追加します。
たとえば、モバイル・デバイスに対して生成された売上金額をレビューし、その数字を他の製品タイプと比較できます。「Product」列に対して、折り畳み式携帯電話とスマートフォンが含まれる「Mobile Devices」というグループを作成できます。次の手順を使用して、計算項目またはグループを作成します。
次のソリューションのいずれかを実装することについて、管理者に確認してください。
リポジトリのメジャーに対し、集計ルールを明示的に指定します。
Oracle OLAP分析ワークスペースのディメンション・メンバーとして適切な値のグループを作成します。
ユーザーに対して最も役立つ情報を表示するようにグループおよび計算項目を更新できます。
グループや計算項目は、様々な方法で編集できます。
「選択ステップ」ペインで計算項目またはグループのリンクをクリックし、「編集」をクリックして適切なダイアログを表示します。
オブジェクトをカタログに保存してある場合、「カタログ」ペインでオブジェクトを選択し、「編集」をクリックして適切なダイアログを表示します。
(外側エッジの)ヒート・マトリックス、表、ピボット表またはトレリスで、グループまたは計算項目を右クリックして「グループの編集」または「計算項目の編集」を選択します。
グループまたは計算項目の値は、次に示すように、フィルタや選択ステップの影響を受けることがあります。
フィルタ - グループまたは計算項目は、フィルタを使用して削除されていないメンバーのみを使用して評価されます。たとえば、SUM (EAST + WEST)という計算項目がある場合、フィルタでWESTを削除すると、 EASTの合計のみが計算項目として含められます。すべてのメンバーを削除すると、null値が返され、ヒート・マトリックス、表、ピボット表またはトレリスでは空のセルとして表示されます。
選択ステップ - 選択ステップを作成すると、ステップにグループまたは計算項目を追加できます。後続の保持のみステップまたは削除ステップで、グループまたは計算項目に含まれていたメンバーを参照する場合があります。
グループ・リストは、後続のステップで保持または削除されたメンバーの影響を受けますが、グループ・アウトライン値は同じままになります。たとえば、MyNewYorkグループにAlbanyとBuffaloが含まれ、その値が100とします。後続のステップでAlbanyが削除されるとします。MyNewYorkグループの値は100のままですが、Albanyはグループのリストには含まれません。
計算項目は、後続のステップで保持または削除されたメンバーの影響を受けません。
「現在のビュー」オプション・ボタンを使用して作成したすべてのビューからグループまたは計算項目を削除すると、グループまたは計算項目は残りますが、その後追加する新しいビューには追加されなくなります。
「すべてのビュー」オプション・ボタンを使用して作成したすべてのビューからグループまたは計算項目を削除すると、グループまたは計算項目は残り、その後追加する新しいビューに追加されます。
右クリック・メニューを使用してグループまたは計算項目を削除する場合は、次の点を考慮してください。
ダッシュボード・ページ内のビュー — 計算項目またはグループは、現在のビューからのみ削除されます。
ビュー・エディタ内のビュー — 計算項目またはグループは、すべてのビューからのみ削除されます。
別の分析で作成された列と同じ列にグループを追加できます。
分析に追加されるグループは、メンバーのリスト、または選択ステップのセットのいずれかとなります。これらのグループの詳細は、「グループ・オブジェクトとしての選択ステップの保存」を参照してください
グループを追加するには、「結果」タブを使用するか、「カタログ」ペインを使用して追加できます。次の方法でもグループを追加することができます。
「メンバー・ステップの編集」ダイアログの「アクション」ボックスで「グループまたは計算項目で開始」を選択し、「カタログ」ペインの「使用可能」リストからグループを選択します。
「選択ステップ」ペインで、適切な列に対する「次に、新規ステップ」をクリックし、「グループまたは計算項目の追加」を選択します。「既存のグループおよび計算項目の選択」を選択し、表示されたダイアログでグループを選択します。
グループや計算項目を使用していて、それらをネストする必要が生じる場合があります。ネストとは、たとえば、グループの内部にグループを作成することです。
次のリストに、グループおよび計算項目をネストする様々なシナリオを示します。
グループはネストできます。つまり、グループに他のグループを含めることができます。ネストしたグループはフラット化されています。たとえば、my_favorite_countriesグループにmy_favorite_citiesグループが含まれているとします。表にmy_favorite_countriesグループを表示して展開すると、my_favorite_citiesグループは表示されません。かわりに、my_favorite_citiesグループのメンバー値が表示されます。
計算項目はネストできます。つまり、計算項目に他の計算項目を含めることができます。
グループに計算項目を含めることはできません。計算項目にグループを含めることもできません。
選択ステップを使用する場合、次のようになります。
グループまたは計算項目を含む選択ステップは、結果が実行時に生成される一連のステップとして、または静的で毎回再表示される結果として保存できます。
ステップの保存済選択であるグループは「カタログ」ペインを使用して適用できます。保存済選択に計算項目に対するステップが含まれている場合にこれを行うと、グループのメンバーのみが追加されます。グループ自体は追加されません。
計算項目について理解するには、SQLについての基本的な理解が必要です。
この項の例と説明は、SQL文と構文に対する基本的な知識があることを前提としています。これらの例に示される構文は、「新規計算項目」ダイアログのカスタム式関数に適用されます。例は仮定のものです。すべての計算項目が示されているわけではありません。
例6-1 現在のメジャーの値の取得
この例は、SoftDrinkA
、SoftDrinkB
、SoftDrinkC
の各製品の現在のメジャーの値(売上金額など)を取得し、値を合計するコードを示します。
これは、「関数」リストから「SUM」を選択し、'SoftDrinkA'、'SoftDrinkB'、'SoftDrinkC'を入力またはクリックして、「関数」フィールドに追加するのと同じです。
sum('SoftDrinkA','SoftDrinkB','SoftDrinkC')
例6-2 現在のメジャーの最小値の取得
この例は、SoftDrinkA
またはSoftDrinkB
の現在のメジャー(売上金額など)の最小値、つまりいずれか小さい方を取得するコードを示します。
min('SoftDrinkA','SoftDrinkB')
この例と前の例では、各関数計算項目は、製品レイヤーなどの外側のレイヤーの各メンバーに対して実行されます。たとえば、軸に年と製品があり、先行する計算項目の1つが製品レイヤーに基づく場合、結果は年ごとに計算されます。
例6-3 外側のレイヤーの各アイテムの値の取得
この例には、年や製品などの外側のレイヤーの各アイテムの値を取得し、合計するコードが示されています。
SoftDrinkA
などの属性列の名前付きアイテムを指定するかわりに、$nや$-n(nはアイテムの行位置を示す整数)と指定できます。$nを指定すると、メジャーはn番目の行から取得されます。$-nと指定した場合、メジャーは最後からn番目の行から取得されます。
たとえば、売上金額の場合、$1でデータ・セットの最初の行からメジャーが取得され、$-1でデータ・セットの最後の行からメジャーが取得されます。
sum(*)
例6-4 メジャーの値の取得と合計
この例には、売上金額などの現在のメジャーの1番目、2番目および3番目の行からアイテムを取得し、合計するコードが示されています。
sum($1,$2,$3)
例6-5 売上値の合計
この例は、SoftDrinkA
、SoftDrinkB
およびSoftDrinkC
の売上を合計するコードを示します。例に示す2つの計算項目は同じです。つまり、Sumはデフォルトの関数であるため、省略できます。
'SoftDrinkA' + 'SoftDrinkB' + 'SoftDrinkC'
sum('SoftDrinkA','SoftDrinkB','SoftDrinkC')
例6-6 売上値の合計と最大値の戻し
この例には、SoftDrinkA
の売上とdiet SoftDrinkA
の売上を合計し、SoftDrinkB
の売上とdiet SoftDrinkB
の売上を合計して、2つの金額のうち大きい方を返すコードが示されています。
max('SoftDrinkA' + 'diet SoftDrinkA', 'SoftDrinkB' + 'diet SoftDrinkB')