LibreOffice Module sc (master)  1
Classes | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions | Private Attributes | List of all members
ScDPTableData Class Referenceabstract

Base class that abstracts different data source types of a datapilot table. More...

#include <dptabdat.hxx>

Inheritance diagram for ScDPTableData:
[legend]
Collaboration diagram for ScDPTableData:
[legend]

Classes

struct  CalcInfo
 This structure stores dimension information used when calculating results. More...
 
struct  CalcRowData
 This structure stores vector arrays that hold intermediate data for each row during cache table iteration. More...
 

Public Member Functions

 ScDPTableData (const ScDPTableData &)=delete
 
const ScDPTableDataoperator= (const ScDPTableData &)=delete
 
 ScDPTableData (const ScDocument *pDoc)
 
virtual ~ScDPTableData ()
 
OUString GetFormattedString (sal_Int32 nDim, const ScDPItemData &rItem, bool bLocaleIndependent) const
 
tools::Long GetDatePart (tools::Long nDateVal, tools::Long nHierarchy, tools::Long nLevel)
 
virtual sal_Int32 GetColumnCount ()=0
 use (new) typed collection instead of ScStrCollection or separate Str and ValueCollection More...
 
virtual const std::vector< SCROW > & GetColumnEntries (sal_Int32 nColumn)
 
virtual OUString getDimensionName (sal_Int32 nColumn)=0
 
virtual bool getIsDataLayoutDimension (sal_Int32 nColumn)=0
 
virtual bool IsDateDimension (sal_Int32 nDim)=0
 
virtual sal_uInt32 GetNumberFormat (sal_Int32 nDim)
 
sal_uInt32 GetNumberFormatByIdx (NfIndexTableOffset)
 
virtual void DisposeData ()=0
 
virtual void SetEmptyFlags (bool bIgnoreEmptyRows, bool bRepeatIfEmpty)=0
 
virtual bool IsRepeatIfEmpty ()
 
virtual void CreateCacheTable ()=0
 
virtual void FilterCacheTable (const std::vector< ScDPFilteredCache::Criterion > &rCriteria, const std::unordered_set< sal_Int32 > &rDataDims)=0
 
virtual void GetDrillDownData (const std::vector< ScDPFilteredCache::Criterion > &rCriteria, const std::unordered_set< sal_Int32 > &rCatDims, css::uno::Sequence< css::uno::Sequence< css::uno::Any > > &rData)=0
 
virtual void CalcResults (CalcInfo &rInfo, bool bAutoShow)=0
 
virtual const ScDPFilteredCacheGetCacheTable () const =0
 
virtual void ReloadCacheTable ()=0
 
virtual bool IsBaseForGroup (sal_Int32 nDim) const
 
virtual sal_Int32 GetGroupBase (sal_Int32 nGroupDim) const
 
virtual bool IsNumOrDateGroup (sal_Int32 nDim) const
 
virtual bool IsInGroup (const ScDPItemData &rGroupData, sal_Int32 nGroupIndex, const ScDPItemData &rBaseData, sal_Int32 nBaseIndex) const
 
virtual bool HasCommonElement (const ScDPItemData &rFirstData, sal_Int32 nFirstIndex, const ScDPItemData &rSecondData, sal_Int32 nSecondIndex) const
 
virtual sal_Int32 GetMembersCount (sal_Int32 nDim)
 
const ScDPItemDataGetMemberByIndex (sal_Int32 nDim, sal_Int32 nIndex)
 
virtual const ScDPItemDataGetMemberById (sal_Int32 nDim, sal_Int32 nId)
 
virtual sal_Int32 GetSourceDim (sal_Int32 nDim)
 
virtual sal_Int32 Compare (sal_Int32 nDim, sal_Int32 nDataId1, sal_Int32 nDataId2)
 
virtual void Dump () const
 

Protected Member Functions

void FillRowDataFromCacheTable (sal_Int32 nRow, const ScDPFilteredCache &rCacheTable, const CalcInfo &rInfo, CalcRowData &rData)
 
void CalcResultsFromCacheTable (const ScDPFilteredCache &rCacheTable, CalcInfo &rInfo, bool bAutoShow)
 

Static Protected Member Functions

static void ProcessRowData (CalcInfo &rInfo, const CalcRowData &rData, bool bAutoShow)
 

Private Member Functions

void GetItemData (const ScDPFilteredCache &rCacheTable, sal_Int32 nRow, const ::std::vector< sal_Int32 > &rDims,::std::vector< SCROW > &rItemData)
 

Private Attributes

tools::Long nLastDateVal
 
tools::Long nLastHier
 
tools::Long nLastLevel
 
tools::Long nLastRet
 
const ScDocumentmpDoc
 

Detailed Description

Base class that abstracts different data source types of a datapilot table.

Definition at line 57 of file dptabdat.hxx.

Constructor & Destructor Documentation

ScDPTableData::ScDPTableData ( const ScDPTableData )
delete
ScDPTableData::ScDPTableData ( const ScDocument pDoc)

Definition at line 39 of file dptabdat.cxx.

References nLastDateVal, nLastHier, nLastLevel, and nLastRet.

ScDPTableData::~ScDPTableData ( )
virtual

Definition at line 47 of file dptabdat.cxx.

Member Function Documentation

virtual void ScDPTableData::CalcResults ( CalcInfo rInfo,
bool  bAutoShow 
)
pure virtual
void ScDPTableData::CalcResultsFromCacheTable ( const ScDPFilteredCache rCacheTable,
CalcInfo rInfo,
bool  bAutoShow 
)
protected
sal_Int32 ScDPTableData::Compare ( sal_Int32  nDim,
sal_Int32  nDataId1,
sal_Int32  nDataId2 
)
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 273 of file dptabdat.cxx.

References getIsDataLayoutDimension().

Referenced by ScDPMember::Compare().

virtual void ScDPTableData::CreateCacheTable ( )
pure virtual
virtual void ScDPTableData::DisposeData ( )
pure virtual
virtual void ScDPTableData::Dump ( ) const
virtual
void ScDPTableData::FillRowDataFromCacheTable ( sal_Int32  nRow,
const ScDPFilteredCache rCacheTable,
const CalcInfo rInfo,
CalcRowData rData 
)
protected
virtual void ScDPTableData::FilterCacheTable ( const std::vector< ScDPFilteredCache::Criterion > &  rCriteria,
const std::unordered_set< sal_Int32 > &  rDataDims 
)
pure virtual
virtual const ScDPFilteredCache& ScDPTableData::GetCacheTable ( ) const
pure virtual
virtual sal_Int32 ScDPTableData::GetColumnCount ( )
pure virtual
const std::vector< SCROW > & ScDPTableData::GetColumnEntries ( sal_Int32  nColumn)
virtual
tools::Long ScDPTableData::GetDatePart ( tools::Long  nDateVal,
tools::Long  nHierarchy,
tools::Long  nLevel 
)
virtual OUString ScDPTableData::getDimensionName ( sal_Int32  nColumn)
pure virtual
virtual void ScDPTableData::GetDrillDownData ( const std::vector< ScDPFilteredCache::Criterion > &  rCriteria,
const std::unordered_set< sal_Int32 > &  rCatDims,
css::uno::Sequence< css::uno::Sequence< css::uno::Any > > &  rData 
)
pure virtual
OUString ScDPTableData::GetFormattedString ( sal_Int32  nDim,
const ScDPItemData rItem,
bool  bLocaleIndependent 
) const
sal_Int32 ScDPTableData::GetGroupBase ( sal_Int32  nGroupDim) const
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 117 of file dptabdat.cxx.

Referenced by ScDPResultData::GetGroupBase().

virtual bool ScDPTableData::getIsDataLayoutDimension ( sal_Int32  nColumn)
pure virtual
void ScDPTableData::GetItemData ( const ScDPFilteredCache rCacheTable,
sal_Int32  nRow,
const ::std::vector< sal_Int32 > &  rDims,
::std::vector< SCROW > &  rItemData 
)
private
const ScDPItemData * ScDPTableData::GetMemberById ( sal_Int32  nDim,
sal_Int32  nId 
)
virtual
const ScDPItemData * ScDPTableData::GetMemberByIndex ( sal_Int32  nDim,
sal_Int32  nIndex 
)
sal_Int32 ScDPTableData::GetMembersCount ( sal_Int32  nDim)
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 241 of file dptabdat.cxx.

References GetCacheTable(), ScDPFilteredCache::getFieldEntries(), and MAXCOL.

Referenced by GetMemberByIndex(), and ScDPMembers::ScDPMembers().

sal_uInt32 ScDPTableData::GetNumberFormat ( sal_Int32  nDim)
virtual

Reimplemented in ScDPGroupTableData, and ScSheetDPData.

Definition at line 107 of file dptabdat.cxx.

Referenced by ScDPDimension::getPropertyValue().

sal_uInt32 ScDPTableData::GetNumberFormatByIdx ( NfIndexTableOffset  eIdx)

Definition at line 138 of file dpshttab.cxx.

References ScDocument::GetFormatTable(), LANGUAGE_SYSTEM, and mpDoc.

Referenced by ScDPDimension::getPropertyValue().

sal_Int32 ScDPTableData::GetSourceDim ( sal_Int32  nDim)
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 268 of file dptabdat.cxx.

Referenced by GetItemData().

bool ScDPTableData::HasCommonElement ( const ScDPItemData rFirstData,
sal_Int32  nFirstIndex,
const ScDPItemData rSecondData,
sal_Int32  nSecondIndex 
) const
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 134 of file dptabdat.cxx.

Referenced by ScDPResultData::HasCommonElement().

bool ScDPTableData::IsBaseForGroup ( sal_Int32  nDim) const
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 112 of file dptabdat.cxx.

Referenced by ScDPResultData::IsBaseForGroup().

virtual bool ScDPTableData::IsDateDimension ( sal_Int32  nDim)
pure virtual
bool ScDPTableData::IsInGroup ( const ScDPItemData rGroupData,
sal_Int32  nGroupIndex,
const ScDPItemData rBaseData,
sal_Int32  nBaseIndex 
) const
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 127 of file dptabdat.cxx.

Referenced by ScDPResultData::IsInGroup().

bool ScDPTableData::IsNumOrDateGroup ( sal_Int32  nDim) const
virtual

Reimplemented in ScDPGroupTableData.

Definition at line 122 of file dptabdat.cxx.

Referenced by ScDPResultData::IsNumOrDateGroup().

bool ScDPTableData::IsRepeatIfEmpty ( )
virtual
const ScDPTableData& ScDPTableData::operator= ( const ScDPTableData )
delete
void ScDPTableData::ProcessRowData ( CalcInfo rInfo,
const CalcRowData rData,
bool  bAutoShow 
)
staticprotected
virtual void ScDPTableData::ReloadCacheTable ( )
pure virtual
virtual void ScDPTableData::SetEmptyFlags ( bool  bIgnoreEmptyRows,
bool  bRepeatIfEmpty 
)
pure virtual

Member Data Documentation

const ScDocument* ScDPTableData::mpDoc
private

Definition at line 64 of file dptabdat.hxx.

Referenced by GetNumberFormatByIdx().

tools::Long ScDPTableData::nLastDateVal
private

Definition at line 60 of file dptabdat.hxx.

Referenced by GetDatePart(), and ScDPTableData().

tools::Long ScDPTableData::nLastHier
private

Definition at line 61 of file dptabdat.hxx.

Referenced by GetDatePart(), and ScDPTableData().

tools::Long ScDPTableData::nLastLevel
private

Definition at line 62 of file dptabdat.hxx.

Referenced by GetDatePart(), and ScDPTableData().

tools::Long ScDPTableData::nLastRet
private

Definition at line 63 of file dptabdat.hxx.

Referenced by GetDatePart(), and ScDPTableData().


The documentation for this class was generated from the following files: