Пример #1
0
        public ExcelParser(string fileName)
        {
            DataSet ds = new DataSet();
            string  msg;

            if (ExcelOledbHelper.GetOneExcelFileData(fileName, out ds, out msg))
            {
                foreach (DataTable dt in ds.Tables)
                {
                    if (fileName.IndexOf("调拨订单") != -1)
                    {
                        LoadTransferData(dt);//加载调拨订单数据
                    }
                    else
                    {
                        LoadData(dt);
                    }

                    break;
                }
            }
            else
            {
                throw new ApplicationException(msg);
            }
        }
Пример #2
0
        /// <summary>
        /// 从Excel中获取数据
        /// </summary>
        /// <param name="fileNameList"></param>
        /// <param name="isExcel2007"></param>
        private void GetExcelDataAndBindData(List <string> fileNameList, List <bool> isExcel2007)
        {
            List <DataSet> allFileData     = new List <DataSet>();//每个Excel的数据存储在一个DataSet中
            List <bool>    fileGetResult   = new List <bool>();
            List <bool>    fileGetErrorMsg = new List <bool>();

            for (int i = 0; i < fileNameList.Count; i++)
            {
                DataSet tempDs    = new DataSet();
                string  errorMsg  = "";
                bool    getResult = ExcelOledbHelper.GetOneExcelFileData(fileNameList[i], out tempDs, out errorMsg);
                if (getResult == false)
                {
                    lblPreviewResult.Text = "预览数据加载失败。原因:" + errorMsg;
                    return;
                }
                if (tempDs.Tables.Count > 0)
                {
                    allFileData.Add(tempDs);
                }
            }
            List <DAL.Cargos> excelCargoList = new List <DAL.Cargos>();
            string            errorFilterMsg = "";
            bool filterResult = FilterData(allFileData, out excelCargoList, out errorFilterMsg);

            if (filterResult == false)
            {
                lblPreviewResult.Text = "预览数据加载失败。原因:" + errorFilterMsg;
            }
            else
            {
                lblPreviewResult.Text = "预览数据加载成功(共加载" + excelCargoList.Count.ToString() + "条数据)。请检查下面的预览数据,检查无误后请点击“导入到系统”按钮,将数据导入!";

                Cache.Insert("ExcelCargoList", excelCargoList, null, DateTime.Now.AddHours(2), TimeSpan.Zero);//将数据放入缓存中,2小时后缓存自动过期

                gv_CargoList_Preview.DataSource = excelCargoList;
                gv_CargoList_Preview.DataBind();
            }
        }