protected void Page_Load(object sender, EventArgs e) { try { #region 清空Message this.ErrorMsgLabel.Text = string.Empty; this.RightMsgLabel.Text = string.Empty; #endregion if (!IsPostBack) { #region Attributes this.but_Close.Attributes["onclick"] += "window.close();"; #endregion #region 取得異常資料 #region 傳入參數 ParameterList.Clear(); ParameterList.Add(Session["UID"].ToString()); #endregion #region 連結資料庫 BCO.ITM07_BCO bco = new BCO.ITM07_BCO(ConntionDB); DataTable dt_Return = bco.QUERYERRORBYFIND(ParameterList); #endregion #region 檢查回傳資料 if (dt_Return.Rows.Count == 0) { this.ErrorMsgLabel.Text = "查無資料"; return; } else { this.gv_Result.DataSource = dt_Return; this.gv_Result.DataBind(); } #endregion #endregion } } catch (Exception ex) { WaringLogProcess(ex.Message); this.ErrorMsgLabel.Text = ex.Message; } finally { } }
private bool CheckDup(string strITEM, string strPERIOD) { //品號期別是否已存在DB中 bool bResult = false; ParameterList.Clear(); ParameterList.Add(strITEM); ParameterList.Add(""); ParameterList.Add(strPERIOD); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add("="); ParameterList.Add(""); ParameterList.Add(""); ParameterList.Add("1"); ITM07_BCO BCO = new ITM07_BCO(ConntionDB); DataTable dtResult = BCO.QueryByFind(ParameterList); if (dtResult.Rows.Count > 0) { bResult = true; } return bResult; }
private bool CheckPeriodExist(string strITEM, string strPERIOD) { //品號期別是否存在 bool bResult = false; ParameterList.Clear(); ParameterList.Add(strITEM); ParameterList.Add(strPERIOD); ITM07_BCO BCO = new ITM07_BCO(ConntionDB); DataTable dtResult = BCO.QueryITEM_PERIOD(ParameterList); if (dtResult.Rows.Count > 0) { bResult = true; } return bResult; }
private void SaveDetail() { ITM07_BCO BCO = new ITM07_BCO(ConntionDB); DataTable dtCache = ((DataTable)Session["ITM072_" + PageTimeStamp.Value]); BCO.SaveDetail(dtCache, txtITEM.Text.Trim(), SLP_ItemPeriod.Text.Trim(), Session["UID"].ToString(), DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")); ViewState["ITEM"] = txtITEM.Text.Trim(); ViewState["PERIOD"] = SLP_ItemPeriod.Text.Trim(); }
private int DeleteDetail() { int iDelRow = 0; ITM07_BCO BCO = new ITM07_BCO(ConntionDB); string strITEM = txtITEM.Text.Trim(); string strPERIOD = SLP_ItemPeriod.Text.Trim(); DataTable dtCache = ((DataTable)Session["ITM072_" + PageTimeStamp.Value]); for (int i = 0; i < Repeater1.Items.Count; i++) { if (((CheckBox)Repeater1.Items[i].FindControl("chkSelect")).Checked == true) { string strCHAN_NO = ((Label)Repeater1.Items[i].FindControl("lblCHAN_NO")).Text; //把目前Session的資料更新為刪除,讓接下去的儲存動作做準備 DataRow[] FindRows = dtCache.Select("CHAN_NO='" + strCHAN_NO + "' And ENABLE=1"); FindRows[0]["EDIT_MODE"] = "3"; iDelRow++; } } return iDelRow; }
private void GetData(string strITEM, string strPERIOD) { ParameterList.Clear(); ParameterList.Add(strITEM); ParameterList.Add(strPERIOD); ITM07_BCO BCO = new ITM07_BCO(ConntionDB); DataTable dtResult = null; dtResult = BCO.QueryByDetail(ParameterList); Session["ITM072_" + PageTimeStamp.Value] = dtResult; }
/// <summary> /// BUTTON [載入檔案]鈕 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void but_LoadFile_Click(object sender, EventArgs e) { try { #region 將Client端的檔案上傳至AP端 #region 宣告變數 string s_UploadPath = string.Empty; ArrayList arl_Return = new ArrayList(); #endregion #region 將Client端的檔案上傳至AP端 s_UploadPath = Server.MapPath("..\\") + System.Configuration.ConfigurationManager.AppSettings["UploadPath"] + "ITM\\"; ITM07_BCO bco = new ITM07_BCO(ConntionDB); arl_Return = bco.FileUpload(s_UploadPath, this.fileupload_Path, Session["UID"].ToString()); #endregion #region 檢查回傳結果 if (arl_Return[0].ToString() == "FALSE") { #region 清空上傳匯入結果 this.UploadStatusPanel1.UploadSum = 0;//上傳結果總筆數 this.UploadStatusPanel1.UploadOK = 0;//上傳結果正常筆數 this.UploadStatusPanel1.UploadNG = 0;//上傳結果錯誤筆數 this.UploadStatusPanel1.ImportSum = 0;//匯入結果總筆數 this.UploadStatusPanel1.ImportOK = 0;//匯入結果正常筆數 this.UploadStatusPanel1.ImportNG = 0;//匯入結果錯誤筆數 #endregion #region 設定控制項 this.but_Import.Enabled = false;//確定匯入 this.but_Error.Enabled = false;//檢視異常 #endregion this.ErrorMsgLabel.Text = arl_Return[1].ToString(); return; } #endregion #endregion #region 依據AP端檔案資料匯入TmpTable #region 取得 TempTable VDS_ITM_CHAN_TMP 的 SCHEMA ITMCommon ITMComm = new ITMCommon(); DataTable dt_Temp = new DataTable(); ParameterList.Clear(); ParameterList.Add(ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false));//V_LOG_UID dt_Temp = bco.GET_VDS_ITM_CHAN_TMP_SCHEMA(ParameterList); #endregion #region 將資料寫入 TempTable DateTime d_Now = DateTime.Now; #region 讀取 Excel 資料 OleDbConnection oleConnection = null; DataSet ds_Excel = new DataSet(); try { //HDR=YES是表示Excel中的第一列為欄名。 //IMEX=1是表示儲存格內容若是文字和數字混合的內容, 要當做文字處理。 String connString = "Provider=Microsoft.JET.OLEDB.4.0;Data Source =" + arl_Return[1].ToString() + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1';"; oleConnection = new OleDbConnection(connString); oleConnection.Open(); OleDbCommand oleCommand = new OleDbCommand("SELECT * FROM [Sheet1$]", oleConnection); OleDbDataAdapter oleAdapter = new OleDbDataAdapter(oleCommand); oleAdapter.Fill(ds_Excel); #region 請注意如果EXCEL檔欄位有值,但到DB卻沒有資料 //請修改,機碼 HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\Engines\Excel\TypeGuessRows 值 //預設是 8, 表示會先讀取前 8 列來決定每一個欄位的型態, 所以如果前 8 列的資料都是數字, 到了第 9 列以後出現的文字資料都會變成 null //如果要解決這個問題, 只要把 TypeGuessRows 機碼值改成 0 #endregion } catch (Exception ex) { throw new Exception("讀取 Excel 資料失敗:" + ex.Message); } finally { if (oleConnection != null) { oleConnection.Close(); oleConnection.Dispose(); } } #endregion foreach (DataRow dr in ds_Excel.Tables[0].Rows) { #region 檢查條件 ArrayList arl_ConditionReturn = Check_Condition_DataLine(dr); #endregion #region 檢查正確 if (arl_ConditionReturn[1].ToString() == string.Empty) { DataRow dr_Temp = dt_Temp.NewRow(); dr_Temp["ID"] = ITMComm.GetValueSetParameter(dr["序號"].ToString(), "int", false);//ID dr_Temp["STATUS"] = ITMComm.GetValueSetParameter("1", "int", false);//處理狀態(1:正常資料;2:錯誤資料) dr_Temp["DATASOURCE"] = ITMComm.GetValueSetParameter(arl_Return[3].ToString(), "string", false);//匯入檔案 dr_Temp["DATATYPE"] = ITMComm.GetValueSetParameter("1", "int", false);//資料類別(1:FILE TO TMP;2:TMP TO DB) dr_Temp["MEMO"] = ITMComm.GetValueSetParameter(string.Empty, "string", false);//說明 dr_Temp["CHAN_NO"] = ITMComm.GetValueSetParameter(dr["通路代號"].ToString(), "string", false);//通路代號 dr_Temp["ITEM_MAP"] = ITMComm.GetValueSetParameter(dr["對照號"].ToString(), "string", false);//對照號 dr_Temp["ITEM"] = ITMComm.GetValueSetParameter(dr["品號"].ToString(), "string", false);//品號 dr_Temp["PERIOD"] = ITMComm.GetValueSetParameter(dr["期別"].ToString(), "string", false);//期別 dr_Temp["CREATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);//建立人員 dr_Temp["CREATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);//建立日期 dr_Temp["UPDATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);//異動人員 dr_Temp["UPDATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);//異動日期 dt_Temp.Rows.Add(dr_Temp); } #endregion #region 檢查不正確 else { DataRow dr_Temp = dt_Temp.NewRow(); string s_ErrorMsg = string.Empty; s_ErrorMsg = arl_ConditionReturn[1].ToString().Replace("<br/>", ","); s_ErrorMsg = ITMComm.Get_Byte_Length(s_ErrorMsg) > 500 ? s_ErrorMsg.Substring(0, 250) : s_ErrorMsg;//MEMO欄位=VARCHAR2(500) dr_Temp["ID"] = ITMComm.GetValueSetParameter((arl_ConditionReturn[1].ToString().IndexOf("欄位[ID]數字格式錯誤") == -1) ? dr["序號"].ToString() : string.Empty, "int", false); dr_Temp["STATUS"] = ITMComm.GetValueSetParameter("2", "int", false);//處理狀態(1:正常資料;2:錯誤資料) dr_Temp["DATASOURCE"] = ITMComm.GetValueSetParameter(arl_Return[3].ToString(), "string", false);//匯入檔案 dr_Temp["DATATYPE"] = ITMComm.GetValueSetParameter("1", "int", false);//資料類別(1:FILE TO TMP;2:TMP TO DB) dr_Temp["MEMO"] = s_ErrorMsg;//說明 dr_Temp["CREATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false); dr_Temp["CREATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false); dr_Temp["UPDATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false); dr_Temp["UPDATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false); dt_Temp.Rows.Add(dr_Temp); } #endregion } #endregion #region 連結資料庫 if (dt_Temp.Rows.Count == 0) { this.ErrorMsgLabel.Text = "無匯入資料"; return; } else { #region 將資料寫入TempTable DataTable dt_Return = bco.FileToTmp(null, Session["UID"].ToString(), dt_Temp); #endregion #region 計算[總筆數][正常筆數][錯誤筆數] int i_Total_Count = 0;//總筆數 int i_Success_Count = 0;//正常筆數 int i_Failure_Count = 0;//錯誤筆數 string s_FilterExpression = string.Empty; s_FilterExpression = "STATUS ='1'";//1:正常資料; DataRow[] dr_Success = dt_Return.Select(s_FilterExpression); if (dr_Success.Length == 1) { i_Success_Count = int.Parse(dr_Success[0]["count"].ToString()); } s_FilterExpression = "STATUS ='2'";//2:錯誤資料; DataRow[] dr_Failure = dt_Return.Select(s_FilterExpression); if (dr_Failure.Length == 1) { i_Failure_Count = int.Parse(dr_Failure[0]["count"].ToString()); } i_Total_Count = i_Success_Count + i_Failure_Count; this.UploadStatusPanel1.UploadSum = i_Total_Count;//上傳結果總筆數 this.UploadStatusPanel1.UploadOK = i_Success_Count;//上傳結果正常筆數 this.UploadStatusPanel1.UploadNG = i_Failure_Count;//上傳結果錯誤筆數 this.UploadStatusPanel1.ImportSum = 0;//匯入結果總筆數 this.UploadStatusPanel1.ImportOK = 0;//匯入結果正常筆數 this.UploadStatusPanel1.ImportNG = 0;//匯入結果錯誤筆數 #endregion #region 設定控制項 if ((i_Total_Count == i_Success_Count) && (i_Failure_Count == 0)) { this.but_Import.Enabled = true;//確定匯入 this.but_Error.Enabled = false;//檢視異常 } if (i_Failure_Count > 0) { this.but_Import.Enabled = false;//確定匯入 this.but_Error.Enabled = true;//檢視異常 } #endregion } #endregion #endregion } catch (Exception ex) { WaringLogProcess(ex.Message); this.ErrorMsgLabel.Text = ex.Message; } finally { //#region 設定 TabContainer 的 ActiveTabIndex //this.TabContainer1.ActiveTabIndex = 1; //#endregion } }
private DataTable GetChanData(string strITEM, string strPERIOD) { ParameterList.Clear(); ParameterList.Add(strITEM); ParameterList.Add(strPERIOD); ITM07_BCO BCO = new ITM07_BCO(ConntionDB); DataTable dtResult = null; dtResult = BCO.QueryByDetail(ParameterList); return dtResult; }
private void CopySave() { string strErr = CheckCopy(SLP_SKU1.Text.Trim(), SLP_ItemPeriod1.Text.Trim(), 0); lblErrMsg.Text = ""; if (strErr != "") { lblErrMsg.Text = strErr; } else { strErr = CheckCopy(SLP_SKU2.Text.Trim(), SLP_ItemPeriod2.Text.Trim(), 1); if (strErr != "") { lblErrMsg.Text = strErr; } else { if ((SLP_SKU1.Text.Trim() == SLP_SKU2.Text.Trim()) && (SLP_ItemPeriod1.Text.Trim() == SLP_ItemPeriod2.Text.Trim())) { lblErrMsg.Text = "來源和新增的品號期別不可相同"; } else { DataTable dt1 = GetChanData(SLP_SKU1.Text.Trim(), SLP_ItemPeriod1.Text.Trim()); DataTable dt2 = GetChanData(SLP_SKU2.Text.Trim(), SLP_ItemPeriod2.Text.Trim()); DataTable dtNew = dt1.Clone(); ITM07_BCO BCO = new ITM07_BCO(ConntionDB); for (int i = 0; i < dt1.Rows.Count; i++) { DataRow[] FindRows = dt2.Select("CHAN_NO='" + dt1.Rows[i]["CHAN_NO"].ToString() + "'"); if (FindRows.Length == 0) { dt1.Rows[i]["EDIT_NO"] = "0"; dt1.Rows[i]["STATE"] = "2"; dtNew.ImportRow(dt1.Rows[i]); } } if (dtNew.Rows.Count > 0) BCO.CopyNew(dtNew, SLP_SKU2.Text.Trim(), SLP_ItemPeriod2.Text.Trim(), Session["UID"].ToString(), DateTime.Now.ToString("yyyy/MM/dd")); panCopy.Visible = false; panMask.Visible = false; Alert("複製新增完成"); } } } }
protected void btnBathUpdate_Click(object sender, EventArgs e) { string strErrMsg = ""; if (txtITEM.Text.Trim() == "") { //1.檢查品號有無輸入 ErrorMsgLabel.Text = "[品號]欄位未輸入"; } else if (SLP_ItemPeriod.Text.Trim() == "") { //2.檢查期別有無輸入 ErrorMsgLabel.Text = "[期別]欄位未輸入"; } else if ((txtNOTICE_RETURN_DATE.Text.Trim() == "") && (txtCHAN_END_DATE.Text.Trim() == "") && (txtPLAN_RETURN_DATE.Text.Trim() == "") && (txtRTN_DDL.Text.Trim() == "") && (txtEFFECTIVE_DATE.Text.Trim() == "") && (txtITEM_MAP.Text.Trim() == "") ) { ErrorMsgLabel.Text = "未輸入標示 ※ 的欄位"; } else { try { ITM07_BCO BCO = new ITM07_BCO(ConntionDB); ParameterList.Clear(); ParameterList.Add(txtITEM.Text.Trim()); ParameterList.Add(SLP_ItemPeriod.Text.Trim()); ParameterList.Add(txtCHAN_END_DATE.Text.Trim()); ParameterList.Add(txtNOTICE_RETURN_DATE.Text.Trim()); ParameterList.Add(txtPLAN_RETURN_DATE.Text.Trim()); ParameterList.Add(txtRTN_DDL.Text.Trim()); ParameterList.Add(txtEFFECTIVE_DATE.Text.Trim()); ParameterList.Add(txtITEM_MAP.Text.Trim()); ParameterList.Add(DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")); ParameterList.Add(Session["UID"].ToString()); BCO.UpdateBath(ParameterList); Alert("更新完成"); } catch (Exception ex) { ErrorMsgLabel.Text = ex.Message; } } }
/// <summary> /// 查詢DB資料 /// </summary> /// <param name="src">0:限制筆數,1:所有筆數</param> private DataTable Get_Data(char src) { string V_ITEM;//品號 string V_ITEM_NAME;//品名 string V_PERIOD;//期別 string V_CHAN_NO;//通路 string V_ITEM_MAP;//通路對照號 string V_TRUN_OUT;//出貨方式 string V_EFFECTIVE_DATE;//通路生效日 string V_CHAN_END_DATE;//通路結束日 string V_FREQUENCY_TYPE;//EOS處理頻率 string V_STATE;//資料狀態 string V_CHAN_DIS_NO;//配本序號 string V_NOTICE_RETURN_DATE;//退貨通知日 string V_BACKWARD_DATE;//轉退貨單日 string V_CHAN_ISS_DATE;//通路發行日 string V_RETURN_TYPE;//退貨方式 string V_PLAN_RETURN_DATE;//首次預定退貨日 string V_NEXT_PLAN_RETURN_DATE;//下次預定退貨日 string V_DISPLAY_DAY_OP;//陳列天數OP string V_DISPLAY_DAY;//陳列天數 string V_RTN_DDL;//退書截止日 string N_ROWNUM; V_ITEM = txtITEM.Text.Trim(); V_ITEM_NAME = (CheckBoxLikeSearch.Checked == false ? txtITEM_NAME.Text.Trim() : "%" + txtITEM_NAME.Text.Trim() + "%"); V_PERIOD = SLP_ItemPeriod.Text.Trim(); V_CHAN_NO = txtCHAN_NO.Text.Trim(); V_ITEM_MAP = (CheckBoxLikeSearch.Checked == false ? txtITEM_MAP.Text.Trim() : "%" + txtITEM_MAP.Text.Trim() + "%"); V_TRUN_OUT = (ddlTRUN_OUT.SelectedValue.Trim() == "全部") ? string.Empty : ddlTRUN_OUT.SelectedValue.Trim(); V_EFFECTIVE_DATE = txtEFFECTIVE_DATE.Text.Trim(); V_CHAN_END_DATE = txtCHAN_END_DATE.Text.Trim(); V_FREQUENCY_TYPE = (CheckBoxLikeSearch.Checked == false ? txtFREQUENCY_TYPE.Text.Trim() : "%" + txtFREQUENCY_TYPE.Text.Trim() + "%"); V_STATE = (txtSTATE.Text.Trim() == "全部") ? string.Empty : txtSTATE.Text.Trim(); V_CHAN_DIS_NO = (CheckBoxLikeSearch.Checked == false ? txtCHAN_DIS_NO.Text.Trim() : "%" + txtCHAN_DIS_NO.Text.Trim() + "%"); V_NOTICE_RETURN_DATE = txtNOTICE_RETURN_DATE.Text.Trim(); V_BACKWARD_DATE = txtBACKWARD_DATE.Text.Trim(); V_CHAN_ISS_DATE = txtCHAN_ISS_DATE.Text.Trim(); V_RETURN_TYPE = (ddlRETURN_TYPE.SelectedValue.Trim() == "全部") ? string.Empty : ddlRETURN_TYPE.SelectedValue.Trim(); V_PLAN_RETURN_DATE = txtPLAN_RETURN_DATE.Text.Trim(); V_NEXT_PLAN_RETURN_DATE = txtNEXT_PLAN_RETURN_DATE.Text.Trim(); V_DISPLAY_DAY_OP = (txtDISPLAY_DAY.Operator == "0" ? "<" : ((txtDISPLAY_DAY.Operator == "1") ? "=" : ">")); V_DISPLAY_DAY = txtDISPLAY_DAY.Text.Trim(); V_RTN_DDL = txtRTN_DDL.Text.Trim(); N_ROWNUM = TextBoxRowCountLimit.Text.Trim(); ParameterList.Clear(); ParameterList.Add(V_ITEM); ParameterList.Add(V_ITEM_NAME); ParameterList.Add(V_PERIOD); ParameterList.Add(V_CHAN_NO); ParameterList.Add(V_ITEM_MAP); ParameterList.Add(V_TRUN_OUT); ParameterList.Add(V_EFFECTIVE_DATE); ParameterList.Add(V_CHAN_END_DATE); ParameterList.Add(V_FREQUENCY_TYPE); ParameterList.Add(V_STATE); ParameterList.Add(V_CHAN_DIS_NO); ParameterList.Add(V_NOTICE_RETURN_DATE); ParameterList.Add(V_BACKWARD_DATE); ParameterList.Add(V_CHAN_ISS_DATE); ParameterList.Add(V_RETURN_TYPE); ParameterList.Add(V_PLAN_RETURN_DATE); ParameterList.Add(V_NEXT_PLAN_RETURN_DATE); ParameterList.Add(V_DISPLAY_DAY_OP); ParameterList.Add(V_DISPLAY_DAY); ParameterList.Add(V_RTN_DDL); ParameterList.Add(N_ROWNUM); ITM07_BCO BCO = new ITM07_BCO(ConntionDB); DataTable dtResult = null; //匯出和畫面顯示的條件都一樣,匯出部分少使用一個筆數限制的條件 //以及取得的資料欄位數有差 if (src == '0') //畫面顯示 dtResult = BCO.QueryByFind(ParameterList); if (src == '1') //匯出報表 dtResult = BCO.QueryByExport(ParameterList); return dtResult; }
/// <summary> /// BUTTON [確定匯入]鈕 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void but_Import_Click(object sender, EventArgs e) { try { #region 檢查條件 ArrayList arl_Check_Condition = Check_Condition("BUTTON [確定匯入]"); #region 如果檢查有誤,則Return if (arl_Check_Condition[1].ToString() != string.Empty) { #region 錯誤訊息 this.ErrorMsgLabel.Text = arl_Check_Condition[1].ToString(); #endregion return; } #endregion #endregion #region 將TempTable的資料寫入正式Table #region 傳入參數 string s_SourcePath = Server.MapPath("..\\") + System.Configuration.ConfigurationManager.AppSettings["UploadPath"] + "ITM\\"; string s_DestinationPath = Server.MapPath("..\\") + System.Configuration.ConfigurationManager.AppSettings["BackPath"] + "ITM\\"; ParameterList.Clear(); ParameterList.Add(Session["UID"].ToString()); ParameterList.Add(DateTime.Now); ParameterList.Add(s_SourcePath);//來源資料路徑 ParameterList.Add(s_DestinationPath);//目的地資料路徑 #endregion #region 連結資料庫 ITM07_BCO bco = new ITM07_BCO(ConntionDB); DataTable dt_Return = bco.TmpToDB(null, ParameterList); #endregion #region 計算[總筆數][正常筆數][錯誤筆數] int i_Total_Count = 0;//總筆數 int i_Success_Count = 0;//正常筆數 int i_Failure_Count = 0;//錯誤筆數 string s_FilterExpression = string.Empty; s_FilterExpression = "STATUS ='1'";//1:正常資料; DataRow[] dr_Success = dt_Return.Select(s_FilterExpression); if (dr_Success.Length == 1) { i_Success_Count = int.Parse(dr_Success[0]["count"].ToString()); } s_FilterExpression = "STATUS ='2'";//2:錯誤資料; DataRow[] dr_Failure = dt_Return.Select(s_FilterExpression); if (dr_Failure.Length == 1) { i_Failure_Count = int.Parse(dr_Failure[0]["count"].ToString()); } i_Total_Count = i_Success_Count + i_Failure_Count; this.UploadStatusPanel1.ImportSum = i_Total_Count;//匯入結果總筆數 this.UploadStatusPanel1.ImportOK = i_Success_Count;//匯入結果正常筆數 this.UploadStatusPanel1.ImportNG = i_Failure_Count;//匯入結果錯誤筆數 #endregion #region 設定控制項 if ((i_Total_Count == i_Success_Count) && (i_Failure_Count == 0)) { this.but_Import.Enabled = false;//確定匯入 this.but_Error.Enabled = false;//檢視異常 } if (i_Failure_Count > 0) { this.but_Import.Enabled = false;//確定匯入 this.but_Error.Enabled = true;//檢視異常 } #endregion #endregion } catch (Exception ex) { WaringLogProcess(ex.Message); this.ErrorMsgLabel.Text = ex.Message; } }
/// <summary> /// BUTTON [整批修改]鈕 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void but_Save_Click(object sender, EventArgs e) { try { #region 檢查條件 BCO.ITMCommon ITMComm = new BCO.ITMCommon(); ArrayList arl_Check_Condition = Check_Condition(); #region 如果檢查有誤,則Return if (arl_Check_Condition[1].ToString() != string.Empty) { #region 錯誤訊息 this.ErrorMsgLabel.Text = arl_Check_Condition[1].ToString(); #endregion #region Focus欄位 if (arl_Check_Condition[0].ToString() != string.Empty) { string s_ScriptManager_Script = ITMComm.ToMakeUp_SetFocus_Script(arl_Check_Condition[0].ToString(), true); ScriptManager.RegisterStartupScript(this.up_Msg, typeof(UpdatePanel), "ITM075", s_ScriptManager_Script, true); } #endregion return; } #endregion #endregion #region 傳入參數 #region 設定TempTable的框架 DataTable dt_Temp = new DataTable(); dt_Temp.Columns.Add("ITEM", typeof(string));//[品號] dt_Temp.Columns.Add("PERIOD_B", typeof(string));//[期別(起)] dt_Temp.Columns.Add("PERIOD_E", typeof(string));//[期別(迄)] dt_Temp.Columns.Add("ITEM_NAME", typeof(string));//[品名] dt_Temp.Columns.Add("MDC_END_DATE", typeof(DateTime));//[DC結束日] dt_Temp.Columns.Add("PERIOD_END_DATE", typeof(DateTime));//[期別結束日] dt_Temp.Columns.Add("EFFECTIVE_DATE", typeof(DateTime));//[通路生效日] dt_Temp.Columns.Add("CHAN_END_DATE", typeof(DateTime));//[通路結束日] dt_Temp.Columns.Add("NOTICE_RETURN_DATE", typeof(DateTime));//[退貨通知日] dt_Temp.Columns.Add("PLAN_RETURN_DATE", typeof(DateTime));//[首次預退日] dt_Temp.Columns.Add("RTN_DDL", typeof(DateTime));//[退書截止日] dt_Temp.Columns.Add("EDIT_REASON", typeof(string));//[異動原因] dt_Temp.Columns.Add("UPDATEUID", typeof(string));//[異動人員] dt_Temp.Columns.Add("UPDATEDATE", typeof(DateTime));//[異動時間] #endregion #region 將參數寫入TempTable #region 設定變數 string s_ITEM_FileName = string.Empty; string s_PERIOD_B_FileName = string.Empty; string s_PERIOD_E_FileName = string.Empty; DateTime d_Now = DateTime.Now; #endregion for (int i = 1; i <= 10; i++) { s_ITEM_FileName = "slp_ITEM_" + i.ToString(); s_PERIOD_B_FileName = "slp_PERIOD_B_" + i.ToString(); s_PERIOD_E_FileName = "slp_PERIOD_E_" + i.ToString(); if (((ASP.itm_slp_slp_sku_ascx)this.table1.FindControl(s_ITEM_FileName)).Text.Trim() != string.Empty) { DataRow dr = dt_Temp.NewRow(); dr["ITEM"] = ITMComm.GetValueSetParameter(((ASP.itm_slp_slp_sku_ascx)this.table1.FindControl(s_ITEM_FileName)).Text, "string", false);//[品號] dr["PERIOD_B"] = ITMComm.GetValueSetParameter(((ASP.itm_slp_slp_itemperiod_ascx)this.table1.FindControl(s_PERIOD_B_FileName)).Text, "string", false);//[期別(起)] dr["PERIOD_E"] = ITMComm.GetValueSetParameter(((ASP.itm_slp_slp_itemperiod_ascx)this.table1.FindControl(s_PERIOD_E_FileName)).Text, "string", false);//[期別(迄)] dr["ITEM_NAME"] = ITMComm.GetValueSetParameter(this.txt_ITEM_NAME.Text, "string", false);//[品名] dr["MDC_END_DATE"] = ITMComm.GetValueSetParameter(this.slp_MDC_END_DATE.Text, "date", false);//[DC結束日] dr["PERIOD_END_DATE"] = ITMComm.GetValueSetParameter(this.slp_PERIOD_END_DATE.Text, "date", false);//[期別結束日] dr["EFFECTIVE_DATE"] = ITMComm.GetValueSetParameter(this.slp_EFFECTIVE_DATE.Text, "date", false);//[通路生效日] dr["CHAN_END_DATE"] = ITMComm.GetValueSetParameter(this.slp_CHAN_END_DATE.Text, "date", false);//[通路結束日] dr["NOTICE_RETURN_DATE"] = ITMComm.GetValueSetParameter(this.slp_NOTICE_RETURN_DATE.Text, "date", false);//[退貨通知日] dr["PLAN_RETURN_DATE"] = ITMComm.GetValueSetParameter(this.slp_PLAN_RETURN_DATE.Text, "date", false);//[首次預退日] dr["RTN_DDL"] = ITMComm.GetValueSetParameter(this.slp_RTN_DDL.Text, "date", false);//[退書截止日] dr["EDIT_REASON"] = ITMComm.GetValueSetParameter(this.txt_EDIT_REASON.Text, "string", false);//[異動原因] dr["UPDATEUID"] = ITMComm.GetValueSetParameter(Session["UID"].ToString(), "string", false);//[異動人員] dr["UPDATEDATE"] = ITMComm.GetValueSetParameter(d_Now.ToString(), "datetime", false);//[異動時間] dt_Temp.Rows.Add(dr); } } #endregion #endregion #region 連結資料庫 BCO.ITM07_BCO bco = new BCO.ITM07_BCO(ConntionDB); bco.UPDATE_ITM075_BULK(null, dt_Temp); #endregion #region 整批修改成功,將欄位清空 this.ErrorMsgLabel.Text = "整批修改成功!"; this.txt_ITEM_NAME.Text = string.Empty;//品名 this.slp_MDC_END_DATE.Text = string.Empty;//DC結束日 this.slp_PERIOD_END_DATE.Text = string.Empty;//期別結束日 this.slp_EFFECTIVE_DATE.Text = string.Empty;//通路生效日 this.slp_CHAN_END_DATE.Text = string.Empty;//通路結束日 this.slp_NOTICE_RETURN_DATE.Text = string.Empty;//退貨通知日 this.slp_PLAN_RETURN_DATE.Text = string.Empty;//首次預退日 this.slp_RTN_DDL.Text = string.Empty;//退書截止日 this.txt_EDIT_REASON.Text = string.Empty;//異動原因 this.slp_ITEM_1.Text = string.Empty;//品號_1 this.slp_PERIOD_B_1.Text = string.Empty;//期別(起)_1 this.slp_PERIOD_E_1.Text = string.Empty;//期別(迄)_1 this.slp_ITEM_2.Text = string.Empty;//品號_2 this.slp_PERIOD_B_2.Text = string.Empty;//期別(起)_2 this.slp_PERIOD_E_2.Text = string.Empty;//期別(迄)_2 this.slp_ITEM_3.Text = string.Empty;//品號_3 this.slp_PERIOD_B_3.Text = string.Empty;//期別(起)_3 this.slp_PERIOD_E_3.Text = string.Empty;//期別(迄)_3 this.slp_ITEM_4.Text = string.Empty;//品號_4 this.slp_PERIOD_B_4.Text = string.Empty;//期別(起)_4 this.slp_PERIOD_E_4.Text = string.Empty;//期別(迄)_4 this.slp_ITEM_5.Text = string.Empty;//品號_5 this.slp_PERIOD_B_5.Text = string.Empty;//期別(起)_5 this.slp_PERIOD_E_5.Text = string.Empty;//期別(迄)_5 this.slp_ITEM_6.Text = string.Empty;//品號_6 this.slp_PERIOD_B_6.Text = string.Empty;//期別(起)_6 this.slp_PERIOD_E_6.Text = string.Empty;//期別(迄)_6 this.slp_ITEM_7.Text = string.Empty;//品號_7 this.slp_PERIOD_B_7.Text = string.Empty;//期別(起)_7 this.slp_PERIOD_E_7.Text = string.Empty;//期別(迄)_7 this.slp_ITEM_8.Text = string.Empty;//品號_8 this.slp_PERIOD_B_8.Text = string.Empty;//期別(起)_8 this.slp_PERIOD_E_8.Text = string.Empty;//期別(迄)_8 this.slp_ITEM_9.Text = string.Empty;//品號_9 this.slp_PERIOD_B_9.Text = string.Empty;//期別(起)_9 this.slp_PERIOD_E_9.Text = string.Empty;//期別(迄)_9 this.slp_ITEM_10.Text = string.Empty;//品號_10 this.slp_PERIOD_B_10.Text = string.Empty;//期別(起)_10 this.slp_PERIOD_E_10.Text = string.Empty;//期別(迄)_10 this.up_All.Update(); #endregion } catch (Exception ex) { WaringLogProcess(ex.Message); this.ErrorMsgLabel.Text = ex.Message; } finally { } }