private void ClientFileToServerTemp() { #region try { this.ErrorMsgLabel.Text = ""; this.up_ErrorMsg.Update(); ClearUploadStatus(); if (this.ErrorMsgLabel.Text != "") return; this.hid_FrmStatus.Value = "fmProcess"; //LockPage(); string s_UploadPath = string.Empty; string s_BackPath = string.Empty; string s_LoginUser = string.Empty; ArrayList arl_FileUpload_ReturnS = null;//門市檔案 ArrayList arl_FileUpload_ReturnI = null;//商品檔案 System.Text.StringBuilder sb = new System.Text.StringBuilder(); STMModel.VDS_STM37_BCO bco = new STMModel.VDS_STM37_BCO(ConnectionDB); string ProID = txtPROMOTE_ID.Text; int proType; int N_CNT_M; int N_CNT_N; DataTable dt_s = bco.QueryPromoteS(ProID, out N_CNT_M, out N_CNT_N); if (N_CNT_M == 0) { this.ErrorMsgLabel.Text = "找不到特殊書展主檔"; return; } else { proType = Convert.ToInt16(dt_s.Rows[0]["PROMOTE_TYPE"]); } #region 上傳檔案到AP端 //取得要上傳的路徑 s_UploadPath = Server.MapPath("..\\") + System.Configuration.ConfigurationManager.AppSettings["UploadPath"] + "\\STM\\"; s_LoginUser = Session["UID"].ToString(); arl_FileUpload_ReturnS = bco.FileUpload(s_UploadPath, this.FileUploadS, s_LoginUser); arl_FileUpload_ReturnI = bco.FileUpload(s_UploadPath, this.FileUploadI, s_LoginUser); #endregion if (arl_FileUpload_ReturnS[0].ToString() == "FALSE")//檔案上傳至AP端錯誤 { sb.Append("門市檔案上傳至AP端錯誤<br/>"); } if (arl_FileUpload_ReturnI[0].ToString() == "FALSE")//檔案上傳至AP端錯誤 { sb.Append("商品檔案上傳至AP端錯誤<br/>"); } if (sb.ToString() != "") { this.ErrorMsgLabel.Text = sb.ToString(); ClearUploadStatus(); return; } else //檔案上傳至AP端正常 { #region #region 讀取 Excel 資料 // 讀取 Excel 資料(門市) DataSet ds_S = Load_Excel(arl_FileUpload_ReturnS[1].ToString()); DataTable dtTemp_S = ExcelToTemp(ds_S.Tables[0], arl_FileUpload_ReturnS[4].ToString(), 1); // 讀取 Excel 資料(商品) DataSet ds_I = Load_Excel(arl_FileUpload_ReturnI[1].ToString()); DataTable dtTemp_I = ExcelToTemp(ds_I.Tables[0], arl_FileUpload_ReturnI[4].ToString(), 2); DateTime dCreateTime = DateTime.Now; string strCreateTime = dCreateTime.ToString("yyyy/MM/dd HH:mm:ss"); if (dtTemp_S.Rows.Count == 0 || dtTemp_I.Rows.Count == 0) { this.ErrorMsgLabel.Text = "匯入檔案沒有資料"; } if (this.ErrorMsgLabel.Text != "") { up_ErrorMsg.Update(); return; } int N_UPLOAD_STORE = dtTemp_S.Rows.Count; int N_UPLOAD_ITEM = dtTemp_I.Rows.Count; #endregion #region 將檔案匯入TmpTable int N_STORE_OK = 0; int N_STORE_NG = 0; int N_ITEM_OK = 0; int N_ITEM_NG = 0; string ErrorMsg = ""; bco.FileToTmp(1, proType, ProID, dtTemp_S, null, Session["UID"].ToString(), out ErrorMsg); bco.FileToTmp(2, proType, ProID, dtTemp_I, null, Session["UID"].ToString(), out ErrorMsg); //門市 DataTable dtResultA = bco.QueryErrorByFind(1, 0, Session["UID"].ToString(), dCreateTime, dCreateTime); N_STORE_OK = dtResultA.Select("DATATYPE=1").Length; N_STORE_NG = dtResultA.Select("DATATYPE=2").Length; //商品 DataTable dtResultB = bco.QueryErrorByFind(2, 0, Session["UID"].ToString(), dCreateTime, dCreateTime); N_ITEM_OK = dtResultB.Select("DATATYPE=1").Length; N_ITEM_NG = dtResultB.Select("DATATYPE=2").Length; ErrorMsgLabel.Text = ErrorMsg; #endregion //上傳結果(門市) this.UploadStatusPanelS.UploadSum = N_UPLOAD_STORE ; this.UploadStatusPanelS.UploadOK = N_STORE_OK; this.UploadStatusPanelS.UploadNG = N_STORE_NG; //上傳結果(商品) this.UploadStatusPanelI.UploadSum = N_UPLOAD_ITEM ; this.UploadStatusPanelI.UploadOK = N_ITEM_OK; this.UploadStatusPanelI.UploadNG = N_ITEM_NG; if ((N_STORE_OK > 0) && (N_ITEM_OK > 0) && (N_STORE_NG == 0) && (N_ITEM_NG == 0)) { bco.TmpToDB(null, Session["UID"].ToString(), 1, out ErrorMsg); dtResultA = bco.QueryErrorByFind(1, 0, Session["UID"].ToString(), dCreateTime, dCreateTime); N_STORE_OK = dtResultA.Select("DATATYPE=1").Length; N_STORE_NG = dtResultA.Select("DATATYPE=2").Length; dtResultB = bco.QueryErrorByFind(2, 0, Session["UID"].ToString(), dCreateTime, dCreateTime); N_ITEM_OK = dtResultB.Select("DATATYPE=1").Length; N_ITEM_NG = dtResultB.Select("DATATYPE=2").Length; //匯入結果(門市) this.UploadStatusPanelS.ImportSum = N_UPLOAD_STORE ; this.UploadStatusPanelS.ImportOK = N_STORE_OK; this.UploadStatusPanelS.ImportNG = N_STORE_NG; //匯入結果(商品) this.UploadStatusPanelI.ImportSum = N_UPLOAD_ITEM ; this.UploadStatusPanelI.ImportOK = N_ITEM_OK; this.UploadStatusPanelI.ImportNG = N_ITEM_NG; } if ((N_STORE_NG != 0) || (N_ITEM_NG != 0)) { this.ErrorMsgLabel.Text = "匯入失敗,請查詢異常報表"; } else { this.ErrorMsgLabel.Text = "匯入完成"; } up_ErrorMsg.Update(); #endregion } unLockPage(); this.hid_FrmStatus.Value = "fmBroswe"; } catch (Exception ex) { this.ErrorMsgLabel.Text = ex.Message.Split(Environment.NewLine.Replace(Environment.NewLine, "~").ToCharArray())[0]; //直接取第一個 unLockPage(); this.hid_FrmStatus.Value = "fmBroswe"; } #endregion }
protected void btn_Temp_To_DB_Click(object sender, EventArgs e) { DateTime dCreateTime = DateTime.Now; string strCreateTime = dCreateTime.ToString("yyyy/MM/dd HH:mm:ss"); STMModel.VDS_STM37_BCO bco = new STMModel.VDS_STM37_BCO(ConnectionDB); DataTable dtResult1 = bco.QueryErrorByFind(0, 0, Session["UID"].ToString(), dCreateTime, dCreateTime); if (dtResult1.Rows.Count == 0) { this.ErrorMsgLabel.Text = "請先匯入資料"; } else { string ErrorMsg; bco.TmpToDB(null, Session["UID"].ToString(), 0, out ErrorMsg); DataTable dtResult = bco.QueryErrorByFind(0, 0, Session["UID"].ToString(), dCreateTime, dCreateTime); int N_OK = dtResult.Select("DATATYPE=1").Length; int N_NG = dtResult.Select("DATATYPE=2").Length; //匯入結果(門市) this.UploadStatusPanelM.ImportSum = dtResult.Rows.Count; this.UploadStatusPanelM.ImportOK = N_OK; this.UploadStatusPanelM.ImportNG = N_NG; if (N_NG != 0) { this.ErrorMsgLabel.Text = "上傳失敗,請查詢異常報表"; } else { this.ErrorMsgLabel.Text = "匯入成功"; } } up_ErrorMsg.Update(); unLockPage(); this.hid_FrmStatus.Value = "fmBroswe"; }