レベル0以外の共有メンバーの作成
場合によっては、レベル0以外のメンバー(最下位またはリーフ・レベルの世代ではないメンバー)を共有する必要があります。Essbaseディメンション構築ルールで親子参照またはレベル参照のいずれかを使用して、レベル0以外の共有メンバーを作成できます。
たとえば、図14-17では、100、200および300がTBCとGrandma'sによって共有されています。このアウトラインは、TBCが一部の製品ラインを外部ベンダーから購入することを想定しています。たとえば、200 (すべてのルート・ビール)をGrandma'sという名前のベンダーから購入します。
図14-17 サンプル・アウトライン: 様々な世代で共有されるレベル0以外のメンバー

親子参照を使用したレベル0以外の共有メンバーの作成
親子参照による構築方法は、最も用途の広い共有メンバー作成方法です。この構築方法には、世代参照やレベル参照の構築方法とは異なり、アウトライン内の共有メンバーの位置に関する制限がありません。
親子参照による構築方法を使用して同じ世代のレベル0以外の共有メンバーを作成するには、「親」と「子」のフィールド・タイプを定義します。Essbaseで共有を許可する設定になっていることを確認します。共有が有効になっている場合、Essbaseでは、新しい親の下に共有メンバーとして重複メンバーが自動的に作成されます。
図14-18 サンプル・ルール: 親子参照を使用して同じ世代で共有されるレベル0以外のメンバー

レベル参照を使用したレベル0以外の共有メンバーの作成
レベル参照による構築方法を使用して非レベル0の共有メンバーを作成するには、プライマリとセカンダリのロールアップが1つのレコードに指定されていることを確認します。セカンダリ・ロールアップは、すべて1つのレコードに指定するのであれば無制限で指定できます。
ノート:
"ロールアップ"は、プロトタイプと共有メンバーが集計されるメンバーです。次の例では、共有メンバーはフィールド1にあり、プライマリ・ロールアップはフィールド2にあり、セカンダリ・ロールアップはフィールド3-5にあります。
共有メンバーの親のフィールド・タイプを重複レベルとして定義してから、レベル番号を入力します。同じ世代の共有メンバーを作成するには、プライマリ・ロールアップと同じレベル番号が含まれるようにセカンダリ・ロールアップのレベル番号を設定します。データソースの処理中に、Essbaseで、指定したレベルで親が作成され、その下に共有メンバーが挿入されます。
たとえば、製品ライン100、200および300をSodaという親と、TBCおよびGrandma'sという親との間で共有するには、次に示すようなサンプル・データ・ファイルとルール・ファイルを使用します。このデータソースおよびルール・ファイルは、アウトラインにDiet、TBCおよびGrandma'sメンバーが存在する場合にのみ機能します。「重複するレベル」フィールドは、指定したレベル・フィールドがアウトライン内にすでに存在する場合を除き、常にディメンションの子(世代2)として作成されます。
図14-19 サンプル・ルール: レベル参照を使用して様々な世代で共有されるレベル0以外のメンバー
