Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 апр 2024, 10:50

как узнать текущего пользователя???

Автор ***Vjacheslav***, 19 окт 2010, 11:30

0 Пользователей и 1 гость просматривают эту тему.

ruziya

Цитата: SGIRG от 29 авг 2016, 16:27
У Вас есть прямая привязка пользователя к его подразделению? Сомневаюсь.
Скорее всего информация о его подразделении должна быть в регистре сведений, и привязана она к конкретному сотруднику. Сотрудник, в свою очередь, к физлицу.
Соответственно и пользователь должен ссылаться на это же физлицо. И только потом собрав все во едино можно из регистра получить текущее подразделение сотрудника / пользователя
так как это сделать? что писать надо до Если ?
то что вы написали я и сам понимаю. я не знаю как лексически правильно это написать.
я занимался ассемблером, а тут 1С надо :)

SGIRG

Ну во первых, обязательно должно быть заполнено физлицо у пользователя.
А далее запрос к регистру сведений (что-то вроде "КадроваяИсторияСотрудников", и не забываем фильтрануться по конкретному периоду), а в отборе Сотрудник.ФизическоеЛицо = &ФизЛицоИзПользователя
Ничего не знаю, но иногда могу произнести праведную чушь)

ruziya

итог мучений B)
//считывание подразделения пользователя--
   Сведения = РегистрыСведений.СведенияОПользователях.СоздатьМенеджерЗаписи();
   Сведения.Пользователь = ТекущийПользователь;
   Сведения.Прочитать();
   Подразд = Сведения.Подразделение;
   //конец--------------------------

   
   Если Объект.ВидДокумента.Наименование = "карта брака" Тогда
      Элементы.КартаБрака.Видимость = Истина;
      
      //проверка подразделения для доступности регистрации, т.е. либо админ либо центр качества
      Если (Объект.СтатусКБ = Ложь) И (Строка(Подразд) = "Центр качества" ИЛИ РольДоступна("ПолныеПрава")) Тогда   
         Элементы.ГруппаНомер.Доступность = Истина;
      Иначе
         Элементы.ГруппаНомер.Доступность = Ложь;
      КонецЕсли;
      //---------------------------------------

Luzer1C

ПользователиИнформационнойБазы.ТекущийПользователь()
Более универсальный метод.
Но в УПП текущий пользователь занесен в глобальную переменную.
глЗначениеПеременной("глТекущийПользователь")
Халамбалам.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск