1.а. Вывод сведений о типе и количество поставленного товара.
SQL-код запроса «ЗапросПоставлено»:
SELECT Поставки.Тип, Sum(Поставки.Количество) AS Поставлено
FROM ПЛИС INNER JOIN Поставки ON ПЛИС.Тип=Поставки.Тип
GROUP BY Поставки.Тип;
1.б. Вывод сведений о типе и количество реализованного товара.
SQL-код запроса «ЗапросЗаказано»:
SELECT Заказано.Тип, Sum(Заказано.Количество) AS Заказано
FROM ПЛИС INNER JOIN Заказано ON ПЛИС.Тип=Заказано.Тип
GROUP BY Заказано.Тип;
1.в. Вывод сведений о типе ПЛИС и остатке на складе
SQL-код запроса «ЗапросОстаток»:
SELECT ЗапросЗаказано.Тип,
(ЗапросПоставлено.Поставлено-ЗапросЗаказано.Заказано) AS Остаток
FROM ЗапросЗаказано, ЗапросПоставлено
WHERE ЗапросЗаказано.Тип=ЗапросПоставлено.Тип;
2. Вывод сведений о ПЛИС с числом программируемых связей не менее … и с определенной технологией изготовления.
SQL-код запроса «ЗапросЧислСвяз&Техн»:
SELECT ПЛИС.*
FROM ПЛИС
WHERE (((ПЛИС.ЧислоСвязей)>=[Число программируемых связей не менее]) AND ((ПЛИС.Технология)=[Технология изготовления]));
Рис.7. Конструктор запроса «ЗапросЧислСвяз&Техн».
В ходе выполнения запроса пользователю выводится вся информация о характеристиках ПЛИС, попадающих под введенные параметры поиска.
Результат выполнения запроса «ЗапросЧислСвяз&Техн»
Рис.8. Конструктор запроса «ЗапросЧислСвяз&Техн».
3. Вывод сведений о ПЛИС с числом программируемых связей […] временем задержки распространения сигнала не более […]
SQL-код запроса «ЗапросЧислСвяз&Задержка»:
SELECT ПЛИС.*
FROM ПЛИС
WHERE ЧислоСвязей=[Число программируемых связей]
AND Задержка<=[Время задержки распространения сигнала не более, нс];
Рис.9. Конструктор запроса «ЗапросЧислСвяз&Задержка».
В ходе выполнения запроса пользователю выводится вся информация о характеристиках ПЛИС, попадающих под введенные параметры поиска.
Результат выполнения запроса «ЗапросЧислСвяз&Задержка»
Рис.10. Конструктор запроса «ЗапросЧислСвяз&Задержка».
4. Вывод дополнительных сведений микросхемы ПЛИС типа …,
SQL-код запроса «ПЛИС&Особенности»:
SELECT ПЛИС.Тип, ПЛИС.Особенности
FROM ПЛИС
WHERE (((ПЛИС.Тип)=[Введите тип]));
Рис.11. Конструктор запроса «ПЛИС&Особенности».
Результат выполнения запроса «ПЛИС&Особенности»
Рис.12. Конструктор запроса «ПЛИС&Особенности».
5. Вывод сведений о суммарной стоимости имеющихся на складе микросхем типа …
SQL-код запроса «ЗапросТип&ЦенаОбщ»:
SELECT ЗапросОстаток.Тип, (ЗапросОстаток.Остаток)*ПЛИС.Цена AS [Сумма,руб]
FROM ПЛИС INNER JOIN ЗапросОстаток ON ПЛИС.Тип = ЗапросОстаток.Тип
WHERE (((ЗапросОстаток.Тип)=[Тип ПЛИС]));
Рис.13. Конструктор запроса «ЗапросТип&ЦенаОбщ».
В ходе выполнения запроса пользователю выводится информация о типе ПЛИС и суммарной стоимости ПЛИС данного типа, имеющихся на складе.
Рис.14. Конструктор запроса «ЗапросТип&ЦенаОбщ».
6. Вывод сведений о количестве имеющихся на складе микросхем определенной фирмы – производителя ...
SQL-код запроса «ЗапросОстаток&Фирма»:
SELECT ПЛИС.ФирмаИзготовитель, Sum(ЗапросОстаток.Остаток) AS Остаток
FROM ЗапросОстаток INNER JOIN ПЛИС ON ЗапросОстаток.Тип = ПЛИС.Тип
WHERE (((ПЛИС.ФирмаИзготовитель)=[Изготовитель]))
GROUP BY ПЛИС.ФирмаИзготовитель;
Рис.15. Конструктор запроса «ЗапросОстаток&Фирма».
В ходе выполнения запроса пользователю выводится информация о типе ПЛИС и количестве ПЛИС данного типа, имеющихся на складе.
Рис.16. Конструктор запроса «ЗапросОстаток&Фирма».
Создание отчетов
Создание отчета о выдаче ПЛИС со склада потребителям за определенный период с группировкой по кодам потребителей и сортировкой по типам микросхем.
Данный отчет будет основываться на запроса, выводящем сведения о коде потребителя, типе ПЛИС, выданном количестве,и дате выдачи.
SQL-код запроса «ЗапросПродажиЗаПериод»:
SELECT Заказы.КодПотребителя, Заказано.Тип, Заказано.Количество, Заказы.ДатаВыдачи AS [Дата выдачи]
FROM Заказы INNER JOIN Заказано ON Заказы.КодЗаказ = Заказано.КодЗаказ
WHERE (((Заказы.ДатаВыдачи)>[Начало периода]
AND (Заказы.ДатаВыдачи)<[Конец периода]));
При создании отчета так жы выполнена группировка по кодам потребителя в качестве первого уровня группировки, а так же группировка по дате выдачи в качестве второго.
Рис.17. Конструктор отчета «ОтчетОПродажах».
Рис.18. Пример отчета «Сведения о заказах».
Разработка интерфейса пользователя:
1. Форма авторизации
Разработка была проведена с помощью конструктора форм, с последующей доработкой средствами Visual Basic for Application.
Данная форма необходима для выбора учетной записи, с которой осуществляется вход. В дальнейшем, в зависимости от типа учетной записи и корректности ввода пароля, будут четко определены права пользователя при рабоет с базой данных.
Рис.19. Вид формы «Форма авторизации».
При помощи средств Visual Basic for Application будут проверены имя пользователя и пароль, они записываются в глобальные переменные, которые будут доступны другим формам.
(аутентификация пользователей), в соответствии с введенным именем пользователя и при соответствии пароля откроется нужная форма (ФГостевая либо ФГлМеню).
Код VBA:
Option Compare Database
Private Sub Кнопка0_Click()
User = Login.Value
Pass = Password.Value
If (User = "Guest" And Pass = "Guest") Then
DoCmd.Close
DoCmd.OpenForm "ФГостевая"
End If
If (User = "Admin" And Pass = "123456") Then
DoCmd.Close
DoCmd.OpenForm "ФГлМеню"
End If
End Sub
2. Главная кнопочная форма
Разработка была проведена с помощью конструктора форм.
Данная форма предназначена для запуска различных запросов и меню.
Рис.20. Вид главной кнопочной формы
(вход
под учетной записью «администратор»)
Рис.21. Вид кнопочной формы (вход под учетной записью «гость»)
3. Форма «ПЛИС»
Разработка была проведена с помощью конструктора форм, с последующей доработкой средствами Visual Basic for Application.
Данная форма позволяет получать сведения (а в случае входа под учетной записью администратора так же изменять, дополнять или удалять сведения) о ПЛИС, информация о которых занесена в базу.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.