智遥工作流将数据导出到Excel分析

  导出数据到Excel,是一个软件的必备功能;很多B/S程序,导出Excel,用的是直接在Excel打开数据列表的方式,这种写法比较普遍,缺点也很明显,数据多的时候比较慢,而且导出的数据不是很好看,不太好整理;
  智遥工作流导出Excel原理是:先将要导出数据放到一个DataTable中,然后遍历DataTable,将数据写入到Excel中。优点是导出速度快,稳定。
  智遥工作流自带有Excel导出接口,用户只需简单调用即可。
代码如下:
       
 protected void BExportData_Click(object sender, EventArgs e)
    {
        ExportExcel ee = new ExportExcel();
        DataTable dt = QueryMain();
        //调整列名
        dt.Columns["workid"].ColumnName = "编号";
        dt.Columns["userid"].ColumnName = "工号";
        dt.Columns["username"].ColumnName = "姓名";
        dt.Columns["department"].ColumnName = "部门";
        dt.Columns["grade"].ColumnName = "职级";
        dt.Columns["gender"].ColumnName = "性别";
        dt.Columns["position"].ColumnName = "职位";
        dt.Columns["date_join"].ColumnName = "入职日期";    

        ee.ToExcel(dt, Response, "ReportData");//最后一个参数为导出Excel的名称,随便取
    }
  注意,导出数据事件,不支持AJAX;如果使用Ext.Net控件,需要注意一下。
  正常Ext.net按钮代码
 
 <ext:Button ID="BExport" runat="server" Icon="PageExcel" Text="导出数据" 
  OnDirectClick="BExportData_Click" >
</ext:Button>
  导出Excel数据按钮代码:
 <ext:Button ID="BExport" runat="server" Icon="PageExcel" Text="导出数据" 
  OnClick="BExportData_Click" AutoPostBack="true">
</ext:Button>

 

 
posted @ 2013-05-28 15:55  workflower  阅读(640)  评论(0编辑  收藏  举报