Fast Report 交叉分析表

Fast Report 交叉分析表

在畫報表時,最怕就是交叉分析表,

之前處理方式是用二個DataSet做比對,

然後產生行、列、值(等待報表產生資料時,可以請客戶去泡杯茶再慢慢等。)

 

不過在「Fast Report .Net」中原本就有Maxtrix可用,

只要在事件「ManualBuild」寫好行、列、值的程式碼,

就可以產生資料(速度相當令人滿意)。

private void Matrix1_ManualBuild(object sender, EventArgs e)
    {
      // get the data source by its name
      DataSourceBase data = Report.GetDataSource("TB");
      // initialize it
      data.Init();
      
      object[] columnValues = new object[1];
      object[] rowValues = new object[1];
      object[] cellValues = new object[1];
      
      // loop through the data source rows
      while (data.HasMoreRows)
      {
        columnValues[0] = (Report.GetColumnValue("TB.column"));
        rowValues[0] =(Report.GetColumnValue("TB.row")) ;
        cellValues[0] = (Report.GetColumnValue("TB.cel"));
        Matrix1.AddValue(columnValues, rowValues, cellValues);

        data.Next();
      }
    }

 

結果:

char0810

 

自我LV~