protected void btnEdt_Click(object sender, EventArgs e) { //檢核必輸入欄位 TextBox ACCEPT_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_START).FindControl("TextBoxCode")); TextBox ACCEPT_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_END).FindControl("TextBoxCode")); TextBox ACCEPT_FIRST_DATE = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_FIRST_DATE).FindControl("TextBoxCode")); TextBox RETURN_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_START).FindControl("TextBoxCode")); TextBox RETURN_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_END).FindControl("TextBoxCode")); TextBox txtCOL_DAYS = (TextBox)(SLP_COL_DAYS.TextBox_Code); TextBox[] FieldIDs ={ txtPROMOTE_NAME, txtPROMOTE_MONTH.TextBoxCode_Object, txtACCT_MONTH.TextBoxCode_Object, ACCEPT_DATE_START, ACCEPT_DATE_END, ACCEPT_FIRST_DATE, RETURN_DATE_START, RETURN_DATE_END, txtCOL_DAYS }; string[] FieldNames ={ "檔期名稱", "活動月份", "結帳月份", "進貨開始日", "進貨結束日", "首次出貨日", "退貨開始日", "退貨結束日", "收款天數" }; int i = 0; foreach (TextBox FieldName in FieldIDs) { if (FieldName.Text.Trim().Length == 0) { ErrorMsgLabel.Text = "必須輸入「" + FieldNames[i] + "」欄位"; return; } i++; } if (Request[SLP_COL_DAYS.TextBox_Name.UniqueID].ToString() == "查無資料") { ErrorMsgLabel.Text = "查無收款天數資料"; return; } if (SLP_NOTES.Text != "" && Request[SLP_NOTES.TextBox_Name.UniqueID].ToString() == "查無資料") { ErrorMsgLabel.Text = "查無檔期備註資料"; return; } //簡化至check_date ////進貨開始日須小於進貨結束日 //if ((SLP_ACCEPT_DATE_START.Text != "") || (SLP_ACCEPT_DATE_END.Text != "")) //{ // if (DateTime.Parse(SLP_ACCEPT_DATE_START.Text) >= DateTime.Parse(SLP_ACCEPT_DATE_END.Text)) // { // ErrorMsgLabel.Text = "進貨開始日須小於進貨結束日 !!"; // return; // } //} //判斷是否已審核 if (txtCONFIRM_CODE.Text == "已審核") { ErrorMsgLabel.Text = "已審核資料不可修改,請先審核解除再進行修改 !!"; return; } //日期條件檢查 if (!check_date()) { return; } DataSet ds1 = (DataSet)Session["STM272_" + PageTimeStamp.Value]; DataTable dtSTORE = ds1.Tables[0].DefaultView.ToTable(true, "STORE"); STMModel.MaintainPromoteExhibition STM = new STMModel.MaintainPromoteExhibition(ConnectionDB); foreach (DataRow dr in dtSTORE.Rows) { if (!(STM.CheckDcDate(dr["STORE"].ToString(), ACCEPT_FIRST_DATE.Text))) { ErrorMsgLabel.Text = "檔期首次進貨日不在門市" + dr["STORE"].ToString() + "適用日期區間中!!"; return; } } if (this.SLP_PRICE_SUBSIDY_PERCENT.Text.Length > 0) { if (Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) < 0) { ErrorMsgLabel.Text = "[門市補貼%]欄位請輸入100>門市補貼>0值<br/>"; return; } } if (this.SLP_COST_SUBSIDY_PERCENT.Text.Length > 0) { if (Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) < 0) { ErrorMsgLabel.Text = "[出版社補貼%]欄位請輸入100>出版社補貼>0值<br/>"; return; } } //儲存作業 int v_ID = 0; #region try { #region 取得畫面元件的值 DateTime processtime = DateTime.Now; #endregion #region 檔期活動 ParameterList.Clear(); ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["PROMOTE_ID"].ToString(), "string", false)); ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["CREATEDATE"].ToString(), "datetime", false)); ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["CREATEUID"].ToString(), "string", false)); ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["UPDATEDATE"].ToString(), "datetime", false)); ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["UPDATEUID"].ToString(), "string", false)); ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_NAME.Text, "string", false)); //V_NEW_PROMOTE_NAME ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_MONTH.Text, "string", false)); //V_NEW_PROMOTE_MONTH ParameterList.Add(GetValueSetParameter(this.txtACCT_MONTH.Text, "string", false)); //V_NEW_ACCT_MONTH ParameterList.Add(GetValueSetParameter(this.SLP_COL_DAYS.Text, "string", false)); //V_NEW_COL_DAYS ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_START.Text, "date", false)); //D_NEW_ACCEPT_DATE_START ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_END.Text, "date", false)); //D_NEW_ACCEPT_DATE_END ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_FIRST_DATE.Text, "date", false)); //D_NEW_ACCPET_FIRST_DATE ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_START.Text, "date", false)); //D_NEW_RETURN_DATE_START ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_END.Text, "date", false)); //D_NEW_RETURN_DATE_END ParameterList.Add(GetValueSetParameter(this.ddlPROMOTE_TYPE.Text, "int", false)); //N_NEW_PROMOTE_TYPE ParameterList.Add(GetValueSetParameter(this.ddlDISCOUNT_TYPE.Text, "string", false)); //V_NEW_DISCOUNT_TYPE ParameterList.Add(GetValueSetParameter(this.SLP_NOTES.Text, "string", false)); //N_NEW_NOTES ParameterList.Add(GetValueSetParameter(this.SLP_PRICE_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_PRICE_SUBSIDY_PERCENT ParameterList.Add(GetValueSetParameter(this.SLP_COST_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_COST_SUBSIDY_PERCENT ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false)); //V_NEW_AC_UID if (this.txtCONFIRM_CODE.Text == "已審核") ParameterList.Add(1); //N_CONFIRM_CODE else ParameterList.Add(0); //N_CONFIRM_CODE ParameterList.Add(64); //N_NEW_DISCOUNT_KIND ParameterList.Add(processtime); ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false)); #endregion #region 商品 DataSet ds = (DataSet)Session["STM272_" + PageTimeStamp.Value]; #endregion STMModel.MaintainPromoteExhibition BCO = new STMModel.MaintainPromoteExhibition(ConnectionDB); BCO.UpdateStoreBase(ParameterList, null, ds.Tables[0]); QueryData(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["PROMOTE_ID"].ToString()); ScriptManager.RegisterStartupScript(UpdatePanel11, this.GetType(), "ClientScript", "alert('更新完成');", true); } catch (Exception ex) { ErrorMsgLabel.Text = ex.Message.Split(Environment.NewLine.Replace(Environment.NewLine, "~").ToCharArray())[0]; //直接取第一個 } #endregion }
protected void btnSave_Click(object sender, EventArgs e) { STMModel.MaintainPromoteExhibition STM = new STMModel.MaintainPromoteExhibition(ConntionDB); //檢核必輸入欄位 TextBox ACCEPT_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_START).FindControl("TextBoxCode")); TextBox ACCEPT_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_END).FindControl("TextBoxCode")); TextBox ACCEPT_FIRST_DATE = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_FIRST_DATE).FindControl("TextBoxCode")); TextBox RETURN_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_START).FindControl("TextBoxCode")); TextBox RETURN_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_END).FindControl("TextBoxCode")); TextBox txtPROMOTE = (TextBox)(txtPROMOTE_MONTH.TextBoxCode_Object); TextBox txtACCT = (TextBox)(txtACCT_MONTH.TextBoxCode_Object); TextBox txtCOL_DAYS = (TextBox)(SLP_COL_DAYS.TextBox_Code); // // TextBox[] FieldIDs ={ txtPROMOTE_ID, txtPROMOTE_NAME, txtPROMOTE_MONTH.TextBoxCode_Object, txtACCT_MONTH.TextBoxCode_Object, ACCEPT_DATE_START, ACCEPT_DATE_END, ACCEPT_FIRST_DATE, RETURN_DATE_START, RETURN_DATE_END, txtCOL_DAYS }; string[] FieldNames ={ "檔期編號", "檔期名稱", "活動月份", "結帳月份", "進貨開始日", "進貨結束日", "首次出貨日", "退貨開始日", "退貨結束日", "收款天數" }; int i = 0; foreach (TextBox FieldName in FieldIDs) { if (FieldName.Text.Trim().Length == 0) { ErrorMsgLabel.Text = "必須輸入「" + FieldNames[i] + "」欄位"; return; } i++; } if (Request[SLP_COL_DAYS.TextBox_Name.UniqueID].ToString() == "查無資料") { ErrorMsgLabel.Text = "查無收款天數資料"; return; } if (SLP_NOTES.Text != "" && Request[SLP_NOTES.TextBox_Name.UniqueID].ToString() == "查無資料") { ErrorMsgLabel.Text = "查無檔期備註資料"; return; } //簡化至check_date ////進貨開始日須小於進貨結束日 //if ((SLP_ACCEPT_DATE_START.Text != "") || (SLP_ACCEPT_DATE_END.Text != "")) //{ // if (DateTime.Parse(SLP_ACCEPT_DATE_START.Text) >= DateTime.Parse(SLP_ACCEPT_DATE_END.Text)) // { // ErrorMsgLabel.Text = "進貨開始日須小於進貨結束日 !!"; // return; // } //} //日期條件檢查 if (!check_date()) { return; } DataSet ds1 = (DataSet)Session["STM272_" + PageTimeStamp.Value]; DataTable dtSTORE = ds1.Tables[0].DefaultView.ToTable(true, "STORE"); foreach (DataRow dr in dtSTORE.Rows) { DataRow[] drNoItem = (DataRow[])ds1.Tables[0].Select("STORE='" + dr["STORE"].ToString() + "' AND (ITEM='NOITEM' OR ITEM IS NULL)"); if (drNoItem.Length > 0) { ErrorMsgLabel.Text = "尚有門市未新增商品資料 !!"; return; } if (!(STM.CheckDcDate(dr["STORE"].ToString(), ACCEPT_FIRST_DATE.Text))) { ErrorMsgLabel.Text = "檔期首次進貨日不在門市" + dr["STORE"].ToString()+"適用日期區間中!!"; return; } } if (this.SLP_PRICE_SUBSIDY_PERCENT.Text.Length > 0) { if (Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) < 0) { ErrorMsgLabel.Text = "[門市補貼%]欄位請輸入100>門市補貼>0值<br/>"; return; } } if (this.SLP_COST_SUBSIDY_PERCENT.Text.Length > 0) { if (Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) < 0) { ErrorMsgLabel.Text = "[出版社補貼%]欄位請輸入100>出版社補貼>0值<br/>"; return; } } STMModel.VDS_STM37_BCO bco37 = new STMModel.VDS_STM37_BCO(ConnectionDB); string ProID = txtPROMOTE_ID.Text; int N_CNT_M; int N_CNT_N; DataTable dt_s = bco37.QueryPromoteS(ProID, out N_CNT_M, out N_CNT_N); if (N_CNT_M > 0) { this.ErrorMsgLabel.Text = "與特殊書展編號重複"; return; } //儲存作業 string v_ID = ""; #region try { #region 取得畫面元件的值 DateTime processtime = DateTime.Now; #endregion #region 檔期活動 ParameterList.Clear(); ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_NAME.Text, "string", false)); //V_PROMOTE_NAME ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_MONTH.Text, "string", false)); //V_PROMOTE_MONTH ParameterList.Add(GetValueSetParameter(this.txtACCT_MONTH.Text, "string", false)); //V_ACCT_MONTH ParameterList.Add(GetValueSetParameter(this.SLP_COL_DAYS.Text, "string", false)); //V_COL_DAYS ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_START.Text, "date", false)); //D_ACCEPT_DATE_START ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_END.Text, "date", false)); //D_ACCEPT_DATE_END ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_FIRST_DATE.Text, "date", false)); //D_ACCPET_FIRST_DATE ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_START.Text, "date", false)); //D_RETURN_DATE_START ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_END.Text, "date", false)); //D_RETURN_DATE_END ParameterList.Add(GetValueSetParameter(this.ddlPROMOTE_TYPE.SelectedValue.ToString(), "int", false)); //N_PROMOTE_TYPE ParameterList.Add(GetValueSetParameter(this.ddlDISCOUNT_TYPE.SelectedValue.ToString(), "string", false)); //V_DISCOUNT_TYPE ParameterList.Add(GetValueSetParameter(this.SLP_NOTES.Text, "string", false)); //N_NOTES ParameterList.Add(GetValueSetParameter(this.SLP_PRICE_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_PRICE_SUBSIDY_PERCENT ParameterList.Add(GetValueSetParameter(this.SLP_COST_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_COST_SUBSIDY_PERCENT ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false)); //V_AC_UID if (this.txtCONFIRM_CODE.Text == "已審核") ParameterList.Add(1); //N_CONFIRM_CODE else ParameterList.Add(0); //N_CONFIRM_CODE ParameterList.Add(64); //N_DISCOUNT_KIND固定 ParameterList.Add(processtime); ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false)); ParameterList.Add(processtime); ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false)); ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_ID.Text, "string", false)); #endregion #region 商品 DataSet ds = (DataSet)Session["STM272_" + PageTimeStamp.Value]; #endregion STMModel.MaintainPromoteExhibition BCO = new STMModel.MaintainPromoteExhibition(ConnectionDB); v_ID = BCO.CreateStoreBase(ParameterList, null, ds.Tables[0]); if ((v_ID == "") || (v_ID == null)) { throw new Exception("新增0筆資料!"); } else { QueryData(v_ID); txtPROMOTE_ID.ReadOnly = true; txtPROMOTE_ID.CssClass = "readtxtbox"; btnSave.Visible = false; //確定新增 btnAddCancle.Visible = false; //取消(回查詢頁) btnEdt.Visible = CanUpdate; //確定更新 btnUpdateCancel.Visible = true; //取消 btnAdd.Visible = CanUpdate; //新增門市 btnAddItem.Visible = CanUpdate; //新增商品 btnUpdateItem.Visible = false; GridView1.Columns[4].Visible = CanDelete; //商品 GRID "刪除"欄位 GridView2.Columns[8].Visible = CanDelete; //門市 GRID "刪除"欄位 GMToolbar1.ButtonEnableControl(WUI_GMToolbarV.ButtonType.Save, true, string.Empty, this.btnEdt, WUI_GMToolbarV.ClickAction.ButtonClick); ScriptManager.RegisterStartupScript(UpdatePanel11, this.GetType(), "ClientScript", "alert('新增完成');", true); } } catch (Exception ex) { ErrorMsgLabel.Text = ex.Message.Split(Environment.NewLine.Replace(Environment.NewLine, "~").ToCharArray())[0]; //直接取第一個 } #endregion }