Переменные используемые в процедуре:
- временный массив представляет собой массив записей, состоящий из 16 элементов. В каждой записи находиться два поля 1- "Номер устройства" и 2 – "Номер объявления". Причем 1-вая строка в каждой записи содержит значение количества объявлений, время опубликования которых наступило, но по каким либо причинам они не были опубликованы;
- J – номер временного массива;
- К- номер строки;
- Мах – максимальный приоритет;
- МахК – строка где находится максимальный приоритет.
Рис. 18
Рис. 19
Алгоритм представлен на рисунках 22 - 26.
Условное обозначение:
Mas1=Массив входящих сообщений клиента;
Mas2=Массив исходящих сообщений клиенту;
Mas=Временный массив объявлений.
Алгоритм процедуры взаимодействия с удаленным клиентом (Interaction)
Рис. 22
Обработать сообщение с Типом сообщения =05
Рис. 24
Алгоритм представлен на рисунке 27.
Условные обозначения:
Mas1=Массив исходящих сообщений серверу;
Mas2=Массив входящих сообщений от сервера.
Рис. 27
Алгоритм представлен на рисунках 28 - 31.
Рис. 28
Алгоритм представлен на рисунке 32.
Алгоритмы процедур Datas_up2, Datas_up3, Datas_Down2 и Datas_Down3 по своим выполняемым действиям аналогичны процедурам Datas_up и Datas_Down, по этой причине были выпущены из рассмотрения. Описание выполняемых функций и способов их реализации без построения модульной схемы представлены в выше лежащих главах дипломного проекта.
Проверка на завершение представлена на рисунке 33.
Рис. 33
Некоторые информационные массивы, существующие в системе, были описаны выше. Помимо них в системе представлены следующие структуры данных.
Структура массива "Массив объявлений" представлена в таблице 7.
Таблица 7 - Массив объявлений
Название поля | Условное обозначение | Размерность |
Идентификатор устройств | Status_bar | Integer |
Время начала вывода сообщения | Time_B | Data |
Текст сообщения | Text | Blob |
Приоритет сообщения | Priority | Integer |
Адрес источника | Login | String |
"Идентификатор устройств" - представляет собой двух байтовую структуру, которая кодирует все устройства в системе. Если пользователь выбрал то или иное устройство, то некоторый бит Идентификатора устройств, принимает значение бинарной единицы.
Данный массив содержит информацию о функционировании нижнего уровня в любой момент времени. В случае любого сбоя или по запросу, можно обновить или получить необходимую информации о функционировании устройства нижнего уровня в любой момент времени. Структура динамического массива представлена в таблице 8.
Таблица 8 - Структура динамического массива
Название поля | Размерность |
Номер устройства | Integer |
Занят | Boolean |
Номер объявления | Integer |
Данный массив представляет собой массив записей по количеству имеющихся устройств. Номер устройства идентифицирует устройство нижнего уровня. Переменная "Занят" говорит о функционировании устройства в данный момент времени. Если переменная "Занят" имеет значение истинно в "Номер объявления" находится номер объявления, которое устройство выводит в данный момент времени.
Содержит массив, состоящий из 60 элементов динамического массива. Данный массив служит для оперативной выдачи информации о функционировании системы за последний час. Оперативная справка имеет циклическую структуру. При начале каждого цикла вся информация, содержащаяся в массиве, сохраняется на диске, в долгосрочной справке.
Массив, содержащий сведения, о функционировании нижнего уровня системы начиная с начала жизненного цикла ИСУ. Служит для анализа функционирования системы в любой момент времени или за некоторый промежуток.