23#include <document.hxx> 
   39#include <com/sun/star/sheet/DataPilotFieldReferenceType.hpp> 
   40#include <com/sun/star/sheet/DataPilotFieldReferenceItemType.hpp> 
   41#include <com/sun/star/sheet/DataPilotFieldShowItemsMode.hpp> 
   42#include <com/sun/star/sheet/DataPilotFieldSortMode.hpp> 
   43#include <com/sun/star/sheet/DataPilotFieldLayoutMode.hpp> 
   44#include <com/sun/star/sheet/DataPilotFieldGroupBy.hpp> 
   45#include <com/sun/star/sheet/DataPilotFieldOrientation.hpp> 
   49using ::com::sun::star::uno::Reference;
 
   64    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
  107    if ( !rAttrList.is() )
 
  110    for (
auto &aIter : *rAttrList)
 
  112        switch (aIter.getToken())
 
  160                sal_Int32 nOffset(0);
 
  199    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
  254    const std::vector<const ScDPSaveDimension*>& rRowDims,
 
  255    const std::vector<const ScDPSaveDimension*>& rColDims,
 
  256    const std::vector<const ScDPSaveDimension*>& rPageDims,
 
  263            if (rColDims.size() <= nPos)
 
  266            return rColDims[
nPos];
 
  270            if (rRowDims.size() <= nPos)
 
  273            return rRowDims[
nPos];
 
  277            if (rPageDims.size() <= nPos)
 
  280            return rPageDims[
nPos];
 
  296        case sheet::DataPilotFieldOrientation_COLUMN:
 
  298        case sheet::DataPilotFieldOrientation_DATA:
 
  300        case sheet::DataPilotFieldOrientation_PAGE:
 
  302        case sheet::DataPilotFieldOrientation_ROW:
 
  304        case sheet::DataPilotFieldOrientation_HIDDEN:
 
  324    std::vector<const ScDPSaveDimension*> aRowDims, aColDims, aPageDims;
 
  325    pDPSave->GetAllDimensionsByOrientation(sheet::DataPilotFieldOrientation_ROW, aRowDims);
 
  326    pDPSave->GetAllDimensionsByOrientation(sheet::DataPilotFieldOrientation_COLUMN, aColDims);
 
  327    pDPSave->GetAllDimensionsByOrientation(sheet::DataPilotFieldOrientation_PAGE, aPageDims);
 
  330    sal_Int32 nOffset = 0;
 
  331    while( nOffset >= 0 )
 
  337            sal_Int32 nAddrOffset(0);
 
  340                std::pair<ScDPOutputGeometry::FieldType, size_t> aBtnType = aGeometry.
getFieldButtonType(aScAddress);
 
  342                    aRowDims, aColDims, aPageDims, aBtnType.first, aBtnType.second);
 
  344                bool bDimension = pDim != 
nullptr;
 
  347                bool bPageDim = pDim && pDim->
GetOrientation() == sheet::DataPilotFieldOrientation_PAGE;
 
  406        case sheet::DataPilotFieldOrientation_ROW:
 
  409        case sheet::DataPilotFieldOrientation_COLUMN:
 
  412        case sheet::DataPilotFieldOrientation_PAGE:
 
  415        case sheet::DataPilotFieldOrientation_DATA:
 
  418        case sheet::DataPilotFieldOrientation_HIDDEN:
 
  461            aImportDesc.
nType = sheet::DataImportMode_SQL;
 
  471            aImportDesc.
nType = sheet::DataImportMode_TABLE;
 
  480            aImportDesc.
nType = sheet::DataImportMode_QUERY;
 
  525    pDPObject->SetSaveData(*
pDPSave);
 
  530    if ( pDPCollection->
GetByName(pDPObject->GetName()) )
 
  531        pDPObject->SetName( OUString() );     
 
  539    XMLTokenEnum eOrientation, 
bool bVisible, 
const OUString& rDisplayName)
 
  541    switch (eOrientation)
 
  567    if ( !rAttrList.is() )
 
  570    for (
auto &aIter : *rAttrList)
 
  572        switch (aIter.getToken())
 
  596    if ( !rAttrList.is() )
 
  599    for (
auto &aIter : *rAttrList)
 
  601        switch (aIter.getToken())
 
  623    if ( !rAttrList.is() )
 
  626    for (
auto &aIter : *rAttrList)
 
  628        switch (aIter.getToken())
 
  649    if ( !rAttrList.is() )
 
  652    for (
auto &aIter : *rAttrList)
 
  654        switch (aIter.getToken())
 
  683    mpTableContext(pTableContext),
 
  687    if ( !rAttrList.is() )
 
  690    for (
auto &aIter : *rAttrList)
 
  692        switch (aIter.getToken())
 
  743    pDataPilotTable(pTempDataPilotTable)
 
  745    if ( !rAttrList.is() )
 
  748    for (
auto &aIter : *rAttrList)
 
  750        switch (aIter.getToken())
 
  755                sal_Int32 nOffset(0);
 
  774    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
  794    pDataPilotTable(pTempDataPilotTable),
 
  801    nOrientation(sheet::DataPilotFieldOrientation_HIDDEN),
 
  802    bSelectedPage(false),
 
  803    bIsGroupField(false),
 
  807    mbHasHiddenMember(false)
 
  809    bool bHasName = 
false;
 
  810    bool bDataLayout = 
false;
 
  811    bool bIgnoreSelectedPage = 
false;
 
  812    OUString aDisplayName;
 
  813    if ( rAttrList.is() )
 
  815        for (
auto &aIter : *rAttrList)
 
  817            switch (aIter.getToken())
 
  820                    sName = aIter.toString();
 
  825                    aDisplayName = aIter.toString();
 
  841                    bIgnoreSelectedPage = 
true;
 
  851    if (bIgnoreSelectedPage)
 
  857        if (!aDisplayName.isEmpty())
 
  858            xDim->SetLayoutName(aDisplayName);
 
  867    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
  893        bool isVisible = pMember->GetIsVisible();
 
  894        xDim->AddMember(std::move(pMember));
 
  904        xDim->SetSubtotalName(rName);
 
  910        xDim->SetLayoutInfo(&aInfo);
 
  912    if (
pDataPilotTable && aInfo.LayoutMode == sheet::DataPilotFieldLayoutMode::COMPACT_LAYOUT)
 
  919    aGroup.
aMembers = std::move(rMembers);
 
  920    aGroup.
aName = rName;
 
  921    aGroups.push_back(std::move(aGroup));
 
  955            for (
const auto& rGroup : 
aGroups)
 
  958                for (
const auto& rMember : rGroup.aMembers)
 
  981    sheet::DataPilotFieldReference aReference;
 
  983    if ( rAttrList.is() )
 
  985        for (
auto &aIter : *rAttrList)
 
  987            switch (aIter.getToken())
 
  994                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::ITEM_DIFFERENCE;
 
  996                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::ITEM_PERCENTAGE;
 
  998                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::ITEM_PERCENTAGE_DIFFERENCE;
 
 1000                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::RUNNING_TOTAL;
 
 1002                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::ROW_PERCENTAGE;
 
 1004                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::COLUMN_PERCENTAGE;
 
 1006                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::TOTAL_PERCENTAGE;
 
 1008                        aReference.ReferenceType = sheet::DataPilotFieldReferenceType::INDEX;
 
 1013                    aReference.ReferenceField = aIter.toString();
 
 1019                        aReference.ReferenceItemType = sheet::DataPilotFieldReferenceItemType::NAMED;
 
 1021                        aReference.ReferenceItemType = sheet::DataPilotFieldReferenceItemType::PREVIOUS;
 
 1023                        aReference.ReferenceItemType = sheet::DataPilotFieldReferenceItemType::NEXT;
 
 1028                    aReference.ReferenceItemName = aIter.toString();
 
 1045    pDataPilotField(pTempDataPilotField)
 
 1047    if ( !rAttrList.is() )
 
 1050    for (
auto &aIter : *rAttrList)
 
 1052        switch (aIter.getToken())
 
 1069    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
 1102    sheet::DataPilotFieldAutoShowInfo aInfo;
 
 1104    if ( rAttrList.is() )
 
 1106        for (
auto &aIter : *rAttrList)
 
 1108            switch (aIter.getToken())
 
 1112                        aInfo.IsEnabled = 
true;
 
 1114                        aInfo.IsEnabled = 
false;
 
 1118                        aInfo.ShowItemsMode = sheet::DataPilotFieldShowItemsMode::FROM_TOP;
 
 1120                        aInfo.ShowItemsMode = sheet::DataPilotFieldShowItemsMode::FROM_BOTTOM;
 
 1123                    aInfo.ItemCount = aIter.toInt32();
 
 1126                    aInfo.DataField = aIter.toString();
 
 1143    sheet::DataPilotFieldSortInfo aInfo;
 
 1145    if ( rAttrList.is() )
 
 1147        for (
auto &aIter : *rAttrList)
 
 1149            switch (aIter.getToken())
 
 1153                        aInfo.IsAscending = 
true;
 
 1155                        aInfo.IsAscending = 
false;
 
 1161                        aInfo.Mode = sheet::DataPilotFieldSortMode::MANUAL;
 
 1163                        aInfo.Mode = sheet::DataPilotFieldSortMode::NAME;
 
 1165                        aInfo.Mode = sheet::DataPilotFieldSortMode::DATA;
 
 1168                    aInfo.Field = aIter.toString();
 
 1185    sheet::DataPilotFieldLayoutInfo aInfo;
 
 1186    aInfo.LayoutMode = sheet::DataPilotFieldLayoutMode::TABULAR_LAYOUT;
 
 1188    if ( rAttrList.is() )
 
 1190        for (
auto &aIter : *rAttrList)
 
 1192            switch (aIter.getToken())
 
 1196                        aInfo.AddEmptyLines = 
true;
 
 1198                        aInfo.AddEmptyLines = 
false;
 
 1204                    if (aInfo.LayoutMode != sheet::DataPilotFieldLayoutMode::COMPACT_LAYOUT)
 
 1207                            aInfo.LayoutMode = sheet::DataPilotFieldLayoutMode::TABULAR_LAYOUT;
 
 1209                            aInfo.LayoutMode = sheet::DataPilotFieldLayoutMode::OUTLINE_SUBTOTALS_TOP;
 
 1211                            aInfo.LayoutMode = sheet::DataPilotFieldLayoutMode::OUTLINE_SUBTOTALS_BOTTOM;
 
 1213                            aInfo.LayoutMode = sheet::DataPilotFieldLayoutMode::COMPACT_LAYOUT;
 
 1228    pDataPilotField(pTempDataPilotField)
 
 1239    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
 1277    if ( !rAttrList.is() )
 
 1280    for (
auto &aIter : *rAttrList)
 
 1282        switch (aIter.getToken())
 
 1302    pDataPilotField(pTempDataPilotField)
 
 1312    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
 1332    pDataPilotField(pTempDataPilotField),
 
 1334    bDisplayDetails( true ),
 
 1337    if ( !rAttrList.is() )
 
 1340    for (
auto &aIter : *rAttrList)
 
 1342        switch (aIter.getToken())
 
 1345                sName = aIter.toString();
 
 1383    pDataPilotField(pTempDataPilotField)
 
 1385    OUString                sGroupSource;
 
 1389    sal_Int32               nGroupPart(0);
 
 1390    bool                    bDateValue(
false);
 
 1391    bool                    bAutoStart(
true);
 
 1392    bool                    bAutoEnd(
true);
 
 1394    if ( rAttrList.is() )
 
 1396        for (
auto &aIter : *rAttrList)
 
 1402                    sGroupSource = aIter.toString();
 
 1412                        GetScImport().GetMM100UnitConverter().convertDateTime(fStart, aIter.toView());
 
 1424                        GetScImport().GetMM100UnitConverter().convertDateTime(fEnd, aIter.toView());
 
 1435                        fStart = aIter.toDouble();
 
 1446                        fEnd = aIter.toDouble();
 
 1453                    fStep = aIter.toDouble();
 
 1459                        nGroupPart = css::sheet::DataPilotFieldGroupBy::SECONDS;
 
 1461                        nGroupPart = css::sheet::DataPilotFieldGroupBy::MINUTES;
 
 1463                        nGroupPart = css::sheet::DataPilotFieldGroupBy::HOURS;
 
 1465                        nGroupPart = css::sheet::DataPilotFieldGroupBy::DAYS;
 
 1467                        nGroupPart = css::sheet::DataPilotFieldGroupBy::MONTHS;
 
 1469                        nGroupPart = css::sheet::DataPilotFieldGroupBy::QUARTERS;
 
 1471                        nGroupPart = css::sheet::DataPilotFieldGroupBy::YEARS;
 
 1485    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
 1503    pDataPilotField(pTempDataPilotField)
 
 1505    if ( rAttrList.is() )
 
 1508        if (aIter != rAttrList->end())
 
 1509            sName = aIter.toString();
 
 1518    sal_Int32 nElement, 
const uno::Reference< xml::sax::XFastAttributeList >& xAttrList )
 
 1542    pDataPilotGroup(pTempDataPilotGroup)
 
 1544    if ( rAttrList.is() )
 
 1547        if (aIter != rAttrList->end())
 
 1548            sName = aIter.toString();
 
 1558    if (!
sName.isEmpty())
 
@ HiddenMember
dp button with popup arrow
 
@ ButtonPopup2
dp compact layout expand button
 
SC_DLLPUBLIC ScDPObject * InsertNewTable(std::unique_ptr< ScDPObject > pDPObj)
 
ScDPObject * GetByName(std::u16string_view rName) const
 
This class has to do with handling exclusively grouped dimensions? TODO: Find out what this class doe...
 
std::pair< FieldType, size_t > getFieldButtonType(const ScAddress &rPos) const
 
void setColumnFieldCount(sal_uInt32 nCount)
 
void setRowFieldCount(sal_uInt32 nCount)
 
void setHeaderLayout(bool bHeaderLayout)
 
void setPageFieldCount(sal_uInt32 nCount)
 
void setDataFieldCount(sal_uInt32 nCount)
 
void setDataLayoutType(FieldType eType)
 
bool HasInvisibleMember() const
 
void SetDupFlag(bool bSet)
 
css::sheet::DataPilotFieldOrientation GetOrientation() const
 
bool IsDataLayout() const
 
const OUString & GetName() const
 
Represents a new group dimension whose dimension ID is higher than the highest source dimension ID.
 
void AddGroupItem(const ScDPSaveGroupItem &rItem)
 
void SetDateInfo(const ScDPNumGroupInfo &rInfo, sal_Int32 nPart)
 
Classes to save Data Pilot settings that create new dimensions (fields).
 
void AddElement(const OUString &rName)
 
Represents a group dimension that introduces a new hierarchy for an existing dimension.
 
void SetDateInfo(const ScDPNumGroupInfo &rInfo, sal_Int32 nPart)
 
SC_DLLPUBLIC bool ApplyFlagsTab(SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, SCTAB nTab, ScMF nFlags)
 
SC_DLLPUBLIC ScDPCollection * GetDPCollection()
 
static bool GetAddressFromString(ScAddress &rAddress, std::u16string_view rAddressStr, const ScDocument &rDocument, formula::FormulaGrammar::AddressConvention eConv, sal_Int32 &nOffset, sal_Unicode cSeparator=' ', sal_Unicode cQuote='\'')
String to Range core.
 
static bool GetRangeFromString(ScRange &rRange, std::u16string_view rRangeStr, const ScDocument &rDocument, formula::FormulaGrammar::AddressConvention eConv, sal_Int32 &nOffset, sal_Unicode cSeparator=' ', sal_Unicode cQuote='\'')
 
static void GetTokenByOffset(OUString &rToken, std::u16string_view rString, sal_Int32 &nOffset, sal_Unicode cSeparator=' ', sal_Unicode cQuote='\'')
 
This class contains authoritative information on the internal reference used as the data source for d...
 
SC_DLLPUBLIC void SetSourceRange(const ScRange &rRange)
 
SC_DLLPUBLIC void SetRangeName(const OUString &rName)
 
void SetQueryParam(const ScQueryParam &rParam)
 
static css::sheet::DataPilotFieldOrientation GetOrientationFromString(std::u16string_view rString)
 
static ScGeneralFunction GetFunctionFromString2(std::u16string_view rString)
 
virtual ~ScXMLDPSourceQueryContext() override
 
ScXMLDPSourceQueryContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotTableContext *pDataPilotTable)
 
ScXMLDPSourceSQLContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotTableContext *pDataPilotTable)
 
virtual ~ScXMLDPSourceSQLContext() override
 
virtual ~ScXMLDPSourceTableContext() override
 
ScXMLDPSourceTableContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotTableContext *pDataPilotTable)
 
ScXMLDataPilotDisplayInfoContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual ~ScXMLDataPilotDisplayInfoContext() override
 
void SetLayoutInfo(const css::sheet::DataPilotFieldLayoutInfo &aInfo)
 
void SetShowEmpty(const bool bValue)
 
void SetSubTotals(std::vector< ScGeneralFunction > &&rFunctions)
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
void SetGrouping(const OUString &rGroupSource, const double &rStart, const double &rEnd, const double &rStep, sal_Int32 nPart, bool bDate, bool bAutoSt, bool bAutoE)
 
void SetAutoShowInfo(const css::sheet::DataPilotFieldAutoShowInfo &aInfo)
 
css::sheet::DataPilotFieldOrientation nOrientation
 
virtual ~ScXMLDataPilotFieldContext() override
 
void AddGroup(::std::vector< OUString > &&rMembers, const OUString &rName)
 
::std::vector< ScXMLDataPilotGroup > aGroups
 
void SetFieldReference(const css::sheet::DataPilotFieldReference &aRef)
 
ScXMLDataPilotTableContext * pDataPilotTable
 
ScGeneralFunction nFunction
 
void AddMember(std::unique_ptr< ScDPSaveMember > pMember)
 
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
 
void SetSubTotalName(const OUString &rName)
 
void SetSortInfo(const css::sheet::DataPilotFieldSortInfo &aInfo)
 
std::unique_ptr< ScDPSaveDimension > xDim
 
ScXMLDataPilotFieldContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotTableContext *pDataPilotTable)
 
void SetRepeatItemLabels(const bool bSet)
 
virtual ~ScXMLDataPilotFieldReferenceContext() override
 
ScXMLDataPilotFieldReferenceContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual ~ScXMLDataPilotGrandTotalContext() override
 
ScXMLDataPilotTableContext * mpTableContext
 
Orientation meOrientation
 
ScXMLDataPilotGrandTotalContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotTableContext *pTableContext)
 
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
void AddMember(const OUString &sMember)
 
ScXMLDataPilotGroupContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
 
::std::vector< OUString > aMembers
 
ScXMLDataPilotFieldContext * pDataPilotField
 
virtual ~ScXMLDataPilotGroupContext() override
 
ScXMLDataPilotGroupMemberContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotGroupContext *pDataPilotGroup)
 
virtual ~ScXMLDataPilotGroupMemberContext() override
 
ScXMLDataPilotGroupContext * pDataPilotGroup
 
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
 
virtual ~ScXMLDataPilotGroupsContext() override
 
ScXMLDataPilotFieldContext * pDataPilotField
 
ScXMLDataPilotGroupsContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
ScXMLDataPilotLayoutInfoContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual ~ScXMLDataPilotLayoutInfoContext() override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
ScXMLDataPilotFieldContext * pDataPilotField
 
ScXMLDataPilotLevelContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual ~ScXMLDataPilotLevelContext() override
 
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
 
virtual ~ScXMLDataPilotMemberContext() override
 
ScXMLDataPilotFieldContext * pDataPilotField
 
ScXMLDataPilotMemberContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
ScXMLDataPilotFieldContext * pDataPilotField
 
virtual ~ScXMLDataPilotMembersContext() override
 
ScXMLDataPilotMembersContext(ScXMLImport &rImport, ScXMLDataPilotFieldContext *pDataPilotField)
 
ScXMLDataPilotSortInfoContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotFieldContext *pDataPilotField)
 
virtual ~ScXMLDataPilotSortInfoContext() override
 
ScXMLDataPilotSubTotalContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotSubTotalsContext *pDataPilotSubTotals)
 
virtual ~ScXMLDataPilotSubTotalContext() override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
virtual ~ScXMLDataPilotSubTotalsContext() override
 
void AddFunction(ScGeneralFunction nFunction)
 
void SetDisplayName(const OUString &rName)
 
std::vector< ScGeneralFunction > maFunctions
 
ScXMLDataPilotSubTotalsContext(ScXMLImport &rImport, ScXMLDataPilotFieldContext *pDataPilotField)
 
ScXMLDataPilotFieldContext * pDataPilotField
 
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
 
css::sheet::DataPilotFieldOrientation mnDataLayoutType
 
OUString sServicePassword
 
OUString sApplicationData
 
OUString sSourceRangeName
 
void SetHasCompactField()
 
void SetSourceRangeName(const OUString &sValue)
 
void SetServiceSourceObject(const OUString &sValue)
 
OUString sDataPilotTableName
 
OUString sServiceSourceObject
 
sal_uInt32 mnPageFieldCount
 
void SetSourceObject(const OUString &sValue)
 
GrandTotalItem maRowGrandTotal
 
void SetNative(bool bValue)
 
void AddDimension(ScDPSaveDimension *pDim)
 
sal_uInt32 mnRowFieldCount
 
void SetSourceCellRangeAddress(const ScRange &aValue)
 
std::unique_ptr< ScDPDimensionSaveData > pDPDimSaveData
 
void SetDatabaseName(const OUString &sValue)
 
ScXMLDataPilotTableContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList)
 
void SetServiceName(const OUString &sValue)
 
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
 
SelectedPagesType maSelectedPages
 
std::unique_ptr< ScDPSaveData > pDPSave
 
void SetButtons(ScDPObject *pDPObject)
 
sal_uInt32 mnDataFieldCount
 
OUString sServiceSourceName
 
ScQueryParam aSourceQueryParam
 
void AddGroupDim(const ScDPSaveNumGroupDimension &aNumGroupDim)
 
void SetServicePassword(const OUString &sValue)
 
OUString sServiceUsername
 
virtual ~ScXMLDataPilotTableContext() override
 
ScMySourceType nSourceType
 
ScRange aSourceCellRangeAddress
 
void SetSelectedPage(const OUString &rDimName, const OUString &rSelected)
 
void SetServiceSourceName(const OUString &sValue)
 
sal_uInt32 mnColFieldCount
 
void SetServiceUsername(const OUString &sValue)
 
GrandTotalItem maColGrandTotal
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
ScRange aTargetRangeAddress
 
void SetGrandTotal(::xmloff::token::XMLTokenEnum eOrientation, bool bVisible, const OUString &rDisplayName)
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
ScXMLDataPilotTablesContext(ScXMLImport &rImport)
 
virtual ~ScXMLDataPilotTablesContext() override
 
This class exists only to provide GetScImport() to its derived classes.
 
ScXMLImport & GetScImport()
 
ScDocument * GetDocument()
 
sc::PivotTableSources & GetPivotTableSources()
 
virtual ~ScXMLSourceCellRangeContext() override
 
ScXMLSourceCellRangeContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotTableContext *pDataPilotTable)
 
ScXMLDataPilotTableContext * pDataPilotTable
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList) override
 
ScXMLSourceServiceContext(ScXMLImport &rImport, const rtl::Reference< sax_fastparser::FastAttributeList > &rAttrList, ScXMLDataPilotTableContext *pDataPilotTable)
 
virtual ~ScXMLSourceServiceContext() override
 
ScGeneralFunction
the css::sheet::GeneralFunction enum is extended by constants in GeneralFunction2,...
 
FastAttributeList & castToFastAttributeList(const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList)
 
XML_DATA_PILOT_FIELD_REFERENCE
 
XML_DATA_PILOT_DISPLAY_INFO
 
XML_DATA_PILOT_LAYOUT_INFO
 
XML_OUTLINE_SUBTOTALS_TOP
 
XML_MEMBER_PERCENTAGE_DIFFERENCE
 
XML_DATA_PILOT_GROUP_MEMBER
 
XML_DATABASE_SOURCE_QUERY
 
XML_OUTLINE_SUBTOTALS_BOTTOM
 
XML_SHOW_DRILL_DOWN_BUTTONS
 
XML_DATABASE_SOURCE_TABLE
 
XML_DRILL_DOWN_ON_DOUBLE_CLICK
 
XML_DATA_PILOT_GRAND_TOTAL
 
bool IsXMLToken(std::u16string_view rString, enum XMLTokenEnum eToken)
 
css::sheet::DataImportMode nType
 
::std::vector< OUString > aMembers
 
Store pivot table data that need to be post-processed at the end of the import.
 
void appendSelectedPages(ScDPObject *pObj, SelectedPagesType &&rSelected)
 
void appendSheetSource(ScDPObject *pObj, const ScSheetSourceDesc &rDesc)
 
void appendDBSource(ScDPObject *pObj, const ScImportSourceDesc &rDesc)
 
void appendServiceSource(ScDPObject *pObj, const ScDPServiceDesc &rDesc)
 
#define XML_ELEMENT(prefix, name)
 
constexpr sal_Int32 TOKEN_MASK