tsv19su254052 / LoadWorkData-GUIs-and-Utilities

ПЕТ-проект. Авиационный процессинг, телеметрия и телематика. Клиентские оболочки
MIT License
2 stars 4 forks source link
folium mssql pyqt5 python sql sql-server sqlserver

Некоторые сводные наработки (базы данных на внешнем MS SQL Server-е и набор клиентских утилит) по:

Описание

В объем данного проекта входит:

Справочные данные:

формочка Аэропорты

формочка Аэропорты 2

использовались из источников:

Рабочие данные загружаются с BTS

Оперативные данные загружаются асинхронно:

Рабочие и оперативные данные загружаются без учета хронологии.

Инфраструктура:

Работа клиентов возможна в локальной подсети или из внешней сети через рабочий стол терминального сервера по RDP.

Прикладное программное обеспечение:

(первоначальное, август 2016-го года) [Рисунок 1] 93936369_591194488270382_464298759405174784_n

Поправки:

Файлы, открываемые только в своем ПО, желательно не использовать.

История изменений и улучшений в проекте

Версия 3 (устарела):

Версии 4, 5 (теперь не актуальны, медленные, сильно загружает процессор сервера СУБД):

Версия 6 (используется, но уже не актуальна):

Версия 7 (разработка пока на паузе, наработки переносятся в версию 8):

Версия 8 (текущая, дорабатывается):

Справочники и данные

Считаем, что авиакомпания однозначно определяется сочетанием кодов IATA и ICAO и что любая авиакомпания (в том числе неизвестный частный владелец IATA - пусто, ICAO - пусто) может быть:

Считаем, что:

В данных используется:

Например, авиакомпания может:

Считаем, что авиарейс может выполнять:

Например, самолет может быть:

И ситуация у авиакомпаний и по самолетоам время от времени меняется.

В исходных данных для гражданских дается регистрация, для служебных дается заводской серийный номер. Источники информации - переписки на форумах. Ссылки не даю, так как через время при переходе по ним выбирает 404.

Загрузка данных:

следующим образом:

Группировка подтэгов с датами авиарейсов (пока в разработке):

Каждый клиент использует непрерывное подключение с несколькими клиентскими статическими однопроходными непрокручиваемыми API-курсорами ODBC. При вызове хранимой процедуры используются серверные курсоры. Хранимые процедуры применяются мало, потому что по мере усложнения прикладного функционала выполнить его только средствами SQL сложно (бедность типов данных и синтаксиса, сложность передачи и возврата составных типов данных, пока нет способа возврата результата и причины несработки). Уровни изоляции транзакции курсоров уточнены и проверены под нагрузкой на 4-х тестовых базах данных летом и осенью 2019-го года.

Для обхода попадания на вложенную обработку исключений на клиентах:

Объемы доработок на клиентах

Сделать графическую формочку для правки свойств летательных аппаратов и уточнить набор виджетов на ней, ссылаться на их фото на сайте jetphotos.com (присутствуют немодерирруемые несоответствия).

Добавить на графической формочке свойтсв авиакомпаний виджеты и ссылки просмотра финансовой и юридической информации из надежной онлайн базы.

Добавить на графической формочке свойств объектов:

Остальные указания и замечания см.: