テンプレートへのコンポーネントの挿入
この項には、テンプレートへのコンポーネントの挿入に関する詳細を説明するトピックが含まれています。
フィールドの挿入
このダイアログでは、データ・ソースからデータ要素を選択し、テンプレートに挿入できます。
「挿入」グループで「フィールド」を選択すると、「フィールド」ダイアログが開きます。次の図に示すように、ロードされたデータソースの構造がダイアログにツリー表示で表示されます。
単一のデータ・フィールド(ツリーのリーフ・ノード)に相当するフィールドを選択し、「挿入」を選択します(フィールドを挿入するには、文書にドラッグ・アンド・ドロップする方法、およびフィールドをダブルクリックする方法もあります)。非表示のPublisherコマンドが含まれるテキスト・フォーム・フィールドが、テンプレート内のカーソル位置に挿入されます。他のデータ・フィールドを追加選択して挿入するか、または「閉じる」ボタンをクリックしてダイアログを閉じることができます。
検索
大きくて複雑な構造を持つXML文書の場合は、検索機能を使用して特定のフィールドを検索します。検索するフィールド名の部分文字列を「検索」フィールドに入力し、「次を検索」をクリックします。
検索式が含まれるデータ要素の次の出現箇所が選択されます。もう1度「次を検索」ボタンをクリックすると、次の出現箇所が表示されます。
LTR方向を強制(左から右)
「LTR方向を強制」チェック・ボックスが必要になるのは、アラビア語やヘブライ語など、右から左に文字を書く言語でテンプレートを使用している場合にかぎります。
電話番号、アドレス、郵便番号、銀行の口座番号など、フィールドに対して左から右に入力するには、この機能を使用します。
計算
「計算」機能を使用すると、データ・フィールドに対して合計、平均、件数、最小および最大などの集計関数を実行できます。
たとえば、特定のデータ・フィールドで「合計」を選択すると、フィールドには、グループ化に応じてこのデータ・フィールドで発生するすべての値の合計が表示されます。
どのフィールドが累計されるかを正確に把握するには、グループ化のコンテキスト(GおよびEフォーム・フィールドでマーク付け)を理解することが重要です。累計関数を持つデータ・フィールドを繰返しセクション(「G」およ「E」処理指示フォーム・フィールドでマーク付け)に挿入する場合は、「グループ化」を選択して、グループ内の出現箇所のデータを累計する必要があります。累計対象をグループに限定しない場合は、累計フィールドをグループ外に置いてください。
次の図に、グループ化コンテキストの例を示します。
また、累計関数が機能するには、データ・フィールドが有効なXSL数である必要があることにも注意してください。書式付きの数値は、Publisherでは処理できません(たとえば、3桁区切りを使用している数値10,000,000.00は処理できません)。
Template Builderを使用するテンプレートのグループの詳細は、繰返しグループの挿入およびグループの定義を参照してください。
表ウィザードを使用した表の挿入
表の挿入ウィザードを使用すると、標準的なレポートを作成できます。「挿入」メニューで「表ウィザード」を選択し、次のステップを実行します。
ステップ2: 表データの選択
XML文書は、複数のグループ化されたデータ・セットを含むことができます。
たとえば、発注書XML文書はヘッダー・レベル情報、行、出荷、および連絡先を含むことができます。
このステップでは、表に必要なデータを含むデータ・グループを選択します。
たとえば、残高通知サンプルRTFテンプレート(Template BuilderによりOracle\Oracle Analytics Publisher\Oracle Analytics Publisher Desktop\samples\RTF Templates
にインストールされたファイル内にあります)の場合、サンプルXMLファイルには次の3つのデータ・グループが含まれています。
-
ARXCOBLX/G_CUSTOMER
-
ARXCOBLX/G_CUSTOMER/G_CURRENCY
-
ARXCOBLX/G_CUSTOMER/G_CURRENCY/G_INVOICES
表ウィザードには、XMLデータ・ファイルで利用できるデータ・グループのリストが表示されます。表のデータ・フィールドを含むグループを選択してください。
次の図は、表ウィザードのステップ2: 表データの選択を示しています。
データに含まれている請求書を記載する表を構築するには、次を選択します。
ARXCOBLX/G_CUSTOMER/G_CURRENCY/G_INVOICES
データ・セットとして。
ステップ3: データ・フィールドの選択
表ウィザードには、選択したデータ・セットからのデータ・フィールドが表示されます。
次の図は、表ウィザードのステップ3: データ・フィールドの選択を示しています。
シャトル・ボタンを使用して、表に表示するデータ・フィールドを選択します。上矢印と下矢印を使用して、選択後にフィールドを並べ替えます。
ステップ4: 表のグループ化
このステップでは、特定のフィールドによってデータを再グループ化できます。
これはオプションです。
たとえば、請求書の表を構築している場合、レポートにおいて、グループ化対象の特定のタイプまたは日付のすべての請求書をグループ化する必要があることがあります。
次の図は、表ウィザードのステップ4: 表のグループ化を示しています。
グループ化オプションには「グループ左」と「グループ上」の2つがあります。「グループ左」を選択すると、ネストした表が作成されます。外部表の左側に「グループ基準」フィールドが表示されます。「グループ上」を選択すると、グループ基準フィールドの新しい値ごとに新しい表が作成され、グループ基準フィールドの値が表タイトルとして表示されます。
例を示します。
次の図に示すように、「グループ左」を使用すると、要素の出現を基準にしてグループがグループ化されます。
次の図に示すように、「グループ上」を使用すると、結果はヘッダー付きの表として表示されます。
グループ化する要素を選択すると、Publisherはグループ化要素によってデータをソートします。データがグループ化要素によってすでにソートされている場合は、「データはソート済」チェック・ボックスを選択します。これを選択すると、パフォーマンスが向上します。
ステップ5: グループでのブレークの挿入
「区切り」オプションを使用すると、このグループが出現するたびに、ページまたはセクションの区切りを挿入できます。
改セクションは、トップレベルのグループにのみ作成できます。後続のグループ化オプションには、改ページオプションのみが表示されます。
ページの区切りでは、次のグループが新しいページで開始されます。セクションの区切りでは、次のグループが新しいページで開始され、ページ採番、ヘッダーとフッターがリセットされ、さらにグループの出現ごとに実行中の計算がリセットされます。
ステップ6: 表のソート
表のデータを最大4つの異なるフィールドでソートできます。
フィールドを1つ選択してソート順序(昇順または降順)を定義し、フィールドについて正しいデータ型を選択します。たとえば、「テキスト」を選択すると、12は2の前に表示されます(英数字順)。「数値」を選択すると、2は12の前に表示されます。
次の図は、表ウィザードのステップ6: 表のソートを示しています。
「表/フォームの挿入」ダイアログを使用した表またはフォームの挿入
「表/フォームの挿入」ダイアログは、Template Builderの最も柔軟なツールです。これを使用すると、次のタスクを実行できます。
-
単純な表または可変数の行を含むネストした表の作成
-
データ要素(完全な請求書や発注明細など)のグループと、データ要素の出現箇所ごとに文書内で繰り返されるフォームとの関連付け
-
テンプレート内の全データ・フィールドのレイアウトの選択と定義
-
データのグループ化または再グループ化
「表/フォームの挿入」ダイアログには、2つのツリー表示ペインが表示されます。左ペインにはデータソースの構造が表示され、右ペインには「挿入」ボタンをクリックしたときにテンプレートにコピーされる要素が表示されます。
データ・フィールドの選択
最初に、テンプレートに挿入するデータ・フィールドを選択し、そのフォーマットを定義します。
左側の「データソース」ペインから右側の「テンプレート」ペインにXML要素をドラッグして選択します。XML要素に子がある場合は、次のオプションが含まれたポップアップ・メニューが表示されます。
- 単独ノードをドロップ
- すべてのノードをドロップ
- 取消
選択したノードのみを移動する場合は「単独ノードをドロップ」、ノードとそのすべての子を移動する場合は「すべてのノードをドロップ」を選択します。
左側の「データソース」ペインから右側の「テンプレート」ペインにさらにデータ・フィールドをドラッグすると、ノードを離したのと同じレベル(「同一レベル」)またはノードの下(「子」)に挿入されます。ノードの挿入位置は「挿入位置」ボックスで定義します。
ドラッグ・アンド・ドロップに左マウス・ボタンを使用すると、ノードとそのすべての子がコピーされます。一方、ドラッグに右マウス・ボタンを使用すると、マウス・ボタンを離した時点でダイアログが表示されます。このダイアログでオプションを選択し、選択したノードのみをコピーするか、選択したノードとそのすべての子をコピーできます。
レイアウトの定義
右側の「テンプレート」ペインで要素を選択すると、そのプロパティとノードのレンダリングのプレビューが表示されます。
ノードには、次の2種類があります。
-
データ・フィールド
-
データ・グループ
データ・フィールド・ノード(リーフ・ノード)には、子ノードはありません。この種のノードは、請求書の金額合計や発注明細の小計のように単純な属性を表します。
データ・グループ・ノード(親ノード)は、子ノードを持つノードです。通常、これらはデータ属性を表すのではなく、データのグループ(請求書、発注書、発注明細、出荷など)を表します。
データ・フィールドのプロパティ
データ・フィールド・ノードを選択すると、そのプロパティが「プロパティ」ペインに表示されます。次のオプションを使用して、Template Builderでのフィールドの表示方法を記述します。
-
計算
データ・フィールド用に集計関数を1つ選択できます。これらの関数(count以外)は、関数を使用するコンテキスト内にデータ・フィールドが複数存在する場合にのみ有効です。
-
LTR方向を強制(左から右)
このオプションが必要になるのは、アラビア語やヘブライ語など、右から左に文字を表示する言語でテンプレートを使用している場合にかぎります。電話番号、アドレス、郵便番号、銀行の口座番号など、フィールドに対して左から右に入力するには、このオプションを使用します。
データ・グループのプロパティ
データ要素の表示順序には、表の列の順序が反映されます。列を並べ替える場合は、「挿入位置」ボックスを「子」から「同一レベル」に変更します。次に、各要素を正しい順序になるようにドラッグします。
データ・グループ・ノードを選択すると、そのプロパティが「プロパティ」ペインに表示されます。次のオプションを使用して、Template Builderでのグループの表示方法を記述します。
-
スタイル
ヘッダーを使用してデータを表に横に表示するには、「表」を選択します。フィールドにラベルを付けて表に縦に表示するには、「フォーム」を使用します。フィールドを、この要素について繰り返す必要のあるフリー・フォーム・テキスト・セクションに挿入する場合は、「フリー・フォーム」を選択します。
-
グループ化
グループ化は、データ内の特定の要素でデータをグループ化できる高度な操作です。たとえば、すべての請求書を顧客別にグループ化できます。選択した要素の子要素をグループ化基準として選択できます。ノードのグループ化を参照してください。
-
グループ化値の表示
このプロパティが表示されるのは、「グループ化」機能で作成されたノードを選択した場合のみです。デフォルトでは、データのグループ化基準として選択したフィールドがレポートに表示されます。グループ化データ・フィールドを表示しない場合は、「いいえ」を選択します。
-
ソート基準
データ・グループのソート基準となる要素を選択できます。
-
ソート順序
「ソート基準」で要素を選択した場合は、データを昇順でソートするか降順でソートするかを選択できます。
-
データ型のソート
「ソート基準」で要素を選択した場合は、デフォルトでデータがテキストとしてソートされます。つまり、12は111の後に表示されます。データが数値の場合は、「データ型のソート」で「数値」を選択します。
-
区切り
このプロパティを使用すると、各データ・グループ間にページ区切りまたはセクション区切りを挿入できます。「要素ごとの新規ページ」を選択すると、最初の出現箇所以後、各要素間にページ区切りが挿入されます。
ヒント:
要素の最初の出現箇所の前にページ区切りを挿入するには、Microsoft Wordの改ページ・コマンドを使用します。
「要素ごとの新規セクション」を選択すると、データ・グループごとにセクション区切りが作成されます。セクション区切りには、ページ区切りを挿入し、ページ番号をリセットし、ヘッダーとフッターに新規データを表示できるという効果があります。このオプションは通常、複数の文書(例: 請求書や発注書)を単一のPDFファイルに出力する場合に使用します。
ノードのグループ化
すべてのデータ・グループ・ノードは、その任意の子データ・フィールド・ノードでグループ化できます。たとえば、複数四半期の販売データがある場合は、販売データを四半期別に編成して表示できます。この場合は、販売データ行を四半期要素でグループ化します。
次の構造を考えてみます。
Sales Transaction
Quarter
Customer
Amount
ノード(販売取引)の子ノードをグループ化するには、子ノードの1つ(四半期)を親ノード(販売取引)のグループ化プロパティとして選択します。Template Builderが、このノード(四半期)を他の子ノード(顧客および金額)の親にします。
新しい構造は次のようになります。
Sales Transaction
Quarter
Customer
Amount
グループ化基準(四半期)は、子を持つ他のデータ・グループ・ノードと同様に動作します。つまり、 「表として作成」、「スタイル」、「ラベル」、「グループ化」 および 「グループ化値の表示」 プロパティを使用して、子のレイアウトを定義できます。
テンプレートに挿入するフィールドの理解
テンプレート内のフィールドのタイプには、明確な違いがあります。
「表/フォームの挿入」ダイアログでは、次の2種類のフォーム・フィールドが作成されます。
- データ要素を示すフォーム・フィールド
- 表の行またはドキュメント・セクションを繰り返すための処理の指示を含むフォーム・フィールド
データ要素を表すフォーム・フィールドは、テンプレートの処理時にデータに置換されます。繰返しセクションを示すフォーム・フィールドは、ドキュメント内にfor-eachおよびend for-eachで示されます。
フォーム・フィールドの表示オプションとして「省略」を選択した場合は、フォーム・フィールドのfor-eachがF、end for-eachがEと表示されます。ドキュメントのうち、これら2つの要素でカプセル化されているセクションは、関連付けられているデータ要素がデータ内で繰り返される場合に繰り返されます。
チャートの挿入
値
測定するデータ値を「値」フィールドにドラッグ・アンド・ドロップします(SALESなど)。
複数の値要素(メジャー)を選択できます。
「値」フィールドは、選択したチャート・タイプに応じて変化します。
-
組合せグラフ: 3つのフィールドで値を選択できます。
-
散布図: 値のペアが比較されます。比較対象のXおよびYデータ要素をドラッグ・アンド・ドロップします。
-
バブル・グラフ: 3つの値セットが比較されます。散布図と同様に、第3の値はバブルのサイズとして表示されます。
-
株式グラフ: 株式グラフの始値、高値、安値、終値および出来高を表す要素をドラッグ・アンド・ドロップします。
ラベル
チャート化した値を表示するデータ要素(年など)をドラッグ・アンド・ドロップします。
チャートに表示する前にラベル要素の出現箇所をグループ化するには、「グループ・データ」を選択します。たとえば、年度別売上チャートを作成する場合、「グループ・データ」を選択すると年の値が累計されるため、グラフでは各年の出現箇所が1つのみ表示されます。「グループ・データ」を選択しなければ、データに含まれる年のすべての出現箇所の値が個別に描画されます。
グループ・データ
デフォルトでは、データは「値」要素によってグループ化され、合計によって集計されます。
「グループ・データ」チェック・ボックスの選択を解除すると、値要素の各出現箇所がチャートに示され、集計機能は使用できなくなります。
ピボット・テーブルの手動編集
この項は、ピボット・テーブル・ビルダーで挿入されたコードについて説明します。
Template Builderでピボット・テーブルを挿入する場合は、次の構造のPublisherコマンドが挿入されます。
<?crosstab: ctvarname; "data-element"; "rows"; "columns"; "measures"; "aggregation"?>
パラメータ | 説明 | 例 |
---|---|---|
Ctvarname |
クロス集計変数名。これは、アドインで自動生成されます。 |
C123 |
data-element |
これは、ピボット・テーブルに組み込まれるデータ要素を含むXMLデータ要素です。ピボット・テーブルが繰返しグループ内にある場合は、予期する結果を得るために、このフィールドを手動編集する必要があります。この項に続く表を参照してください。 |
"//ROW" |
rows |
このパラメータにより、行ヘッダーのXML要素を定義します。順序付け情報は、{" and "}内で指定します。最初の属性はソート要素です。指定されていない場合は、ソート要素として行ヘッダー要素を使用します。 サポートされる属性は次のとおりです。
たとえば、次のように2つ以上のソート要素を指定できます。 "emp-full-name {emp-lastname,o=a,t=n}{emp-firstname,o=a,t=n}" 従業員を姓および名でソートします。ソート要素は、データ・セット内の任意の要素に指定可能で、ピボット・テーブルに含まれている必要はないことに注意してください。前述の例では、 |
この例では、最初の行ヘッダーはREGIONです。REGIONでソートされ、ソート順序は昇順、型はテキストになります。第2の行ヘッダーはDISTRICTです。DISTRICTでソートされ、ソート順序は昇順、型はテキストになります。 |
columns |
このパラメータにより、列ヘッダーのXML要素を定義します。順序付け情報は、{" and "}内で指定します。最初の属性はソート要素です。指定されていない場合は、ソート要素として列ヘッダー要素を使用します。 サポートされる属性は次のとおりです。
たとえば、次のように2つ以上のソート要素を指定できます。 "emp-full-name {emp-lastname,o=a,t=n}{emp-firstname,o=a,t=n}" 従業員を姓および名でソートします。ソート要素は、データ・セット内の任意の要素に指定可能で、ピボット・テーブルに含まれている必要はないことに注意してください。前述の例では、 |
この例では、最初の列ヘッダーはProductsBrandです。ProductsBrandでソートされ、ソート順序は昇順、型はテキストになります。第2の列ヘッダーはPeriodYearです。PeriodYearでソートされ、ソート順序は昇順、型はテキストになります。 |
measures |
このパラメータにより、メジャーとして使用されるXML要素を定義します。 |
|
aggregation |
このパラメータにより、集計関数を指定します。現在、サポートされている値はsumのみです。 |
|
例
この例では、次のXMLデータを使用します。
- <ROWSET>
- <ROW>
<ProductsType>COATINGS</ProductsType>
<ProductsBrand>Enterprise</ProductsBrand> <Region>CENTRAL REGION</Region>
<District>CHICAGO DISTRICT</District>
<PeriodYear>1998</PeriodYear>
<Revenue>1555548.0</Revenue>
<PrevRevenue>125968</PrevRevenue>
<Units>11</Units>
</ROW>
...
</ROWSET>
完全なデータ・セットには、ピボット・テーブルに表示されるProductsBrandの4つの値、Regionの4つの値およびPeriodYearの2つの値が含まれています。
Template Builder for WordとサンプルXMLファイルを使用して、次の図に示すようなピボット・テーブルを作成できます。
このピボット・テーブルの生成済XDOコマンドは次のとおりです。
<?crosstab:c4536;"//ROW";"Region{,o=a,t=t},District{,o=a,t=t}";"PeriodYear{,o=a,t=t},ProductsBrand{,o=a,t=t}";"Revenue,PrevRevenue";"sum"?>
指定のXMLデータファイルでコマンドを実行すると、このXMLファイルのcttree.xmlが生成されます。cttree.xmlの各XPathは次の表で説明します。この表の情報により、Publisherでピボット・テーブルを構築する方法を理解できます。生成済のcttree.xmlファイルに、表示または更新のためにアクセスすることはできません。
要素 | XPath | 件数 | 説明 |
---|---|---|---|
C0 |
/cttree/C0 |
1 |
これには、列に関連する要素が含まれています。 |
C1 |
/cttree/C0/C1 |
4 |
第1レベルの列はProductsBrandです。ラベルH要素に表示される4つの個別値があります。 |
CS |
/cttree/C0/C1/CS |
4 |
列の幅の値です。ピボット・テーブルの書式設定に使用します。 |
H |
/cttree/C0/C1/H |
4 |
列ヘッダーのラベルです。Enterprise、Magicolor、McCloskeyおよびValsparの4つの個別値があります。 |
T1 |
/cttree/C0/C1/T1 |
4 |
メジャー1のRevenueの合計です。 |
T2 |
/cttree/C0/C1/T2 |
4 |
メジャー2のPrevRevenueの合計です。 |
C2 |
/cttree/C0/C1/C2 |
8 |
第1レベルの列はPeriodYearで、第2はグループ化キーです。2001および2002の2つの個別値があります。 |
H |
/cttree/C0/C1/C2/H |
8 |
列ヘッダーのラベルです。2001および2002の2つの個別値があります。これはC1の下にあるため、エントリの合計数は4 x 2 = 8になります。 |
T1 |
/cttree/C0/C1/C2/T1 |
8 |
メジャー1のRevenueの合計です。 |
T2 |
/cttree/C0/C1/C2/T2 |
8 |
メジャー2のPrevRevenueの合計です。 |
M0 |
/cttree/M0 |
1 |
これには、メジャーに関連する要素が含まれています。 |
M1 |
/cttree/M0/M1 |
1 |
これには、メジャー1のサマリーが含まれます。 |
H |
/cttree/M0/M1/H |
1 |
メジャー1ラベルで、Revenueです。 |
T |
/cttree/M0/M1/T |
1 |
//ROWからのXpath全体に対するメジャー1の合計です。 |
M2 |
/cttree/M0/M2 |
1 |
これには、メジャー2のサマリーが含まれます。 |
H |
/cttree/M0/M2/H |
1 |
メジャー2ラベルで、PrevRevenueです。 |
T |
/cttree/M0/M2/T |
1 |
//ROWからのXpath全体に対するメジャー2の合計です。 |
R0 |
/cttree/R0 |
1 |
これには、行に関連する要素が含まれています。 |
R1 |
/cttree/R0/R1 |
4 |
第1レベルの行はRegionです。ラベルH要素に表示される4つの個別値があります。 |
H |
/cttree/R0/R1/H |
4 |
これは、Regionの行ヘッダーのラベルです。CENTRAL REGION、EASTERN REGION、SOUTHERN REGIONおよびWESTERN REGIONの4つの個別値があります。 |
RS |
/cttree/R0/R1/RS |
4 |
行の幅の値です。クロス集計表の書式設定に使用します。 |
T1 |
/cttree/R0/R1/T1 |
4 |
各個別のRegion値に対するメジャー1のRevenueの合計です。 |
T2 |
/cttree/R0/R1/T2 |
4 |
各個別のRegion値に対するメジャー1のRevenueの合計です。 |
R1C1 |
/cttree/R0/R1/R1C1 |
16 |
これには、R1およびC1の組合せによる要素が含まれます。Regionの4つの個別値およびProductsBrandの4つの個別値があります。したがって、組合せは4 X 4 =16になります。 |
T1 |
/cttree/R0/R1/R1C1/T1 |
16 |
RegionおよびProductsBrandの各組合せに対するメジャー1のRevenueの合計です。 |
T2 |
/cttree/R0/R1/R1C1/T2 |
16 |
RegionおよびProductsBrandの各組合せに対するメジャー2のPrevRevenueの合計です。 |
R1C2 |
cttree/R0/R1/R1C1/R1C2 |
32 |
これには、R1、C1およびC2の組合せによる要素が含まれます。Regionの4つの個別値、ProductsBrandの4つの個別値およびPeriodYearの2つの個別値があります。したがって、組合せは4 X 4 X 2 = 32になります。 |
T1 |
/cttree/R0/R1/R1C1/R1C2/T1 |
32 |
Region、ProductsBrandおよびPeriodYearの各組合せに対するメジャー1のRevenueの合計です。 |
T2 |
/cttree/R0/R1/R1C1/R1C2/T2 |
32 |
Region、ProductsBrandおよびPeriodYearの各組合せに対するメジャー2のPrevRevenueの合計です。 |
R2 |
/cttree/R0/R1/R2 |
18 |
これには、R1のRegionおよびR2のDistrictの組合せによる要素が含まれます。R2の値のリストにR1への依存性が含まれるため、エントリ数が単純な乗算にはなりません。 |
H |
/cttree/R0/R1/R2/H |
18 |
R2のDistrictに対する行ヘッダーのラベルです。 |
R1N |
/cttree/R0/R1/R2/R1N |
18 |
R1内のR2の位置番号です。これは、最後の行であるかどうかをチェックし、それに応じて表の境界線を引くために使用します。 |
T1 |
/cttree/R0/R1/R2/T1 |
18 |
RegionおよびDistrictの各組合せに対するメジャー1のRevenueの合計です。 |
T2 |
/cttree/R0/R1/R2/T2 |
18 |
RegionおよびDistrictの各組合せに対するメジャー2のPrevRevenueの合計です。 |
R2C1 |
/cttree/R0/R1/R2/R2C1 |
72 |
これには、R1、R2およびC1の組合せによる要素が含まれます。 |
T1 |
/cttree/R0/R1/R2/R2C1/T1 |
72 |
Region、DistrictおよびProductsBrandの各組合せに対するメジャー1のRevenueの合計です。 |
T2 |
/cttree/R0/R1/R2/R2C1/T2 |
72 |
Region、DistrictおよびProductsBrandの各組合せに対するメジャー2のPrevRevenueの合計です。 |
R2C2 |
/cttree/R0/R1/R2/R2C1/R2C2 |
144 |
これには、R1、R2、C1およびC2の組合せによる要素が含まれ、最適なレベルの詳細が指定されます。 |
M1 |
/cttree/R0/R1/R2/R2C1/R2C2/M1 |
144 |
メジャー1のRevenueの合計です。 |
M2 |
/cttree/R0/R1/R2/R2C1/R2C2/M2 |
144 |
メジャー2のPrevRevenueの合計です。 |
繰返しグループへのピボット・テーブルの挿入
繰返しグループ内にピボット・テーブルを作成する場合は、ピボット・テーブルのコードを手動編集することで、ピボット・テーブルに含まれる要素によってグループ化コンテキストが考慮されるようにする必要があります。コードの編集は、データをグループ化する方法によって異なります。
Template Builderの「グループ化」機能の使用時のプロシージャ
データがフラットで、Template Builderの「グループ基準」機能を使用してデータをグループ化した場合は、この手順を使用します。ピボット・テーブルを挿入した後、Publisherのプロパティ・ダイアログを開いて<?crosstab...?>
コードを表示します。crosstab
コマンドで、data-elementコンポーネントをcurrent-group()
に更新します。
たとえば、前述の例で、<Region>
要素でグループ化されたピボット・テーブルの繰返しグループを作成するとします。
ピボット・テーブルのコードを編集するには:
例14-1 データがすでにグループ化されている場合のプロシージャ
Template Builderへのデータ入力がすでにグループ化されている場合は、data-elementコンポーネントの適切なXPathを挿入して、ピボット・テーブルに現在のグループ内の要素のみが含まれるようにします。
たとえば、このレポートのデータが次のように構成されているとします。
<ROWSET> <REGION>
<RegionName>CENTRAL REGION</RegionName>
<ProductList>
<Product>
<ProductsBrand>Enterprise</ProductsBrand>
<District>CHICAGO DISTRICT</District>
<PeriodYear>2001</PeriodYear>
<Revenue>1555548.0</Revenue>
<PrevRevenue>125968</PrevRevenue>
<Units>11</Units>
</Product>
テンプレートに、<REGION>要素に基づいた繰返しグループを挿入します。繰返しグループ内にピボット・テーブルを挿入する場合は、コードが次のように表示されます。
<?crosstab:c10959;"//Product";"District{,o=a,t=t},ProductsBrand{,o=a,t=t}";"PeriodYear{,o=a,t=t}";"Revenue,PrevRevenue";"sum"?>
この場合に、現在のREGIONグループにある要素のみを使用するようにPublisherに指示するには、相対XPathを.//Product
として使用するようにdata-elementを編集します。編集されたコードは次のようになります。
<?crosstab:c10959;".//Product";"District{,o=a,t=t},ProductsBrand{,o=a,t=t}";"PeriodYear{,o=a,t=t}";"Revenue,PrevRevenue";"sum"?>
条件付きリージョンの挿入と編集
条件付きリージョンとは、条件文の対象となる範囲を指します。条件文のテスト結果が真の場合は、該当範囲がレポートに表示され、条件文のテスト結果が偽の場合は、該当範囲がレポートから非表示になります。
たとえば、データに販売情報が含まれているとします。レポートには、業種別の売上を示す表が含まれています。レポートのこの表に、売上高が100,000未満の業種の情報を表示したいと考えています。条件付きリージョン機能の挿入を使用して、売上高表を含むリージョンを選択し、売上高要素が100,000未満でなければならない条件を挿入できます。
条件付きリージョンを編集するには、挿入されたフォーム・フィールドをダブルクリックして編集用のダイアログを開くか、またはフォーム・フィールドを右クリックして「BI Publisher」→「プロパティ」を選択します。
条件付き書式の挿入
条件付き書式機能を使用すると、単純な条件付フォーマットを挿入して表の行またはセルに適用できます。ダイアログに表示される複数の共通オプションから選択すると、Template Builderにより自動的にコードが挿入されます。「条件付き書式」ダイアログでは、フィールドごとに2つの条件がサポートされています。
条件付き書式を編集するには、挿入されたフォーム・フィールドをダブルクリックして編集用のダイアログを開くか、またはフォーム・フィールドを右クリックして「Publisher」、「プロパティ」の順に選択します。