Calc/Features/DataPilot drill-down on data field
Description
TODO: Describe the way rows are selected.
API Change
This functionality introduces the following new API.
[cpp,N]
module com { module sun { module star { module sheet {
interface XDrillDownDataSupplier: com::sun::star::uno::XInterface {
void getDrillDownData( [in] sequence< com::sun::star::sheet::DataPilotFieldFilter > aFilters, [out] sequence< sequence< any > > rData );
};
}; }; }; };
[cpp,N]
module com { module sun { module star { module sheet {
struct DataPilotFieldFilter {
/** Field name. */ string FieldName;
/** String value that needs to match against. */ string MatchValue;
};
}; }; }; };
The com.sun.star.sheet.DataPilotSource service is expected to support XDrillDownDataSupplier interface, to provide a 2-dimensional array data consisting of a subset of the original data source table that satisfies a given set of filtering criteria. A sequence of DataPilotFieldFilter provides desired filtering criteria to XDrillDownDataSupplier::getDrillDownData() method.
TODO: Add another method that takes a cell address instead of a sequence of filters.