Ejemplo n.º 1
0
        /// <summary>
        /// 读取并保存Excel中的信息到数据库中
        /// </summary>
        private void ReadAndSaveExcelInfo()
        {
            string strTmpTable, strTmpField, strTmpValue;

            string val1 = "";
            string val2 = "";
            string val3 = "";
            string val4 = "";
            string val5 = "";
            string val6 = "";
            string val7 = "";
            string val8 = "";
            string val9 = "";

            string val10 = "";
            string val11 = "";
            string val12 = "";
            string val13 = "";
            string val14 = "";
            string val15 = "";
            string val16 = "";

            int num = 0;

            Sheets     sheets    = workbook.Worksheets;
            _Worksheet worksheet = (_Worksheet)sheets.get_Item(1);

            Excel.Range  range  = worksheet.get_Range("A2", "P65535");//A2、O65535表示到Excel从第A列的第2行到第O列的第65535-1行  A2、P65535表示到Excel从第A列的第2行到第P列的第65535-1行
            System.Array values = (System.Array)range.Formula;
            num = values.GetLength(0);

            //(OWC11.XlBorderWeight.xlThin);   //边框细线
            //((Excel.Range)worksheet.get_Range(worksheet.Cells[2, 2], worksheet.Cells[3, 3])).Borders.Weight = 25; //单元格高度
            //((Excel.Range)worksheet.Cells[2, 2]).ColumnWidth = 20;  //单元格列宽度
            //((Range)worksheet.get_Range(worksheet.Cells[2, 2], worksheet.Cells[3, 3])).MergeCells(true);  //合并单元格
            //((Range)worksheet.get_Range(worksheet.Cells[2, 2], worksheet.Cells[3, 3])).Font.Bold(true);   //字体粗体

            //if (values.GetValue(1, 1).ToString().Trim() != "车证号" && values.GetValue(1, 2).ToString().Trim() != "车号" && values.GetValue(1, 3).ToString().Trim() != "合同号")
            //{
            //    MessageBox.Show("预报选择错误,请重新选择Excel文件: '汽车衡预报模板'!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            //    return;
            //}

            for (int i = 2; i <= num; i++)
            {
                //if (values.GetValue(i, 1).ToString().Trim() == "" && values.GetValue(i, 2).ToString().Trim() == "" && values.GetValue(i, 5).ToString().Trim() == "")
                //{
                //    num = i;
                //}
                if (values.GetValue(i, 1).ToString().Trim() == "" || values.GetValue(i, 2).ToString().Trim() == "")
                {
                    break;
                }
                else
                {
                    val1 = values.GetValue(i, 1).ToString().Trim();   //记帐日期
                    val2 = values.GetValue(i, 2).ToString().Trim();   //订单号
                    val3 = values.GetValue(i, 3).ToString().Trim();   //订单行项目号
                    val4 = values.GetValue(i, 4).ToString().Trim();   //物料编码
                    val5 = values.GetValue(i, 5).ToString().Trim();   //物料名称
                    val6 = values.GetValue(i, 6).ToString().Trim();   //批号
                    val7 = values.GetValue(i, 7).ToString().Trim();   //收货数量
                    val8 = values.GetValue(i, 8).ToString().Trim();   //计量单位
                    val9 = values.GetValue(i, 9).ToString().Trim();   //工厂

                    val10 = values.GetValue(i, 10).ToString().Trim(); //库存地点
                    val11 = values.GetValue(i, 11).ToString().Trim(); //移动类型
                    val12 = values.GetValue(i, 12).ToString().Trim(); //上工序批次
                    val13 = values.GetValue(i, 13).ToString().Trim(); //特殊库存标志
                    val14 = values.GetValue(i, 14).ToString().Trim(); //销售订单号
                    val15 = values.GetValue(i, 15).ToString().Trim(); //销售订单行项目号
                    val16 = values.GetValue(i, 16).ToString().Trim(); //抬头文本

                    string strLRR = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
                    string strLRD = CoreFS.SA06.CoreUserInfo.UserInfo.GetDepartment();

                    strTmpTable = "DT_GX_STORAGEWEIGHTMAIN";
                    strTmpField = "FS_ACCOUNTDATE,FS_PRODUCTNO,FS_ITEMNO,FS_BATCHNO,FN_TOTALWEIGHT,FS_PLANT,"
                                  + "FS_SAPSTORE,FS_FLOW,FS_HEADER";
                    strTmpValue = "'" + val1 + "','" + val2 + "','" + val3 + "','" + val6 + "','" + val7 + "','" + val8
                                  + "','" + val10 + "','" + val11 + "','" + val16 + "'";

                    sapClass.insData(strTmpTable, strTmpField, strTmpValue);
                }
            }
        }