Kaydet (Commit) f50e370d authored tarafından Eike Rathke's avatar Eike Rathke

Resolves: tdf#116003 check presence of subtotal in group, tdf#107267 follow-up

Change-Id: Ifed6e28926c689dd17914b8b1cbf47b58e2ffcdc
üst f942587a
...@@ -2161,11 +2161,20 @@ bool ScTable::DoSubTotals( ScSubTotalParam& rParam ) ...@@ -2161,11 +2161,20 @@ bool ScTable::DoSubTotals( ScSubTotalParam& rParam )
for (sal_uInt16 nLevel = 0; nLevel<nLevelCount; nLevel++) for (sal_uInt16 nLevel = 0; nLevel<nLevelCount; nLevel++)
{ {
const sal_uInt16 nGroupNo = nLevelCount - nLevel - 1;
const ScSubTotalFunc* pResFunc = rParam.pFunctions[nGroupNo];
if (!pResFunc)
{
// No subtotal function given for this group => no formula or
// label and do not insert a row.
continue;
}
// increment end row // increment end row
nGlobalEndRow++; nGlobalEndRow++;
// add row entry for formula // add row entry for formula
aRowEntry.nGroupNo = nLevelCount - nLevel - 1; aRowEntry.nGroupNo = nGroupNo;
aRowEntry.nSubStartRow = nGlobalStartRow; aRowEntry.nSubStartRow = nGlobalStartRow;
aRowEntry.nFuncStart = nGlobalStartFunc; aRowEntry.nFuncStart = nGlobalStartFunc;
aRowEntry.nDestRow = nGlobalEndRow; aRowEntry.nDestRow = nGlobalEndRow;
...@@ -2183,10 +2192,9 @@ bool ScTable::DoSubTotals( ScSubTotalParam& rParam ) ...@@ -2183,10 +2192,9 @@ bool ScTable::DoSubTotals( ScSubTotalParam& rParam )
DBShowRow(aRowEntry.nDestRow, true); DBShowRow(aRowEntry.nDestRow, true);
// insert label // insert label
ScSubTotalFunc* eResFunc = rParam.pFunctions[aRowEntry.nGroupNo];
OUString label = ScGlobal::GetRscString(STR_TABLE_GRAND); OUString label = ScGlobal::GetRscString(STR_TABLE_GRAND);
label += " "; label += " ";
label += ScGlobal::GetRscString(lcl_GetSubTotalStrId(eResFunc[0])); label += ScGlobal::GetRscString(lcl_GetSubTotalStrId(pResFunc[0]));
SetString(nGroupCol[aRowEntry.nGroupNo], aRowEntry.nDestRow, nTab, label); SetString(nGroupCol[aRowEntry.nGroupNo], aRowEntry.nDestRow, nTab, label);
ApplyStyle(nGroupCol[aRowEntry.nGroupNo], aRowEntry.nDestRow, pStyle); ApplyStyle(nGroupCol[aRowEntry.nGroupNo], aRowEntry.nDestRow, pStyle);
} }
......
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