- •Задание
- •Федеральное государственное бюджетное образовательное учреждение
- •Высшего образования
- •«Поволжский государственный университет телекоммуникаций и информатики»
- •Отзыв руководителя
- •Введение
- •Федеральное государственное бюджетное образовательное учреждение
- •Высшего образования
- •«Поволжский государственный университет телекоммуникаций и информатики»
- •Показатель качества вкр
- •Исследовательский раздел
- •Анализ предметной области
- •Выбор среды разработки
- •Общие сведения о программе
- •Рекомендуемые системные требования и оборудование
- •– Настройки работы программы учера рабочего времени
- •– Окно настройки подключения к удалелнному рабочему столу в операционной системе Windows 10
- •Используемые базы данных
- •– Схема данных
- •Запуск программы
- •– Вход в программу. Окно авторизации.
- •– Подменю 5. Справочники
- •– Подменю 6.Обеды
- •Работа с программой
- •– Изменение начала работы
- •Назначение должности
- •– Окно 3.2. Назначение должности
- •– Окно 4.1. Перенос сотрудников в отдел кадров
- •Назначение прав доступа
- •– Окно 4.2. Назначение прав доступа
- •– Окно «Администраторские права»
- •– Сообщение о запрете доступа
- •Активные пользователи
- •– Окно «Активные пользователи»
- •Настройки программ
- •– Окно «Настройки программ»
- •Смена пользователя
- •– Выбор другого размещения при смене пользователя.
- •Справочники
- •Операции и расценки
- •– Окно «Расценки для сделки»
- •Должности
- •– Окно «Должности»
- •– Отчет по обедам. Вывод в электронные таблицы.
- •Объекты субд
- •– Список таблиц в системе
- •Запросы
- •– Список запросов в системе
- •– Список форм в системе
- •– Используется русский язык
- •– Используется анлгийския язык
- •– Форма календаря
- •Програмная реализация проекта
- •Работа со сканером штрих кодов
- •– Сканерш трих кодов Honeywell Eclipse ms5145
- •– Штрих коды сотрудников
- •Заключение
- •Список использованных источников
- •Sys_Использование строк в запросах
- •Активные_пользователи
- •Должности
- •Должности_подразделения
- •Доступ_к_программе
- •Заказ_обедов
- •Замечания_к_работе
- •Назначеные_должности
- •Настройка_раб_места
- •Настройка_раб_места_урв
- •Настройки_программ
- •Настройки_программ_server
- •Начисления
- •Обеды_контроль
- •Объект блюда
- •Объект вид блюд
- •Объект драйвер принтера
- •Объект меню
- •Объект принтер
- •Q_Начальное_заполнение_прав
- •Q_неактивные_сотрудники_за_полгода
- •Объект подразделение
- •Объект рабочее место
- •Объект размещение
- •Объект размещение физлица
- •Объект физическое лицо
- •Объект физлицо время пароля
- •Объект_программы
- •Объект_программы_server
- •Операции_применение
- •Отработанное_время
- •Пользователи_права
- •Постоянные_сотрудники
- •Работники_склада
- •Расценки_для_сделки
- •Система
- •Система_таблиц
- •Т_операции
- •Т_совпадение_сотрудников
- •Т_Сотрудники_увольнение
- •Т_этикетки_для_обеда
- •Запросы
- •Q_cистема_таблиц
- •Q_Фамилия_и_о
- •Q_Фамилия_Имя_Отчество
- •Qout_Заказ_обедов_свод
- •Qsys_Использование строк в запросах
- •Qt_права
- •Должности_f
- •Заказ_обедов_f
- •Календарь_f
- •Назначение_должности_f
- •Настройки_программ_f
- •Операции_f
- •Отчет_по_обедам_f
- •Пароли_операторов_f
- •Печать_бейджей_f
- •Права_доступа_f
- •Сообщение_f
- •Сотрудники_на_обед_f
- •Табель_f
- •Выполнение запросов в транзакции
- •Заполнение элементов ActiveX
- •Изменение размеров форм
- •Календарь
- •Настройки программ
- •Создание нового модуля
- •Иллюстрационный материал
Печать_бейджей_f
Private Sub BUT_CLEAR_Click()
Dim q() As String, i As Integer
i = 1: ReDim Preserve q(1 To i)
q(i) = "DELETE Т_Печать_бейджей_F.*" & vbNewLine
q(i) = q(i) & "FROM Т_Печать_бейджей_F"
If Not ExecuteTrans("очистка бейждей", q) Then Exit Sub
Me.Requery
End Sub
Private Sub BUT_PRINT_Click()
If Me![KOD_PRINTER] = 5 Then DoCmd.OpenReport "Бейджик_R", acViewPreview: Exit Sub
If (Me![KOD_PRINTER] = 4) Or (Me![KOD_PRINTER] = 37) Or (Me![KOD_PRINTER] = 38) Then
PrintLabel "Этикетки_бейдж_маленький_R", acViewPreview, Me![KOD_PRINTER]
Else
PrintLabel "Этикетки_бейджик_45x75_R", acViewPreview, Me![KOD_PRINTER]
End If
End Sub
Private Sub Form_Close()
Dim q() As String, i As Integer
i = 1: ReDim Preserve q(1 To i)
q(i) = "DELETE Т_Печать_бейджей_F.*" & vbNewLine
q(i) = q(i) & "FROM Т_Печать_бейджей_F"
If Not ExecuteTrans("очистка бейджей", q) Then Exit Sub
End Sub
Private Sub Form_Current()
Form_Resize
End Sub
Private Sub Form_Load()
Me.RecordSource = MyRecordSource(Me.NAME)
End Sub
Private Sub Form_Resize()
Me.InsideHeight = Me.Section(acHeader).HEIGHT + Me.Section(acFooter).HEIGHT + DCount("KOD_FL", "Т_Печать_бейджей_F") * 240 + 25
End Sub
Права_доступа_f
Private Sub BUT_DEL_Click()
If Not DLookup("MODE", "Пользователи_права", "KOD_FL=" & DLookup("KOD_USER", gWORK_PLACE) & " AND KOD_MENU=7") Then Exit Sub
Dim q() As String, i As Integer
Select Case MsgBox("Вы точно хотите удалить доступ для пользователя " & DLookup("FIO", "q_Фамилия_И_О", "ID=" & Me![SPISOK]), vbOKCancel + vbQuestion + vbDefaultButton2)
Case vbOK:
Case vbCancel: Exit Sub
End Select
i = 1: ReDim Preserve q(1 To i)
q(i) = "DELETE Доступ_к_программе.* FROM Доступ_к_программе" & vbNewLine
q(i) = q(i) & "WHERE KOD_FL=" & Me![SPISOK]
If Not ExecuteTrans("удаление пароля", q) Then Exit Sub
Me![SPISOK].Requery
End Sub
Private Sub BUT_LEVEL_UP_Click()
If Not polzovatel(17, True) Then Exit Sub
Dim q() As String, i As Integer
If Me![PERS].ListIndex < 0 Then MsgBox "Выберите сотрудника", , Me.Caption: Me![PERS].SetFocus: Exit Sub
i = 1: ReDim Preserve q(1 To i)
q(i) = "INSERT INTO Доступ_к_программе ( KOD_FL )" & vbNewLine
q(i) = q(i) & "SELECT [Объект физическое лицо].ID_FIZICHESK_FACE" & vbNewLine
q(i) = q(i) & "FROM [Объект физическое лицо]" & vbNewLine
q(i) = q(i) & "WHERE [Объект физическое лицо].ID_FIZICHESK_FACE=" & Me![PERS]
If Not ExecuteTrans("доступ", q) Then Exit Sub
Me![PERS].Requery
Me![SPISOK].Requery
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
SetLanguage Shift
End Sub
Private Sub Form_Resize()
With Me![ADMINKA]
If Me.InsideWidth <> .Left + .WIDTH Then Me.InsideWidth = .Left + .WIDTH
End With
With Me![SPISOK_PRAV]
If Me.InsideHeight < .Top + Me.Section(acFooter).HEIGHT Then Me.InsideHeight = .Top + Me.Section(acFooter).HEIGHT
If Me.InsideHeight > .Top + Me.Section(acFooter).HEIGHT Then .HEIGHT = Me.InsideHeight - .Top - Me.Section(acFooter).HEIGHT
End With
With Me![SPISOK]
If Me.InsideHeight < .Top + Me.Section(acFooter).HEIGHT Then Me.InsideHeight = .Top + Me.Section(acFooter).HEIGHT
If Me.InsideHeight > .Top + Me.Section(acFooter).HEIGHT Then .HEIGHT = Me.InsideHeight - .Top - Me.Section(acFooter).HEIGHT
End With
With Me![OBJECT_MENU]
If Me.InsideHeight < .Top + Me.Section(acFooter).HEIGHT Then Me.InsideHeight = .Top + Me.Section(acFooter).HEIGHT
If Me.InsideHeight > .Top + Me.Section(acFooter).HEIGHT Then .HEIGHT = Me.InsideHeight - .Top - Me.Section(acFooter).HEIGHT
End With
End Sub
Private Sub OBJECT_MENU_DblClick(Cancel As Integer)
If IsNull(Me![OBJECT_MENU]) Then Exit Sub
Dim q() As String, i As Integer
If DLookup("KOD_USER", gWORK_PLACE) = DLookup("KOD_FL", "[Т_Права_доступа_F]") Then Exit Sub
If DLookup("MODE", "Пользователи_права", "KOD_FL=" & DLookup("KOD_USER", gWORK_PLACE) & " AND KOD_PLACE=" & DLookup("KOD_PLACE", gWORK_PLACE) & " AND KOD_MENU=" & Me![OBJECT_MENU]) Then
i = 1: ReDim Preserve q(1 To i)
If IsNull(DLookup("KOD_FL", "Пользователи_права", "KOD_MENU=" & Me![OBJECT_MENU] & " AND KOD_FL=" & Me![SPISOK] & " AND KOD_PLACE=" & DLookup("KOD_PLACE", gWORK_PLACE))) Then
q(i) = "INSERT INTO Пользователи_права ( KOD_PLACE, KOD_FL, KOD_MENU, MODE, KOD_FL_ADM )" & vbNewLine
q(i) = q(i) & "SELECT " & DLookup("KOD_PLACE", gWORK_PLACE) & ", " & Me![SPISOK] & ", " & Me![OBJECT_MENU] & ", False, " & DLookup("KOD_USER", gWORK_PLACE)
Else
q(i) = "DELETE Пользователи_права.* FROM Пользователи_права" & vbNewLine
q(i) = q(i) & "WHERE KOD_FL=" & Me![SPISOK] & " AND KOD_MENU=" & Me![OBJECT_MENU] & " AND KOD_PLACE=" & DLookup("KOD_PLACE", gWORK_PLACE)
End If
If Not ExecuteTrans("изменение прав", q) Then Exit Sub
Me![SPISOK_PRAV].Requery
Me![OBJECT_MENU].Requery
End If
End Sub
Private Sub OBJECT_MENU_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeySpace Then MsgBox UserAllowedList(Me![OBJECT_MENU]), vbInformation, Me![OBJECT_MENU].Column(0)
End Sub
Private Sub SPISOK_AfterUpdate()
If Not ControlAfterUpdate(Me) Then Exit Sub
Me![SPISOK_PRAV].Requery
Me![OBJECT_MENU].Requery
End Sub
Private Sub SPISOK_PRAV_DblClick(Cancel As Integer)
If DLookup("KOD_USER", gWORK_PLACE) = DLookup("KOD_FL", "[Т_Права_доступа_F]") Then Exit Sub
If DLookup("MODE", "Пользователи_права", "KOD_FL=" & DLookup("KOD_USER", gWORK_PLACE) & " AND KOD_MENU=" & Me![SPISOK_PRAV]) Then
Dim q() As String, i As Integer
i = 1: ReDim Preserve q(1 To i)
q(i) = "UPDATE Пользователи_права " & vbNewLine
q(i) = q(i) & "SET MODE= not MODE," & vbNewLine
q(i) = q(i) & " KOD_FL_ADM=" & DLookup("KOD_USER", gWORK_PLACE) & vbNewLine
q(i) = q(i) & "WHERE KOD_FL=" & Me![SPISOK] & " AND" & vbNewLine
q(i) = q(i) & " KOD_MENU=" & Me![SPISOK_PRAV] & " AND" & vbNewLine
q(i) = q(i) & " KOD_PLACE=" & DLookup("KOD_PLACE", gWORK_PLACE)
If Not ExecuteTrans("изменение прав", q) Then Exit Sub
Me![SPISOK_PRAV].Requery
End If
End Sub
