예제 #1
0
            /// <summary>
            /// Расчитать выходные значения
            /// </summary>
            /// <param name="arDataTables">Массив таблиц с указанием их предназначения</param>
            /// <returns>Таблица выходных значений, совместимая со структурой выходныъ значений в БД</returns>
            public DataTable CalculateMaket(ListDATATABLE listDataTables)
            {
                int iInitValuesRes = -1;

                DataTable tableRes = null;

                iInitValuesRes = initValues(listDataTables);

                if (iInitValuesRes == 0)
                {
                    // расчет
                    foreach (KeyValuePair <string, P_ALG.P_PUT> pAlg in Norm)
                    {
                        pAlg.Value[ST].value = calculateNormative(pAlg.Key);
                    }

                    foreach (KeyValuePair <string, P_ALG.P_PUT> pAlg in Out)
                    {
                        pAlg.Value[ST].value = calculateMaket(pAlg.Key);
                    }

                    // преобразование в таблицу
                    tableRes = resultToTable(Out);
                }
                else
                {
                    ; // ошибка при инициализации параметров, значений
                }
                return(tableRes);
            }
예제 #2
0
            protected override int initValues(ListDATATABLE listDataTables)
            {
                int iRes = -1;

                // инициализация нормативных значений для оборудования
                fTable.Set(listDataTables.FindDataTable(INDEX_DATATABLE.FTABLE));
                // инициализация входных значений
                iRes = initInValues(listDataTables.FindDataTable(INDEX_DATATABLE.IN_PARAMETER)
                                    , listDataTables.FindDataTable(INDEX_DATATABLE.IN_VALUES));

                return(iRes);
            }
예제 #3
0
            /// <summary>
            /// Расчитать выходные-нормативные значения
            /// </summary>
            /// <param name="arDataTables">Массив таблиц с указанием их предназначения</param>
            /// <returns>Таблица нормативных значений, совместимая со структурой выходныъ значений в БД</returns>
            public DataTable CalculateNormative(ListDATATABLE listDataTables)
            {
                int iInitValuesRes = -1;

                DataTable tableRes = null;

                iInitValuesRes = initValues(listDataTables);

                if (iInitValuesRes == 0)
                {
                    // расчет
                    calculateNormative();

                    // преобразование в таблицу
                    tableRes = resultToTable(Norm);
                }
                else
                {
                    ; // ошибка при инициализации параметров, значений
                }
                return(tableRes);
            }
예제 #4
0
 /// <summary>
 /// Преобразование входных для расчета значений в структуры, пригодные для производства расчетов
 /// </summary>
 /// <param name="arDataTables">Массив таблиц с указанием их предназначения</param>
 protected abstract int initValues(ListDATATABLE listDataTables);
예제 #5
0
 /// <summary>
 /// Преобразование входных для расчета значений в структуры, пригодные для производства расчетов
 /// </summary>
 /// <param name="arDataTables">Массив таблиц с указанием их предназначения</param>
 protected override int initValues(ListDATATABLE listDataTables)
 {
     throw new NotImplementedException();
 }