/// <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 { ; } }
/// <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); }
/// <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); }
/// <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)); }
public ListTSQLWhere(ID_DBTABLE idDbTable) { IdDbTable = idDbTable; }
/// <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); }
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); }