Excel导出 npol
2013-05-14 20:14 Commander lang 阅读(637) 评论(0) 编辑 收藏 举报#region 导出excel
bll_common = new DBCommon();
lstr = context.Request.Params["_gt_json"];
ldi = JsonConvert.DeserializeObject<Joint.BLL.Common.LoadDataInfo>(lstr);
strWhere = Joint.BLL.Common.CreateQueryString.GetFilterInfoString(ldi);//查询条件
string TemplateFilePath = context.Request.PhysicalApplicationPath + "\\Operation\\BussinessQuitInput\\样品信息列表.xls";//模板路径
//ds.Tables.Add(dt);
//Joint.BLL.FileDB.FileExcel GetExcel = new Joint.BLL.FileDB.FileExcel();
Joint.BLL.FileDB.FileNPOI GetExcel = new Joint.BLL.FileDB.FileNPOI();//方法2(新EXCEL导出 NPOI)
Joint.BLL.Data.Bsys_export_plus bll_export = new Bsys_export_plus();
if (bll_export.UpdateIsExport(Joint.BLL.Common.CreateQueryString.GetColumnInfoString(ldi, true).Replace("[", "'").Replace("]", "'"), "样品信息列表", "样品信息列表", true) < 0)
{
//return "[{ code:-2,value:'保存出错!' }]";
}
else
{
//string myWhere = strWhere
int RowCount = bll_common.GetRecordCount("View_wt_rw_yp_jg_forseach", "ypbh", strWhere);
int PageSize = 2000;//分页大小
int ExcelPageSize = 60000;
int ExcelTop = 2;
int Excelleft = 1;
Joint.Common.Office.NPOIExcel myExcelHelp = GetExcel.ExcelExportStep1("样品信息列表", TemplateFilePath);
int SheetCount = myExcelHelp.GetSheetCount(RowCount, ExcelPageSize);
int DataPageCount = myExcelHelp.GetSheetCount(RowCount, PageSize);
if (SheetCount > 1)
myExcelHelp.CopyWorkSheets(SheetCount);//第一张表复制多少份(实际数据-1份)
int CurrentSheetIndex = 1;//重用变量
myExcelHelp.ChangeCurrentWorkSheet(CurrentSheetIndex);
strOrder = Joint.BLL.Common.CreateQueryString.GetSortInfoString(ldi);
string strCol = Joint.BLL.Common.CreateQueryString.GetColumnInfoString(ldi);
for (int i = 1; i <= DataPageCount; i++)
{
DataSet ds1 = bll_common.GetList(PageSize, i, "View_wt_rw_yp_jg_forseach", "ypbh", strWhere, strCol, strOrder);
GetExcel.ExcelExportStep2(myExcelHelp, ds1, "样品信息列表", ExcelTop, Excelleft, ExcelTop>PageSize ?false:true);
ExcelTop += PageSize;
if (ExcelTop >= ExcelPageSize)
{
ExcelTop -= ExcelPageSize;
CurrentSheetIndex++;
if(CurrentSheetIndex <=SheetCount)
myExcelHelp.ChangeCurrentWorkSheet(CurrentSheetIndex);
}
}
GetExcel.ExcelExportStep3(myExcelHelp);
}
#endregion
bll_common = new DBCommon();
lstr = context.Request.Params["_gt_json"];
ldi = JsonConvert.DeserializeObject<Joint.BLL.Common.LoadDataInfo>(lstr);
strWhere = Joint.BLL.Common.CreateQueryString.GetFilterInfoString(ldi);//查询条件
string TemplateFilePath = context.Request.PhysicalApplicationPath + "\\Operation\\BussinessQuitInput\\样品信息列表.xls";//模板路径
//ds.Tables.Add(dt);
//Joint.BLL.FileDB.FileExcel GetExcel = new Joint.BLL.FileDB.FileExcel();
Joint.BLL.FileDB.FileNPOI GetExcel = new Joint.BLL.FileDB.FileNPOI();//方法2(新EXCEL导出 NPOI)
Joint.BLL.Data.Bsys_export_plus bll_export = new Bsys_export_plus();
if (bll_export.UpdateIsExport(Joint.BLL.Common.CreateQueryString.GetColumnInfoString(ldi, true).Replace("[", "'").Replace("]", "'"), "样品信息列表", "样品信息列表", true) < 0)
{
//return "[{ code:-2,value:'保存出错!' }]";
}
else
{
//string myWhere = strWhere
int RowCount = bll_common.GetRecordCount("View_wt_rw_yp_jg_forseach", "ypbh", strWhere);
int PageSize = 2000;//分页大小
int ExcelPageSize = 60000;
int ExcelTop = 2;
int Excelleft = 1;
Joint.Common.Office.NPOIExcel myExcelHelp = GetExcel.ExcelExportStep1("样品信息列表", TemplateFilePath);
int SheetCount = myExcelHelp.GetSheetCount(RowCount, ExcelPageSize);
int DataPageCount = myExcelHelp.GetSheetCount(RowCount, PageSize);
if (SheetCount > 1)
myExcelHelp.CopyWorkSheets(SheetCount);//第一张表复制多少份(实际数据-1份)
int CurrentSheetIndex = 1;//重用变量
myExcelHelp.ChangeCurrentWorkSheet(CurrentSheetIndex);
strOrder = Joint.BLL.Common.CreateQueryString.GetSortInfoString(ldi);
string strCol = Joint.BLL.Common.CreateQueryString.GetColumnInfoString(ldi);
for (int i = 1; i <= DataPageCount; i++)
{
DataSet ds1 = bll_common.GetList(PageSize, i, "View_wt_rw_yp_jg_forseach", "ypbh", strWhere, strCol, strOrder);
GetExcel.ExcelExportStep2(myExcelHelp, ds1, "样品信息列表", ExcelTop, Excelleft, ExcelTop>PageSize ?false:true);
ExcelTop += PageSize;
if (ExcelTop >= ExcelPageSize)
{
ExcelTop -= ExcelPageSize;
CurrentSheetIndex++;
if(CurrentSheetIndex <=SheetCount)
myExcelHelp.ChangeCurrentWorkSheet(CurrentSheetIndex);
}
}
GetExcel.ExcelExportStep3(myExcelHelp);
}
#endregion