ロード・ルール
ロード・ルールは、データ・ロードまたはディメンション構築中にデータのソースを処理するためにEssbaseが実行する操作を定義するのに役立ちます。ルールを使用して、データ値をキューブにマップしたり、ディメンションとメンバーをアウトラインにマップします。
図12-3 ロード・ルールによるデータのロード

ロード・ルールでは、どの構築方法を使用するか、データ値またはメンバーの順序がソートされているかランダムになっているか、ロード前のデータ値またはメンバーの変換方法を定義します。
Essbaseによって、ソースのデータ値またはメンバーが読み取られ、ルールに基づいて変更され、変更されたデータ値はキューブにロードされ、変更されたメンバーはアウトラインにロードされます。Essbaseによってソース・データが変更されることはありません。同じルール・セットを必要とするデータソースでルール・ファイルを再利用できます。
ロード・ルールの各操作
ルール・ファイルを使用すると、データまたはメンバーをキューブにロードするときに、次に示す調整を実施できます。
-
SQL問合せを使用した外部ソースからのプル
-
アウトラインにディメンションおよびメンバーを追加します
-
アウトライン内の既存のディメンションおよびメンバーの変更
-
ソース・データ内の一部のフィールドまたは文字列の無視
-
フィールドの移動、結合、分割または作成によるフィールド順序の変更
-
文字列の変更によるソース内のデータのキューブへのマップ
-
データ値のスケーリングまたはデータ・ソース内に既存のデータ値へのデータ値の追加によるソース内のデータ値の変更
-
欠落値のためのヘッダー・レコードの設定
-
無効なレコードの拒否とデータ・ロードの続行
データ・ロード/ディメンション構築の成功基準
ディメンションの構築時には、ディメンションごとに個別のルール・ファイルを作成することをお薦めします。
データ値を正常にロードするには、そのディメンショナリティをEssbaseが把握する必要があります。つまり、Essbaseが各ディメンションから1つのメンバーを検出してから、データ値を検出することが必要になるということです。たとえば、図12-2では、Texas、100-10、Jan、SalesおよびActualの各メンバーとともに、データ値42がEssbaseによってデータベースにロードされます。Essbaseがデータ値を検出した後で各ディメンションのメンバーが指定されると、データのロードは停止されます。
最も簡単にレコード(ソース・データの行に相当)をフォーマットする方法は、次に示すように、各ディメンションの1つのメンバーに続けて1つのデータ・フィールドを含めることです。
Sales "100-10" Ohio Jan Actual 25
Sales "100-20" Ohio Jan Actual 25
Sales "100-30" Ohio Jan Actual 25
ルール・ファイル内の各レコードのフィールド数は一致していることが必要です(前に示した各レコードには6つのフィールドがあることに注目してください)。
データ・ソースには、次の項目がすべて含まれていて、それ以外のものは含まれていないことが必要です。
-
各ディメンションの1つ以上の有効なメンバー。メンバー名に次のいずれかが含まれる場合は、メンバー名を引用符で囲む必要があります。
-
スペース
-
数字(0–9)
-
ダッシュ(マイナス符号、ハイフン)
-
プラス符号
-
アンパサンド(&)
-
-
1つ以上の有効なデータ値。有効なデータ・フィールドを参照してください。
-
有効なデリミタ。「有効なデリミタ」を参照してください。
ロード・ルールを使用すると、ソース・データのロード時にフォーマットできるようになります(ソースを手動で編集する必要はありません)。ソース・データが完全にフォーマットされている場合(たとえば、Essbaseからエクスポートした未変更のデータの場合)、ロード・ルールは不要ですが、そのような状況はほとんどありません。ディメンションの構築には、常にロード・ルールが必要です。