В этом разделе приведены состав и аргументы (входные/выходные) хранимых процедур, предназначенных для доступа СПО НБО к БД СПО ЦУП. Информационный обмен между компонентами СПО ЦУП реализуется через единую базу данных БД СПО-А.
Информационный обмен включает в себя:
· рекомендации по планированию и корректировке программы проведения сеансов ИТНП;
· план проведения сеансов ИТНП;
· данные о комплектации приемника и передатчика в сеансах ИТНП;
· массивы данных с результатами ИТНП;
· информация о результатах оценки качества ИТНП;
· начальные условия движения КА;
· целеуказания для КИС;
· задание на расчет тестовой коррекции;
· результат расчета тестовой коррекции;
· результаты проведения коррекции по ИТНП;
· данные о параметрах включения двигателей стабилизации
№ | Данные | Источник данных | Потребитель данных |
1. | Рекомендации по планированию и корректировке программы проведения сеансов ИТНП | СПО НБО | СПО П |
2. | План проведения сеансов ИТНП | СПО П | СПО НБО |
3. | Данные о комплектации приемника и передатчика в сеансах ИТНП | СПО П | СПО НБО |
4. | Массивы данных с результатами ИТНП | СПО В | СПО НБО |
5. | Информация о результатах оценки качества ИТНП | СПО НБО | СПО П |
6. | Начальные условия движения КА | СПО НБО | СПО Б |
7. | Целеуказания для КИС | СПО НБО | СПО П |
8. | Задание на расчет тестовой коррекции | СПО Б | СПО НБО |
9. | Результат расчета тестовой коррекции | СПО НБО | СПО Б |
10. | Результаты проведения коррекции по ИТНП | СПО НБО | СПО Б |
11. | Данные о параметрах включения двигателей стабилизации | СПО П | СПО НБО |
Выходные данные СПО НБО записываются в соответствующие таблицы БД СПО-А. Входная информация для СПО НБО располагается в соответствующих таблицах БД СПО-А.
6. Основные положения по структуре таблиц обмена
Каждый вид данных представляет собой отдельную таблицу определённой структуры.
Данные в таблицах располагаются построчно. Каждая строка таблицы представляет собой одну запись. Число записей не ограничено. Каждая запись может состоять из произвольного числа полей различного типа. Полем называется каждый элемент из набора данных обмена, содержащий конкретное значение определённого типа и структуры. Кроме этого, таблица может содержать дополнительные поля для записи комментариев и справочной информации.
Для представления данных обмена в таблице используются поля текстового, массива бинарной информации, числового, логического типов и типа дата/время. Размер полей определяется требуемой точностью представления данных.
Каждый набор данных обмена в базе данных содержит следующие обязательные поля:
- Идентификационный номер формы обмена
- Признак использования записи
- Дата и время создания записи.
Информационный обмен реализуется через через хранимые процедуры СУБД FireBird 2.x функционирующую в поверх установленного клиентом СПО НБО защищенного соединения IPSEC; любое корректно установленное соединение IPSEC подразумевает успешную авторизацию для работы с компонентами СПО ЦУП.
1. Требования к аппаратному обеспечению:
· платформа — x86;
· процессор — 500 МГц;
· оперативная память — 128 Мб;
· жесткий диск — 10 Гб.
· сетевая карта Ethernet 100 Мбит/с;
· обеспечена возможность подключению по локальной сети к центральному серверу БД.
2. Требования к программному обеспечению:
· библиотека доступа к серверу БД Firebird 2.x.
Процедура является самостоятельной программой, написанной на языке PSQL Firebird, скомпилированной интерпретатором во внутренний двоичный язык Firebird и сохраненный как исполняемый код в метаданных базы данных. Спроектированы хранимые процедуры выбора и выполнения.
Хранимые процедуры выбора (select) имеют следующий общий синтаксис вызова:
SELECT <список столбцов> FROM НазваниеПроцедуры(аргумент1, аргумент2,.., аргументN)
WHERE <условия-поиска>
ORDER BY <список-упорядочивания>
<список столбцов> – разделенный запятыми список из одного или более выходных параметров возращаемых процедурой или * для выбора всех столбцов.
аргумент1, аргумент2,– разделенный запятыми список из одного или более входных параметров необходимых для отработки процедуры.
Выходной набор может быть ограничен условием поиска в предложении WHERE и упорядочен с помощью предложения ORDER BY.
Хранимые процедуры выполнения (execute) имеют следующий общий синтаксис вызова:
Execute procedure НазваниеПроцедуры(аргумент1, аргумент2,.., аргументN)
INS_ITNP_REQUEST
Процедура выбора INS_ITNP_REQUEST осуществляет добавление рекомендаций по планированию сеанса ИТНП (СПО-НБО) входные данные:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | SEANS_ID | Integer | Номер сеанса (ссылка на таблицу Seans) |
2 | ITNP_DATES | TIMESTAMP | Дата начала корректировки программы работы ОКИК |
3 | ITNP_COUNT_DATES | Integer | Количество суток корректировки программы работы |
4 | ITNP_DATA | BLOB | Рекомендации и предложения по сеансу ИТНП |
Выходные данные процедуры INS_ITNP_REQUEST:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | ITNP_REQUEST_ID | Integer | ID рекомендации |
SEL_ITNP_REQUEST
Процедура выбора SEL_ITNP_REQUEST осуществляет выборку рекомендаций по планированию сеанса ИТНП (СПО-НБО), выходные данные:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | ITNP_REQUEST_ID | Integer | ID рекомендации |
2 | ITNP_SEANS_ID | Integer | Номер сеанса (ссылка на таблицу Seans) |
3 | ITNP_DATES | TIMESTAMP | Дата начала корректировки программы работы ОКИК |
4 | ITNP_COUNT_DATES | Integer | Количество суток корректировки программы работы |
5 | ITNP_DATA | BLOB | Рекомендации и предложения по сеансу ИТНП |
6 | ITNP_REQUEST_DATES_CREATE | TIMESTAMP | Дата/Время регистрации записи в БД |
7 | ITNP_REQUEST_DATES_SELECT | TIMESTAMP | Дата/Время последней выборки записи |
SEL_ITNP_REQUEST_BY_SEANS
Процедура выбора SEL_ITNP_REQUEST_BY_SEANS осуществляет выборку рекомендаций по планированию сеанса ИТНП (СПО-НБО) по номеру сеанса, входные данные:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | SEANS_ID | Integer | Номер сеанса |
Выходные данные процедуры SEL_ITNP_REQUEST_BY_SEANS:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | ITNP_REQUEST_ID | Integer | ID рекомендации |
2 | ITNP_DATES | TIMESTAMP | Дата начала корректировки программы работы ОКИК |
3 | ITNP_COUNT_DATES | Integer | Количество суток корректировки программы работы |
4 | ITNP_DATA | BLOB | Рекомендации и предложения по сеансу ИТНП |
5 | ITNP_REQUEST_DATES_CREATE | TIMESTAMP | Дата/Время регистрации записи в БД |
6 | ITNP_REQUEST_DATES_SELECT | TIMESTAMP | Дата/Время последней выборки записи |
INS_ITNP_PLAN_MAIN
Процедура выбора INS_ITNP_PLAN_MAIN осуществляет добавление общего описания сеанса ИТНП (СПО-П), входные данные:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | NUM_VITOK | Integer | Номер витка |
2 | ITNP_REQUEST_ID | Integer | Номер заявки (ссылка на таблицу ITNP_REQUEST) |
3 | START_DATE | TIMESTAMP | МДВ начала интервала |
4 | END_DATE | TIMESTAMP | МДВ окончания интервала |
Выходные данные процедуры INS_ITNP_PLAN_MAIN:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | ITNP_PLAN_MAIN_ID | Integer | ID плана |
INS_ITNP_PLAN_DETAIL
Процедура выполнения INS_ITNP_PLAN_DETAIL осуществляет добавление подробного описания сеанса ИТНП (СПО-П), входные данные:
№ | Название аргумента | Тип данных | Описание аргумента |
1 | ITNP_PLAN_ID | Integer | Номер плана (ссылка на таблицу ITNP_PLAN) |
2 | NIP_ID | Integer | Номер КИС-а(ссылка на таблицу NIP) |
3 | START_DATES | TIMESTAMP | Дата/Время начала измерения |
4 | LENGTH_DIMENSION | Integer | Длительность измерения (сек) |
5 | DISTANCE | Smallint | Признак измерения Дальности: 1 - да 0 - нет |
6 | DISTANCE_SPEED | Smallint | Признак измерения: Скорости изменения дальности 1 - да 0 - нет |
SEL_ITNP_PLAN