protected void btnCreateReport_Click(object sender, EventArgs e)
{
// Validates
if (lbxRowFields.Items.Count < 1)
{
Util.ShowMessage(this, "Please Set row field");
return;
}
if (lbxColumnFields.Items.Count < 1)
{
Util.ShowMessage(this, "Please Set column field");
return;
}
if (lbxDataFields.Items.Count < 1)
{
Util.ShowMessage(this, "Please Set data field");
return;
}
// Sets PivotTable report row fields .
GridPivotTable pivotTable = GridWeb1.WorkSheets[1].PivotTables[0];
pivotTable.ClearAllFields();
for (int i = 0; i < lbxRowFields.Items.Count; i++)
{
pivotTable.AddFieldToArea(GridPivotFieldType.Row, lbxRowFields.Items[i].Text);
}
// Set PivotTable report column fields
for (int i = 0; i < lbxColumnFields.Items.Count; i++)
{
pivotTable.AddFieldToArea(GridPivotFieldType.Column, lbxColumnFields.Items[i].Text);
}
// Set PivotTable data fields
for (int i = 0; i < lbxDataFields.Items.Count; i++)
{
int j = pivotTable.AddFieldToArea(GridPivotFieldType.Data, lbxDataFields.Items[i].Text);
if (lbxDataFields.Items[i].Text == "Sale")
{
pivotTable.Fields(GridPivotFieldType.Data)[j].Function = GridPivotFieldFunction.Sum;
}
}
// Paints PivotTable report
pivotTable.CalculateData();
// Set Activesheet
GridWeb1.ActiveSheetIndex = GridWeb1.WorkSheets["PivotTable Report"].Index;
}