
Задача 1. Создание базы данных «договор»
Решим задачу разработки базы данных, в которой должны содержаться сведения о заключенных договорах, их выполнении, с учетом последствий ненадлежащего выполнения договоров в виде штрафа, а также сведения о контрагентах – участниках договорных отношений.
Поскольку в различных договорах в качестве заказчиков и исполнителей могут участвовать одни и те же организации-контрагенты, будет неэффективно повторять полную информацию о них в описании каждого договора. В связи с этим проектируемая база данных будет содержать две таблицы: в таблице Договоры будут описываться договоры, а в таблице Контрагенты будут описываться организации – участники договорных отношений.
При описании заключенных договоров по каждому из них в таблице Договоры систематизируется следующая информация:
в поле ШИФР – шифр договора, который однозначно идентифицирует договор;
в поле ВИД – вид договора (например, купля–продажа, аренда и т.п.);
в поле ЗАКАЗЧИК – аббревиатура названия организации-заказчика договора;
в поле ИСПОЛНИТЕЛЬ – аббревиатура названия организации-исполнителя договора;
в поле ДАТА_ЗАК – дата заключения договора;
в поле ДАТА_ОКОН – дата выполнения договорных обязательств, указанная в договоре;
в поле ТИП_ШС – тип штрафных санкций, который определяет способ начисления штрафа при ненадлежащем выполнении договора:
- при типе 1 штраф вычисляется как заданный % от общей суммы договора,
- при типе 2 – как % от суммы за каждый день задержки выполнения договора.
Если тип штрафных санкций не указан, то штраф не начисляется;
в поле Ш_С – размер штрафных санкций - % от суммы договора;
в поле СУММА – сумма договора;
в поле СОСТ – состояние договора на текущий момент: «д» – действующий, «о» – оконченный;
в поле ДАТА_ВЫП – дата фактического выполнения договора;
в поле ЗД – количество дней задержки выполнения договора, определяемая как разница между датой выполнения и датой окончания договора (вычисляется только в том случае, если исполнение договора задержано).
в поле ШТРАФ – сумма штрафа за несвоевременное исполнение договора (начисляется по неисполненным договорам при наличии в договоре штрафных санкций).
в поле ДОЛГ – параметр, по значению которого можно определить выплачены или нет штрафные санкции по договорам. Указанные параметр принимает только два значения: «да» - штраф не выплачен, «нет» - штраф выплачен.
Информация о контрагентах – организациях-участниках договорных отношений систематизируется в таблице Контрагенты:
в поле КОД – аббревиатура названия организации-участника договора (однозначно определяет участника договорных отношений);
в поле ИМЯ – полное наименование организации-контрагента;
в поле АДРЕС – юридический адрес организации-контрагента;
в поле ТЕЛ – контактный телефон организации-контрагента;
в поле Б_Р – банковские реквизиты организации-контрагента.
Данные 1–10, 15-19 являются входными, т.е. их значения известны при внесении информации о договоре и контрагентах в базу данных; они являются обязательными, кроме атрибутов 7 и 8, так как штрафные санкции могут отсутствовать. Параметр «состояние договора» является изменяемым в отличие от входных атрибутов 1–9.
Данные 11–14 вычисляются при наступлении определенного события – выполнение договора.