Exemplo n.º 1
0
        /// <summary>
        /// 新增等级
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Cmb_Dj_KeyPress(object sender, KeyPressEventArgs e)
        {
            MessageBoxEx.UseSystemLocalizedString = true;
            if (e.KeyChar == '\r')
            {
                if (Cmb_Dj.Text == "--新增--")
                {
                    Cmb_Dj.SelectedIndex = 1;
                    Cmb_Dj.DropDownStyle = ComboBoxStyle.DropDownList;
                    return;
                }
                if (!CLDC_DataCore.Function.Number.IsNumeric(Cmb_Dj.Text))
                {
                    MessageBoxEx.Show(this, "对不起,你输入的等级不是一个数字,操作被取消...", "新增操作", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    Cmb_Dj.SelectedIndex = 1;
                    Cmb_Dj.DropDownStyle = ComboBoxStyle.DropDownList;
                    return;
                }

                CLDC_DataCore.DataBase.IDAndValue _NewDj = new CLDC_DataCore.DataBase.IDAndValue();
                _NewDj.id = WcLimit.InsertDjName(Cmb_Dj.Text);
                if (_NewDj.id == -1)
                {
                    Cmb_Dj.SelectedIndex = 1;
                    Cmb_Dj.DropDownStyle = ComboBoxStyle.DropDownList;
                    return;
                }
                _NewDj.Value = Cmb_Dj.Text;
                Cmb_Dj.Items.Add(_NewDj);
                Cmb_Dj.SelectedItem = _NewDj;
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 获取当前被检点的误差限
        /// </summary>
        /// <param name="WcLimitName">误差限名称</param>
        /// <param name="GuiChengName">规程名称</param>
        /// <param name="Dj">等级1.0(2.0)</param>
        /// <param name="Hgq">是否经互感器接入</param>
        public void SetWcx(string WcLimitName
                           , string GuiChengName
                           , string Dj
                           , bool Hgq)
        {
            string[] Arr_Dj = CLDC_DataCore.Function.Number.getDj(Dj);

            bool YouGong = true;

            if (((int)this.PowerFangXiang) > 2)
            {
                YouGong = false;
            }

            if (WcLimitName == "规程误差限")
            {
                string _Wcx = "";

                _Wcx = CLDC_DataCore.DataBase.clsWcLimitDataControl.Wcx(this.PowerDianLiu
                                                                        , GuiChengName
                                                                        , (int)this.PowerFangXiang > 2 ? Arr_Dj[1] : Arr_Dj[0]
                                                                        , this.PowerYuanJian, this.PowerYinSu, Hgq, YouGong);
                this.SetWcx(float.Parse(_Wcx), float.Parse(string.Format("-{0}", _Wcx)));       //设置误差限
            }
            else
            {
                CLDC_DataCore.DataBase.clsWcLimitDataControl _WcLimit = new CLDC_DataCore.DataBase.clsWcLimitDataControl();

                CLDC_DataCore.DataBase.IDAndValue   _WcLimitName  = _WcLimit.getWcLimitNameValue(WcLimitName);
                CLDC_DataCore.DataBase.IDAndValue   _GuiChengName = _WcLimit.getGuiChengValue(GuiChengName);
                CLDC_DataCore.DataBase.IDAndValue[] _DjValue      = new CLDC_DataCore.DataBase.IDAndValue[2];
                _DjValue[0] = _WcLimit.getDjValue(Arr_Dj[0]);
                _DjValue[1] = _WcLimit.getDjValue(Arr_Dj[1]);
                CLDC_DataCore.DataBase.IDAndValue _GlysValue = new CLDC_DataCore.DataBase.IDAndValue();
                CLDC_DataCore.DataBase.IDAndValue _xIbValue  = new CLDC_DataCore.DataBase.IDAndValue();

                _GlysValue.Value = this.PowerYinSu;                        //功率因素字符串
                _GlysValue.id    = long.Parse(this.PrjID.Substring(3, 2)); //ID是从prjid中的第三位起,取2位
                _xIbValue.Value  = this.PowerDianLiu;                      //电流倍数字符串
                _xIbValue.id     = long.Parse(this.PrjID.Substring(5, 2)); //ID是从PrjID中的第5位起,取2位

                string[] _Wcx = _WcLimit.GetWcx(_WcLimitName
                                                , _GuiChengName
                                                , !YouGong ? _DjValue[1] : _DjValue[0]
                                                , this.PowerYuanJian
                                                , Hgq
                                                , YouGong
                                                , _GlysValue
                                                , _xIbValue).Split('|');
                this.SetWcx(float.Parse(_Wcx[0].Replace("+", "")), float.Parse(_Wcx[1]));       //设置误差限


                _WcLimit.Close();
                _WcLimit = null;
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// 初始化ComboBoxEx
        /// </summary>
        /// <param name="Xml_Limit"></param>
        private void SetWcLimitInfo(CLDC_DataCore.DataBase.IDAndValue WcFileName)
        {
            DefaultShow = true;
            this.SetWcParmControl(true);
            #region ----------------------填充规程ComboBoxEx------------------------------------
            List <CLDC_DataCore.DataBase.IDAndValue> _GuiChengNames = WcLimit.GuiChengNames();
            Cmb_GuiCheng.Items.Clear();
            for (int i = 0; i < _GuiChengNames.Count; i++)
            {
                Cmb_GuiCheng.Items.Add(_GuiChengNames[i]);
            }
            Cmb_GuiCheng.SelectedIndex = 0;
            _GuiChengNames             = null;
            #endregion


            #region ----------------------------填充等级ComboBoxEx----------------------

            List <CLDC_DataCore.DataBase.IDAndValue> _DjStrings = WcLimit.DjNames();
            Cmb_Dj.Items.Clear();
            CLDC_DataCore.DataBase.IDAndValue _Tmp = new CLDC_DataCore.DataBase.IDAndValue();
            _Tmp.id    = -1;
            _Tmp.Value = "--新增--";
            Cmb_Dj.Items.Add(_Tmp);
            for (int i = 0; i < _DjStrings.Count; i++)
            {
                Cmb_Dj.Items.Add(_DjStrings[i]);
            }
            Cmb_Dj.SelectedIndex = 1;

            #endregion

            Cmb_Hgq.SelectedIndex = 0;

            Cmb_YouGong.SelectedIndex = 1;

            DefaultShow = false;

            ((WcLimitSetup)Tab_FA.SelectedTab.Controls[0]).SetWcx(WcFileName
                                                                  , (CLDC_DataCore.DataBase.IDAndValue)Cmb_GuiCheng.SelectedItem
                                                                  , (CLDC_DataCore.DataBase.IDAndValue)Cmb_Dj.SelectedItem
                                                                  , Cmb_Hgq.SelectedIndex == 0 ? false : true
                                                                  , Cmb_YouGong.SelectedIndex == 0 ? false : true);

            Txt_Pc.Text = WcLimit.getPcx(WcFileName, (CLDC_DataCore.DataBase.IDAndValue)Cmb_GuiCheng.SelectedItem, (CLDC_DataCore.DataBase.IDAndValue)Cmb_Dj.SelectedItem);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 设置误差限表格
        /// </summary>
        /// <param name="WcLimit">误差限数据对象</param>
        /// <param name="GuiChengName">规程名称</param>
        /// <param name="Dj">等级</param>
        /// <param name="Hgq">是否经互感器,0-不经过,1-经过</param>
        /// <param name="Yg">是否有功,0-无功,1-有功</param>
        public void SetWcx(CLDC_DataCore.DataBase.IDAndValue WcLimitName, CLDC_DataCore.DataBase.IDAndValue GuiChengName, CLDC_DataCore.DataBase.IDAndValue Dj, bool Hgq, bool Yg)
        {
            CLDC_DataCore.Function.TopWaiting.ShowWaiting();

            _WcLimitName  = WcLimitName;
            _GuiChengName = GuiChengName;
            _Dj           = Dj;
            _Hgq          = Hgq;
            _Yg           = Yg;


            DGW_WcLimit.Columns.Clear();
            DGW_WcLimit.Tag        = false;     //标志存储,在加载数据的时候不触发修改事件
            DGW_WcLimit.DataSource = _WC.getDataSource(_WcLimitName, _GuiChengName, _Dj, _Yj, _Hgq, _Yg, _Rows, _Columns);


            #region  ----------------------------固化误差限列表样式--------------------

            for (int i = 0; i < _Columns.Length; i++)
            {
                DGW_WcLimit.Columns[i].HeaderCell.Value = _Columns[i];
                DGW_WcLimit.Columns[i].Tag   = CLDC_DataCore.Const.GlobalUnit.g_SystemConfig.GlysZiDian.getGlysID(_Columns[i]);
                DGW_WcLimit.Columns[i].Width = 80;
                DGW_WcLimit.Columns[i].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                DGW_WcLimit.Columns[i].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
                DGW_WcLimit.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
            }

            for (int i = 0; i < _Rows.Length; i++)
            {
                DGW_WcLimit.RowHeadersWidth                    = 120;
                DGW_WcLimit.Rows[i].Height                     = 25;
                DGW_WcLimit.Rows[i].HeaderCell.Value           = _Rows[i].Trim().PadLeft(8, ' ');
                DGW_WcLimit.Rows[i].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight;
                DGW_WcLimit.Rows[i].Tag = CLDC_DataCore.Const.GlobalUnit.g_SystemConfig.xIbDic.getxIbID(_Rows[i]);
            }
            #endregion

            DGW_WcLimit.Tag = true;             //标志存储,在加载完成数据后触发修改事件

            CLDC_DataCore.Function.TopWaiting.HideWaiting();
        }
Exemplo n.º 5
0
        /// <summary>
        /// 修改或者新增一个内控误差限名称事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Tvw_Limit_AfterLabelEdit(object sender, NodeLabelEditEventArgs e)
        {
            MessageBoxEx.UseSystemLocalizedString = true;
            Tvw_Limit.LabelEdit = false;

            if ((e.Label == null || e.Label == "") && Tvw_Limit.Nodes[Tvw_Limit.Nodes.Count - 1].Text == "请输入新的内控误差限名称")
            {
                Tvw_Limit.Nodes.RemoveAt(Tvw_Limit.Nodes.Count - 1);
                Tvw_Limit.SelectedNode = null;
                this.SetWcParmControl(false);
                return;
            }
            if (Tvw_Limit.Nodes[Tvw_Limit.Nodes.Count - 1].Text == "请输入新的内控误差限名称")
            {
                //this.Ltv_Prj.Items.Clear();
                ////return;
            }
            //如果修改完成,进行表单创建和修改
            CLDC_DataCore.DataBase.IDAndValue _NewName = new CLDC_DataCore.DataBase.IDAndValue();
            _NewName.id = WcLimit.InsertWcLimitName(e.Label.ToString());

            if (_NewName.id == -1)      //如果ID=-1则表示写入数据库失败
            {
                MessageBoxEx.Show(this, "增加误差限失败...", "插入失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                Tvw_Limit.Nodes.RemoveAt(Tvw_Limit.Nodes.Count - 1);
                Tvw_Limit.SelectedNode = null;
                this.SetWcParmControl(false);
                return;
            }

            _NewName.Value = e.Label.ToString();

            Tvw_Limit.Nodes[Tvw_Limit.Nodes.Count - 1].Tag = _NewName;

            SetWcLimitInfo(_NewName);
            Lab_Info.Text = string.Format("内控误差限文件数量:  {0:D} 个", Tvw_Limit.Nodes.Count);
        }