Кухня ресторана База данных хранит информацию о блюдах, изготавливаемых кухней ресторана, их ингредиентах и выходе блюд.
Каждое блюдо состоит из нескольких ингредиентов. Каждый ингредиент может входить в состав нескольких блюд. В течение дня может изготавливаться много порций каждого блюда. Необходимо обеспечить расчёт себестоимости и цены блюда, учёт ежедневного выхода и продаж блюд.
СТРУКТУРА БАЗЫ ДАННЫХ
База данных состоит из следующих четырёх таблиц.
DISH – сведения о блюдах, которые может готовить кухня
PROD – сведения о продуктах, используемых для приготовления блюд
Имя
Смысл
Тип
Длина
Свойства
Code_P
Код продукта в регистре продуктов ресторана.
Счётчик
Первичный ключ.
Nam_P
Наименование продукта.
Текст
12
Price_P
Цена килограмма продукта.
Деньги
Info_P
Описание продукта.
memo
Текст неограниченного объёма.
INGRED – сведения о вхождении продукта в состав блюда
Имя
Смысл
Тип
Длина
Свойства
Code_D
Ссылка на первичный ключ таблицы DISH.
Длинное цел.
Code_P
Ссылка на первичный ключ таблицы PROD.
Длинное цел.
Qt_P
Количество единиц продукта в составе блюда.
С плав.точкой
Значения положительны.
Свойства таблицы
Пара {Code_D, Code_P} является первичным ключом таблицы.
YIELD_SALE – сведения о выходе/продаже блюд
Имя
Смысл
Тип
Длина
Свойства
Code_D
Ссылка на первичный ключ таблицы DISH.
Длинное цел.
Date
Дата изготовления блюда.
Дата
Qt_Y
Количество изготовленных порций блюда.
Целое
Значения положительны.
Qt_S
Количество проданных порций блюда.
Целое
Значения положительны.
Свойства таблицы
Пара {Code_D, Date} является первичным ключом таблицы.
Ограничения целостности
Себестоимость блюда равна сумме стоимостей ингредиентов.
Торговая наценка составляет определённый процент от себестоимости порции блюда.
Процент торговой наценки устанавливается для каждого блюда индивидуально.
Торговая наценка не может превышать двадцати пяти процентов от себестоимости блюда
Цена порции блюда складывается из его себестоимости и торговой наценки.
Существование двух записей о вхождении конкретного продукта в состав конкретного блюда невозможно.
Количество единиц продукта, включённых в состав блюда, указывается в граммах.
Существование двух записей о выходе/продаже конкретного блюда в конкретный день невозможно.
Количество проданных порций блюда не может превышать количества изготовленных в тот же день.
Задания на лабораторные работы
ЛР1. Создать выше перечисленные таблицы и схему данных. Ввести в таблицы тестовые данные. Убедиться в том, что поддерживаются все заданные ограничения целостности.
ЛР2. Создать ниже перечисленные запросы.
1. Получить список первых блюд, изготавливаемых рестораном.
2. Получить полные сведения о составе первых блюд.
3. Подсчитать количество порций заданного блюда, изготовленных в указанный день.
4. На каждый день заданного месяца получить следующую информацию: {дата, наименование блюда, количество изготовленных порций, выручка}.
ЛР3. Создать ниже перечисленные формы.
1. Столбцовую форму для просмотра, добавления, удаления и обновления записей о продуктах (форма Продукты в прилагаемом файле Кухня.mde).
2. Управляемую форму для работы с записями о блюдах (форма Блюда в прилагаемом файле Кухня.mde).
ЛР4. Изготовить отчёты следующих форматов, используя собственные данные.
Отчёт
о выходе блюд за январь 2100 года
Дата
01.01
Затраты
120 000
Выручка
155 400
Блюдо
Выход
Затраты
Выручка
Ассорти мясное
121
2420
3100
Борщ украинский
56
2400
3200
Солянка сборная
80
3150
4100
…
…
…
…
Дата
02.01
Затраты
145897
Выручка
192847
Блюдо
Выход
Затраты
Выручка
Ассорти рыбное
211
2680
4000
Суп жюльен
52
1400
2000
Суп харчо
123
12300
14100
…
…
…
…
И Т.Д. на каждый день
Итого за месяц
Затраты
4 345 678
Выручка
5 654 123
Отчёт о спросе на блюда по месяцам 2100 года
Блюдо
Янв
Февр
Март
Апр
Май
Июнь
Июль
Авг
Сент
Окт
Нояб
Дек
Всего за год
Айсер
1
1
2
Анкер
1
1
1
3
Артишок
1
1
1
3
Банга
1
1
Бемсик
1
1
2
Борщ Нигер
1
1
2
4
Борщ укр
456
567
345
789
234
123
100
50
34
345
567
678
4288
…
…
…
…
…
…
…
…
…
…
…
…
…
…
Примечание. Этот отчёт основан на перекрёстном запросе