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