public List <NoEnteredExportEntity> GetDataFromDBExport(BudgetProgressChangedEventHandler OnProgress, string strBudgetYear) { List <NoEnteredExportEntity> entityList = new List <NoEnteredExportEntity>(); string sql = "T01_NoEntered_Get"; DbCommand cmd = db.GetStoredProcCommand(sql); db.AddInParameter(cmd, "BudgetYear", DbType.String, strBudgetYear); using (IDataReader reader = db.ExecuteReader(cmd)) { while (reader.Read()) { NoEnteredExportEntity item = new NoEnteredExportEntity(); item.BudgetYear = ConvertUtil.ToString(reader["BudgetYear"]); item.CustomerCode = ConvertUtil.ToString(reader["CustomerCode"]); item.CustomerName = ConvertUtil.ToString(reader["CustomerName"]); item.IcasCode = ConvertUtil.ToString(reader["ICASCode"]); item.Currency = ConvertUtil.ToString(reader["Currency"]); item.Apr = ConvertUtil.ToString(reader["Apr"]); item.May = ConvertUtil.ToString(reader["May"]); item.Jun = ConvertUtil.ToString(reader["Jun"]); item.Jul = ConvertUtil.ToString(reader["Jul"]); item.Aug = ConvertUtil.ToString(reader["Aug"]); item.Sep = ConvertUtil.ToString(reader["Sep"]); item.Oct = ConvertUtil.ToString(reader["Oct"]); item.Nov = ConvertUtil.ToString(reader["Nov"]); item.Dec = ConvertUtil.ToString(reader["Dece"]); item.Jan = ConvertUtil.ToString(reader["Jan"]); item.Feb = ConvertUtil.ToString(reader["Feb"]); item.Mar = ConvertUtil.ToString(reader["Mar"]); item.Action = BudgetConstant.ACTION_UPDATE; item.ReadOnly = true; //throw new Exception(); entityList.Add(item); } } return(entityList); }
public void ExportDataToFile(BudgetProgressChangedEventHandler OnProgress, string fileName, string strBudgetYear) { string templateFilename = Path.Combine(Application.StartupPath, "ExcelTemplate", "SalesPriceNoEnteredList_Template.xls"); List <NoEnteredExportEntity> entityList = GetDataFromDBExport(OnProgress, strBudgetYear); int count = entityList.Count; Excel.Application ExApp = new Excel.Application(); Excel.Workbook ExBook = ExApp.Workbooks.Open(templateFilename); Excel.Worksheet ExSheet = ExBook.Worksheets.Item[1]; Process[] excelList = ExcelUtil.GetProcesses(); try { int rowIdx = 5; ExSheet.Range["A" + 2].Value = "BudgetYear:" + strBudgetYear; ExSheet.Range["N" + 2].Value = string.Format("DB:{0}", ConfigUtil.GetBudgetDB()); //DB ExSheet.Range["N" + 3].Value = DateTime.Now.ToString(); //Date for (int i = 0; i < count; i++) { if (OnProgress != null) { string InfomationMessage = string.Format(BudgetResource.Message.Common_Master_ExportToExcel_Info, i + 1); int Percentage = (int)((i + 1) * BudgetConstant.ProgressBarMaximum / count); BudgetProgressChangedEventArgs args = new BudgetProgressChangedEventArgs(InfomationMessage, Percentage, null); OnProgress(this, args); } NoEnteredExportEntity entity = entityList[i]; ExSheet.Range["A" + rowIdx].Value = ConvertUtil.ToString(entity.CustomerCode); ExSheet.Range["B" + rowIdx].Value = ConvertUtil.ToString(entity.CustomerName); ExSheet.Range["C" + rowIdx].Value = ConvertUtil.ToString(entity.IcasCode); ExSheet.Range["D" + rowIdx].Value = ConvertUtil.ToString(entity.Currency); ExSheet.Range["E" + rowIdx].Value = ConvertUtil.ToString(entity.Apr); ExSheet.Range["F" + rowIdx].Value = ConvertUtil.ToString(entity.May); ExSheet.Range["G" + rowIdx].Value = ConvertUtil.ToString(entity.Jun); ExSheet.Range["H" + rowIdx].Value = ConvertUtil.ToString(entity.Jul); ExSheet.Range["I" + rowIdx].Value = ConvertUtil.ToString(entity.Aug); ExSheet.Range["J" + rowIdx].Value = ConvertUtil.ToString(entity.Sep); ExSheet.Range["K" + rowIdx].Value = ConvertUtil.ToString(entity.Oct); ExSheet.Range["L" + rowIdx].Value = ConvertUtil.ToString(entity.Nov); ExSheet.Range["M" + rowIdx].Value = ConvertUtil.ToString(entity.Dec); ExSheet.Range["N" + rowIdx].Value = ConvertUtil.ToString(entity.Jan); ExSheet.Range["O" + rowIdx].Value = ConvertUtil.ToString(entity.Feb); ExSheet.Range["P" + rowIdx].Value = ConvertUtil.ToString(entity.Mar); rowIdx++; Thread.Sleep(10); } ExSheet.Range["A" + rowIdx].Value = BudgetResource.Resource.ExcelDataEnd;//End Flag ExBook.SaveCopyAs(fileName); } catch { throw; } finally { ExcelUtil.ReleaseResource(ExSheet, ExBook, ExApp); ExcelUtil.KillProcess(excelList); } }