Реализация алгоритма обработки данных
Информация - Компьютеры, программирование
Другие материалы по предмету Компьютеры, программирование
Разработка программного обеспечения, ведение базы данных и получение ведомости с частичными суммами.
Реализация алгоритма обработки данных и ведения реляционной базы данных.
Анализ обработки БД для её получения :
а) По какому файлу проводится главный цикл обработки ?
Главный цикл обработки в подпрограмме vedom - (п.п., которая осуществляет выявление всех случаев превышения нормативных интервалов между профилактиками, вывод их в выводной файл “DD”, а также осуществляет выдачу ведомости на принтер) проводится по файлу bb.dbf .
б) Как он должен быть упорядочен ?
Он должен быть упорядочен в хронологическом порядке.
Пример:
index on bb->invnom + dtoc(bb->dateprof) to bb0001
Справка:
Синтаксис:
INDEX ON
INDEX - команда обработки базы данных, которая создает файлы, содержащие индексы базы данных на основе значения аргумента . При использовании индексного файла записи базы данных обрабатываются в последовательности, заданной ключевым выражением, однако физический порядок следования записей базы данных остается неизменным. INDEX обеспечивает последовательность записей, упорядоченную по значениям ключевого выражения. Для ключей типа CHARACTER - в соответствии со значением ASCII кода каждого символа внутри строки, для ключей типа NUMERIC - в соответствии с числовым порядком, для ключей типа дата - в хронологическом порядке и для логических - считается, что истина (.Т.) - более высокого порядка.
Memo-поля не могут быть индексированы.
в) Применяются ли фильтры ?
Хотя команда SET FILTER делает так, что файл в рабочей области выглядит состоящим из подмножества записей, на самом деле последовательно обрабатываются все его записи.
Фильтры не применяются, т.к время работы с фильтрованной и нефильтрованной рабочей областью оказывается одним и тем же.
г) Имеются ли связи ”хозяин-слуга” и по каким полям ?
В подпрограмме vedom имеются связи.
Пример:
а) set relat to bb->invnom into cc Связь по полю “invnom”.
б) set relat to cc->idst into aa additive Связь по полю “idst”.
в) set relat to dd->invnom into cc additive Связь по полю “invnom”.
Принципы подготовки данных для тестового примера и заполнения исходных данных.
Эти данные были выбраны произвольно - “из головы”:
1) Идентификатор типа станка
2) Инвентарный номер станка
3) Вид профилактики
4) Наименование типа станка
Идентификатор записи в файле bb.dbf заполнялся по убыванию (от 1 до 18), где 1- первая запись, а 18- последняя.
Норма кол-ва дней между профилактиками была выбрана произвольна.
Дата профилактики выбиралась так, чтобы норма кол-ва дней между профилактиками была превышена для всех видов профилактик.
б) Пункты меню, что в них делается ?
Меню № 1:
1) Сразу приступить к работе с Базой Данных
2) Заново построить все индексы Базы Данных
3) Провести компрессию Базы Данных
4) Выход из Базы Данных
При выборе п.1, если индексы уже имеются мы попадаем в меню № 2.
При выборе п.2 заново происходит построение всех индексов Б.Д .
При выборе п.3 производится компрессия (уплотнение) Б.Д .
При выборе п.4 появляется горизонтальное подменю:
а) Сохранить и продолжить б) Завершить работу
П.а) Сохранить все внесенные изменения и продолжить
П.б) Завершить работу с базой данных с сохранением всех изменений
Меню № 2:
1) Ведение файла "Нормативы профилактики оборудования"
2) Ведение файла "Профилактика"
3) Получение ведомости нарушение норм техобслуживания
4) Выход из Базы Данных
При выборе п.1 мы попадаем в редактор файла aa.dbf - (“Нормативы профилактики оборудования”), где мы можем его просматривать и редактировать.
При выборе п.2 мы попадаем в редактор файла bb.dbf - (“Профилактика”), где мы можем его просматривать и редактировать.
При выборе п.3 происходит выявление всех случаев превышения нормативных интервалов между профилактиками, вывод их в выводной файл “DD”, а также выдача ведомости на принтер.
При выборе п.4 выполняются действия аналогичные п.4 в меню № 1.
Ведение БД .
Какими табл. представлено ведение БД, по какой табл. указывается текущая рабочая область, её слуги, колонки таблицы, набор клавиш на которые предусмотрена реакция системы.
Клавиши на которые реагирует система:
/ / / /; PgUp / PgDn; Home / End - Перемещение курсора
Enter - Выбор задачи в меню и редактирование полей в редакторе
Esc - Возврат на шаг назад. Отмена редактирования (без сохранения изменненого значения)
F8 - Удалить строку
F3 - Вставить строку
F10 - Выход из задачи с сохранением всей информации или выход без сохранения информации
Структура программы :
а) Содержимое rmk-файла “kursv.rmk”:
objs = main2,aa,util,bb
.prg.obj:
CLIPPER $< /a/m/n
.obj.exe:
RTLINK OUTPUT $* FI $(objs) /PLL:base52
main2.obj : main2.prg
aa.obj : aa.prg
util.obj : util.prg
bb.obj : bb.prg
kurs_ok.exe : main2.obj aa.obj util.obj bb.obj
б) Имена и содержание prg-файлов. По каждой функции: имя, назначение, параметры, тип данных и смысл, возвращенное значение, рабочие перемен-ные и их назначение.
Программные файлы:
1) aa.prg
В этой программе реализовано:
1. Создание TBrowse-объекта для просмотра-?/p>