Страница 1 из 1

Как "выловить" текущего пользователя?

Добавлено: 19 мар 2018, 22:10
Maria
Столкнулась с такой задачей: нужно "вылавливать" текущего пользователя при КАЖДОМ входе в систему (по логину и паролю).
А нужно мне это для того, чтобы отображать на форме текущего пользователя и его должность, которую система отображает в случае, если:
Get(AccountName)=Get(Пользователи::Логин). То есть, по моей идее, моя будущая таблица Входы в систему (там я хотела фиксировать тек.пользователей при каждом входе и использовать эти данные, как Global) будет связываться с таблицей Пользователи по AccountName, сравнивать его с ЛОГИНОМ (он будет таким же) и отображать поле Должность.

Как это сделать? Как правильно организовать создание записи при каждом входе в систему и отображение ее абсолютно на всех макетах.

Re: Как "выловить" текущего пользователя?

Добавлено: 21 мар 2018, 06:28
mihalych_2017
Предлагается такой вариант решения:
1) при входе в систему в таблице Входы_В_Систему создается запись, в которую прописываем логин, пароль, время входа
2) таблицу Входы_В_Систему связываем с таблицей Пользователи по логину и паролю, откуда считываем ФИО, должность и т.д.
3) считанные ФИО, должность и т.д. записываем в глобальные поля (их можно создать как в таблице Входы_В_Систему, так и в отдельной таблице, например Настройки.
4) эти глобальные поля отображаем там, где нужно (на любом макете)
На мой взгляд, удобней глобальные поля держать в отдельной таблице, через которую можно настроить другие права доступа.
Кроме этого, если при входе запомнить id записи входа, то при выходе из системы мы можем дописать в эту запись и время выхода пользователя.

Re: Как "выловить" текущего пользователя?

Добавлено: 21 мар 2018, 07:17
andrey volkov
Можно также использовать глобальные переменные и размещать их в текстовых метках: <<$$USER_NAME>> <<$$USER_TITLE>>

Re: Как "выловить" текущего пользователя?

Добавлено: 22 мар 2018, 18:57
Maria
Спасибо. Пробую реализовать.
А таблицу Настойки (где поля глобальные) нужно связывать с какой-либо из таблиц? Не работала еще с глобальными переменными.

И мы связываем поля (скрин):
Логин (Входы в систему) = Логин (Пользователи)
Пароль (Входы в систему) = Пароль (Пользователи)