Files
DocumentServer-v-9.2.0/core/OOXML/XlsxFormat/Pivot/PivotCacheDefinition.h
Yajbir Singh f1b860b25c
Some checks failed
check / markdownlint (push) Has been cancelled
check / spellchecker (push) Has been cancelled
updated
2025-12-11 19:03:17 +05:30

881 lines
28 KiB
C++

/*
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "PivotTable.h"
#include "PivotHierarchies.h"
#include "PivotCacheChildOther.h"
namespace SimpleTypes
{
class CDateTime;
class CRelationshipId;
class CUnsignedDecimalNumber;
namespace Spreadsheet
{
class CValuesGroupBy;
class CSourceCacheType;
}
}
namespace OOX
{
namespace Spreadsheet
{
class CSharedItems : public WritingElementWithChilds<WritingElement>
{
public:
WritingElement_AdditionMethods(CSharedItems)
WritingElement_XlsbConstructors(CSharedItems)
CSharedItems(){}
virtual ~CSharedItems() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return _T("");
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_SharedItems;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
XLS::BaseObjectPtr writeAttributes(const unsigned char flags);
nullable_bool m_oContainsBlank;
nullable_bool m_oContainsDate;
nullable_bool m_oContainsInteger;
nullable_bool m_oContainsMixedTypes;
nullable_bool m_oContainsNonDate;
nullable_bool m_oContainsNumber;
nullable_bool m_oContainsSemiMixedTypes;
nullable_bool m_oContainsString;
nullable_bool m_oLongText;
nullable_double m_oMinValue;
nullable_double m_oMaxValue;
nullable<SimpleTypes::CDateTime> m_oMinDate;
nullable<SimpleTypes::CDateTime> m_oMaxDate;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class COLAPGroupItems : public WritingElementWithChilds<WritingElement>
{
public:
WritingElement_AdditionMethods(COLAPGroupItems)
WritingElement_XlsbConstructors(COLAPGroupItems)
COLAPGroupItems(){}
virtual ~COLAPGroupItems() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return _T("");
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_OLAPGroupItems;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CDiscreteGroupingProperties : public WritingElementWithChilds<CSharedItemsIndex>
{
public:
WritingElement_AdditionMethods(CDiscreteGroupingProperties)
WritingElement_XlsbConstructors(CDiscreteGroupingProperties)
CDiscreteGroupingProperties(){}
virtual ~CDiscreteGroupingProperties() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_DiscreteGroupingProperties;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CRangeGroupingProperties : public WritingElement
{
public:
WritingElement_AdditionMethods(CRangeGroupingProperties)
WritingElement_XlsbConstructors(CRangeGroupingProperties)
CRangeGroupingProperties(){}
virtual ~CRangeGroupingProperties() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_RangeGroupingProperties;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::Spreadsheet::CValuesGroupBy> m_oGroupBy;
nullable_bool m_oAutoStart;
nullable_bool m_oAutoEnd;
nullable<SimpleTypes::CDateTime> m_oStartDate;
nullable<SimpleTypes::CDateTime> m_oEndDate;
nullable_double m_oStartNum;
nullable_double m_oEndNum;
nullable_double m_oGroupInterval;
};
class CFieldGroupProperties : public WritingElement
{
public:
WritingElement_AdditionMethods(CFieldGroupProperties)
WritingElement_XlsbConstructors(CFieldGroupProperties)
CFieldGroupProperties(){}
virtual ~CFieldGroupProperties() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_FieldGroupProperties;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oBase;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oPar;
nullable<CDiscreteGroupingProperties> m_oDiscretePr;
nullable<CRangeGroupingProperties> m_oRangePr;
nullable<COLAPGroupItems> m_oGroupItems;
};
class CPivotCacheField : public WritingElement
{
public:
WritingElement_AdditionMethods(CPivotCacheField)
WritingElement_XlsbConstructors(CPivotCacheField)
CPivotCacheField(){}
virtual ~CPivotCacheField() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
XLS::BaseObjectPtr toBin();
void fromBin(XLS::BaseObjectPtr& obj);
virtual EElementType getType () const
{
return et_x_PivotCacheField;
}
XLS::BaseObjectPtr writeAttributes();
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable_string m_oName;
nullable_string m_oCaption;
nullable_bool m_oDatabaseField;
nullable_bool m_oServerField;
nullable_string m_oFormula;
nullable_int m_oHierarchy;
nullable_bool m_oMemberPropertyField;
nullable_string m_oPropertyName;
nullable_int m_oSqlType;
nullable_bool m_oUniqueList;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oLevel;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oMappingCount;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oNumFmtId;
nullable<CSharedItems> m_oSharedItems;
//nullable<CMemberPropertiesMap> m_oMpMap;
nullable<CFieldGroupProperties> m_oFieldGroup;
nullable<OOX::Drawing::COfficeArtExtensionList> m_oExtLst;
};
class CPivotCacheFields : public WritingElementWithChilds<CPivotCacheField>
{
public:
WritingElement_AdditionMethods(CPivotCacheFields)
WritingElement_XlsbConstructors(CPivotCacheFields)
CPivotCacheFields(){}
virtual ~CPivotCacheFields() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return _T("");
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotCacheFields;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CRangeSet : public WritingElement
{
public:
WritingElement_AdditionMethods(CRangeSet)
WritingElement_XlsbConstructors(CRangeSet)
CRangeSet(){}
virtual ~CRangeSet() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_RangeSet;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable_string m_oSheet;
nullable_string m_oRef;
nullable_string m_oName;
nullable<SimpleTypes::CRelationshipId> m_oRid;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oI1;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oI2;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oI3;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oI4;
};
class CRangeSets : public WritingElementWithChilds<CRangeSet>
{
public:
WritingElement_AdditionMethods(CRangeSets)
WritingElement_XlsbConstructors(CRangeSets)
CRangeSets(){}
virtual ~CRangeSets() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return _T("");
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_RangeSets;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CPageItem : public WritingElement
{
public:
WritingElement_AdditionMethods(CPageItem)
WritingElement_XlsbConstructors(CPageItem)
CPageItem(){}
virtual ~CPageItem() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PageItem;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable_string m_oName;
};
class CPageItems : public WritingElementWithChilds<CPageItem>
{
public:
WritingElement_AdditionMethods(CPageItems)
WritingElement_XlsbConstructors(CPageItems)
CPageItems(){}
virtual ~CPageItems() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return _T("");
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PageItems;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CPageItemValues : public WritingElementWithChilds<CPageItems>
{
public:
WritingElement_AdditionMethods(CPageItemValues)
WritingElement_XlsbConstructors(CPageItemValues)
CPageItemValues(){}
virtual ~CPageItemValues() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return _T("");
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PageItemValues;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CConsolidationSource : public WritingElement
{
public:
WritingElement_AdditionMethods(CConsolidationSource)
WritingElement_XlsbConstructors(CConsolidationSource)
CConsolidationSource()
{
}
virtual ~CConsolidationSource()
{
}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_ConsolidationSource;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
//----------
nullable_bool m_oAutoPage;
nullable<CPageItemValues> m_oPages;
nullable<CRangeSets> m_oRangeSets;
};
class CWorksheetSource : public WritingElement
{
public:
WritingElement_AdditionMethods(CWorksheetSource)
WritingElement_XlsbConstructors(CWorksheetSource)
CWorksheetSource(){}
virtual ~CWorksheetSource() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_WorksheetSource;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
nullable_string m_oSheet;
nullable_string m_oRef;
nullable_string m_oName;
nullable<SimpleTypes::CRelationshipId> m_oRid;
};
class CPivotCacheSource : public WritingElement
{
public:
WritingElement_AdditionMethods(CPivotCacheSource)
WritingElement_XlsbConstructors(CPivotCacheSource)
CPivotCacheSource()
{
}
virtual ~CPivotCacheSource()
{
}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotCacheSource;
}
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
//----------
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oConnectionId;
nullable<SimpleTypes::Spreadsheet::CSourceCacheType> m_oType;
nullable<CConsolidationSource> m_oConsolidation;
nullable<CWorksheetSource> m_oWorksheetSource;
nullable<OOX::Drawing::COfficeArtExtensionList> m_oExtLst;
};
class CPivotCacheDefinition : public WritingElement
{
public:
WritingElement_AdditionMethods(CPivotCacheDefinition)
WritingElement_XlsbConstructors(CPivotCacheDefinition)
CPivotCacheDefinition()
{
}
virtual ~CPivotCacheDefinition()
{
}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotCacheDefinition;
}
XLS::BaseObjectPtr writeAttributes();
void ReadAttributes(XLS::BaseObjectPtr& obj);
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
//----------
nullable_bool m_oBackgroundQuery;
nullable_bool m_oEnableRefresh;
nullable<SimpleTypes::CRelationshipId> m_oRid;
nullable_bool m_oInvalid;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCreatedVersion;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oMinRefreshableVersion;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oMissingItemsLimit;
nullable_bool m_oOptimizeMemory;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oRecordCount;
nullable_string m_oRefreshedBy;
nullable<SimpleTypes::CDateTime> m_oRefreshedDateIso;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oRefreshedVersion;
nullable_bool m_oRefreshOnLoad;
nullable_bool m_oSaveData;
nullable_bool m_oSupportAdvancedDrill;
nullable_bool m_oSupportSubquery;
nullable_bool m_oTupleCache;
nullable_bool m_oUpgradeOnRefresh;
nullable<CPivotCacheFields> m_oCacheFields;
nullable<CPivotCacheSource> m_oCacheSource;
nullable<CpivotCacheHierarchies> m_oHierarchies;
nullable<CPivotDimensions> m_oDimensions;
nullable<CPivotMeasureGroups> m_oMeasureGroups;
nullable<CMeasureDimensionMaps> m_oMaps;
nullable<CCalculatedItems> m_oCalculatedItems;
//calculatedItems (Calculated Items) §18.10.1.9
//calculatedMembers (Calculated Members) §18.10.1.11
//kpis (OLAP KPIs) §18.10.1.48
//tupleCache (Tuple Cache)
nullable<OOX::Drawing::COfficeArtExtensionList> m_oExtLst;
};
class CPivotCacheDefinitionFile : public OOX::FileGlobalEnumerated, public OOX::IFileContainer
{
public:
CPivotCacheDefinitionFile(OOX::Document* pMain);
CPivotCacheDefinitionFile(OOX::Document* pMain, const CPath& oRootPath, const CPath& oPath);
virtual ~CPivotCacheDefinitionFile();
virtual void read(const CPath& oPath);
void setData(BYTE* pData, long length, const std::wstring& srIdRecords);
void readBin(const CPath& oPath);
XLS::BaseObjectPtr WriteBin() const;
virtual void read(const CPath& oRootPath, const CPath& oPath);
virtual void write(const CPath& oPath, const CPath& oDirectory, CContentTypes& oContent) const;
virtual const OOX::FileType type() const;
virtual const CPath DefaultDirectory() const
{
return type().DefaultDirectory();
}
virtual const CPath DefaultFileName() const
{
return type().DefaultFileName();
}
const CPath& GetReadPath()
{
return m_oReadPath;
}
BYTE* m_pData = NULL;
DWORD m_nDataLength = 0;
nullable<CPivotCacheDefinition> m_oPivotCashDefinition;
private:
CPath m_oReadPath;
mutable bool bIsWritten;
};
class CPivotCharacterValue : public WritingElementWithChilds<CMemberPropertyIndex>
{
public:
WritingElement_AdditionMethods(CPivotCharacterValue)
WritingElement_XlsbConstructors(CPivotCharacterValue)
CPivotCharacterValue(){}
virtual ~CPivotCharacterValue() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotCharacterValue;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
void ReadAttributes(XLS::BaseObjectPtr& obj);
nullable_string m_oValue;
nullable_string m_oCaption;
nullable_bool m_oCalculated;
nullable_bool m_oUnused;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
nullable_bool m_oBold;
nullable_bool m_oItalic;
nullable_bool m_oStrike;
nullable_bool m_oUnderline;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oBackColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oForeColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oFormatIndex;
//tpls
};
class CPivotBooleanValue : public WritingElementWithChilds<CMemberPropertyIndex>
{
public:
WritingElement_AdditionMethods(CPivotBooleanValue)
WritingElement_XlsbConstructors(CPivotBooleanValue)
CPivotBooleanValue(){}
virtual ~CPivotBooleanValue() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotBooleanValue;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
void ReadAttributes(XLS::BaseObjectPtr& obj);
nullable_bool m_oValue;
nullable_string m_oCaption;
nullable_bool m_oCalculated;
nullable_bool m_oUnused;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CPivotNumericValue : public WritingElementWithChilds<CMemberPropertyIndex>
{
public:
WritingElement_AdditionMethods(CPivotNumericValue)
WritingElement_XlsbConstructors(CPivotNumericValue)
CPivotNumericValue(){}
virtual ~CPivotNumericValue() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotNumericValue;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
void ReadAttributes(XLS::BaseObjectPtr& obj);
nullable_double m_oValue;
nullable_string m_oCaption;
nullable_bool m_oCalculated;
nullable_bool m_oUnused;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
nullable_bool m_oBold;
nullable_bool m_oItalic;
nullable_bool m_oStrike;
nullable_bool m_oUnderline;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oBackColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oForeColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oFormatIndex;
//tpls
};
class CPivotDateTimeValue : public WritingElementWithChilds<CMemberPropertyIndex>
{
public:
WritingElement_AdditionMethods(CPivotDateTimeValue)
WritingElement_XlsbConstructors(CPivotDateTimeValue)
CPivotDateTimeValue(){}
virtual ~CPivotDateTimeValue() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotDateTimeValue;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
void ReadAttributes(XLS::BaseObjectPtr& obj);
nullable<SimpleTypes::CDateTime> m_oValue;
nullable_string m_oCaption;
nullable_bool m_oCalculated;
nullable_bool m_oUnused;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
};
class CPivotErrorValue : public WritingElementWithChilds<CMemberPropertyIndex>
{
public:
WritingElement_AdditionMethods(CPivotErrorValue)
WritingElement_XlsbConstructors(CPivotErrorValue)
CPivotErrorValue(){}
virtual ~CPivotErrorValue() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
void toBin(XLS::StreamCacheWriterPtr& writer);
virtual EElementType getType () const
{
return et_x_PivotErrorValue;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
void ReadAttributes(XLS::BaseObjectPtr& obj);
nullable_string m_oValue;
nullable_string m_oCaption;
nullable_bool m_oCalculated;
nullable_bool m_oUnused;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
nullable_bool m_oBold;
nullable_bool m_oItalic;
nullable_bool m_oStrike;
nullable_bool m_oUnderline;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oBackColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oForeColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oFormatIndex;
//tpls
};
class CPivotNoValue : public WritingElementWithChilds<CMemberPropertyIndex>
{
public:
WritingElement_AdditionMethods(CPivotNoValue)
WritingElement_XlsbConstructors(CPivotNoValue)
CPivotNoValue(){}
virtual ~CPivotNoValue() {}
virtual void fromXML(XmlUtils::CXmlNode& node)
{
}
virtual std::wstring toXML() const
{
return L"";
}
virtual void toXML(NSStringUtils::CStringBuilder& writer) const;
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
void fromBin(XLS::BaseObjectPtr& obj);
XLS::BaseObjectPtr toBin();
virtual EElementType getType () const
{
return et_x_PivotNoValue;
}
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
void ReadAttributes(XLS::BaseObjectPtr& obj);
nullable_string m_oCaption;
nullable_bool m_oCalculated;
nullable_bool m_oUnused;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oCount;
nullable_bool m_oBold;
nullable_bool m_oItalic;
nullable_bool m_oStrike;
nullable_bool m_oUnderline;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oBackColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oForeColor;
nullable<SimpleTypes::CUnsignedDecimalNumber> m_oFormatIndex;
//tpls
};
} //Spreadsheet
} // namespace OOX