Столкнулась с такой задачей: нужно "вылавливать" текущего пользователя при КАЖДОМ входе в систему (по логину и паролю).
А нужно мне это для того, чтобы отображать на форме текущего пользователя и его должность, которую система отображает в случае, если:
Get(AccountName)=Get(Пользователи::Логин). То есть, по моей идее, моя будущая таблица Входы в систему (там я хотела фиксировать тек.пользователей при каждом входе и использовать эти данные, как Global) будет связываться с таблицей Пользователи по AccountName, сравнивать его с ЛОГИНОМ (он будет таким же) и отображать поле Должность.
Как это сделать? Как правильно организовать создание записи при каждом входе в систему и отображение ее абсолютно на всех макетах.
Как "выловить" текущего пользователя?
- mihalych_2017
- Сообщения: 39
- Зарегистрирован: 11 сен 2017, 15:36
- Откуда: Подольск
- Контактная информация:
Re: Как "выловить" текущего пользователя?
Предлагается такой вариант решения:
1) при входе в систему в таблице Входы_В_Систему создается запись, в которую прописываем логин, пароль, время входа
2) таблицу Входы_В_Систему связываем с таблицей Пользователи по логину и паролю, откуда считываем ФИО, должность и т.д.
3) считанные ФИО, должность и т.д. записываем в глобальные поля (их можно создать как в таблице Входы_В_Систему, так и в отдельной таблице, например Настройки.
4) эти глобальные поля отображаем там, где нужно (на любом макете)
На мой взгляд, удобней глобальные поля держать в отдельной таблице, через которую можно настроить другие права доступа.
Кроме этого, если при входе запомнить id записи входа, то при выходе из системы мы можем дописать в эту запись и время выхода пользователя.
1) при входе в систему в таблице Входы_В_Систему создается запись, в которую прописываем логин, пароль, время входа
2) таблицу Входы_В_Систему связываем с таблицей Пользователи по логину и паролю, откуда считываем ФИО, должность и т.д.
3) считанные ФИО, должность и т.д. записываем в глобальные поля (их можно создать как в таблице Входы_В_Систему, так и в отдельной таблице, например Настройки.
4) эти глобальные поля отображаем там, где нужно (на любом макете)
На мой взгляд, удобней глобальные поля держать в отдельной таблице, через которую можно настроить другие права доступа.
Кроме этого, если при входе запомнить id записи входа, то при выходе из системы мы можем дописать в эту запись и время выхода пользователя.
-
- Сообщения: 338
- Зарегистрирован: 11 сен 2017, 13:42
- Откуда: Санкт-Петербург
Re: Как "выловить" текущего пользователя?
Можно также использовать глобальные переменные и размещать их в текстовых метках: <<$$USER_NAME>> <<$$USER_TITLE>>
Re: Как "выловить" текущего пользователя?
Спасибо. Пробую реализовать.
А таблицу Настойки (где поля глобальные) нужно связывать с какой-либо из таблиц? Не работала еще с глобальными переменными.
И мы связываем поля (скрин):
Логин (Входы в систему) = Логин (Пользователи)
Пароль (Входы в систему) = Пароль (Пользователи)
А таблицу Настойки (где поля глобальные) нужно связывать с какой-либо из таблиц? Не работала еще с глобальными переменными.
И мы связываем поля (скрин):
Логин (Входы в систему) = Логин (Пользователи)
Пароль (Входы в систему) = Пароль (Пользователи)
- Вложения
-
- Screen Shot 2018-03-23 at 01.55.55.png (26.52 КБ) 6086 просмотров