- •Министерство образования и науки Российской Федерации
- •Содержание
- •Лабораторная работа №1-2 анализ поведения системы с использованием контекстных диаграмм йордана – де марко
- •Лабораторная работа №3 анализ данных. Построение инфологической модели данных бд
- •Задание 1
- •Задание 3
- •Задание 5
- •Задание 6
- •Задание 7
- •Задание 9
- •Лабораторная работа №4 преобразование инфологической модели данных в реляционную на основе правил преобразования
- •Лабораторная работа №5 построение реляционной моедли бд с использованием метода нормальных форм
- •Лабораторная работа №6 Проект как средство объединения элементов приложения. Создание базы данных в состве проекта visual foxpro
- •Лабораторная работа №7 создание базы данных в составе проекта vfp
- •Лабораторная работа №8 создание форм как средства работы с таблицами
- •Форма как средство ввода и редактирования данных
- •Создание формы с помощью конструктора форм
- •Окно конструктора форм
- •2. Создание формы
- •3. Настройка параметров формы
- •4. Среда окружения формы
- •6. Размещение объектов в форме
- •6.1. Размещение полей таблиц и надписей к ним с использованием построителя формы
- •6.2. Текстовая информация
- •6.3. Поле ввода
- •6.4. Использование построителя для создания формы
- •6.5. Поле редактирования
- •6.6. Кнопки управления
- •6.6.1. Размещение одиночных кнопок
- •6.6.2. Редактирование составных объектов Создание группы кнопок
- •7. Создание формы с помощью мастера
- •Лабораторная работа № 9-10 Запросы к базе данных
- •I. Создание однотабличного запроса:
- •II. Создание многотабличного запроса:
- •III. Группировка полей запроса
- •IV. Подзапросы
- •Использование представлений данных
- •Создание представления данных
- •Просмотр представления данных
- •Сохранение созданного представления данных
- •Параметры представления данных
- •Редактирование данных
- •Установка редактируемых полей
- •Лабораторная работа № 11-12 Создание и печать отчетов
- •2.2. Типы полос окна конструктора отчета
- •Лабораторная работа №13 Хранимые процедуры и триггеры
- •1. Условия достоверности, хранимые процедуры, триггеры
- •Хранимые процедуры
- •Условия достоверности ввода данных на уровне поля таблицы
- •Условия достоверности ввода данных на уровне записей
- •Триггеры
- •Использование триггеров и хранимых процедур
- •Использование триггеров при определении ссылочной целостности
- •Определение значения поля при добавлении новой записи
- •Проверка удовлетворения введенных значений заданному условию
- •Лабораторная работа № 14 Создание меню приложения
- •Лабораторная работа № 15 Генерация приложения
- •Построение проекта и генерация приложения
- •Установка основной программы проекта
- •Использование опции Exclude
- •Очистка проекта от удаленных файлов
- •Построение проекта
- •1. Последовательность действий при настройке параметров формы
- •Форматы данных
- •2. Поле ввода
- •Коды шаблонов picture
- •3. Использование построителя при создании поля ввода
- •Назначение флажков вкладки format
- •Назначение параметров вкладки style
- •4. Поле редактирования
- •5. Кнопки управления
- •5.1. Размещение одиночных кнопок
- •5.2. Создание группы кнопок
- •Расширенные средства ввода данных
- •1. Отображение данных в форме в табличном виде
- •2. Использование построителя
- •Назначение вкладок окна Grid Builder
- •3. Свойства, определяющие объект Grid
- •3.1. Свойства объекта Column
- •Свойства объекта Header
- •3.3. Свойства объекта Text
- •4. Создание многотабличных форм для таблиц, имеющих отношение "один-ко-многим"
- •4.1. Создание многотабличной формы с помощью мастера
- •Варианты продолжения работы с формой
- •4.2. Создание объекта Grid с помощью конструктора форм
- •Создание формы, содержащей объект Grid
- •Создание формы, содержащей три объекта Grid
- •5. Создание формы с вкладками
- •6. Набор форм
- •7. Таймер
- •Назначение свойств объекта Timer
- •7.1. Создание формы с использованием таймера
- •8. Добавление данных в список
- •Рекомендации по созданию отчета
- •Создание отчета с помощью конструктора отчетов
- •1. Окно конструктора отчетов
- •2. Типы полос окна конструктора отчета
- •3. Использование команды Quick Report для размещения полей
- •4. Установка среды окружения отчета
- •5. Размещение объектов в отчете
- •5.1.Размещение в отчете текстовой информации
- •5.2. Добавление в отчет областей заголовка и итогов
- •5.3. Создание простого отчета
- •5.4. Размещение полей
- •5.5. Формирование выражения поля
- •5.6. Задание формата данных
- •5.7. Задание условий печати
- •5.8. Расположение поля в полосе
- •5.9. Размещение итогового поля
- •5.10. Размещение в отчете линий и прямоугольников
- •5.11. Панель инструментов Color Palette
- •5.12. Размещение в отчете рисунков
- •6. Создание отчета в свободной форме
- •7. Создание табличного отчета
- •8. Группировка данных в отчете
- •8.1. Использование группировки в отчете
- •9. Использование в отчете переменных
- •10. Разметка страницы отчета
- •11. Создание многоколоночного отчета
Задание 9
Создать программную систему, предназначенную для диспетчера автобусного парка частной транспортной фирмы. Фима обслуживает несколько коммерческих маршрутов. Такая система должна обеспечивать хранение сведений о водителях, о маршрутах и характеристиках автобусов.
Каждый водитель характеризуется паспортными данными, классом, стажем работы и окладом, причем оклад зависит от класса и стажа работы.
Маршрут автобуса характеризуется номером маршрута, названием начального и конечного пункта движения, временем начала и конца движения, интервалом движения и протяженностью в минутах (время движения от кольца до кольца). Характеристиками автобуса являются: номер государственной регистрации автобуса, его тип и вместимость, причем вместимость автобуса зависит от его типа.
Каждый водитель закреплен за определенным автобусом и работает на определенном маршруте, но в случае поломки своего автобуса или болезни другого водителя может пересесть на другую машину.
В базе должен храниться график работы водителей.
Необходимо предусмотреть возможность корректировки БД в случаях поступления на работу нового водителя, списания старого автобуса, введения нового маршрута или изменения старого и т.п.
Диспетчеру автопарка могут потребоваться следующие сведения:
Список водителей, работающих на определенном маршруте с указанием графика их работы?
Когда начинается и заканчивается движение автобусов на каждом маршруте?
Какова общая протяженность маршрутов, обслуживаемых автопарком?
Какие автобусы не вышли на линию в заданный день и по какой причине (неисправность, отсутствие водителя)?
Сколько водителей каждого класса работает в автопарке?
Необходимо предусмотреть возможность выдачи отчета по автопарку, сгруппированного по типам автобусов, с указанием маршрутов, обслуживаемых автобусами каждого типа. Для маршрутов должны быть указаны все характеристики, включая списки автобусов и водителей, обслуживающих каждый маршрут. Отчет должен содержать сведения о суммарной протяженности обслуживаемых маршрутов, о количестве имеющихся в автопарке автобусов каждого типа, о количестве водителей, их среднем возрасте и стаже.
Задание 10
Создать программную систему, предназначенную для администратора лечебной клиники.
Частная клиника специализируются на лор-заболеваниях.
Прием пациентов ведут несколько врачей различных специализаций. На каждого пациента клиники заводится медицинская карта, в которой отражается вся информация по личным данным больного и истории его заболеваний (диагнозы). При очередном посещении врача в карте отражается дата и время приема, диагноз, текущее состояние больного, рекомендации по лечению. Так как прием ведется только на коммерческой основе, после очередного посещения пациент должен оплатить медицинские услуги (каждый прием оплачивается отдельно). Расчет стоимости посещения определяется врачом согласно прейскуранту по клинике.
Для ведения внутренней отчетности необходима следующая информация о врач: фамилия, имя, отчество, специальность, образование, пол, дата рождения и дата начала и окончания работы в клинике, данные по трудовому договору. Для каждого врача составляется график работы с указанием рабочих и выходных дней.
Прием пациентов врачи могут вести в разных кабинетах. Каждый кабинет имеет определенный режим работы, ответственного и внутренний телефон.
Перечень возможных запросов к базе данных:
Вывести по алфавиту список всех пациентов заданного врача с датами и стоимостью приемов.
Вывести телефоны всех пациентах, которые посещали отоларингологов и год рождения которых больше, чем 1987.
Вывести список врачей, в графике которых среди рабочих дней имеется заданный.
Количество приемов пациентов по датам.
Вычислить суммарную стоимость лечения пациентов по дням и по врачам.
Список пациентов, уже оплативших лечение.
Перечень возможных отчетов:
Отчет о работе врачей в заданный промежуток времени с указанием списка принятых пациентов, их диагноза и стоимости услуг с вычислением суммарного дохода по каждому врачу.
Задание 11
Для биржи труда создается ИС, главной целью которой является хранение информации о соискателях и вакансиях, а также формирование резюме соискателя, вывод данных о работодателях, состоянии вакансии, проходящих курсах и т.д. В отчетах фигурируют данные о соискателях, закрытых вакансиях, проводимых курсах, работодателях.
Для каждого соискателя составляется резюме, осуществляется подбор вакансии по профессии и образованию, начисляется пособие. Размер пособия зависит размер последней заработной платы соискателя. При начислении пособия необходима информация о датах начала и окончания выплаты пособия.
Соискателям предлагается пройти курсы. После похождения курсов соискатели получают разряд по освоенной профессии.
Для работодателей фиксируются их контактные данные (название, адрес, контактное лицо, телефон, электронный адрес), дата подачи вакансии, состояние вакансии. Работодатель при размещении вакансии должен указать в заявке перечень требуемых профессий, образование соискателя, требуемый стаж, разряд, заработную плату. Возможна дополнительная информация
Перечень возможных запросов к базе данных:
Выбор профессий соискателей, не представленных в таблице Вакансии.
Получить все возможные варианты вакансий для соискателей.
Посчитать количество дней с момента предложения вакансии для незакрытых вакансий.
Подсчитать количество выплачиваемых пособий на текущий момент.
Подсчитать количество вакансий, в которых требуется высшее образование и заработная плата от 5000 до 60000.
Перечень возможных отчетов:
Для каждого предприятия вывести список открытых вакансий с указанием их общего количества.
Задание 12
Создать программную систему, предназначенную для учебной части колледжа.
Она должна обеспечивать хранение сведений о каждом преподавателе, о дисциплинах, которые он преподает, номере закрепленного за ним кабинета, о расписании занятий. Существуют преподаватели, которые не имеют собственного кабинета.
О студентах должны храниться следующие сведения: фамилия и имя, в какой группе учится, какую оценку имеет в текущем семестре по каждой дисциплине.
Замдекана должен иметь возможность добавить сведения о новом преподавателе или студенте, внести в базу данных семестровые оценки студентов каждой группы по каждой дисциплине, удалить данные об уволившемся преподавателе и отчисленном из колледжа студенте, внести изменения в данные об преподавателях и студентах, в том числе поменять оценку студента по той или иной дисциплине.
В задачу диспетчера учебной части входит составление расписания.
Замдекана могут потребоваться следующие сведения:
Какой предмет будет в заданной группе в заданный день недели на заданном уроке?
Кто из преподавателей преподает в заданной группе?
В каких группах преподает заданный предмет заданный преподаватель?
Расписание на заданный день недели для указанной группы?
Сколько студентов обучается на каждом курсе в указанном классе?
Необходимо предусмотреть возможность получения документа, представляющего собой сводные ведомости успеваемости за семестр по каждой группе. В ведомости необходимо предусмотреть сведения о среднем балле группы за семестр.
Задание 13
Создать программную систему, предназначенную для хранения информации о торгах на товарно-сырьевой бирже.
На торги могут быть представлены разные товары одной и той же фирмы и одни и те же товары разных фирм. Каждый товар имеет свой уникальный код, произведен определенной формой в определенное время. Товар имеет гарантийный срок хранения, единицу измерения. Товар считается просроченным, если дата его отгрузки более поздняя, чем дата производства этого товара в сумме с гарантийным сроком хранения. Товары поставляются партиями. Партия характеризуется: номером, количеством единиц в партии, ценой поставляемого товара, условиями поставки (предоплата или нет). Партии товаров выставляют брокеры. В одну партию товаров включаются разнообразные товары от разных производителей. Считается, что партии товаров, выставленные на продажу, покупает сама биржа, и она же расплачивается с брокером и производителями товара. Если условием поставки указана предоплата, то биржа перечисляет деньги в день заключения договора, а если нет — то в день отгрузки.
Брокеры работают за фиксированный процент прибыли — 10% от суммы заключенных сделок. Ежемесячно брокеры перечисляют конторе, в которой они работают, фиксированную сумму денег, а все остальные заработанные ими деньги составляют их чистый доход (зарплату).
Перечень возможных запросов к базе данных:
подсчитать, сколько единиц товара каждого вида выставлено на продажу от начала торгов до заданной даты;
найти фирму-производителя товаров, которая за заданный период времени выручила максимальную сумму денег;
найти товары, которые никогда не выставляли на продажу брокеры заданной конторы;
найти все факты выставления на продажу товаров с просроченной годностью (номер партии, код товара, наименование товара, данные о брокере);
найти зарплату всех брокеров заданной конторы.
Необходимо предусмотреть возможность получения отчета по последним торгам по всем товарам с указанием фирм, предлагающих товар в партиях, количества единиц, суммарного количества по торгам, общего количества наименований, участвующих в торгах.
Задание 14
Создать программную систему, предназначенную для администрации аэропорта некоторой компании-авиаперевозчика.
Рейсы обслуживаются бортами, принадлежащими разным авиаперевозчикам. О каждом самолете необходима следующая минимальная информация: номер самолета, тип, число мест, скорость полета, компания-авиаперевозчик. Один тип самолета может летать на разных маршрутах и по одному маршруту могут летать разные типы самолетов.
О каждом рейсе необходима следующая информация: номер рейса, расстояние до пункта назначения, пункт вылета, пункт назначения; дата и время вылета, дата и время прилета, транзитные посадки (если есть), пункты посадки, дата и время транзитных посадок и дат и время вылетаих, количество проданных билетов. Каждый рейс обслуживается определенным экипажем, в состав которого входят командир корабля, второй пилот, штурман и стюардессы или стюарды. Каждый экипаж может обслуживать разные рейсы на разных самолетах. Необходимо предусмотреть наличие информации о допуске члена экипажа к рейсу.
Администрация компании-владельца аэропорта должна иметь возможность принять работника на работу или уволить. При этом необходима следующая информация: ФИО, возраст, образование, стаж работы, паспортные данные. Эта же информация необходима для сотрудников сторонних компаний
Перечень возможных запросов:
Выбрать марку самолета, которая чаще всего летает по маршруту.
Выбрать маршрут/маршруты, по которым летают рейсы, заполненные менее чем на 70%.
Определить наличие свободных мест на заданный рейс.
Определить количество самолетов, находящихся в ремонте.
Определить количество работников компания-авиаперевозчика.
Необходимо предусмотреть возможность получения отчета о бортах компании-владельца по маркам с характеристикой марки. Указать общее количество бортов и количество бортов по каждой марке.