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_WORKFLOW; using GThinking.N_PUBLIC; using GThinking.N_MISPRO.Utility; using GThinking.N_MISPRO; using GThinking.N_MISPRO.Data; using GThinking.N_CONTROL; using System.Collections.Generic; using GThinking.N_MISPRO.TableCache; using GThinking.N_MISPROAS.SysData; namespace GThinking.N_XLXSBJ { public partial class CLYLZDSQInfo : BDOBillBase { XLXSBJYLZDEntity entity = new XLXSBJYLZDEntity(); Dictionary YZDIC = new Dictionary(); private static Dictionary dicYZMC = new Dictionary(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860064; this.UMName = "材料用量制定申请"; base.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 600; this.PageWidth = 750; AddListSetMap(new ListSet("XLXSBJYLZDMX", null, grdXLXSBJYLZDMX, entity.XLXSBJYLZDMX, null)); if (!IsPostBack) { InitControls(); string sKEY = ""; if (PageParam.ContainsKey("XLXSBJYLZD_SQDH")) { sKEY = PageParam.GetRTrimString("XLXSBJYLZD_SQDH"); } else { sKEY = GetSQDBHByWF(PageParam.GetRTrimString("WFID"), PageParam.GetRTrimString("WFINST")); } YZDIC = GetYZDic(sKEY); dicYZMC = XLBJDUtils.GetALLYZIDDic(); } else { YZDIC = GetYZDic(txtSQDH.Text.Trim()); } //权限控制 bool p_CanInsert = false; bool p_CanEdit = false; bool p_CanDelete = false; bool p_CanPrint = false; CurSession.GetRights(this.UMID, out p_CanInsert, out p_CanEdit, out p_CanDelete, out p_CanPrint); if (p_CanEdit) { entity.XLXSBJYLZDMX.CurUserId = CurSession.UserId; } base.InitPage(); grdXLXSBJYLZDMX.EnabledToolBar = false; this.Master.BtnNewVisible = false; this.Master.BtnCopyVisible = false; this.WorkFlowId = _CurWorkFlow.GetWFID("XLXSBJYLZD"); if (!string.IsNullOrEmpty(txtSQDH.Text.Trim())) { InitGrid(txtSQDH.Text.Trim()); string sBZSW = TWorkflow.Utils.WFGetBZSWID("XLXSBJYLZD", _CurWorkFlow.GetWPID(this.WorkFlowId, this.WorkFlowInst)); if (sBZSW.Equals("0055") || sBZSW.Equals("0060") || sBZSW.Equals("ZZZZ")) { grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_YZZWSZ").Visible = true; string sSQL = string.Format(" select top 1 XLXSBJD_BJDID from XLXSBJYLZD " + " left join XLXSBJD on XLXSBJD_BJDID = XLXSBJYLZD_BJDID where 1=1 and XLXSBJYLZD_SQDH = '{0}' " + " and isnull(XLXSBJD_JGBID,' ')<>' ' " + " and isnull(XLXSBJD_JGBID,' ') not in (select XLXSJGB_JGBID from XLXSJGB where XLXSJGB_MXBH='JGE')", txtSQDH.Text.Trim()); if (CMISproDataBase.ExistsRecord("DBERP", sSQL)) { grdXLXSBJYLZDMX.FindColumnByFieldName("HSBJ").Visible = true; grdXLXSBJYLZDMX.FindColumnByFieldName("WSBJ").Visible = true; } } } } #region 模板继承事件 protected override void InitQueryString() { base.InitQueryString(); string sWPID = ""; string sWFID = ""; if (!IsPostBack) { string sKEY = ""; if (PageParam.ContainsKey("XLXSBJYLZD_SQDH")) { sKEY = PageParam.GetRTrimString("XLXSBJYLZD_SQDH"); } else { sKEY = GetSQDBHByWF(PageParam.GetRTrimString("WFID"), PageParam.GetRTrimString("WFINST")); } entity.KEY = sKEY; GetWFIDBySQDH(sKEY, ref sWPID, ref sWFID); entity.XLXSBJYLZDMX.sWFID = sWFID; entity.XLXSBJYLZDMX.sWPID = sWPID; entity.XLXSBJYLZDMX.IsAwaiter = IsAWAITER(sKEY); entity.XLXSBJYLZDMX.YZDIC = YZDIC; } else { entity.KEY = txtSQDH.Text.Trim(); GetWFIDBySQDH(txtSQDH.Text.Trim(), ref sWPID, ref sWFID); entity.XLXSBJYLZDMX.sWFID = sWFID; entity.XLXSBJYLZDMX.sWPID = sWPID; entity.XLXSBJYLZDMX.IsAwaiter = IsAWAITER(txtSQDH.Text.Trim()); entity.XLXSBJYLZDMX.YZDIC = YZDIC; } } protected override void LoadRecord() { base.LoadRecord(); txtLCZT.Text = this._CurWorkFlow.GetWPName(this.WorkFlowId.ToString().Trim(), txtWPID.Value.Trim()); } protected override void OnNewRecorder() { base.OnNewRecorder(); txtWPID.Value = ""; txtLCZT.Text = ""; txtFJS.Value = 0.0; txtWHR.Text = CurSession.UserName; txtWHRID.Value = CurSession.UserId; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); } protected override void OnCopyRecorder() { base.OnCopyRecorder(); txtWPID.Value = ""; txtLCZT.Text = ""; txtFJS.Value = 0.0; txtWHR.Text = CurSession.UserName; txtWHRID.Value = CurSession.UserId; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); } protected override void SetControlState() { base.SetControlState(); if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy) { _CurWorkFlow.SetFormRights(this.Page, _CurWorkFlow.GetWFID("XLXSBJYLZD"), ControlState); } lblBJDID.Enabled = true; txtSQDH.Enabled = false; txtLCZT.Enabled = false; txtWHR.Enabled = false; datWHSJ.Enabled = false; txtFJS.Enabled = false; cbxSQRGH.Enabled = false; datSQSJ.Enabled = false; txtBJDID.Enabled = false; datWCSJ.Enabled = false; cbxTXY.Enabled = false; string sBZSW = TWorkflow.Utils.WFGetBZSWID("XLXSBJYLZD", _CurWorkFlow.GetWPID(this.WorkFlowId, this.WorkFlowInst)); if (sBZSW.Equals("0030") || sBZSW.Equals("0040")) { grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_ZDRGH").ReadOnly = true; } btnJGWH.Visible = false; btnTJYZ.Visible = false; btnYZZQSTJ.Visible = false; btnJSSSHSLJ.Visible = false; if (ControlState == TControlState.ctsBrowse) { if (sBZSW.Equals("0055") || sBZSW.Equals("0060") || sBZSW.Equals("ZZZZ")) { btnTJYZ.Visible = true; btnYZZQSTJ.Visible = true; btnJSSSHSLJ.Visible = true; string sSQL = string.Format(" select top 1 XLXSBJD_BJDID from XLXSBJYLZD " + " left join XLXSBJD on XLXSBJD_BJDID = XLXSBJYLZD_BJDID where 1=1 and XLXSBJYLZD_SQDH = '{0}' " + " and isnull(XLXSBJD_JGBID,' ')<>' ' " + " and isnull(XLXSBJD_JGBID,' ') not in (select XLXSJGB_JGBID from XLXSJGB where XLXSJGB_MXBH='JGE')", txtSQDH.Text.Trim()); if (CMISproDataBase.ExistsRecord("DBERP", sSQL)) { btnJGWH.Visible = true; } } } if (!sBZSW.Equals("0020")) btnPLSZZDR.Visible = false; string sCLYLZJFS = string.Empty; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860014); if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_CLYLZJFS)) sCLYLZJFS = pzxx.XLXSBJPZ_CLYLZJFS; if (sCLYLZJFS.Equals("4")) btnPLSZXDBZ.Visible = false; btnPLSZZDR.Enabled = ControlState == TControlState.ctsBrowse && Master.CanEdit; btnPLSZXDBZ.Enabled = ControlState == TControlState.ctsBrowse && Master.CanEdit; btnYZZQSTJ.Enabled = ControlState == TControlState.ctsBrowse && Master.CanEdit; btnJSSSHSLJ.Enabled = ControlState == TControlState.ctsBrowse && Master.CanEdit; if (DSActiveModule.IsActiveModule(102577006)) { grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_XDXLBZID").Visible = true; grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_BJDXDXLBZID").Visible = true; } else { grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_XDXLBZID").Visible = false; grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_BJDXDXLBZID").Visible = false; } } protected override bool Master_BeforeSaveAction(object sender, EventArgs e) { if ((ControlState == TControlState.ctsCopy) || (ControlState == TControlState.ctsInsert)) { txtSQDH.Text = CMISproDataBase.GetYWBHByNY("DBERP", "XLXSBJYLZD", "XLXSBJYLZD_SQDH", 4); } entity.KEY = this.txtSQDH.Text.Trim(); return base.Master_BeforeSaveAction(sender, e); } protected override bool DataLogicValid() { string sCLYLZJFS = string.Empty; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860014); if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_CLYLZJFS)) sCLYLZJFS = pzxx.XLXSBJPZ_CLYLZJFS; if (sCLYLZJFS.Equals("4")) return true; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); List lstXLXHID = new List(); lstXLXHID.Clear(); SQL.Clear(); SQL.Add(" select XLXHB_XLXHID from XLXHB where isnull(XLXHB_TYBZ,'N')<>'Y' order by XLXHB_XLXHID "); DataSet dsXLXHID = dberp.OpenDataSet(SQL); if (dsXLXHID.Tables[0].Rows.Count > 0) { for (int i = 0; i < dsXLXHID.Tables[0].Rows.Count; i++) { lstXLXHID.Add(dsXLXHID.Tables[0].Rows[i][0].ToString().Trim()); } } string sMsg = ""; foreach (GridViewRow row in grdXLXSBJYLZDMX.NewRows) { if (!row.Attributes["EditAction"].Equals("D")) { if (grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_BZDBZ", row).Trim() != "Y") { if (grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XLXHID", row).Trim() != "") { if (!lstXLXHID.Contains(grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XLXHID", row).Trim())) { sMsg = "显示序号为【" + grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJDMX_XSSX", row).Trim() + "】的修订型号【" + grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XLXHID", row).Trim() + "】非标准型号,请检查后重新填写!"; ShowMessage(sMsg); return false; } } } } } return base.DataLogicValid(); } protected override void SetComboxItems() { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); DataSet ds = new DataSet(); sql.Clear(); sql.Add("select RSRYJBXX_GH, RSRYJBXX_RYMC from RSRYJBXX where 1 = 1 and RSRYJBXX_GH =:pRSRYJBXX_GH"); sql.ParamByName("pRSRYJBXX_GH").Value = cbxSQRGH.SelectedValue.Trim(); ds = dberp.OpenDataSet(sql); cbxSQRGH.ClearItems(); cbxSQRGH.Items.Add(new ListItem("", "")); if (ds.Tables[0].Rows.Count > 0) { cbxSQRGH.Items.Add(new ListItem(ds.Tables[0].Rows[0][1].ToString().Trim(), ds.Tables[0].Rows[0][0].ToString().Trim())); } sql.Clear(); sql.Add("select XSY_TXY,XSY_ZJM from XSY where XSY_TXY=:pTXY "); sql.ParamByName("pTXY").Value = cbxTXY.SelectedValue.Trim(); ds = dberp.OpenDataSet(sql); cbxTXY.ClearItems(); cbxTXY.Items.Add(new ListItem("", "")); if (ds.Tables[0].Rows.Count > 0) { string sTXY = ds.Tables[0].Rows[0][0].ToString().Trim(); string sZJM = ds.Tables[0].Rows[0][1].ToString().Trim(); if (sZJM.Equals("")) sZJM = CMISproConvert.ConvertZJM(sTXY).Trim(); cbxTXY.Items.Add(new ListItem(sZJM + "|" + sTXY, sTXY)); } base.SetComboxItems(); } protected override bool Master_BeforeDeleteAction(object sender, EventArgs e) { entity.KEY = this.txtSQDH.Text.Trim(); return base.Master_BeforeDeleteAction(sender, e); } protected override bool Master_AfterSaveAction(object sender, EventArgs e) { string sWPID = ""; string sWFID = ""; GetWFIDBySQDH(this.txtSQDH.Text.Trim(), ref sWPID, ref sWFID); entity.XLXSBJYLZDMX.sWFID = sWFID; entity.XLXSBJYLZDMX.sWPID = sWPID; entity.XLXSBJYLZDMX.IsAwaiter = IsAWAITER(this.txtSQDH.Text.Trim()); entity.XLXSBJYLZDMX.KEY = this.txtSQDH.Text.Trim(); entity.XLXSBJYLZDMX.Query(); grdXLXSBJYLZDMX.DataSource = entity.XLXSBJYLZDMX.Entites; grdXLXSBJYLZDMX.DataBind(); grdXLXSBJYLZDMX.SaveDataInfo.SaveDataFlag = DSaveDataFlag.sdNormal; string sBZSW = TWorkflow.Utils.WFGetBZSWID("XLXSBJYLZD", _CurWorkFlow.GetWPID(this.WorkFlowId, this.WorkFlowInst)); if (sBZSW.Equals("0055") || sBZSW.Equals("0060") || sBZSW.Equals("ZZZZ")) { foreach (GridViewRow row in grdXLXSBJYLZDMX.NewRows) { if (row.Attributes["EditAction"].Equals("A") || row.Attributes["EditAction"].Equals("E")) { string sXLXHID = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XLXHID", row).Trim(); string sXLGGID = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XLGGID", row).Trim(); string sXLBZID = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XLBZID", row).Trim(); string sDYDJID = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_DYDJID", row).Trim(); string sBZDBZ = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_BZDBZ", row).Trim(); if (string.IsNullOrEmpty(sXLXHID) || string.IsNullOrEmpty(sXLGGID) || string.IsNullOrEmpty(sXLBZID) || string.IsNullOrEmpty(sDYDJID) || sBZDBZ == "Y") continue; string sLastJGBID = string.Empty; string sTJDH = string.Empty; foreach (string key in YZDIC.Keys) { if (!YZDIC[key].Split('|')[0].Equals(sLastJGBID)) sTJDH = grdXLXSBJYLZDMX.GetValueByFieldName(key+"_TJDH", row).Trim(); sLastJGBID = YZDIC[key].Split('|')[0]; string sTJYS = ""; if (key.StartsWith("BJ")) sTJYS = "A"; else { if (YZDIC[key].EndsWith("1")) sTJYS = "1"; else sTJYS = "8"; } string sJGBID = YZDIC[key].Split('|')[0]; string sYZID = key; double sYZZ = CMISproConvert.StrToFloat(grdXLXSBJYLZDMX.GetValueByFieldName(key, row).Trim()); if (HasCLYLZD(sTJYS, sJGBID, sXLXHID, sXLGGID, sXLBZID, sDYDJID, sYZID)) UpdateYZZ(sTJYS, sJGBID, sXLXHID, sXLGGID, sXLBZID, sDYDJID, sYZID, sYZZ,sTJDH); else InsertYZZ(sTJYS, sJGBID, sXLXHID, sXLGGID, sXLBZID, sDYDJID, sYZID, sYZZ,sTJDH); } } } LoadRecord(); RefreshForm(); SetControlState(); FormAreaUpdate(); } return base.Master_AfterSaveAction(sender, e); } protected override void BeforeAttach() { _AttDoc.WorkTableName = "XLXSBJYLZD"; _AttDoc.UpdCondition = string.Format("XLXSBJYLZD_SQDH='{0}'", txtSQDH.Text.ToString().Trim()); _AttDoc.FJSFieldName = "XLXSBJYLZD_FJS"; _AttDoc.FJSComponentName = txtFJS.ClientID; base.BeforeAttach(); } protected override void Grid_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { if (grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_ZDRGH", e.Row).Text.Trim() != "") { grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_ZDRGH", e.Row).Text = GetZDR(grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_ZDRGH", e.Row).Text); } if (grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BJDXLBZID", e.Row).Text.Trim() != "") { grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BJDXLBZID", e.Row).Text = GetXLBZMC(grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BJDXLBZID", e.Row).Text); } if (grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BJDXDXLBZID", e.Row).Text.Trim() != "") { grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BJDXDXLBZID", e.Row).Text = grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BJDXDXLBZID", e.Row).Text.Trim()+"|"+GetXLBZMC(grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BJDXDXLBZID", e.Row).Text).Trim(); } if (grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_XLBZID", e.Row).Text.Trim() != "") { grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_XLBZID", e.Row).Text = GetXLBZMC(grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_XLBZID", e.Row).Text); } if (grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_XDXLBZID", e.Row).Text.Trim() != "") { grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_XDXLBZID", e.Row).Text =grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_XDXLBZID", e.Row).Text.Trim()+"|"+ GetXLBZMC(grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_XDXLBZID", e.Row).Text).Trim(); } if (grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_YZZWSZ", e.Row).Text.Trim() != "") { string sYZZWSZ = grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_YZZWSZ", e.Row).Text.Trim(); string sYZZMC = ""; foreach (string sYZID in sYZZWSZ.Split(',')) { if (!sYZZMC.Equals("")) sYZZMC += ","; sYZZMC += dicYZMC[sYZID]; } grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_YZZWSZ", e.Row).Text = sYZZMC; } string sBZSW = TWorkflow.Utils.WFGetBZSWID("XLXSBJYLZD", _CurWorkFlow.GetWPID(this.WorkFlowId, this.WorkFlowInst)); if (sBZSW.Equals("0055") || sBZSW.Equals("0060") || sBZSW.Equals("ZZZZ")) { double dHSCLCB = CMISproConvert.StrToFloat(grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_HSCLCB", e.Row).Text.Trim(),0); if (dHSCLCB <= 0 && grdXLXSBJYLZDMX.GetCellByFieldName("XLXSBJYLZDMX_BZDBZ", e.Row).Text.Trim()!="Y") { e.Row.BackColor = System.Drawing.ColorTranslator.FromHtml("#FF6E69"); } } } base.Grid_RowDataBound(sender, e); } #endregion #region 自定义事件 private void AddColumn() { //添加需要的因子 foreach (string key in YZDIC.Keys) { //增加因子对应的调价代号栏目 gtAjaxGridViewColumn _gtAjaxGridViewColumnTJDH = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnTJDH.HeaderText = "调价代号"; _gtAjaxGridViewColumnTJDH.DataField = key + "_TJDH"; _gtAjaxGridViewColumnTJDH.Width = Unit.Pixel(80); _gtAjaxGridViewColumnTJDH.EditType = TEditType.etString; _gtAjaxGridViewColumnTJDH.Visible = false; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnTJDH); //增加因子栏目 gtAjaxGridViewColumn _gtAjaxGridViewColumnYZ= new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnYZ.HeaderText = YZDIC[key].Split('|')[1]; _gtAjaxGridViewColumnYZ.DataField = key; _gtAjaxGridViewColumnYZ.Width = Unit.Pixel(72); _gtAjaxGridViewColumnYZ.EditType = TEditType.etNumber; _gtAjaxGridViewColumnYZ.Visible = false; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnYZ); } //因子值未设置 gtAjaxGridViewColumn _gtAjaxGridViewColumnYZZQS = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnYZZQS.HeaderText = "因子值未设置"; _gtAjaxGridViewColumnYZZQS.DataField = "XLXSBJYLZDMX_YZZWSZ"; _gtAjaxGridViewColumnYZZQS.Width = Unit.Pixel(200); _gtAjaxGridViewColumnYZZQS.EditType = TEditType.etString; _gtAjaxGridViewColumnYZZQS.ReadOnly = true; _gtAjaxGridViewColumnYZZQS.Visible = false; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnYZZQS); //含税表价 gtAjaxGridViewColumn _gtAjaxGridViewColumnHSBJ = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnHSBJ.HeaderText = "含税表价"; _gtAjaxGridViewColumnHSBJ.DataField = "HSBJ"; _gtAjaxGridViewColumnHSBJ.Width = Unit.Pixel(72); _gtAjaxGridViewColumnHSBJ.EditType = TEditType.etNumber; _gtAjaxGridViewColumnHSBJ.ReadOnly = true; _gtAjaxGridViewColumnHSBJ.Visible = false; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnHSBJ); //无税表价 gtAjaxGridViewColumn _gtAjaxGridViewColumnWSBJ = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnWSBJ.HeaderText = "无税表价"; _gtAjaxGridViewColumnWSBJ.DataField = "WSBJ"; _gtAjaxGridViewColumnWSBJ.Width = Unit.Pixel(72); _gtAjaxGridViewColumnWSBJ.EditType = TEditType.etNumber; _gtAjaxGridViewColumnWSBJ.ReadOnly = true; _gtAjaxGridViewColumnWSBJ.Visible = false; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnWSBJ); gtAjaxGridViewColumn _gtAjaxGridViewColumnBZ = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnBZ.HeaderText = "备注"; _gtAjaxGridViewColumnBZ.DataField = "XLXSBJYLZDMX_BZ"; _gtAjaxGridViewColumnBZ.Width = Unit.Pixel(200); _gtAjaxGridViewColumnBZ.EditType = TEditType.etString; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnBZ); //——22 //添加维护人列 gtAjaxGridViewColumn _gtAjaxGridViewColumnWHR = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnWHR.HeaderText = "维护人"; _gtAjaxGridViewColumnWHR.DataField = "XLXSBJYLZDMX_WHR"; _gtAjaxGridViewColumnWHR.Width = Unit.Pixel(72); _gtAjaxGridViewColumnWHR.EditType = TEditType.etString; _gtAjaxGridViewColumnWHR.ReadOnly = true; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnWHR); gtAjaxGridViewColumn _gtAjaxGridViewColumnWHRID = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnWHRID.HeaderText = "维护人工号"; _gtAjaxGridViewColumnWHRID.DataField = "XLXSBJYLZDMX_WHRID"; _gtAjaxGridViewColumnWHRID.Width = Unit.Pixel(70); _gtAjaxGridViewColumnWHRID.EditType = TEditType.etString; _gtAjaxGridViewColumnWHRID.Visible = false; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnWHRID); //——23 //添加维护时间列 gtAjaxGridViewColumn _gtAjaxGridViewColumnWHSJ = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnWHSJ.HeaderText = "维护时间"; _gtAjaxGridViewColumnWHSJ.DataField = "XLXSBJYLZDMX_WHSJ"; _gtAjaxGridViewColumnWHSJ.Width = Unit.Pixel(125); _gtAjaxGridViewColumnWHSJ.EditType = TEditType.etDateTime; _gtAjaxGridViewColumnWHSJ.DateTimeEditKind = TDateTimeEditKinds.dtDateTime; _gtAjaxGridViewColumnWHSJ.ReadOnly = true; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnWHSJ); //——24 //有无清单 gtAjaxGridViewColumn _gtAjaxGridViewColumnHasCLQD = new gtAjaxGridViewColumn(); _gtAjaxGridViewColumnHasCLQD.HeaderText = "有无清单"; _gtAjaxGridViewColumnHasCLQD.DataField = "HasCLQD"; _gtAjaxGridViewColumnHasCLQD.Width = Unit.Pixel(72); _gtAjaxGridViewColumnHasCLQD.EditType = TEditType.etString; _gtAjaxGridViewColumnHasCLQD.Visible = false; grdXLXSBJYLZDMX.Columns.Add(_gtAjaxGridViewColumnHasCLQD); } private void InitControls() { } private void WFAfterAction(TWorkflow Sender) { txtWFID.Value = Sender.WFID; txtWFINST.Value = Sender.WFInst.ToString(); txtLCZT.Text = _CurWorkFlow.GetWPName(txtWFID.Value, _CurWorkFlow.GetWPID(txtWFID.Value, double.Parse(txtWFINST.Value))); } private string GetSQDBHByWF(string sWFID, string sWFINST) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add("select XLXSBJYLZD_SQDH from XLXSBJYLZD"); sql.Add("where XLXSBJYLZD_WFID = :pWFID"); sql.Add(" and XLXSBJYLZD_WFINST = :pWFINST"); sql.ParamByName("pWFID").Value = sWFID; sql.ParamByName("pWFINST").Value = sWFINST; DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { return ds.Tables[0].Rows[0][0].ToString().Trim(); } else { return ""; } } private void GetWFIDBySQDH(string sSQDH, ref string sWPID, ref string sWFID) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add("select XLXSBJYLZD_WFID,XLXSBJYLZD_WPID from XLXSBJYLZD"); sql.Add("where XLXSBJYLZD_SQDH = :pSQDH"); sql.ParamByName("pSQDH").Value = sSQDH; DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { sWFID = ds.Tables[0].Rows[0][0].ToString().Trim(); sWPID = ds.Tables[0].Rows[0][1].ToString().Trim(); } } private bool IsAWAITER(string sSQDH) { bool bf = false; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add("select XLXSBJYLZD_WFAWAITER from XLXSBJYLZD"); sql.Add("where XLXSBJYLZD_SQDH = :pSQDH"); sql.ParamByName("pSQDH").Value = sSQDH; DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0][0].ToString().Trim().Contains("," + CurSession.UserId + ",")) { bf = true; } else { bf = false; } } return bf; } private void InitGrid(string sSQDH) { string sCLYLZJFS = string.Empty; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860014); if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_CLYLZJFS)) sCLYLZJFS = pzxx.XLXSBJPZ_CLYLZJFS; if (sCLYLZJFS.Equals("4")) { grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_BZDBZ").ReadOnly = true; grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_XLBZID").ReadOnly = true; grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_DYDJID").ReadOnly = true; grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_DZSC").ReadOnly = true; grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_XLXHID").ReadOnly = true; grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_XLGGID").ReadOnly = true; } AddColumn(); string sBZSW = TWorkflow.Utils.WFGetBZSWID("XLXSBJYLZD", _CurWorkFlow.GetWPID(this.WorkFlowId, this.WorkFlowInst)); if (sBZSW.Equals("0055") || sBZSW.Equals("0060") || sBZSW.Equals("ZZZZ")) { string sLastJGBID = string.Empty; foreach (string key in YZDIC.Keys) { if (!YZDIC[key].Split('|')[0].Equals(sLastJGBID)) grdXLXSBJYLZDMX.FindColumnByFieldName(key + "_TJDH").Visible = true; sLastJGBID = YZDIC[key].Split('|')[0]; grdXLXSBJYLZDMX.FindColumnByFieldName(key).HeaderText = YZDIC[key].Split('|')[1]; if (grdXLXSBJYLZDMX.FindColumnByFieldName(key).HeaderText.Length < 8) { grdXLXSBJYLZDMX.FindColumnByFieldName(key).Width = Unit.Pixel(80); } else { grdXLXSBJYLZDMX.FindColumnByFieldName(key).Width = Unit.Pixel(grdXLXSBJYLZDMX.FindColumnByFieldName(key).HeaderText.Length * 10 + 20); } if (YZDIC[key].Split('|')[2].EndsWith("(MX)") || YZDIC[key].Split('|')[2].EndsWith("(DX)")) { grdXLXSBJYLZDMX.FindColumnByFieldName(key).NumberDecimalPlace = 4; } else if (YZDIC[key].Split('|')[2].EndsWith("(JJ)"))//"加价"因子显示6位小数 { grdXLXSBJYLZDMX.FindColumnByFieldName(key).NumberDecimalPlace = 6; } else { grdXLXSBJYLZDMX.FindColumnByFieldName(key).NumberDecimalPlace = 2; } grdXLXSBJYLZDMX.FindColumnByFieldName(key).Visible = true; } grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_HSCLCB").NumberDecimalPlace = CMISproConvert.StrToInt(GetOption(100860000, "BJU002"), 2); grdXLXSBJYLZDMX.FindColumnByFieldName("XLXSBJYLZDMX_HSCLCB").Visible = true; } } private string GetZDR(string sRYGH) { string sValue = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select RSRYJBXX_GH as ID, rtrim(isnull(RSRYJBXX_PYBM,' '))||'|'||rtrim(ltrim(isnull(RSRYJBXX_RYMC,' ')))||'|'||rtrim(RSRYJBXX_GH) as CODE "); SQL.Add(" from RSRYJBXX"); SQL.Add(" where 1=1 and RSRYJBXX_GH = :pGH"); SQL.ParamByName("pGH").Value = sRYGH; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { sValue = ds.Tables[0].Rows[0][0].ToString().Trim() + "|" + ds.Tables[0].Rows[0][1].ToString().Trim(); } return sValue; } private string GetXLBZMC(string sXLBZID) { string sValue = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLBZ_XLBZID as ID,XLBZ_XLBZLXMC as CODE from XLBZ "); SQL.Add(" where 1=1 and XLBZ_XLBZID = :pXLBZID"); SQL.ParamByName("pXLBZID").Value = sXLBZID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { sValue = ds.Tables[0].Rows[0][0].ToString().Trim() + "|" + ds.Tables[0].Rows[0][1].ToString().Trim(); } return sValue; } //获取报价申请对应销售员用户 private string GetXSYYH(string sBJDID) { string sRstr = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Add(string.Format("select XSY_GH from XLXSBJD left join XSY on XSY_TXY = XLXSBJD_TXY where XLXSBJD_BJDID = '{0}' ", sBJDID)); DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { sRstr = ds.Tables[0].Rows[0]["XSY_GH"].ToString().Trim(); } return sRstr; } //是否有100232002模块新建权限 private bool CheckYJXJ(string sGH) { UserRight UR = OpRightUtils.GetUserRight(sGH, 100232002); return (DSActiveModule.IsActiveModule(100232002) && UR.Insert); } //根据待处理人、已处理人、明细制定人整合抄送人 private string GetDefaultCopyFor(string sSJR, string sCSR,string sAWAITER,string sHANDLER) { foreach (GridViewRow row in grdXLXSBJYLZDMX.NewRows) { string tZDR = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_ZDRGH", row).Trim(); if (!("," + sSJR + ",").Contains("," + tZDR + ",") && !("," + sCSR + ",").Contains("," + tZDR + ",") && !tZDR.Equals(CurSession.UserId) && !tZDR.Trim().Equals("")) { if (!sCSR.Equals("")) sCSR += ","; sCSR += tZDR; } } sAWAITER = (sAWAITER.TrimStart(',').TrimEnd(',')); foreach (string tempAWAITER in sAWAITER.Split(',')) { if (!("," + sSJR + ",").Contains("," + tempAWAITER + ",") && !("," + sCSR + ",").Contains("," + tempAWAITER + ",") && !tempAWAITER.Equals(CurSession.UserId) && !tempAWAITER.Trim().Equals("")) { if (!sCSR.Equals("")) sCSR += ","; sCSR += tempAWAITER; } } sHANDLER = (sHANDLER.TrimStart(',').TrimEnd(',')); foreach (string tempHANDLER in sHANDLER.Split(',')) { if (!("," + sSJR + ",").Contains("," + tempHANDLER + ",") && !("," + sCSR + ",").Contains("," + tempHANDLER + ",") && !tempHANDLER.Equals(CurSession.UserId) && !tempHANDLER.Trim().Equals("")) { if (!sCSR.Equals("")) sCSR += ","; sCSR += tempHANDLER; } } return sCSR; } //能否打开价格表明细页面 private bool IFOpenJGBMX(string sSQDH, string sXH) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLXSBJYLZDMX_XLXHID,XLXSBJYLZDMX_XLGGID,XLXSBJYLZDMX_XLBZID,XLXSBJYLZDMX_DYDJID "); SQL.Add("from XLXSBJYLZDMX "); SQL.Add("where 1=1 "); SQL.Add("and XLXSBJYLZDMX_SQDH = :pSQDH "); SQL.Add("and XLXSBJYLZDMX_XH = :pXH "); SQL.ParamByName("pSQDH").Value = sSQDH; SQL.ParamByName("pXH").Value = sXH; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { string XLXSBJYLZDMX_XLXHID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLXHID"].ToString().Trim(); string XLXSBJYLZDMX_XLGGID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLGGID"].ToString().Trim(); string XLXSBJYLZDMX_XLBZID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLBZID"].ToString().Trim(); string XLXSBJYLZDMX_DYDJID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_DYDJID"].ToString().Trim(); if (XLXSBJYLZDMX_XLXHID.Equals("") || XLXSBJYLZDMX_XLGGID.Equals("") || XLXSBJYLZDMX_XLBZID.Equals("") || XLXSBJYLZDMX_DYDJID.Equals("")) { return false; } } else { return false; } return true; } //调用“100860001|线缆销售报价价格表”编辑页面处于新建状态 private void OpenInsJGBMX(string sMXBH, string sJGBID, string sCPMLLX, string sTJYS, string sBJLY, string sJJLY, string sXLXHID, string sXLGGID, string sXLBZID, string sDYDJID) { TPageParams pageParams = new TPageParams(); pageParams.CallAction = TPageCallAction.pcaInsert; pageParams.UrlPath = "XLJGB_JGBMXInfo.aspx"; pageParams.AddString("MXBH", sMXBH); pageParams.AddString("XLXSJGBMX_JGBID", sJGBID); pageParams.AddString("CPMLLX", sCPMLLX); pageParams.AddString("TJYS", sTJYS); pageParams.AddString("BJLY", sBJLY); pageParams.AddString("JJLY", sJJLY); pageParams.AddString("FromXLXSBJYLZDMX", "FromXLXSBJYLZDMX"); pageParams.AddString("XLXSBJYLZDMX_XLXHID", sXLXHID); pageParams.AddString("XLXSBJYLZDMX_XLGGID", sXLGGID); pageParams.AddString("XLXSBJYLZDMX_XLBZID", sXLBZID); pageParams.AddString("XLXSBJYLZDMX_DYDJID", sDYDJID); pageParams.AddString("txtTypeClientID", txtType.ClientID); //打开价格表明细页面前判断是否已经到达了明细上/下限 string sBord = ""; if (grdXLXSBJYLZDMX.SelectedIndex == 0) { sBord += "PB"; } if (grdXLXSBJYLZDMX.SelectedIndex == grdXLXSBJYLZDMX.RowCount - 1) { sBord += "NB"; } pageParams.AddString("Bord", sBord); OpenFuncModuleDialog(100860001, pageParams, btnReLoad.ClientID); } private string GetBJDIDBySQDH(string sSQDH) { string sBJDID = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Add("select XLXSBJYLZD_BJDID from XLXSBJYLZD where XLXSBJYLZD_SQDH=:pSQDH"); SQL.ParamByName("pSQDH").Value = sSQDH; DataSet ds = dberp.OpenDataSet(SQL); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { sBJDID = ds.Tables[0].Rows[i]["XLXSBJYLZD_BJDID"].ToString().Trim(); } return sBJDID; } //从表记录根据参数加载标准 private string GetXLBZXX(string sXLBZID) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select rtrim(XLBZ_XLBZID)||'|'||rtrim(XLBZ_XLBZID)||'|'||rtrim(XLBZ_XLBZLXMC) as XLBZ_XLBZID from XLBZ where XLBZ_XLBZID= :pXLBZID "); SQL.ParamByName("pXLBZID").Value = sXLBZID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { return ds.Tables[0].Rows[0][0].ToString().Trim(); } else return ""; } private Dictionary GetYZDic(string sSQDH) { string sJGBID = ""; string sJGCIDS = ""; string sBJFLID = ""; Dictionary res = new Dictionary(); TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XLXSJGB_JGBID,XLXSJGB_JGCIDS,XLXSJGB_BJLY,XLXSBJD_BJFLID from XLXSBJYLZD "); SQL.Add(" left join XLXSBJD on XLXSBJD_BJDID = XLXSBJYLZD_BJDID "); SQL.Add(" left join XLXSJGB on XLXSJGB_JGBID = XLXSBJD_JGBID "); SQL.Add(" where XLXSBJYLZD_SQDH = :pSQDH "); //SQL.Add(" and XLXSJGB_MXBH = 'JGB' "); SQL.ParamByName("pSQDH").Value = sSQDH; DataSet dsZD = dberp.OpenDataSet(SQL); if (dsZD.Tables[0].Rows.Count > 0) { sJGBID = dsZD.Tables[0].Rows[0]["XLXSJGB_JGBID"].ToString().Trim(); sJGCIDS = dsZD.Tables[0].Rows[0]["XLXSJGB_JGCIDS"].ToString().Trim(); sBJFLID = dsZD.Tables[0].Rows[0]["XLXSBJD_BJFLID"].ToString().Trim(); } SQL.Clear(); SQL.Add(@"select XLXSTZYZ_YZID,XLXSTZYZ_YZMC,XLXSTZYZ_JGBID,XLXSTZYZ_JJFS,XLXSTZYZ_TJYS from XLXSTZYZ where ( exists( select 1 from XLXSBJFLYZ where XLXSTZYZ_YZID=XLXSBJFLYZ_YZID and XLXSBJFLYZ_BJFLID=:pBJFLID ) or exists( select 1 from XLXSJGBYZ where XLXSTZYZ_YZID=XLXSJGBYZ_YZID "); if (sJGCIDS.Equals("")) { SQL.Add(" and XLXSJGBYZ_JGBID=:pJGBID "); SQL.ParamByName("pJGBID").Value = sJGBID; } else { SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBYZ_JGBID", sJGCIDS)); } SQL.Add(@" ) ) and( (XLXSTZYZ_TJYS='A' and XLXSTZYZ_MXBH='BJD') or (XLXSTZYZ_TJYS in('1','8') and XLXSTZYZ_MXBH='JZJ') ) order by XLXSTZYZ_MXBH,XLXSTZYZ_JGBID,XLXSTZYZ_YZID"); SQL.ParamByName("pBJFLID").Value = sBJFLID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sYZID = ds.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(); string sYZMC = ds.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim(); string sTJJGBID = ds.Tables[0].Rows[i]["XLXSTZYZ_JGBID"].ToString().Trim(); string sJJFS = ds.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim(); string sTJYS = ds.Tables[0].Rows[i]["XLXSTZYZ_TJYS"].ToString().Trim(); res[sYZID] = sTJJGBID + "|" + sYZMC + "|" + sJJFS + "|" + sTJYS; } } return res; } private void InsertYZZ(string sTJYS,string sJGBID,string sXLXHID,string sXLGGID,string sXLBZID,string sDYDJID,string sYZID,double dYZZ,string sTJDH) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); if(sTJYS=="A") SQL.Add(@"insert into XLXSBJDYZZA (XLXSBJDYZZA_JGBID,XLXSBJDYZZA_XLXHID,XLXSBJDYZZA_XLGGID,XLXSBJDYZZA_DYDJID,XLXSBJDYZZA_XLBZID,XLXSBJDYZZA_YZID,XLXSBJDYZZA_YZZ,XLXSBJDYZZA_TJDH,XLXSBJDYZZA_WHR,XLXSBJDYZZA_WHRID,XLXSBJDYZZA_WHSJ) values(:pJGBID,:pXLXHID,:pXLGGID,:pDYDJID,:pXLBZID,:pYZID,:pYZZ,:pTJDH,:pWHR,:pWHRID,:pWHSJ)"); else if(sTJYS=="1") SQL.Add(@"insert into XLXSJGBYZZ1 (XLXSJGBYZZ1_JGBID,XLXSJGBYZZ1_XLXHID,XLXSJGBYZZ1_XLGGID,XLXSJGBYZZ1_DYDJID,XLXSJGBYZZ1_XLBZID,XLXSJGBYZZ1_YZID,XLXSJGBYZZ1_YZZ,XLXSJGBYZZ1_TJDH,XLXSJGBYZZ1_WHR,XLXSJGBYZZ1_WHRID,XLXSJGBYZZ1_WHSJ) values(:pJGBID,:pXLXHID,:pXLGGID,:pDYDJID,:pXLBZID,:pYZID,:pYZZ,:pTJDH,:pWHR,:pWHRID,:pWHSJ)"); else if (sTJYS == "8") SQL.Add(@"insert into XLXSJGBYZZ8 (XLXSJGBYZZ8_JGBID,XLXSJGBYZZ8_XLXHID,XLXSJGBYZZ8_XLGGID,XLXSJGBYZZ8_DYDJID,XLXSJGBYZZ8_XLBZID,XLXSJGBYZZ8_YZID,XLXSJGBYZZ8_YZZ,XLXSJGBYZZ8_WHR,XLXSJGBYZZ8_WHRID,XLXSJGBYZZ8_WHSJ) values(:pJGBID,:pXLXHID,:pXLGGID,:pDYDJID,:pXLBZID,:pYZID,:pYZZ,:pWHR,:pWHRID,:pWHSJ)"); SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pXLXHID").Value = sXLXHID; SQL.ParamByName("pXLGGID").Value = sXLGGID; SQL.ParamByName("pXLBZID").Value = sXLBZID; SQL.ParamByName("pDYDJID").Value = sDYDJID; SQL.ParamByName("pYZID").Value = sYZID; SQL.ParamByName("pYZZ").Value = dYZZ; if (sTJYS != "8") SQL.ParamByName("pTJDH").Value = sTJDH; SQL.ParamByName("pWHR").Value = CurSession.UserName; SQL.ParamByName("pWHRID").Value = CurSession.UserId; SQL.ParamByName("pWHSJ").Value = DateTime.Now.ToString(); dberp.ExecSQL(SQL); } private void UpdateYZZ(string sTJYS, string sJGBID, string sXLXHID, string sXLGGID, string sXLBZID, string sDYDJID, string sYZID, double dYZZ,string sTJDH) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); if (sTJYS == "A") SQL.Add(@"update XLXSBJDYZZA set XLXSBJDYZZA_YZZ=:pYZZ, XLXSBJDYZZA_TJDH=:pTJDH, XLXSBJDYZZA_WHR=:pWHR, XLXSBJDYZZA_WHRID=:pWHRID, XLXSBJDYZZA_WHSJ=:pWHSJ where XLXSBJDYZZA_JGBID=:pJGBID and XLXSBJDYZZA_XLXHID=:pXLXHID and XLXSBJDYZZA_XLGGID=:pXLGGID and XLXSBJDYZZA_DYDJID=:pDYDJID and XLXSBJDYZZA_XLBZID=:pXLBZID and XLXSBJDYZZA_YZID=:pYZID"); else if (sTJYS == "1") SQL.Add(@"update XLXSJGBYZZ1 set XLXSJGBYZZ1_YZZ=:pYZZ, XLXSJGBYZZ1_TJDH=:pTJDH, XLXSJGBYZZ1_WHR=:pWHR, XLXSJGBYZZ1_WHRID=:pWHRID, XLXSJGBYZZ1_WHSJ=:pWHSJ where XLXSJGBYZZ1_JGBID=:pJGBID and XLXSJGBYZZ1_XLXHID=:pXLXHID and XLXSJGBYZZ1_XLGGID=:pXLGGID and XLXSJGBYZZ1_DYDJID=:pDYDJID and XLXSJGBYZZ1_XLBZID=:pXLBZID and XLXSJGBYZZ1_YZID=:pYZID"); else if (sTJYS == "8") SQL.Add(@"update XLXSJGBYZZ8 set XLXSJGBYZZ8_YZZ=:pYZZ, XLXSJGBYZZ8_WHR=:pWHR, XLXSJGBYZZ8_WHRID=:pWHRID, XLXSJGBYZZ8_WHSJ=:pWHSJ where XLXSJGBYZZ8_JGBID=:pJGBID and XLXSJGBYZZ8_XLXHID=:pXLXHID and XLXSJGBYZZ8_XLGGID=:pXLGGID and XLXSJGBYZZ8_DYDJID=:pDYDJID and XLXSJGBYZZ8_XLBZID=:pXLBZID and XLXSJGBYZZ8_YZID=:pYZID"); SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pXLXHID").Value = sXLXHID; SQL.ParamByName("pXLGGID").Value = sXLGGID; SQL.ParamByName("pXLBZID").Value = sXLBZID; SQL.ParamByName("pDYDJID").Value = sDYDJID; SQL.ParamByName("pYZID").Value = sYZID; SQL.ParamByName("pYZZ").Value = dYZZ; if (sTJYS != "8") SQL.ParamByName("pTJDH").Value = sTJDH; SQL.ParamByName("pWHR").Value = CurSession.UserName; SQL.ParamByName("pWHRID").Value = CurSession.UserId; SQL.ParamByName("pWHSJ").Value = DateTime.Now.ToString(); dberp.ExecSQL(SQL); } private bool HasCLYLZD(string sTJYS, string sJGBID, string sXLXHID, string sXLGGID, string sXLBZID, string sDYDJID, string sYZID) { string sSQL = ""; if(sTJYS=="A") sSQL = string.Format(@"select 1 from XLXSBJDYZZA where XLXSBJDYZZA_XLXHID = '{0}' and XLXSBJDYZZA_XLGGID = '{1}' and XLXSBJDYZZA_XLBZID = '{2}' and XLXSBJDYZZA_DYDJID ='{3}' and XLXSBJDYZZA_JGBID = '{4}' and XLXSBJDYZZA_YZID ='{5}'" , sXLXHID,sXLGGID,sXLBZID,sDYDJID,sJGBID,sYZID); else if(sTJYS=="1") sSQL = string.Format(@"select 1 from XLXSJGBYZZ1 where XLXSJGBYZZ1_XLXHID = '{0}' and XLXSJGBYZZ1_XLGGID = '{1}' and XLXSJGBYZZ1_XLBZID = '{2}' and XLXSJGBYZZ1_DYDJID ='{3}' and XLXSJGBYZZ1_JGBID = '{4}' and XLXSJGBYZZ1_YZID ='{5}'" , sXLXHID, sXLGGID, sXLBZID, sDYDJID, sJGBID, sYZID); else if (sTJYS == "8") sSQL = string.Format(@"select 1 from XLXSJGBYZZ8 where XLXSJGBYZZ8_XLXHID = '{0}' and XLXSJGBYZZ8_XLGGID = '{1}' and XLXSJGBYZZ8_XLBZID = '{2}' and XLXSJGBYZZ8_DYDJID ='{3}' and XLXSJGBYZZ8_JGBID = '{4}' and XLXSJGBYZZ8_YZID ='{5}'" , sXLXHID, sXLGGID, sXLBZID, sDYDJID, sJGBID, sYZID); return CMISproDataBase.ExistsRecord("DBERP", sSQL); } private void UpdateYZZWSZ(string sSQDH, string sJGBID, string sYZID, string sMXBH, string sTJYS) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); if (sMXBH.Equals("JZJ")) { if (sTJYS.Equals("4")) { //价格表因素4 SQL.Add("merge into XLXSBJYLZDMX tag "); SQL.Add("using ( "); SQL.Add("select XLXSBJYLZDMX_SQDH as SQDH,XLXSBJYLZDMX_XH as XH from XLXSBJYLZDMX "); SQL.Add("left join "); SQL.Add("(select XLGGB_XLGGID as XLGGID,XLGGB_XXJGID as XXJGID,XLDTJMZHB_DTJM1 as ZXJM,MIN(XLGGB_XH) as minXH "); SQL.Add("from XLGGB left join XLDTJMZHB on XLDTJMZHB_DTJMZHID=XLGGB_DTJMZHID "); SQL.Add("where 1=1 "); SQL.Add("and XLGGB_XLGGID <>' ' "); SQL.Add("group by XLGGB_XLGGID,XLGGB_XXJGID,XLDTJMZHB_DTJM1 ) tmpXLGGB on XLGGID = replace(XLXSBJYLZDMX_XLGGID , '*','×') "); SQL.Add("left join XLXSJGBYZZ4 on XLXSBJYLZDMX_XLXHID = XLXSJGBYZZ4_XLXHID "); SQL.Add("and case when isnull(XLXSJGBYZZ4_DYDJID,' ') = ' ' then XLXSBJYLZDMX_DYDJID else XLXSJGBYZZ4_DYDJID end = XLXSBJYLZDMX_DYDJID "); SQL.Add("and XLXSJGBYZZ4_ZXJMXX<=isnull(tmpXLGGB.ZXJM,0) and ((XLXSJGBYZZ4_ZXJMSX<>0 and XLXSJGBYZZ4_ZXJMSX>=isnull(tmpXLGGB.ZXJM,0)) or XLXSJGBYZZ4_ZXJMSX=0) "); SQL.Add("and case when isnull(XLXSJGBYZZ4_XXJGID,' ') = ' ' then tmpXLGGB.XXJGID else XLXSJGBYZZ4_XXJGID end = tmpXLGGB.XXJGID "); SQL.Add("and XLXSJGBYZZ4_JGBID = :pJGBID and XLXSJGBYZZ4_YZID =:pYZID "); SQL.Add("where XLXSBJYLZDMX_SQDH= :pSQDH and isnull(XLXSJGBYZZ4_YZZ,0) = 0 group by XLXSBJYLZDMX_SQDH,XLXSBJYLZDMX_XH ) sor "); SQL.Add("on (XLXSBJYLZDMX_SQDH = SQDH and XLXSBJYLZDMX_XH = XH and XLXSBJYLZDMX_SQDH = :pSQDH) "); SQL.Add("when matched then update set XLXSBJYLZDMX_YZZWSZ = rtrim(XLXSBJYLZDMX_YZZWSZ) || case when isnull(XLXSBJYLZDMX_YZZWSZ, ' ') = ' ' then '' else ',' end || '" + sYZID.Trim() + "'"); SQL.ParamByName("pSQDH").Value = sSQDH; SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pYZID").Value = sYZID; dberp.ExecSQL(SQL); } else if (sTJYS.Equals("5")) { //价格表因素5 SQL.Add("merge into XLXSBJYLZDMX tag "); SQL.Add("using ( "); SQL.Add("select XLXSBJYLZDMX_SQDH as SQDH,XLXSBJYLZDMX_XH as XH from XLXSBJYLZDMX "); SQL.Add("left join (select XLGGB_XLGGID as XLGGID,XLGGB_GGZXS as ZXS,XLDTJMZHB_DTJM1 as ZXJM,MIN(XLGGB_XH) as minXH "); SQL.Add("from XLGGB left join XLDTJMZHB on XLDTJMZHB_DTJMZHID=XLGGB_DTJMZHID "); SQL.Add("where 1=1"); SQL.Add("group by XLGGB_XLGGID,XLGGB_GGZXS,XLDTJMZHB_DTJM1 ) tmpXLGGB on XLGGID = REPLACE(XLXSBJYLZDMX_XLGGID , '*','×') "); SQL.Add("left join XLXSJGBYZZ5 on XLXSBJYLZDMX_XLXHID = XLXSJGBYZZ5_XLXHID "); SQL.Add("and case when isnull(XLXSJGBYZZ5_DYDJID,' ') = ' ' then XLXSBJYLZDMX_DYDJID else XLXSJGBYZZ5_DYDJID end = XLXSBJYLZDMX_DYDJID "); SQL.Add("and XLXSJGBYZZ5_ZXJMXX<=isnull(tmpXLGGB.ZXJM,0) and ((XLXSJGBYZZ5_ZXJMSX<>0 and XLXSJGBYZZ5_ZXJMSX>=isnull(tmpXLGGB.ZXJM,0)) or XLXSJGBYZZ5_ZXJMSX=0) "); SQL.Add("and XLXSJGBYZZ5_ZXSXX<=isnull(tmpXLGGB.ZXS,0) and ((XLXSJGBYZZ5_ZXSSX<>0 and XLXSJGBYZZ5_ZXSSX>=isnull(tmpXLGGB.ZXS,0)) or XLXSJGBYZZ5_ZXSSX=0)"); SQL.Add("and XLXSJGBYZZ5_JGBID = :pJGBID and XLXSJGBYZZ5_YZID =:pYZID "); SQL.Add("where XLXSBJYLZDMX_SQDH= :pSQDH and isnull(XLXSJGBYZZ5_YZZ,0) = 0 group by XLXSBJYLZDMX_SQDH,XLXSBJYLZDMX_XH ) sor "); SQL.Add("on (XLXSBJYLZDMX_SQDH = SQDH and XLXSBJYLZDMX_XH = XH and XLXSBJYLZDMX_SQDH = :pSQDH) "); SQL.Add("when matched then update set XLXSBJYLZDMX_YZZWSZ = rtrim(XLXSBJYLZDMX_YZZWSZ) || case when isnull(XLXSBJYLZDMX_YZZWSZ, ' ') = ' ' then '' else ',' end || '" + sYZID.Trim() + "'"); SQL.ParamByName("pSQDH").Value = sSQDH; SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pYZID").Value = sYZID; dberp.ExecSQL(SQL); } } else if (sMXBH.Equals("BJD")) { if (sTJYS.Equals("4")) { //报价单因素4 SQL.Add("merge into XLXSBJYLZDMX tag "); SQL.Add("using ( "); SQL.Add("select XLXSBJYLZDMX_SQDH as SQDH,XLXSBJYLZDMX_XH as XH from XLXSBJYLZDMX "); SQL.Add("left join XLXSBJDYZZ4 on XLXSBJYLZDMX_XLXHID = XLXSBJDYZZ4_XLXHID "); SQL.Add("and XLXSBJDYZZ4_JGBID = :pJGBID and XLXSBJDYZZ4_YZID =:pYZID "); SQL.Add("where XLXSBJYLZDMX_SQDH= :pSQDH and isnull(XLXSBJDYZZ4_YZZ,0) = 0 group by XLXSBJYLZDMX_SQDH,XLXSBJYLZDMX_XH ) sor "); SQL.Add("on (XLXSBJYLZDMX_SQDH = SQDH and XLXSBJYLZDMX_XH = XH and XLXSBJYLZDMX_SQDH = :pSQDH) "); SQL.Add("when matched then update set XLXSBJYLZDMX_YZZWSZ = rtrim(XLXSBJYLZDMX_YZZWSZ) || case when isnull(XLXSBJYLZDMX_YZZWSZ, ' ') = ' ' then '' else ',' end || '" + sYZID.Trim() + "'"); SQL.ParamByName("pSQDH").Value = sSQDH; SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pYZID").Value = sYZID; dberp.ExecSQL(SQL); } else if (sTJYS.Equals("5")) { //报价单因素5 SQL.Add("merge into XLXSBJYLZDMX tag "); SQL.Add("using ( "); SQL.Add("select XLXSBJYLZDMX_SQDH as SQDH,XLXSBJYLZDMX_XH as XH from XLXSBJYLZDMX "); SQL.Add("left join "); SQL.Add("(select XLGGB_XLGGID as XLGGID,XLDTJMZHB_DTJM1 as ZXJM,MIN(XLGGB_XH) as minXH "); SQL.Add("from XLGGB left join XLDTJMZHB on XLDTJMZHB_DTJMZHID=XLGGB_DTJMZHID "); SQL.Add("where 1=1 "); SQL.Add("and XLGGB_XLGGID <>' ' "); SQL.Add("group by XLGGB_XLGGID,XLDTJMZHB_DTJM1 ) tmpXLGGB on XLGGID = replace(XLXSBJYLZDMX_XLGGID , '*','×') "); SQL.Add("left join XLXSBJDYZZ5 on XLXSBJYLZDMX_XLXHID = XLXSBJDYZZ5_XLXHID AND XLXSBJYLZDMX_DYDJID = XLXSBJDYZZ5_DYDJID "); SQL.Add("and case when isnull(XLXSBJDYZZ5_XLBZID,' ') = ' ' then XLXSBJYLZDMX_XLBZID else XLXSBJDYZZ5_XLBZID end = XLXSBJYLZDMX_XLBZID "); SQL.Add("and XLXSBJDYZZ5_ZXJMXX<=isnull(tmpXLGGB.ZXJM,0) and ((XLXSBJDYZZ5_ZXJMSX<>0 and XLXSBJDYZZ5_ZXJMSX>=isnull(tmpXLGGB.ZXJM,0)) or XLXSBJDYZZ5_ZXJMSX=0) "); SQL.Add("and XLXSBJDYZZ5_JGBID = :pJGBID and XLXSBJDYZZ5_YZID =:pYZID "); SQL.Add("where XLXSBJYLZDMX_SQDH= :pSQDH and isnull(XLXSBJDYZZ5_YZZ,0) = 0 group by XLXSBJYLZDMX_SQDH,XLXSBJYLZDMX_XH ) sor "); SQL.Add("on (XLXSBJYLZDMX_SQDH = SQDH and XLXSBJYLZDMX_XH = XH and XLXSBJYLZDMX_SQDH = :pSQDH) "); SQL.Add("when matched then update set XLXSBJYLZDMX_YZZWSZ = rtrim(XLXSBJYLZDMX_YZZWSZ) || case when isnull(XLXSBJYLZDMX_YZZWSZ, ' ') = ' ' then '' else ',' end || '" + sYZID.Trim() + "'"); SQL.ParamByName("pSQDH").Value = sSQDH; SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pYZID").Value = sYZID; dberp.ExecSQL(SQL); } else if (sTJYS.Equals("7")) { //报价单因素7 SQL.Add("merge into XLXSBJYLZDMX tag "); SQL.Add("using ( "); SQL.Add("select XLXSBJYLZDMX_SQDH as SQDH,XLXSBJYLZDMX_XH as XH from XLXSBJYLZDMX "); SQL.Add("left join "); SQL.Add("(select XLGGB_XLGGID as XLGGID,XLGGB_XXJGID as XXJGID,XLDTJMZHB_DTJM1 as ZXJM,MIN(XLGGB_XH) as minXH "); SQL.Add("from XLGGB left join XLDTJMZHB on XLDTJMZHB_DTJMZHID=XLGGB_DTJMZHID "); SQL.Add("where 1=1 "); SQL.Add("and XLGGB_XLGGID <>' ' "); SQL.Add("group by XLGGB_XLGGID,XLGGB_XXJGID,XLDTJMZHB_DTJM1 ) tmpXLGGB on XLGGID = replace(XLXSBJYLZDMX_XLGGID , '*','×') "); SQL.Add("left join XLXSBJDYZZ7 on XLXSBJYLZDMX_XLXHID = XLXSBJDYZZ7_XLXHID "); SQL.Add("and case when isnull(XLXSBJDYZZ7_DYDJID,' ') = ' ' then XLXSBJYLZDMX_DYDJID else XLXSBJDYZZ7_DYDJID end = XLXSBJYLZDMX_DYDJID "); SQL.Add("and XLXSBJDYZZ7_ZXJMXX<=isnull(tmpXLGGB.ZXJM,0) and ((XLXSBJDYZZ7_ZXJMSX<>0 and XLXSBJDYZZ7_ZXJMSX>=isnull(tmpXLGGB.ZXJM,0)) or XLXSBJDYZZ7_ZXJMSX=0) "); SQL.Add("and case when isnull(XLXSBJDYZZ7_XXJGID,' ') = ' ' then tmpXLGGB.XXJGID else XLXSBJDYZZ7_XXJGID end = tmpXLGGB.XXJGID "); SQL.Add("and XLXSBJDYZZ7_JGBID = :pJGBID and XLXSBJDYZZ7_YZID =:pYZID "); SQL.Add("where XLXSBJYLZDMX_SQDH= :pSQDH and isnull(XLXSBJDYZZ7_YZZ,0) = 0 group by XLXSBJYLZDMX_SQDH,XLXSBJYLZDMX_XH ) sor "); SQL.Add("on (XLXSBJYLZDMX_SQDH = SQDH and XLXSBJYLZDMX_XH = XH and XLXSBJYLZDMX_SQDH = :pSQDH) "); SQL.Add("when matched then update set XLXSBJYLZDMX_YZZWSZ = rtrim(XLXSBJYLZDMX_YZZWSZ) || case when isnull(XLXSBJYLZDMX_YZZWSZ, ' ') = ' ' then '' else ',' end || '" + sYZID.Trim() + "'"); SQL.ParamByName("pSQDH").Value = sSQDH; SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pYZID").Value = sYZID; dberp.ExecSQL(SQL); } else if (sTJYS.Equals("E")) { //报价单因素E SQL.Add("merge into XLXSBJYLZDMX tag "); SQL.Add("using ( "); SQL.Add("select XLXSBJYLZDMX_SQDH as SQDH,XLXSBJYLZDMX_XH as XH from XLXSBJYLZDMX "); SQL.Add("left join "); SQL.Add("(select XLGGB_XLGGID as XLGGID,XLDTJMZHB_DTJM1 as ZXJM,MIN(XLGGB_XH) as minXH "); SQL.Add("from XLGGB left join XLDTJMZHB on XLDTJMZHB_DTJMZHID=XLGGB_DTJMZHID "); SQL.Add("where 1=1 "); SQL.Add("and XLGGB_XLGGID <>' ' "); SQL.Add("group by XLGGB_XLGGID,XLDTJMZHB_DTJM1 ) tmpXLGGB on XLGGID = replace(XLXSBJYLZDMX_XLGGID , '*','×') "); SQL.Add("left join XLXSBJDYZZE on XLXSBJYLZDMX_XLXHID = XLXSBJDYZZE_XLXHID "); SQL.Add("and case when isnull(XLXSBJDYZZE_DYDJID,' ') = ' ' then XLXSBJYLZDMX_DYDJID else XLXSBJDYZZE_DYDJID end = XLXSBJYLZDMX_DYDJID "); SQL.Add("and XLXSBJDYZZE_ZXJMXX<=isnull(tmpXLGGB.ZXJM,0) and ((XLXSBJDYZZE_ZXJMSX<>0 and XLXSBJDYZZE_ZXJMSX>=isnull(tmpXLGGB.ZXJM,0)) or XLXSBJDYZZE_ZXJMSX=0) "); SQL.Add("and XLXSBJDYZZE_JGBID = :pJGBID and XLXSBJDYZZE_YZID =:pYZID "); SQL.Add("where XLXSBJYLZDMX_SQDH= :pSQDH and isnull(XLXSBJDYZZE_YZZ,0) = 0 group by XLXSBJYLZDMX_SQDH,XLXSBJYLZDMX_XH ) sor "); SQL.Add("on (XLXSBJYLZDMX_SQDH = SQDH and XLXSBJYLZDMX_XH = XH and XLXSBJYLZDMX_SQDH = :pSQDH) "); SQL.Add("when matched then update set XLXSBJYLZDMX_YZZWSZ = rtrim(XLXSBJYLZDMX_YZZWSZ) || case when isnull(XLXSBJYLZDMX_YZZWSZ, ' ') = ' ' then '' else ',' end || '" + sYZID.Trim() + "'"); SQL.ParamByName("pSQDH").Value = sSQDH; SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pYZID").Value = sYZID; dberp.ExecSQL(SQL); } } } #endregion #region 控件事件 protected void grdXLXSBJYLZDMX_CalculateField(object sender, CalculateFieldEventArgs e) { if (e.EventFieldName.Equals("XLXSBJYLZDMX_XLXHID") || e.EventFieldName.Equals("XLXSBJYLZDMX_XLGGID") || e.EventFieldName.Equals("XLXSBJYLZDMX_XLBZID") || e.EventFieldName.Equals("XLXSBJYLZDMX_DYDJID")) { YZDIC = GetYZDic(e.MasterDataSet["txtSQDH"].Trim()); string sXLXHID = e.RowData["XLXSBJYLZDMX_XLXHID"].ToString().Trim(); string sXLGGID = e.RowData["XLXSBJYLZDMX_XLGGID"].ToString().Trim(); string sXLBZID = e.RowData["XLXSBJYLZDMX_XLBZID"].ToString().Trim().Split('|')[0]; string sDYDJID = e.RowData["XLXSBJYLZDMX_DYDJID"].ToString().Trim().Split('|')[0]; string sXDXLBZID = XLBJDUtils.GetXDXLBZID(sXLXHID, sDYDJID, sXLGGID, sXLBZID); //是否注册“102577006|按型号目录设置下单标准”模块 if (DSActiveModule.IsActiveModule(102577006) && !CMISproDataBase.ExistsRecord("DBERP", string.Format("SELECT 1 FROM XLBZ WHERE XLBZ_DZSC <> 'Y' or ( XLBZ_XLBZID in (select distinct XLXLB_XLBZID from XLXLB where isnull(XLXLB_TYBZ,'N') <> 'N' )) AND XLBZ_XLBZID='{0}' ", sXLBZID))) sXDXLBZID = ""; e.ResultPairs.Add("XLXSBJYLZDMX_XDXLBZID", GetXLBZXX(sXDXLBZID)); foreach (string key in YZDIC.Keys) { string sTJYS = ""; if (key.StartsWith("BJ")) sTJYS = "A"; else { if (YZDIC[key].EndsWith("8")) sTJYS = "8"; else sTJYS = "1"; } string sJGBID = YZDIC[key].Split('|')[0]; string sYZID = key; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); string sSQL = ""; if (sTJYS == "A") sSQL = string.Format(@"select XLXSBJDYZZA_YZZ,XLXSBJDYZZA_TJDH from XLXSBJDYZZA where XLXSBJDYZZA_XLXHID = '{0}' and XLXSBJDYZZA_XLGGID = '{1}' and XLXSBJDYZZA_XLBZID = '{2}' and XLXSBJDYZZA_DYDJID ='{3}' and XLXSBJDYZZA_JGBID = '{4}' and XLXSBJDYZZA_YZID ='{5}'" , sXLXHID, sXLGGID, sXLBZID, sDYDJID, sJGBID, sYZID); else if (sTJYS == "1") sSQL = string.Format(@"select XLXSJGBYZZ1_YZZ,XLXSJGBYZZ1_TJDH from XLXSJGBYZZ1 where XLXSJGBYZZ1_XLXHID = '{0}' and XLXSJGBYZZ1_XLGGID = '{1}' and XLXSJGBYZZ1_XLBZID = '{2}' and XLXSJGBYZZ1_DYDJID ='{3}' and XLXSJGBYZZ1_JGBID = '{4}' and XLXSJGBYZZ1_YZID ='{5}'" , sXLXHID, sXLGGID, sXLBZID, sDYDJID, sJGBID, sYZID); else if (sTJYS == "8") sSQL = string.Format(@"select XLXSJGBYZZ8_YZZ from XLXSJGBYZZ8 where XLXSJGBYZZ8_XLXHID = '{0}' and XLXSJGBYZZ8_XLGGID = '{1}' and XLXSJGBYZZ8_XLBZID = '{2}' and XLXSJGBYZZ8_DYDJID ='{3}' and XLXSJGBYZZ8_JGBID = '{4}' and XLXSJGBYZZ8_YZID ='{5}'" , sXLXHID, sXLGGID, sXLBZID, sDYDJID, sJGBID, sYZID); SQL.Add(sSQL); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { if(ds.Tables[0].Columns.Count > 1) e.ResultPairs.Add(sYZID+"_TJDH", ds.Tables[0].Rows[0][1].ToString().Trim()); e.ResultPairs.Add(sYZID, ds.Tables[0].Rows[0][0].ToString().Trim()); } else { e.ResultPairs.Add(sYZID + "_TJDH", " "); e.ResultPairs.Add(sYZID, "0"); } } } } protected void grdXLXSBJYLZDMX_OnGetDropDownColumnItems(object sender, GetDropDownColumnItemsEventArgs e) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); if (e.EventFieldName.Equals("XLXSBJYLZDMX_ZDRGH")) { string sBMIDList = ""; string sGHList = ""; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860064); if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_ZDBMIDS)) sBMIDList = pzxx.XLXSBJPZ_ZDBMIDS; if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_ZDRGHS)) sGHList = pzxx.XLXSBJPZ_ZDRGHS; SQL.Clear(); SQL.Add("select RSRYJBXX_GH as ID, rtrim(isnull(RSRYJBXX_PYBM,' '))||'|'||rtrim(ltrim(isnull(RSRYJBXX_RYMC,' ')))||'|'||rtrim(RSRYJBXX_GH) as CODE "); SQL.Add(" from RSRYJBXX "); SQL.Add(" where 1=1 "); SQL.Add(" and isnull(RSRYJBXX_TYBZ, 'N') <> 'Y'"); SQL.Add(" and isnull(RSRYJBXX_USER, 'N') = 'Y'"); if (!sBMIDList.Equals("")) { SQL.Add(" and (" + CMISproDataBase.GetWhereEqual("RSRYJBXX_RZBM",sBMIDList)); SQL.Add(" or isnull(RSRYJBXX_RZBM, ' ')=' ' )"); } if (!sGHList.Equals("")) { SQL.Add(" and " + CMISproDataBase.GetWhereEqual("RSRYJBXX_GH", sGHList)); } SQL.Add(" order by isnull(RSRYJBXX_PYBM,' '),RSRYJBXX_GH"); DataSet ds = dberp.OpenDataSet(SQL); e.DropDownItems.Clear(); if (ds.Tables[0].Rows.Count > 0) { e.DropDownItems.Add(new ListItem("", "")); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i]["CODE"].ToString().Trim(), ds.Tables[0].Rows[i]["ID"].ToString().Trim())); } } } //加载非停用XLXHB表数据供选择 //if (e.EventFieldName.Equals("XLXSBJYLZDMX_XLXHID")) //{ // SQL.Clear(); // SQL.Add(" select XLXHB_XLXHID as ID, XLXHB_XLXHID as CODE from XLXHB "); // SQL.Add(" where 1=1 and isnull(XLXHB_TYBZ, 'N') <>'Y' "); // SQL.Add("order by XLXHB_XLXHID "); // DataSet ds = dberp.OpenDataSet(SQL); // e.DropDownItems.Clear(); // if (ds.Tables[0].Rows.Count > 0) // { // e.DropDownItems.Add(new ListItem("", "")); // for (int i = 0; i < ds.Tables[0].Rows.Count; i++) // { // e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i]["CODE"].ToString().Trim(), ds.Tables[0].Rows[i]["ID"].ToString().Trim())); // } // } //} //加载XLBZ表数据供选择 if (e.EventFieldName.Equals("XLXSBJYLZDMX_XLBZID") || e.EventFieldName.Equals("XLXSBJYLZDMX_BJDXLBZID")) { SQL.Clear(); SQL.Add(" select XLBZ_XLBZID as ID,XLBZ_XLBZLXMC as CODE from XLBZ "); if (e.RowData["XLXSBJYLZDMX_DZSC"].ToString().Trim().Equals("Y")) { SQL.Add(" where 1=1 and isnull(XLBZ_DZSC,'N') = 'Y' order by XLBZ_PX,XLBZ_XLBZID"); } else { SQL.Add(" where 1=1 order by XLBZ_PX,XLBZ_XLBZID"); } DataSet ds = dberp.OpenDataSet(SQL); e.DropDownItems.Clear(); if (ds.Tables[0].Rows.Count > 0) { e.DropDownItems.Add(new ListItem("", "")); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i]["CODE"].ToString().Trim(), ds.Tables[0].Rows[i]["ID"].ToString().Trim())); } } } //加载XLBZ表数据供选择 if (e.EventFieldName.Equals("XLXSBJYLZDMX_XDXLBZID") || e.EventFieldName.Equals("XLXSBJYLZDMX_BJDXDXLBZID")) { SQL.Clear(); SQL.Add(" select XLBZ_XLBZID as ID,XLBZ_XLBZLXMC as CODE from XLBZ "); SQL.Add(" where XLBZ_DZSC <> 'Y' or ( XLBZ_XLBZID in (select distinct XLXLB_XLBZID from XLXLB where isnull(XLXLB_TYBZ,'N') <> 'N' )) order by XLBZ_PX,XLBZ_XLBZID"); DataSet ds = dberp.OpenDataSet(SQL); e.DropDownItems.Clear(); if (ds.Tables[0].Rows.Count > 0) { e.DropDownItems.Add(new ListItem("", "")); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i]["ID"].ToString().Trim()+"|"+ds.Tables[0].Rows[i]["CODE"].ToString().Trim(), ds.Tables[0].Rows[i]["ID"].ToString().Trim())); } } } //加载XLDYDJB表数据供选择 if (e.EventFieldName.Equals("XLXSBJYLZDMX_DYDJID")) { SQL.Clear(); SQL.Add(" select distinct XLDYDJB_DYDJID as ID,XLDYDJB_XH from XLDYDJB "); SQL.Add(" where isnull(XLDYDJB_TYBZ,' ')<>'Y' order by XLDYDJB_XH "); DataSet ds = dberp.OpenDataSet(SQL); e.DropDownItems.Clear(); if (ds.Tables[0].Rows.Count > 0) { e.DropDownItems.Add(new ListItem("", "")); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i]["ID"].ToString().Trim(), ds.Tables[0].Rows[i]["ID"].ToString().Trim())); } } } } protected void grdXLXSBJYLZDMX_OnAjaxGridCellDoubleClick(object sender, AjaxGridCellDoubleClickEventArgs e) { string sBJDXLXHID = ""; string sBJDXLGGID = ""; string sBJDXLBZID = ""; string sBJDDYDJID = ""; string sXLXHID = ""; string sXLGGID = ""; string sXLBZID = ""; string sDYDJID = ""; if (e.EventFieldName.ToString().Trim().Equals("XLXSBJYLZDMX_XLXHID")) { sBJDXLXHID = e.RowData["XLXSBJYLZDMX_BJDXLXHID"].ToString().Trim(); sBJDXLGGID = e.RowData["XLXSBJYLZDMX_BJDXLGGID"].ToString().Trim(); sBJDXLBZID = e.RowData["XLXSBJYLZDMX_BJDXLBZID"].ToString().Trim(); sBJDDYDJID = e.RowData["XLXSBJYLZDMX_BJDDYDJID"].ToString().Trim(); sXLXHID = e.RowData["XLXSBJYLZDMX_XLXHID"].ToString().Trim(); sXLGGID = e.RowData["XLXSBJYLZDMX_XLGGID"].ToString().Trim(); sXLBZID = e.RowData["XLXSBJYLZDMX_XLBZID"].ToString().Trim(); sDYDJID = e.RowData["XLXSBJYLZDMX_DYDJID"].ToString().Trim(); if (e.EventFieldValue.Equals("")) { e.ResultPairs.Add("XLXSBJYLZDMX_XLXHID", sBJDXLXHID); } if (sXLGGID.Equals("")) { e.ResultPairs.Add("XLXSBJYLZDMX_XLGGID", sBJDXLGGID); } if (sXLBZID.Equals("")) { e.ResultPairs.Add("XLXSBJYLZDMX_XLBZID", sBJDXLBZID); if (sBJDXLBZID.Split('|').Length > 0) sBJDXLBZID = sBJDXLBZID.Split('|')[0].Trim(); string sTmpXLXHID = sXLXHID.Equals("") ? sBJDXLXHID : sXLXHID; string sTmpXLGGID = sXLGGID.Equals("") ? sBJDXLGGID : sXLGGID; string sTmpDYDJID = sDYDJID.Equals("") ? sBJDDYDJID : sDYDJID; string sXDXLBZID = XLBJDUtils.GetXDXLBZID(sTmpXLXHID, sTmpDYDJID, sTmpXLGGID, sBJDXLBZID); //是否注册“102577006|按型号目录设置下单标准”模块 if (DSActiveModule.IsActiveModule(102577006) && !CMISproDataBase.ExistsRecord("DBERP", string.Format("SELECT 1 FROM XLBZ WHERE XLBZ_DZSC <> 'Y' or ( XLBZ_XLBZID in (select distinct XLXLB_XLBZID from XLXLB where isnull(XLXLB_TYBZ,'N') <> 'N' )) AND XLBZ_XLBZID='{0}' ", sXLBZID))) sXDXLBZID = ""; e.ResultPairs.Add("XLXSBJYLZDMX_XDXLBZID", GetXLBZXX(sXDXLBZID)); } if (sDYDJID.Equals("") || sDYDJID.Equals("|")) { e.ResultPairs.Add("XLXSBJYLZDMX_DYDJID", sBJDDYDJID); } } else if (e.EventFieldName.ToString().Trim().Equals("XLXSBJYLZDMX_XLGGID")) { sBJDXLXHID = e.RowData["XLXSBJYLZDMX_BJDXLXHID"].ToString().Trim(); sBJDXLGGID = e.RowData["XLXSBJYLZDMX_BJDXLGGID"].ToString().Trim(); sBJDXLBZID = e.RowData["XLXSBJYLZDMX_BJDXLBZID"].ToString().Trim(); sBJDDYDJID = e.RowData["XLXSBJYLZDMX_BJDDYDJID"].ToString().Trim(); sXLXHID = e.RowData["XLXSBJYLZDMX_XLXHID"].ToString().Trim(); sXLGGID = e.RowData["XLXSBJYLZDMX_XLGGID"].ToString().Trim(); sXLBZID = e.RowData["XLXSBJYLZDMX_XLBZID"].ToString().Trim(); sDYDJID = e.RowData["XLXSBJYLZDMX_DYDJID"].ToString().Trim(); if (sXLXHID.Equals("")) { e.ResultPairs.Add("XLXSBJYLZDMX_XLXHID", sBJDXLXHID); } if (e.EventFieldValue.Equals("")) { e.ResultPairs.Add("XLXSBJYLZDMX_XLGGID", sBJDXLGGID); } if (sXLBZID.Equals("")) { e.ResultPairs.Add("XLXSBJYLZDMX_XLBZID", sBJDXLBZID); if (sBJDXLBZID.Split('|').Length > 0) sBJDXLBZID = sBJDXLBZID.Split('|')[0].Trim(); string sTmpXLXHID = sXLXHID.Equals("") ? sBJDXLXHID : sXLXHID; string sTmpXLGGID = sXLGGID.Equals("") ? sBJDXLGGID : sXLGGID; string sTmpDYDJID = sDYDJID.Equals("") ? sBJDDYDJID : sDYDJID; string sXDXLBZID = XLBJDUtils.GetXDXLBZID(sTmpXLXHID, sTmpDYDJID, sTmpXLGGID, sBJDXLBZID); //是否注册“102577006|按型号目录设置下单标准”模块 if (DSActiveModule.IsActiveModule(102577006) && !CMISproDataBase.ExistsRecord("DBERP", string.Format("SELECT 1 FROM XLBZ WHERE XLBZ_DZSC <> 'Y' or ( XLBZ_XLBZID in (select distinct XLXLB_XLBZID from XLXLB where isnull(XLXLB_TYBZ,'N') <> 'N' )) AND XLBZ_XLBZID='{0}' ", sXLBZID))) sXDXLBZID = ""; e.ResultPairs.Add("XLXSBJYLZDMX_XDXLBZID", GetXLBZXX(sXDXLBZID)); } if (sDYDJID.Equals("") || sDYDJID.Equals("|")) { e.ResultPairs.Add("XLXSBJYLZDMX_DYDJID", sBJDDYDJID); } } } protected void lblBJDID_Click(object sender, EventArgs e) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLXSBJD_BJDID, XLXSBJD_WFID, XLXSBJD_WFINST, XLXSBJD_WPID, XLXSBJD_WFAWAITER, XLXSBJD_WFHANDLER, XLXSBJD_ACTNAME "); SQL.Add(" from XLXSBJD "); SQL.Add(" where 1=1 and XLXSBJD_BJDID=:pXLXSBJD_BJDID "); SQL.ParamByName("pXLXSBJD_BJDID").Value = txtBJDID.Text.Trim(); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { TPageParams pageParams = new TPageParams(); pageParams.CallAction = TPageCallAction.pcaBrowse; //列表页参数 pageParams.AddString("XLXSBJD_BJDID", ds.Tables[0].Rows[0]["XLXSBJD_BJDID"].ToString().Trim()); pageParams.AddString("WFID", ds.Tables[0].Rows[0]["XLXSBJD_WFID"].ToString().Trim()); pageParams.AddString("WFINST", ds.Tables[0].Rows[0]["XLXSBJD_WFINST"].ToString().Trim()); TWorkflow awf = new TWorkflow(CurSession, new System.Web.Caching.Cache()); awf.WFInfo(ds.Tables[0].Rows[0]["XLXSBJD_WFID"].ToString().Trim(), CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJD_WFINST"].ToString().Trim()), CurSession.UserId); int iMDID = (int)awf.WPNMDID; int bMDID = MacInfoUtils.GetBaseMdId(iMDID); if (bMDID == 100860061) pageParams.UrlPath = "XSYBJSQInfo.aspx"; else pageParams.UrlPath = "XLBJDInfo.aspx"; if (iMDID == 0) iMDID = 100860000; OpenModuleDialog(iMDID, pageParams); } else { ShowMessage("无对应的报价单记录!"); return; } } protected void btnDZBZ_Click(object sender, EventArgs e) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XLBZ_XLBZID from XLBZ where XLBZ_DZSC ='Y' "); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { TPageParams pageParams = new TPageParams(); pageParams.CallAction = TPageCallAction.pcaInsert; pageParams.UrlPath = "../Components/N_XLJC/XLDZBZInfo.aspx"; OpenFuncModuleDialog(101421011, pageParams); } else { ShowMessage("请至“101421003|线缆标准类型”模块勾选能用于定制生产的标准类型!"); return; } } //因子值未设置统计 protected void btnYZZQSTJ_Click(object sender, EventArgs e) { string sJGBID = ""; string sJGCIDS = ""; string sBJFLID = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("UPDATE XLXSBJYLZDMX SET XLXSBJYLZDMX_YZZWSZ=' ' WHERE XLXSBJYLZDMX_SQDH=:pSQDH "); SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); dberp.ExecSQL(SQL); SQL.Clear(); SQL.Add(" select XLXSJGB_JGBID,XLXSJGB_JGCIDS,XLXSJGB_BJLY,XLXSBJD_BJFLID from XLXSBJYLZD "); SQL.Add(" left join XLXSBJD on XLXSBJD_BJDID = XLXSBJYLZD_BJDID "); SQL.Add(" left join XLXSJGB on XLXSJGB_JGBID = XLXSBJD_JGBID "); SQL.Add(" where XLXSBJYLZD_SQDH = :pSQDH "); //SQL.Add(" and XLXSJGB_MXBH = 'JGB' "); SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); DataSet dsZD = dberp.OpenDataSet(SQL); if (dsZD.Tables[0].Rows.Count > 0) { sJGBID = dsZD.Tables[0].Rows[0]["XLXSJGB_JGBID"].ToString().Trim(); sJGCIDS = dsZD.Tables[0].Rows[0]["XLXSJGB_JGCIDS"].ToString().Trim(); sBJFLID = dsZD.Tables[0].Rows[0]["XLXSBJD_BJFLID"].ToString().Trim(); } SQL.Clear(); SQL.Add(@"select XLXSTZYZ_YZID,XLXSTZYZ_YZMC,XLXSTZYZ_JGBID,XLXSTZYZ_JJFS,XLXSTZYZ_TJYS,XLXSTZYZ_MXBH from XLXSTZYZ where ( exists( select 1 from XLXSBJFLYZ where XLXSTZYZ_YZID=XLXSBJFLYZ_YZID and XLXSBJFLYZ_BJFLID=:pBJFLID ) or exists( select 1 from XLXSJGBYZ where XLXSTZYZ_YZID=XLXSJGBYZ_YZID "); if(sJGCIDS.Equals("")) { SQL.Add(" and XLXSJGBYZ_JGBID=:pJGBID "); SQL.ParamByName("pJGBID").Value = sJGBID; } else { SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBYZ_JGBID",sJGCIDS)); } SQL.Add(@" ) ) and( (XLXSTZYZ_TJYS in ('4','5','7','E') and XLXSTZYZ_MXBH='BJD') or (XLXSTZYZ_TJYS in ('4','5') and XLXSTZYZ_MXBH='JZJ') ) order by XLXSTZYZ_MXBH,XLXSTZYZ_JGBID,XLXSTZYZ_YZID"); SQL.ParamByName("pBJFLID").Value = sBJFLID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { btnTJYZ.Nodes.Clear(); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sYZID = ds.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(); string sTGBID = ds.Tables[0].Rows[i]["XLXSTZYZ_JGBID"].ToString().Trim(); string sTMXBH = ds.Tables[0].Rows[i]["XLXSTZYZ_MXBH"].ToString().Trim(); string sTTJYS = ds.Tables[0].Rows[i]["XLXSTZYZ_TJYS"].ToString().Trim(); UpdateYZZWSZ(txtSQDH.Text.Trim(), sTGBID, sYZID, sTMXBH, sTTJYS); } } ShowMessage("因子值未设置情况统计完成!"); LoadRecord(); RefreshForm(); SetControlState(); SetComboxItems(); FormAreaUpdate(); } //价格维护 protected void btnJGWH_Click(object sender, EventArgs e) { if (grdXLXSBJYLZDMX.SelectedIndex < 0) { ShowMessage("请选择明细记录!"); return; } string sJGBID = ""; string sJGCIDS = ""; string curBJLY = ""; string XLXSBJYLZDMX_XLXHID = ""; string XLXSBJYLZDMX_XLGGID = ""; string XLXSBJYLZDMX_XLBZID = ""; string XLXSBJYLZDMX_DYDJID = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XLXSJGB_JGBID,XLXSJGB_JGCIDS,XLXSJGB_BJLY from XLXSBJYLZD "); SQL.Add(" left join XLXSBJD on XLXSBJD_BJDID = XLXSBJYLZD_BJDID "); SQL.Add(" left join XLXSJGB on XLXSJGB_JGBID = XLXSBJD_JGBID "); SQL.Add(" where XLXSBJYLZD_SQDH = :pSQDH "); SQL.Add(" and XLXSJGB_MXBH = 'JGB' "); SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); DataSet dsZD = dberp.OpenDataSet(SQL); if (dsZD.Tables[0].Rows.Count > 0) { sJGBID = dsZD.Tables[0].Rows[0]["XLXSJGB_JGBID"].ToString().Trim(); sJGCIDS = dsZD.Tables[0].Rows[0]["XLXSJGB_JGCIDS"].ToString().Trim(); curBJLY = dsZD.Tables[0].Rows[0]["XLXSJGB_BJLY"].ToString().Trim(); } SQL.Clear(); SQL.Add("select XLXSBJYLZDMX_XLXHID,XLXSBJYLZDMX_XLGGID,XLXSBJYLZDMX_XLBZID,XLXSBJYLZDMX_DYDJID "); SQL.Add("from XLXSBJYLZDMX "); SQL.Add("where 1=1 "); SQL.Add("and XLXSBJYLZDMX_SQDH = :pSQDH "); SQL.Add("and XLXSBJYLZDMX_XH = :pXH "); SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); SQL.ParamByName("pXH").Value = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XH", grdXLXSBJYLZDMX.SelectedIndex); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { XLXSBJYLZDMX_XLXHID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLXHID"].ToString().Trim(); XLXSBJYLZDMX_XLGGID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLGGID"].ToString().Trim(); XLXSBJYLZDMX_XLBZID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLBZID"].ToString().Trim(); XLXSBJYLZDMX_DYDJID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_DYDJID"].ToString().Trim(); if (XLXSBJYLZDMX_XLXHID.Equals("") || XLXSBJYLZDMX_XLGGID.Equals("") || XLXSBJYLZDMX_XLBZID.Equals("") || XLXSBJYLZDMX_DYDJID.Equals("")) { return; } SQL.Clear(); SQL.Add("select XLXSJGBMX_JGBID,XLXSJGBMX_XH,XLXSJGB_MXBH,XLXSCPML_CPMLLX,XLXSJGB_TJYS,XLXSJGB_BJLY,XLXSJGB_JJLY from XLXSJGBMX "); SQL.Add(" left join XLXSJGB on XLXSJGB_JGBID=XLXSJGBMX_JGBID"); SQL.Add(" left join XLXSCPML on XLXSCPML_CPMLID=XLXSJGB_CPMLID"); SQL.Add(" where 1=1"); if (!sJGCIDS.Equals("")) SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGCIDS)); else SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGBID)); SQL.Add(" and XLXSJGBMX_XLXHID=:pXLXHID and XLXSJGBMX_XLGGID=:pXLGGID and XLXSJGBMX_XLBZID=:pXLBZID and XLXSJGBMX_DYDJID=:pDYDJID"); SQL.Add(" order by XLXSJGBMX_JGBID,XLXSJGBMX_XH"); SQL.ParamByName("pXLXHID").Value = XLXSBJYLZDMX_XLXHID; SQL.ParamByName("pXLGGID").Value = XLXSBJYLZDMX_XLGGID; SQL.ParamByName("pXLBZID").Value = XLXSBJYLZDMX_XLBZID; SQL.ParamByName("pDYDJID").Value = XLXSBJYLZDMX_DYDJID; DataSet dsJGB = dberp.OpenDataSet(SQL); if (dsJGB.Tables[0].Rows.Count > 0) { TPageParams pageParams = new TPageParams(); pageParams.CallAction = TPageCallAction.pcaBrowse; pageParams.UrlPath = "XLJGB_JGBMXInfo.aspx"; pageParams.AddString("MXBH", dsJGB.Tables[0].Rows[0]["XLXSJGB_MXBH"].ToString().Trim()); pageParams.AddString("XLXSJGBMX_JGBID", dsJGB.Tables[0].Rows[0]["XLXSJGBMX_JGBID"].ToString().Trim()); pageParams.AddString("XLXSJGBMX_XH", dsJGB.Tables[0].Rows[0]["XLXSJGBMX_XH"].ToString().Trim()); pageParams.AddString("CPMLLX", dsJGB.Tables[0].Rows[0]["XLXSCPML_CPMLLX"].ToString().Trim()); pageParams.AddString("TJYS", dsJGB.Tables[0].Rows[0]["XLXSJGB_TJYS"].ToString().Trim()); pageParams.AddString("BJLY", dsJGB.Tables[0].Rows[0]["XLXSJGB_BJLY"].ToString().Trim()); pageParams.AddString("JJLY", dsJGB.Tables[0].Rows[0]["XLXSJGB_JJLY"].ToString().Trim()); pageParams.AddString("FromXLXSBJYLZDMX", "FromXLXSBJYLZDMX"); pageParams.AddString("XLXSBJYLZDMX_XLXHID", XLXSBJYLZDMX_XLXHID); pageParams.AddString("XLXSBJYLZDMX_XLGGID", XLXSBJYLZDMX_XLGGID); pageParams.AddString("XLXSBJYLZDMX_XLBZID", XLXSBJYLZDMX_XLBZID); pageParams.AddString("XLXSBJYLZDMX_DYDJID", XLXSBJYLZDMX_DYDJID); pageParams.AddString("txtTypeClientID", txtType.ClientID); //打开价格表明细页面前判断是否已经到达了明细上/下限 string sBord = ""; if (grdXLXSBJYLZDMX.SelectedIndex == 0) { sBord += "PB"; } if (grdXLXSBJYLZDMX.SelectedIndex == grdXLXSBJYLZDMX.RowCount - 1) { sBord += "NB"; } pageParams.AddString("Bord", sBord); OpenFuncModuleDialog(100860001, pageParams, btnReLoad.ClientID); } else { if (!curBJLY.Equals("C"))//直接打开卡片页新建 { SQL.Clear(); SQL.Add("select XLXSJGB_MXBH,XLXSCPML_CPMLLX,XLXSJGB_TJYS,XLXSJGB_BJLY,XLXSJGB_JJLY from XLXSJGB "); SQL.Add(" left join XLXSCPML on XLXSCPML_CPMLID=XLXSJGB_CPMLID"); SQL.Add(" where XLXSJGB_JGBID=:pJGBID"); SQL.ParamByName("pJGBID").Value = sJGBID; DataSet dsIns = dberp.OpenDataSet(SQL); if (dsIns.Tables[0].Rows.Count > 0) { OpenInsJGBMX(dsIns.Tables[0].Rows[0]["XLXSJGB_MXBH"].ToString().Trim(), sJGBID, dsIns.Tables[0].Rows[0]["XLXSCPML_CPMLLX"].ToString().Trim(), dsIns.Tables[0].Rows[0]["XLXSJGB_TJYS"].ToString().Trim(), dsIns.Tables[0].Rows[0]["XLXSJGB_BJLY"].ToString().Trim(), dsIns.Tables[0].Rows[0]["XLXSJGB_JJLY"].ToString().Trim(), XLXSBJYLZDMX_XLXHID, XLXSBJYLZDMX_XLGGID, XLXSBJYLZDMX_XLBZID, XLXSBJYLZDMX_DYDJID); } } else//选取“基价来源”为 A|sum(材料用量*材料价格) 的基价价格表 { SQL.Clear(); SQL.Add("select XLXSJGB_JGBID,XLXSJGB_CPMLID,XLXSJGB_MXBH,XLXSCPML_CPMLLX,XLXSJGB_TJYS,XLXSJGB_BJLY,XLXSJGB_JJLY "); SQL.Add(" from XLXSJGB "); SQL.Add(" left join XLXSCPML on XLXSCPML_CPMLID=XLXSJGB_CPMLID"); SQL.Add(" where " + CMISproDataBase.GetWhereEqual("XLXSJGB_JGBID", sJGCIDS)); SQL.Add(" and XLXSJGB_JJLY='A'"); SQL.Add(" order by XLXSJGB_JGBID"); DataSet dsJGC = dberp.OpenDataSet(SQL); if (dsJGC.Tables[0].Rows.Count > 0) { if (dsJGC.Tables[0].Rows.Count == 1) { OpenInsJGBMX(dsJGC.Tables[0].Rows[0]["XLXSJGB_MXBH"].ToString().Trim(), dsJGC.Tables[0].Rows[0]["XLXSJGB_JGBID"].ToString().Trim(), dsJGC.Tables[0].Rows[0]["XLXSCPML_CPMLLX"].ToString().Trim(), dsJGC.Tables[0].Rows[0]["XLXSJGB_TJYS"].ToString().Trim(), dsJGC.Tables[0].Rows[0]["XLXSJGB_BJLY"].ToString().Trim(), dsJGC.Tables[0].Rows[0]["XLXSJGB_JJLY"].ToString().Trim(), XLXSBJYLZDMX_XLXHID, XLXSBJYLZDMX_XLGGID, XLXSBJYLZDMX_XLBZID, XLXSBJYLZDMX_DYDJID); } else { string sJGCIDS_A = "";//用量计算类型的基价价格表 for (int i = 0; i < dsJGC.Tables[0].Rows.Count; i++) { sJGCIDS_A += dsJGC.Tables[0].Rows[i]["XLXSJGB_JGBID"].ToString().Trim() + ","; } sJGCIDS_A = sJGCIDS_A.TrimEnd(','); TPageParams pageParams = new TPageParams(); pageParams.UrlPath = "CLYLZDSQ_SelJGBInfo.aspx"; pageParams.AddString("JGCIDS_A", sJGCIDS_A); pageParams.AddString("JGCID_AClientID", txtJGCID_A.ClientID); OpenDialogClickBtn(pageParams, btnCallbackSelJGB.ClientID); } } else { ShowMessage("系统未找到材料用量计算类型的基价价格表,请检查当前报价价格表是否还未引用此类型的基价价格表!"); return; } } } } } /*******************/ //刘 //材料用量 protected void btnCLYL_Click(object sender, EventArgs e) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "CLYLList.aspx"; tpp.CallAction = TPageCallAction.pcaBrowse; tpp.AddString("XLXSBJDID", txtBJDID.Text.Trim()); tpp.AddString("SYSW", "Y"); OpenFuncModuleDialog(100860014, tpp); } //邮件通知 protected void btnYJGT_Click(object sender, EventArgs e) { if (!CheckYJXJ(CurSession.UserId)) { ShowMessage("无[100232002|邮件]模块权限,无法发送邮件通知!"); return; } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select top 1 AFID from AFFAIR "); SQL.Add(" where AFTITLE like '%线缆销售报价【" + txtBJDID.Text.Trim() + "】材料用量沟通%' and AFFOLDERID in (-2,-3) order by AFFROMTIME desc "); DataSet ds = dberp.OpenDataSet(SQL); string lastAFID = ""; if (ds.Tables[0].Rows.Count > 0) { lastAFID = ds.Tables[0].Rows[0]["AFID"].ToString().Trim(); string tAFID = ""; DateTime tAFTIME = DateTime.Now; SQL.Clear(); SQL.Add("select top 1 AFID,AFFROMTIME from AFFAIR "); SQL.Add(" where AFTITLE like '%线缆销售报价【" + txtBJDID.Text.Trim() + "】材料用量沟通%' "); SQL.Add(" and AFFOLDERID = -2 and AFTOUSRID = :pSJR order by AFFROMTIME desc "); SQL.ParamByName("pSJR").Value = CurSession.UserId; ds.Clear(); ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { tAFID = ds.Tables[0].Rows[0]["AFID"].ToString().Trim(); tAFTIME = CMISproConvert.StrToDateTime(ds.Tables[0].Rows[0]["AFFROMTIME"].ToString().Trim()); } SQL.Clear(); SQL.Add("select top 1 AFID,AFFROMTIME from AFFAIR "); SQL.Add(" where AFTITLE like '%线缆销售报价【" + txtBJDID.Text.Trim() + "】材料用量沟通%' "); SQL.Add(" and AFFOLDERID = -3 and AFFROMUSRID = :pFJR order by AFFROMTIME desc "); SQL.ParamByName("pFJR").Value = CurSession.UserId; ds.Clear(); ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { DateTime tAFTIME2 = CMISproConvert.StrToDateTime(ds.Tables[0].Rows[0]["AFFROMTIME"].ToString().Trim()); if(tAFID.Equals("")) tAFID = ds.Tables[0].Rows[0]["AFID"].ToString().Trim(); else if (tAFTIME2>tAFTIME) tAFID = ds.Tables[0].Rows[0]["AFID"].ToString().Trim(); } if (tAFID.Equals("")) { //材料用量制定工作流信息 string sWFID = this.WorkFlowId; double dWFINST = this.WorkFlowInst; TWorkflow awf = new TWorkflow(CurSession, Cache); awf.WFInfo(sWFID, dWFINST, CurSession.UserId); if (!awf.Awaiter.Contains("," + CurSession.UserId + ",") && !awf.Handler.Contains("," + CurSession.UserId + ",")) { ShowMessage("您未参与过邮件沟通,不允许查看邮件内容!"); return; } else { TPageParams pageParams = new TPageParams(); pageParams.CallAction = TPageCallAction.pcaBrowse; pageParams.UrlPath = "CLYLZDSQ_MAILInfo.aspx"; pageParams.AddString("AFID", lastAFID); OpenDialog(pageParams); } } else { TPageParams pageParams = new TPageParams(); pageParams.CallAction = TPageCallAction.pcaBrowse; pageParams.UrlPath = "../Components/N_MAIL/JSMAILVIEW.aspx"; pageParams.AddString("AFID", tAFID); OpenFuncModuleDialog(100232002, pageParams); } } else { string sBJDID = txtBJDID.Text.Trim(); //报价单工作流信息 string pWFID = ""; string pWFINST = ""; if (!string.IsNullOrEmpty(sBJDID)) { TSQL sql = new TSQL(dberp); sql.Add("select XLXSBJD_WFID,XLXSBJD_WFINST from XLXSBJD where XLXSBJD_BJDID = :pBJDID "); sql.ParamByName("pBJDID").Value = sBJDID; ds.Clear(); ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { pWFID = ds.Tables[0].Rows[0]["XLXSBJD_WFID"].ToString().Trim(); pWFINST = ds.Tables[0].Rows[0]["XLXSBJD_WFINST"].ToString().Trim(); } else { ShowMessage("未找到对应的报价单!"); return; } } else { ShowMessage("未找到对应的报价单!"); return; } string sSJR = ""; string sCSR = ""; //材料用量制定工作流信息 string sWFID = this.WorkFlowId; double dWFINST = this.WorkFlowInst; TWorkflow awf = new TWorkflow(CurSession, Cache); awf.WFInfo(sWFID, dWFINST, CurSession.UserId); //报价单工作流信息 TWorkflow awf1 = new TWorkflow(CurSession, Cache); awf1.WFInfo(pWFID, CMISproConvert.StrToFloat(pWFINST), CurSession.UserId); double dMDID = awf1.WPNMDID; if (dMDID == 100860061) { sSJR = GetXSYYH(sBJDID); sCSR = awf.Creater; } else sSJR = awf.Creater; sCSR = GetDefaultCopyFor(sSJR, sCSR, awf.Awaiter, awf.Handler); TPageParams tpp = new TPageParams(); tpp.UrlPath = "CLYL_YJGTInfo.aspx"; tpp.CallAction = TPageCallAction.pcaInsert; tpp.AddString("tmpBJDID", sBJDID); tpp.AddString("tmpWFID", pWFID); tpp.AddString("tmpWFINST", pWFINST); tpp.AddString("tmpSJR", sSJR); tpp.AddString("tmpCSR", sCSR); tpp.AddString("tmpMDID", dMDID.ToString().Trim()); OpenDialog(tpp); } } //加载上/下一条记录 protected void btnReLoad_Click(object sender, EventArgs e) { int index = grdXLXSBJYLZDMX.SelectedIndex; bool bOpen = false;//标记是否要打开价格表页面 if (txtType.Value.Equals("N")) { for (int i = index; i < grdXLXSBJYLZDMX.RowCount - 1; i++) { grdXLXSBJYLZDMX.SelectedIndex = i + 1; if (IFOpenJGBMX(txtSQDH.Text.Trim(), grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XH", grdXLXSBJYLZDMX.SelectedIndex)))//如果可以打开价格表界面则标记并退出循环 { bOpen = true; break; } } } else if (txtType.Value.Equals("P")) { for (int i = index; i > -1; i--) { grdXLXSBJYLZDMX.SelectedIndex = i - 1; if (IFOpenJGBMX(txtSQDH.Text.Trim(), grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XH", grdXLXSBJYLZDMX.SelectedIndex)))//如果可以打开价格表界面则标记并退出循环 { bOpen = true; break; } } } else return; txtType.Value = ""; FormAreaUpdate(); if (bOpen) btnJGWH_Click(null, null); } //刷新记录 protected void btnRefresh_Click(object sender, EventArgs e) { grdXLXSBJYLZDMX.CheckedRows = ""; InitQueryString(); ControlState = TControlState.ctsBrowse; LoadRecord(); RefreshForm(); SetControlState(); SetComboxItems(); MenuAreaUpdate(); FormAreaUpdate(); } protected void btnPLSZZDR_Click(object sender, EventArgs e) { string sXHList = ""; if (grdXLXSBJYLZDMX.CheckBox && !String.IsNullOrEmpty(grdXLXSBJYLZDMX.CheckedRows)) { foreach (string sIndex in grdXLXSBJYLZDMX.CheckedRows.Split(',')) { int iRowIndex = CMISproConvert.StrToInt(sIndex.Trim()); string sXH = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XH", iRowIndex); if (!sXHList.Equals("")) sXHList += ","; sXHList += sXH; } } TPageParams pageParams = new TPageParams(); pageParams.UrlPath = "CLYLZDSQ_MX_ZDRInfo.aspx"; pageParams.AddString("SQDH", txtSQDH.Text.Trim()); pageParams.AddString("XHList", sXHList); pageParams.AddString("btnRefreshClientID", btnRefresh.ClientID); OpenDialog(pageParams); } protected void btnPLSZXDBZ_Click(object sender, EventArgs e) { string sXHList = ""; if (grdXLXSBJYLZDMX.CheckBox && !String.IsNullOrEmpty(grdXLXSBJYLZDMX.CheckedRows)) { foreach (string sIndex in grdXLXSBJYLZDMX.CheckedRows.Split(',')) { int iRowIndex = CMISproConvert.StrToInt(sIndex.Trim()); string sXH = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XH", iRowIndex); if (!sXHList.Equals("")) sXHList += ","; sXHList += sXH; } } TPageParams pageParams = new TPageParams(); pageParams.UrlPath = "CLYLZDSQ_MX_XDBZInfo.aspx"; pageParams.AddString("SQDH", txtSQDH.Text.Trim()); pageParams.AddString("XHList", sXHList); pageParams.AddString("btnRefreshClientID", btnRefresh.ClientID); OpenDialog(pageParams); } //选择基价价格表后回调 protected void btnCallbackSelJGB_Click(object sender, EventArgs e) { if (txtJGCID_A.Value.Trim().Equals("")) return; string XLXSBJYLZDMX_XLXHID = ""; string XLXSBJYLZDMX_XLGGID = ""; string XLXSBJYLZDMX_XLBZID = ""; string XLXSBJYLZDMX_DYDJID = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLXSBJYLZDMX_XLXHID,XLXSBJYLZDMX_XLGGID,XLXSBJYLZDMX_XLBZID,XLXSBJYLZDMX_DYDJID "); SQL.Add("from XLXSBJYLZDMX "); SQL.Add("where 1=1 "); SQL.Add("and XLXSBJYLZDMX_SQDH = :pSQDH "); SQL.Add("and XLXSBJYLZDMX_XH = :pXH "); SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); SQL.ParamByName("pXH").Value = grdXLXSBJYLZDMX.GetValueByFieldName("XLXSBJYLZDMX_XH", grdXLXSBJYLZDMX.SelectedIndex); DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { XLXSBJYLZDMX_XLXHID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLXHID"].ToString().Trim(); XLXSBJYLZDMX_XLGGID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLGGID"].ToString().Trim(); XLXSBJYLZDMX_XLBZID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_XLBZID"].ToString().Trim(); XLXSBJYLZDMX_DYDJID = ds.Tables[0].Rows[0]["XLXSBJYLZDMX_DYDJID"].ToString().Trim(); SQL.Clear(); SQL.Add("select XLXSJGB_MXBH,XLXSCPML_CPMLLX,XLXSJGB_TJYS,XLXSJGB_BJLY,XLXSJGB_JJLY from XLXSJGB "); SQL.Add(" left join XLXSCPML on XLXSCPML_CPMLID=XLXSJGB_CPMLID"); SQL.Add(" where XLXSJGB_JGBID=:pJGBID"); SQL.ParamByName("pJGBID").Value = txtJGCID_A.Value.Trim(); DataSet dsIns = dberp.OpenDataSet(SQL); if (dsIns.Tables[0].Rows.Count > 0) { OpenInsJGBMX(dsIns.Tables[0].Rows[0]["XLXSJGB_MXBH"].ToString().Trim(), txtJGCID_A.Value.Trim(), dsIns.Tables[0].Rows[0]["XLXSCPML_CPMLLX"].ToString().Trim(), dsIns.Tables[0].Rows[0]["XLXSJGB_TJYS"].ToString().Trim(), dsIns.Tables[0].Rows[0]["XLXSJGB_BJLY"].ToString().Trim(), dsIns.Tables[0].Rows[0]["XLXSJGB_JJLY"].ToString().Trim(), XLXSBJYLZDMX_XLXHID, XLXSBJYLZDMX_XLGGID, XLXSBJYLZDMX_XLBZID, XLXSBJYLZDMX_DYDJID); } } } protected void btnTJYZ_DropDown(object sender, EventArgs e) { string sJGBID = ""; string sJGCIDS = ""; string sBJFLID = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XLXSJGB_JGBID,XLXSJGB_JGCIDS,XLXSJGB_BJLY,XLXSBJD_BJFLID from XLXSBJYLZD "); SQL.Add(" left join XLXSBJD on XLXSBJD_BJDID = XLXSBJYLZD_BJDID "); SQL.Add(" left join XLXSJGB on XLXSJGB_JGBID = XLXSBJD_JGBID "); SQL.Add(" where XLXSBJYLZD_SQDH = :pSQDH "); //SQL.Add(" and XLXSJGB_MXBH = 'JGB' "); SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); DataSet dsZD = dberp.OpenDataSet(SQL); if (dsZD.Tables[0].Rows.Count > 0) { sJGBID = dsZD.Tables[0].Rows[0]["XLXSJGB_JGBID"].ToString().Trim(); sJGCIDS = dsZD.Tables[0].Rows[0]["XLXSJGB_JGCIDS"].ToString().Trim(); sBJFLID = dsZD.Tables[0].Rows[0]["XLXSBJD_BJFLID"].ToString().Trim(); } SQL.Clear(); SQL.Add(@"select XLXSTZYZ_YZID,XLXSTZYZ_YZMC,XLXSTZYZ_JGBID,XLXSTZYZ_JJFS,XLXSTZYZ_TJYS,XLXSTZYZ_MXBH from XLXSTZYZ where ( exists( select 1 from XLXSBJFLYZ where XLXSTZYZ_YZID=XLXSBJFLYZ_YZID and XLXSBJFLYZ_BJFLID=:pBJFLID ) or exists( select 1 from XLXSJGBYZ where XLXSTZYZ_YZID=XLXSJGBYZ_YZID "); if(sJGCIDS.Equals("")) { SQL.Add(" and XLXSJGBYZ_JGBID=:pJGBID "); SQL.ParamByName("pJGBID").Value = sJGBID; } else { SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBYZ_JGBID",sJGCIDS)); } SQL.Add(@" ) ) and( (XLXSTZYZ_TJYS in ('4','5','7','A','E') and XLXSTZYZ_MXBH='BJD') or (XLXSTZYZ_TJYS in ('1','4','5','8') and XLXSTZYZ_MXBH='JZJ') ) order by XLXSTZYZ_MXBH,XLXSTZYZ_JGBID,XLXSTZYZ_YZID"); SQL.ParamByName("pBJFLID").Value = sBJFLID; string sLastMXBH=""; string sLastJGBID = ""; string sID = ""; string sMC = ""; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { btnTJYZ.Nodes.Clear(); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sYZID = ds.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(); string sYZMC = ds.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim(); string sTJYS = ds.Tables[0].Rows[i]["XLXSTZYZ_TJYS"].ToString().Trim(); string sTJJGBID = ds.Tables[0].Rows[i]["XLXSTZYZ_JGBID"].ToString().Trim(); string sMXBH = ds.Tables[0].Rows[i]["XLXSTZYZ_MXBH"].ToString().Trim(); string sJJFS = ds.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim(); if (i == 0) { sID = sMXBH + "," + sTJJGBID + "," + sTJYS + "|" + sYZID; sMC = sYZMC; sLastMXBH = sMXBH; sLastJGBID = sTJJGBID; continue; } if (sLastJGBID.Equals(sTJJGBID) && sLastMXBH.Equals(sMXBH)) { sMC += "、" + sYZMC; sID += "," + sYZID; } else { btnTJYZ.Nodes.Add(new gtTreeNode(sID, sMC)); sID = sMXBH + "," + sTJJGBID + "," + sTJYS + "|" + sYZID; sMC = sYZMC; sLastMXBH = sMXBH; sLastJGBID = sTJJGBID; } } btnTJYZ.Nodes.Add(new gtTreeNode(sID, sMC)); MenuAreaUpdate(); } } protected void btnTJYZ_MenuItemClick(object sender, string sValue) { string sTJYZID = sValue.Split('|')[1]; string sTJXX = sValue.Split('|')[0]; string sTJYS = sTJXX.Split(',')[2]; string sJGBID = sTJXX.Split(',')[1]; string sMXBH = sTJXX.Split(',')[0]; string sSQDH = txtSQDH.Text.Trim(); TPageParams tpp = new TPageParams(); if(sMXBH=="BJD"){ switch (sTJYS) { case "4": tpp.UrlPath = "TZYZBJ4List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860028, tpp, btnRefresh.ClientID); break; case "5": tpp.UrlPath = "TZYZBJ5List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860029, tpp, btnRefresh.ClientID); break; case "7": tpp.UrlPath = "TZYZBJ7List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860031, tpp, btnRefresh.ClientID); break; case "A": tpp.UrlPath = "TZYZBJAList.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860041, tpp, btnRefresh.ClientID); break; case "E": tpp.UrlPath = "TZYZBJEList.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860086, tpp, btnRefresh.ClientID); break; } } else if (sMXBH == "JZJ") { switch (sTJYS) { case "1": tpp.UrlPath = "CLQDYZList.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860017, tpp, btnRefresh.ClientID); break; case "4": tpp.UrlPath = "TZYZJJ4List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860047, tpp, btnRefresh.ClientID); break; case "5": tpp.UrlPath = "TZYZJJ5List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860058, tpp, btnRefresh.ClientID); break; case "8": tpp.UrlPath = "TZYZJJ8List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); tpp.AddString("SQDH", sSQDH); OpenFuncModuleDialog(100860096, tpp, btnRefresh.ClientID); break; } } } protected void btnJSSSHSLJ_Click(object sender, EventArgs e) { DateTime TimeStamp = MISproUtils.GetServerTime(); int VnewID = CMISproDataBase.GetMaxXH("DBERP", "V_XLXSCLQDCB", "V_XLXSCLQDCB_ID", "") + 1; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(@"insert into V_XLXSCLQDCB(V_XLXSCLQDCB_ID,V_XLXSCLQDCB_TIMESTAMP,V_XLXSCLQDCB_XLXHID,V_XLXSCLQDCB_XLGGID,V_XLXSCLQDCB_XLBZID,V_XLXSCLQDCB_DYDJID) select distinct :pID,:pTIME,XLXSBJYLZDMX_XLXHID,XLXSBJYLZDMX_XLGGID,XLXSBJYLZDMX_XLBZID,XLXSBJYLZDMX_DYDJID from XLXSBJYLZDMX where XLXSBJYLZDMX_SQDH=:pSQDH and isnull(XLXSBJYLZDMX_BZDBZ,' ')<>'Y' "); SQL.ParamByName("pID").Value=VnewID; SQL.ParamByName("pTIME").Value=TimeStamp; SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); dberp.ExecSQL(SQL); dberp.BeginTrans(); try { N_PUBLIC2.XLBJCLUtils.CalcXLXSCLQDCB(dberp, SQL, VnewID); SQL.Clear(); SQL.Add(@"merge into XLXSBJYLZDMX tar using V_XLXSCLQDCB sor on( XLXSBJYLZDMX_XLXHID=V_XLXSCLQDCB_XLXHID and XLXSBJYLZDMX_XLGGID=V_XLXSCLQDCB_XLGGID and XLXSBJYLZDMX_XLBZID=V_XLXSCLQDCB_XLBZID and XLXSBJYLZDMX_DYDJID=V_XLXSCLQDCB_DYDJID and V_XLXSCLQDCB_ID=:pID and V_XLXSCLQDCB_TIMESTAMP=:pTIME and XLXSBJYLZDMX_SQDH=:pSQDH and isnull(XLXSBJYLZDMX_BZDBZ,' ')<>'Y' ) when matched then update set XLXSBJYLZDMX_WSCLCB=V_XLXSCLQDCB_WSCLCB,XLXSBJYLZDMX_HSCLCB=V_XLXSCLQDCB_HSCLCB"); SQL.ParamByName("pID").Value = VnewID; SQL.ParamByName("pTIME").Value = TimeStamp; SQL.ParamByName("pSQDH").Value = txtSQDH.Text.Trim(); dberp.ExecSQL(SQL); dberp.CommitTrans(); ShowMessage("计算成功!"); } catch(Exception ex) { ShowMessage("计算失败,原因:"+ex.Message); dberp.RollbackTrans(); } SQL.Clear(); SQL.Add("delete from V_XLXSCLQDCB where V_XLXSCLQDCB_ID=:pID and V_XLXSCLQDCB_TIMESTAMP=:pTIME "); SQL.ParamByName("pID").Value = VnewID; SQL.ParamByName("pTIME").Value = TimeStamp; dberp.ExecSQL(SQL); btnRefresh_Click(null, null); } protected void btnCBZS_Click(object sender, EventArgs e) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "CLYLZD_CBZSList.aspx"; tpp.AddString("XLXHID", hidXLXHID.Value.Trim()); tpp.AddString("XLGGID", hidXLGGID.Value.Trim()); tpp.AddString("XLBZID", hidXLBZID.Value.Trim()); tpp.AddString("DYDJID", hidDYDJID.Value.Trim()); OpenDialog(tpp); } #endregion } }