Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Топ:
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Оснащения врачебно-сестринской бригады.
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
Интересное:
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Дисциплины:
2020-08-20 | 156 |
5.00
из
|
Заказать работу |
Основные функции программного комплекса были перечислены в параграфе 2.3.1. Рассмотрим каждую из процедур более подробно.
Процедура addJournal (Листинг 2.1)предназначена для добавления новых записей в журнал определённого преподавателя. На вход процедура получает 7 параметров: номер нагрузки преподавателя, дату проведённого занятия, кол-во требуемых часов, тип занятия, тему занятия, файл и название файла. Сначала процедура ищет существует ли в таблице запись с похожим номером нагрузки преподавателя, если в таблице нет такой записи, то процедура сравнивает количество доступных часов у нагрузки с количеством часов, введённых преподавателем на день. Если количество часов, введённых преподавателем меньше часов доступных у нагрузки, то процедура создаёт запись, указывает количество часов, введённых преподавателем и отнимает данное количество часов из записи нагрузки. В противном случае процедура делает те же самые сравнения с уже существующей записью, после чего обновляет данные увеличивая количество часов по данному предмет и уменьшая количество часов у записи нагрузки.
Листинг 2.1
Процедура addPrepodHours (Листинг 2.2)предназначена для добавления часов нагрузки преподавателю. Процедура принимает на вход 3 параметра: номер записи часов предмета, номер записи часов преподавателя и количество часов. Первым делом процедура проверяет доступно ли введённое преподавателем количество часов у предмета. Если количество часов у предмета больше чем введённое преподавателем, то часы добавляются в нагрузку преподавателя, а из часов предмета отнимаются. Также процедура проверяет существует ли данная запись в таблице, если запись существует, то данные обновляются в противном случае запись создаётся.
Листинг 2.2
Процедура delPrepodHours (Листинг 2.3)предназначена для удаления часов нагрузки у преподавателя. На вход принимается 3 параметра: номер записи часов предмета, номер записи часов преподавателя и количество часов. Процедура выполняет те же сравнения и действия, что и addPrepodHours, но с точностью наоборот. Вместо прибавления она отнимает часы нагрузки у преподавателя по данному предмету, а в случае сравнения часов у предмета и преподавателя проверяет не упадёт ли количество часов нагрузки данного предмета у преподавателя меньше нуля.
Листинг 2.3
Процедуры allInPrepodHours (Листинг 2.4)и clearPrepodHours (Листинг 2.5) также предназначены для добавления и уменьшения часов нагрузки у преподавателя. Процедуры получают на вход 2 параметра: номер записи часов предмета и номер записи часовпреподавателя. Процедуры выполняют все те же сравнения, но в момент уменьшения или добавления часов они указывают максимально доступное количество часов у предмета в случае добавления часов или же максимальное количество часов у преподавателя по этому предмету в случае уменьшения.
Листинг 2.4
Листинг 2.5
Процедура addZametka (Листинг 2.6)отвечает за добавление заметки преподавателя на день недели. В качестве параметров она принимает 4 параметра: дату, краткое название, содержание заметки и номер записи преподавателя. Процедура не выполняет никаких сравнений, а просто добавляет новую заметку, но краткое название заметки вместе с датой должно быть уникальными и не совпадать с датой и кратким названием другой заметки. В противном случае заметка не будет добавлена.
Листинг 2.6
Процедура authUser (Листинг 2.7)предназначена для авторизации пользователя в системе. Процедура принимает на вход 2 параметра и возвращает 1 параметр. Входные параметры: имя пользователя и пароль. Выходной параметр: результат авторизации.В данной процедуре идёт простая выборка записи по совпадению. Если процедура находит данную запись, то возвращает 1 иначе 0.
Листинг 2.7
Процедура deleteAll(Листинг 2.8)выполняет функцию очистки базы данных. Данная процедура не имеет входных и выходных параметров. После ей использования все данные из базы удаляются.
Листинг 2.8
Процедура get_id_ph(Листинг 2.9)ищет среди записей нагрузок преподавателей нужную. Процедура имеет 3 входных и один выходной параметр. Входные параметры: фамилия, имя, отчество преподавателя. Выходной параметр: номер записи часов преподавателя. Процедура ищет в таблице преподавателей номер записи преподавателя, а затем в таблице часов преподавателей номер записи часов по номеру записи преподавателя.
Листинг 2.9
Процедура insImportTable (Листинг 2.10)предназначена для создания часов предметов. Процедура импортирует данные из учебного плана в базу данных создавая группы, предметы и часы предметов. На вход принимается 8 параметров: шифр предмета, название предмета, название группы, курс, семестр, тип занятия, количество доступных часов и год. Сначала процедура проверяет существуют ли такой предмет, если предмет существует, то процедура сохраняет номер записи предмета иначе создаёт данную запись. После создания предмета те же процедуры выполняются для группы. В последнюю очередь создаётся запись с часами преподавателя, где процедура использует ранее выбранные номера записей группы и предмета.
Листинг 2.10
Процедура insUser (Листинг 2.11)является функцией администратора и предназначена для добавления новых пользователей в систему. Процедура получает на вход 2 параметра: имя пользователя и пароль. Если пользователь с таким логином уже существует, то процедура не добавит нового пользователя в противном случае пользователь будет создан.
Листинг 2.11
Процедура replacePrepodJournal (Листинг 2.12)предназначена для замены пары преподавателя в журнале. Имеется в виду, что если пару преподавателя заменяли, то надо отметить эту замену в журнале. Процедура получает на вход те же параметры что и addJournal, но в добавок номер записи часов преподавателя, который заменяет этот предмет. Эта процедура выполняет внутри себя выше описанные, а в частности:
· delPrepodHours;
· addPrepodHours;
· addJournal;
Изначально процедура обновляет данные нагрузки часов преподавателя, указывая что преподавателя заменяли введённым количеством. Затем процедура удаляет введённое количество часов у преподавателя, который ведёт данный предмет и добавляет эти часы заменяющему преподавателю. Часы добавляются и удаляются через процедуры delPrepodHoursи addPrepodHours. Последним этапом процедуры становится обновление пометки у преподавателя, который ведёт данный предмет на «YES», что означает, что его заменяли.
Листинг 2.12
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!