プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド
12c (12.2.1.4.0)
E96106-04
目次へ移動
目次

前
次

12 プレゼンテーション・レイヤーの作成およびメンテナンス

Oracle BI管理ツールを使用してOracle BIリポジトリのプレゼンテーション・レイヤーでオブジェクトを作成、編集および維持する方法を学習します。

この章のトピックは、次のとおりです:

プレゼンテーション・レイヤーについて

カスタマイズされ、セキュアなロール・ベースのビジネス・モデルのビューをプレゼンテーション・レイヤーでユーザーに提供できます。

ロールベースのビューは、オブジェクトのセキュリティを実現するほか、ビジネス・モデルの複雑さを部分的に隠す方法も提供します。

プレゼンテーション・レイヤーで、潜在ファクト列を設定できます。プレゼンテーション・レイヤーの主要機能は、ユーザーの様々なグループにカスタム名、ディクショナリ・エントリ、編成およびセキュリティを提供することです。

プレゼンテーション・レイヤーのビューはサブジェクト領域といいます。以前のバージョンでは、サブジェクト領域はプレゼンテーション・カタログと呼ばれていました。ビジネス・モデルと同じ内容のサブジェクト領域を作成できる他に、1つのサブジェクトのみの表示や特定のビジネス・ロールのみをサポートするロール・ベースのサブジェクト領域の作成ができます。サブジェクト領域は抽象的なビューではありません。ユーザーの利益になる方法でコンテンツを組織するサブジェクト領域を作成してください。

プレゼンテーション・レイヤーでは、Oracle BIサーバーをODBCデータ・ソースとして使用するクライアント・ツールに対するカタログとしてサブジェクト領域が表示されます。サブジェクト・エリアには、プレゼンテーション表、プレゼンテーション列、プレゼンテーション階層およびプレゼンテーション・レベルが表示されています。

アンサーなどのクライアントからの論理SQLリクエストがプレゼンテーション表とプレゼンテーション列を問い合せていても、エンティティ、リレーションシップおよび結合のロジックは、ビジネス・モデルとマッピングのレイヤーにあります。

プレゼンテーション・レイヤーの作成およびカスタマイズ

ビジネス・モデルとマッピング・レイヤーを作成済であれば、管理ツールでビジネス・モデル全体をプレゼンテーション・レイヤーにドラッグ・アンド・ドロップして、サブジェクト・エリアを作成できます。

サブジェクト領域と他のプレゼンテーション・レイヤー・オブジェクトを手動で作成することもできます。

この項では、次の項目について説明します。

サブジェクト・エリアの作成について

プレゼンテーション・レイヤーではいくつかの方法でサブジェクト・エリアを作成できます。

推奨の方法は、ビジネス・モデルとマッピング・レイヤーからプレゼンテーション・レイヤーにビジネス・モデルをドラッグ・アンド・ドロップし、ユーザーに表示する内容に基づいてプレゼンテーション・レイヤーを変更することです。プレゼンテーション表どうしでの列の移動やユーザーに表示する必要のない列の削除が可能なほか、1つのプレゼンテーション表にすべてのデータを表示することもできます。メジャーの編成と分類がユーザーにとって意味のあるものになるようにプレゼンテーション表を作成できます。

既存のサブジェクト・エリアとそれに対応するビジネス・モデルを複製することもできます。「ビジネス・モデルとサブジェクト・エリアの複製」を参照してください。

各サブジェクト・エリアには1つのビジネス・モデルのコンテンツのみを表示できますが、1つのビジネス・モデルには複数のサブジェクト・エリアを作成できます。大規模なビジネス・モデルでは、ユーザーがコンテンツを効率的に利用できるようにするためにこの処置が必要になります。Oracle BIサーバーのユーザーは、対応するビジネス・モデルが同じである複数のサブジェクト領域にわたる問合せを作成できます。

1つのビジネス・モデルから複数のサブジェクト・エリアを作成する方法は数多くあります。その1つとして、目的のビジネス・モデルをプレゼンテーション・レイヤーに複数回ドラッグし、得られた各サブジェクト・エリアのプロパティやオブジェクトを必要に応じて編集する方法があります。

たとえば、GeographyおよびProductsディメンションを含むABCというビジネス・モデルがある場合、それをプレゼンテーション・レイヤーに2回ドラッグできます。デフォルト名ABCおよびABC#1を持つ2つのサブジェクト・エリアが作成されます。その後、そのサブジェクト・エリアを次のように編集できます。

  • ABCサブジェクト・エリアの名前をDEFに変更し、Geographyプレゼンテーション階層を削除します。

  • ABC#1サブジェクト・エリアの名前をXYZに変更し、Productsプレゼンテーション階層を削除します。

Oracle BIサーバーのユーザーは、Products階層を持つDEFサブジェクト領域とGeography階層を持つXYZサブジェクト領域の両方にわたる問合せを実行できます。

ノート:

1つのサブジェクト・エリアを問い合せる際、そのサブジェクト・エリアで公開されるすべての列は、同じサブジェクト・エリアで公開されるすべてのディメンションと互換性があります。ただし、複数のサブジェクト・エリアの列とディメンションを結合する場合は、互いに互換性のない列とディメンションの組合せが含まれないようにする必要があります。

たとえば、あるサブジェクト・エリアの列は、プロジェクトによって次元化されない可能性があります。別のサブジェクト領域のプロジェクト・ディメンションの列が、プロジェクト別に次元化されていない列とともにリクエストに追加された場合、問合せが結果を返すのに失敗するか、Oracle BIサーバーのエラー「リクエストされた詳細レベルXXXXにはファクト表が存在しません。」が発生する可能性があります。

論理的なスターとスノーフレークに基づくサブジェクト・エリアの自動作成

ビジネス・モデルにある論理スターごとまたは論理スノーフレークごとに自動的にサブジェクト・エリアを1つ作成できます。

論理スターも論理スノーフレークも、複数のディメンション表に接続して集中管理されるファクト表で構成されています。この機能を利用することでも、1つのビジネス・モデルから複数のサブジェクト・エリアを作成できます。

論理スターまたは論理スノーフレークを構成するファクト表ごとにサブジェクト・エリアを作成するには、ビジネス・モデルを右クリックして「Logical StarsとSnowflakes向けのサブジェクト・エリアの作成」を選択します。新しいサブジェクト・エリアが自動的に作成され、それぞれにはファクト表とそれが関連付けられているディメンション表のみが納められています。このオプションは、論理スターまたは論理スノーフレークを持つあらゆるビジネス・モデルで利用できます。

たとえば、9つのファクト表を持つSampleAppビジネス・モデルでこのオプションを選択すると、各ファクト表に対応するサブジェクト・エリアが9つ作成され、それぞれに1つのファクト表とそれに関連付けられたディメンション表が納められています。サブジェクト・エリアは参照表についても作成されます。この図は、論理的なファクト表とディメンション表がプレゼンテーション・レイヤーでモデル化されている様子を示しています。

列の削除について

カスタム・プレゼンテーション・レイヤーを使用する重要な理由として、スキーマの使用と理解をできるかぎり容易にすることがあります。

プレゼンテーション・レイヤーをカスタマイズして、無意味な内容を提示する列がユーザーに表示されないようにします。

プレゼンテーション・レイヤーから除外することが必要な列として、たとえば次のようなものがあります。

  • ビジネス上の意味がないキー列

  • ユーザーが見る必要のない列(テキストによる説明が表示される場合のコードなど)

  • ユーザーには読み取る権限がない列

プレゼンテーション列をユーザーにわかりやすい名前に変更

効率的なメンテナンスのために、プレゼンテーション列の名前とそのソースである論理列の名前を同期された状態に維持する必要があります。

デフォルトでは、プレゼンテーション列の名前は、ビジネス・モデルとマッピング・レイヤーの中でそれが対応する論理列の名前と同じになっています。

プレゼンテーション列名とそのソース論理列名を同期するには、「プレゼンテーション列」ダイアログで「論理列名の使用」を選択します。

場合によっては、これとは異なるプレゼンテーション列名をユーザーに表示する必要性があることも考えられます。その場合は、「プレゼンテーション列」ダイアログでプレゼンテーション列の名前を変更します。

プレゼンテーション列の名前を変更すると、変更前の名前について自動的に別名が作成されるので、古い名前との互換性を維持できます。「プレゼンテーション・レイヤー・オブジェクトの別名(シノニム)の作成」を参照してください。

ノート:

プレゼンテーション・レイヤー・オブジェクトの名前を、同じタイプのオブジェクトの別名としてすでに使用されている名前に変更することはできません。

サブジェクト・エリアでの論理キーのエクスポート

プレゼンテーション・レイヤーのサブジェクト・エリアごとに、そのサブジェクト・エリアにアクセスするツールに、任意の論理キーをキー列としてエクスポートするかどうかを指定できます。

Oracle BIプレゼンテーション・サービスのユーザーにとって論理キーのエクスポートは無関係ですが、問合せやレポート作成のツールの中にはこれによって利点が得られるものがあります。

論理キーをエクスポートする場合は、表のフォルダに論理列が存在することを確認します。そのような場合は、ビジネス・モデル側で論理キーと外部キーの結合を使用する必要があります。

「サブジェクト・エリア」ダイアログで「論理キーのエクスポート」オプションを選択すると、プレゼンテーション・レイヤーの中でビジネス・モデルとマッピング・レイヤーのキー列となっているすべての列が、ODBCクライアントに対するキー列として表示されます。これはデフォルト選択です。ほとんどの状況でこのオプションを選択する必要があります。

ノート:

Microsoft Accessのようにパラメータ化SQL問合せを発行するツールを使用している場合は「論理キーのエクスポート」オプションは選択しないでください。パラメータ化問合せを発行できなくなります。

サブジェクト・エリアでの潜在ファクト列の設定

プレゼンテーション・レイヤーのサブジェクト・エリアごとに1つの潜在ファクト列を設定できます。

潜在ファクト列は、2つ以上のディメンション表の列を含みメジャーを含まない場合、問合せに追加されます。

この列は、結果には表示されません。これは、使用可能な代替またはコンテキストが複数存在する場合にディメンション表間のデフォルトの結合パスを指定するために使用されます。

潜在ファクトが構成されていない場合、Oracle BIサーバーはファクト論理表ソース(LTS)を使用して、ディメンション限定のサブリクエスト(複数のディメンション参照が含まれていてファクト参照が含まれていないもの)に答えます。

Oracle BIサーバーは、構成された潜在ファクト列が結合されるディメンションに関連しない場合、ファクトLTSを使用することもあります。たとえば、潜在ファクト列がディメンション限定のサブリクエストよりも高いレベルでのレベルベースのメジャーの場合に、これが発生することがあります。

プレゼンテーション・レイヤーのメンテナンス

ビジネス・モデルとマッピング・レイヤーとプレゼンテーション・レイヤーとの間ですべての変更を自動的に同期化する手段は存在しません。

たとえば、既存の論理表に論理列を追加した場合や既存の列を編集した場合は、対応するプレゼンテーション・レイヤー・オブジェクトを手動で更新する必要があります。

一方、管理ツールでは、プレゼンテーション列名を、それに対応する論理列名に自動的に同期化できます。この機能を活用するには、「プレゼンテーション列」ダイアログで「論理列名の使用」を選択していることを確認します。

論理表に多量の変更が発生している場合やビジネス・モデル全体にも変更がある場合は、対応するプレゼンテーション表またはサブジェクト・エリアを削除し、更新した論理オブジェクトをプレゼンテーション・レイヤーにドラッグ・アンド・ドロップする方法が最も簡単です。この理由から、ビジネス・モデルとマッピング・レイヤーがある程度安定するまで待ったうえで、プレゼンテーション・レイヤーをカスタマイズすることをお薦めします。

サブジェクト・エリアでの作業

プレゼンテーション・レイヤーでは、サブジェクト・エリアによって、ビジネス・モデルの様々なビューを様々なセットのユーザーに表示できます。

1つのビジネス・モデルからのコンテンツを使用して、サブジェクト領域に移入します。サブジェクト領域は、複数のビジネス・モデルにわたることはできません。

論理レイヤーからビジネス・モデルをドラッグ・アンド・ドロップすることで、サブジェクト領域を自動的に作成できます。

「プレゼンテーション・レイヤー・オブジェクトに対する権限の設定」を参照してください。

『Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』の「Oracle Business Intelligenceのローカライズ」を参照してください。

「プレゼンテーション・オブジェクトの表示の制御」および「プレゼンテーション・レイヤー・オブジェクトの別名(シノニム)の作成」を参照してください。

  1. プレゼンテーション・レイヤーでサブジェクト・エリアをダブルクリックします。
  2. 「一般」タブでサブジェクト・エリアの名前を変更できます。

    ノート:

    プレゼンテーション・オブジェクトの名前を変更すると自動的に別名が作成されるので、元の名前を使用した問合せも問題なく実行できます。

    サブジェクト領域の名前をその子プレゼンテーション表と同じものにすることはできません。たとえば、Customerという名前のサブジェクト・エリアにCustomerという名前の表は作成できません。

  3. このサブジェクト・エリアに権限を設定するには、「権限」をクリックします。
  4. 「カスタム表示名」を選択して、セッション変数に基づいた名前を動的に表示し、「変換キー」フィールドを編集します。「カスタム説明」を選択して、セッション変数に基づいたカスタム説明を動的に表示します。

    これらのオプションは、通常はローカライゼーションの目的で使用されます。プレゼンテーション・レイヤー内で文字列を外部化し、「文字列の外部化」ユーティリティを実行すると、その結果にはセッション変数の情報および変換キーが含まれます。

  5. 「ビジネス・モデル」リストには、このサブジェクト・エリアのビジネス・モデルが表示されます。
  6. オプション「論理キーのエクスポート」を選択して、論理キーを他のアプリケーションに公開します。

    ほとんどの状況でこのオプションを選択する必要があります。多くのクライアント・ツールではキー列とそれ以外の列を区別するので、「論理キーのエクスポート」オプションを選択することで、クライアント・ツールからキー列のメタデータにアクセスできます。ただし、Oracle BIサーバーではリポジトリで定義された結合を使用するので、クライアント・ツールで問合せに追加した結合条件はすべて無視されます。

    ノート:

    Microsoft Accessのように、パラメータ化SQL問合せを発行するツールを使用する場合は、「論理キーのエクスポート」オプションを選択しないでください。このオプションを選択していると、論理キーをエクスポートしない場合にはそのツールでパラメータ化問合せを発行できなくなります。

  7. (オプション)「潜在ファクト列」を設定します。
    この列は、2つ以上のディメンション表の列を含みメジャーを含まない場合、問合せに追加されます。この列は、結果には表示されません。これは、使用可能な代替またはコンテキストが複数存在する場合にディメンション表間のデフォルトの結合パスを指定するために使用されます。
  8. (オプション)「オブジェクト非表示の条件」フィールドで、このサブジェクト領域をアンサーおよびBIコンポーザの「サブジェクト領域ツリー」で表示するかどうかを制御する式を指定します。オブジェクトを表示するには、このフィールドを空白のまま(デフォルト)にします。
  9. (オプション)説明を入力します。この説明は、Oracle BIアンサーでサブジェクト領域のマウスオーバー・ツールチップに表示されます。
  10. 「プレゼンテーション表」タブで、このサブジェクト・エリアのプレゼンテーション表について、追加、削除、編集または並替えが可能です。
  11. このサブジェクト・エリアの別名を指定または削除するには「別名」タブを使用します。
  12. 「OK」をクリックします。

プレゼンテーション表とプレゼンテーション列での作業

これらのトピックでは、プレゼンテーション表および列をカスタマイズする方法について学習します。

Oracle BIアンサーでは、プレゼンテーション表とプレゼンテーション列がそれぞれフォルダと列として表示されます。ユーザーがそれぞれのビジネス・ニーズに基づいて問合せを作成できるように、プレゼンテーション表とプレゼンテーション列をカスタマイズできます。

この項では、次の項目について説明します。

プレゼンテーション表の作成および管理

プレゼンテーション表を使用して、ユーザー・コミュニティにとって意味のあるカテゴリに列を分類できます。

プレゼンテーション表には、1つ以上の論理表から列を含めることができます。プレゼンテーション表の名前とオブジェクト・プロパティは論理表のプロパティとは無関係です。プレゼンテーション表は、論理レイヤーから論理表をドラッグ・アンド・ドロップすることで自動的に作成されます。プレゼンテーション表には、その親サブジェクト・エリアと同じ名前を付けることはできません。たとえば、Customerという名前のサブジェクト・エリアにCustomerという名前の表は作成できません。

プレゼンテーション・オブジェクトの名前を変更すると自動的に別名が作成されるので、元の名前を使用した問合せも問題なく実行できます。「別名」タブで、このプレゼンテーション表の別名を指定または削除できます。「プレゼンテーション・レイヤー・オブジェクトの別名(シノニム)の作成」を参照してください。

プレゼンテーション表を作成するときにローカライゼーションのために次を行います。

  • 「カスタム表示名」を使用して、セッション変数に基づいた名前を動的に表示します。

  • 「カスタム説明」を使用して、セッション変数に基づいたカスタム説明を動的に表示します。

  • 「変換キー」をカスタム表示名とともに使用して、ユーザー・インタフェースをローカライズします。

プレゼンテーション・レイヤー内で文字列を外部化し、「文字列の外部化」ユーティリティを実行すると、その結果にはセッション変数の情報および変換キーが含まれます。『Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』 の「Oracle Business Intelligenceのローカライズ」を参照してください。

「子プレゼンテーション表」タブを使用して、Oracle BIアンサーおよびBIコンポーザでネストされたフォルダとして表示するプレゼンテーション表を指定します。「BIコンポーザでのフォルダのネスト」および「プレゼンテーション・オブジェクトの表示の制御」を参照してください。

「プレゼンテーション・レイヤー・オブジェクトに対する権限の設定」を参照してください。

  1. プレゼンテーション・レイヤーのサブジェクト・エリアで、プレゼンテーション表をダブルクリックして「プロパティ」ダイアログを開きます。
  2. (オプション)プレゼンテーション表の「プロパティ」ダイアログで、「一般」タブのプレゼンテーション表の名前を変更します。
  3. 「オブジェクト非表示の条件」フィールドを空白のままにします。
  4. (オプション)「列」タブで、選択したプレゼンテーション表のプレゼンテーション列の追加、削除、編集または並替えを行います。
  5. 「階層」タブで、選択したプレゼンテーション表のプレゼンテーション階層の追加、削除、編集または並替えを行います。
  6. 変更が完了したら、「OK」をクリックします。

プレゼンテーション・レイヤーの表の並替え

このタスクを使用して、サブジェクト・エリアで表の並替えまたはすべての表のソートを実行します。

  1. プレゼンテーション・レイヤーでサブジェクト・エリアをダブルクリックします。
  2. 「サブジェクト・エリア」ダイアログでI「プレゼンテーション表」タブをクリックします。
  3. 「名前」リストで、表を選択してドラッグ・アンド・ドロップを使用して表の位置を変更するか、「上へ」ボタンと「下へ」ボタンをクリックして表を移動します。
  4. 「名前」列ヘッダーをクリックして、すべての表をアルファベット順にソートします。
    ソート操作では、アルファベットの昇順(AからZ)と降順(ZからA)の間で順序が変更されます。

プレゼンテーション列について

プレゼンテーション列は、Webクライアントに表示されるビジネス・インテリジェンス・データを提供します。

プレゼンテーション列を作成するには、Oracle BI管理ツールのビジネス・モデルとマッピング(論理)レイヤーからプレゼンテーション・レイヤーに論理列をドラッグ・アンド・ドロップします。プレゼンテーション表に追加される新しい列に、既存の列と同じ名前または別名を使用することはできません。

ビジネス・モデルとマッピング・レイヤーにある1つの論理表の列を複数のプレゼンテーション表にドラッグ・アンド・ドロップできます。たとえば、ボリューム・メジャーを含むもの、シェア・メジャーを含むもの、1年前のメジャーを含むものなど、様々なメジャーのクラスを持つ複数のプレゼンテーション表を作成できます。

プレゼンテーション列の名前を編集するには、管理ツール ・オプションで「プレゼンテーション名の編集」を有効にする必要があります。「管理ツールのオプションの設定」および「プレゼンテーション・レイヤー・オブジェクトに対する権限の設定」を参照してください。

「カスタム表示名」「カスタム説明」および「変換キー」は、ローカライゼーション目的で使用できます。プレゼンテーション・レイヤー内で文字列を外部化し、「文字列の外部化」ユーティリティを実行すると、その結果にはセッション変数の情報および変換キーが含まれます。『Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』の「Oracle Business Intelligenceのローカライズ」を参照してください。

「カスタム表示名」フィールドと「カスタム説明」フィールドを使用して、ADFデータ・ソースからUIヒント(ラベルとツールチップ)をOracle BIアンサーに伝播して表示することができます。ADFデータ・ソースからのラベルおよびツールチップの伝播を参照してください。

プレゼンテーション・オブジェクトの名前を変更すると自動的に別名が作成されるので、元の名前を使用した問合せも問題なく実行できます。

プレゼンテーション列名の変更

デフォルトでは、プレゼンテーション列の名前は、ビジネス・モデルとマッピング・レイヤーの論理列名と同じです。プレゼンテーション列名は変更できます。

  1. Oracle BI管理ツールを開きます。
  2. プレゼンテーション・レイヤーで、変更するプレゼンテーション列をダブルクリックします。
  3. 「プレゼンテーション列」ダイアログで、「論理列名の使用」フィールドのチェックを外します。
  4. 論理列名フィールドの横にある「編集」をクリックします。
  5. 「論理列」ダイアログの「名前」フィールドに、プレゼンテーション列で使用する新しい名前を入力します。
  6. 「論理列」ダイアログで、その他の変更を行い、「OK」をクリックします。
  7. 「プレゼンテーション列」ダイアログで、「カスタム表示名」をクリックしてから、「OK」をクリックします。

プレゼンテーション列の並替え

プレゼンテーションの列の順序は変更できます。

  1. Oracle BI管理ツールを開きます
  2. プレゼンテーション・レイヤーでプレゼンテーション表を右クリックして「プロパティ」を選択します。
  3. 「列」タブをクリックします。
  4. 並べ替える列を選択します。
  5. その列をドラッグ・アンド・ドロップして位置を変更するか、「上へ」ボタンと 「下へ」ボタンをクリックします。
  6. 「OK」をクリックします。

アンサーおよびBIコンポーザでのフォルダのネスト

「プレゼンテーション表」ダイアログの「子プレゼンテーション表」タブを使用して、子プレゼンテーション表を指定できます。

アンサーおよびBIコンポーザでネストされたフォルダを表示する子プレゼンテーション表を指定します。この方法を使用してネストの複数のレイヤーを追加できます。

この図は、指定の子プレゼンテーション表がアンサーでどのようにネストされて表示されるかを示しています。

フォルダはネストされているように見えます。実際にはドリルダウンでネストされておらず、オブジェクトの修飾名は同じままです。管理ツールのプレゼンテーション・レイヤーでは、ネストは表示されません。ネストはアンサーおよびBIコンポーザにのみ表示されます。この機能は、プレゼンテーション表でのみ機能し、他のプレゼンテーション・レイヤー・オブジェクトでは機能しません。

整合性チェックを実行すると、整合性チェック・マネージャにより、親子プレゼンテーション表の割当てにおける循環が検出されます。また、親プレゼンテーション表を持たない子プレゼンテーション表を含むプロジェクト定義を検出して報告します。

以前に、プレゼンテーション表名の先頭にハイフンを付けるか、プレゼンテーション表の説明の先頭に矢印を付けてネストを作成した場合は、プレゼンテーション・フォルダの変換・ユーティリティを実行して、メタデータを新しい構造に変換する必要があります。「プレゼンテーション・フォルダの変換ユーティリティの使用」を参照してください。

プレゼンテーション階層とプレゼンテーション・レベルでの作業

プレゼンテーション階層とプレゼンテーション・レベルは、Oracle BIアンサーでマルチディメンション・モデルを公開するための明示的な方法を提供します。

プレゼンテーション・レイヤーでプレゼンテーション階層とプレゼンテーション・レベルを定義しておくと、Oracle BIアンサーのナビゲーション・ペインにロールアップ情報が表示されるので、ユーザーは重要なコンテキスト情報を得ることができます。

プレゼンテーション階層のメンバーは、プレゼンテーション・レイヤーには表示されません。Oracle BIアンサーで階層のメンバーを表示できます。

ユーザーはプレゼンテーション階層およびレベルのオブジェクトを使用して、階層ベースの問合せを作成できます。プレゼンテーション階層は、メンバーの選択、カスタム・メンバー・グループ、非対称型問合せなどの分析機能を公開します。

ローカライゼーション情報を提供し、プレゼンテーション階層とプレゼンテーション・レベルにファイングレインなアクセス制御も適用できます。

以前のリリースのリポジトリがある場合は、Oracle BIリポジトリのアップグレード・プロセスを実行しても、プレゼンテーション階層がプレゼンテーション・レイヤーに自動的には表示されません。ビジネス・モデルとマッピング・レイヤーから論理ディメンションを適切なプレゼンテーション表にドラッグすることにより、プレゼンテーション階層およびレベルのオブジェクトを手動で作成する必要があります。

この項では、次の項目について説明します。

プレゼンテーション階層の作成および管理

プレゼンテーション階層を作成するには、論理ディメンション階層をビジネス・モデルとマッピング・レイヤーからプレゼンテーション・レイヤーの表にドラッグします。

プレゼンテーション階層オブジェクトは、論理ディメンションが表のピア・オブジェクトであるビジネス・モデルとマッピング・レイヤーとは異なり、プレゼンテーション表内にある必要があります。プレゼンテーション階層は、Oracle BIアンサーでそれらに関連付けられた表内にも表示され、概念的に単純なモデルを提供します。

論理ディメンションがビジネス・モデルとマッピング・レイヤーの中で複数の論理表にわたっている場合は、個別の論理表をプレゼンテーション・レイヤーの中で単独のプレゼンテーション表としてモデル化する方法が最良です。

プレゼンテーション階層はいくつかの方法で作成できます。

  • ビジネス・モデル全体をプレゼンテーション・レイヤーにドラッグすると、他のプレゼンテーション・オブジェクトと並んで、プレゼンテーション階層と構成レベルが自動的に表示されます。

  • 論理ディメンション表をプレゼンテーション・レイヤーにドラッグすると、プレゼンテーション階層とこれらのディメンションに基づくレベルが自動的に作成されます。

  • 個々の論理ディメンションを適切なプレゼンテーション表にドラッグして、その表の中に対応するプレゼンテーション階層を作成することもできます。

  • リポジトリにある他の大半のオブジェクトと同様に、プレゼンテーション表を右クリックして、「新規オブジェクト」を選択し、次に、「プレゼンテーション階層」を選択して、オブジェクトを手動で定義できます。

ビジネス・モデルとマッピング・レイヤーから個々の論理レベルをプレゼンテーション表にドラッグして、論理ディメンション階層のサブセットであるプレゼンテーション階層を作成することもできます。

たとえば、All Markets、Total US、Region、District、MarketおよびMarket Keyの各レベルを持つディメンションがあるとします。この論理ディメンション全体を、対応するプレゼンテーション表にドラッグ・アンド・ドロップすると、次のようになります。

一方、同じプレゼンテーション表にRegionレベルをドラッグ・アンド・ドロップすると次のようになります。

プレゼンテーション・レイヤーでの複数階層を持つディメンションのモデル化

複数の論理階層を持つ論理ディメンションの場合、複数の独立したプレゼンテーション階層が作成されます。

たとえば、次に示す論理ディメンションProductは、CategoryとCountryという2つの階層を持っています。

ビジネス・モデルとマッピング・レイヤーでは、この論理ディメンションが、複数階層を含む単一のディメンション・オブジェクトとしてモデル化されます。対照的に、プレゼンテーション・レイヤーでは、このディメンションは2つの個別のオブジェクトとしてモデル化されます。次のように、1つはCategoryレベルを通るドリル・パスを表示し、もう1つはCountryレベルを通るドリス・パスを表示します。

プレゼンテーション階層オブジェクトの編集

プレゼンテーション階層のプロパティを編集する方法を学習します。

プレゼンテーション階層のプロパティは編集可能です。ロールベースのアクセス制御を適用する権限の設定、ローカライゼーションを目的としたカスタム表示名の設定、階層でのレベルの変更などができます。

「列の表示」タブは親子階層でのみ使用できます。親子階層にはレベルが存在しないので、表示列はプレゼンテーション階層オブジェクト全体に対して定義します。この親子階層の表示でどの列を使用するかを定義するには、「列の表示」タブを使用します。

表示列は追加、削除または並替えが可能です。また、「編集」ボタンをクリックして特定の列のプロパティを編集することもできます。

「レベル」タブには、階層の中でのレベルとその順序が一覧で表示されます。親子階層ではこのタブは表示されません。レベルに対しては、追加、削除または並替えが可能です。「編集」ボタンをクリックして、特定のレベルのプロパティを編集することもできます。「プレゼンテーション・レベルの作成および管理」を参照してください。

「プレゼンテーション・レイヤー・オブジェクトに対する権限の設定」を参照してください。

「別名」タブを使用して、このプレゼンテーション階層の別名を指定または削除できます。「プレゼンテーション・レイヤー・オブジェクトの別名(シノニム)の作成」を参照してください。

「プレゼンテーション・オブジェクトの表示の制御」および『Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』の「Oracle Business Intelligenceのローカライズ」を参照してください。

  1. プレゼンテーション・レイヤーでプレゼンテーション階層をダブルクリックして「プレゼンテーション階層」ダイアログを表示します。
  2. 「一般」タブで次の変更が可能です。
    • 名前。プレゼンテーション・オブジェクトの名前を変更すると自動的に別名が作成されるので、元の名前を使用した問合せも問題なく実行できます。

      ノート:

      プレゼンテーション階層の名前を編集するには、「プレゼンテーション名の編集」管理ツール・オプションを有効にする必要があります。

    • 権限。

    • 「カスタム表示名」および「カスタム説明」「カスタム表示名」を選択して、セッション変数に基づいた名前を動的に表示し、「変換キー」フィールドを編集します。「カスタム説明」を選択して、セッション変数に基づいたカスタム説明を動的に表示します。

      これらのオプションは、通常はローカライゼーションの目的で使用されます。プレゼンテーション・レイヤー内で文字列を外部化し、「文字列の外部化」ユーティリティを実行すると、その結果にはセッション変数の情報および変換キーが含まれます。

    • 論理ディメンション。このフィールドには、このプレゼンテーション階層の論理ディメンションの名前が表示されます。異なる論理ディメンションを選択するには、「参照」をクリックします。

    • オブジェクト非表示の条件。このフィールドでは、このプレゼンテーション階層をアンサーおよびBIコンポーザの「サブジェクト領域ツリー」で表示するかどうかを制御する式を指定できます。オブジェクトを表示するには、このフィールドを空白のまま(デフォルト)にします。

プレゼンテーション・レベルの作成および管理

普通は、プレゼンテーション階層を作成すると、プレゼンテーション・レベルが自動的に作成されます。

プレゼンテーション・レベルは、Oracle BIアンサーで階層列に表示されます。

次を参照してください。

プレゼンテーション・レベルの名前を編集するには、「プレゼンテーション名の編集」管理ツール・オプションを有効にする必要があります。

プレゼンテーション・オブジェクトの名前を変更すると自動的に別名が作成されるので、元の名前を使用した問合せも問題なく実行できます。

「論理レベル」フィールドには、このプレゼンテーション・レベルの論理レベルの名前が表示されます。

「カスタム表示名」および「カスタム説明」オプションは、通常はローカライゼーションの目的で使用されます。プレゼンテーション・レイヤー内で文字列を外部化し、「文字列の外部化」ユーティリティを実行すると、その結果にはセッション変数の情報および変換キーが含まれます。

「オブジェクト非表示の条件」フィールドに式を指定しても、Oracle BIアンサーおよびBIコンポーザの「サブジェクト領域ツリー」のプレゼンテーション・レベルの表示には影響しません。

「レベルへのドリル」タブと「レベルからのドリル」タブ、および「ドリル・グラフの生成」は、現在は使用されていません。

「列の表示」タブを使用して、該当のレベルをドリルダウンしたときの表示に使用する列を定義します。たとえば、「名前」「ID」という2つの列が同じレベルに存在している場合、ユーザーには名前の方がわかりやすいので、「名前」が表示されるように選択できます。プレゼンテーション・レベルを作成したときにデフォルトで表示される表示列は、対応する論理レベルのどのキー列で「表示に使用」オプションが選択されているかに基づいて決まります。

表示列は追加、削除または並替えが可能です。また、「編集」ボタンをクリックして特定の列のプロパティを編集することもできます。

  1. プレゼンテーション・レイヤーでプレゼンテーション・レベルをダブルクリックして「プレゼンテーション・レベル」ダイアログを表示します。
  2. 「一般」タブで、プレゼンテーション・レベルに「名前」を入力します。
  3. 「権限」をクリックして、アプリケーション・ロールおよびユーザーごとに、プレゼンテーション・レベルへのアクセスを指定します。
  4. (オプション)「カスタム表示名」を選択して、セッション変数に基づいた名前を動的に表示し、「変換キー」フィールドを編集します。
  5. (オプション)「カスタム説明」を選択して、セッション変数に基づいたカスタム説明を動的に表示します。
  6. (オプション)「参照」をクリックして、異なる「論理レベル」を選択します。
  7. 「プレゼンテーション」レイヤーでプレゼンテーション列をプレゼンテーション・レベルにドラッグすると、プレゼンテーション・レベルの表示列としてドラッグした列が自動的に追加されます。
  8. 「別名」タブで、プレゼンテーション・レベルの別名を指定または削除します。

プレゼンテーション・レイヤー・オブジェクトに対する権限の設定

アクセス制御を適用して、特定のプレゼンテーション・レイヤー・オブジェクトにアクセスできる個々のユーザーまたはアプリケーション・ロール(グループ)を制限できます。

たとえば、あるプレゼンテーション表のセットについて、特定のアプリケーション・ロールには読取り専用アクセス、別のアプリケーション・ロールには読取り/書込みアクセスをそれぞれ許可し、さらに別のアプリケーション・ロールにはアクセスをいっさい許可しないという設定が可能です。「グループおよびアプリケーション・ロールを使用したユーザーへの権限の付与」を参照してください。

Identity Managerを使用して権限を設定することもできます。プレゼンテーション・レイヤーで権限を設定できるオブジェクトは一度に1つのみなので、多数のオブジェクトに対する個々のアプリケーション・ロールの権限を同時に設定する場合はIdentity Managerが便利です。「オブジェクト権限の設定」および「リポジトリ・オブジェクトへのデータ・アクセス・セキュリティの適用」を参照してください。

AuthenticatedUserアプリケーション・ロール(新しいリポジトリ・オブジェクトに関連付けられるデフォルトのアプリケーション・ロール)にデフォルトで付与する権限のレベルを制御できます。これを行うには、NQSConfig.INIファイル内のDEFAULT_PRIVILEGESパラメータを設定します。

プレゼンテーション・レイヤー・オブジェクトの権限を設定するには:

  1. プレゼンテーション・レイヤーで、サブジェクト・エリア、表、列、階層などのプレゼンテーション・オブジェクトをダブルクリックします。
  2. 「一般」タブで「権限」をクリックします。
  3. 「権限」ダイアログでは、「デフォルト」の権限を持つユーザーやアプリケーション・ロールは「ユーザー/アプリケーション・ロール」リストに表示されません。「デフォルト」の権限を持つユーザーやアプリケーション・ロールを表示するには「すべてのユーザー/アプリケーション・ロールの表示」を選択します。

    オンライン・モードでは、「すべてのユーザー/アプリケーション・ロールの表示」を選択していても、デフォルトではユーザーが取得されないようになっています。取得するユーザーのセットを指定するには、「オンライン・ユーザー・フィルタの設定」をクリックします。

    フィルタはデフォルトでは空になっています。これは、ユーザーは一切取得されないことを意味します。すべてのユーザーを取得するには*と入力します。特定のユーザーのセットを取得するには、文字の組合せを入力します。たとえば、文字Aで始まるすべてのユーザーを取得するには、A*と入力します。このフィルタでは、大文字と小文字は区別されません。

  4. ユーザーごとおよびアプリケーション・ロールごとに、次のオプションのいずれかを選択することで、このプレゼンテーション・オブジェクトに対するアクセス権限を許可または拒否できます。
    • 読取り。このオブジェクトに対しては読取りアクセスのみを許可します。

    • 読取り/書込み。このオブジェクトに対しては読取りと書込みの両方のアクセスを提供します。

    • アクセス権なし。このオブジェクトに対するすべてのアクセスを明示的に定義します。

    • デフォルト。権限を親オブジェクトから継承します。サブジェクト・エリアの場合、それらは最上位レベルのオブジェクトであるため、「デフォルト」はAuthenticatedUserアプリケーション・ロールに付与される権限と同等です。

  5. 「OK」をクリックします。
  6. このプレゼンテーション・オブジェクトの「プロパティ」ダイアログで「OK」をクリックします。

プレゼンテーション・レイヤー・オブジェクトの権限レポートの生成

個々のプレゼンテーション・レイヤー・オブジェクトの権限レポートを生成して、そのオブジェクトに権限が適用されている様子をサマリーで確認できます。

「権限レポート」には、プレゼンテーション・オブジェクトの名前と説明の他に、ユーザーとアプリケーション・ロールおよびその権限がリストされます。

  1. Oracle BI管理ツールで、リポジトリをオンラインまたはオフライン・モードで開きます。
  2. 「プレゼンテーション」レイヤーで、オブジェクトを右クリックして、「権限レポート」を選択します。

「権限」ダイアログでの列のソート

「権限」ダイアログでタイプおよびユーザー名またはアプリケーション・ロール名をソートする方法は6種類あります。

ソートを変更するには、1番目の列または2番目の列のヘッダーをクリックします。1番目の列にはヘッダーがなく、ユーザーまたはアプリケーション・ロールのタイプを表すアイコンが表示されています。2番目の列には、ユーザー・オブジェクトまたはアプリケーション・ロール・オブジェクトの名前が表示されています。

ノート:

個々のオブジェクト権限(「読取り」や「読取り/書込み」など)の列ではソートできません。

タイプでソートする方法は3種類あり、ユーザー名またはアプリケーション・ロール名のリストをソートする方法は3種類あります。したがって、ソートでは6種類(3 x 2 =6)の方法を使用できます。タイプ列をクリックして得られるソート結果を次に示します。

  • AuthenticatedUser、「アプリケーション・ロール」、「ユーザー」(タイプ名の昇順)。

  • 「ユーザー」、「アプリケーション・ロール」、AuthenticatedUser(タイプ名の降順)。

  • タイプ列に特定の順序はありません。「ユーザー/アプリケーション・ロール」列のすべての名前は、その列の値の昇順でソートされるため、タイプの値は無視されます。

「ユーザー/アプリケーション・ロール」列をクリックして得られるソート結果を次に示します。

  • タイプの昇順

  • タイプの降順

プレゼンテーション・レイヤー・オブジェクトの別名(シノニム)の作成

各プレゼンテーション・オブジェクトには、その名前の別名(シノニム)のリストを設定でき、それを論理SQL問合せで使用できます。

別名のリストを作成するには、適切なプレゼンテーション・オブジェクト(サブジェクト・エリア、プレゼンテーション表、プレゼンテーション階層、プレゼンテーション・レベルまたはプレゼンテーション列など)の「プロパティ」ダイアログにある「別名」タブを使用します。

プレゼンテーション・レイヤー・オブジェクトは、リポジトリの開発プロセスで頻繁に削除と再作成が繰り返されます。したがって、論理ビジネス・モデルが比較的安定するまで待ったうえで、プレゼンテーション・オブジェクトの別名を作成することをお薦めします。

この機能を使用すると、アンサーOracle BI Publisherまたは他の論理SQLクライアントからのリクエストを含めて、既存のリクエストが古い名前に対して持つ参照を破損することなく、プレゼンテーション・オブジェクトの名前を変更できます。新しいリポジトリの開発中である場合、そのリポジトリが安定するまで待ってから、オブジェクトの名前を変更できます。

たとえば、「Facts Other」というプレゼンテーション表を持つサブジェクト・エリア「Sample Sales Reduced」があるとします。「# of Customers」というプレゼンテーション列の名前を「Number of Customers」に変更すると、「# of Customers」を使用するリクエストはすべて失敗します。しかし、「Number of Customers」列の「別名」タブでシノニムのリストに「# of Customers」を追加しておくと、「# of Customers」「Number of Customers」のどちらを使用した問合せも問題なく実行でき、同じ結果が得られます。

  • アンサーやその他の問合せクライアントで新しい問合せを作成するとき、プレゼンテーション・オブジェクトの別名はそこには表示されません。サブジェクト・エリア、階層、レベル、表および列のプライマリ名のみが表示されます。

  • この機能の動作は、SQL別名や物理レイヤーにある別名の動作とは異なります。この機能では、オブジェクト名のシノニムを提供するだけであり、SQLのシノニムにきわめて似ています。

  • プレゼンテーション・オブジェクトの名前を変更すると、その別名が自動的に作成されます。たとえば、CatalogをCatalog1に変更すると、元の名前Catalogが別名のリストに追加されます。

  • プレゼンテーション・レイヤー・オブジェクトの名前を、同じタイプのオブジェクトの別名としてすでに使用されている名前に変更することはできません。

  1. Oracle BI管理ツールのプレゼンテーション・レイヤーで、サブジェクト・エリア、表、列、階層などのプレゼンテーション・オブジェクトをダブルクリックします。
  2. プレゼンテーション・オブジェクトの「プロパティ」ダイアログで、「別名」タブをクリックします。
  3. 別名を作成するには「新規」ボタンをクリックして、別名として使用するテキスト文字列を入力します。
  4. 「OK」をクリックします。

プレゼンテーション・オブジェクトの表示の制御

「オブジェクト非表示の条件」フィールドを使用して、アンサーおよびBIコンポーザの「サブジェクト領域ツリー」で、選択したプレゼンテーション・レイヤー・オブジェクトを非表示にすることができます。サブジェクト・エリア、表、列および階層を非表示にできます。

プレゼンテーション・レベルに対して「オブジェクト非表示の条件」が表示されていますが、これは今後のリリースのためのプレースホルダであり、現在、プレゼンテーション・レベル・オブジェクトには影響しません。

「オブジェクト非表示の条件」フィールドは、オブジェクトの表示/非表示を制御するだけであり、オブジェクト・アクセスに影響するものでありません。たとえば、非表示のオブジェクトに対して、nqcmdのようなツールを使用して問合せを行うことができます。

プレゼンテーション・レイヤー・オブジェクトを表示するかどうかを決めるために「オブジェクト非表示の条件」フィールドで使用できる式には、次の3つのタイプがあります。

  • 定数。オブジェクトを非表示にするには、フィールドに任意のゼロ以外の定数を使用します。オブジェクトを表示するには、ゼロ(0)を入力するか、フィールドを空白のままにします。

  • セッション変数。式でセッション変数を使用して、オブジェクトを非表示にするかどうかを制御できます。式がゼロ以外の値と判断されると、オブジェクトは非表示になります。式がゼロと判断されるか、空であるか、または値の定義がない場合、オブジェクトは表示されます。セッション変数には、セッション初期化ブロックまたは行単位の初期化ブロックを使用して値を移入する必要があります。表示/非表示を制御するには、セッション変数に適切な値を移入する必要があります。

    initブロックのSQLでは、CASE文を使用して、セッション変数でゼロを返すか、ゼロ以外の数字を返すかを制御できます。次に例を示します。

    VALUEOF(NQ_SESSION."VISIBLE")

    ピリオドを含むセッション変数名は二重引用符で囲む必要があります。

  • セッション変数の比較。等価比較または非等価比較を使用して、オブジェクトを非表示にするかどうかを制御できます。次の形式を使用します。

    'session_variable_expression' '=|<>' 'constant'

    式がゼロ、NULLまたは空であると判断された場合、オブジェクトは表示されます。式がゼロ以外の値と判断されると、オブジェクトは非表示になります。次に例を示します。

    NQ_SESSION."VISIBLE" = 'ABC'
    NQ_SESSION."VISIBLE" <> 'ABC'
    

    ピリオドを含むセッション変数名は二重引用符で囲む必要があります。

    「オブジェクト非表示の条件」の式では、Oracle BI EEがサポートしている任意のスカラー関数を使用できます。スカラー関数には、その引数それぞれに対する単純な値を受け入れ、単一の値を返す任意の関数が含まれます。非確定的な結果を返す関数(RANDNOWCURRENT_DATECURRENT_TIMESTAMPCURRENT_TIMEなど)を除き、リストされた関数を使用できます。

    • すべての文字列関数。文字列関数を参照してください。

    • 数学関数。数学関数を参照してください(RANDを除く)。

    • カレンダ日付/時刻関数(NOWおよびCURRENT_DATEを除く)。

    • 変換関数(CAST、IFNULL、TO_DATETIME、VALUEOFなど)。

    たとえば、次の式では、NQ_SESSION.VISIBLEセッション変数がABCという文字で始まっているかどうかがチェックされます。

    LEFT(VALUEOF(NQ_SESSION."VISIBLE"), 3) = 'ABC'

    次の式では、指定の変数がExtnAttributeで始まっているかどうかがチェックされます。

    Left(VALUEOF(NQ_SESSION."ADF_LABEL_ORACLE.APPS.CRM.MODEL.ANALYTICS.
    APPLICATIONMODULE.CRMANALYTICSAM_CRMANALYTICSAMLOCAL_CRMANALYTICSAM.
    OPPORTUNITYAM.OPPORTUNITY_EXTNATTRIBUTECHAR001"), 13) = 'ExtnAttribute'
    

整合性チェック・マネージャを使用すると、可視性フィルタ式の不整合を検出できます。