Функции получения метаданных
Все метаданные хранятся в переменной app типа IMainApp.
Функции получения таблиц
| Название | Описание |
| tablesInfo getTableInfo(int idTable); | Получает таблицу по ее id |
| tablesInfo getTableInfoOfNameMap(string nameMap); | Получает таблицу по пользовательскому названию |
| tablesInfo getTableInfoOfNameDB(string nameDB); | Получение таблицы по имени в базе |
| tablesInfo getTableInfoOfNameDB(string nameDb, string schema); | Получение таблицы по имени в базе и имени схемы |
| List<tablesInfo> getTableOfType(int idType); | Получение спика таблиц определенного типа |
| List<tablesInfo> tables_info { get; } | Содержит полный список таблиц |
Функции получения полей таблицы
| Название | Описание |
| List<fieldInfo> field_info { get; } | Полный список колонок во всех таблицах |
| fieldInfo getFieldInfo(int idField); | Получить колонку по id |
| List<fieldInfo> getFieldInfoTable(int idTable); | Получить список колонок в таблице |
Функции работы с файлами
| Название | Описание |
| List<photoInfo> photo_info { get; } | Список таблиц с файлами |
| photoInfo getPhotoInfo(int idTable); | Получить информацию о связанной таблицы с файлами |
Функции управления правами пользователей
| Название | Описание |
| userInfo user_info { get; } | Информация о текущем пользователе |
| user_right getTableRight(int idTable); | Получение прав на таблицу |
| List<user_right> tables_right { get; } | Список прав на таблицы |
| bool getReadTable(int idTable); | Проверка прав на чтение таблицы |
| bool getWriteTable(int idTable); | Проверка прав на запись в таблицу |
Параметры с типами
| Название | Описание |
| List<tipTable> tip_table { get; } | Список типов таблиц |
| List<tipGeom> tip_geom { get; } | Список типов геометрии |
| List<tipData> tip_data { get; } | Список типов колонок |
| tipTable getTipTable(int idTip); | Получить тип таблицы |
| tipGeom getTipGeom(int idTip); | Получить тип геометрии |
| tipData getTipField(int idTip); | Получить тип колонок |
Переменные для работы с БД и картой
| Название | Описание |
| string ipString { get; } | Ip адрес сервера |
| string portString { get; } | Порт сервера |
| string dbString { get; } | База данных |
| string scheme { get; } | Схема хранения метаданных |
| List<string> schems { get; } | Список схем используемых в БД |
| ISQLCommand SqlWork(); | Функция возвращающий коннект к базе |
| string srid { get; } | Идентификатор проекции карты |
| string path_string { get; } | Путь до каталога с конфигурацией |
| string setting_file { get; } | Название файла конфигурации |
Функции работы с картой
| Название | Описание |
| IRelation relation { get; } | Интерфейс, хранящий список соответствия наименование слоя в системе и наименование на карте |
| void SetVisableLayer(int idTable, bool visble); | Устанавливание свойства видимости для объекта |
| AxMapLIb mapLib { get; } | Объект карты |
Интерфейс IWorkClass
Переменная work в основном интерфейсе содержит функции работы с визуальным интерфейсом программы с помощью нее можно добавлять, удалять, а также заменять элементы в программе.
Интерфейс IWorkClass состоит из функций:
public interface IWorkClass
{
IOpenForms OpenForm { get; }
Forms.ImainFrm MainForm { get; }
Guid AddSpoofingTableOfObjects(tablesInfo table,
Func func);
void RemoveSpoofingTableOfObjects(Guid guid);
Guid AddSpoofingAttributesOfObject(tablesInfo table,
Func func);
void RemoveSpoofingAttributesOfObject(Guid guid);
void AddMenuInTable(int idTable, Func menuItem);
void RemoveMenuInTable(Func menuItem);
void AddMenuForObject(
int idTable, Func menuItem, bool inTable = true,
inAttribute = true);
void RemoveMenuForObject(Func menuItem);
void ExportToExcel(List
OpenForm используется для открытия форм, таких как список объектов, атрибутика объекта, история.
Подмена окна списка объектов
Для подмены формы списка объектов используются функции AddSpoofingTableOfObjects и RemoveSpoofingTableOfObjects.
AddSpoofingTableOfObjects принимает атрибуты таблицы (table) и функцию, возвращающую интерфейс (func), и возвращает Guid, по которому можно убрать эту подмену с помощью функции RemoveSpoofingTableOfObjects.
Пример создания:
tablesInfo table = Program.App.getTableInfoOfNameDB(«table», «data»);
Program.Work. AddSpoofingTableOfObjects(table,
() => new UcTableObjects(table.nameSheme, table.nameDB));
UcTableObjects содержит реализацию интерфейса UserControls.IUserControlMain


Свежие комментарии