パッケージ com.osboffice.osbxl
クラス PivotTableWrapper
java.lang.Object
com.osboffice.osbxl.PivotTableWrapper
ピボットテーブルの集計を取り扱うクラスです。v1.0では、単一のテーブルまたはデータ範囲からの集計となります。
-
メソッドの概要
修飾子とタイプメソッド説明void
addCustomField
(String customFieldName, String customFieldFormula) カスタムフィールドの追加を行います(表記書式:なし)。void
addCustomField
(String customFieldName, String customFieldFormula, String numberFormat) カスタムフィールドの追加を行います。void
addCustomItem
(String itemName, String targetFieldName, String customItemFormula) 集計アイテムの追加を行います。void
deleteCustomField
(String customFieldName) カスタムフィールドの削除を行います。void
deleteCustomItem
(String itemName, String targetFieldName) 集計アイテムの削除を行います。void
deleteCustomItemPartial
(String itemName, List<String> rowItems, List<String> colItems, String dataFieldName) 集計アイテムの部分更新(集計アイテム中の単一セルを別の集計式にする)の削除を行います。ピボットテーブルのフィールド情報を取得します。ピボットフィールドの全取得を行います。ピボット集計の末尾集計行の有無(行および列)の取得を行います。ピボット集計のレイアウトタイプの取得を行います。ピボットテーブルの設定項目を取得します。ピボット集計の末尾集計行の集計位置の取得を行います。void
refresh()
ピボットテーブルの再集計を行います。void
集計元のデータを最新化した上、再集計します。void
setFields
(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields) ピボット集計の実行を行います(grandTotalLayoutType: 行および列,subtotalsLayoutType:末尾,specialDataFieldDirectionCol:列,specialDataFieldOrder:最後尾)。void
setFields
(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType) ピボット集計の実行を行います(subtotalsLayoutType:末尾,specialDataFieldDirectionCol:列,specialDataFieldOrder:最後尾)。void
setFields
(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType, XlPivotTableDisplaySubtotalsType subtotalsLayoutType) ピボット集計の実行を行います(specialDataFieldDirectionCol:列,specialDataFieldOrder:最後尾)。void
setFields
(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType, XlPivotTableDisplaySubtotalsType subtotalsLayoutType, boolean specialDataFieldDirectionCol) ピボット集計の実行を行います(specialDataFieldOrder:最後尾)。void
setFields
(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType, XlPivotTableDisplaySubtotalsType subtotalsLayoutType, boolean specialDataFieldDirectionCol, int specialDataFieldOrder) ピボット集計の実行を行います。void
upadteCustomItemPartial
(String itemName, String customItemFormula, List<String> rowItems, List<String> colItems, String dataFieldName) 集計アイテムの部分更新(集計アイテム中の単一セルを別の集計式にする)を行います。
-
メソッドの詳細
-
getPivotTableSetting
ピボットテーブルの設定項目を取得します。- 戻り値:
- ピボットテーブルの設定項目オブジェクト
-
getField
ピボットテーブルのフィールド情報を取得します。- パラメータ:
fieldName
- フィールド名- 戻り値:
- ピボットフィールドオブジェクト
-
getFields
ピボットフィールドの全取得を行います。- 戻り値:
- List<ピボットフィールドオブジェクト>
-
setFields
public void setFields(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType, XlPivotTableDisplaySubtotalsType subtotalsLayoutType, boolean specialDataFieldDirectionCol, int specialDataFieldOrder) ピボット集計の実行を行います。- dataFieldsが複数ある場合、集計アイテム(Σ)をCol方向またはRow方向に置く必要がありますが、specialDataFieldDirectionColは、この方向を決めます。
- dataFieldsが単一の時、specialDataFieldDirectionColおよびspecialDataFieldOrderは無視されます。
- パラメータ:
settings
- ピボットテーブルの設定項目オブジェクトlayoutType
- レポートのレイアウトタイプrowFields
- 行におくピボットフィールドcolFields
- 列におくピボットフィールドfilterFields
- フィルター条件におくピボットフィールドdataFields
- 集計対象のピボットフィールド(データ項目)grandTotalLayoutType
- 末尾の集計フィールドの有無およびおく方向subtotalsLayoutType
- 末尾の集計フィールドの集計位置specialDataFieldDirectionCol
- (dataFieldsが複数の時) true:集計アイテム(Σ)を列側に配置 false:集計アイテム(Σ)を行側に配置specialDataFieldOrder
- (dataFieldsが複数の時) 集計アイテム(Σ)の位置 -1は最後尾を表します。1から始まります。
-
setFields
public void setFields(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType, XlPivotTableDisplaySubtotalsType subtotalsLayoutType, boolean specialDataFieldDirectionCol) ピボット集計の実行を行います(specialDataFieldOrder:最後尾)。- dataFieldsが複数ある場合、集計アイテム(Σ)をCol方向またはRow方向に置く必要がありますが、specialDataFieldDirectionColは、この方向を決めます。
- dataFieldsが単一の時、specialDataFieldDirectionColおよびspecialDataFieldOrderは無視されます。
- パラメータ:
settings
- ピボットテーブルの設定項目オブジェクトlayoutType
- レポートのレイアウトタイプrowFields
- 行におくピボットフィールドcolFields
- 列におくピボットフィールドfilterFields
- フィルター条件におくピボットフィールドdataFields
- 集計対象のピボットフィールド(データ項目)grandTotalLayoutType
- 末尾の集計フィールドの有無およびおく方向subtotalsLayoutType
- 末尾の集計フィールドの集計位置specialDataFieldDirectionCol
- (dataFieldsが複数の時) true:集計アイテム(Σ)を列側に配置 false:集計アイテム(Σ)を行側に配置
-
setFields
public void setFields(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType, XlPivotTableDisplaySubtotalsType subtotalsLayoutType) ピボット集計の実行を行います(specialDataFieldDirectionCol:列,specialDataFieldOrder:最後尾)。- dataFieldsが複数ある場合、集計アイテム(Σ)をCol方向またはRow方向に置く必要がありますが、specialDataFieldDirectionColは、この方向を決めます。
- dataFieldsが単一の時、specialDataFieldDirectionColおよびspecialDataFieldOrderは無視されます。
- パラメータ:
settings
- ピボットテーブルの設定項目オブジェクトlayoutType
- レポートのレイアウトタイプrowFields
- 行におくピボットフィールドcolFields
- 列におくピボットフィールドfilterFields
- フィルター条件におくピボットフィールドdataFields
- 集計対象のピボットフィールド(データ項目)grandTotalLayoutType
- 末尾の集計フィールドの有無およびおく方向subtotalsLayoutType
- 末尾の集計フィールドの集計位置
-
setFields
public void setFields(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields, XlPivotTableDisplayGrandTotalType grandTotalLayoutType) ピボット集計の実行を行います(subtotalsLayoutType:末尾,specialDataFieldDirectionCol:列,specialDataFieldOrder:最後尾)。- dataFieldsが複数ある場合、集計アイテム(Σ)をCol方向またはRow方向に置く必要がありますが、specialDataFieldDirectionColは、この方向を決めます。
- dataFieldsが単一の時、specialDataFieldDirectionColおよびspecialDataFieldOrderは無視されます。
- パラメータ:
settings
- ピボットテーブルの設定項目オブジェクトlayoutType
- レポートのレイアウトタイプrowFields
- 行におくピボットフィールドcolFields
- 列におくピボットフィールドfilterFields
- フィルター条件におくピボットフィールドdataFields
- 集計対象のピボットフィールド(データ項目)grandTotalLayoutType
- 末尾の集計フィールドの有無およびおく方向
-
setFields
public void setFields(PivotTableSettingObjectWrapper settings, XlPivotTableLayoutType layoutType, List<PivotFieldObjectWrapper> rowFields, List<PivotFieldObjectWrapper> colFields, List<PivotFieldObjectWrapper> filterFields, List<PivotFieldObjectWrapper> dataFields) ピボット集計の実行を行います(grandTotalLayoutType: 行および列,subtotalsLayoutType:末尾,specialDataFieldDirectionCol:列,specialDataFieldOrder:最後尾)。- dataFieldsが複数ある場合、集計アイテム(Σ)をCol方向またはRow方向に置く必要がありますが、specialDataFieldDirectionColは、この方向を決めます。
- dataFieldsが単一の時、specialDataFieldDirectionColおよびspecialDataFieldOrderは無視されます。
- パラメータ:
settings
- ピボットテーブルの設定項目オブジェクトlayoutType
- レポートのレイアウトタイプrowFields
- 行におくピボットフィールドcolFields
- 列におくピボットフィールドfilterFields
- フィルター条件におくピボットフィールドdataFields
- 集計対象のピボットフィールド(データ項目)
-
getLayoutType
ピボット集計のレイアウトタイプの取得を行います。- 戻り値:
- レポートのレイアウトタイプ
-
getGrandTotalLayoutType
ピボット集計の末尾集計行の有無(行および列)の取得を行います。- 戻り値:
- 末尾の集計フィールドの有無およびおく方向を取得します。
-
getSubTotalsLayoutType
ピボット集計の末尾集計行の集計位置の取得を行います。- 戻り値:
- 末尾の集計フィールドの集計位置の取得を行います。
-
addCustomField
カスタムフィールドの追加を行います。- refreshメソッドを呼ばない限り、カスタムフィールドを追加しただけでは、集計値が反映されません。最後に、refreshメソッドを必ず呼んでください。
- customFieldFormulaの数式は、通常ピボットフィールドのフィールド名を含みますが、クォーテーション等で囲む必要がありません。(例: フィールドA * 2)
- パラメータ:
customFieldName
- カスタムフィールド名customFieldFormula
- カスタムフィールドの集計式numberFormat
- 表記書式を指定する場合は、指定可能です。空文字を設定すると、表記書式は設定されません。
-
addCustomField
カスタムフィールドの追加を行います(表記書式:なし)。- refreshメソッドを呼ばない限り、カスタムフィールドを追加しただけでは、集計値が反映されません。最後に、refreshメソッドを必ず呼んでください。
- customFieldFormulaの数式は、通常ピボットフィールドのフィールド名を含みますが、その際、クォーテーション等で囲む必要がありません。(例: フィールドA * 2 と設定)
- パラメータ:
customFieldName
- カスタムフィールド名customFieldFormula
- カスタムフィールドの集計式
-
deleteCustomField
カスタムフィールドの削除を行います。- refreshメソッドを呼ばない限り、カスタムフィールドを削除しただけでは、集計値が反映されません。最後に、refreshメソッドを必ず呼んでください。
- パラメータ:
customFieldName
- カスタムフィールド名
-
addCustomItem
集計アイテムの追加を行います。- refreshメソッドを呼ばない限り、集計アイテムを追加しただけでは、集計値が反映されません。最後に、refreshメソッドを必ず呼んでください。
- customFieldFormulaの数式は、通常ピボットフィールドのフィールド名および項目名を含みますが、その際、クォーテーション等で囲む必要がありません。(例: フィールドA[項目あ] * 2 と設定)
- パラメータ:
itemName
- 集計アイテムの名前targetFieldName
- 追加する集計アイテムが属するピボットフィールドの項目名customItemFormula
- 集計アイテムの集計式
-
deleteCustomItem
集計アイテムの削除を行います。- refreshメソッドを呼ばない限り、集計アイテムを削除しただけでは、集計値が反映されません。最後に、refreshメソッドを必ず呼んでください。
- upadteCustomItemPartialメソッドで追加した部分アイテムが集計アイテムに所属していた場合、削除します。
- パラメータ:
itemName
- 集計アイテムの名前targetFieldName
- 削除する集計アイテムが属するピボットフィールドの項目名
-
upadteCustomItemPartial
public void upadteCustomItemPartial(String itemName, String customItemFormula, List<String> rowItems, List<String> colItems, String dataFieldName) 集計アイテムの部分更新(集計アイテム中の単一セルを別の集計式にする)を行います。- refreshメソッドを呼ばない限り、集計アイテムの部分更新だけでは、集計値が反映されません。最後に、refreshメソッドを必ず呼んでください。
- customItemFormulaの数式は、通常ピボットフィールドのフィールド名および項目名を含みますが、その際、クォーテーション等で囲む必要がありません。(例: フィールドA[項目あ] * 2 と設定)
- パラメータ:
itemName
- セットする集計式の所属するアイテム名customItemFormula
- セットする集計式rowItems
- 部分更新するセルの行方向の値を上から記述した List<集計する行の値>colItems
- 部分更新するセルの列方向の値を上から記述した List<集計する列の値>dataFieldName
- 対象のデータフィールド名
-
deleteCustomItemPartial
public void deleteCustomItemPartial(String itemName, List<String> rowItems, List<String> colItems, String dataFieldName) 集計アイテムの部分更新(集計アイテム中の単一セルを別の集計式にする)の削除を行います。- refreshメソッドを呼ばない限り、集計アイテムの部分更新の削除だけでは、集計値が反映されません。最後に、refreshメソッドを必ず呼んでください。
- パラメータ:
itemName
- セットした集計式の所属するアイテム名rowItems
- 部分更新したセルの行方向の値を上から記述した List<集計する行の値>colItems
- 部分更新したセルの列方向の値を上から記述した List<集計する列の値>dataFieldName
- 対象のデータフィールド名
-
refreshData
public void refreshData()集計元のデータを最新化した上、再集計します。- 集計元のデータが変更されていた場合、ピボットテーブルの集計に反映させます。
-
refresh
public void refresh()ピボットテーブルの再集計を行います。- フィールド構成の変更やフィールドの追加や削除が行われた場合、このメソッドで反映させます。集計元のデータはそのままです
-