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.Utility; using GThinking.N_MISPRO; using GThinking.N_WORKFLOW; using System.Collections.Generic; using System.Text; using GThinking.N_MISPRO.TableCache; using GThinking.N_PUBLIC; using GThinking.N_CONTROL; namespace GThinking.N_XLXSBJ { public partial class XSYBJSQInfo : SingleCardBase { XSYBJSQ entity = new XSYBJSQ(); #region Page类继承事件 protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860061; this.UMName = "销售员报价申请"; this.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 500; this.PageWidth = 700; this.Master.EnableAttachBtn = true; if (!IsPostBack) { LoadUserandGroup(); LoadXMGroup(); } base.InitPage(); this.WorkFlowId = _curWorkFlow.GetWFID("XLXSBJ_BJD"); if (!IsPostBack) { string sYWSW = TWorkflow.Utils.WFGetYHSWID(this.WorkFlowId, "0030");//0030|反馈 string sWPID = _curWorkFlow.GetWPID(this.WorkFlowId, this.WorkFlowInst); if (Convert.ToString("," + sYWSW + ",").Contains("," + sWPID + ",") || sWPID.Equals("ZZZZ")) { btnBJFK.Visible = true; } else { btnBJFK.Visible = false; } } HiddenField HiddenGRPID = ((HiddenField)CurMaster.FindControl("txtDOCGRPID")); if (HiddenGRPID != null) txtDOCGRPID.Value = HiddenGRPID.Value; if (ControlState == TControlState.ctsInsert) { LoadFJXX(true, "A", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, true, txtBJDID.Text, false, ""); } else if (ControlState == TControlState.ctsCopy) { LoadFJXX(true, "C", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, true, txtBJDID.Text, false, ""); } else if (ControlState == TControlState.ctsEdit) { LoadFJXX(true, "E", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, true, txtBJDID.Text, false, ""); } else { LoadFJXX(true, "", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, false, txtBJDID.Text, false, ""); } } #endregion #region 模板继承事件 protected override void LoadRecord() { if (!this.IsPostBack) { if (!PageParam.ContainsKey("XLXSBJD_BJDID")) { entity.EntityTable.EntitySelSql = "SELECT XLXSBJD_BJDID,XLXSBJD_BJFLID, XLXSBJD_JGBID,XLXSBJD_CLHQJGBID, XLXSBJD_BJRQ,XLXSBJD_SYDWID, " + " XLXSBJD_XSBMID,XLXSBJD_KHID,XLXSBJD_KH,XLXSBJD_XMMC,XLXSBJD_FKSM,XLXSBJD_BZ,XLXSBJD_CZJSXY,XLXSBJD_TXY,XLXSBJD_XZQHID,XLXSBJYLZD_SQSJ,XLXSBJYLZD_WCSJ, " + " XLXSBJD_WFID, XLXSBJD_WPID, XLXSBJD_WFINST, XLXSBJD_WFAWAITER, XLXSBJD_WFHANDLER, XLXSBJD_ACTNAME," + " XLXSBJD_WHRID, XLXSBJD_WHR, XLXSBJD_WHSJ ,XLXSBJD_DOCGRPID ,XLXSBJD_FJS FROM XLXSBJD " + " left join (select min(XLXSBJYLZD_SQDH) as YLZDSQDH,XLXSBJYLZD_BJDID from XLXSBJYLZD where 1=1 group by XLXSBJYLZD_BJDID ) YLZDSQ " + " on XLXSBJYLZD_BJDID = XLXSBJD_BJDID " + " left join XLXSBJYLZD on XLXSBJYLZD_SQDH = YLZDSQDH " + " WHERE XLXSBJD_WFID = :XLXSBJD_WFID and XLXSBJD_WFINST = :XLXSBJD_WFINST "; this.CurEntity.Param.Add("XLXSBJD_WFID", PageParam.GetRTrimString("WFID")); this.CurEntity.Param.Add("XLXSBJD_WFINST", PageParam.GetRTrimString("WFINST")); } else { entity.Param.Add("XLXSBJD_BJDID", PageParam.GetRTrimString("XLXSBJD_BJDID")); } } else { entity.Param.Add("XLXSBJD_BJDID", txtBJDID.Text.Trim()); } base.LoadRecord(); txtWFState.Text = _curWorkFlow.GetWPName(this.WorkFlowId.ToString().Trim(), txtWPID.Value); GetXSYXX(cbxTXY.SelectedValue.Trim()); //处理所在地 TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XZQH_XZQHID,XZQH_FID,XZQH_PROVINCE,XZQH_CITY from XZQH where XZQH_XZQHID = :pXZQHID "); SQL.ParamByName("pXZQHID").Value = txtXZQHID.Value.Trim(); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["XZQH_FID"].ToString().Trim().Equals("86")) { cbxKHSZDPRO.SelectedValue = ds.Tables[0].Rows[0]["XZQH_XZQHID"].ToString().Trim(); cbxKHSZDCITY.SelectedValue = ""; } else { cbxKHSZDPRO.SelectedValue = ds.Tables[0].Rows[0]["XZQH_FID"].ToString().Trim(); cbxKHSZDCITY.SelectedValue = ds.Tables[0].Rows[0]["XZQH_XZQHID"].ToString().Trim(); } } SQL.Clear(); SQL.Add(" select XLXSBJYLZD_WPID,XLXSBJYLZD_WFAWAITER from XLXSBJD "); SQL.Add(" left join (select min(XLXSBJYLZD_SQDH) as YLZDSQDH,XLXSBJYLZD_BJDID from XLXSBJYLZD where 1=1 group by XLXSBJYLZD_BJDID ) YLZDSQ "); SQL.Add(" on XLXSBJYLZD_BJDID = XLXSBJD_BJDID "); SQL.Add(" left join XLXSBJYLZD on XLXSBJYLZD_SQDH = YLZDSQDH "); SQL.Add(" where XLXSBJD_BJDID = :pBJDID "); SQL.ParamByName("pBJDID").Value = txtBJDID.Text.Trim(); ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { string waiter = _curWorkFlow.UserInfo.GetUserNames(ds.Tables[0].Rows[0]["XLXSBJYLZD_WFAWAITER"].ToString().Trim()); if (ds.Tables[0].Rows[0]["XLXSBJYLZD_WPID"].ToString().Trim().Equals("ZZZZ")) { txtYLZDLCZT.Text = "结束"; } else if(ds.Tables[0].Rows[0]["XLXSBJYLZD_WPID"].ToString().Trim().Equals("ZZZY")) { txtYLZDLCZT.Text = "否决"; } else { txtYLZDLCZT.Text = string.Format("待【{0}】" + _curWorkFlow.GetWPName("XLXSBJYLZD", ds.Tables[0].Rows[0]["XLXSBJYLZD_WPID"].ToString().Trim()), waiter); } } if (IsPostBack) { LoadFJXX(true, "", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, false, txtBJDID.Text, true, ""); } } protected override void OnNewRecorder() { base.OnNewRecorder(); datBJRQ.Text = DateTime.Now.ToShortDateString().Trim(); cbxBJFLID.SelectedValue = GetMRBJFL(); txtJGBID.Value = GetJGBID(); txtYLZDLCZT.Text = ""; SetNewMRBJXX(); txtFJS.Value = 0.0; txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); LoadFJXX(true, "A", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, true, txtBJDID.Text, true, ""); } protected override void OnCopyRecorder() { string sBJDID = txtBJDID.Text.Trim(); base.OnCopyRecorder(); datBJRQ.Text = DateTime.Now.ToShortDateString().Trim(); cbxBJFLID.SelectedValue = GetMRBJFL(); txtJGBID.Value = GetJGBID(); txtYLZDLCZT.Text = ""; SetCopyMRBJXX(); txtFJS.Value = 0.0; txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); txtSQRQ.Value = ""; txtSQRGH.Value = ""; txtSQRID.Value = ""; txtSQRQ.Value = ""; LoadFJXX(true, "C", sBJDID, divFJXX); setFJXXControlState(divFJXX, true, sBJDID, true, ""); } protected override bool Master_AfterSaveAction(object sender, EventArgs e) { entity.sYBJDID = ""; setFJXXControlState(divFJXX, false, txtBJDID.Text, true, ""); XLXSBJFJXX.UpdateLBXSFJXX(txtBJDID.Text.Trim()); return base.Master_AfterSaveAction(sender, e); } protected override void AfterSave(TDatabase db, ref bool ActionIsDone) { #region 对附加信息处理 if (divFJXX.Visible) { TSQL SQL = new TSQL(db); SQL.Clear(); SQL.Add("select 1 from XLXSBJKZXX where XLXSBJKZXX_BJDID = :pBJDID "); SQL.ParamByName("pBJDID").Value = txtBJDID.Text.Trim(); DataSet dsKZXX = db.OpenDataSet(SQL); if (dsKZXX.Tables[0].Rows.Count > 0) { SQL.Clear(); SQL.Add(" update XLXSBJKZXX set XLXSBJKZXX_WHRID = :pWHRID, XLXSBJKZXX_WHR = :pWHR, XLXSBJKZXX_WHSJ = :pWHSJ "); foreach (string sKey in entity.sFJXXParams.Keys) { SQL.Add(" ," + sKey+ " = :" + sKey ); SQL.ParamByName(sKey).Value = entity.sFJXXParams[sKey]; } SQL.Add(" where XLXSBJKZXX_BJDID = :pBJDID "); SQL.ParamByName("pBJDID").Value = txtBJDID.Text.Trim(); SQL.ParamByName("pWHRID").Value = tSession.UserId; ; SQL.ParamByName("pWHR").Value = tSession.UserName; SQL.ParamByName("pWHSJ").Value = CMISproConvert.ConvertTime(DateTime.Now); ; db.ExecSQL(SQL); } else { SQL.Clear(); SQL.Add("insert into XLXSBJKZXX"); SQL.Add("(XLXSBJKZXX_BJDID,"); foreach (string sKey in entity.sFJXXParams.Keys) { SQL.Add(sKey + ","); } SQL.Add(" XLXSBJKZXX_WHRID, XLXSBJKZXX_WHR, XLXSBJKZXX_WHSJ)"); SQL.Add("values"); SQL.Add("(:XLXSBJKZXX_BJDID,"); foreach (string sKey in entity.sFJXXParams.Keys) { SQL.Add(":" + sKey + ","); SQL.ParamByName(sKey).Value = entity.sFJXXParams[sKey]; } SQL.Add(" :XLXSBJKZXX_WHRID, :XLXSBJKZXX_WHR, :XLXSBJKZXX_WHSJ)"); SQL.ParamByName("XLXSBJKZXX_BJDID").Value = txtBJDID.Text.Trim(); SQL.ParamByName("XLXSBJKZXX_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJKZXX_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJKZXX_WHSJ").Value = CMISproConvert.ConvertTime(DateTime.Now); db.ExecSQL(SQL); } } #endregion base.AfterSave(db, ref ActionIsDone); } protected override bool Master_BeforeEditAction(object sender, EventArgs e) { LoadFJXX(true, "E", txtBJDID.Text,divFJXX); if (TWorkflow.Utils.WFGetBZSWID("XLXSBJ_BJD", txtWPID.Value.Trim()).Equals("0010")) setFJXXControlState(divFJXX, true, txtBJDID.Text, true, ""); else setFJXXControlState(divFJXX, false, txtBJDID.Text, false, ""); return base.Master_BeforeEditAction(sender, e); } protected override void OnNullRecorder() { base.OnNullRecorder(); LoadFJXX(true, "", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, false, txtBJDID.Text, false, ""); } protected override void SetControlState() { base.SetControlState(); if (DSActiveModule.IsActiveModule(100956005)) { lblKHSZD.Visible = true; cbxKHSZDPRO.Visible = true; cbxKHSZDCITY.Visible = true; } else { lblKHSZD.Visible = false; cbxKHSZDPRO.Visible = false; cbxKHSZDCITY.Visible = false; } //控制省市如果需要编码则必填 XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860061); string sBMYSLIST = string.Empty; if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_BMYSLIST)) { sBMYSLIST = "," + pzxx.XLXSBJPZ_BMYSLIST + ","; } if (sBMYSLIST.Contains(",XZQHID,")) { if (ControlState == TControlState.ctsEdit) { cbxKHSZDCITY.Enabled = false; cbxKHSZDPRO.Enabled = false; } } if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy) { _curWorkFlow.SetFormRights(this.Page, _curWorkFlow.GetWFID("XLXSBJ_BJD"), ControlState); } int BJMXSL = GetBJMXSL(txtBJDID.Text.Trim()); if (BJMXSL > 0) { datBJRQ.Enabled = false; cbxBJFLID.Enabled = false; btnBJMX.Enabled = true; } else btnBJMX.Enabled = false; txtBJDID.Enabled = false; txtWFState.Enabled = false; cbxTXYBMID.Enabled = false; txtTXYDH.Enabled = false; txtFJS.Enabled = false; txtWHR.Enabled = false; datWHSJ.Enabled = false; datYLDZSJQ.Enabled = false; datYLDZSJZ.Enabled = false; btnBJFK.Enabled = ControlState == TControlState.ctsBrowse; bool bVisble = false; if (entity.dsFJXXSZ.Tables[0].Rows.Count > 0) { foreach (DataRow trow in entity.dsFJXXSZ.Tables[0].Rows) { string sXSBZ = trow["XLXSBJKZXXSZ_XSBZ"].ToString().Trim(); string sWPID = txtWPID.Value.Trim().Equals("") ? "0010" : txtWPID.Value.Trim(); string sSYBJFLID = trow["XLXSBJKZXXSZ_SYBJFLID"].ToString().Trim(); string sBJFLID = cbxBJFLID.SelectedValue.Trim(); string sXSBZC = "," + sXSBZ + ","; if (!sXSBZ.Equals("") && !sXSBZC.Contains("," + sWPID + ",")) continue; string sSYBJFLIDC = "," + sSYBJFLID + ","; if (!sSYBJFLID.Equals("") && !sSYBJFLIDC.Contains("," + sBJFLID + ",")) continue; bVisble = true; break; } } divBJZTLabel.Visible = bVisble; divFJXXLabel.Visible = bVisble; divFJXX.Visible = bVisble; //销售报价业务配置“客户检索来源”为“KH|客户”、且“新增客户要求”为“报价前维护”时,txtKHID显示,cbxKHID不显示 if (pzxx.XLXSBJPZ_KHJSLY=="KH" && pzxx.XLXSBJPZ_XZKHYQ=="Q") { txtKHID.Visible = true; txtKH.Width = Unit.Pixel(340); txtKH.Enabled = false; } else { txtKHID.Visible = false; txtKH.Width = Unit.Pixel(445); txtKH.Enabled = true; } } protected override void SetComboxItems() { string sSQL = string.Format("select XLXSBJFL_BJFLID,case isnull(XLXSBJFL_TYBZ,' ') when 'Y' then rtrim(XLXSBJFL_BJFLMC)||'(停用)' else XLXSBJFL_BJFLMC end as Name from XLXSBJFL where 1 = 1 "); if (!string.IsNullOrEmpty(GetOption("BJU012").Trim())) { sSQL += " and " + CMISproDataBase.GetWhereEqual("XLXSBJFL_BJFLID", GetOption("BJU012").Trim()); } if(ControlState == TControlState.ctsBrowse) sSQL += " or XLXSBJFL_BJFLID = '" + cbxBJFLID.SelectedValue.Trim() + "'"; sSQL += " order by XLXSBJFL_XSXH,XLXSBJFL_BJFLID "; cbxBJFLID.ClearItems(); TComboBox.SetComboBox("DBERP", cbxBJFLID, sSQL, false); sSQL = "select rtrim(GS_SYDWID) as ID,rtrim(GS_GSMC) as MC from GS where 1=1 and isnull(GS_TYBZ,'N')<>'Y'"; if (!string.IsNullOrEmpty(GetOption("KZZXU003").Trim())) { sSQL += " and " + CMISproDataBase.GetWhereEqual("GS_SYDWID", GetOption("KZZXU003").Trim()); } if (ControlState == TControlState.ctsBrowse) sSQL += " or GS_SYDWID = '" + cbxSYDWID.SelectedValue.Trim() + "'"; sSQL += " order by GS_SYDWID "; cbxSYDWID.ClearItems(); TComboBox.SetComboBox("DBERP", cbxSYDWID, sSQL, false); sSQL = "select distinct rtrim(BM_BMID) as ID, BM_MC as MC from BM "; sSQL += " where 1=1 and isnull(BM_TYBZ,'N')<>'Y' "; cbxTXYBMID.ClearItems(); if (ControlState == TControlState.ctsBrowse) TComboBox.SetComboBox("DBERP", cbxTXYBMID, sSQL + " or BM_BMID = '" + cbxXSBMID.SelectedValue.Trim() + "' ", true); else TComboBox.SetComboBox("DBERP", cbxTXYBMID, sSQL, true); if (!string.IsNullOrEmpty(GetOption("HJU006").Trim())) { sSQL += " and " + CMISproDataBase.GetWhereEqual("BM_BMID", GetOption("HJU006").Trim()); } if (!string.IsNullOrEmpty(cbxSYDWID.SelectedValue.Trim())) sSQL += " and BM_SYDWID = '" + cbxSYDWID.SelectedValue.Trim() + "'"; if (ControlState == TControlState.ctsBrowse) sSQL += " or BM_BMID = '" + cbxXSBMID.SelectedValue.Trim() + "' "; sSQL += " order by rtrim(BM_BMID) "; cbxXSBMID.ClearItems(); TComboBox.SetComboBox("DBERP", cbxXSBMID, sSQL, false); sSQL = "select XSY_TXY as ID ,case when ISNULL(XSY_ZJM,' ') = ' ' then XSY_TXY else rtrim(XSY_ZJM) || '|' || XSY_TXY end as MC from XSY left join BM on BM_BMID = XSY_BMID left join GS on GS_SYDWID = BM_SYDWID "; sSQL += " where 1=1 and ISNULL(XSY_TYBZ,'N') <> 'Y' and (XSY_GH ='" + tSession.UserId + "' or XSY_TXY= '"+cbxTXY.SelectedValue.Trim()+"') "; sSQL += " order by rtrim(BM_BMID) "; cbxTXY.ClearItems(); TComboBox.SetComboBox("DBERP", cbxTXY, sSQL, false); cbxTXY.ShowValue = false; cbxCZJSXY.ClearItems(); cbxCZJSXY.Items.Add(new ListItem("", "")); cbxCZJSXY.Items.Add(new ListItem("有", "Y")); cbxCZJSXY.Items.Add(new ListItem("无", "N")); cbxCZJSXY.ShowValue = false; if (ControlState == TControlState.ctsBrowse) { //项目所在地 TComboBox.SetComboBox("DBERP", cbxKHSZDPRO, string.Format("select XZQH_XZQHID,XZQH_PROVINCE from XZQH where XZQH_XZQHID = '{0}' and XZQH_XZQHID <> '86' ORDER BY XZQH_XZQHID ", cbxKHSZDPRO.SelectedValue.Trim()), true); TComboBox.SetComboBox("DBERP", cbxKHSZDCITY, string.Format("select XZQH_XZQHID,XZQH_CITY from XZQH where XZQH_FID = '{0}' and XZQH_XZQHID <> '86' ORDER BY XZQH_XZQHID ", cbxKHSZDPRO.SelectedValue.Trim()), true); } else { //项目所在地 TComboBox.SetComboBox("DBERP", cbxKHSZDPRO, "select XZQH_XZQHID,XZQH_PROVINCE from XZQH where XZQH_FID = '86' ORDER BY XZQH_XZQHID ", true); if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add(" select XZQH_XZQHID,XZQH_CITY from XZQH where XZQH_FID = :pFID "); sql.Add(" order by XZQH_XZQHID "); sql.ParamByName("pFID").Value = cbxKHSZDPRO.SelectedValue.Trim(); DataSet ds = dberp.OpenDataSet(sql); cbxKHSZDCITY.Items.Add(new ListItem("", "")); if (ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (!ds.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim().Equals("")) { cbxKHSZDCITY.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim(), ds.Tables[0].Rows[i]["XZQH_XZQHID"].ToString().Trim())); } } } } } base.SetComboxItems(); } protected override bool Master_BeforeSaveAction(object sender, EventArgs e) { txtWHR.Text = tSession.UserName; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); txtWHRID.Value = tSession.UserId; //项目所在地---如果只维护了省、没有选择市,则XLXSBJD_XZQHID应记录下省的区划代码 if (!cbxKHSZDCITY.SelectedValue.Trim().Equals("")) { txtXZQHID.Value = cbxKHSZDCITY.SelectedValue.Trim(); } else if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) { txtXZQHID.Value = cbxKHSZDPRO.SelectedValue.Trim(); } else { txtXZQHID.Value = ""; } if ((ControlState == TControlState.ctsInsert) || (ControlState == TControlState.ctsCopy)) { string sError = string.Empty; string sBJDID = string.Empty; XLBJDUtils.GetBJDID(txtXZQHID.Value.Trim(), cbxBJFLID.SelectedValue.Trim(), cbxSYDWID.SelectedValue.Trim(), 100860061, ref sBJDID, ref sError); if (!string.IsNullOrEmpty(sError)) { ShowMessage(sError); return false; } txtBJDID.Text = sBJDID; txtSQR.Value = tSession.UserName; txtSQRGH.Value = tSession.UserId; txtSQRID.Value = tSession.RYID; txtSQRQ.Value = DateTime.Now.ToString().Trim(); } if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select top 1 XLXSBJFLBJRHQCL_BJCLID from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID='{0}'", cbxBJFLID.SelectedValue.Trim()))) { txtCLHQJGBID.Value = "ZZZZZZZZ"; } else { txtCLHQJGBID.Value = txtJGBID.Value; } return base.Master_BeforeSaveAction(sender, e); } protected override bool DataLogicValid() { if (cbxBJFLID.SelectedValue.Trim().Equals("")) { ShowMessage("报价分类不允许为空!"); return false; } if (datBJRQ.Text.Trim().Equals("")) { ShowMessage("报价日期不允许为空!"); return false; } if (cbxSYDWID.SelectedValue.Trim().Equals("")) { ShowMessage("销售单位不允许为空!"); return false; } if (cbxXSBMID.SelectedValue.Trim().Equals("")) { ShowMessage("销售部门不允许为空!"); return false; } if (cbxTXY.SelectedValue.Trim().Equals("")) { ShowMessage("销售员不允许为空!"); return false; } XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860061); if (pzxx.XLXSBJPZ_KHBT=="Y") { if (txtKH.Text.Trim().Equals("")) { ShowMessage("客户不允许为空!"); return false; } } if (pzxx.XLXSBJPZ_XMBT == "Y") { if (txtXM.Text.Trim().Equals("")) { ShowMessage("项目不允许为空!"); return false; } } if (!txtKH.Text.Trim().Equals("") && pzxx.XLXSBJPZ_XZKHYQ == "Q") { if (pzxx.XLXSBJPZ_KHJSLY == "KH") { if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from KH where KH_MC='{0}' and ISNULL(KH_TYBZ,'N') <> 'Y' ", txtKH.Text.Trim()))) { ShowMessage("客户不存在或已停用!"); return false; } } else if (pzxx.XLXSBJPZ_KHJSLY == "KHXX") { if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from KHXX where KHXX_MC = '{0}' ", txtKH.Text.Trim()))) { ShowMessage("客户不存在!"); return false; } } } if (!txtXM.Text.Trim().Equals("") && pzxx.XLXSBJPZ_XZXMYQ == "Q") { if (pzxx.XLXSBJPZ_XMJSLY == "YXXM") { if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from YXXM where YXXM_MC='{0}' ", txtXM.Text.Trim()))) { ShowMessage("项目不存在!"); return false; } if (!txtKH.Text.Trim().Equals("") && pzxx.XLXSBJPZ_KHJSLY == "KHXX") { if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from YXXM left join KHXX on KHXX_CRMKHID = YXXM_CRMKHID where YXXM_MC = '{0}' and KHXX_MC ='{1}' ", txtXM.Text.Trim(), txtKH.Text.Trim()))) { ShowMessage("项目不属于当前客户!"); return false; } } } } #region 附加信息校验 if (divFJXX.Visible) { string sSZJYXX = ""; DataSet dsFJXXSZ = entity.dsFJXXSZ; entity.sFJXXParams.Clear(); for (int i = 0; i < dsFJXXSZ.Tables[0].Rows.Count; i++) { string sXSBZ = dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_XSBZ"].ToString().Trim(); string sWPID = txtWPID.Value.Trim().Equals("") ? "0010" : txtWPID.Value.Trim(); if (!sXSBZ.Equals("")) { sXSBZ = "," + sXSBZ + ","; if (!sXSBZ.Contains("," + sWPID + ",")) { continue; } } string SYBJFLID = dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SYBJFLID"].ToString().Trim(); string sBJFLID = cbxBJFLID.SelectedValue.Trim(); if (!SYBJFLID.Equals("")) { SYBJFLID = "," + SYBJFLID + ","; if (!SYBJFLID.Contains("," + sBJFLID + ",")) { continue; } } string sWHBZ = dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_WHBZ"].ToString().Trim(); if (!sWHBZ.Equals("")) { sWHBZ = "," + sWHBZ + ","; if (!sWHBZ.Contains("," + sWPID + ",")) { continue; } } //entity.sKZXXParams.Add(); string sDYZD = "XLXSBJKZXX_" + dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_DYZD"].ToString().Trim(); string sValue = ""; if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("A")) { gtNumTextBox numTextBox = (gtNumTextBox)this.CurMaster.ContentFormControl.FindControl("txt" + sDYZD); if (numTextBox != null) sValue = numTextBox.Value.ToString(); if (sValue.Equals("0")) sValue = ""; } else if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("B")) { //字符型 if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("A"))//直接输入 { gtTextBox textBox = (gtTextBox)this.CurMaster.ContentFormControl.FindControl("txt" + sDYZD); if (textBox != null) sValue = textBox.Text.Trim(); } else if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("B"))//下拉单选 { gtComboBox comboBox = (gtComboBox)this.CurMaster.ContentFormControl.FindControl("cbx" + sDYZD); if (comboBox != null) { sValue = comboBox.SelectedValue.Trim(); if (getStringByte(sValue) > 250) { ShowMessage(dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_MC"].ToString().Trim() + "的选项长度已超过250字节,请重新选择!"); return false; } } } else if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("C"))//下拉多选 { gtCheckedDropDownList checkedDropDownList = (gtCheckedDropDownList)this.CurMaster.ContentFormControl.FindControl("cbx" + sDYZD); if (checkedDropDownList != null) { sValue = checkedDropDownList.SelectedValue.Trim(); if (getStringByte(sValue) > 250) { ShowMessage(dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_MC"].ToString().Trim() + "的选项长度已超过250字节,请重新选择!"); return false; } } } } else if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("D")) { //字符型 if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("A"))//直接输入 { gtTextBox textBox = (gtTextBox)this.CurMaster.ContentFormControl.FindControl("txt" + sDYZD); if (textBox != null) sValue = textBox.Text.Trim(); } } else if (dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("C")) { gtDateTimeTextBox dateTimeTextBox = (gtDateTimeTextBox)this.CurMaster.ContentFormControl.FindControl("dat" + sDYZD); if (dateTimeTextBox != null) sValue = dateTimeTextBox.Text.Trim(); if (sValue.Equals("")) sValue = null; } if (String.IsNullOrEmpty(sValue) && dsFJXXSZ.Tables[0].Rows[i]["BT"].ToString().Equals("Y")) { if (sDYZD.Contains("KZSZ")) { if (!sSZJYXX.Equals("")) sSZJYXX += "、"; sSZJYXX += dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_MC"].ToString().Trim(); } else { ShowMessage(dsFJXXSZ.Tables[0].Rows[i]["XLXSBJKZXXSZ_MC"].ToString().Trim() + "不允许为空!"); return false; } } entity.sFJXXParams.Add(sDYZD, sValue); } if (!sSZJYXX.Equals("")) ShowMessage(sSZJYXX + "存入0值!"); } #endregion return base.DataLogicValid(); } protected override void AfterDelete(TDatabase db, ref bool ActionIsDone) { base.AfterDelete(db, ref ActionIsDone); TSQL tSQL = new TSQL(db); XLBJDUtils.AfterDeleteBJD(db, tSQL, txtBJDID.Text.Trim()); } protected override bool Master_BeforeDeleteAction(object sender, EventArgs e) { string sSQL = string.Format("select top 1 XLXSBJYLZD_BJDID from XLXSBJYLZD where XLXSBJYLZD_BJDID='{0}'", txtBJDID.Text.Trim()); if (CMISproDataBase.ExistsRecord("DBERP", sSQL)) { ShowMessage("已申请材料用量制定,不允许删除!"); return false; } sSQL = string.Format("select 1 from BJD where BJD_BJDID='{0}'", txtBJDID.Text.Trim()); if (CMISproDataBase.ExistsRecord("DBERP", sSQL)) { ShowMessage("报价单已反馈,不允许删除!"); return false; } XLBJDUtils.UpdateTJBZ(txtBJDID.Text.Trim(), "Delete"); return base.Master_BeforeDeleteAction(sender, e); } protected override void BeforeAttach() { this.attDoc.FJSComponentName = txtFJS.ClientID; this.attDoc.UpdCondition = string.Format("XLXSBJD_BJDID='{0}'", txtBJDID.Text.Trim()); string sFJSCGS = XLBJDUtils.GetAttDocFilter(); if (!sFJSCGS.Equals("")) { this.attDoc.Filter = sFJSCGS; } base.BeforeAttach(); } protected override void Master_wfAfterActionEvent(TWorkflow Sender, TWFAction Action, bool ActionIsDone) { base.Master_wfAfterActionEvent(Sender, Action, ActionIsDone); if (!ActionIsDone) return; Sender.dbe.ExecSQL(string.Format("update XLXSBJD set XLXSBJD_WFID = '{0}', XLXSBJD_WPID = '{1}', XLXSBJD_WFAWAITER= '{2}', XLXSBJD_WFHANDLER = '{3}', XLXSBJD_WFINST = {4}, XLXSBJD_ACTNAME = '{5}' where XLXSBJD_BJDID = '{6}'", Sender.WFID, Sender.WPID, Sender.Awaiter, Sender.Handler, Sender.WFInst, Sender.GetWFActionName(Action), txtBJDID.Text.ToString().Trim())); txtWFState.Text = this._curWorkFlow.GetWPName(Sender.WFID, Sender.WPID); string sCurZT = TWorkflow.Utils.WFGetBZSWID(Sender.WFID, Sender.WPID); TSQL SQL = new TSQL(Sender.dbe); //若“100860062|销售报价业务配置”项目检索来源为“YXXM|售前项目”且XLXSBJD_XMMC不为空 if (sCurZT == "ZZZZ") { string sPSDH = ""; bool bINS = false; XLBJD_BDOBill.InsBJPS(SQL, Sender.dbe, Sender, Action, txtBJDID.Text.Trim(), tSession,"100860061", ref sPSDH, ref bINS); if (bINS) { XLBJD_BDOBill.DispatchtoZZZZ(sPSDH, tSession); } } if (Sender.WPID.Equals("ZZZZ")) XLBJDUtils.UpdateBJWCSJ(txtBJDID.Text.ToString().Trim()); } protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); string sScript = ""; #region 客户的快速检索脚本 string sDivSelect = @" function getPos(el,sProp) { var iPos = 0; while (el!=null) { iPos+=el['offset' + sProp] el = el.offsetParent } return iPos; } //在客户输入框中自动检索 function edtKeyUp(el,m) { if(document.getElementById('" + txtKH.ClientID + @"').readOnly) return; if(event.keyCode == 9) return; var sUsers,sRYList,lstBox; sUSR= el.value; sUsers=document.getElementById('" + hidKH.ClientID + @"').value; lstBox=document.getElementById('lstUSR'); lstBox.length=0; sRYList=sUsers.split('$$,'); for(var i=0; i=0) || (sRYList[i].indexOf(sUSR.toUpperCase())>=0)) { var item; item = sItem.split('↑'); if (item[0] != '') lstBox.options.add(new Option(item[0])); } } document.getElementById('btnSel').value=el.id; // event.keyCode=0; event.returnValue=false; if(lstBox.length==0) m.style.display='none'; if(lstBox.length==1) { if (lstBox.options[0].text =='') {m.style.display='none'; } else if (event.keyCode == 13) m.style.display='none'; else m.style.display=''; } if(lstBox.length>1) { m.style.display=''; } m.style.pixelLeft =getPos(el,'Left'); if((event.keyCode==40)&&(idSel.style.display=='')) { var lstBox=document.getElementById('lstUSR'); lstBox.focus(); if(lstBox.length>0) lstBox.selectedIndex=0; } } var isin=false; function selectme(obj) { if(!isin||obj) { idSel.style.display='none'; idSel2.style.display='none'; } } function lstUSRClick() { var edtSend var lstBox=document.getElementById('lstUSR'); var ss=lstBox.options[lstBox.selectedIndex].text; // event.keyCode=0; event.returnValue=false; edtSend= document.getElementById(document.getElementById('btnSel').value); edtSend.value=ss; idSel.style.display='none'; edtSend.focus(); } /* 以下使窗体点击时selectme(obj)函数被激活: */ myActivation='selectme(null)'; if(document.body.onclick) { eval(document.body.onclick.toString().replace('anonymous()','bodyclick()')); document.body.onclick=new Function('bodyclick();'+myActivation); } else document.body.onclick=new Function(myActivation); function cc() { var e = event.srcElement; var r =e.createTextRange(); r.moveStart('character',e.value.length); r.collapse(true); r.select(); } "; #endregion #region 项目的快速检索脚本 string sDivSelect2 = @" //在项目输入框中自动检索 function edtKeyUp2(el,m) { if(document.getElementById('" + txtXM.ClientID + @"').readOnly) return; if(event.keyCode == 9) return; var sUsers,sRYList,lstBox; sUSR= el.value; sUsers=document.getElementById('" + hidXM.ClientID + @"').value; lstBox=document.getElementById('lstUSR2'); lstBox.length=0; sRYList=sUsers.split('$$,'); for(var i=0; i=0) || (sItem[0].indexOf(sUSR.toUpperCase())>=0)) && (sItem[1]==document.getElementById('" + txtKH.ClientID + @"').value.trim())) { var item; item = sItem[0].split('↑'); lstBox.options.add(new Option(item[0])); } } document.getElementById('btnSel2').value=el.id; // event.keyCode=0; event.returnValue=false; if(lstBox.length==0) m.style.display='none'; if(lstBox.length==1) { if (lstBox.options[0].text =='') {m.style.display='none'; } else if (event.keyCode == 13) m.style.display='none'; else m.style.display=''; } if(lstBox.length>1) { m.style.display=''; } m.style.pixelLeft =getPos(el,'Left'); if((event.keyCode==40)&&(idSel2.style.display=='')) { var lstBox=document.getElementById('lstUSR2'); lstBox.focus(); if(lstBox.length>0) lstBox.selectedIndex=0; } } var isin2=false; function selectme2(obj) { if(!isin2||obj) { idSel.style.display='none'; idSel2.style.display='none';} } function lstUSR2Click() { var edtSend var lstBox=document.getElementById('lstUSR2'); var ss=lstBox.options[lstBox.selectedIndex].text; // event.keyCode=0; event.returnValue=false; edtSend= document.getElementById(document.getElementById('btnSel2').value); edtSend.value=ss; idSel2.style.display='none'; edtSend.focus(); } /* 以下使窗体点击时selectme2(obj)函数被激活: */ // myActivation='selectme2(null)'; // if(document.body.onclick) // { // eval(document.body.onclick.toString().replace('anonymous()','bodyclick()')); // document.body.onclick=new Function('bodyclick();'+myActivation); // } // else document.body.onclick=new Function(myActivation); function cc2() { var e = event.srcElement; var r =e.createTextRange(); r.moveStart('character',e.value.length); r.collapse(true); r.select(); } "; #endregion sScript += sDivSelect; sScript += sDivSelect2; ClientScript.RegisterStartupScript(this.GetType(), "Script_PreRender", sScript, true); } protected override string CodeClass(string ComponentID) { string sFW=GetOption("HJU038").Trim(); string sResult = base.CodeClass(ComponentID); TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); if (ComponentID.ToUpper().Trim().Equals("TXTKH")) { string sKHJSLY = ""; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860061); if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_KHJSLY)) sKHJSLY = pzxx.XLXSBJPZ_KHJSLY; if (sKHJSLY.Equals("KH")) { sResult += "!select KH_KHID as CODE, KH_MC as MESSAGE from KH where 1=1 and isnull(KH_TYBZ,'N') <> 'Y' "; if (sFW.Trim().Equals("ZJ")) { sResult += string.Format("and KH_TXY='{0}'", tSession.UserName.Trim()); } else if (sFW.Trim().Equals("BM")) { sResult += string.Format("and KH_TXY in (select XSY_TXY from XSY where XSY_BMID='{0}')", UserUtils.GetUser(tSession.UserId).RzBmId); } sResult += " order by CODE"; } else if (sKHJSLY.Equals("KHXX")) { sResult += "!select KHXX_CRMKHID as CODE, KHXX_MC as MESSAGE from KHXX where 1=1 "; if (sFW.Trim().Equals("ZJ")) { sResult += string.Format("and KHXX_FZR='{0}'", tSession.UserName.Trim()); } else if (sFW.Trim().Equals("BM")) { sResult += string.Format("and KHXX_FZR in (select XSY_TXY from XSY where XSY_BMID='{0}')", UserUtils.GetUser(tSession.UserId).RzBmId); } sResult += " order by CODE"; } } if (ComponentID.ToUpper().Trim().Equals("TXTKHID")) { sResult += "!!select KH_KHID as CODE, case when isnull(KH_TXY,' ') = ' ' then KH_MC else rtrim(KH_MC) || '|' || KH_TXY end as MESSAGE from KH where 1=1 and isnull(KH_TYBZ,'N') <> 'Y' "; if (sFW.Trim().Equals("ZJ")) { sResult += string.Format("and KH_TXY='{0}'", tSession.UserName.Trim()); } else if (sFW.Trim().Equals("BM")) { sResult += string.Format("and KH_TXY in (select XSY_TXY from XSY where XSY_BMID='{0}')", UserUtils.GetUser(tSession.UserId).RzBmId); } sResult += " order by CODE"; } if (ComponentID.ToUpper().Trim().Equals("TXTXM")) { string sXMJSLY = ""; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860061); if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_XMJSLY)) sXMJSLY = pzxx.XLXSBJPZ_XMJSLY; if (sXMJSLY.Equals("YXXM")) { sResult += "!select YXXM_XMID as CODE, YXXM_MC as MESSAGE from YXXM order by CODE"; } } return sResult; } #endregion #region 自定义函数 private void GetXSYXX(string TXY)//获取销售员信息 { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); sSQL.Add(" select XSY_SJ,XSY_DH,XSY_BMID,BM_MC,isnull(BM_SYDWID,'ZZZZ') as BM_SYDWID from XSY "); sSQL.Add(" left join BM on BM_BMID = XSY_BMID "); sSQL.Add(" where 1=1 and ISNULL(XSY_TYBZ,'N') <> 'Y' and XSY_TXY ='" + TXY.Trim() + "'"); sSQL.Add(" order by BM_SYDWID "); DataSet ds = dberp.OpenDataSet(sSQL); if (ds.Tables[0].Rows.Count > 0) { if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_SJ"].ToString().Trim())) txtTXYDH.Text = ds.Tables[0].Rows[0]["XSY_SJ"].ToString().Trim(); else if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_DH"].ToString().Trim())) txtTXYDH.Text = ds.Tables[0].Rows[0]["XSY_DH"].ToString().Trim(); if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_BMID"].ToString().Trim())) cbxTXYBMID.SelectedValue = ds.Tables[0].Rows[0]["XSY_BMID"].ToString().Trim(); } } private int GetBJMXSL(string sBJDID)//获取报价明细数量 { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); sSQL.Add(" select XLXSBJDMX_BJDID from XLXSBJDMX "); sSQL.Add(" where 1 = 1 and XLXSBJDMX_BJDID =:XLXSBJD_BJDID "); sSQL.ParamByName("XLXSBJD_BJDID").Value = sBJDID; DataSet ds = dberp.OpenDataSet(sSQL); return ds.Tables[0].Rows.Count; } private string GetMRBJFL()//获取默认报价分类和价格表ID { string rstr = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); sSQL.Add(" select XLXSBJFL_BJFLID from XLXSBJFL where 1=1 and isnull(XLXSBJFL_TYBZ,'N') <> 'Y' "); sSQL.Add(" and not exists(select 1 from XLXSBJFLKH where XLXSBJFLKH_BJFLID=XLXSBJFL_BJFLID)"); string sBJU012 = GetOption("BJU012"); if (!sBJU012.Equals("")) { sSQL.Add( "and " + CMISproDataBase.GetWhereEqual("XLXSBJFL_BJFLID", sBJU012)); } sSQL.Add(" order by XLXSBJFL_XSXH,XLXSBJFL_BJFLID "); DataSet ds = dberp.OpenDataSet(sSQL); if (ds.Tables[0].Rows.Count > 0) { rstr = ds.Tables[0].Rows[0]["XLXSBJFL_BJFLID"].ToString().Trim(); } return rstr; } //获取价格表 private string GetJGBID() { string rstr = ""; Dictionary myDiction = XLBJDUtils.GetJGBIDByXSQYID("", cbxBJFLID.SelectedValue.Trim(), datBJRQ.Text.Trim(), ""); foreach (string item in myDiction.Keys) { rstr = item; break; } return rstr; } private void SetNewMRBJXX()//新建时设置默认线缆销售报价信息 { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); sSQL.Add(" select XSY_TXY,XSY_ZJM,XSY_SJ,XSY_DH,XSY_BMID,BM_MC,isnull(BM_SYDWID,'ZZZZ') as BM_SYDWID from XSY "); sSQL.Add(" left join BM on BM_BMID = XSY_BMID "); sSQL.Add(" left join GS on GS_SYDWID = BM_SYDWID "); sSQL.Add(" where 1=1 and ISNULL(XSY_TYBZ,'N') <> 'Y' and XSY_GH ='" + tSession.UserId + "'"); sSQL.Add(" order by BM_SYDWID "); DataSet ds = dberp.OpenDataSet(sSQL); if (ds.Tables[0].Rows.Count > 0) { cbxTXY.SelectedValue = ds.Tables[0].Rows[0]["XSY_TXY"].ToString().Trim(); if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_SJ"].ToString().Trim())) txtTXYDH.Text = ds.Tables[0].Rows[0]["XSY_SJ"].ToString().Trim(); else if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_DH"].ToString().Trim())) txtTXYDH.Text = ds.Tables[0].Rows[0]["XSY_DH"].ToString().Trim(); if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_BMID"].ToString().Trim())) { cbxTXYBMID.SelectedValue = ds.Tables[0].Rows[0]["XSY_BMID"].ToString().Trim(); cbxXSBMID.SelectedValue = ds.Tables[0].Rows[0]["XSY_BMID"].ToString().Trim(); } if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["BM_SYDWID"].ToString().Trim()) && !ds.Tables[0].Rows[0]["BM_SYDWID"].ToString().Trim().Equals("ZZZZ")) cbxSYDWID.SelectedValue = ds.Tables[0].Rows[0]["BM_SYDWID"].ToString().Trim(); } } private void SetCopyMRBJXX()//复制时设置默认线缆销售报价信息 { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); sSQL.Add(" select XSY_TXY,XSY_ZJM,XSY_SJ,XSY_DH,XSY_BMID,BM_MC,isnull(BM_SYDWID,'ZZZZ') as BM_SYDWID from XSY "); sSQL.Add(" left join BM on BM_BMID = XSY_BMID "); sSQL.Add(" left join GS on GS_SYDWID = BM_SYDWID "); sSQL.Add(" where 1=1 and ISNULL(XSY_TYBZ,'N') <> 'Y' and XSY_GH ='" + tSession.UserId + "'"); sSQL.Add(" order by BM_SYDWID "); DataSet ds = dberp.OpenDataSet(sSQL); if (ds.Tables[0].Rows.Count > 0) { cbxTXY.SelectedValue = ds.Tables[0].Rows[0]["XSY_TXY"].ToString().Trim(); if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_SJ"].ToString().Trim())) txtTXYDH.Text = ds.Tables[0].Rows[0]["XSY_SJ"].ToString().Trim(); else if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_DH"].ToString().Trim())) txtTXYDH.Text = ds.Tables[0].Rows[0]["XSY_DH"].ToString().Trim(); if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["XSY_BMID"].ToString().Trim())) cbxTXYBMID.SelectedValue = ds.Tables[0].Rows[0]["XSY_BMID"].ToString().Trim(); } } private void LoadUserandGroup() { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); StringBuilder sUsers = new StringBuilder(); try { TSQL sql = new TSQL(dberp); DataSet ds; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860061); if (string.IsNullOrEmpty(pzxx.XLXSBJPZ_KHJSLY)) { sql.Clear(); sql.Add(" select distinct XLXSBJD_KH from XLXSBJD "); sql.Add(" left join XSY on XSY_TXY = XLXSBJD_TXY "); sql.Add(" where XSY_GH='" + tSession.UserId + "'"); sql.Add(" order by XLXSBJD_KH"); ds = dberp.OpenDataSet(sql); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (!ds.Tables[0].Rows[i]["XLXSBJD_KH"].ToString().Trim().Equals("")) { sUsers.Append(ds.Tables[0].Rows[i]["XLXSBJD_KH"].ToString().Trim() + "↑" + CMISproConvert.ConvertZJM(ds.Tables[0].Rows[i]["XLXSBJD_KH"].ToString().Trim()).ToUpper() + "$" + "$,"); } } } //其他情况使用代码助手加载 } catch { ShowMessage("打开数据集出错,请和系统管理员联系!"); return; } finally { hidKH.Text = sUsers.ToString().Trim(); } } private void LoadXMGroup() { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); StringBuilder sUsers = new StringBuilder(); try { TSQL sql = new TSQL(dberp); DataSet ds; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860061); //如果项目来源为空则需要动态检索框 if (string.IsNullOrEmpty(pzxx.XLXSBJPZ_XMJSLY)) { sql.Clear(); sql.Add(" select distinct XLXSBJD_KH,XLXSBJD_XMMC from XLXSBJD "); sql.Add(" left join XSY on XSY_TXY = XLXSBJD_TXY "); sql.Add(" where XSY_GH='" + tSession.UserId + "'"); sql.Add(" order by XLXSBJD_KH,XLXSBJD_XMMC"); ds = dberp.OpenDataSet(sql); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { sUsers.Append(ds.Tables[0].Rows[i]["XLXSBJD_XMMC"].ToString().Trim() + "↑" + CMISproConvert.ConvertZJM(ds.Tables[0].Rows[i]["XLXSBJD_XMMC"].ToString().Trim()).ToUpper() + "##" + ds.Tables[0].Rows[i]["XLXSBJD_KH"].ToString().Trim() + "$" + "$,"); } } } catch { ShowMessage("打开数据集出错,请和系统管理员联系!"); return; } finally { hidXM.Text = sUsers.ToString().Trim(); } } private string GetZJE(string sBJDID) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); sSQL.Add(" select XLXSBJD_ZJE from XLXSBJD where XLXSBJD_BJDID = :pBJDID "); sSQL.ParamByName("pBJDID").Value = sBJDID; DataSet ds = dberp.OpenDataSet(sSQL); if (ds.Tables[0].Rows.Count > 0) { return ds.Tables[0].Rows[0]["XLXSBJD_ZJE"].ToString().Trim(); } else { return ""; } } //判断模块是否存在并且是否有权限 private bool CheckModule(string sUMID) { int iUMID = CMISproConvert.StrToInt(sUMID); UserRight UR = OpRightUtils.GetUserRight(tSession.UserId, iUMID); return (DSActiveModule.IsActiveModule(iUMID) && UR.Open); } /// /// 动态加载数据项 /// /// 是否同步值 /// 页面状态 /// 报价单号 /// 附加信息的父控件 private void LoadFJXX(bool bAddValues, string sControlState, string sBJDID, HtmlGenericControl divFJXX) { if (!sControlState.Equals("A")) { if (divFJXX.Controls.Count > 0) if (divFJXX.Controls[0].ID != null) if (divFJXX.Controls[0].ID.Equals("tableXLXSBJKZXX")) if (!sControlState.Equals("C")) return; } divFJXX.Controls.Clear(); Table TabFJXX = new Table(); TabFJXX.ID = "tableXLXSBJKZXX"; TabFJXX.Attributes.Add("cellpadding", "0"); TabFJXX.Attributes.Add("align", "left"); TabFJXX.Attributes.Add("cellspacing", "0"); TabFJXX.Attributes.Add("width", "100%"); TableRow RowFJXX = new TableRow(); int iCount = 0; DataSet dsXLXSBJKZXX = entity.getXLXSBJKZXX(sBJDID); if (dsXLXSBJKZXX.Tables[0].Rows.Count == 0) bAddValues = false; DataSet ds = entity.dsFJXXSZ; int irow = 1; bool newtrow = true; for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sXSBZ = ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_XSBZ"].ToString().Trim(); if (!sXSBZ.Equals("")) { string sWPID = txtWPID.Value.Trim().Equals("") ? "0010" : txtWPID.Value.Trim(); sXSBZ = "," + sXSBZ + ","; if (!sXSBZ.Contains("," + sWPID + ",")) { continue; } } string SYBJFLID = ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SYBJFLID"].ToString().Trim(); if (!SYBJFLID.Equals("")) { string sBJFLID = cbxBJFLID.SelectedValue.Trim(); SYBJFLID = "," + SYBJFLID + ","; if (!SYBJFLID.Contains("," + sBJFLID + ",")) { continue; } } if (iCount == 2) { if (RowFJXX != null) TabFJXX.Rows.Add(RowFJXX); RowFJXX = new TableRow(); newtrow = true; iCount = 0; irow++; } //根据维护步骤、适用条件先判断是否必填 bool bSFBT = ds.Tables[0].Rows[i]["BT"].ToString().Trim().Equals("Y"); RowFJXX.Height = 20; string sDYZD = "XLXSBJKZXX_" + ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_DYZD"].ToString().Trim(); string sFJXXValue = ""; if (sControlState.Equals("A")) sFJXXValue = ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_QSZ"].ToString().Trim(); if (bAddValues) sFJXXValue = dsXLXSBJKZXX.Tables[0].Rows[0][sDYZD].ToString().Trim(); string sKZXXMC = ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_MC"].ToString().Trim(); if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("D")) { if (newtrow) { iCount = 2; int iRows = CMISproConvert.StrToInt(ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_ROWS"].ToString().Trim(), 3); //标签单元格 XLXSBJFJXX.createLabel(RowFJXX, sDYZD, sKZXXMC, iRows); //文本型 XLXSBJFJXX.createTextBox(RowFJXX, sDYZD, bSFBT, sFJXXValue, iRows == 0 ? 1 : iRows, 0, 3, 0); irow += iRows == 0 ? 1 : iRows; irow--; } else { if (iCount != 2 && iCount != 0) { XLXSBJFJXX.createTableCell(RowFJXX, (2 - iCount) * 2, irow); } if (RowFJXX != null) TabFJXX.Rows.Add(RowFJXX); RowFJXX = new TableRow(); RowFJXX.Height = 20; iCount = 2; int iRows = CMISproConvert.StrToInt(ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_ROWS"].ToString().Trim(), 3); //标签单元格 XLXSBJFJXX.createLabel(RowFJXX, sDYZD, sKZXXMC, iRows); //文本型 XLXSBJFJXX.createTextBox(RowFJXX, sDYZD, bSFBT, sFJXXValue, iRows == 0 ? 1 : iRows, 0, 3, 0); irow += iRows == 0 ? 1 : iRows; } newtrow = true; } else { newtrow = false; //标签单元格 XLXSBJFJXX.createLabel(RowFJXX, sDYZD, sKZXXMC, 0); if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("A")) { //数值型 XLXSBJFJXX.createNumTextBox(RowFJXX, sDYZD, bSFBT, CMISproConvert.StrToFloat(sFJXXValue, 0), ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_JLDW"].ToString().Trim()); } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("B")) { //字符型 if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("A"))//直接输入 { XLXSBJFJXX.createTextBox(RowFJXX, sDYZD, bSFBT, sFJXXValue, CMISproConvert.StrToInt(ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_ROWS"].ToString().Trim()), CMISproConvert.StrToInt(ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_WIDTH"].ToString().Trim()), 1, 0); } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("B"))//单选输入 { XLXSBJFJXX.createComboBox(RowFJXX, sDYZD, bSFBT, sFJXXValue, ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_MJLB"].ToString().Trim(), ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_MJSQL"].ToString().Trim(), CMISproConvert.StrToInt(ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_WIDTH"].ToString().Trim())); } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("C"))//多选输入 { XLXSBJFJXX.createCheckedDropDownList(RowFJXX, sDYZD, bSFBT, sFJXXValue, ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_MJLB"].ToString().Trim(), ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_MJSQL"].ToString().Trim(), CMISproConvert.StrToInt(ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_WIDTH"].ToString().Trim())); } } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("C")) { //日期型 XLXSBJFJXX.createDateTimeTextBox(RowFJXX, sDYZD, bSFBT, sFJXXValue); } iCount++; } } if (iCount != 2) { XLXSBJFJXX.createTableCell(RowFJXX, (2 - iCount) * 2, irow); } TabFJXX.Rows.Add(RowFJXX); divFJXX.Controls.Add(TabFJXX); int iHeight = irow * 22; divFJXX.Style["height"] = iHeight.ToString().Trim() + "px"; } private void setFJXXControlState(HtmlGenericControl divFJXX, bool bEnable, string sBJDID, bool bSetValue, string sControlState) { if (!divFJXXLabel.Visible) return; DataSet dsXLXSBJKZXX = null; if (bSetValue) { dsXLXSBJKZXX = entity.getXLXSBJKZXX(sBJDID); if (dsXLXSBJKZXX.Tables[0].Rows.Count == 0) bSetValue = false; } DataSet ds = entity.dsFJXXSZ; for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { bool dEnabled = true; string sWHBZ = ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_WHBZ"].ToString().Trim(); string sWPID = txtWPID.Value.Trim().Equals("") ? "0010" : txtWPID.Value.Trim(); if (!sWHBZ.Equals("")) { sWHBZ = "," + sWHBZ + ","; if (!sWHBZ.Contains("," + sWPID + ",")) { dEnabled = false; } } string sDYZD = "XLXSBJKZXX_" + ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_DYZD"].ToString().Trim(); if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("A")) { gtNumTextBox numTextBox = (gtNumTextBox)this.CurMaster.ContentFormControl.FindControl("txt" + sDYZD); if (numTextBox != null) { numTextBox.Enabled = bEnable && dEnabled; if (bSetValue) numTextBox.Value = CMISproConvert.StrToFloat(dsXLXSBJKZXX.Tables[0].Rows[0][sDYZD].ToString().Trim(), 0); } } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("B")) { //字符型 if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("A"))//直接输入 { gtTextBox textBox = (gtTextBox)this.CurMaster.ContentFormControl.FindControl("txt" + sDYZD); if (textBox != null) { textBox.Enabled = bEnable && dEnabled; if (bSetValue) textBox.Text = dsXLXSBJKZXX.Tables[0].Rows[0][sDYZD].ToString().Trim(); } } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("B"))//下拉单选 { gtComboBox comboBox = (gtComboBox)this.CurMaster.ContentFormControl.FindControl("cbx" + sDYZD); if (comboBox != null) { comboBox.Enabled = bEnable && dEnabled; if (bSetValue) comboBox.SelectedValue = dsXLXSBJKZXX.Tables[0].Rows[0][sDYZD].ToString().Trim(); } } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SRFS"].ToString().Trim().Equals("C"))//下拉多选 { gtCheckedDropDownList checkedDropDownList = (gtCheckedDropDownList)this.CurMaster.ContentFormControl.FindControl("cbx" + sDYZD); if (checkedDropDownList != null) { checkedDropDownList.Enabled = bEnable && dEnabled; if (bSetValue) checkedDropDownList.SelectedValue = dsXLXSBJKZXX.Tables[0].Rows[0][sDYZD].ToString().Trim(); } } } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("C")) { gtDateTimeTextBox dateTimeTextBox = (gtDateTimeTextBox)this.CurMaster.ContentFormControl.FindControl("dat" + sDYZD); if (dateTimeTextBox != null) { dateTimeTextBox.Enabled = bEnable && dEnabled; if (bSetValue) dateTimeTextBox.Text = CMISproConvert.ConvertDate(dsXLXSBJKZXX.Tables[0].Rows[0][sDYZD].ToString().Trim()); } } else if (ds.Tables[0].Rows[i]["XLXSBJKZXXSZ_SJLX"].ToString().Trim().Equals("D")) { gtTextBox textBox = (gtTextBox)this.CurMaster.ContentFormControl.FindControl("txt" + sDYZD); if (textBox != null) { textBox.Enabled = bEnable && dEnabled; if (bSetValue) textBox.Text = dsXLXSBJKZXX.Tables[0].Rows[0][sDYZD].ToString().Trim(); } } } } public static void UpdateLBXSFJXX(string sBJDID) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XLXSBJKZXXSZ_DYZD,XLXSBJKZXXSZ_MC,XLXSBJKZXXSZ_SJLX "); SQL.Add(" from XLXSBJKZXXSZ where isnull(XLXSBJKZXXSZ_LBXS,'N') = 'Y' order by XLXSBJKZXXSZ_BJSX,XLXSBJKZXXSZ_BH "); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { string sLBXSFJXX = ""; SQL.Clear(); SQL.Add(" select XLXSBJKZXX_BJDID "); for (int i = 1; i <= 5; i++) { SQL.Add(" ,XLXSBJKZXX_KZSZ" + i.ToString().PadLeft(2, '0')); } for (int j = 1; j <= 10; j++) { SQL.Add(" ,XLXSBJKZXX_KZZF" + j.ToString().PadLeft(2, '0')); } for (int k = 1; k <= 5; k++) { SQL.Add(" ,XLXSBJKZXX_KZRQ" + k.ToString().PadLeft(2, '0')); } SQL.Add(" from XLXSBJKZXX where XLXSBJKZXX_BJDID = :pBJDID "); SQL.ParamByName("pBJDID").Value = sBJDID; DataSet dsKZXX = dberp.OpenDataSet(SQL); if (dsKZXX.Tables[0].Rows.Count > 0) { foreach (DataRow trow in ds.Tables[0].Rows) { if (!sLBXSFJXX.Equals("")) sLBXSFJXX += "\r\n"; string sDYZD = trow["XLXSBJKZXXSZ_DYZD"].ToString().Trim(); string sMC = trow["XLXSBJKZXXSZ_MC"].ToString().Trim(); string sSJLX = trow["XLXSBJKZXXSZ_SJLX"].ToString().Trim(); string sValues = dsKZXX.Tables[0].Rows[0]["XLXSBJKZXX_" + sDYZD].ToString().Trim(); if (sSJLX.Equals("A")) { if (sValues.Equals("") || sValues.Equals("0")) sValues = ""; else sValues = strPadRight(sValues, 2); } else if (sSJLX.Equals("C")) { if (!sValues.Equals("")) sValues = CMISproConvert.StrToDateTime(sValues).ToShortDateString().Trim(); } sLBXSFJXX += sMC + ":" + sValues; } } SQL.Clear(); SQL.Add(" update XLXSBJD set XLXSBJD_LBXSFJXX = :pLBXSFJXX where XLXSBJD_BJDID = :pBJDID "); SQL.ParamByName("pLBXSFJXX").Value = sLBXSFJXX; SQL.ParamByName("pBJDID").Value = sBJDID; dberp.ExecSQL(SQL); } } private int getStringByte(string text) { Encoding _encoding = System.Text.Encoding.GetEncoding("GB2312"); byte[] bytes = _encoding.GetBytes(text); return bytes.Length; } public static string strPadRight(string s, int x) { string str = s; if (str.Split('.').Length == 2) { str = str.Split('.')[0] + "." + str.Split('.')[1].PadRight(x, '0'); } else { string tmp = "0"; if (x > 0) { tmp = tmp.PadRight(x, '0'); str = str + "." + tmp; } } return str; } #endregion #region 控件事件 protected void btnBJMX_Click(object sender, EventArgs e) { TPageParams pageParams = new TPageParams(); pageParams.UrlPath = "XSYBJSQInfo_BJMXList.aspx"; pageParams.AddString("XLXSBJD_BJDID", txtBJDID.Text.Trim()); OpenDialog(pageParams); } protected void btnBJFK_Click(object sender, EventArgs e) { TPageParams pageParams = new TPageParams(); pageParams.UrlPath = "CXBJDList.aspx"; pageParams.AddString("BJDID", txtBJDID.Text.Trim()); string sFunction = "function CallBackFun() {document.getElementById('" + btnReLoad.ClientID + "').click();}"; OpenModuleDialogWithCallBack(100860046, pageParams, "CallBackFun", sFunction); } //重新加载记录 protected void btnReLoad_Click(object sender, EventArgs e) { LoadRecord(); RefreshForm(); SetControlState(); SetComboxItems(); MenuAreaUpdate(); FormAreaUpdate(); } protected void OncbxBJFL_Changed(object sender, EventArgs e) { txtJGBID.Value = GetJGBID(); bool bVisble = false; if (entity.dsFJXXSZ.Tables[0].Rows.Count > 0) { foreach (DataRow trow in entity.dsFJXXSZ.Tables[0].Rows) { string sXSBZ = trow["XLXSBJKZXXSZ_XSBZ"].ToString().Trim(); string sWPID = txtWPID.Value.Trim().Equals("") ? "0010" : txtWPID.Value.Trim(); string sSYBJFLID = trow["XLXSBJKZXXSZ_SYBJFLID"].ToString().Trim(); string sBJFLID = cbxBJFLID.SelectedValue.Trim(); string sXSBZC = "," + sXSBZ + ","; if (!sXSBZ.Equals("") && !sXSBZC.Contains("," + sWPID + ",")) continue; string sSYBJFLIDC = "," + sSYBJFLID + ","; if (!sSYBJFLID.Equals("") && !sSYBJFLIDC.Contains("," + sBJFLID + ",")) continue; bVisble = true; break; } } divBJZTLabel.Visible = bVisble; divFJXXLabel.Visible = bVisble; divFJXX.Visible = bVisble; if (ControlState == TControlState.ctsInsert) { LoadFJXX(true, "A", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, true, txtBJDID.Text, false, ""); } else if (ControlState == TControlState.ctsCopy) { LoadFJXX(true, "C", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, true, txtBJDID.Text, false, ""); } else if (ControlState == TControlState.ctsEdit) { LoadFJXX(true, "E", txtBJDID.Text, divFJXX); setFJXXControlState(divFJXX, true, txtBJDID.Text, false, ""); } } protected void OndatBJRQ_Changed(object sender, EventArgs e) { txtJGBID.Value = GetJGBID(); } protected void OncbxXSDW_Changed(object sender, EventArgs e) { cbxXSBMID.SelectedValue = ""; cbxXSBMID.Items.Clear(); string sSQL = "select distinct rtrim(BM_BMID) as ID, BM_MC as MC from BM "; sSQL += " where 1=1 and isnull(BM_TYBZ,'N')<>'Y' "; if (!string.IsNullOrEmpty(GetOption("HJU006").Trim())) { sSQL += " and " + CMISproDataBase.GetWhereEqual("BM_BMID", GetOption("HJU006").Trim()); } if (!string.IsNullOrEmpty(cbxSYDWID.SelectedValue.Trim())) sSQL += " and BM_SYDWID = '" + cbxSYDWID.SelectedValue.Trim() + "'"; if (ControlState == TControlState.ctsBrowse) sSQL += " or BM_BMID = '" + cbxXSBMID.SelectedValue.Trim() + "' "; sSQL += " order by rtrim(BM_BMID) "; TComboBox.SetComboBox("DBERP", cbxXSBMID, sSQL, false); } protected void OncbxTXY_Changed(object sender, EventArgs e) { txtTXYDH.Text = ""; cbxTXYBMID.SelectedValue = ""; GetXSYXX(cbxTXY.SelectedValue.Trim()); } //项目所在地 protected void cbxKHSZDPRO_OnSelectedIndexChanged(object sender, EventArgs e) { if (!IsPostBack)//此处解决列表页直接点编辑触发change的问题 return; cbxKHSZDCITY.ClearItems(); if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XZQH_XZQHID,XZQH_CITY from XZQH where XZQH_FID = :pFID "); SQL.Add(" order by XZQH_XZQHID "); SQL.ParamByName("pFID").Value = cbxKHSZDPRO.SelectedValue.Trim(); DataSet ds = dberp.OpenDataSet(SQL); cbxKHSZDCITY.Items.Add(new ListItem("", "")); if (ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (!ds.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim().Equals("")) { cbxKHSZDCITY.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim(), ds.Tables[0].Rows[i]["XZQH_XZQHID"].ToString().Trim())); } } if (cbxKHSZDCITY.Items.Count == 2) { cbxKHSZDCITY.SelectedIndex = 1; } } } else { cbxKHSZDCITY.SelectedValue = ""; } } /// /// 客户IDchange /// /// /// protected void txtKHID_TextChanged(object sender, EventArgs e) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select KH_MC from KH where KH_KHID=:pKHID and isnull(KH_TYBZ,'N') <> 'Y' order by KH_KHID"); SQL.ParamByName("pKHID").Value = txtKHID.Text.Trim(); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { txtKH.Text = ds.Tables[0].Rows[0]["KH_MC"].ToString().Trim(); } else txtKH.Text = ""; } #endregion } }