Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3

.docx
Скачиваний:
4
Добавлен:
01.06.2021
Размер:
5.08 Mб
Скачать

ГУАП

КАФЕДРА № 41

ОТЧЕТ

ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

ассистент

М. С. Иванова

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №3

СОЗДАНИЕ ПОДСИСИТЕМЫ ДЛЯ АДМИНИСТРАТОРА БД

по курсу: ПРОЕКТНЫЙ ПРАКТИКУМ

РАБОТУ ВЫПОЛНИЛА

СТУДЕНТКА ГР.

4716

Е.А. Шуб

С.А. Янышева

подпись, дата

инициалы, фамилия

Санкт-Петербург

2021

Лабораторная работа № 3

Создание подсистемы для администратора БД

  1. Цель работы

Создать модуль для пользователя – «администратор БД.

  1. Выполнение работы

В СУБД MS Access создана форма авторизации, которая при успешной авторизации и вводе графического ключа под логином администратора предоставляет пользователю доступ к данным которые только он может изменять.

Пример работы авторизации изображён на рисунках 1-3. Код авторизации представлен в листинге №1.

Рисунок 1 – Ввод логина пользователя

Рисунок 2 – Ввод пароля

Рисунок 3 – Неверный логин или пароль

На рисунке 4 показано меню администратора, здесь он может открыть таблицы БД для просмотра и редактирования, кроме того ему доступны элементы из меню аналитика. На форме есть возможность выхода из приложения и возврата к авторизации через кнопку «Смена пользователя».

Рисунок 4 – Меню администратора

Все формы для работы с таблицами БД созданы по общему принципу, кнопки со стрелками позволяют перемещаться по записям таблицы вперёд и назад, также можно добавить новую запись, сохранить её или же удалить запись. Кроме того, на всех формах присутствует кнопка «Назад», позволяющая вернуться в меню администратора, результат работы продемонстрирован на рисунках 5 и 6.

Рисунок 5 – Работа с таблицей Учителя

Рисунок 6 – Работа с таблицей Ученики

На рисунках 7-11 показано добавление и удаление новой записи в таблицу Учителя.

Рисунок 9 – Исходная таблица

Рисунок 10 – Добавление новой записи

Рисунок 11 – Запись сохранена

Рисунок 12 – Запись удалена

  1. Вывод

В результате выполнения практического задания в среде СУБД MS Access создана форма для авторизации аналитика и администратора, меню администратора и формы для просмотра и редактирования записей в таблицах БД.

Листинг 1 – Авторизация

Option Compare Database

Option Explicit

Private gp As String

Private pw As String

Private C As Integer

Private cc As Integer

Private i As Integer

Private Sub Form_Open(Cancel As Integer)

gp = ""

C = 1

cc = 0

DoCmd.SetProperty "Кнопка10", acPropertyEnabled, "0"

DoCmd.SetProperty "Кнопка11", acPropertyEnabled, "0"

DoCmd.SetProperty "Кнопка12", acPropertyEnabled, "0"

On Error Resume Next

DoCmd.Close acForm, "Users"

TempVars.Add "name", InputBox("Введите имя пользователя", "Авторизация")

TempVars.Add "password", InputBox("Введите пароль", "Авторизация")

DoCmd.OpenForm "Users", acNormal, "", "[Имя пользователя]=[TempVars]![name] And [Пароль]=[TempVars]![password]", acReadOnly, acHidden

If (Forms![Users]![Имя пользователя] <> TempVars!Name And Forms![Users]!Пароль <> TempVars!Password) Then

MsgBox "Имя пользователя или пароль введены не верно", vbOKOnly, "Ошибка"

DoCmd.Close acForm, "Users"

DoCmd.Close acForm, "5)Авторизация"

End If

TempVars.RemoveAll

End Sub

Private Sub Click(b As String)

pw = "4268"

cc = cc + 1

gp = gp + b

If (cc = 4) Then

If (gp = pw) Then

For i = 1 To 9

DoCmd.SetProperty "Кнопка" & CStr(i), acPropertyEnabled, "0"

Next

If (Forms![Users]!Удаление) Then

DoCmd.SetProperty "Кнопка10", acPropertyEnabled, "1"

DoCmd.SetProperty "Кнопка11", acPropertyEnabled, "1"

DoCmd.SetProperty "Кнопка12", acPropertyEnabled, "1"

ElseIf (Forms![Users]![Добавление и изменение]) Then

DoCmd.SetProperty "Кнопка11", acPropertyEnabled, "1"

DoCmd.SetProperty "Кнопка12", acPropertyEnabled, "1"

ElseIf (Forms![Users]!Просмотр) Then

DoCmd.SetProperty "Кнопка12", acPropertyEnabled, "1"

Else

DoCmd.Close acForm, "Выбрать действие"

MsgBox "Ошибка права доступа", vbExclamation, "Ошибка"

End If

DoCmd.Close acForm, "Users"

Else

C = C + 1

gp = ""

cc = 0

If (C > 3) Then

MsgBox "Ключ неверный", vbOKOnly, "Ошибка"

DoCmd.Close acForm, "5)Авторизация"

Else

MsgBox "Ключ неверный. Попытка " & CStr(C) & " из 3.", vbOKOnly, "Ошибка"

End If

End If

End If

End Sub

Листинг 2 – Кнопка перехода в Tableua

Private Sub Кнопка19_Click()

Dim go

go = Shell("C:\Program Files\Tableau\Tableau Public 2020.4\bin\tabpublic.exe", 1)

End Sub

Соседние файлы в предмете Проектный практикум