private void pEvalGroupChange(int i)
{
if (m_vGroups[i].grandTotalGroup)
{
if (m_vGroups[i].value == null)
{
changeGroup(i, "1");
}
}
else
{
int col = m_vGroups[i].indexField;
int row = m_vRowsIndex[m_iRow2];
switch (m_vGroups[i].comparisonType)
{
case csRptGrpComparisonType.CSRPTGRPTEXT:
String text = cReportGlobals.valVariant(m_rows.Rows[row][col]).ToString().ToLower();
if (m_vGroups[i].value == null)
{
changeGroup(i, text);
}
else if (m_vGroups[i].value.ToString() != text)
{
changeGroup(i, text);
}
break;
case csRptGrpComparisonType.CSRPTGRPNUMBER:
double number = cUtil.val(cReportGlobals.valVariant(m_rows.Rows[row][col]));
if (m_vGroups[i].value == null)
{
changeGroup(i, number);
}
else if ((double)m_vGroups[i].value != number)
{
changeGroup(i, number);
}
break;
case csRptGrpComparisonType.CSRPTGRPDATE:
DateTime date = cReportGlobals.dateValue(cReportGlobals.valVariant(m_rows.Rows[row][col]));
if (m_vGroups[i].value == null)
{
changeGroup(i, date);
}
else if ((DateTime)m_vGroups[i].value != date)
{
changeGroup(i, date);
}
break;
}
}
}