using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using GThinking.N_MODEL.Page; using GThinking.N_MISPRO.Data; using GThinking.N_MISPRO; using GThinking.N_CONTROL; using GThinking.N_MISPRO.Utility; namespace GThinking.N_XLXSBJ { public partial class TZYZBJCInfo : SingleCardBase { TZYZBJ_YZZC entity = new TZYZBJ_YZZC(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860072; this.UMName = "按产品目录&主芯截面范围&产品特性调报价"; this.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 450; this.PageWidth = 500; SetTJYZLable(); if (!this.IsPostBack) { InitControls(); } base.InitPage(); } #region 模板事件继承 protected override void ReportDataSetAdd() { TDatabase db = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(db); sql.Add("select XLXSTZYZ_YZID, XLXSTZYZ_YZMC from XLXSTZYZ where XLXSTZYZ_MXBH='BJD' and XLXSTZYZ_TJYS='C' order by XLXSTZYZ_XSXH,XLXSTZYZ_YZID "); DataSet ds = db.OpenDataSet(sql); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sYZID = "TZYZ_" + ds.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(); string sYZMC = ds.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim(); AddUserReportField("XLXSBJDYZZC", sYZID, sYZMC, "N"); } base.ReportDataSetAdd(); } protected override void ReportRecordSetAdd() { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLXSTZYZ_YZID, XLXSTZYZ_YZMC "); SQL.Add(" from XLXSTZYZ"); SQL.Add(" where XLXSTZYZ_MXBH = 'BJD' and XLXSTZYZ_TJYS='C' order by XLXSTZYZ_XSXH,XLXSTZYZ_YZID "); DataSet ds = dberp.OpenDataSet(SQL); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { sSQL.Add(string.Format(",sum(decode(XLXSBJDYZZC_YZID, '{0}', XLXSBJDYZZC_CPMLYZZ, 0)) as CPMLTZYZ_{0}", ds.Tables[0].Rows[i][0].ToString().Trim())); sSQL.Add(string.Format(",sum(decode(XLXSBJDYZZC_YZID, '{0}', XLXSBJDYZZC_RDTYZZ, 0)) as RDTTZYZ_{0}", ds.Tables[0].Rows[i][0].ToString().Trim())); sSQL.Add(string.Format(",sum(decode(XLXSBJDYZZC_YZID, '{0}', XLXSBJDYZZC_PBYZZ, 0)) as PBTZYZ_{0}", ds.Tables[0].Rows[i][0].ToString().Trim())); sSQL.Add(string.Format(",sum(decode(XLXSBJDYZZC_YZID, '{0}', XLXSBJDYZZC_NHYZZ, 0)) as NHTZYZ_{0}", ds.Tables[0].Rows[i][0].ToString().Trim())); } sSQL.Text = "select 1" + sSQL.Text + " from XLXSBJDYZZC where XLXSBJDYZZC_JGBID='" + txtJGBID.Value.Trim() + "' and XLXSBJDYZZC_BJDID = '" + XLBJDUtils.FetEmptyStr(txtBJDID.Value.Trim()) + "' and XLXSBJDYZZC_CPMLID = '" + XLBJDUtils.FetEmptyStr(cbxCPML.SelectedValue.Trim()) + "' and XLXSBJDYZZC_ZXJMSX= " + (txtZXJMSX.Value.ToString().Trim().Equals("") ? "0" : txtZXJMSX.Value.ToString().Trim()) + " and XLXSBJDYZZC_ZXJMXX= " + (txtZXJMXX.Value.ToString().Trim().Equals("") ? "0" : txtZXJMXX.Value.ToString().Trim()) + ""; AddUserReportSQL("XLXSBJDYZZC", sSQL); base.ReportRecordSetAdd(); } protected override void SetControlState() { base.SetControlState(); txtWHR.Enabled = false; datWHSJ.Enabled = false; if (!txtBJDID.Value.Trim().Equals("")) { Master.EnableInsertBtn = false; Master.EnableCopyBtn = false; Master.EnableDeleteBtn = false; cbxCPML.Enabled = false; txtZXJMSX.Enabled = false; txtZXJMXX.Enabled = false; } # region 给调价因子控件设只隐藏显示 for (int i = 1; i <= 20; i++) { gtLabel lblTJYZ = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "TJYZ" + i.ToString().Trim()); gtLabel lblCPML = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "CPML" + i.ToString().Trim()); gtLabel lblRDT = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "RDT" + i.ToString().Trim()); gtLabel lblPB = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "PB" + i.ToString().Trim()); gtLabel lblNH = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "NH" + i.ToString().Trim()); gtNumTextBox txtCPML = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "CPML" + i.ToString().Trim()); gtNumTextBox txtRDT = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "RDT" + i.ToString().Trim()); gtNumTextBox txtPB = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "PB" + i.ToString().Trim()); gtNumTextBox txtNH = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "NH" + i.ToString().Trim()); lblTJYZ.Style["display"] = "none"; lblCPML.Style["display"] = "none"; lblRDT.Style["display"] = "none"; lblPB.Style["display"] = "none"; lblNH.Style["display"] = "none"; txtCPML.Style["display"] = "none"; txtRDT.Style["display"] = "none"; txtPB.Style["display"] = "none"; txtNH.Style["display"] = "none"; } string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0') + "|"; gtLabel lblTJYZ = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "TJYZ" + j.ToString().Trim()); gtLabel lblCPML = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "CPML" + j.ToString().Trim()); gtLabel lblRDT = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "RDT" + j.ToString().Trim()); gtLabel lblPB = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "PB" + j.ToString().Trim()); gtLabel lblNH = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "NH" + j.ToString().Trim()); gtNumTextBox txtCPML = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "CPML" + j.ToString().Trim()); gtNumTextBox txtRDT = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "RDT" + j.ToString().Trim()); gtNumTextBox txtPB = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "PB" + j.ToString().Trim()); gtNumTextBox txtNH = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "NH" + j.ToString().Trim()); if (sTJYZList[i].StartsWith(sTZYZID)) { lblTJYZ.Style["display"] = "block"; lblCPML.Style["display"] = "block"; lblRDT.Style["display"] = "block"; lblPB.Style["display"] = "block"; lblNH.Style["display"] = "block"; txtCPML.Style["display"] = "block"; txtRDT.Style["display"] = "block"; txtPB.Style["display"] = "block"; txtNH.Style["display"] = "block"; } } } #endregion } protected override void LoadRecord() { if (!IsPostBack) { entity.Param.Add("XLXSBJDYZZC_JGBID", PageParam.GetRTrimString("XLXSBJDYZZC_JGBID")); entity.Param.Add("XLXSBJDYZZC_BJDID", XLBJDUtils.FetEmptyStr(PageParam.GetRTrimString("XLXSBJDYZZC_BJDID"))); entity.Param.Add("XLXSBJDYZZC_CPMLID", PageParam.GetRTrimString("XLXSBJDYZZC_CPMLID")); entity.Param.Add("XLXSBJDYZZC_ZXJMSX", PageParam.GetRTrimString("XLXSBJDYZZC_ZXJMSX").Equals("") ? "0" : PageParam.GetRTrimString("XLXSBJDYZZC_ZXJMSX")); entity.Param.Add("XLXSBJDYZZC_ZXJMXX", PageParam.GetRTrimString("XLXSBJDYZZC_ZXJMXX").Equals("") ? "0" : PageParam.GetRTrimString("XLXSBJDYZZC_ZXJMXX")); entity.Param.Add("XLXSBJDYZZC_YZID", PageParam.GetRTrimString("XLXSBJDYZZC_YZID")); } else { entity.Param.Add("XLXSBJDYZZC_JGBID", txtJGBID.Value.Trim()); entity.Param.Add("XLXSBJDYZZC_BJDID", XLBJDUtils.FetEmptyStr(txtBJDID.Value.Trim())); entity.Param.Add("XLXSBJDYZZC_CPMLID", txtOldCPMLID.Value.Trim()); entity.Param.Add("XLXSBJDYZZC_ZXJMSX", txtOldZXJMSX.Value.Trim().Equals("") ? "0" : txtOldZXJMSX.Value.Trim()); entity.Param.Add("XLXSBJDYZZC_ZXJMXX", txtOldZXJMXX.Value.Trim().Equals("") ? "0" : txtOldZXJMXX.Value.Trim()); entity.Param.Add("XLXSBJDYZZC_YZID", txtYZID.Value.Trim()); } base.LoadRecord(); # region 给调价因子控件赋值 TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add(string.Format(" select XLXSBJDYZZ{0}_YZID,XLXSBJDYZZ{0}_CPMLYZZ,XLXSBJDYZZ{0}_RDTYZZ,XLXSBJDYZZ{0}_PBYZZ, XLXSBJDYZZ{0}_NHYZZ from XLXSBJDYZZ{0} ", "C")); sql.Add(string.Format(" where XLXSBJDYZZ{0}_JGBID=:pJGBID and XLXSBJDYZZ{0}_BJDID=:pBJDID ", "C")); sql.Add(string.Format(" and XLXSBJDYZZ{0}_CPMLID=:pCPMLID ", "C")); sql.Add(string.Format(" and XLXSBJDYZZ{0}_ZXJMXX=:pZXJMXX and XLXSBJDYZZ{0}_ZXJMSX=:pZXJMSX ", "C")); sql.Add(string.Format(" order by XLXSBJDYZZ{0}_YZID", "C")); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pBJDID").Value = XLBJDUtils.FetEmptyStr(txtBJDID.Value.Trim()); sql.ParamByName("pCPMLID").Value = cbxCPML.SelectedValue.Trim(); sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; DataSet ds = dberp.OpenDataSet(sql); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sYZID = ds.Tables[0].Rows[i][0].ToString().Trim(); double dCPMLYZZ = CMISproConvert.StrToFloat(ds.Tables[0].Rows[i][1].ToString().Trim()); double dRDTYZZ = CMISproConvert.StrToFloat(ds.Tables[0].Rows[i][2].ToString().Trim()); double dPBYZZ = CMISproConvert.StrToFloat(ds.Tables[0].Rows[i][3].ToString().Trim()); double dNHYZZ = CMISproConvert.StrToFloat(ds.Tables[0].Rows[i][4].ToString().Trim()); if (PageParam.GetRTrimString("TJYZList").Contains(sYZID + "|")) { for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0'); gtNumTextBox txtCPML = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "CPML" + j.ToString().Trim()); gtNumTextBox txtRDT = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "RDT" + j.ToString().Trim()); gtNumTextBox txtPB = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "PB" + j.ToString().Trim()); gtNumTextBox txtNH = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "NH" + j.ToString().Trim()); if (sYZID.Equals(sTZYZID)) { txtCPML.Value = dCPMLYZZ; txtRDT.Value = dRDTYZZ; txtPB.Value = dPBYZZ; txtNH.Value = dNHYZZ; } } } } #endregion } protected override void OnNewRecorder() { base.OnNewRecorder(); txtJGBID.Value = PageParam.GetRTrimString("XLXSBJDYZZC_JGBID"); txtBJDID.Value = PageParam.GetRTrimString("XLXSBJDYZZC_BJDID"); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now); txtUpdateAll.Value = ""; } protected override void OnCopyRecorder() { base.OnCopyRecorder(); txtJGBID.Value = PageParam.GetRTrimString("XLXSBJDYZZC_JGBID"); txtBJDID.Value = PageParam.GetRTrimString("XLXSBJDYZZC_BJDID"); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now); txtUpdateAll.Value = ""; } protected override bool DataLogicValid() { if (!base.DataLogicValid()) return false; if (txtZXJMXX.Value < 0) { ShowMessage("主芯截面下限--不允许为负数!"); return false; } if (txtZXJMSX.Value < 0) { ShowMessage("主芯截面上限--不允许为负数!"); return false; } if (txtZXJMSX.Value != 0) { if (txtZXJMXX.Value > txtZXJMSX.Value) { ShowMessage("主芯截面下限不允许超过主芯截面上限!"); return false; } } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy) { sql.Clear(); sql.Add("select XLXSBJDYZZC_JGBID, XLXSBJDYZZC_BJDID, XLXSBJDYZZC_CPMLID, XLXSBJDYZZC_ZXJMXX,XLXSBJDYZZC_ZXJMSX, "); sql.Add("case when ISNULL(XLXSCPML_CPMLID,' ') = ' ' then ' ' else RTRIM(XLXSCPML_CPMLID)|| '|' || RTRIM(XLXSCPML_CPMLMC) end as CPML "); sql.Add("from XLXSBJDYZZC "); sql.Add(" left join XLXSCPML on XLXSCPML_CPMLID = XLXSBJDYZZC_CPMLID "); sql.Add("where XLXSBJDYZZC_JGBID=:pJGBID and XLXSBJDYZZC_YZID=:pYZID "); sql.Add(" and XLXSBJDYZZC_BJDID=:pBJDID and XLXSBJDYZZC_CPMLID=:pCPML "); sql.Add(" and ((XLXSBJDYZZC_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { sql.Add(" and XLXSBJDYZZC_ZXJMXX<=:pZXJMSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtZXJMSX.Value != 0) { sql.Add(" XLXSBJDYZZC_ZXJMSX>0 and XLXSBJDYZZC_ZXJMSX>=:pZXJMXX and XLXSBJDYZZC_ZXJMSX<=:pZXJMSX "); } else { sql.Add(" (XLXSBJDYZZC_ZXJMSX>0 and XLXSBJDYZZC_ZXJMSX>=:pZXJMXX) or (XLXSBJDYZZC_ZXJMSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSBJDYZZC_ZXJMXX<=:pZXJMXX and (XLXSBJDYZZC_ZXJMSX=0 or XLXSBJDYZZC_ZXJMSX>=:pZXJMSX))"); sql.Add(" ) "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = sTJYZList[i].Split('|')[0]; sql.ParamByName("pBJDID").Value = XLBJDUtils.FetEmptyStr(txtBJDID.Value.Trim()); sql.ParamByName("pCPML").Value = cbxCPML.SelectedValue.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; if (txtZXJMSX.Value != 0) { sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sXZXJMQJ = ""; string sResult = "(产品目录:" + ds.Tables[0].Rows[0]["CPML"].ToString().Trim() + ")"; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMSX"].ToString()) != 0) sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMSX"].ToString().Trim(); else sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMXX"].ToString().Trim() + "~" + "--"; if (txtZXJMSX.Value != 0) sXZXJMQJ = txtZXJMXX.Value.ToString().Trim() + "~" + txtZXJMSX.Value.ToString().Trim(); else sXZXJMQJ = txtZXJMXX.Value.ToString().Trim() + "~" + "--"; ShowMessage(string.Format("因子{1}与已有主芯截面区间【{0}】{2}的记录有交集,不允许保存!", sZXJMQJ, sTJYZList[i].Replace("(X)", ""), sResult)); return false; } } else { sql.Clear(); sql.Add("select XLXSBJDYZZC_JGBID, XLXSBJDYZZC_BJDID, XLXSBJDYZZC_CPMLID, XLXSBJDYZZC_ZXJMXX,XLXSBJDYZZC_ZXJMSX, "); sql.Add("case when ISNULL(XLXSCPML_CPMLID,' ') = ' ' then ' ' else RTRIM(XLXSCPML_CPMLID)|| '|' || RTRIM(XLXSCPML_CPMLMC) end as CPML "); sql.Add("from XLXSBJDYZZC "); sql.Add(" left join XLXSCPML on XLXSCPML_CPMLID = XLXSBJDYZZC_CPMLID "); sql.Add("where XLXSBJDYZZC_JGBID=:pJGBID and XLXSBJDYZZC_BJDID=:pBJDID and XLXSBJDYZZC_YZID=:pYZID "); sql.Add(" and (XLXSBJDYZZC_ZXJMXX<>:pOLDZXJMXX or XLXSBJDYZZC_ZXJMSX<>:pOLDZXJMSX "); sql.Add(" or XLXSBJDYZZC_CPMLID<>:pOLDCPML )"); sql.Add(" and ((XLXSBJDYZZC_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { sql.Add(" and XLXSBJDYZZC_ZXJMXX<=:pZXJMSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtZXJMSX.Value != 0) { sql.Add(" XLXSBJDYZZC_ZXJMSX>0 and XLXSBJDYZZC_ZXJMSX>=:pZXJMXX and XLXSBJDYZZC_ZXJMSX<=:pZXJMSX "); } else { sql.Add(" (XLXSBJDYZZC_ZXJMSX>0 and XLXSBJDYZZC_ZXJMSX>=:pZXJMXX) or (XLXSBJDYZZC_ZXJMSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSBJDYZZC_ZXJMXX<=:pZXJMXX and (XLXSBJDYZZC_ZXJMSX=0 or XLXSBJDYZZC_ZXJMSX>=:pZXJMSX))"); sql.Add(" ) "); sql.Add(" and ( XLXSBJDYZZC_CPMLID=:pCPML )"); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = sTJYZList[i].Split('|')[0]; sql.ParamByName("pBJDID").Value = XLBJDUtils.FetEmptyStr(txtBJDID.Value.Trim()); sql.ParamByName("pCPML").Value = cbxCPML.SelectedValue.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; sql.ParamByName("pOLDCPML").Value = txtOldCPMLID.Value.Trim(); sql.ParamByName("pOLDZXJMXX").Value = txtOldZXJMXX.Value; sql.ParamByName("pOLDZXJMSX").Value = txtOldZXJMSX.Value; if (txtZXJMSX.Value != 0) { sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sResult = "(产品目录:" + ds.Tables[0].Rows[0]["CPML"].ToString().Trim() + ")"; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMSX"].ToString()) != 0) sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMSX"].ToString().Trim(); else sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZC_ZXJMXX"].ToString().Trim() + "~" + "--"; ShowMessage(string.Format("因子{1}与已有主芯截面区间【{0}】{2}的记录有交集,不允许保存!", sZXJMQJ, sTJYZList[i].Replace("(X)", ""), sResult)); return false; } } } if (!txtBJDID.Value.Trim().Equals("")) { txtUpdateAll.Value = ""; Confirm.Register("IsQD", "是否要按当前记录的特性加点更新报价单下其他产品目录的记录?"); Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No; if (Confirm.GetValue("IsQD").Trim().Equals("")) { Confirm.Ask("IsQD"); return false; } else if (Confirm.GetValue("IsQD").Trim().Equals("N")) { //表示进行了提示并选择了取消,直接返回或其他处理 Confirm.Clear(); txtUpdateAll.Value = "N"; } else if (Confirm.GetValue("IsQD").Trim().Equals("Y")) { //表示进行了提示并选择了确认 Confirm.Clear(); txtUpdateAll.Value = "Y"; } } return true; } protected override bool Master_BeforeSaveAction(object sender, EventArgs e) { if (!base.Master_BeforeSaveAction(sender, e)) return false; txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now); return true; } protected override bool Master_AfterSaveAction(object sender, EventArgs e) { txtOldCPMLID.Value = cbxCPML.SelectedValue.Trim(); txtOldZXJMSX.Value = txtZXJMSX.Value.ToString().Trim(); txtOldZXJMXX.Value = txtZXJMXX.Value.ToString().Trim(); txtYZID.Value = PageParam.GetRTrimString("FirstYZID"); string sJGBID = txtJGBID.Value.Trim(); string sBJDID = XLBJDUtils.FetEmptyStr(txtBJDID.Value.Trim()); string sCPMLID = cbxCPML.SelectedValue.Trim(); # region 将调价因子控件值更新至数据库中 TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); DateTime tNow = DateTime.Now; dberp.ExecSQL(string.Format("delete from XLXSBJDYZZ{0} where XLXSBJDYZZ{0}_JGBID='{1}' and XLXSBJDYZZ{0}_BJDID='{2}' and XLXSBJDYZZ{0}_CPMLID='{3}' " + " and XLXSBJDYZZ{0}_ZXJMSX={4} and XLXSBJDYZZ{0}_ZXJMXX={5} ", "C", sJGBID, sBJDID, sCPMLID, txtZXJMSX.Value, txtZXJMXX.Value)); for (int i = 0; i < sTJYZList.Length; i++) { sql.Clear(); sql.Add(string.Format("insert into XLXSBJDYZZ{0}(XLXSBJDYZZ{0}_JGBID, XLXSBJDYZZ{0}_BJDID, XLXSBJDYZZ{0}_CPMLID,XLXSBJDYZZ{0}_ZXJMSX,XLXSBJDYZZ{0}_ZXJMXX,XLXSBJDYZZ{0}_YZID, ", "C")); sql.Add(string.Format(" XLXSBJDYZZ{0}_CPMLYZZ, XLXSBJDYZZ{0}_RDTYZZ,XLXSBJDYZZ{0}_PBYZZ,XLXSBJDYZZ{0}_NHYZZ,XLXSBJDYZZ{0}_BZ, XLXSBJDYZZ{0}_WHR, XLXSBJDYZZ{0}_WHRID, XLXSBJDYZZ{0}_WHSJ)", "C")); sql.Add(string.Format(" values(:pJGBID,:pBJDID, :pCPMLID,:pZXJMSX,:pZXJMXX,:pYZID,:pCPMLYZZ,:pRDTYZZ,:pPBYZZ,:pNHYZZ,:pBZ,:pWHR,:pWHRID,:pWHSJ)")); sql.ParamByName("pJGBID").Value = sJGBID; sql.ParamByName("pBJDID").Value = sBJDID; sql.ParamByName("pCPMLID").Value = sCPMLID; sql.ParamByName("pBZ").Value = txtBZ.Text.Trim(); sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value.ToString().Trim().Equals("") ? "0" : txtZXJMSX.Value.ToString().Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value.ToString().Trim().Equals("") ? "0" : txtZXJMXX.Value.ToString().Trim(); sql.ParamByName("pWHR").Value = tSession.UserName; sql.ParamByName("pWHRID").Value = tSession.UserId; sql.ParamByName("pWHSJ").Value = tNow; for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0') + "|"; gtNumTextBox txtCPML = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "CPML" + j.ToString().Trim()); gtNumTextBox txtRDT = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "RDT" + j.ToString().Trim()); gtNumTextBox txtPB = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "PB" + j.ToString().Trim()); gtNumTextBox txtNH = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "NH" + j.ToString().Trim()); if (sTJYZList[i].StartsWith(sTZYZID)) { sql.ParamByName("pYZID").Value = sTZYZID.TrimEnd('|'); sql.ParamByName("pCPMLYZZ").Value = txtCPML.Value; sql.ParamByName("pRDTYZZ").Value = txtRDT.Value; sql.ParamByName("pPBYZZ").Value = txtPB.Value; sql.ParamByName("pNHYZZ").Value = txtNH.Value; dberp.ExecSQL(sql); } } } if (txtUpdateAll.Value.Equals("Y")) { for (int i = 0; i < sTJYZList.Length; i++) { sql.Clear(); sql.Add(string.Format(" update XLXSBJDYZZ{0} set ", "C")); sql.Add(string.Format(" XLXSBJDYZZ{0}_RDTYZZ =:pRDTYZZ,", "C")); sql.Add(string.Format(" XLXSBJDYZZ{0}_PBYZZ = :pPBYZZ ,XLXSBJDYZZ{0}_NHYZZ = :pNHYZZ,", "C")); sql.Add(string.Format(" XLXSBJDYZZ{0}_BZ=:pBZ, XLXSBJDYZZ{0}_WHR=:pWHR, XLXSBJDYZZ{0}_WHRID=:pWHRID, XLXSBJDYZZ{0}_WHSJ =:pWHSJ ", "C")); sql.Add(string.Format(" where 1=1 ", "C")); sql.Add(string.Format(" and XLXSBJDYZZ{0}_JGBID = :pJGBID and XLXSBJDYZZ{0}_BJDID = :pBJDID and XLXSBJDYZZ{0}_YZID = :pYZID ", "C")); sql.ParamByName("pJGBID").Value = sJGBID; sql.ParamByName("pBJDID").Value = sBJDID; sql.ParamByName("pBZ").Value = txtBZ.Text.Trim(); sql.ParamByName("pWHR").Value = tSession.UserName; sql.ParamByName("pWHRID").Value = tSession.UserId; sql.ParamByName("pWHSJ").Value = tNow; for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0') + "|"; gtNumTextBox txtRDT = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "RDT" + j.ToString().Trim()); gtNumTextBox txtPB = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "PB" + j.ToString().Trim()); gtNumTextBox txtNH = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "NH" + j.ToString().Trim()); if (sTJYZList[i].StartsWith(sTZYZID)) { sql.ParamByName("pYZID").Value = sTZYZID.TrimEnd('|'); sql.ParamByName("pRDTYZZ").Value = txtRDT.Value; sql.ParamByName("pPBYZZ").Value = txtPB.Value; sql.ParamByName("pNHYZZ").Value = txtNH.Value; dberp.ExecSQL(sql); } } } } txtUpdateAll.Value = ""; #endregion return base.Master_AfterSaveAction(sender, e); } protected override void SetComboxItems() { TComboBox.SetComboBox("DBERP", cbxCPML, "select XLXSCPML_CPMLID,XLXSCPML_CPMLMC from XLXSCPML where isnull(XLXSCPML_TYBZ,'N')<>'Y' order by XLXSCPML_CPMLID ", false); base.SetComboxItems(); } #endregion #region 自定义函数 private void InitControls() { txtYZID.Value = PageParam.GetRTrimString("FirstYZID"); } private void SetTJYZLable() { string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0') + "|"; gtNumTextBox txtCPML = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "CPML" + j.ToString().Trim()); gtNumTextBox txtRDT = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "RDT" + j.ToString().Trim()); gtNumTextBox txtPB = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "PB" + j.ToString().Trim()); gtNumTextBox txtNH = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "NH" + j.ToString().Trim()); gtLabel lblTJYZ = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "TJYZ" + j.ToString().Trim()); if (sTJYZList[i].StartsWith(sTZYZID)) { string s = sTJYZList[i].Replace(sTZYZID, "").Replace("(X)", "") + ":"; lblTJYZ.Text = s; if (sTJYZList[i].EndsWith("(%)") || sTJYZList[i].EndsWith("(元)")) { txtCPML.DecimalPlaces = 2; txtRDT.DecimalPlaces = 2; txtPB.DecimalPlaces = 2; txtNH.DecimalPlaces = 2; } else if (sTJYZList[i].EndsWith("(X)")) { txtCPML.DecimalPlaces = 4; txtRDT.DecimalPlaces = 4; txtPB.DecimalPlaces = 4; txtNH.DecimalPlaces = 4; } } } } } #endregion } }