using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Text; using System.Windows.Forms; using CoreFS.CA06; using Core.LgMes.Client.lgClassModel; using System.Reflection; using System.Collections; using Core.Mes.Client.Common; namespace Core.LgMes.Client.LgJobMgt { public partial class ucChemelEment : UserControl { private DataTable _dtCraftElement = null; // 工艺化学成分信息表 private CraftElement _tmpObjCraftEle; // 存放工艺化学成分信息的类 private CraftElement _objCraftEleBuffer; // 用于实时刷新工艺化学成分信息的缓冲区 private DataTable _dtEleStd = null; // 标准元素值表 private string strHeatNo = ""; public OpeBase ob; //所有化学元素 // "C,SI,MN,P,S,NI,CR,CU,ASN,TI,V,MO,B,W,AL,ZN,PB,SN,CA,LA,SB,CE,SE,MG,NB," // + "CD,BI,N,H,O,FE,AT,BA,BE,CS,CL,CO,DY,ER,EU,GD,GA,GE,HF,HO,IND,I,IR,KR,LI,LU,ND,NA,OS,PD,PT,K,PR,RE,RH,RB," // + "SM,SC,SR,TA,TE,TB,TM,YB,Y,ZR,ALT,ALS,ALINS,CSC,CEQ,HIC,"; private string strElementName = "C,Mn,S,P,Si,Als,Alt,N,Ti,Cr,Ni,Mo,Nb,B,V,Ca,Asn,Sn,Cu,Sb,Ceq,Cev,Pcm,O,H,";//BSOL, public ucChemelEment() { InitializeComponent(); } /// /// 生成铁水成分的表架构 /// private void GenerateTableFrame() { _dtCraftElement = new DataTable("CraftElement"); DataColumn myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "TYPESYMBOL"; myDataColumn.Caption = "项目名"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "C"; myDataColumn.Caption = "C"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Mn"; myDataColumn.Caption = "Mn"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "S"; myDataColumn.Caption = "S"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "P"; myDataColumn.Caption = "P"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Si"; myDataColumn.Caption = "Si"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Als"; myDataColumn.Caption = "Als"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Alt"; myDataColumn.Caption = "Alt"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "N"; myDataColumn.Caption = "N"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Ti"; myDataColumn.Caption = "Ti"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Cr"; myDataColumn.Caption = "Cr"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Ni"; myDataColumn.Caption = "Ni"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Mo"; myDataColumn.Caption = "Mo"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Nb"; myDataColumn.Caption = "Nb"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "B"; myDataColumn.Caption = "B"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "V"; myDataColumn.Caption = "V"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Ca"; myDataColumn.Caption = "Ca"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); //myDataColumn.ColumnName = "Asn"; // 这个地方,热轧是As,中厚板是Asn,这里导致As成分看不到 myDataColumn.ColumnName = "Asn"; // 这个地方,热轧是As,中厚板是Asn,这里导致As成分看不到 myDataColumn.Caption = "Asn"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Sn"; myDataColumn.Caption = "Sn"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Cu"; myDataColumn.Caption = "Cu"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Sb"; myDataColumn.Caption = "Sb"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Ceq"; myDataColumn.Caption = "Ceq"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Cev"; myDataColumn.Caption = "Cev"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "Pcm"; myDataColumn.Caption = "Pcm"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "O"; myDataColumn.Caption = "O"; _dtCraftElement.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "H"; myDataColumn.Caption = "H"; _dtCraftElement.Columns.Add(myDataColumn); //myDataColumn = new DataColumn(); //myDataColumn.DataType = System.Type.GetType("System.String"); //myDataColumn.ColumnName = "BSOL"; //myDataColumn.Caption = "BSOL"; //_dtCraftElement.Columns.Add(myDataColumn); //C、Si、Mn、P、S、Als、V、Nb、Ti、As、Sn、Cu、Sb、Alt、O、N、H this.ulgridElement.DataSource = _dtCraftElement; this.ulgridElement.DisplayLayout.Bands[0].Columns["TYPESYMBOL"].Width = 50; this.ulgridElement.DisplayLayout.Bands[0].Columns["TYPESYMBOL"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["C"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["C"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Si"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["Si"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Mn"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["Mn"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["P"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["P"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["S"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["S"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Als"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["Als"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["V"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["V"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Nb"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["Nb"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Cr"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["Cr"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ni"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ni"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Mo"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["Mo"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ti"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ti"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ca"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ca"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["B"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["B"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Asn"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Asn"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Sn"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Sn"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Cu"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Cu"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Sb"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Sb"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Alt"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Alt"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ceq"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ceq"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Ceq"].Hidden = true; this.ulgridElement.DisplayLayout.Bands[0].Columns["Cev"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Cev"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["Pcm"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["Pcm"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["O"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["O"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["N"].Width = 90; this.ulgridElement.DisplayLayout.Bands[0].Columns["N"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; this.ulgridElement.DisplayLayout.Bands[0].Columns["H"].Width = 54; this.ulgridElement.DisplayLayout.Bands[0].Columns["H"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; //this.ulgridElement.DisplayLayout.Bands[0].Columns["BSOL"].Width = 90; //this.ulgridElement.DisplayLayout.Bands[0].Columns["BSOL"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit; } private void ucChemelEment_Load(object sender, EventArgs e) { _tmpObjCraftEle = new CraftElement(); _objCraftEleBuffer = new CraftElement(); GenerateTableFrame(); //初始化 } /// /// 获取化学成分样 /// /// 熔炼号 /// 岗位例:C01 1#转炉 /// 样类型(1铁水、2钢水、3渣样) public void GetCraftEleInfo(string _smeltingID, string _DEVICE_POS,string _Type,string strCheckNO) { string strDevice_Pos = ""; //岗位条件 string strType = ""; //样类型条件 string strErr = ""; if (_smeltingID == "") return; strHeatNo = _smeltingID; strType = _Type; ArrayList arry = new ArrayList(); arry.Add("ReceiveCraftElement.Select");//此ID为XML文件ID arry.Add(_smeltingID); arry.Add(strType); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = ob; //查询化学成分信息 DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassCommonModule", "ReceiveCraftElement", arry, out strErr); if (strErr == "" && ds != null) { try { DataSet dsZD = GetZDElement(strCheckNO); if (dsZD != null) { if (dsZD.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows.Count== 0) { DataTable dtE = new DataTable("Table1"); DataColumn myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "ASSAYTYPECODE"; dtE.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "HEATNO"; dtE.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "C"; dtE.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "SI"; dtE.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "MN"; dtE.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "P"; dtE.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "S"; dtE.Columns.Add(myDataColumn); myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "ASN"; dtE.Columns.Add(myDataColumn); ds.Merge(dtE); } DataRow dr = ds.Tables[0].NewRow(); dr["ASSAYTYPECODE"] = dsZD.Tables[0].Rows[0]["ASSAYTYPECODE"]; dr["HEATNO"] = dsZD.Tables[0].Rows[0]["HEATNO"]; dr["C"] = dsZD.Tables[0].Rows[0]["C"]; dr["SI"] = dsZD.Tables[0].Rows[0]["SI"]; dr["MN"] = dsZD.Tables[0].Rows[0]["MN"]; dr["P"] = dsZD.Tables[0].Rows[0]["P"]; dr["S"] = dsZD.Tables[0].Rows[0]["S"]; dr["ASN"] = dsZD.Tables[0].Rows[0]["ASN"]; //dr["NI"] = dsZD.Tables[0].Rows[0]["NI"]; //dr["CU"] = dsZD.Tables[0].Rows[0]["CU"]; //dr["SN"] = dsZD.Tables[0].Rows[0]["SN"]; //dr["SB"] = dsZD.Tables[0].Rows[0]["SB"]; ////dr["Ceq"] = dsZD.Tables[0].Rows[0]["Ceq"]; ////dr["Pcm"] = dsZD.Tables[0].Rows[0]["Pcm"]; ds.Tables[0].Rows.InsertAt(dr, 0); } } } catch { } DataSetToCraftElement(ref ds, ref _tmpObjCraftEle); } //if (!this._oldSmelt.Equals(this._smeltingID)) //GetStandardElement(); // 取标准成分 } /// /// 获取铁水化学成分 /// /// private DataSet GetZDElement(string strCheckNO) { string strErr = ""; DataSet dsValue = new DataSet(); dsValue = null; ArrayList arry = new ArrayList(); arry.Add("ReceiveIronCraftElement.Select");//此ID为XML文件ID arry.Add(strCheckNO); arry.Add(strCheckNO); arry.Add(strCheckNO); arry.Add(strCheckNO); arry.Add(strCheckNO); arry.Add(strCheckNO); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = ob; //查询化学成分信息 DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassCommonModule", "ReceiveIronCraftElement", arry, out strErr); if (strErr == "" && ds != null) { dsValue = ds; //DataSetToCraftElement(ref ds, ref _tmpObjCraftEle); } return dsValue; } /// /// 填充化学成分信息界面数据 /// public void FillCraftElement() { try { lock (this) { int nRows = 0; nRows = _objCraftEleBuffer.hList.Count; //if (_dtEleStd != null && _dtEleStd.Rows.Count > 0) //{ // nRows++; //} nRows = nRows + 3; if(_objCraftEleBuffer.hList.Count>0) _dtCraftElement.Clear(); CStaticMethod.ResetTableRows(ref _dtCraftElement, nRows); int i = 2; #region " C标准" if (_dtEleStd != null && this._dtEleStd.Rows.Count > 0) { for (int j = 0; j < this._dtEleStd.Rows.Count; j++) { DataRow dr = this._dtEleStd.Rows[j]; CStaticMethod.SetStandardElemData(Convert.ToInt32(dr["STDSTYLE"].ToString())-1, dr, ref _dtCraftElement); } } i++; #endregion string strAssatypeCode=""; #region " 实时值" for (int j = 0; j < _objCraftEleBuffer.hList.Count; j++, i++) { JOB_CHEMELEMENT obj = (JOB_CHEMELEMENT)_objCraftEleBuffer.hList[j]; CStaticMethod.SetCraftElemGridData(i, obj, EmentName(obj.ASSAYTYPECODE), ref _dtCraftElement); } #endregion ulgridElement.DataBind(); ulgridElement.Rows[0].Fixed = true; ulgridElement.Rows[1].Fixed = true; ulgridElement.Rows[2].Fixed = true; ulgridElement.DisplayLayout.Bands[0].Override.FixedRowStyle = Infragistics.Win.UltraWinGrid.FixedRowStyle.Top; ulgridElement.DisplayLayout.UseFixedHeaders = true; ulgridElement.DisplayLayout.Bands[0].Columns["TYPESYMBOL"].Header.Fixed = true; ulgridElement.DisplayLayout.Bands[0].Override.FixedHeaderIndicator = Infragistics.Win.UltraWinGrid.FixedHeaderIndicator.None; proc_CompareChemEle(); } } catch (Exception ex) { string Msg = ex.Message + "FillCraftElement"; } } private void proc_CompareChemEle() //add on 2009-04-20 { try { string strElementType = "", strStdFX = "", strStdNK = "", strStdTx = "", strReal = ""; int iRetFX, iRetNK,iRetTX; Color clrOutFX = Color.Red, clrOutNK = Color.FromArgb(204, 153, 0), clrOutTx = Color.Violet, clrNormal = Color.Black; for (int i = 3; i < ulgridElement.Rows.Count; i++) { strElementType = Convert.ToString(ulgridElement.Rows[i].Cells["TYPESYMBOL"].Value); if (strElementType.Contains("TS") || strElementType.Contains("LD") || strElementType == "") { for (int j = 1; j < ulgridElement.DisplayLayout.Bands[0].Columns.Count; j++) { ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrNormal; } continue; } for (int j = 1; j < ulgridElement.DisplayLayout.Bands[0].Columns.Count; j++) { strStdNK = Convert.ToString(ulgridElement.Rows[0].Cells[j].Value); strStdFX = Convert.ToString(ulgridElement.Rows[1].Cells[j].Value); strStdTx = Convert.ToString(ulgridElement.Rows[2].Cells[j].Value); strReal = Convert.ToString(ulgridElement.Rows[i].Cells[j].Value); iRetNK = sValue(strStdNK, strReal); iRetFX = sValue(strStdFX, strReal); iRetTX = sValue(strStdTx, strReal); if (iRetFX == -1) { ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrOutFX; } else { if (iRetNK == -1) { ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrOutNK; } else if (iRetTX == -1) { ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrOutTx; } else { ulgridElement.Rows[i].Cells[j].Appearance.ForeColor = clrNormal; } } } } } catch (Exception ex) { string meg = ex.Message; } } private int sValue(string Svalue, string SCHvalue) //add on 2009-04-20 { if (SCHvalue.Length < 1) { return 0; } if (Svalue.Length > 0) { string BValue = "-1"; string EValue = "-1"; if (Svalue.IndexOf("~") > 0) { BValue = Svalue.Substring(0, Svalue.IndexOf("~")); EValue = Svalue.Substring(Svalue.IndexOf("~") + 1, Svalue.Length - Svalue.IndexOf("~") - 1); if (double.Parse(SCHvalue) >= double.Parse(BValue) && double.Parse(SCHvalue) <= double.Parse(EValue)) { return 0; //正确 } else { return -1; } } else { if (Svalue.IndexOf("≤") > -1) { EValue = Svalue.Substring(Svalue.IndexOf("≤") + 2, Svalue.Length - Svalue.IndexOf("≤") - 2); if (double.Parse(SCHvalue) <= double.Parse(EValue)) { return 0; //正确 } else { return -1; } } else { if (Svalue.IndexOf("<") > -1 && Svalue.IndexOf("=") == -1) { EValue = Svalue.Substring(Svalue.IndexOf("<") + 1, Svalue.Length - Svalue.IndexOf("<") - 1); if (double.Parse(SCHvalue) < double.Parse(EValue)) { return 0; //正确 } else { return -1; } } else { if (Svalue.IndexOf("≥") > -1) { EValue = Svalue.Substring(Svalue.IndexOf("≥") + 1, Svalue.Length - Svalue.IndexOf("≥") - 1); if (double.Parse(SCHvalue) >= double.Parse(EValue)) { return 0; //正确 } else { return -1; } } else { if (Svalue.IndexOf(">") > -1 && Svalue.IndexOf("=") == -1) { EValue = Svalue.Substring(Svalue.IndexOf(">") + 1, Svalue.Length - Svalue.IndexOf(">") - 1); if (double.Parse(SCHvalue) > double.Parse(EValue)) { return 0; //正确 } else { return -1; } } else { EValue = Svalue; try { if (double.Parse(SCHvalue) == double.Parse(EValue)) { return 0; //正确 } } catch { } return -1; } } } } } } return 0; } private string EmentName(string strAssayTypeCode) { string strName = ""; string strCode = ""; if (strAssayTypeCode.Length > 2) { strCode = strAssayTypeCode.Substring(0, 1); switch (strCode) { case "A": case "B": strName = "TS"; break; case "C": strName = "LD"; break; case "D": if (strAssayTypeCode.Substring(0, 2) == "DQ") strName = "YQ"; else if (strAssayTypeCode.Substring(0, 2) == "DH") strName = "YH"; break; case "E": strName = "LF"; break; case "F": strName = "RH"; break; case "I": strName = "VD"; break; case "G": strName = "CP"; break; default: strName = ""; break; } } return strName + strAssayTypeCode.Substring(strAssayTypeCode.Length - 1, 1); } /// /// 获取标准元素值 /// /// 钢种(暂不用) /// 虚拟炉号 public void GetStandardElement(string strHeatID) { try { string strErr = ""; if (strHeatID == "") return; ArrayList arry = new ArrayList(); arry.Add("GetJobStandardElement.Select");//此ID为XML文件ID arry.Add(strHeatID); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = ob; //查询化学成分信息 DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassCommonModule", "GetJobStandardElement", arry, out strErr); if (strErr == "" && ds != null) { _dtEleStd = ds.Tables[0]; } } catch (Exception ex) { string msg = ex.Message + "GetStandardElement"; } } /// /// 按牌号获取标准元素值 /// /// 牌号 public void GetStandardElementBySteelCode(string strSteelCode) { try { string strErr = ""; if (strSteelCode == "") return; DataSet ds = Core.LgMes.Client.lgBll.LgChemeLementMgt.LgChemeLementMgt.ReturnChemStandInfo(new ClientParamWithSqlConditionAndOpenBase(strSteelCode,this.ob)); if (ds != null) { _dtEleStd = ds.Tables[0]; } } catch (Exception ex) { string msg = ex.Message + "GetStandardElement"; } } /// /// 序列化化学成分 /// /// 作业化学成分 /// private void DataSetToCraftElement(ref DataSet ds, ref CraftElement obj) { try { obj.ClearElement(); PropertyInfo[] PropertyInfos = null; foreach (DataRow dr in ds.Tables[0].Rows) { JOB_CHEMELEMENT detail = new JOB_CHEMELEMENT(); if (PropertyInfos == null) { PropertyInfos = detail.GetType().GetProperties(); } //给各个属性赋值 foreach (PropertyInfo oPropertyInfo in PropertyInfos) { try { if (dr.Table.Columns.Contains(oPropertyInfo.Name)) { if (dr[oPropertyInfo.Name] != System.DBNull.Value) { oPropertyInfo.SetValue(detail, dr[oPropertyInfo.Name.ToString()], null); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } } obj.Add(ref detail); }//end foreach _objCraftEleBuffer.DataHarmonize(ref obj); } catch (Exception ex) { string Msg = ex.Message + "DataSetToCraftElement"; } finally { } } public void ResetData() { _tmpObjCraftEle.ClearElement(); _objCraftEleBuffer.ClearElement(); _dtCraftElement.Clear(); } private void ulgridElement_DoubleClickRow(object sender, Infragistics.Win.UltraWinGrid.DoubleClickRowEventArgs e) { frmLgEleDetail.StrT = "02"; frmLgEleDetail.StrHic = strHeatNo; string szLH = strHeatNo; if (szLH.Length < 8) return; frmLgEleDetail.strSteelCode =""; string szJYH = strHeatNo; string szEleStd = ""; //设置要获取的化学成分标准 for (int i = 5; i < ulgridElement.DisplayLayout.Bands[0].Columns.Count; i++) { if (ulgridElement.DisplayLayout.Bands[0].Columns[i].Hidden == false) { szEleStd = szEleStd + "','" + ulgridElement.DisplayLayout.Bands[0].Columns[i].Header.Caption; } } frmLgEleDetail.szEleStd = szEleStd; frmLgEleDetail Azhupi = new frmLgEleDetail(frmLgEleDetail.StrHic, frmLgEleDetail.strSteelCode, szJYH.Substring(9, 1), ob); Azhupi.ultrgridRow = ulgridElement.ActiveRow; Azhupi.ShowDialog(this); } } }