/// <summary> /// 加载方案XML文档 /// </summary> private void Load() { LstCheckPoint = new List <StPlan_WcPoint>(); clsXmlControl _XmlNode = new clsXmlControl(_FAPath); if (_XmlNode.Count() == 0) { return; } string[] _TmpArr = _XmlNode.AttributeValue("", "QSCZ", "QS", "CzWcLimit"); Qscz = _TmpArr[0]; Czqs = int.Parse(_TmpArr[1]); if (_TmpArr[2] != "") { CzWcLimit = _TmpArr[2]; } for (int _i = 1; _i < 9; _i++) //功率方向1,2,3,4,5,6,7,8 { XmlNode _Xml = _XmlNode.toXmlNode(); _Xml = clsXmlControl.FindSencetion(_Xml, clsXmlControl.XPath(string.Format("R,GLFX,{0}", _i.ToString()))); if (_Xml == null) { continue; } GlfxYj[_i - 1] = true; for (int _j = 0; _j < _Xml.ChildNodes.Count; _j++) { StPlan_WcPoint _Point = new StPlan_WcPoint(); _Point.PrjID = _Xml.ChildNodes[_j].Attributes["PrjID"].Value; _Point.PrjName = _Xml.ChildNodes[_j].Attributes["PrjName"].Value; _Point.PowerYinSu = _Xml.ChildNodes[_j].Attributes["GLYS"].Value; _Point.PowerDianLiu = _Xml.ChildNodes[_j].Attributes["xIb"].Value; if (_Xml.ChildNodes[_j].Attributes.Count > 5) { _Point.Dif_Err_Flag = int.Parse(_Xml.ChildNodes[_j].Attributes["FHC"].Value); } LstCheckPoint.Add(_Point); } } return; }
/// <summary> /// 获取误差上下限 /// </summary> /// <param name="GuichengName">规程名称</param> /// <param name="YouGong">是否有功1-有功,0-无功</param> /// <param name="Dj">等级</param> /// <param name="Hgq">互感器0-不经互感器,1-经互感器</param> /// <param name="Yj">元件</param> /// <param name="Glys">功率因素</param> /// <param name="xIb">电流倍数</param> /// <returns>数组,下标0为上线,下标1为下线</returns> public string[] getWcx(string GuichengName, int YouGong, string Dj, int Hgq, CLDC_Comm.Enum.Cus_PowerYuanJian Yj, string Glys, string xIb) { string[] _Wcx; string _YouGong = YouGong.ToString(); if (GuichengName.IndexOf("307") == -1) { _YouGong = ""; } string _Xpath = string.Format("R,Name,{0},YouGong,{1}|C,Dj,{2},Hgq,{3},Yj,{4},Glys,{5},xIb,{6}" , GuichengName , _YouGong , Dj , Hgq.ToString() , ((int)Yj).ToString() , Glys , xIb); _Xpath = clsXmlControl.XPath(_Xpath); _Wcx = _XmlNode.AttributeValue(_Xpath, "Max", "Min"); if (_Wcx[0] == null) //如果在XML文档中找不到对应误差限,就从规程中获取误差限 { string _TmpWcx = Wcx(xIb, GuichengName, Dj, Yj, Glys, Hgq == 1?true:false, YouGong == 1?true:false); _Wcx[0] = "+" + _TmpWcx; _Wcx[1] = "-" + _TmpWcx; this.SetWcx(GuichengName, YouGong, Dj, Hgq, Yj, Glys, xIb, _Wcx[0], _Wcx[1]); } return(_Wcx); }