
Рис.1. Логическая модель БД
Общая формулировка задания на типовой расчет
Необходимо создать информационную систему, позволяющую посредством использования базы данных под управлением СУБД ORACLE хранить, изменять, просматривать и анализировать информацию об одном или нескольких бизнес-объектах.
Требования к качеству выполнения типового расчета:
информационная система должна быть реализована в архитектуре клиент-сервер с использованием модели сервера баз данных;
серверная часть системы должны быть реализована на языке ORACLE PL\SQL;
все запросы к базе данных из клиентского приложения должны выполняться посредством вызова хранимых процедур, входящих в состав пакета PL\SQL;
при записи информации об операциях добавления, изменения и удаления должны сохраняться данные о дате операции, ее типе и пользователе, выполнившем операцию.
При выполнении типового расчета необходимо:
создавать и вызывать процедуры, входящие в состав пакета PL\SQL;
реализовывать запросы к базе данных по добавлению, изменению, удалению и отображению списка объектов с использованием параметров, указываемых пользователем приложения;
использовать триггеры ORACLE для выполнения каскадных действий и для запрещения выполнения некорректных действий, нарушающих семантическую целостность информационной системы.
Обрабатывать системные и пользовательские исключения для каждого пункта задания.
Интерфейс должен быть на русском языке.
Логическая модель базы данных (БД) представлена на рис.1.
Вариант 1 Байдацкий
Создать информационную систему, позволяющую добавлять, изменять, удалять и просматривать информацию о товарах.
Система должна сохранять и позволять просматривать информацию по добавлению, изменению и удалению информации о товарах. Разрешить удаление только тех товаров, которые не были проданы ни разу в текущем году. Запретить изменение даты изготовления товаров. При добавлении нового товара учитывать, что количество товаров в каждой из имеющихся групп товаров не превосходит заданного числа. Если это число превышается, то добавление товара должно происходить в новую группу товаров.
Система должна отображать:
список всех товаров, ни разу не проданных в первом квартале/ втором квартале/ третьем квартале/четвертом квартале текущего года (входной параметр) в порядке убывания/возрастания (входной параметр) id товара.
Список товаров с указанием для каждого из товаров суммарной стоимости продаж товара в определенный временной период (границы вводятся пользователем).
Полную информацию о товарах, пользующихся наибольшим спросом в текущем году/текущем месяце (входной параметр).
Полную информацию о товарах определенного статуса (входной параметр) с указанием суммарной выручки для каждого товара и количества различных покупателей его купивших.
Вариант 2 Богданов
Создать информационную систему, позволяющую добавлять, изменять, удалять и просматривать информацию о группах товаров.
Система должна контролировать корректное значение названия группы товаров.
Система должна сохранять и позволять просматривать информацию по добавлению, изменению и удалению информации о группах товаров. Запретить удаление групп товаров, в которых не менее n товаров были проданы в течение последних m дней от текущей даты. Все действия по изменению данных в таблице группы товаров отображать в архиве.
Система должна отображать:
список всех групп товаров, в которых количество товаров на складе в заданных пределах (границы вводятся пользователем) и среди товаров отсутствуют/присутствуют (входной параметр) товары заданного пользователем статуса (входной параметр).
Список групп товаров, содержащих товары, проданные в каждом из месяцев текущего года не менее, чем 2-м различным покупателям.
Полную информацию о тех группах товаров, товары из которых продавались наиболее плохо за последний месяц/год (входной параметр) от текущей даты.
Вариант 3 Валеев
Создать информационную систему, позволяющую добавлять, изменять, удалять и просматривать информацию о статусах.
Система должна сохранять и позволять просматривать информацию по добавлению, изменению и удалению информации о статусах. Запретить удаление статусов для дилеров, с которыми связано более 2-х продавцов, статусов для товаров, если этот статус имеют более 3-х товаров из 2-х и более групп товаров. Запретить удаление статуса продавца, если такой статус имеют 2 и более продавца.
Система должна отображать:
список всех товаров, имеющих определенный статус (входной параметр), не проданных ни разу в определенный временной период (границы вводятся пользователем) с указанием стоимости для каждого товара и количества товара на складе в порядке убывания/возрастания (входной параметр) стоимости.
Список продавцов определенного статуса (входной параметр), с указанием для каждого из них количества различных наименований товаров заданного статуса (входной параметр), из заданной группы (входной параметр).
Полную информацию о группах статусов с указанием количества статусов в каждой группе и количества объектов этого статуса.