Kaydet (Commit) bfaf4401 authored tarafından Kohei Yoshida's avatar Kohei Yoshida

Export data layout field to xlsx correctly.

Excel uses a field index of -2 to indicate a data layout field.

Change-Id: I6b18c0bcff439eb4425ef0b0d0b841633dc81dd7
üst 5c004922
...@@ -395,16 +395,21 @@ void XclExpXmlPivotTables::SavePivotTableXml( XclExpXmlStream& rStrm, const ScDP ...@@ -395,16 +395,21 @@ void XclExpXmlPivotTables::SavePivotTableXml( XclExpXmlStream& rStrm, const ScDP
const ScDPSaveDimension& rDim = rDims[i]; const ScDPSaveDimension& rDim = rDims[i];
long nPos = -1; // position in cache long nPos = -1; // position in cache
OUString aSrcName = ScDPUtil::getSourceDimensionName(rDim.GetName()); if (rDim.IsDataLayout())
NameToIdMapType::iterator it = aNameToIdMap.find(aSrcName); nPos = -2; // Excel uses an index of -2 to indicate a data layout field.
if (it != aNameToIdMap.end()) else
nPos = it->second; {
OUString aSrcName = ScDPUtil::getSourceDimensionName(rDim.GetName());
NameToIdMapType::iterator it = aNameToIdMap.find(aSrcName);
if (it != aNameToIdMap.end())
nPos = it->second;
if (nPos == -1) if (nPos == -1)
continue; continue;
if (!aCachedDims[nPos]) if (!aCachedDims[nPos])
continue; continue;
}
sheet::DataPilotFieldOrientation eOrient = sheet::DataPilotFieldOrientation eOrient =
static_cast<sheet::DataPilotFieldOrientation>(rDim.GetOrientation()); static_cast<sheet::DataPilotFieldOrientation>(rDim.GetOrientation());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment