?2.1.15. При любом первом обращении в задаче к внешнему файлу необходимо предварительно выполнить проверку его наличия. Если файл не найден, предусмотреть возможность его начального создания например: при первом запуске задачи автоматическое создание пустых аз данных).
После создания внешнего файла, предусмотренного алгоритмом задачи, необходимо выполнить проверку его наличия. Если результат проверки отрицательный, выдать аварийное сообщение, далее выполнить соответствующие действия.
2.1.16. При разработке задачи следует избегать большого количества файлов программного обеспечения в одном каталоге более 128, так как поиск внешнего файла при обращении к нему из любой программы производится обычным перебором имен. Если данной ситуации избежать не удается, необходимо подразделить данные файлы функционально на несколько групп и разместить их в подкаталогах главного каталога задачи, при этом в программах обязательно обращение к данным файлам необходимо указывать явно.
2.2.1 Для обеспечения единообразия всех модулей программного комплекса необходимо ввести единую спецификацию на способ обращения к модулю и его подмодулям. Вся необходимая информация о программных модулях должна храниться в системной базе данных SYSTEM.DBF поля которой описаны в приложении 1. Все модули обязательно должны иметь все записи в системной базе (вообще говоря формируемой специальной программой-инсталятором модулей) и если некоторые функции не реализованы или не требуются для данного модуля то в системной базе должна присутствовать запись для вызова, либо процедуры ZAST для отображения информации о нереализованности функции, либо процедуры EMPTY - «заглушки» не выполняющей никаких действий.
В каждом модуле должны быть реализованы следующие функции:
Основной модуль (собственно главная задача реализованная как подзадача головного модуля)
Информационный модуль (модуль просмотра и поиска информации вызываемый из других программных модулей для справки и не имеющий функций корректировки информации, в качестве параметра должна использоваться системная переменная SSVZMASK - маска запроса - условие начальной выборки из основной базы (в простейшем случае SSVZMASK=’.T.’) возвращать результаты работы модуля следует через глобальный массив MRETAR(40) первый элемент которого - номер найденного элемента в базе или -1 если такого нет или 0 если поиск не подразумевал конкретного элемента, а остальные элементы должны быть специально описаны в комментариях к модулю)
Модуль сохранения информации (модуль выполняющий задачу сохранения и восстановления информации в качестве входных параметров использовать «системную» переменную SSVBKPATH для указания пути сохранения или восстановления информации а также параметр процедуры вызываемой DO SOHR WITH 1 где параметр означает: 1 - сохранение, 2 - автоматическое сохранение (без диагностических сообщений), 3 - восстановление информации).
Модуль аварийного восстановления (модуль выполняющий переиндексацию баз и по необходимости создание «чистых» баз после разрушения этой информации или по указанию системного администратора (процедура вызывается с параметром: DO AVAR WITH 1) параметр вызова означает 1 - реиндексацию, 2 - создание баз и реиндексацию, возвращает .T. или .F. в зависимости от результата работы).
Модуль создания отчетов (создание видеограмм определяемых «выборкой» SSVZMASK) Требует дополнительного обсуждения!
Модуль тестирования (модуль выполняет тестирование баз данных на корректность, возвращает .T. или .F. в зависимости от результата работы). Требует дополнительного обсуждения!
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.