Текущий пользователь
Добрый день.
Что-то меня переклинило, туплю.
Необходимо заполнить реквизит значением из справочника Пользователи текущим пользователем (который осуществляет запись в документе). Тип реквизита - справочник Пользователи. Типа поле - ответственный.
ВторойОтветсвенный = ПользователиИнформационнойБазы.ТекущийПользователь();
Пробую так, заполняет пустым полем. Проверял, если что-то выбрать и потом сработает этот код, очищает поле.
Пробовал заполнить просто строку- всё отлично, заполняет наименование пользователя.
Пробовал НайтиПоНаименованию в пользователи. Опять же, в строку нормально, если тип - справочник пользователи, ни в какую.
Конфигурация 1С БП.
Что-то меня переклинило, туплю.
Необходимо заполнить реквизит значением из справочника Пользователи текущим пользователем (который осуществляет запись в документе). Тип реквизита - справочник Пользователи. Типа поле - ответственный.
ВторойОтветсвенный = ПользователиИнформационнойБазы.ТекущийПользователь();
Пробую так, заполняет пустым полем. Проверял, если что-то выбрать и потом сработает этот код, очищает поле.
Пробовал заполнить просто строку- всё отлично, заполняет наименование пользователя.
Пробовал НайтиПоНаименованию в пользователи. Опять же, в строку нормально, если тип - справочник пользователи, ни в какую.
Конфигурация 1С БП.
По теме из базы знаний
- Очистка настроек текущего пользователя
- Права доступа текущего пользователя
- Проверка прав доступа текущего пользователя. 1с 7.7
- Автоматическая очистка кэша конфигурации 1С 8.1, 8.2, 8.3 для сеанса текущего пользователя
- Приходный кассовый ордер и расходный кассовый ордер с текущим пользователем как кассир для БП 3
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
&НаСервере
Функция ПолучитьТекущегоПользователя () Экспорт
п = ПользователиИнформационнойБазы.ТекущийПользователь();
польз = Справочники.Пользователи.НайтиПоНаименованию(п.Имя);
Если польз = Справочники.Пользователи.ПустаяСсылка() Тогда
Возврат -1;
Иначе
Возврат Справочники.Пользователи.НайтиПоНаименованию(п.Имя);
КонецЕсли;
КонецФункции
Показать
(2) Спартак,
Для типовых лучше так.
&НаСервере
Функция ПолучитьТекущегоПользователя() Экспорт
ИдПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор;
польз = Справочники.Пользователи.НайтиПоРеквизиту("ИдентификаторПользователяИБ",ИдПользователя);
Если польз = Справочники.Пользователи.ПустаяСсылка() Тогда
Возврат Неопределено;
КонецЕсли;
Возврат польз;
КонецФункции
Для типовых лучше так.
&НаСервере
Функция ПолучитьТекущегоПользователя() Экспорт
ИдПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор;
польз = Справочники.Пользователи.НайтиПоРеквизиту("ИдентификаторПользователяИБ",ИдПользователя);
Если польз = Справочники.Пользователи.ПустаяСсылка() Тогда
Возврат Неопределено;
КонецЕсли;
Возврат польз;
КонецФункции
(0) ты перепутал пользователя со стороны предприятия с пользователем информационной базы, а это разные справочники
Возвращаемое значение:
Тип: ПользовательИнформационнойБазы. Если текущий пользователь не задан, то в качестве текущего пользователя будет возвращен пользователь с пустым именем и идентификатором объекта, полученного методом НайтиПоИмени, если в параметре указано пустое имя.
Возвращаемое значение:
Тип: ПользовательИнформационнойБазы. Если текущий пользователь не задан, то в качестве текущего пользователя будет возвращен пользователь с пустым именем и идентификатором объекта, полученного методом НайтиПоИмени, если в параметре указано пустое имя.
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)