- •Задание
- •Федеральное государственное бюджетное образовательное учреждение
- •Высшего образования
- •«Поволжский государственный университет телекоммуникаций и информатики»
- •Отзыв руководителя
- •Федеральное государственное бюджетное образовательное учреждение
- •Высшего образования
- •«Поволжский государственный университет телекоммуникаций и информатики»
- •Показатель качества вкр
- •Введение
- •Исследовательский раздел
- •Анализ предметной области
- •Выбор среды разработки
- •Общие сведения о программе
- •Рекомендуемые системные требования и оборудование
- •– Настройки работы программы учера рабочего времени
- •– Окно настройки подключения к удалелнному рабочему столу в операционной системе Windows 10
- •Используемые базы данных
- •– Схема данных
- •Запуск программы
- •– Вход в программу. Окно авторизации.
- •– Подменю 5. Справочники
- •– Подменю 6.Обеды
- •Работа с программой
- •– Изменение начала работы
- •Назначение должности
- •– Окно 3.2. Назначение должности
- •– Окно 4.1. Перенос сотрудников в отдел кадров
- •Назначение прав доступа
- •– Окно 4.2. Назначение прав доступа
- •– Окно «Администраторские права»
- •– Сообщение о запрете доступа
- •Активные пользователи
- •– Окно «Активные пользователи»
- •Настройки программ
- •– Окно «Настройки программ»
- •Смена пользователя
- •– Выбор другого размещения при смене пользователя.
- •Справочники
- •Операции и расценки
- •– Окно «Расценки для сделки»
- •Должности
- •– Окно «Должности»
- •– Отчет по обедам. Вывод в электронные таблицы.
- •Объекты субд
- •– Список таблиц в системе
- •Запросы
- •– Список запросов в системе
- •– Список форм в системе
- •– Используется русский язык
- •– Используется анлгийския язык
- •– Форма календаря
- •Програмная реализация проекта
- •Работа со сканером штрих кодов
- •– Сканерш трих кодов Honeywell Eclipse ms5145
- •– Штрих коды сотрудников
- •Заключение
- •Список использованных источников
- •Sys_Использование строк в запросах
- •Активные_пользователи
- •Должности
- •Должности_подразделения
- •Доступ_к_программе
- •Заказ_обедов
- •Замечания_к_работе
- •Назначеные_должности
- •Настройка_раб_места
- •Настройка_раб_места_урв
- •Настройки_программ
- •Настройки_программ_server
- •Начисления
- •Обеды_контроль
- •Объект блюда
- •Объект вид блюд
- •Объект драйвер принтера
- •Объект меню
- •Объект принтер
- •Объект подразделение
- •Объект рабочее место
- •Объект размещение
- •Объект размещение физлица
- •Объект физическое лицо
- •Объект физлицо время пароля
- •Объект_программы
- •Объект_программы_server
- •Операции_применение
- •Отработанное_время
- •Пользователи_права
- •Постоянные_сотрудники
- •Работники_склада
- •Расценки_для_сделки
- •Система
- •Система_таблиц
- •Т_операции
- •Т_совпадение_сотрудников
- •Т_Сотрудники_увольнение
- •Т_этикетки_для_обеда
- •Запросы
- •Q_cистема_таблиц
- •Q_Начальное_заполнение_прав
- •Q_неактивные_сотрудники_за_полгода
- •Q_Фамилия_и_о
- •Q_Фамилия_Имя_Отчество
- •Qout_Заказ_обедов_свод
- •Qsys_Использование строк в запросах
- •Qt_права
- •Должности_f
- •Заказ_обедов_f
- •Календарь_f
- •Назначение_должности_f
- •Настройки_программ_f
- •Операции_f
- •Отчет_по_обедам_f
- •Пароли_операторов_f
- •Печать_бейджей_f
- •Права_доступа_f
- •Сообщение_f
- •Сотрудники_на_обед_f
- •Табель_f
- •Выполнение запросов в транзакции
- •Заполнение элементов ActiveX
- •Изменение размеров форм
- •Календарь
- •Настройки программ
- •Создание нового модуля
- •Иллюстрационный материал
Q_Фамилия_и_о
SELECT [LAST_NAME] & " " & Left([FIRST_NAME] ,1) & "." & (Left([SECOND_NAME],1) + ".") AS FIO, Работники_склада.ID as ID
FROM Работники_склада;
UNION SELECT [FAMILIY] & Replace(" " & Left([NAME],1) & "."," .","") & Replace(" " & Left([OTCHESTVO],1) & "."," .","") AS FIO, [Объект физическое лицо].ID_FIZICHESK_FACE AS ID
FROM [Объект физическое лицо]
WHERE ((([Объект физическое лицо].UVOLEN)=false));
Q_Фамилия_Имя_Отчество
SELECT [LAST_NAME] as FAMILY, [FIRST_NAME] as NAME, [SECOND_NAME] AS OTCHESTVO, Работники_склада.ID
FROM Работники_склада;
UNION SELECT [Объект физическое лицо].FAMILIY, [Объект физическое лицо].NAME, [Объект физическое лицо].OTCHESTVO, [Объект физическое лицо].ID_FIZICHESK_FACE AS ID
FROM [Объект физическое лицо]
WHERE ((([Объект физическое лицо].UVOLEN)=false));
Qout_Заказ_обедов_свод
SELECT Т_обеды_свод.KOD_FL AS Таб№, q_Фамилия_И_О.FIO AS [ФИО Сотрудника], [OBED_DAY]/2*Forms!Отчет_по_обедам_F!PRICE+[OBED_ALL]*Forms!Отчет_по_обедам_F!PRICE AS Сумма
FROM Т_обеды_свод INNER JOIN q_Фамилия_И_О ON Т_обеды_свод.KOD_FL = q_Фамилия_И_О.ID
WHERE (((Т_обеды_свод.KOD_FL)>0));
Qsys_Использование строк в запросах
SELECT DISTINCT MSysObjects.Name
FROM [sys_Использование строк в запросах], MSysObjects INNER JOIN MSysQueries ON MSysObjects.Id = MSysQueries.ObjectId
WHERE (((MSysObjects.Flags)<>3) AND ((MSysObjects.Type)=5) AND ((MSysQueries.Expression) Like "*" & [find] & "*")) OR (((MSysObjects.Flags)<>3) AND ((MSysObjects.Type)=5) AND ((MSysQueries.Name1) Like "*" & [find] & "*")) OR (((MSysObjects.Flags)<>3) AND ((MSysObjects.Type)=5) AND ((MSysQueries.Name2) Like "*" & [find] & "*"))
ORDER BY MSysObjects.Name;
Qt_права
SELECT [Объект меню].ID, [Объект меню].NAIMEN AS [Объект меню], IIf([MODE],"+",Null) AS админ, q_Фамилия_И_О.FIO AS Предоставил
FROM Т_Права_доступа_F INNER JOIN (Настройка_раб_места_УРВ INNER JOIN ((Пользователи_права LEFT JOIN [Объект меню] ON Пользователи_права.KOD_MENU = [Объект меню].ID) LEFT JOIN q_Фамилия_И_О ON Пользователи_права.KOD_FL_ADM = q_Фамилия_И_О.ID) ON Настройка_раб_места_УРВ.KOD_PLACE = Пользователи_права.KOD_PLACE) ON Т_Права_доступа_F.KOD_FL = Пользователи_права.KOD_FL
GROUP BY [Объект меню].ID, [Объект меню].NAIMEN, IIf([MODE],"+",Null), q_Фамилия_И_О.FIO
ORDER BY [Объект меню].NAIMEN, IIf([MODE],"+",Null);
Формы
Вход_F
Private Sub BUT_ENTER_Click()
Dim NEW_PASS, NEW_PASS_2 As String
Dim q() As String, i As Integer
If Me![KOD_PLACE].ListIndex < 0 Then MsgBox "Выберите польлозвателя", , Me.Caption: Exit Sub
If Me![KOD_FL].ListIndex < 0 Then MsgBox "Выберите польлозвателя", , Me.Caption: Exit Sub
If IsItMDE() Then
Select Case CheckPassword(Me![PASS], Me![KOD_FL])
Case PASS_WRONG: Me![PASS].SetFocus: Exit Sub
Case PASS_EMPTY: OpenForm "Пароли_операторов_F", , , , , , Me![KOD_FL], , False: Exit Sub
Case PASS_OK
End Select
End If
i = i + 1: ReDim Preserve q(1 To i)
q(i) = "UPDATE Настройка_раб_места_УРВ " & vbNewLine
q(i) = q(i) & "SET Настройка_раб_места_УРВ.KOD_USER = " & Me![KOD_FL] & "," & vbNewLine
q(i) = q(i) & " Настройка_раб_места_УРВ.KOD_PLACE = " & Me![KOD_PLACE] & "," & vbNewLine
q(i) = q(i) & " Настройка_раб_места_УРВ.NUM_COMPUTER = " & DLookup("NUM_COMPUTER", gWORK_PLACE)
i = i + 1: ReDim Preserve q(1 To i)
q(i) = "INSERT INTO Активные_пользователи ( KOD_USER, [COMP] )" & vbNewLine
q(i) = q(i) & "SELECT Настройка_раб_места_УРВ.KOD_USER, Настройка_раб_места_УРВ.NUM_COMPUTER" & vbNewLine
q(i) = q(i) & "FROM Настройка_раб_места_УРВ LEFT JOIN " & vbNewLine
q(i) = q(i) & " Активные_пользователи ON (Настройка_раб_места_УРВ.KOD_USER = Активные_пользователи.KOD_USER) AND " & vbNewLine
q(i) = q(i) & " (Настройка_раб_места_УРВ.NUM_COMPUTER = Активные_пользователи.COMP)" & vbNewLine
q(i) = q(i) & "WHERE Активные_пользователи.KOD_USER Is Null"
i = i + 1: ReDim Preserve q(1 To i)
q(i) = "UPDATE Активные_пользователи INNER JOIN " & vbNewLine
q(i) = q(i) & " Настройка_раб_места_УРВ ON (Активные_пользователи.COMP = Настройка_раб_места_УРВ.NUM_COMPUTER) AND " & vbNewLine
q(i) = q(i) & " (Активные_пользователи.KOD_USER = Настройка_раб_места_УРВ.KOD_USER) " & vbNewLine
q(i) = q(i) & "SET Активные_пользователи.BEG_TIME = Now(), Активные_пользователи.EXIT = False"
If Not ExecuteTrans("настройка", q) Then Exit Sub
SetTitle Me![KOD_PLACE].Column(1) & ", " & Me![KOD_FL].Column(0) & ", " & DLookup("NAIMEN", "Объект рабочее место", "NUM_COMPUTER=" & DLookup("NUM_COMPUTER", gWORK_PLACE))
Application.MenuBar = "Employee"
DoCmd.Close acForm, "Вход_F"
OpenForm "Учет_рабочего_времени_F"
'AvtoDelPravaOnProgravmm
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
SetLanguage Shift
End Sub
Private Sub Form_Open(Cancel As Integer)
Dim q() As String, i As Integer
Dim NUM_COMP As Variant
Application.MenuBar = "Вход"
CommandBars("Вход").Controls(1).VISIBLE = Not IsItMDE(CurrentDb)
If IsNull(Me.OpenArgs) Then Cancel = Not TablesAttach()
If Cancel Then DoCmd.Quit
Me![KOD_FL] = DLookup("KOD_USER", gWORK_PLACE)
Me![KOD_PLACE] = DLookup("KOD_PLACE", gWORK_PLACE)
Cancel = IsNull(Me![KOD_PLACE])
If Cancel Then MsgBox "Рабочее место не настроено!" & vbNewLine & "Не указано размещение!", vbCritical, Me.Caption: DoCmd.Quit
Cancel = Not GetNumComp(Me, NUM_COMP, IsItMDE())
If Cancel Then DoCmd.Quit
Cancel = IsNull(NUM_COMP)
If Cancel Then Exit Sub
i = i + 1: ReDim Preserve q(1 To i)
q(i) = "UPDATE DISTINCTROW Система, T_version" & vbNewLine
q(i) = q(i) & "SET Система.VERSION = T_version.TIME" & vbNewLine
q(i) = q(i) & "WHERE Система.VERSION Is Null Or" & vbNewLine
q(i) = q(i) & " Система.VERSION<T_version.TIME"
Cancel = Not ExecuteTrans("регистрация рабочего места", q)
If Cancel Then Exit Sub
'закрываем все формы
While Forms.Count > 1
If Not Forms(0) Is Me Then
CloseObject acForm, Forms(0).NAME, , True
Else
CloseObject acForm, Forms(1).NAME, , True
End If
Wend
While Reports.Count > 0: CloseObject acReport, Reports(0).NAME, , True: Wend
SetTitle
SetLanguage
End Sub
Private Sub Кнопка6_Click()
DoCmd.Quit
End Sub
