プライマリ・コンテンツに移動
Oracle® Essbase Oracle Essbaseの使用

F17137-05
目次へ移動
目次

前
次
機械翻訳について

強制指定ヘッダーを使用した表形式データのキューブへの変換

強制指定ヘッダー(ヒント)では、変換処理中に表形式データを処理する方法を指定できます。

たとえば、メジャー・ディメンションまたは属性ディメンションとして扱う列を強制できます。 ほとんどの強制指定ヘッダーでは、カッコ([])内にキーワードが必要となります。 強制指定ヘッダーは、テンプレートUnstr_Hints.xlsxおよびSample_Table.xlsx (ギャラリで使用可能)で示されます。

サポートされている強制指定ヘッダーの形式は次のとおりです。

表6-1 強制指定ヘッダー・フォーマット

指定 ヘッダー形式

ディメンションの生成

ParentGeneration.CurrentGeneration

Category.Product

Alias

ReferenceGeneration.Generation[alias]

Year.ShortYearForm[alias]

属性

ReferenceGeneration.AttributeDimName[attr]

Product.Discounted[attr]

メジャー

MeasureName[measure]

Price[measure]

メジャー生成

Parent.child[measure]

一意の場合、最上位の親はアカウント・ディメンション名です。 一意でない場合、このメンバーはアカウント・ディメンションで自動生成されます。

Measures.profit[measure]

profit.cost[measure]

cost.price[measure]

メジャー式

MeasureName[=formula_syntax;]

profit[="price"-"cost";]

profit[="D1"-"E1";]

price[=IF ("S1" == #MISSING) "R1"; ELSE "S1"; ENDIF;]

メジャーの統合

MeasureName[+] : 親に追加

MeasureName[-] : 親から減算

MeasureName[~] : 集計なし([measure]に相当)

デフォルトは集計なしです。

price.shipment[+]

集計はメジャー・ディメンションに対してのみ定義できます

式の連結

FormulaName[+= <formula> ] : 親に追加

FormulaName[-= <formula> ] : 親から減算

profit[+=price-cost]

cost.external[+=ExternalWork+ExternalParts]

UDA

ReferenceGeneration[uda]

Product[uda]

スキップ

列は読み込まれません。

ColumnName[skip]

column[skip]

定期実行

最後の列のセル値が空のセルに使用されます

繰返しは、他の強制指定と組み合せることができます。カッコ内に強制指定のカンマ区切りリストを含めます(ColumnName[designationA,recur])。

ColumnName[recur]

Product[recur]

Product[uda,recur]

メジャー・ディメンションとなる列を指定したり、式を使用して、変換プロセス中に計算されたデータを使用してメジャー・ディメンションを作成したりできます。 メジャーおよびメジャー式の強制指定ヘッダーは、メジャー・ディメンションの名前に、角カッコで囲んだキーワードまたは式を続けることによって指定できます。

メジャーおよび式は、親に対して追加または差し引くことによっても集計できます。

メジャー・ディメンションとなる列を指定するには、列ヘッダーで、メジャー・ディメンションの名前を入力してから、その後ろにキーワード[measure]を付加します。 たとえば、Units[measure]およびFixed Costs[measure]という構文を使用して、Units列およびFixed Costs列をメジャー・ディメンションとして指定できます。

変換プロセスでは、Units、Discounts、Fixed Costs、Variable CostsおよびRevenueをメジャーとしてこの階層が作成されます。

Time
   Year
      Quarter
         Month
Regions
   Region
      Area
         Country
...
Product
   Brand
...
Units
Discounts
Fixed Costs
Variable Costs
Revenue

メジャー生成階層(parent.child[measure]階層)は、通常のディメンション生成の作成と同様の方法で作成できます。

たとえば、次の階層を構築するメジャー階層を作成するには、Measures.profit[measure]、profit.cost[measure]およびcost.price[measure]を入力します。

Measures
      profit
            cost
                price

式からメジャー・ディメンションを作成するには、列ヘッダーで、メジャー・ディメンションの名前を入力し、その後ろのカッコ([])内に式の構文を付加します。 カッコ内では、等号(=)で式を開始し、セミコロン(;)で式を終了します。 式の引数は、列名または@セル座標に対応しており、引用符で囲む必要があります。 式には、Essbaseの計算関数とコマンドを使用できます。

Spend_Formulas.xlsxという名前のExcelファイルがあり、多数の列を持つSpendHistoryワークシートに表形式データがあるとします。 たとえば、Year (列A)およびQuarter (列B)という名前のディメンション、およびSpend (列J)およびAddressable Spend (列K)という名前のメジャー・ディメンションがあります。 これらの列にはデータがあります。 そして、式を使用してメジャー・ディメンションを作成する列ヘッダーがあります。 これらの列にはデータがありません。 たとえば、Total Spendディメンションを作成するには、列OのヘッダーでMeasure.Total Spend[="Addressable Spend" + "Non-Addressable Spend";]というEssbase式を使用します。 AddSpendPercentディメンションを作成するには、列PのヘッダーでMeasure.AddSpendPercent[="Addressable Spend"/"Total Spend";]というEssbase式を使用します。

変換プロセスによってこの階層が作成されます。


表形式データ変換のプレビューのイメージ。

変換プロセスでは、ディメンション名が重複する場合にメジャー・ディメンションを識別することもできます。 Measディメンションを作成するMeas.profit[="a1"-"b1";]という式を使用する列ヘッダーがあるとします。 他の列のヘッダーにMeas.Salesのように最上位の親としてMeasディメンション名を使用している場合は、Salesのディメンションもメジャー・ディメンションとみなされます。