Добрый день! Прошу помощи вот в таком вопросе. Есть несколько функций в проекте доступных для редактирования только определеными пользователями (операторы процесса), каждый изменяет свои параметры под своим паролем. Ведется текстовый список команд, Клапан 1 открыт, Клапан 2 закрыт, насос 1 запущен и т.д,
Вопрос: Как мне привязать конкретного пользователя к этим текстовым сообщениям. Ну например чтобы во время того как пользователь ввел свой логин-пароль, в окне текстовых сообщений отобразилось что то типа "Оператор Иванов подключен" И дальнейшие действия сделаны от его имени, пока не будет следующая надпись "Оператор Петров подключен" и т.д
Сообщения о смене пользователя
Re: Сообщения о смене пользователя
Каким способом ведётся? Если стандартным логгированием, то аналогично в логи можно запихать и текущего пользователя, точнее факт регистрации пользователя в системе.Ведется текстовый список команд, Клапан 1 открыт, Клапан 2 закрыт, насос 1 запущен и т.д,
Я пошёл следующим путём:
1.Использовал стандартное окно авторизации пользователей от WinCC Advanced
2.Написал скрипт в одну строчку на Visual Basic
Код: Выделить всё
Sub Change_user ()
GetUserName ("User_current")
End Sub
"User_current" - тэг, в который функция положит имя текущего пользователя.
3. Вызываю этот скрипт из планировщика Sheduled tasks по событию User change (есть там такое событие в выпадающем списке Trigger).
Всё, при смене пользователя в собственноручно созданном тэге "User_current" окажется имя пользователя. А тэг уже можно логгировать или вывести на экран на своё усмотрение.
Если прям надо, чтобы в логах было написано, мол, такой-то пользователь в такое-то время нажал такую-то кнопку, то придётся писать скрипт, который создаёт текстовый файл и формирует в нём соответствующую запись. Вызов скрипта придётся прописывать в событие каждой кнопки и каждого поля ввода. Я делал и таким образом, но опыт показал, что это лишнее, для разборов вполне хватает стандартных логов.