Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
beck_bakytbek
Master
Master

Имя сотрудника в Textobject

Уважаемыe Коллеги,

у меня вопрос: как я могу отобразить в Textobject: следуюшее предложение: Вы зарегистрированы под именем Павел и тд. У меня таблица с именами работников и в зависимости кто из работником открыл qv-file, до в Textobjecte должно отображаться его имя и фамилия.

Если у кого нибудь идеи, буду признателен за помошь и совет.

Spasibo

Becl

3 Replies
Sergey_Polekhin
Former Employee
Former Employee

Вы можете использовать функцию OSuser( )  для получения информации о пользователе, открывшем документ в данный момент времени.

Полученная информация может использоваться в составе модификатора множества, отбирающего из вашей справочной таблицы требуемое имя и фамилию.

Т.е. если у вас есть таблица сопоставления, состоящая из двух столбцов: UserNameFromOS (имя пользователя, возвращаемое операционной системой) и UserNameFromTable (имя+фамилия пользователя из справочника), то конструкция может выглядеть следующим образом:

=Minstring( {< UserNameFromOS = {'$(=OSUser())'}> } UserNameFromTable >

Перед созданием таблицы сопоставления рекомендую посмотреть на результат выполнения функции OSuser( ) именно в вашем окружении, т.к. например, при аутентификации пользователя в Microsoft Active Directory она возвращает полное имя пользователя в формате DIMAIN\USERNAME. 

beck_bakytbek
Master
Master
Author

Сергей спасибо большое,

у меня вопрос; этy:Minstring( {< UserNameFromOS = {'$(=OSUser())'}> } UserNameFromTable  конструкцию я должен выдавать в Text Obect?. а как мне нузжно соединять таблицу с именами.

Спасибо

Beck

Sergey_Polekhin
Former Employee
Former Employee

Да, эту формулу вы можете встроить в качестве части вашей формулы, выводящей в текстовом объекте нужное вам сообщение.

Например, если Вы хотите написать: "Вы зарегистрированы под именем: Павел", то формула текстового объекта может выглядеть так:

= 'Вы зарегистрированы под именем: ' &  Minstring( {< UserNameFromOS = {'$(=OSUser())'}> } UserNameFromTable)

Таблица имен для этого примера должна состоять из двух столбцов: UserNameFromTable и UserNameFromOS.

Например:

UserNameFromTableUserNameFromOS
ПавелDomain\Pavel
ФедорDomain\Fedor
ИринаDomain\Irina
ОлегDomain\Oleg

Очевидно, что столбец UserNameFromOS должен содержать таблицу имен в виде, соответствующем именам аутентификации ваших пользователей. Столбец UserNameFromTable вы создаете сами, наполняя его именами, которые должен видеть пользователь в приложении.