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_MISPRO; using GThinking.N_MISPRO.Data; using GThinking.N_MODEL.Page; using GThinking.N_WORKFLOW; using GThinking.N_PUBLIC; using GThinking.N_MISPRO.Utility; using System.Text.RegularExpressions; using GThinking.N_MISPRO.TableCache; namespace GThinking.N_XLJC { public partial class XLXSBJCLDHInfo : SingleCardBase { XLXSBJCLDH entity = new XLXSBJCLDH(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 101421009; this.UMName = "线缆销售报价材料代号"; base.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 400; this.PageWidth = 500; Master.EnableAttachBtn = false; Master.EnableCancelBtn = false; Master.EnableCopyBtn = false; Master.EnableDeleteBtn = false; Master.EnableEditBtn = false; Master.EnableInsertBtn = false; Master.EnablePrintBtn = false; Master.EnableRefreshBtn = false; Master.EnableSaveBtn = false; base.InitPage(); if (!IsPostBack) { InitControls(); } } #region 模板继承事件 #endregion #region 自定义事件 private void InitControls() { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); cbxBJCL.ClearItems(); SQL.Clear(); SQL.Add(" select XLXSBJCL_BJCLID, "); SQL.Add(" case isnull(XLXSBJCL_BJCLID,' ') when ' ' then ' ' else case isnull(XLXSBJCL_TYBZ,'N') when 'Y' then rtrim(XLXSBJCL_BJCLID)||'|'||rtrim(XLXSBJCL_BJCLMC) || '(停用)' else rtrim(XLXSBJCL_BJCLID)||'|'||XLXSBJCL_BJCLMC end end as BJCLMC"); SQL.Add(" from XLXSBJCL"); SQL.Add(" where isnull(XLXSBJCL_BJCLMC,' ')<>' '"); SQL.Add(" order by isnull(XLXSBJCL_TYBZ,'N'),XLXSBJCL_BJCLID"); DataSet ds = dberp.OpenDataSet(SQL); cbxBJCL.Items.Add(new ListItem(" ", " ")); cbxBJCL.Items.Add(new ListItem("新增报价材料", "新增报价材料")); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { cbxBJCL.Items.Add(new ListItem((ds.Tables[0].Rows[i][1].ToString().Trim()), (ds.Tables[0].Rows[i][0].ToString().Trim()))); } if (cbxBJCL.ItemsCount >= 2) { cbxBJCL.SelectedValue = PageParam.GetRTrimString("BJCLID"); } cbxBJCL.ShowValue = false; } #endregion #region 控件事件 protected void txtBJCLMC_OnTextChanged(object sender, EventArgs e) { string sBJCLID = cbxBJCL.SelectedValue.Trim(); int flag = 0; if (!txtBJCLMC.Text.Trim().Equals("")) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); cbxBJCL.ClearItems(); SQL.Clear(); SQL.Add(" select XLXSBJCL_BJCLID,case isnull(XLXSBJCL_BJCLID,' ') when ' ' then ' ' else rtrim(XLXSBJCL_BJCLID)||'|'||XLXSBJCL_BJCLMC end as BJCLMC from XLXSBJCL "); SQL.Add(" where XLXSBJCL_BJCLMC like :pBJCLMC"); SQL.Add(" order by XLXSBJCL_BJCLID"); SQL.ParamByName("pBJCLMC").Value = "%" + txtBJCLMC.Text.Trim() + "%"; DataSet ds = dberp.OpenDataSet(SQL); cbxBJCL.Items.Add(new ListItem(" ", " ")); cbxBJCL.Items.Add(new ListItem("新增报价材料", "新增报价材料")); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { cbxBJCL.Items.Add(new ListItem((ds.Tables[0].Rows[i][1].ToString().Trim()), (ds.Tables[0].Rows[i][0].ToString().Trim()))); if (ds.Tables[0].Rows[i][0].ToString().Trim().Equals(PageParam.GetRTrimString("BJCLID"))) { flag = 1; } } if (1 == flag) { cbxBJCL.SelectedValue = PageParam.GetRTrimString("BJCLID"); } else if (cbxBJCL.ItemsCount >= 1) { cbxBJCL.SelectedIndex = 0; } cbxBJCL.ShowValue = false; } else { InitControls(); } } protected void btnQR_Click(object sender, EventArgs e) { if (cbxBJCL.SelectedValue.Trim().Equals("新增报价材料")) { TPageParams pageParams = new TPageParams(); pageParams.CallAction = TPageCallAction.pcaInsert; pageParams.UrlPath = "../components/N_XLBJCL/XLXSBJCLInfo.aspx"; pageParams.AddString("CLMC", PageParam.GetRTrimString("XLCLMC")); pageParams.AddString("txtCLID", txtCLID.ClientID); OpenModuleDialog(102579002, pageParams, btnRefresh.ClientID.ToString()); return; } if (cbxBJCL.SelectedItem.Text.Trim().Contains("停用")) { ShowMessage("报价材料已停用!"); return; } string sXLCLZLID = PageParam.GetRTrimString("XLCLZLID").Equals("") ? " " : PageParam.GetRTrimString("XLCLZLID"); string sXLCLID = PageParam.GetRTrimString("XLCLID"); //选中的报价材料ID string sBJCLID = cbxBJCL.SelectedValue.Trim().Equals("") ? " " : cbxBJCL.SelectedValue.Trim(); string sGetBJCLID = PageParam.GetRTrimString("BJCLID").Equals("") ? " " : PageParam.GetRTrimString("BJCLID"); string sMSG = ""; if (!sBJCLID.Equals(sGetBJCLID)) { if (sBJCLID.Trim().Equals("")) { sMSG = "即将清空绑定的报价材料,是否继续?"; } else { sMSG = "即将根据选择的报价材料重新进行绑定,是否继续?"; } Confirm.Register("IsQQ", sMSG); Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No; if (Confirm.GetValue("IsQQ").Trim().Equals("")) { Confirm.Ask("IsQQ"); return; } else if (Confirm.GetValue("IsQQ").Trim().Equals("N")) { //表示进行了提示并选择了取消,直接返回或其他处理 Confirm.Clear(); return; } else if (Confirm.GetValue("IsQQ").Trim().Equals("Y")) { //表示进行了提示并选择了确认 Confirm.Clear(); } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); if (!sBJCLID.Trim().Equals("")) { SQL.Clear(); SQL.Add("select 1 from XLXSBJCLDH where XLXSBJCLDH_XLCLZLID = :pXLCLZLID and XLXSBJCLDH_XLCLID=:pXLCLID and XLXSBJCLDH_BJCLID=:pBJCLID"); SQL.ParamByName("pXLCLZLID").Value = sXLCLZLID; SQL.ParamByName("pXLCLID").Value = sXLCLID; SQL.ParamByName("pBJCLID").Value = sBJCLID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { //删除操作 try { dberp.BeginTrans(); SQL.Clear(); SQL.Add(" delete from XLXSBJCLDH where XLXSBJCLDH_XLCLZLID = :pXLCLZLID and XLXSBJCLDH_XLCLID=:pXLCLID and XLXSBJCLDH_BJCLID=:pBJCLID "); SQL.ParamByName("pXLCLZLID").Value = sXLCLZLID; SQL.ParamByName("pXLCLID").Value = sXLCLID; SQL.ParamByName("pBJCLID").Value = sGetBJCLID; dberp.ExecSQL(SQL); dberp.CommitTrans(); } catch (Exception ex) { ShowMessage("设置报价材料代号出现异常,请联系系统管理员!错误原因:" + ex); dberp.RollbackTrans(); } } else { //进行插入 if (sGetBJCLID.Trim().Equals("")) { try { dberp.BeginTrans(); SQL.Clear(); SQL.Add(" insert into XLXSBJCLDH(XLXSBJCLDH_XLCLZLID,XLXSBJCLDH_XLCLID,XLXSBJCLDH_BJCLID,XLXSBJCLDH_BZ,XLXSBJCLDH_WHR,XLXSBJCLDH_WHRID,XLXSBJCLDH_WHSJ) "); SQL.Add(" values(:XLXSBJCLDH_XLCLZLID, :XLXSBJCLDH_XLCLID, :XLXSBJCLDH_BJCLID, :XLXSBJCLDH_BZ, :XLXSBJCLDH_WHR, :XLXSBJCLDH_WHRID, :XLXSBJCLDH_WHSJ)"); SQL.ParamByName("XLXSBJCLDH_XLCLZLID").Value = sXLCLZLID; SQL.ParamByName("XLXSBJCLDH_XLCLID").Value = sXLCLID; SQL.ParamByName("XLXSBJCLDH_BJCLID").Value = sBJCLID; SQL.ParamByName("XLXSBJCLDH_BZ").Value = ""; SQL.ParamByName("XLXSBJCLDH_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJCLDH_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJCLDH_WHSJ").Value = DateTime.Now.ToString(); dberp.ExecSQL(SQL); dberp.CommitTrans(); } catch (Exception ex) { ShowMessage("设置报价材料代号出现异常,请联系系统管理员!错误原因:" + ex); dberp.RollbackTrans(); } } //已有,进行更新 else { try { dberp.BeginTrans(); SQL.Clear(); SQL.Add("update XLXSBJCLDH set XLXSBJCLDH_BJCLID= :pBJCL, "); SQL.Add(" XLXSBJCLDH_WHR= :pWHR, "); SQL.Add(" XLXSBJCLDH_WHRID= :pWHRID, "); SQL.Add(" XLXSBJCLDH_WHSJ= :pWHSJ "); SQL.Add(" where XLXSBJCLDH_XLCLZLID= :pXLCLZLID "); SQL.Add(" and XLXSBJCLDH_XLCLID= :pXLCLID "); SQL.Add(" and XLXSBJCLDH_BJCLID= :pBJCLID "); SQL.ParamByName("pBJCL").Value = sBJCLID; SQL.ParamByName("pXLCLZLID").Value = sXLCLZLID; SQL.ParamByName("pXLCLID").Value = sXLCLID; SQL.ParamByName("pBJCLID").Value = sGetBJCLID; SQL.ParamByName("pWHRID").Value = tSession.UserId; SQL.ParamByName("pWHR").Value = tSession.UserName; SQL.ParamByName("pWHSJ").Value = DateTime.Now.ToString(); dberp.ExecSQL(SQL); dberp.CommitTrans(); } catch (Exception ex) { ShowMessage("更新报价材料代号出现异常,请联系系统管理员!错误原因:" + ex); dberp.RollbackTrans(); } } } } else { //删除操作 try { dberp.BeginTrans(); SQL.Clear(); SQL.Add(" delete from XLXSBJCLDH where XLXSBJCLDH_XLCLZLID = :pXLCLZLID and XLXSBJCLDH_XLCLID=:pXLCLID and XLXSBJCLDH_BJCLID=:pBJCLID "); SQL.ParamByName("pXLCLZLID").Value = sXLCLZLID; SQL.ParamByName("pXLCLID").Value = sXLCLID; SQL.ParamByName("pBJCLID").Value = sGetBJCLID; dberp.ExecSQL(SQL); dberp.CommitTrans(); } catch (Exception ex) { ShowMessage("设置报价材料代号出现异常,请联系系统管理员!错误原因:" + ex); dberp.RollbackTrans(); } } } //使用脚本给父页面的隐藏控件赋值,调用父页面的控件事件 DialogOperationScript dos = new DialogOperationScript(this); dos.ClickOwnerButton(PageParam.GetRTrimString("RefreshCtrlID")); dos.CloseSelf(); dos.Execute(); } protected void btnQX_Click(object sender, EventArgs e) { CloseWindow(); } protected void btnRefresh_Click(object sender, EventArgs e) { string sCLID = txtCLID.Value.Trim(); if (!sCLID.Equals("")) { InitControls(); cbxBJCL.SelectedValue = sCLID; } FormAreaUpdate(); } #endregion } }