新規メンバーのリストの追加

Essbaseアウトラインに新しいメンバーを追加する必要があるが、ソース・データでその祖先が指定されていない場合は、ディメンション構築方法として「...として追加」(「一致文字列の兄弟として追加」「最下位レベルの兄弟として追加」または「次の子として追加」)のいずれかを使用します。

Essbaseでは、使用するソース・データで親メンバーが指定されていない場合のために、次のディメンション構築方法が用意されています。

Essbaseですべての新規メンバーをアウトラインに追加した後、アウトライン・エディタを使用して、新規メンバーを正しい位置に移動する必要が生じることがあります。ディメンションおよびメンバーの配置を参照してください。

ノート:

Essbaseでは、属性の関連付けと...として追加構築方法を同時には使用できません。

文字列の一致に基づくメンバーの追加

Essbaseアウトラインに新しいメンバーを追加する必要があるが、ソース・データでそれらの祖先が指定されていない場合は、文字列一致に基づいてそれらを名前が似ているメンバーに兄弟として追加するディメンション構築ルールを設計できます。「一致文字列の兄弟として追加」 ディメンション構築方法を使用します。

この構築方法を使用した場合は、Essbaseでソース内に新規メンバーが検出されると、テキストが似ているメンバー名がないかアウトラインがスキャンされ、その新規メンバーが、名前の文字列が最も類似するメンバーの兄弟として追加されます。

たとえば、次のデータのテキスト・ファイルには、Productディメンションに追加される2つの新規メンバー(100-11および200-22)が含まれています。新規メンバーには、Productディメンションの文字列と同様に、3桁の数字、ダッシュ、2桁の数字が含まれています。

100-11	Texas	Sales	100	120	100
200-22	Texas	Sales	111	154	180

次の階層には、100の兄弟として追加された100-11と、200の兄弟として追加された200-22が示されています。


このイメージは、既存メンバーの兄弟として追加された新規メンバーを示しています。

この例を再現するには、次のようにします。

  1. Sample Basicキューブをインポートまたは構築します。その際には、Essbaseサーバーにあるファイル・カタログ内のギャラリから入手可能な、アプリケーション・ワークブックを使用します。

  2. 次のようなタブ区切りのデータ・ファイルを作成し、stringmatch.txtという名前を付けて、Sample Basicキューブ・ディレクトリにアップロードします。

    100-11	Texas	Sales	100	120	100
    200-22	Texas	Sales	111	154	180
  3. 「アプリケーション」ページで、アプリケーション(Sample)を展開します。

  4. キューブ名(Basic)の右側にある「アクション」メニューから、インスペクタを起動します。


    インスペクタを選択したポップアップ・メニュー

  5. 「スクリプト」タブを選択して、「ルール」をクリックします。


    データベース・インスペクション・ダイアログで「スクリプト」タブが選択されており、「ルール」が強調表示されています

  6. 「作成」をクリックして、「ディメンション構築(標準)」を選択します。


    データベース・インスペクション・ダイアログで、作成ボタンが押されていて、「ディメンション構築(標準)」オプションが選択されています

  7. 「新規ルール」ダイアログで、次のように操作します。

    1. ルール名を入力します(例: stringmatch)。

    2. 「ソース・タイプ」「ファイル」を選択し、「カタログ」をクリックし、stringmatch.txtに移動します。

      「カタログ」をクリックする場合、そのファイルは、デフォルトではEssbaseサーバー上のキューブ・ディレクトリに配置されると想定されているため、Essbase Webインタフェース「ファイル」セクションを使用してすでにアップロードしてある必要があります。そのファイルがクライアント・マシンにある場合は、「ファイル・ブラウザ」をクリックしてそのファイルを特定します。

    3. 「ヘッダー・レコード番号」および「ディメンション構築レコード番号」フィールドは0のままにします。ヘッダー・レコードは、ディメンション構築には役立ちません。

    4. 「デリミタ」の値を「カンマ」から「タブ」に変更します。

    5. 「続行」をクリックします。

    6. ディメンション構築ルールは、未定義のフィールドと、フィールドの下のグリッドに移入されたプレビュー・データ(テキスト・ファイルからのデータ)とともに表示されます。


      stringmatchという名前の未完成の新規ルール。フィールド1から6のフィールド・メタデータは、フィールド・セレクタでは空白になっています。レコードはフィールド・セレクタの下に移入され、手順2の.txtファイル内のデータと一致しています。

  8. これは新しいルールであるため、ディメンションはまだ関連付けられていません。

    1. 「ディメンション」をクリックします。
      ルール・エディタの「ディメンション」ボタン

    2. ディメンション名「Product」を選択または入力し、「追加」をクリックします。
  9. 次は、構築方法を定義し、他のディメンション構築操作手順を確認する必要があります。「Product」をクリックしてそのプロパティを編集します。
    「ディメンションの編集」ダイアログ内のクリック可能な「Product」ディメンション名。

  10. 「構築方法」「一致文字列の兄弟として追加」に変更し、その下の「メンバー名」フィールドを空白のままにします。


    「一致文字列の兄弟として追加」構築方法が選択されている、ディメンション構築ルール・エディタ内の「ディメンションの編集」ダイアログの図。他のオプションはすべてデフォルトのままになっています。

    「OK」をクリックします。

  11. フィールド1で「ディメンション」セレクタをクリックし、「Product」を選択します。


    フィールド1の「ディメンション」ボックスから選択可能なProductディメンション

  12. フィールド1の「タイプ」セレクタは空白のままにします。

  13. フィールド2から6までを選択します。これを行うには、フィールド2というラベルが付いた非アクティブなヘッダー領域をクリックし、[Shift]キーを押したまま、フィールド6ヘッダー領域をクリックします。「無視」をクリックします。


    stringmatchという名前の完成した新しいルール。メンバーを名前が最も似ているメンバーに兄弟として追加するように設計されています。フィールド1から6のフィールド・メタデータには、ディメンションの「Product」が含まれており、「タイプ」は空白のままです。レコードはそれらのフィールドの下に移入されます。フィールド2から6は、ディメンション構築の間は無視されるようにマークされています。

    そのため、このルールは各レコードの最初のフィールドにのみ影響します。フィールドの無視は、ディメンション構築にソース内のすべてのフィールドを使用する必要はなく別のソースを準備する必要もない場合に役立ちます。

  14. ルールを検証してから、保存して閉じます。エラーがある場合は、「有効なディメンション構築ルール・ファイルの要件」を参照してください。

  15. ディメンション構築ジョブを実行します。

  16. アウトラインを表示し、子Productメンバー100と200を調べて、それらのメンバーが追加されたことを確認します。


    Essbase Webインタフェースにあるアウトライン・ビューア。Productディメンションが展開され、メンバー100と200の子が表示されており、2つの新しいメンバー(100-11と200-22)が追加されています。

表15-1 文字列一致を使用したメンバー追加の要約

フィールド 詳細情報

Productディメンション

「一致文字列の兄弟として追加」の構築方法を選択する

構築方法の選択

フィールド1 (Product)

  • このフィールドのフィールド・タイプは選択しない

  • フィールドのディメンションをProductに設定する

ディメンション構築のフィールド・タイプ情報の設定

フィールド2から6

それらのフィールドを無視する

フィールドの無視

最下位レベルの兄弟としてのメンバーの追加

Essbaseアウトラインに新しいメンバーを追加する必要があるが、ソース・データでそれらの祖先が指定されていない場合は、それらを最下位レベルの既存メンバーの兄弟として追加するディメンション構築ルールを設計できます。「最下位レベルの兄弟として追加」ディメンション構築方法を使用します。

この構築方法を使用した場合は、Essbaseでソース・データ内に新規メンバーが検出されると、そのレベル0分岐のメンバーがないかアウトラインがスキャンされ、その新規メンバーがこれらのメンバーの兄弟として追加されます。

ノート:

アウトラインにレベル0メンバーのグループが複数含まれている場合は、Essbaseによって最初に検出されたグループに新規メンバーが追加されます。

このディメンション構築の例では、Measuresディメンションでの最下位レベル・メンバーの兄弟としてA100-20およびA100-99を追加するとします。
このイメージは、Marginの子として追加された新規メンバーのA100–20とA100–99を示しています。

次のテキスト・データ・ファイルを使用して新しいメンバーを追加するとします:

100-10	Texas	A100-10	100	120	100
200-20	Texas	A100-99	111	154	180

次のルール・ファイルを作成すると、最下位レベルの兄弟として追加構築方法を使用してディメンションを構築できます。

この例を再現するには、次のようにします。

  1. Sample Basicキューブをインポートまたは構築します。その際には、Essbaseサーバーにあるファイル・カタログ内のギャラリから入手可能な、アプリケーション・ワークブックを使用します。

  2. 次のようなタブ区切りのデータ・ファイルを作成し、siblow.txtという名前を付けて、Sample Basicキューブ・ディレクトリにアップロードします。

    100-10	Texas	A100-10	100	120	100
    200-20	Texas	A100-99	111	154	180
  3. 「アプリケーション」ページで、アプリケーション(Sample)を展開します。

  4. キューブ名(Basic)の右側にある「アクション」メニューから、インスペクタを起動します。


    インスペクタを選択したポップアップ・メニュー

  5. 「スクリプト」タブを選択して、「ルール」をクリックします。


    データベース・インスペクション・ダイアログで「スクリプト」タブが選択されており、「ルール」が強調表示されています

  6. 「作成」をクリックして、「ディメンション構築(標準)」を選択します。


    データベース・インスペクション・ダイアログで、作成ボタンが押されていて、「ディメンション構築(標準)」オプションが選択されています

  7. 「新規ルール」ダイアログで、次のように操作します。

    1. ルール名を入力します(例: siblow)。

    2. 「ソース・タイプ」「ファイル」を選択し、「カタログ」をクリックし、siblow.txtに移動します。

      「カタログ」をクリックする場合、そのファイルは、デフォルトではEssbaseサーバー上のキューブ・ディレクトリに配置されると想定されているため、Essbase Webインタフェース「ファイル」セクションを使用してすでにアップロードしてある必要があります。そのファイルがクライアント・マシンにある場合は、「ファイル・ブラウザ」をクリックしてそのファイルを特定します。

    3. 「ヘッダー・レコード番号」および「ディメンション構築レコード番号」フィールドは0のままにします。ヘッダー・レコードは、ディメンション構築には役立ちません。

    4. 「デリミタ」の値を「カンマ」から「タブ」に変更します。

    5. 「続行」をクリックします。

    6. ディメンション構築ルールは、未定義のフィールドと、フィールドの下のグリッドに移入されたプレビュー・データ(テキスト・ファイルからのデータ)とともに表示されます。
      ディメンション構築ルール・エディタで新しいルール

  8. これは新しいルールであるため、ディメンションはまだ関連付けられていません。

    1. 「ディメンション」をクリックします。
      ルール・エディタの「ディメンション」ボタン

    2. ディメンション名「Measures」を選択または入力し、「追加」をクリックします。
  9. 次は、構築方法を定義し、他のディメンション構築操作手順を確認する必要があります。「Measures」をクリックしてそのプロパティを編集します。

  10. 「構築方法」「最下位レベルの兄弟として追加」に変更し、下の「メンバー名」フィールドを空白のままにします。
    「最下位レベルの兄弟として追加」が選択されている、ディメンション構築ルール・エディタ内の「ディメンションの編集」ウィンドウの図。

    「OK」をクリックします。

  11. フィールド3で「ディメンション」セレクタをクリックし、「Measures」を選択します。
    データが移入され、Measuresディメンションが選択されている、ディメンション構築ルール・エディタ内のフィールド3の図。

  12. フィールド3の「タイプ」セレクタは空白のままにします。

  13. フィールド1から6までを選択します。これを行うには、フィールド1というラベルが付いた非アクティブなヘッダー領域をクリックし、[Shift]キーを押したまま、フィールド6ヘッダー領域をクリックします。次に、[Control]キーを押したまま、フィールド3をクリックしてその選択を解除します。「無視」をクリックします。
    データが移入され、フィールド1、2、4、5および6が無視されている、ディメンション構築ルール・エディタの図。

    結果として、このルールは各レコードの3番目のフィールドにのみ影響します。フィールドの無視は、ディメンション構築にソース内のすべてのフィールドを使用する必要はなく別のソースを準備する必要もない場合に役立ちます。

  14. ルールを検証してから、保存して閉じます。エラーがある場合は、「有効なディメンション構築ルール・ファイルの要件」を参照してください。

  15. ディメンション構築ジョブを実行します。

  16. アウトラインを表示し、Margin (Measuresディメンション内)の子を調べて、それらのメンバーが追加されたことを確認します。
    新規メンバーA100-20およびA100-99が「Margin」(Measuresディメンション内)の下に表示されている、Sample Basicアウトラインの図。

表15-2 最下位レベルの兄弟としてのメンバー追加の要約

フィールド 詳細情報

Measuresディメンション

「最下位レベルの兄弟として追加」構築方法を選択する

構築方法の選択

フィールド3 (Measures)

  • このフィールドのフィールド・タイプは選択しない

  • フィールドのディメンションをMeasuresに設定する

ディメンション構築のフィールド・タイプ情報の設定

フィールド1、2、4、5および6

それらのフィールドを無視する

ソース・データの指定された列のフィールドをすべて無視できます。

「フィールドの無視」を参照してください。

指定した親へのメンバーの追加

Essbaseアウトラインに新しいメンバーを追加する必要があるが、ソース・データでそれらの祖先が指定されていない場合は、指定した親メンバーにそれらを追加するディメンション構築ルールを設計します。「次の子として追加」ディメンション構築方法を使用して、すべての新規メンバーを、指定した親の子として追加します。

Essbaseですべての新規メンバーをアウトラインに追加した後、アウトラインにおいて、追加されたメンバーの確認、およびそれらの移動や削除ができます。

このディメンション構築例では、既存のアウトライン・メンバーNewProductsの子として600-54と780-22を追加するとします。

図15-6 指定した親の子としてのメンバー追加の例


このイメージは、イメージの前のテキストで説明されている、NewProductsの子として追加された新規メンバーを示しています。

このユースケースでは、「次の子として追加」構築方法を呼び出します。この構築方法では、Essbaseでソース・データ内に新規メンバーが検出されると、その新規メンバーが、指定した親名の子として追加されます。ディメンション構築を開始する前に、親をアウトラインに追加しておく必要があります。

この例を再現するには、次のようにします。

  1. Sample Basicキューブをインポートまたは構築します。その際には、Essbaseサーバーにあるファイル・カタログ内のギャラリから入手可能な、アプリケーション・ワークブックを使用します。

  2. 次のようなタブ区切りのデータ・ファイルを作成し、sibpar.txtという名前を付けて、Sample Basicキューブ・ディレクトリにアップロードします。

    600-54	Texas	Sales	100	120	100
    780-22	Texas	Sales	111	154	180
  3. Essbase Webインタフェースで編集のためにSample Basicアウトラインを開き、Productディメンションに、NewProductsという名前のメンバーを追加します。

  4. アウトラインを検証および保存します。

  5. 「アプリケーション」ページで、アプリケーション(Sample)を展開します。

  6. キューブ名(Basic)の右側にある「アクション」メニューから、インスペクタを起動します。


    インスペクタを選択したポップアップ・メニュー

  7. 「スクリプト」タブを選択して、「ルール」をクリックします。


    データベース・インスペクション・ダイアログで「スクリプト」タブが選択されており、「ルール」が強調表示されています

  8. 「作成」をクリックして、「ディメンション構築(標準)」を選択します。


    データベース・インスペクション・ダイアログで、作成ボタンが押されていて、「ディメンション構築(標準)」オプションが選択されています

  9. 「新規ルール」ダイアログで、次のように操作します。

    1. ルール名を入力します(例: sibpar)。

    2. 「ソース・タイプ」「ファイル」を選択し、「カタログ」をクリックし、sibpar.txtに移動します。

      「カタログ」をクリックする場合、そのファイルは、デフォルトではEssbaseサーバー上のキューブ・ディレクトリに配置されると想定されているため、Essbase Webインタフェース「ファイル」セクションを使用してすでにアップロードしてある必要があります。そのファイルがクライアント・マシンにある場合は、「ファイル・ブラウザ」をクリックしてそのファイルを特定します。

    3. 「ヘッダー・レコード番号」および「ディメンション構築レコード番号」フィールドは0のままにします。ヘッダー・レコードは、ディメンション構築には役立ちません。

    4. 「デリミタ」の値を「カンマ」から「タブ」に変更します。

    5. 「続行」をクリックします。

    6. ディメンション構築ルールは、未定義のフィールドと、フィールドの下のグリッドに移入されたプレビュー・データ(テキスト・ファイルからのデータ)とともに表示されます。


      sibparという名前の未完成の新規ルール。フィールド1から6のフィールド・メタデータは、フィールド・セレクタでは空白になっています。レコードはフィールド・セレクタの下に移入され、手順2の.txtファイル内のデータと一致しています。

  10. これは新しいルールであるため、ディメンションはまだ関連付けられていません。

    1. 「ディメンション」をクリックします。
      ルール・エディタの「ディメンション」ボタン

    2. ディメンション名「Product」を選択または入力し、「追加」をクリックします。
  11. 次は、構築方法を定義し、他のディメンション構築操作手順を確認する必要があります。「Product」をクリックしてそのプロパティを編集します。
    「ディメンションの編集」ダイアログ内のクリック可能な「Product」ディメンション名。

  12. 「構築方法」「次の子として追加」に変更し、その下に宛先となる親メンバーの名前(NewProducts)を入力します。


    Productのディメンション構築プロパティ。「構築方法」と「メンバー名」(これらは説明どおりに変更されている)を除くすべてのオプションはデフォルトのままになっています。

    「OK」をクリックします。

  13. フィールド1で「ディメンション」セレクタをクリックし、「Product」を選択します。


    フィールド1の「ディメンション」ボックスから選択可能なProductディメンション

  14. フィールド1の「タイプ」セレクタは空白のままにします。

  15. フィールド2から6までを選択します。これを行うには、フィールド2というラベルが付いた非アクティブなヘッダー領域をクリックし、[Shift]キーを押したまま、フィールド6ヘッダー領域をクリックします。「無視」をクリックします。


    sibparという名前の完成した新しいルール。指定した親の子としてメンバーを追加するように設計されています。フィールド1から6のフィールド・メタデータには、ディメンションの「Product」が含まれており、「タイプ」は空白のままです。レコードはフィールド・セレクタの下に移入され、手順2の.txtファイル内のデータと一致しています。フィールド2から6は、ディメンション構築の間は無視されるようにマークされています。

    そのため、このルールは各レコードの最初のフィールドにのみ影響します。フィールドの無視は、ディメンション構築にソース内のすべてのフィールドを使用する必要はなく別のソースを準備する必要もない場合に役立ちます。

  16. ルールを検証してから、保存して閉じます。エラーがある場合は、「有効なディメンション構築ルール・ファイルの要件」を参照してください。

  17. ディメンション構築ジョブを実行します。

    ジョブが次のエラーで失敗した場合は、アウトラインに、必要な親メンバー名(この例ではNewProducts)が含まれていない可能性があります。

    Member missing for add as child of dimension setting for dimension <name>
  18. アウトラインを表示し、ProductメンバーであるNewProductsを調べて、それらのメンバーが追加されたことを確認します。


    Essbase Webインタフェースにあるアウトライン・ビューア。Productディメンションが展開されて親メンバーNewProductsが表示されており、2つの新しいメンバー(600-54と780-22)が追加されています。

図15-3 指定した親の子としてのメンバー追加の要約

フィールド 詳細情報

Productディメンション

「次の子として追加」の構築方法を選択する

構築方法の選択

「次の子として追加」テキスト・ボックスに「NewProducts」と入力します。

フィールド1 (Product)

  • このフィールドのフィールド・タイプは選択しない

  • フィールドのディメンションをProductに設定する

ディメンション構築のフィールド・タイプ情報の設定

フィールド2から6

それらのフィールドを無視する

ソース・データの指定された列のフィールドをすべて無視できます。

「フィールドの無視」を参照してください。