Загрузка данных


Вариант 2. Строительная фирма
Письменное задание
Спроектировать базу данных для хранения сведений о бригадах, рабочих и заказах строительной фирмы. Создать таблицы, запросы, формы и форму «Меню».
Таблицы и поля
Таблица Бригада
    • КодБригады — целое, первичный ключ
    • НазваниеБригады — текст
    • Бригадир — текст
    • Телефон — текст
Таблица Рабочий
    • КодРабочего — целое, первичный ключ
    • ФИО — текст
    • Специальность — текст
    • Разряд — целое
    • КодБригады — целое, внешний ключ
Таблица Заказ
    • КодЗаказа — целое, первичный ключ
    • КодБригады — целое, внешний ключ
    • АдресОбъекта — текст
    • ВидРабот — текст
    • ДатаНачала — дата
    • ДатаОкончания — дата
    • Стоимость — числовой
Связи
    • Бригада.КодБригады → Рабочий.КодБригады — один-ко-многим
    • Бригада.КодБригады → Заказ.КодБригады — один-ко-многим
Запросы и источники данных
Запрос РабочиеПоБригаде
Источник данных:
таблицы Бригада, Рабочий
Назначение:
вывод списка рабочих выбранной бригады.
Запрос ЗаказыПоБригаде
Источник данных:
таблицы Бригада, Заказ
Назначение:
показать заказы, выполняемые выбранной бригадой.
Запрос ЗаказыЗаПериод
Источник данных:
таблица Заказ
Назначение:
вывод заказов за заданный период.
Запрос ДорогиеЗаказы
Источник данных:
таблица Заказ
Назначение:
отбор заказов дороже заданной суммы.
Запрос КоличествоЗаказовПоБригадам
Источник данных:
таблицы Бригада, Заказ
Назначение:
подсчитать количество заказов у каждой бригады.
Формы и источники данных
Форма Меню
Источник данных:
нет привязки
Кнопки:
    • Открыть Бригада
    • Открыть Рабочий
    • Открыть Заказ
    • Открыть ЗаказыПоБригаде
    • Закрыть
Форма Бригада
Источник данных:
таблица Бригада
Форма Рабочий
Источник данных:
таблица Рабочий
Дополнительные поля-списки:
КодБригады берётся из таблицы Бригада
Форма Заказ
Источник данных:
таблица Заказ
Дополнительные поля-списки:
КодБригады берётся из таблицы Бригада
Форма ЗаказыПоБригаде
Источник данных:
запрос ЗаказыПоБригаде
Макросы для кнопок формы Меню
Basic
Копировать код
Sub Open_Brigada
    ThisDatabaseDocument.FormDocuments.getByName("Бригада").open
End Sub

Sub Open_Rabochiy
    ThisDatabaseDocument.FormDocuments.getByName("Рабочий").open
End Sub

Sub Open_Zakaz
    ThisDatabaseDocument.FormDocuments.getByName("Заказ").open
End Sub

Sub Open_ZakazyPoBrigade
    ThisDatabaseDocument.FormDocuments.getByName("ЗаказыПоБригаде").open
End Sub

Sub Close_Form
    ThisComponent.close(True)
End Sub