예제 #1
0
 /// <summary>
 /// Добавить таблицу в словарь со словарно-проектными величинами
 /// </summary>
 /// <param name="idDbTable">дентификатор таблицы БД</param>
 /// <param name="table">Таблица с данными для добавления</param>
 protected void addTableDictPrj(ID_DBTABLE idDbTable, DataTable table)
 {
     if (m_dictTableDictPrj.ContainsKey(idDbTable) == false)
     {
         m_dictTableDictPrj.Add(idDbTable, table);
     }
     else
     {
         ;
     }
 }
예제 #2
0
        /// <summary>
        /// Добавить таблицу в словарь со словарно-проектными величинами
        /// </summary>
        /// <param name="idDbTable">дентификатор таблицы БД</param>
        /// <param name="table">Таблица с данными для добавления</param>
        protected void addTableDictPrj(ID_DBTABLE idDbTable, DataTable table)
        {
            // для исключения повторного добавления таблицы
            if (m_dictTableDictPrj.ContainsKey(idDbTable) == true)
            {
                m_dictTableDictPrj.Remove(idDbTable);
            }
            else
            {
                ;
            }

            m_dictTableDictPrj.Add(idDbTable, table);
        }
예제 #3
0
        /// <summary>
        /// Возвратить значения одной таблицы по индексу
        /// </summary>
        /// <param name="idTableDb">Индекс таблицы в перечне таблиц БД</param>
        /// <param name="err">Идентификатор ошибки при выполнении функции</param>
        /// <returns>Таблица - результат запроса - значения таблицы БД</returns>
        public DataTable GetDataTable(ID_DBTABLE idTableDb, out int err)
        {
            err = 0; // успех

            DataTable tblRes = null;

            switch (idTableDb)
            {
            case ID_DBTABLE.UNKNOWN:
                //case ID_DBTABLE.PERIOD:
                err = -1;
                break;

            case ID_DBTABLE.IN_PARAMETER:
            case ID_DBTABLE.OUT_PARAMETER:
                err = 1;
                break;

            default:
                if (s_dictDbTables.ContainsKey(idTableDb) == false)
                {
                    err = -2;
                }
                else
                if (!(s_dictDbTables[idTableDb].m_name.IndexOf(@"?") < 0))
                {
                    err = -3;
                }
                else
                {
                    tblRes = GetDataTable(s_dictDbTables[idTableDb].m_name, out err);
                }
                break;
            }

            if (err < 0)
            {
                tblRes = new DataTable();
            }
            else
            {
                ;
            }

            return(tblRes);
        }
예제 #4
0
 /// <summary>
 /// Добавить таблицу в словарь со словарно-проектными величинами
 /// </summary>
 /// <param name="id">Идентификатор таблицы БД</param>
 /// <param name="err">Признак ошибки при чтении из БД данных таблицы</param>
 public virtual void AddTableDictPrj(ID_DBTABLE id, out int err)
 {
     addTableDictPrj(id, GetDataTable(id, out err));
 }
예제 #5
0
 public ListTSQLWhere(ID_DBTABLE idDbTable)
 {
     IdDbTable = idDbTable;
 }
예제 #6
0
            /// <summary>
            /// Возвратить индкус таблицы БД по указанным типам расчета и рассчитываемых значений
            /// </summary>
            /// <param name="type">Тип расчета</param>
            /// <param name="req">Тип рассчитываемых значений</param>
            /// <returns>Индекс таблицы БД в списке</returns>
            public static ID_DBTABLE GetIdDbTable(TYPE type, TABLE_CALCULATE_REQUIRED req)
            {
                ID_DBTABLE idRes = ID_DBTABLE.UNKNOWN;

                switch (type)
                {
                case TaskCalculate.TYPE.IN_VALUES:
                    switch (req)
                    {
                    case TABLE_CALCULATE_REQUIRED.ALG:
                        idRes = ID_DBTABLE.INALG;
                        break;

                    case TABLE_CALCULATE_REQUIRED.PUT:
                        idRes = ID_DBTABLE.INPUT;
                        break;

                    case TABLE_CALCULATE_REQUIRED.VALUE:
                        idRes = ID_DBTABLE.INVALUES;
                        break;

                    default:
                        break;
                    }
                    break;

                case TaskCalculate.TYPE.OUT_TEP_NORM_VALUES:
                case TaskCalculate.TYPE.OUT_VALUES:
                    switch (req)
                    {
                    case TABLE_CALCULATE_REQUIRED.ALG:
                        idRes = ID_DBTABLE.OUTALG;
                        break;

                    case TABLE_CALCULATE_REQUIRED.PUT:
                        idRes = ID_DBTABLE.OUTPUT;
                        break;

                    case TABLE_CALCULATE_REQUIRED.VALUE:
                        idRes = ID_DBTABLE.OUTVALUES;
                        break;

                    default:
                        break;
                    }
                    break;

                case TaskCalculate.TYPE.OUT_TEP_REALTIME:
                    switch (req)
                    {
                    case TABLE_CALCULATE_REQUIRED.ALG:
                        idRes = ID_DBTABLE.INALG;
                        break;

                    case TABLE_CALCULATE_REQUIRED.PUT:
                        idRes = ID_DBTABLE.INPUT;
                        break;

                    case TABLE_CALCULATE_REQUIRED.VALUE:
                        idRes = ID_DBTABLE.INVALUES;
                        break;

                    default:
                        break;
                    }
                    break;

                default:
                    break;
                }

                return(idRes);
            }
예제 #7
0
        protected virtual void initialize(ID_DBTABLE[] arIdTableDictPrj, out int err, out string errMsg)
        {
            err    = 0;
            errMsg = string.Empty;

            ID_DBTABLE idDbTable = ID_DBTABLE.UNKNOWN;

            // проверить наличие элементов при, необходимости очистить
            __handlerDb.ValidateDictTableDictPrj();

            foreach (ID_DBTABLE id in /*Enum.GetValues(typeof(ID_DBTABLE))*/ arIdTableDictPrj)
            {
                if (!(id == ID_DBTABLE.UNKNOWN))
                {
                    __handlerDb.AddTableDictPrj(id, out err);
                }
                else
                {
                    err = 2;
                }

                if (err < 0)
                {
                    // ошибка
                    switch (err)
                    {
                    case -3:     // наименовавние таблицы
                        errMsg = @"неизвестное наименовнаие таблицы";
                        break;

                    case -2:     // неизвестный тип
                        errMsg = @"неизвестный тип таблицы";
                        break;

                    case -1:
                    default:
                        errMsg = @"неопределенная ошибка";
                        break;
                    }

                    errMsg = string.Format(@"HPanelTepCommon::initialize (тип={0}) - {1}...", id, errMsg);

                    break;
                }
                else
                if (err > 0)
                {
                    // предупреждение
                    switch (err)
                    {
                    case 1:         // идентификатор указан прежде, чем его можно инициализировать объект для него
                        break;

                    case 2:         // идентификатор по умолчанию или один из идентификаторов имеет неопределенное значение
                        break;

                    default:
                        break;
                    }
                }
                else
                {
                    // ошибок, предупреждений нет
                    ;
                }
            }

            //??? обязательная таблица
            idDbTable = ID_DBTABLE.COMP_VALUES;
            __handlerDb.AddTableDictPrj(idDbTable, out err);
        }