コード例 #1
0
        /// <summary>
        /// Обработчик события - добавить Put-параметр
        /// </summary>
        /// <param name="obj">Объект - Put-параметр(дополнительный, в составе NAlg, элемент алгоритма расчета)</param>
        protected override void handlerDbTaskCalculate_onAddPutParameter(TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER obj)
        {
            base.handlerDbTaskCalculate_onAddPutParameter(obj);

            // добавить свойства для строки таблицы со значениями
            m_dgvValues.AddPutParameter(obj);
        }
コード例 #2
0
            /// <summary>
            /// Добавить параметр алгоритма расчета 2-го порядка
            /// </summary>
            /// <param name="putPar">Параметр алгоритма расчета 2-го порядка (связаннй с компонентом станции)</param>
            public override void AddPutParameter(TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER putPar)
            {
                base.AddPutParameter(putPar);

                if (m_dictTECComponent.ContainsKey(putPar.IdComponent) == false)
                {
                    m_dictTECComponent.Add(putPar.IdComponent, putPar.m_component);
                }
                else
                {
                    ;
                }
            }
コード例 #3
0
        /// <summary>
        /// Обработчик события - добавить Put-параметр
        /// </summary>
        /// <param name="obj">Объект - Put-параметр(дополнительный, в составе NAlg, элемент алгоритма расчета)</param>
        protected override void handlerDbTaskCalculate_onAddPutParameter(TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER obj)
        {
            base.handlerDbTaskCalculate_onAddPutParameter(obj);

            m_dgvValues.AddPutParameter(obj);
        }
コード例 #4
0
            /// <summary>
            /// Добавить параметр алгоритма расчета, связанный с компонентом станции
            ///  , добавляется только для древовидной структуры, управляющей включением/исключением из алгоритма расчета
            ///  , для визуализации простой список параметров алгоритма расчета базовых
            /// </summary>
            /// <param name="putPar">Объект с описанием добавляемого параметра</param>
            public void AddPutParameter(TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER putPar)
            {
                Control ctrl = find(INDEX_CONTROL.CLBX_COMP_CALCULATED);

                (ctrl as TreeViewTaskTepCalcParameters).AddItem(putPar.m_idNAlg, putPar.IdComponent, putPar.m_Id, putPar.NameShrComponent, putPar.IsEnabled);
            }
コード例 #5
0
        /// <summary>
        /// Обработчик события - добавить Put-параметр
        /// </summary>
        /// <param name="obj">Объект - Put-параметр(дополнительный, в составе NAlg, элемент алгоритма расчета)</param>
        protected override void handlerDbTaskCalculate_onAddPutParameter(TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER obj)
        {
            base.handlerDbTaskCalculate_onAddPutParameter(obj);

            (PanelManagement as PanelManagementTaskTepOutVal).AddPutParameter(obj);
        }
コード例 #6
0
            public override void AddColumns(List <TepCommon.HandlerDbTaskCalculate.NALG_PARAMETER> listNAlgParameter
                                            , List <TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER> listPutParameter)
            {
                DataGridViewColumn column;
                List <TepCommon.HandlerDbTaskCalculate.TECComponent> listTECComponent;

                TepCommon.HandlerDbTaskCalculate.TECComponent comp_tec;
                int beginColumnAddress = -1 // начальный индекс столбца
                                            //, countColumnBeforeAdding = -1 // количество столбцов перед добавлением
                ;
                //List<int> arColumnAddresses;
                string strFormula = string.Empty;

                // Функция поиска объекта 'PUT_PARAMETER' для его назначения в свойство 'Tag' для добавляемого столбца
                Func <HandlerDbTaskCalculate.TaskCalculate.TYPE, int, TepCommon.HandlerDbTaskCalculate.IPUT_PARAMETERChange> findPutParameterGTP = (HandlerDbTaskCalculate.TaskCalculate.TYPE type, int id) => {
                    TepCommon.HandlerDbTaskCalculate.IPUT_PARAMETERChange putRes = new TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER();

                    IEnumerable <TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER> puts;
                    TepCommon.HandlerDbTaskCalculate.NALG_PARAMETER nAlgRes = null;

                    puts = listPutParameter.Where(putPar => { return(putPar.IdComponent == id); });
                    if (puts.Count() > 0)
                    {
                        foreach (TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER putPar in puts)
                        {
                            nAlgRes = listNAlgParameter.FirstOrDefault(nAlg => { return((nAlg.m_Id == putPar.m_idNAlg) && (nAlg.m_type == type)); });

                            if (!(nAlgRes == null))
                            {
                                putRes = putPar;

                                break;
                            }
                            else
                            {
                                ;
                            }
                        }
                    }
                    else
                    {
                        // ошибка на 1-ом этапе - возвращается объект по умолчанию (IsNaN == true)
                        ;
                    }

                    return(putRes);
                };

                listTECComponent = new List <TepCommon.HandlerDbTaskCalculate.TECComponent>();

                listPutParameter.ForEach(putPar => {
                    if (listTECComponent.FindAll(comp => { return(comp.m_Id == putPar.m_component.m_Id); }).Count == 0)
                    {
                        listTECComponent.Add(putPar.m_component);
                    }
                    else
                    {
                        ;
                    }
                });
                // сортировать ГТП: сначала 1,2 затем 3-6
                listTECComponent.Sort(delegate(TepCommon.HandlerDbTaskCalculate.TECComponent comp1, TepCommon.HandlerDbTaskCalculate.TECComponent comp2) {
                    return(comp1.m_Id <comp2.m_Id ? -1
                                       : comp1.m_Id> comp2.m_Id ? 1
                            : 0);
                });
                //ГТП - Корректировка ПТО
                // начальный индекс столбца при экспорте
                beginColumnAddress = 2;
                listTECComponent.ForEach(comp => {
                    if (comp.IsGtp == true)
                    {
                        column = new DataGridViewTextBoxColumn();
                        column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                        column.Name = string.Format(@"COLUMN_CORRECT_{0}", comp.m_Id); column.HeaderText = string.Format(@"Корр-ка ПТО {0}", comp.m_nameShr);
                        column.Tag  = new COLUMN_TAG(findPutParameterGTP(HandlerDbTaskCalculate.TaskCalculate.TYPE.IN_VALUES, comp.m_Id)
                                                     , beginColumnAddress++
                                                     , false);
                        column.ReadOnly = false;
                        Columns.Add(column);
                    }
                    else
                    {
                        ;
                    }
                });
                //ГТП - Значения (без корректировки)
                listTECComponent.ForEach(comp => {
                    if (comp.IsGtp == true)
                    {
                        column = new DataGridViewTextBoxColumn();
                        column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                        column.Name       = string.Format(@"COLUMN_VALUE_{0}", comp.m_Id);
                        column.HeaderText = string.Format(@"По прибору {0}", comp.m_nameShr);
                        column.Tag        = new COLUMN_TAG(findPutParameterGTP(HandlerDbTaskCalculate.TaskCalculate.TYPE.OUT_VALUES, comp.m_Id)
                                                           , -1
                                                           , false);
                        column.Visible  = false;
                        column.ReadOnly = true;
                        Columns.Add(column);
                    }
                    else
                    {
                        ;
                    }
                });
                //ГТП - Значения по прибору учета с учетом корректрировки
                beginColumnAddress = 4;
                listTECComponent.ForEach(comp => {
                    if (comp.IsGtp == true)
                    {
                        column = new DataGridViewTextBoxColumn();
                        column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                        column.Name = string.Format(@"CORRECT_VALUE_{0}", comp.m_Id); column.HeaderText = string.Format(@"+ коррект. {0}", comp.m_nameShr);
                        column.Tag  = new COLUMN_TAG(new FormulaHelper(string.Format("COLUMN_CORRECT_{0}+COLUMN_VALUE_{0}", comp.m_Id))
                                                     , beginColumnAddress++
                                                     , false);
                        column.ReadOnly = true;
                        Columns.Add(column);
                    }
                    else
                    {
                        ;
                    }
                });
                //Станция - компонент
                beginColumnAddress = 6;
                comp_tec           = listTECComponent.Find(comp => { return(comp.IsTec); });
                //Станция - Значения - ежесуточные
                column = new DataGridViewTextBoxColumn();
                column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                column.Name       = string.Format(@"COLUMN_ST_DAY_{0}", comp_tec.m_Id);
                column.HeaderText = string.Format(@"{0} значения", comp_tec.m_nameShr);
                listTECComponent.ForEach(comp => { if (comp.IsGtp == true)
                                                   {
                                                       strFormula += string.Format(@"{0}CORRECT_VALUE_{1}", string.IsNullOrEmpty(strFormula) == true ? string.Empty : @"+", comp.m_Id);
                                                   }
                                                   else
                                                   {
                                                   } });
                column.Tag =
                    //findPutParameterGTP(HandlerDbTaskCalculate.TaskCalculate.TYPE.OUT_VALUES, comp_tec.m_Id)
                    new COLUMN_TAG(new FormulaHelper(strFormula)
                                   , beginColumnAddress
                                   , false);
                ;
                Columns.Add(column);
                //Станция - Значения - нарастающие
                beginColumnAddress = 7;
                column             = new DataGridViewTextBoxColumn();
                column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                column.Name       = string.Format(@"COLUMN_ST_SUM_{0}", comp_tec.m_Id);
                column.HeaderText = string.Format(@"{0} нараст.", comp_tec.m_nameShr);
                column.Tag        =
                    //ToolsHelper.Compiler.Compile(ToolsHelper.Parser.Parse(string.Format("INC(COLUMN_ST_DAY_{0})", comp_tec.m_Id)))
                    new COLUMN_TAG(new FormulaHelper(string.Format("SUMM({0})", string.Format(@"COLUMN_ST_DAY_{0}", comp_tec.m_Id)))
                                   , beginColumnAddress
                                   , true)
                ;
                column.ReadOnly = true;
                Columns.Add(column);
                //Станция - План - ежесуточный
                beginColumnAddress = -1;
                column             = new DataGridViewTextBoxColumn();
                column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                column.Name       = string.Format(@"COLUMN_PLAN_DAY_{0}", comp_tec.m_Id);
                column.HeaderText = string.Format(@"План сутки");
                column.Tag        = new COLUMN_TAG(findPutParameterGTP(HandlerDbTaskCalculate.TaskCalculate.TYPE.IN_VALUES, comp_tec.m_Id)
                                                   , beginColumnAddress
                                                   , false);
                column.ReadOnly = true;
                column.Visible  = false;
                Columns.Add(column);
                //Станция - План - ежесуточный - накапливаемый
                beginColumnAddress = 8;
                column             = new DataGridViewTextBoxColumn();
                column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                column.Name       = string.Format(@"COLUMN_PLAN_SUM_{0}", comp_tec.m_Id);
                column.HeaderText = string.Format(@"План нараст.");
                column.Tag        = new COLUMN_TAG(new FormulaHelper(string.Format("SUMM({0})", string.Format(@"COLUMN_PLAN_DAY_{0}", comp_tec.m_Id)))
                                                   , beginColumnAddress
                                                   , true);
                column.ReadOnly = true;
                Columns.Add(column);
                //Станция - План - отклонение
                beginColumnAddress = 9;
                column             = new DataGridViewTextBoxColumn();
                column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                column.Name       = string.Format(@"COLUMN_PLAN_DEV_{0}", comp_tec.m_Id);
                column.HeaderText = string.Format(@"План отклон.");
                column.Tag        = new COLUMN_TAG(new FormulaHelper(string.Format("COLUMN_ST_SUM_{0}-COLUMN_PLAN_SUM_{0}", comp_tec.m_Id))
                                                   , beginColumnAddress
                                                   , true);
                column.ReadOnly = true;
                Columns.Add(column);
            }
コード例 #7
0
            private void addColumn(TepCommon.HandlerDbTaskCalculate.NALG_PARAMETER nAlgPar, TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER putPar)
            {
                DataGridViewTextBoxColumn column;

                column              = new DataGridViewTextBoxColumn();
                column.Name         = @"VALUE";
                column.HeaderText   = @"Значения";
                column.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
                column.CellTemplate.Style.Alignment = DataGridViewContentAlignment.MiddleRight;
                // номер столбца в соответствии с шаблоном книги MS Excel при экспорте
                column.Tag = new COLUMN_TAG(putPar, ColumnCount + 2, false);
                // 'Tag' присваивается ДО добавления в коллекцию
                Columns.Add(column);
            }
コード例 #8
0
ファイル: DataGridView.cs プロジェクト: ChrisNovoselic/Tep32
            /// <summary>
            /// Добавить столбец
            /// </summary>
            /// <param name="text">Текст для заголовка столбца</param>
            /// <param name="bRead">флаг изменения пользователем ячейки</param>
            /// <param name="nameCol">имя столбца</param>
            /// <param name="idPut">индентификатор источника</param>
            public void AddColumn(string txtHeader, bool bRead, string nameCol, string N_ALG, bool bInPut, int Tag, TepCommon.HandlerDbTaskCalculate.PUT_PARAMETER putPar)
            {
                HDataGridViewColumn            column;
                DataGridViewContentAlignment   alignText     = DataGridViewContentAlignment.NotSet;
                DataGridViewAutoSizeColumnMode autoSzColMode = DataGridViewAutoSizeColumnMode.NotSet;

                try {
                    column = new HDataGridViewColumn()
                    {
                        m_bCalcDeny = false, m_N_ALG = N_ALG, m_bInPut = bInPut
                    };
                    alignText         = DataGridViewContentAlignment.MiddleLeft;
                    autoSzColMode     = DataGridViewAutoSizeColumnMode.Fill;
                    column.ReadOnly   = bRead;
                    column.Name       = nameCol;
                    column.HeaderText = txtHeader;
                    column.DefaultCellStyle.Alignment = alignText;
                    column.AutoSizeMode = autoSzColMode;
                    column.Tag          = new COLUMN_TAG(putPar, ColumnCount + 2, false);
                    Columns.Add(column as DataGridViewTextBoxColumn);
                } catch (Exception e) {
                    Logging.Logg().Exception(e, @"DGVAutoBook::AddColumn () - ...", Logging.INDEX_MESSAGE.NOT_SET);
                }
            }