How to Show Summary Results in the Inner Most Table on every Parent Level in Nested Related Tables
3 Jan 20203 minutes to read
The summary results of the nested tables can be obtained by using GetSummaryText method of GridEngine.
private void gridGroupingControl1_QueryValue(object sender, Syncfusion.Grouping.FieldValueEventArgs e)
{
if(e.TableDescriptor.Name == this.parentTD.Name)
{
Group g = e.Record.NestedTables[0].ChildTable as Group;
//Sets SummaryText for ParentTable.
e.Value = GridEngine.GetSummaryText(g, "c_ROW", "c_SUM");
}
else if
(e.TableDescriptor == this.childTD)
{
Group g = e.Record.NestedTables[0].ChildTable as Group;
//Sets SummaryText for child table.
e.Value = GridEngine.GetSummaryText(g, "gc_ROW", "gc_SUM");
}
else if
(e.TableDescriptor == this.gridChildTD)
{
//Retrieves the unbound column values.
object o = this.unboundValues[e.Record.GetValue("GrandChildID").ToString()]; double d;
if(o != null && double.TryParse(o.ToString(), System.Globalization.NumberStyles.Any, null, out d))
{
//Displays the values.
e.Value = d;
}
}
}
Private Sub gridGroupingControl1_QueryValue(ByVal sender As Object, ByVal e As Syncfusion.Grouping.FieldValueEventArgs)
If e.TableDescriptor.Name = Me.parentTD.Name Then
Dim g As Group = CType(IIf(TypeOf e.Record.NestedTables(0).ChildTable Is Group, e.Record.NestedTables(0).ChildTable, Nothing), Group)
'Sets SummaryText for ParentTable.
e.Value = GridEngine.GetSummaryText(g, "c_ROW", "c_SUM")
ElseIf e.TableDescriptor Is Me.childTD Then
Dim g As Group = CType(IIf(TypeOf e.Record.NestedTables(0).ChildTable Is Group, e.Record.NestedTables(0).ChildTable, Nothing), Group)
'Sets SummaryText for ChildTable.
e.Value = GridEngine.GetSummaryText(g, "gc_ROW", "gc_SUM")
ElseIf e.TableDescriptor Is Me.gridChildTD Then
'Retrieves the unbound column values.
Dim o As Object = Me.unboundValues(e.Record.GetValue("GrandChildID").ToString())
Dim d As Double
If Not o Is Nothing AndAlso Double.TryParse(o.ToString(), System.Globalization.NumberStyles.Any, Nothing, d) Then
'Displays the values.
e.Value = d
End If
End If
End Sub